l4-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Patch for idl4


From: ness
Subject: Patch for idl4
Date: Wed, 13 Jul 2005 18:39:45 +0200
User-agent: Mozilla Thunderbird 1.0.2 (X11/20050329)

Here it is. I'm sure there are tons of bugs. See README.idl4
/my/path/to/patched/idl4/{NEWS,ChangeLog}. For a simple example, see
ruth. I've forgotten to pretty indent the source I hacked (only ruth, so
this shouldn't be such a big problem). The patch should be applied using
>cd /my/path/to/hurd-l4
>patch -p1 < /my/path/to/patch
Please report bugs, but don't expect fixes in the next 4 weeks. Please
port some (or all, if s.o. doesn't have anything to do) servers. I'll be
online 2 days, but I won't do lots of coding. Please understand that.
It would be nice to give me direct cvs access in future.
diff -Naur hurd-l4/aclocal.m4 hurd-l4-new/aclocal.m4
--- hurd-l4/aclocal.m4  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/aclocal.m4      2005-07-13 18:30:52.241809352 +0200
@@ -0,0 +1,901 @@
+# generated automatically by aclocal 1.9.5 -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005  Free Software Foundation, Inc.
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Copyright (C) 2002, 2003, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_AUTOMAKE_VERSION(VERSION)
+# ----------------------------
+# Automake X.Y traces this macro to ensure aclocal.m4 has been
+# generated from the m4 files accompanying Automake X.Y.
+AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"])
+
+# AM_SET_CURRENT_AUTOMAKE_VERSION
+# -------------------------------
+# Call AM_AUTOMAKE_VERSION so it can be traced.
+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+        [AM_AUTOMAKE_VERSION([1.9.5])])
+
+# Figure out how to run the assembler.                      -*- Autoconf -*-
+
+# Copyright (C) 2001, 2003, 2004, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+# AM_PROG_AS
+# ----------
+AC_DEFUN([AM_PROG_AS],
+[# By default we simply use the C compiler to build assembly code.
+AC_REQUIRE([AC_PROG_CC])
+test "${CCAS+set}" = set || CCAS=$CC
+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS
+AC_ARG_VAR([CCAS],      [assembler compiler command (defaults to CC)])
+AC_ARG_VAR([CCASFLAGS], [assembler compiler flags (defaults to CFLAGS)])
+])
+
+# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
+
+# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
+# $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
+# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
+#
+# Of course, Automake must honor this variable whenever it calls a
+# tool from the auxiliary directory.  The problem is that $srcdir (and
+# therefore $ac_aux_dir as well) can be either absolute or relative,
+# depending on how configure is run.  This is pretty annoying, since
+# it makes $ac_aux_dir quite unusable in subdirectories: in the top
+# source directory, any form will work fine, but in subdirectories a
+# relative path needs to be adjusted first.
+#
+# $ac_aux_dir/missing
+#    fails when called from a subdirectory if $ac_aux_dir is relative
+# $top_srcdir/$ac_aux_dir/missing
+#    fails if $ac_aux_dir is absolute,
+#    fails when called from a subdirectory in a VPATH build with
+#          a relative $ac_aux_dir
+#
+# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
+# are both prefixed by $srcdir.  In an in-source build this is usually
+# harmless because $srcdir is `.', but things will broke when you
+# start a VPATH build or use an absolute $srcdir.
+#
+# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
+# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
+#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
+# and then we would define $MISSING as
+#   MISSING="\${SHELL} $am_aux_dir/missing"
+# This will work as long as MISSING is not called from configure, because
+# unfortunately $(top_srcdir) has no meaning in configure.
+# However there are other variables, like CC, which are often used in
+# configure, and could therefore not use this "fixed" $ac_aux_dir.
+#
+# Another solution, used here, is to always expand $ac_aux_dir to an
+# absolute PATH.  The drawback is that using absolute paths prevent a
+# configured tree to be moved without reconfiguration.
+
+AC_DEFUN([AM_AUX_DIR_EXPAND],
+[dnl Rely on autoconf to set up CDPATH properly.
+AC_PREREQ([2.50])dnl
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+])
+
+# AM_CONDITIONAL                                            -*- Autoconf -*-
+
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 7
+
+# AM_CONDITIONAL(NAME, SHELL-CONDITION)
+# -------------------------------------
+# Define a conditional.
+AC_DEFUN([AM_CONDITIONAL],
+[AC_PREREQ(2.52)dnl
+ ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
+       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
+AC_SUBST([$1_TRUE])
+AC_SUBST([$1_FALSE])
+if $2; then
+  $1_TRUE=
+  $1_FALSE='#'
+else
+  $1_TRUE='#'
+  $1_FALSE=
+fi
+AC_CONFIG_COMMANDS_PRE(
+[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
+  AC_MSG_ERROR([[conditional "$1" was never defined.
+Usually this means the macro was only invoked conditionally.]])
+fi])])
+
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 8
+
+# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# written in clear, in which case automake, when reading aclocal.m4,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery.  Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
+
+# _AM_DEPENDENCIES(NAME)
+# ----------------------
+# See how the compiler implements dependency checking.
+# NAME is "CC", "CXX", "GCJ", or "OBJC".
+# We try a few techniques and use that to set a single cache variable.
+#
+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
+# dependency, and given that the user is not expected to run this macro,
+# just rely on AC_PROG_CC.
+AC_DEFUN([_AM_DEPENDENCIES],
+[AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+
+ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
+       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
+       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
+                   [depcc="$$1"   am_compiler_list=])
+
+AC_CACHE_CHECK([dependency style of $depcc],
+               [am_cv_$1_dependencies_compiler_type],
+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+  # We make a subdir and do the tests there.  Otherwise we can end up
+  # making bogus files that we don't know about and never remove.  For
+  # instance it was reported that on HP-UX the gcc test will end up
+  # making a dummy file named `D' -- because `-MD' means `put the output
+  # in D'.
+  mkdir conftest.dir
+  # Copy depcomp to subdir because otherwise we won't find it if we're
+  # using a relative directory.
+  cp "$am_depcomp" conftest.dir
+  cd conftest.dir
+  # We will build objects and dependencies in a subdirectory because
+  # it helps to detect inapplicable dependency modes.  For instance
+  # both Tru64's cc and ICC support -MD to output dependencies as a
+  # side effect of compilation, but ICC will put the dependencies in
+  # the current directory while Tru64 will put them in the object
+  # directory.
+  mkdir sub
+
+  am_cv_$1_dependencies_compiler_type=none
+  if test "$am_compiler_list" = ""; then
+     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
+  fi
+  for depmode in $am_compiler_list; do
+    # Setup a source with many dependencies, because some compilers
+    # like to wrap large dependency lists on column 80 (with \), and
+    # we should not choose a depcomp mode which is confused by this.
+    #
+    # We need to recreate these files for each test, as the compiler may
+    # overwrite some of them when testing with obscure command lines.
+    # This happens at least with the AIX C compiler.
+    : > sub/conftest.c
+    for i in 1 2 3 4 5 6; do
+      echo '#include "conftst'$i'.h"' >> sub/conftest.c
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
+    done
+    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+    case $depmode in
+    nosideeffect)
+      # after this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested
+      if test "x$enable_dependency_tracking" = xyes; then
+       continue
+      else
+       break
+      fi
+      ;;
+    none) break ;;
+    esac
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.
+    if depmode=$depmode \
+       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+         >/dev/null 2>conftest.err &&
+       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+      # icc doesn't choke on unknown options, it will just issue warnings
+      # or remarks (even with -Werror).  So we grep stderr for any message
+      # that says an option was ignored or not supported.
+      # When given -MP, icc 7.0 and 7.1 complain thusly:
+      #   icc: Command line warning: ignoring option '-M'; no argument required
+      # The diagnosis changed in icc 8.0:
+      #   icc: Command line remark: option '-MP' not supported
+      if (grep 'ignoring option' conftest.err ||
+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+        am_cv_$1_dependencies_compiler_type=$depmode
+        break
+      fi
+    fi
+  done
+
+  cd ..
+  rm -rf conftest.dir
+else
+  am_cv_$1_dependencies_compiler_type=none
+fi
+])
+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
+AM_CONDITIONAL([am__fastdep$1], [
+  test "x$enable_dependency_tracking" != xno \
+  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
+])
+
+
+# AM_SET_DEPDIR
+# -------------
+# Choose a directory name for dependency files.
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+AC_DEFUN([AM_SET_DEPDIR],
+[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+])
+
+
+# AM_DEP_TRACK
+# ------------
+AC_DEFUN([AM_DEP_TRACK],
+[AC_ARG_ENABLE(dependency-tracking,
+[  --disable-dependency-tracking  speeds up one-time build
+  --enable-dependency-tracking   do not reject slow dependency extractors])
+if test "x$enable_dependency_tracking" != xno; then
+  am_depcomp="$ac_aux_dir/depcomp"
+  AMDEPBACKSLASH='\'
+fi
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
+AC_SUBST([AMDEPBACKSLASH])
+])
+
+# Generate code to set up dependency tracking.              -*- Autoconf -*-
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+#serial 3
+
+# _AM_OUTPUT_DEPENDENCY_COMMANDS
+# ------------------------------
+AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
+[for mf in $CONFIG_FILES; do
+  # Strip MF so we end up with the name of the file.
+  mf=`echo "$mf" | sed -e 's/:.*$//'`
+  # Check whether this is an Automake generated Makefile or not.
+  # We used to match only the files named `Makefile.in', but
+  # some people rename them; so instead we look at the file content.
+  # Grep'ing the first line is not enough: some people post-process
+  # each Makefile.in and add a new line on top of each file to say so.
+  # So let's grep whole file.
+  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+    dirpart=`AS_DIRNAME("$mf")`
+  else
+    continue
+  fi
+  # Extract the definition of DEPDIR, am__include, and am__quote
+  # from the Makefile without running `make'.
+  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+  test -z "$DEPDIR" && continue
+  am__include=`sed -n 's/^am__include = //p' < "$mf"`
+  test -z "am__include" && continue
+  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+  # When using ansi2knr, U may be empty or an underscore; expand it
+  U=`sed -n 's/^U = //p' < "$mf"`
+  # Find all dependency output files, they are included files with
+  # $(DEPDIR) in their names.  We invoke sed twice because it is the
+  # simplest approach to changing $(DEPDIR) to its actual value in the
+  # expansion.
+  for file in `sed -n "
+    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+    # Make sure the directory exists.
+    test -f "$dirpart/$file" && continue
+    fdir=`AS_DIRNAME(["$file"])`
+    AS_MKDIR_P([$dirpart/$fdir])
+    # echo "creating $dirpart/$file"
+    echo '# dummy' > "$dirpart/$file"
+  done
+done
+])# _AM_OUTPUT_DEPENDENCY_COMMANDS
+
+
+# AM_OUTPUT_DEPENDENCY_COMMANDS
+# -----------------------------
+# This macro should only be invoked once -- use via AC_REQUIRE.
+#
+# This code is only required when automatic dependency tracking
+# is enabled.  FIXME.  This creates each `.P' file that we will
+# need in order to bootstrap the dependency handling code.
+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
+[AC_CONFIG_COMMANDS([depfiles],
+     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
+     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
+])
+
+# Do all the work for Automake.                             -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 12
+
+# This macro actually does too much.  Some checks are only needed if
+# your package does certain things.  But this isn't really a big deal.
+
+# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
+# AM_INIT_AUTOMAKE([OPTIONS])
+# -----------------------------------------------
+# The call with PACKAGE and VERSION arguments is the old style
+# call (pre autoconf-2.50), which is being phased out.  PACKAGE
+# and VERSION should now be passed to AC_INIT and removed from
+# the call to AM_INIT_AUTOMAKE.
+# We support both call styles for the transition.  After
+# the next Automake release, Autoconf can make the AC_INIT
+# arguments mandatory, and then we can depend on a new Autoconf
+# release and drop the old call support.
+AC_DEFUN([AM_INIT_AUTOMAKE],
+[AC_PREREQ([2.58])dnl
+dnl Autoconf wants to disallow AM_ names.  We explicitly allow
+dnl the ones we care about.
+m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
+AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
+AC_REQUIRE([AC_PROG_INSTALL])dnl
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+   test -f $srcdir/config.status; then
+  AC_MSG_ERROR([source directory already configured; run "make distclean" 
there first])
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+  if (cygpath --version) >/dev/null 2>/dev/null; then
+    CYGPATH_W='cygpath -w'
+  else
+    CYGPATH_W=echo
+  fi
+fi
+AC_SUBST([CYGPATH_W])
+
+# Define the identity of the package.
+dnl Distinguish between old-style and new-style calls.
+m4_ifval([$2],
+[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+ AC_SUBST([PACKAGE], [$1])dnl
+ AC_SUBST([VERSION], [$2])],
+[_AM_SET_OPTIONS([$1])dnl
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
+
+_AM_IF_OPTION([no-define],,
+[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+ AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+
+# Some tools Automake needs.
+AC_REQUIRE([AM_SANITY_CHECK])dnl
+AC_REQUIRE([AC_ARG_PROGRAM])dnl
+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
+AM_MISSING_PROG(AUTOCONF, autoconf)
+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
+AM_MISSING_PROG(AUTOHEADER, autoheader)
+AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_PROG_INSTALL_SH
+AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
+AC_REQUIRE([AC_PROG_AWK])dnl
+AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
+              [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+                            [_AM_PROG_TAR([v7])])])
+_AM_IF_OPTION([no-dependencies],,
+[AC_PROVIDE_IFELSE([AC_PROG_CC],
+                  [_AM_DEPENDENCIES(CC)],
+                  [define([AC_PROG_CC],
+                          defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_CXX],
+                  [_AM_DEPENDENCIES(CXX)],
+                  [define([AC_PROG_CXX],
+                          defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+])
+])
+
+
+# When config.status generates a header, we must update the stamp-h file.
+# This file resides in the same directory as the config header
+# that is generated.  The stamp files are numbered to have different names.
+
+# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
+# loop where config.status creates the headers, so we can generate
+# our stamp files there.
+AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
+[# Compute $1's index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+  case $_am_header in
+    $1 | $1:* )
+      break ;;
+    * )
+      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+  esac
+done
+echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+
+# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_INSTALL_SH
+# ------------------
+# Define $install_sh.
+AC_DEFUN([AM_PROG_INSTALL_SH],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+AC_SUBST(install_sh)])
+
+# Copyright (C) 2003, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 2
+
+# Check whether the underlying file-system supports filenames
+# with a leading dot.  For instance MS-DOS doesn't.
+AC_DEFUN([AM_SET_LEADING_DOT],
+[rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+  am__leading_dot=.
+else
+  am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+AC_SUBST([am__leading_dot])])
+
+# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
+# From Jim Meyering
+
+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+AC_DEFUN([AM_MAINTAINER_MODE],
+[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
+  dnl maintainer-mode is disabled by default
+  AC_ARG_ENABLE(maintainer-mode,
+[  --enable-maintainer-mode  enable make rules and dependencies not useful
+                         (and sometimes confusing) to the casual installer],
+      USE_MAINTAINER_MODE=$enableval,
+      USE_MAINTAINER_MODE=no)
+  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
+  AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes])
+  MAINT=$MAINTAINER_MODE_TRUE
+  AC_SUBST(MAINT)dnl
+]
+)
+
+AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
+
+# Check to see how 'make' treats includes.                 -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 3
+
+# AM_MAKE_INCLUDE()
+# -----------------
+# Check to see how make treats includes.
+AC_DEFUN([AM_MAKE_INCLUDE],
+[am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+       @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+AC_MSG_CHECKING([for style of include used by $am_make])
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = 
"done"; then
+   am__include=include
+   am__quote=
+   _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+   echo '.include "confinc"' > confmf
+   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+      am__include=.include
+      am__quote="\""
+      _am_result=BSD
+   fi
+fi
+AC_SUBST([am__include])
+AC_SUBST([am__quote])
+AC_MSG_RESULT([$_am_result])
+rm -f confinc confmf
+])
+
+# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
+
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+# AM_MISSING_PROG(NAME, PROGRAM)
+# ------------------------------
+AC_DEFUN([AM_MISSING_PROG],
+[AC_REQUIRE([AM_MISSING_HAS_RUN])
+$1=${$1-"${am_missing_run}$2"}
+AC_SUBST($1)])
+
+
+# AM_MISSING_HAS_RUN
+# ------------------
+# Define MISSING if not defined so far and test if it supports --run.
+# If it does, set am_missing_run to use it, otherwise, to nothing.
+AC_DEFUN([AM_MISSING_HAS_RUN],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+  am_missing_run="$MISSING --run "
+else
+  am_missing_run=
+  AC_MSG_WARN([`missing' script is too old or missing])
+fi
+])
+
+# Copyright (C) 2003, 2004, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_MKDIR_P
+# ---------------
+# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise.
+#
+# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
+# created by `make install' are always world readable, even if the
+# installer happens to have an overly restrictive umask (e.g. 077).
+# This was a mistake.  There are at least two reasons why we must not
+# use `-m 0755':
+#   - it causes special bits like SGID to be ignored,
+#   - it may be too restrictive (some setups expect 775 directories).
+#
+# Do not use -m 0755 and let people choose whatever they expect by
+# setting umask.
+#
+# We cannot accept any implementation of `mkdir' that recognizes `-p'.
+# Some implementations (such as Solaris 8's) are not thread-safe: if a
+# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c'
+# concurrently, both version can detect that a/ is missing, but only
+# one can create it and the other will error out.  Consequently we
+# restrict ourselves to GNU make (using the --version option ensures
+# this.)
+AC_DEFUN([AM_PROG_MKDIR_P],
+[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+  # We used to keeping the `.' as first argument, in order to
+  # allow $(mkdir_p) to be used without argument.  As in
+  #   $(mkdir_p) $(somedir)
+  # where $(somedir) is conditionally defined.  However this is wrong
+  # for two reasons:
+  #  1. if the package is installed by a user who cannot write `.'
+  #     make install will fail,
+  #  2. the above comment should most certainly read
+  #     $(mkdir_p) $(DESTDIR)$(somedir)
+  #     so it does not work when $(somedir) is undefined and
+  #     $(DESTDIR) is not.
+  #  To support the latter case, we have to write
+  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+  #  so the `.' trick is pointless.
+  mkdir_p='mkdir -p --'
+else
+  # On NextStep and OpenStep, the `mkdir' command does not
+  # recognize any option.  It will interpret all options as
+  # directories to create, and then abort because `.' already
+  # exists.
+  for d in ./-p ./--version;
+  do
+    test -d $d && rmdir $d
+  done
+  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+  if test -f "$ac_aux_dir/mkinstalldirs"; then
+    mkdir_p='$(mkinstalldirs)'
+  else
+    mkdir_p='$(install_sh) -d'
+  fi
+fi
+AC_SUBST([mkdir_p])])
+
+# Helper functions for option handling.                     -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 3
+
+# _AM_MANGLE_OPTION(NAME)
+# -----------------------
+AC_DEFUN([_AM_MANGLE_OPTION],
+[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
+
+# _AM_SET_OPTION(NAME)
+# ------------------------------
+# Set option NAME.  Presently that only means defining a flag for this option.
+AC_DEFUN([_AM_SET_OPTION],
+[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+
+# _AM_SET_OPTIONS(OPTIONS)
+# ----------------------------------
+# OPTIONS is a space-separated list of Automake options.
+AC_DEFUN([_AM_SET_OPTIONS],
+[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+
+# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
+# -------------------------------------------
+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+AC_DEFUN([_AM_IF_OPTION],
+[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+
+# Check to make sure that the build environment is sane.    -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+# AM_SANITY_CHECK
+# ---------------
+AC_DEFUN([AM_SANITY_CHECK],
+[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments.  Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   if test "$[*]" = "X"; then
+      # -L didn't work.
+      set X `ls -t $srcdir/configure conftest.file`
+   fi
+   rm -f conftest.file
+   if test "$[*]" != "X $srcdir/configure conftest.file" \
+      && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+      # If neither matched, then we have a broken ls.  This can happen
+      # if, for instance, CONFIG_SHELL is bash and it inherits a
+      # broken ls alias from the environment.  This has actually
+      # happened.  Such a system could not be considered "sane".
+      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
+alias in your environment])
+   fi
+
+   test "$[2]" = conftest.file
+   )
+then
+   # Ok.
+   :
+else
+   AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+AC_MSG_RESULT(yes)])
+
+# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_INSTALL_STRIP
+# ---------------------
+# One issue with vendor `install' (even GNU) is that you can't
+# specify the program used to strip binaries.  This is especially
+# annoying in cross-compiling environments, where the build's strip
+# is unlikely to handle the host's binaries.
+# Fortunately install-sh will honor a STRIPPROG variable, so we
+# always use install-sh in `make install-strip', and initialize
+# STRIPPROG with the value of the STRIP variable (set by the user).
+AC_DEFUN([AM_PROG_INSTALL_STRIP],
+[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'.  However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+if test "$cross_compiling" != no; then
+  AC_CHECK_TOOL([STRIP], [strip], :)
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+AC_SUBST([INSTALL_STRIP_PROGRAM])])
+
+# Check how to create a tarball.                            -*- Autoconf -*-
+
+# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 2
+
+# _AM_PROG_TAR(FORMAT)
+# --------------------
+# Check how to create a tarball in format FORMAT.
+# FORMAT should be one of `v7', `ustar', or `pax'.
+#
+# Substitute a variable $(am__tar) that is a command
+# writing to stdout a FORMAT-tarball containing the directory
+# $tardir.
+#     tardir=directory && $(am__tar) > result.tar
+#
+# Substitute a variable $(am__untar) that extract such
+# a tarball read from stdin.
+#     $(am__untar) < result.tar
+AC_DEFUN([_AM_PROG_TAR],
+[# Always define AMTAR for backward compatibility.
+AM_MISSING_PROG([AMTAR], [tar])
+m4_if([$1], [v7],
+     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+     [m4_case([$1], [ustar],, [pax],,
+              [m4_fatal([Unknown tar format])])
+AC_MSG_CHECKING([how to create a $1 tar archive])
+# Loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
+_am_tools=${am_cv_prog_tar_$1-$_am_tools}
+# Do not fold the above two line into one, because Tru64 sh and
+# Solaris sh will not grok spaces in the rhs of `-'.
+for _am_tool in $_am_tools
+do
+  case $_am_tool in
+  gnutar)
+    for _am_tar in tar gnutar gtar;
+    do
+      AM_RUN_LOG([$_am_tar --version]) && break
+    done
+    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - 
"'"$$tardir"'
+    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - 
"'"$tardir"'
+    am__untar="$_am_tar -xf -"
+    ;;
+  plaintar)
+    # Must skip GNU tar: if it does not support --format= it doesn't create
+    # ustar tarball either.
+    (tar --version) >/dev/null 2>&1 && continue
+    am__tar='tar chf - "$$tardir"'
+    am__tar_='tar chf - "$tardir"'
+    am__untar='tar xf -'
+    ;;
+  pax)
+    am__tar='pax -L -x $1 -w "$$tardir"'
+    am__tar_='pax -L -x $1 -w "$tardir"'
+    am__untar='pax -r'
+    ;;
+  cpio)
+    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+    am__untar='cpio -i -H $1 -d'
+    ;;
+  none)
+    am__tar=false
+    am__tar_=false
+    am__untar=false
+    ;;
+  esac
+
+  # If the value was cached, stop now.  We just wanted to have am__tar
+  # and am__untar set.
+  test -n "${am_cv_prog_tar_$1}" && break
+
+  # tar/untar a dummy directory, and stop if the command works
+  rm -rf conftest.dir
+  mkdir conftest.dir
+  echo GrepMe > conftest.dir/file
+  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+  rm -rf conftest.dir
+  if test -s conftest.tar; then
+    AM_RUN_LOG([$am__untar <conftest.tar])
+    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+  fi
+done
+rm -rf conftest.dir
+
+AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+AC_SUBST([am__tar])
+AC_SUBST([am__untar])
+]) # _AM_PROG_TAR
+
+m4_include([acinclude.m4])
diff -Naur hurd-l4/autom4te.cache/output.0 hurd-l4-new/autom4te.cache/output.0
--- hurd-l4/autom4te.cache/output.0     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/autom4te.cache/output.0 2005-07-13 18:30:52.248808288 +0200
@@ -0,0 +1,6027 @@
address@hidden:@! /bin/sh
address@hidden:@ Guess values for system-dependent variables and create 
Makefiles.
address@hidden:@ Generated by GNU Autoconf 2.59 for hurd 0.0.
address@hidden:@
address@hidden:@ Report bugs to <address@hidden>.
address@hidden:@ 
address@hidden:@ Copyright (C) 2003 Free Software Foundation, Inc.
address@hidden:@ This configure script is free software; the Free Software 
Foundation
address@hidden:@ gives unlimited permission to copy, distribute and modify it.
+## --------------------- ##
+## M4sh Initialization.  ##
+## --------------------- ##
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+
+# Work around bugs in pre-3.0 UWIN ksh.
+$as_unset ENV MAIL MAILPATH
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+  LC_TELEPHONE LC_TIME
+do
+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+    eval $as_var=C; export $as_var
+  else
+    $as_unset $as_var
+  fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)$' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+         /^X\/\(\/\/\)$/{ s//\1/; q; }
+         /^X\/\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+
+
+# PATH needs CR, and LINENO needs CR and PATH.
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
+  # Find who we are.  Look in the path if we contain no path at all
+  # relative or not.
+  case $0 in
+    *[\\/]* ) as_myself=$0 ;;
+    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+
+       ;;
+  esac
+  # We did not find ourselves, most probably we were run as `sh COMMAND'
+  # in which case we are not to be found in the path.
+  if test "x$as_myself" = x; then
+    as_myself=$0
+  fi
+  if test ! -f "$as_myself"; then
+    { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
+   { (exit 1); exit 1; }; }
+  fi
+  case $CONFIG_SHELL in
+  '')
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for as_base in sh bash ksh sh5; do
+        case $as_dir in
+        /*)
+          if ("$as_dir/$as_base" -c '
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
+            $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { 
BASH_ENV=; export BASH_ENV; }
+            $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+            CONFIG_SHELL=$as_dir/$as_base
+            export CONFIG_SHELL
+            exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+          fi;;
+        esac
+       done
+done
+;;
+  esac
+
+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+  # uniformly replaced by the line number.  The first 'sed' inserts a
+  # line-number line before each line; the second 'sed' does the real
+  # work.  The second script uses 'N' to pair each line-number line
+  # with the numbered line, and appends trailing '-' during
+  # substitution so that $LINENO is not a special case at line end.
+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
+  sed '=' <$as_myself |
+    sed '
+      N
+      s,$,-,
+      : loop
+      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+      t loop
+      s,-$,,
+      s,^['$as_cr_digits']*\n,,
+    ' >$as_me.lineno &&
+  chmod +x $as_me.lineno ||
+    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX 
shell" >&2
+   { (exit 1); exit 1; }; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensible to this).
+  . ./$as_me.lineno
+  # Exit status is that of the last command.
+  exit
+}
+
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='     ' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p=:
+else
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
+fi
+
+as_executable_p="test -f"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS="  $as_nl"
+
+# CDPATH.
+$as_unset CDPATH
+
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+exec 6>&1
+
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+ac_config_libobj_dir=.
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Maximum number of lines to put in a shell here document.
+# This variable seems obsolete.  It should probably be removed, and
+# only ac_max_sed_lines should be used.
+: ${ac_max_here_lines=38}
+
+# Identity of this package.
+PACKAGE_NAME='hurd'
+PACKAGE_TARNAME='hurd'
+PACKAGE_VERSION='0.0'
+PACKAGE_STRING='hurd 0.0'
+PACKAGE_BUGREPORT='address@hidden'
+
+ac_unique_file="laden/laden.c"
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME 
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix 
program_transform_name bindir sbindir libexecdir datadir sysconfdir 
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir 
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS 
INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL 
AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP 
INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar 
am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS 
CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE 
AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE 
IDL4CONFIG ac_pt_IDL4CONFIG CCAS CCASFLAGS RANLIB ac_ct_RANLIB AR ac_ct_AR NM 
ac_ct_NM IDL4 IDL4FLAGS ac_pt_IDL4 SED SORT LATEX DVIPS PS2PDF FIG2DEV build 
build_cpu build_vendor build_os host host_cpu host_vendor host_os STATIC_GLIBC 
ARCH_ALPHA_TRUE ARCH_ALPHA_FALSE ARCH_AMD64_TRUE ARCH_AMD64_FALSE 
ARCH_IA32_TRUE ARCH_IA32_FALSE ARCH_IA64_TRUE ARCH_IA64_FALSE ARCH_POWERPC_TRUE 
ARCH_POWERPC_FALSE ARCH_POWERPC64_TRUE ARCH_POWERPC64_FALSE 
HURD_LADEN_LOAD_ADDRESS HURD_WORTEL_LOAD_ADDRESS HURD_PHYSMEM_LOAD_ADDRESS 
WITH_LIBC_TRUE WITH_LIBC_FALSE LIB@&address@hidden LTLIBOBJS'
+ac_subst_files=''
+
+# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+cache_file=/dev/null
+exec_prefix=NONE
+no_create=
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+verbose=
+x_includes=NONE
+x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datadir='${prefix}/share'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+libdir='${exec_prefix}/lib'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+infodir='${prefix}/info'
+mandir='${prefix}/man'
+
+ac_prev=
+for ac_option
+do
+  # If the previous option needs an argument, assign it.
+  if test -n "$ac_prev"; then
+    eval "$ac_prev=\$ac_option"
+    ac_prev=
+    continue
+  fi
+
+  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
+
+  # Accept the important Cygnus configure options, so we can diagnose typos.
+
+  case $ac_option in
+
+  -bindir | --bindir | --bindi | --bind | --bin | --bi)
+    ac_prev=bindir ;;
+  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+    bindir=$ac_optarg ;;
+
+  -build | --build | --buil | --bui | --bu)
+    ac_prev=build_alias ;;
+  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+    build_alias=$ac_optarg ;;
+
+  -cache-file | --cache-file | --cache-fil | --cache-fi \
+  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+    ac_prev=cache_file ;;
+  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+    cache_file=$ac_optarg ;;
+
+  --config-cache | -C)
+    cache_file=config.cache ;;
+
+  -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+    ac_prev=datadir ;;
+  -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+  | --da=*)
+    datadir=$ac_optarg ;;
+
+  -disable-* | --disable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    eval "enable_$ac_feature=no" ;;
+
+  -enable-* | --enable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+      *) ac_optarg=yes ;;
+    esac
+    eval "enable_$ac_feature='$ac_optarg'" ;;
+
+  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+  | --exec | --exe | --ex)
+    ac_prev=exec_prefix ;;
+  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+  | --exec=* | --exe=* | --ex=*)
+    exec_prefix=$ac_optarg ;;
+
+  -gas | --gas | --ga | --g)
+    # Obsolete; use --with-gas.
+    with_gas=yes ;;
+
+  -help | --help | --hel | --he | -h)
+    ac_init_help=long ;;
+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+    ac_init_help=recursive ;;
+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+    ac_init_help=short ;;
+
+  -host | --host | --hos | --ho)
+    ac_prev=host_alias ;;
+  -host=* | --host=* | --hos=* | --ho=*)
+    host_alias=$ac_optarg ;;
+
+  -includedir | --includedir | --includedi | --included | --include \
+  | --includ | --inclu | --incl | --inc)
+    ac_prev=includedir ;;
+  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+  | --includ=* | --inclu=* | --incl=* | --inc=*)
+    includedir=$ac_optarg ;;
+
+  -infodir | --infodir | --infodi | --infod | --info | --inf)
+    ac_prev=infodir ;;
+  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+    infodir=$ac_optarg ;;
+
+  -libdir | --libdir | --libdi | --libd)
+    ac_prev=libdir ;;
+  -libdir=* | --libdir=* | --libdi=* | --libd=*)
+    libdir=$ac_optarg ;;
+
+  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+  | --libexe | --libex | --libe)
+    ac_prev=libexecdir ;;
+  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+  | --libexe=* | --libex=* | --libe=*)
+    libexecdir=$ac_optarg ;;
+
+  -localstatedir | --localstatedir | --localstatedi | --localstated \
+  | --localstate | --localstat | --localsta | --localst \
+  | --locals | --local | --loca | --loc | --lo)
+    ac_prev=localstatedir ;;
+  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+  | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+  | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+    localstatedir=$ac_optarg ;;
+
+  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+    ac_prev=mandir ;;
+  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+    mandir=$ac_optarg ;;
+
+  -nfp | --nfp | --nf)
+    # Obsolete; use --without-fp.
+    with_fp=no ;;
+
+  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+  | --no-cr | --no-c | -n)
+    no_create=yes ;;
+
+  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+    no_recursion=yes ;;
+
+  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+  | --oldin | --oldi | --old | --ol | --o)
+    ac_prev=oldincludedir ;;
+  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+    oldincludedir=$ac_optarg ;;
+
+  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+    ac_prev=prefix ;;
+  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+    prefix=$ac_optarg ;;
+
+  -program-prefix | --program-prefix | --program-prefi | --program-pref \
+  | --program-pre | --program-pr | --program-p)
+    ac_prev=program_prefix ;;
+  -program-prefix=* | --program-prefix=* | --program-prefi=* \
+  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+    program_prefix=$ac_optarg ;;
+
+  -program-suffix | --program-suffix | --program-suffi | --program-suff \
+  | --program-suf | --program-su | --program-s)
+    ac_prev=program_suffix ;;
+  -program-suffix=* | --program-suffix=* | --program-suffi=* \
+  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+    program_suffix=$ac_optarg ;;
+
+  -program-transform-name | --program-transform-name \
+  | --program-transform-nam | --program-transform-na \
+  | --program-transform-n | --program-transform- \
+  | --program-transform | --program-transfor \
+  | --program-transfo | --program-transf \
+  | --program-trans | --program-tran \
+  | --progr-tra | --program-tr | --program-t)
+    ac_prev=program_transform_name ;;
+  -program-transform-name=* | --program-transform-name=* \
+  | --program-transform-nam=* | --program-transform-na=* \
+  | --program-transform-n=* | --program-transform-=* \
+  | --program-transform=* | --program-transfor=* \
+  | --program-transfo=* | --program-transf=* \
+  | --program-trans=* | --program-tran=* \
+  | --progr-tra=* | --program-tr=* | --program-t=*)
+    program_transform_name=$ac_optarg ;;
+
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil)
+    silent=yes ;;
+
+  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+    ac_prev=sbindir ;;
+  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+  | --sbi=* | --sb=*)
+    sbindir=$ac_optarg ;;
+
+  -sharedstatedir | --sharedstatedir | --sharedstatedi \
+  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+  | --sharedst | --shareds | --shared | --share | --shar \
+  | --sha | --sh)
+    ac_prev=sharedstatedir ;;
+  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+  | --sha=* | --sh=*)
+    sharedstatedir=$ac_optarg ;;
+
+  -site | --site | --sit)
+    ac_prev=site ;;
+  -site=* | --site=* | --sit=*)
+    site=$ac_optarg ;;
+
+  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+    ac_prev=srcdir ;;
+  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+    srcdir=$ac_optarg ;;
+
+  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+  | --syscon | --sysco | --sysc | --sys | --sy)
+    ac_prev=sysconfdir ;;
+  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+    sysconfdir=$ac_optarg ;;
+
+  -target | --target | --targe | --targ | --tar | --ta | --t)
+    ac_prev=target_alias ;;
+  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+    target_alias=$ac_optarg ;;
+
+  -v | -verbose | --verbose | --verbos | --verbo | --verb)
+    verbose=yes ;;
+
+  -version | --version | --versio | --versi | --vers | -V)
+    ac_init_version=: ;;
+
+  -with-* | --with-*)
+    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package| sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+      *) ac_optarg=yes ;;
+    esac
+    eval "with_$ac_package='$ac_optarg'" ;;
+
+  -without-* | --without-*)
+    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package | sed 's/-/_/g'`
+    eval "with_$ac_package=no" ;;
+
+  --x)
+    # Obsolete; use --with-x.
+    with_x=yes ;;
+
+  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+  | --x-incl | --x-inc | --x-in | --x-i)
+    ac_prev=x_includes ;;
+  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+    x_includes=$ac_optarg ;;
+
+  -x-libraries | --x-libraries | --x-librarie | --x-librari \
+  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+    ac_prev=x_libraries ;;
+  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+    x_libraries=$ac_optarg ;;
+
+  -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+   { (exit 1); exit 1; }; }
+    ;;
+
+  *=*)
+    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+   { (exit 1); exit 1; }; }
+    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
+    eval "$ac_envvar='$ac_optarg'"
+    export $ac_envvar ;;
+
+  *)
+    # FIXME: should be removed in autoconf 3.0.
+    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+    : ${build_alias=$ac_option} ${host_alias=$ac_option} 
${target_alias=$ac_option}
+    ;;
+
+  esac
+done
+
+if test -n "$ac_prev"; then
+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+  { echo "$as_me: error: missing argument to $ac_option" >&2
+   { (exit 1); exit 1; }; }
+fi
+
+# Be sure to have absolute paths.
+for ac_var in exec_prefix prefix
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
+    *)  { echo "$as_me: error: expected an absolute directory name for 
--$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# Be sure to have absolute paths.
+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
+             localstatedir libdir includedir oldincludedir infodir mandir
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* ) ;;
+    *)  { echo "$as_me: error: expected an absolute directory name for 
--$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+# FIXME: To remove some day.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: To remove some day.
+if test "x$host_alias" != x; then
+  if test "x$build_alias" = x; then
+    cross_compiling=maybe
+    echo "$as_me: WARNING: If you wanted to set the --build type, don't use 
--host.
+    If a cross compiler is detected then cross compile mode will be used." >&2
+  elif test "x$build_alias" != "x$host_alias"; then
+    cross_compiling=yes
+  fi
+fi
+
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
+
+test "$silent" = yes && exec 6>/dev/null
+
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+  ac_srcdir_defaulted=yes
+  # Try the directory containing this script, then its parent.
+  ac_confdir=`(dirname "$0") 2>/dev/null ||
+$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$0" : 'X\(//\)[^/]' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$0" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  srcdir=$ac_confdir
+  if test ! -r $srcdir/$ac_unique_file; then
+    srcdir=..
+  fi
+else
+  ac_srcdir_defaulted=no
+fi
+if test ! -r $srcdir/$ac_unique_file; then
+  if test "$ac_srcdir_defaulted" = yes; then
+    { echo "$as_me: error: cannot find sources ($ac_unique_file) in 
$ac_confdir or .." >&2
+   { (exit 1); exit 1; }; }
+  else
+    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" 
>&2
+   { (exit 1); exit 1; }; }
+  fi
+fi
+(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
+  { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not 
work" >&2
+   { (exit 1); exit 1; }; }
+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
+ac_env_build_alias_set=${build_alias+set}
+ac_env_build_alias_value=$build_alias
+ac_cv_env_build_alias_set=${build_alias+set}
+ac_cv_env_build_alias_value=$build_alias
+ac_env_host_alias_set=${host_alias+set}
+ac_env_host_alias_value=$host_alias
+ac_cv_env_host_alias_set=${host_alias+set}
+ac_cv_env_host_alias_value=$host_alias
+ac_env_target_alias_set=${target_alias+set}
+ac_env_target_alias_value=$target_alias
+ac_cv_env_target_alias_set=${target_alias+set}
+ac_cv_env_target_alias_value=$target_alias
+ac_env_CC_set=${CC+set}
+ac_env_CC_value=$CC
+ac_cv_env_CC_set=${CC+set}
+ac_cv_env_CC_value=$CC
+ac_env_CFLAGS_set=${CFLAGS+set}
+ac_env_CFLAGS_value=$CFLAGS
+ac_cv_env_CFLAGS_set=${CFLAGS+set}
+ac_cv_env_CFLAGS_value=$CFLAGS
+ac_env_LDFLAGS_set=${LDFLAGS+set}
+ac_env_LDFLAGS_value=$LDFLAGS
+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
+ac_cv_env_LDFLAGS_value=$LDFLAGS
+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_env_CPPFLAGS_value=$CPPFLAGS
+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
+ac_env_CCAS_set=${CCAS+set}
+ac_env_CCAS_value=$CCAS
+ac_cv_env_CCAS_set=${CCAS+set}
+ac_cv_env_CCAS_value=$CCAS
+ac_env_CCASFLAGS_set=${CCASFLAGS+set}
+ac_env_CCASFLAGS_value=$CCASFLAGS
+ac_cv_env_CCASFLAGS_set=${CCASFLAGS+set}
+ac_cv_env_CCASFLAGS_value=$CCASFLAGS
+ac_env_IDL4_set=${IDL4+set}
+ac_env_IDL4_value=$IDL4
+ac_cv_env_IDL4_set=${IDL4+set}
+ac_cv_env_IDL4_value=$IDL4
+ac_env_IDL4FLAGS_set=${IDL4FLAGS+set}
+ac_env_IDL4FLAGS_value=$IDL4FLAGS
+ac_cv_env_IDL4FLAGS_set=${IDL4FLAGS+set}
+ac_cv_env_IDL4FLAGS_value=$IDL4FLAGS
+ac_env_IDL4CONFIG_set=${IDL4CONFIG+set}
+ac_env_IDL4CONFIG_value=$IDL4CONFIG
+ac_cv_env_IDL4CONFIG_set=${IDL4CONFIG+set}
+ac_cv_env_IDL4CONFIG_value=$IDL4CONFIG
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+  # Omit some internal or obsolete options to make the list less imposing.
+  # This message is too long to be a string in the A/UX 3.1 sh.
+  cat <<_ACEOF
+\`configure' configures hurd 0.0 to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE.  See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+  -h, --help              display this help and exit
+      --help=short        display options specific to this package
+      --help=recursive    display the short help of all the included packages
+  -V, --version           display version information and exit
+  -q, --quiet, --silent   do not print \`checking...' messages
+      --cache-file=FILE   cache test results in FILE [disabled]
+  -C, --config-cache      alias for \`--cache-file=config.cache'
+  -n, --no-create         do not create output files
+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
+
+_ACEOF
+
+  cat <<_ACEOF
+Installation directories:
+  --prefix=PREFIX         install architecture-independent files in PREFIX
+                         [$ac_default_prefix]
+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+                         [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+  --bindir=DIR           user executables [EPREFIX/bin]
+  --sbindir=DIR          system admin executables [EPREFIX/sbin]
+  --libexecdir=DIR       program executables [EPREFIX/libexec]
+  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
+  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
+  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
+  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
+  --libdir=DIR           object code libraries [EPREFIX/lib]
+  --includedir=DIR       C header files [PREFIX/include]
+  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
+  --infodir=DIR          info documentation [PREFIX/info]
+  --mandir=DIR           man documentation [PREFIX/man]
+_ACEOF
+
+  cat <<\_ACEOF
+
+Program names:
+  --program-prefix=PREFIX            prepend PREFIX to installed program names
+  --program-suffix=SUFFIX            append SUFFIX to installed program names
+  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
+
+System types:
+  --build=BUILD     configure for building on BUILD [guessed]
+  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
+_ACEOF
+fi
+
+if test -n "$ac_init_help"; then
+  case $ac_init_help in
+     short | recursive ) echo "Configuration of hurd 0.0:";;
+   esac
+  cat <<\_ACEOF
+
+Optional Features:
+  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
+  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
+  --enable-maintainer-mode  enable make rules and dependencies not useful
+                         (and sometimes confusing) to the casual installer
+  --disable-dependency-tracking  speeds up one-time build
+  --enable-dependency-tracking   do not reject slow dependency extractors
+
+Optional Packages:
+  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+  --with-laden-loadaddr   laden load address @<:@0x190000@:>@
+  --with-wortel-loadaddr  wortel load address @<:@0x300000@:>@
+  --with-physmem-loadaddr physmem load address @<:@0x400000@:>@
+  --with-libc             compile with the GNU C library (see libc/README)
+
+Some influential environment variables:
+  CC          C compiler command
+  CFLAGS      C compiler flags
+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
+              nonstandard directory <lib dir>
+  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
+              headers in a nonstandard directory <include dir>
+  CCAS        assembler compiler command (defaults to CC)
+  CCASFLAGS   assembler compiler flags (defaults to CFLAGS)
+  IDL4        idl4 code generator command
+  IDL4FLAGS   idl4 code generator flags
+  IDL4CONFIG  idl4 path configuration tool
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+Report bugs to <address@hidden>.
+_ACEOF
+fi
+
+if test "$ac_init_help" = "recursive"; then
+  # If there are subdirs, report their specific --help.
+  ac_popdir=`pwd`
+  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
+    test -d $ac_dir || continue
+    ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+    cd $ac_dir
+    # Check for guested configure; otherwise get Cygnus style configure.
+    if test -f $ac_srcdir/configure.gnu; then
+      echo
+      $SHELL $ac_srcdir/configure.gnu  --help=recursive
+    elif test -f $ac_srcdir/configure; then
+      echo
+      $SHELL $ac_srcdir/configure  --help=recursive
+    elif test -f $ac_srcdir/configure.ac ||
+          test -f $ac_srcdir/configure.in; then
+      echo
+      $ac_configure --help
+    else
+      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+    fi
+    cd $ac_popdir
+  done
+fi
+
+test -n "$ac_init_help" && exit 0
+if $ac_init_version; then
+  cat <<\_ACEOF
+hurd configure 0.0
+generated by GNU Autoconf 2.59
+
+Copyright (C) 2003 Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+_ACEOF
+  exit 0
+fi
+exec 5>config.log
+cat >&5 <<_ACEOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by hurd $as_me 0.0, which was
+generated by GNU Autoconf 2.59.  Invocation command line was
+
+  $ $0 $@
+
+_ACEOF
+{
+cat <<_ASUNAME
address@hidden:@@%:@ --------- @%:@@%:@
address@hidden:@@%:@ Platform. @%:@@%:@
address@hidden:@@%:@ --------- @%:@@%:@
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
+
+/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+hostinfo               = `(hostinfo) 2>/dev/null               || echo unknown`
+/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
+/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  echo "PATH: $as_dir"
+done
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
address@hidden:@@%:@ ----------- @%:@@%:@
address@hidden:@@%:@ Core tests. @%:@@%:@
address@hidden:@@%:@ ----------- @%:@@%:@
+
+_ACEOF
+
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Strip out --silent because we don't want to record it for future runs.
+# Also quote any args containing shell meta-characters.
+# Make two passes to allow for proper duplicate-argument suppression.
+ac_configure_args=
+ac_configure_args0=
+ac_configure_args1=
+ac_sep=
+ac_must_keep_next=false
+for ac_pass in 1 2
+do
+  for ac_arg
+  do
+    case $ac_arg in
+    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
+    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+    | -silent | --silent | --silen | --sile | --sil)
+      continue ;;
+    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    esac
+    case $ac_pass in
+    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+    2)
+      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+      if test $ac_must_keep_next = true; then
+       ac_must_keep_next=false # Got value, back to normal.
+      else
+       case $ac_arg in
+         *=* | --config-cache | -C | -disable-* | --disable-* \
+         | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+         | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+         | -with-* | --with-* | -without-* | --without-* | --x)
+           case "$ac_configure_args0 " in
+             "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+           esac
+           ;;
+         -* ) ac_must_keep_next=true ;;
+       esac
+      fi
+      ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
+      # Get rid of the leading space.
+      ac_sep=" "
+      ;;
+    esac
+  done
+done
+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { 
ac_configure_args0=; export ac_configure_args0; }
+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { 
ac_configure_args1=; export ac_configure_args1; }
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log.  We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+# WARNING: Be sure not to use single quotes in there, as some shells,
+# such as our DU 5.0 friend, will then `close' the trap.
+trap 'exit_status=$?
+  # Save into config.log some information that might help in debugging.
+  {
+    echo
+
+    cat <<\_ASBOX
address@hidden:@@%:@ ---------------- @%:@@%:@
address@hidden:@@%:@ Cache variables. @%:@@%:@
address@hidden:@@%:@ ---------------- @%:@@%:@
+_ASBOX
+    echo
+    # The following way of writing the cache mishandles newlines in values,
+{
+  (set) 2>&1 |
+    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      sed -n \
+       "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
+         
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
+      ;;
+    *)
+      sed -n \
+       "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+}
+    echo
+
+    cat <<\_ASBOX
address@hidden:@@%:@ ----------------- @%:@@%:@
address@hidden:@@%:@ Output variables. @%:@@%:@
address@hidden:@@%:@ ----------------- @%:@@%:@
+_ASBOX
+    echo
+    for ac_var in $ac_subst_vars
+    do
+      eval ac_val=$`echo $ac_var`
+      echo "$ac_var='"'"'$ac_val'"'"'"
+    done | sort
+    echo
+
+    if test -n "$ac_subst_files"; then
+      cat <<\_ASBOX
address@hidden:@@%:@ ------------- @%:@@%:@
address@hidden:@@%:@ Output files. @%:@@%:@
address@hidden:@@%:@ ------------- @%:@@%:@
+_ASBOX
+      echo
+      for ac_var in $ac_subst_files
+      do
+       eval ac_val=$`echo $ac_var`
+       echo "$ac_var='"'"'$ac_val'"'"'"
+      done | sort
+      echo
+    fi
+
+    if test -s confdefs.h; then
+      cat <<\_ASBOX
address@hidden:@@%:@ ----------- @%:@@%:@
address@hidden:@@%:@ confdefs.h. @%:@@%:@
address@hidden:@@%:@ ----------- @%:@@%:@
+_ASBOX
+      echo
+      sed "/^$/d" confdefs.h | sort
+      echo
+    fi
+    test "$ac_signal" != 0 &&
+      echo "$as_me: caught signal $ac_signal"
+    echo "$as_me: exit $exit_status"
+  } >&5
+  rm -f core *.core &&
+  rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
+    exit $exit_status
+     ' 0
+for ac_signal in 1 2 13 15; do
+  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -rf conftest* confdefs.h
+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+echo >confdefs.h
+
+# Predefined preprocessor variables.
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_NAME "$PACKAGE_NAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_VERSION "$PACKAGE_VERSION"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_STRING "$PACKAGE_STRING"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
+_ACEOF
+
+
+# Let the site file select an alternate cache file if it wants to.
+# Prefer explicitly selected file to automatically selected ones.
+if test -z "$CONFIG_SITE"; then
+  if test "x$prefix" != xNONE; then
+    CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+  else
+    CONFIG_SITE="$ac_default_prefix/share/config.site 
$ac_default_prefix/etc/config.site"
+  fi
+fi
+for ac_site_file in $CONFIG_SITE; do
+  if test -r "$ac_site_file"; then
+    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+    sed 's/^/| /' "$ac_site_file" >&5
+    . "$ac_site_file"
+  fi
+done
+
+if test -r "$cache_file"; then
+  # Some versions of bash will fail to source /dev/null (special
+  # files actually), so we avoid doing that.
+  if test -f "$cache_file"; then
+    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+    case $cache_file in
+      [\\/]* | ?:[\\/]* ) . $cache_file;;
+      *)                      . ./$cache_file;;
+    esac
+  fi
+else
+  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+  >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in `(set) 2>&1 |
+              sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
+  eval ac_new_set=\$ac_env_${ac_var}_set
+  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
+  eval ac_new_val="\$ac_env_${ac_var}_value"
+  case $ac_old_set,$ac_new_set in
+    set,)
+      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in 
the previous run" >&5
+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" 
>&2;}
+      ac_cache_corrupted=: ;;
+    ,set)
+      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous 
run" >&5
+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,);;
+    *)
+      if test "x$ac_old_val" != "x$ac_new_val"; then
+       { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the 
previous run:" >&5
+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+       { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
+echo "$as_me:   former value:  $ac_old_val" >&2;}
+       { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
+echo "$as_me:   current value: $ac_new_val" >&2;}
+       ac_cache_corrupted=:
+      fi;;
+  esac
+  # Pass precious variables to config.status.
+  if test "$ac_new_set" = set; then
+    case $ac_new_val in
+    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *) ac_arg=$ac_var=$ac_new_val ;;
+    esac
+    case " $ac_configure_args " in
+      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
+      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+    esac
+  fi
+done
+if $ac_cache_corrupted; then
+  { echo "$as_me:$LINENO: error: changes in the environment can compromise the 
build" >&5
+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm 
$cache_file' and start over" >&5
+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start 
over" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+am__api_version="1.9"
+ac_aux_dir=
+for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
+  if test -f $ac_dir/install-sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install-sh -c"
+    break
+  elif test -f $ac_dir/install.sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install.sh -c"
+    break
+  elif test -f $ac_dir/shtool; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/shtool install -c"
+    break
+  fi
+done
+if test -z "$ac_aux_dir"; then
+  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in 
$srcdir $srcdir/.. $srcdir/../.." >&5
+echo "$as_me: error: cannot find install-sh or install.sh in $srcdir 
$srcdir/.. $srcdir/../.." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
+
+# Find a good install program.  We prefer a C program (faster),
+# so one script is as good as another.  But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+  ./ | .// | /cC/* | \
+  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+  /usr/ucb/* ) ;;
+  *)
+    # OSF1 and SCO ODT 3.0 have their own names for install.
+    # Don't use installbsd from OSF since it installs stuff as root
+    # by default.
+    for ac_prog in ginstall scoinst install; do
+      for ac_exec_ext in '' $ac_executable_extensions; do
+       if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+         if test $ac_prog = install &&
+           grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+           # AIX install.  It has an incompatible calling convention.
+           :
+         elif test $ac_prog = install &&
+           grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+           # program-specific install script used by HP pwplus--don't use.
+           :
+         else
+           ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+           break 3
+         fi
+       fi
+      done
+    done
+    ;;
+esac
+done
+
+
+fi
+  if test "${ac_cv_path_install+set}" = set; then
+    INSTALL=$ac_cv_path_install
+  else
+    # As a last resort, use the slow shell script.  We don't cache a
+    # path for INSTALL within a source directory, because that will
+    # break other packages using the cache if that directory is
+    # removed, or if the path is relative.
+    INSTALL=$ac_install_sh
+  fi
+fi
+echo "$as_me:$LINENO: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+echo "$as_me:$LINENO: checking whether build environment is sane" >&5
+echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments.  Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   if test "$*" = "X"; then
+      # -L didn't work.
+      set X `ls -t $srcdir/configure conftest.file`
+   fi
+   rm -f conftest.file
+   if test "$*" != "X $srcdir/configure conftest.file" \
+      && test "$*" != "X conftest.file $srcdir/configure"; then
+
+      # If neither matched, then we have a broken ls.  This can happen
+      # if, for instance, CONFIG_SHELL is bash and it inherits a
+      # broken ls alias from the environment.  This has actually
+      # happened.  Such a system could not be considered "sane".
+      { { echo "$as_me:$LINENO: error: ls -t appears to fail.  Make sure there 
is not a broken
+alias in your environment" >&5
+echo "$as_me: error: ls -t appears to fail.  Make sure there is not a broken
+alias in your environment" >&2;}
+   { (exit 1); exit 1; }; }
+   fi
+
+   test "$2" = conftest.file
+   )
+then
+   # Ok.
+   :
+else
+   { { echo "$as_me:$LINENO: error: newly created file is older than 
distributed files!
+Check your system clock" >&5
+echo "$as_me: error: newly created file is older than distributed files!
+Check your system clock" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+test "$program_prefix" != NONE &&
+  program_transform_name="s,^,$program_prefix,;$program_transform_name"
+# Use a double $ so make ignores it.
+test "$program_suffix" != NONE &&
+  program_transform_name="s,\$,$program_suffix,;$program_transform_name"
+# Double any \ or $.  echo might interpret backslashes.
+# By default was `s,x,x', remove it if useless.
+cat <<\_ACEOF >conftest.sed
+s/[\\$]/&&/g;s/;s,x,x,$//
+_ACEOF
+program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
+rm conftest.sed
+
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+  am_missing_run="$MISSING --run "
+else
+  am_missing_run=
+  { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
+echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+  # We used to keeping the `.' as first argument, in order to
+  # allow $(mkdir_p) to be used without argument.  As in
+  #   $(mkdir_p) $(somedir)
+  # where $(somedir) is conditionally defined.  However this is wrong
+  # for two reasons:
+  #  1. if the package is installed by a user who cannot write `.'
+  #     make install will fail,
+  #  2. the above comment should most certainly read
+  #     $(mkdir_p) $(DESTDIR)$(somedir)
+  #     so it does not work when $(somedir) is undefined and
+  #     $(DESTDIR) is not.
+  #  To support the latter case, we have to write
+  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+  #  so the `.' trick is pointless.
+  mkdir_p='mkdir -p --'
+else
+  # On NextStep and OpenStep, the `mkdir' command does not
+  # recognize any option.  It will interpret all options as
+  # directories to create, and then abort because `.' already
+  # exists.
+  for d in ./-p ./--version;
+  do
+    test -d $d && rmdir $d
+  done
+  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+  if test -f "$ac_aux_dir/mkinstalldirs"; then
+    mkdir_p='$(mkinstalldirs)'
+  else
+    mkdir_p='$(install_sh) -d'
+  fi
+fi
+
+for ac_prog in gawk mawk nawk awk
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AWK+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AWK"; then
+  ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_AWK="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+AWK=$ac_cv_prog_AWK
+if test -n "$AWK"; then
+  echo "$as_me:$LINENO: result: $AWK" >&5
+echo "${ECHO_T}$AWK" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$AWK" && break
+done
+
+echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.make <<\_ACEOF
+all:
+       @echo 'ac_maketemp="$(MAKE)"'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
+if test -n "$ac_maketemp"; then
+  eval ac_cv_prog_make_${ac_make}_set=yes
+else
+  eval ac_cv_prog_make_${ac_make}_set=no
+fi
+rm -f conftest.make
+fi
+if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
+  echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+  SET_MAKE=
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+  SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+  am__leading_dot=.
+else
+  am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+   test -f $srcdir/config.status; then
+  { { echo "$as_me:$LINENO: error: source directory already configured; run 
\"make distclean\" there first" >&5
+echo "$as_me: error: source directory already configured; run \"make 
distclean\" there first" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+  if (cygpath --version) >/dev/null 2>/dev/null; then
+    CYGPATH_W='cygpath -w'
+  else
+    CYGPATH_W=echo
+  fi
+fi
+
+
+# Define the identity of the package.
+ PACKAGE='hurd'
+ VERSION='0.0'
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE "$PACKAGE"
+_ACEOF
+
+ 
+cat >>confdefs.h <<_ACEOF
address@hidden:@define VERSION "$VERSION"
+_ACEOF
+
+# Some tools Automake needs.
+
+ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
+
+
+AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
+
+
+AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
+
+
+AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
+
+
+MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'.  However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_STRIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$STRIP"; then
+  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+  echo "$as_me:$LINENO: result: $STRIP" >&5
+echo "${ECHO_T}$STRIP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+  ac_ct_STRIP=$STRIP
+  # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_STRIP"; then
+  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_STRIP="strip"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":"
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+echo "${ECHO_T}$ac_ct_STRIP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  STRIP=$ac_ct_STRIP
+else
+  STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
+# Always define AMTAR for backward compatibility.
+
+AMTAR=${AMTAR-"${am_missing_run}tar"}
+
+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+
+
+
+
+
+echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions 
of Makefiles" >&5
+echo $ECHO_N "checking whether to enable maintainer-specific portions of 
Makefiles... $ECHO_C" >&6
+    # Check whether --enable-maintainer-mode or --disable-maintainer-mode was 
given.
+if test "${enable_maintainer_mode+set}" = set; then
+  enableval="$enable_maintainer_mode"
+  USE_MAINTAINER_MODE=$enableval
+else
+  USE_MAINTAINER_MODE=no
+fi; 
+  echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5
+echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6
+   
+
+if test $USE_MAINTAINER_MODE = yes; then
+  MAINTAINER_MODE_TRUE=
+  MAINTAINER_MODE_FALSE='#'
+else
+  MAINTAINER_MODE_TRUE='#'
+  MAINTAINER_MODE_FALSE=
+fi
+
+  MAINT=$MAINTAINER_MODE_TRUE
+  
+
+
+          ac_config_headers="$ac_config_headers config.h"
+
+
+cat >>confdefs.h <<\_ACEOF
address@hidden:@define _GNU_SOURCE 1
+_ACEOF
+
+
+
+maintainer_mode=${enable_maintainer_mode-no}
+
+# Checks for programs.
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}gcc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="gcc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+fi
+if test -z "$CC"; then
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+       ac_prog_rejected=yes
+       continue
+     fi
+    ac_cv_prog_CC="cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+if test $ac_prog_rejected = yes; then
+  # We found a bogon in the path, so make sure we never use it.
+  set dummy $ac_cv_prog_CC
+  shift
+  if test address@hidden:@ != 0; then
+    # We chose a different compiler from the bogus one.
+    # However, it has the same basename, so the bogon will be chosen
+    # first if we set CC to just the basename; use the full file name.
+    shift
+    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+  fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  for ac_prog in cl
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a 
program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+    test -n "$CC" && break
+  done
+fi
+if test -z "$CC"; then
+  ac_ct_CC=$CC
+  for ac_prog in cl
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ac_ct_CC" && break
+done
+
+  CC=$ac_ct_CC
+fi
+
+fi
+
+
+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler 
found in \$PATH
+See \`config.log' for more details." >&5
+echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO:" \
+     "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
+  (eval $ac_compiler --version </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
+  (eval $ac_compiler -v </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
+  (eval $ac_compiler -V </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
+echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
+  (eval $ac_link_default) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # Find the output, starting from the most likely.  This scheme is
+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
+# resort.
+
+# Be careful to initialize this variable, since it used to be cached.
+# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
+ac_cv_exeext=
+# b.out is created by i960 compilers.
+for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
+do
+  test -f "$ac_file" || continue
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj )
+       ;;
+    conftest.$ac_ext )
+       # This is the source file.
+       ;;
+    [ab].out )
+       # We found the default executable, but exeext='' is most
+       # certainly right.
+       break;;
+    *.* )
+       ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+       # FIXME: I believe we export ac_cv_exeext for Libtool,
+       # but it would be cool to find out if it's true.  Does anybody
+       # maintain Libtool? --akim.
+       export ac_cv_exeext
+       break;;
+    * )
+       break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
+See \`config.log' for more details." >&5
+echo "$as_me: error: C compiler cannot create executables
+See \`config.log' for more details." >&2;}
+   { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6
+
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+  if { ac_try='./$ac_file'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+    cross_compiling=no
+  else
+    if test "$cross_compiling" = maybe; then
+       cross_compiling=yes
+    else
+       { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+    fi
+  fi
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+rm -f a.out a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
+echo "$as_me:$LINENO: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6
+
+echo "$as_me:$LINENO: checking for suffix of executables" >&5
+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+  test -f "$ac_file" || continue
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj ) ;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+         export ac_cv_exeext
+         break;;
+    * ) break;;
+  esac
+done
+else
+  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: 
cannot compile and link
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of executables: cannot compile and 
link
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+echo "$as_me:$LINENO: checking for suffix of object files" >&5
+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
+if test "${ac_cv_objext+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+       break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot 
compile
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+#ifndef __GNUC__
+       choke me
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_compiler_gnu=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_compiler_gnu=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_g+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_g=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_prog_cc_g=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+if test "$ac_test_CFLAGS" = set; then
+  CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+  if test "$GCC" = yes; then
+    CFLAGS="-g -O2"
+  else
+    CFLAGS="-g"
+  fi
+else
+  if test "$GCC" = yes; then
+    CFLAGS="-O2"
+  else
+    CFLAGS=
+  fi
+fi
+echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_prog_cc_stdc=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
+   function prototypes and stuff, but not '\xHH' hex character constants.
+   These don't provoke an error unfortunately, instead are silently treated
+   as 'x'.  The following induces an error, until -std1 is added to get
+   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
+   array size at least.  It's necessary to write '\x00'==0 to get something
+   that's true only with -std1.  */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, 
int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
+  ;
+  return 0;
+}
+_ACEOF
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX                  -qlanglvl=ansi
+# Ultrix and OSF/1     -std1
+# HP-UX 10.20 and later        -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
+# SVR4                 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc 
-D__EXTENSIONS__"
+do
+  CC="$ac_save_CC $ac_arg"
+  rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_stdc=$ac_arg
+break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext 
+done
+rm -f conftest.$ac_ext conftest.$ac_objext
+CC=$ac_save_CC
+
+fi
+
+case "x$ac_cv_prog_cc_stdc" in
+  x|xno)
+    echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+  *)
+    echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
+    CC="$CC $ac_cv_prog_cc_stdc" ;;
+esac
+
+# Some people use a C++ compiler to compile C.  Since we use `exit',
+# in C++ we need to declare it.  In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
address@hidden:@ifndef __cplusplus
+  choke me
address@hidden:@endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  for ac_declaration in \
+   '' \
+   'extern "C" void std::exit (int) throw (); using std::exit;' \
+   'extern "C" void std::exit (int); using std::exit;' \
+   'extern "C" void exit (int) throw ();' \
+   'extern "C" void exit (int);' \
+   'void exit (int);'
+do
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_declaration
address@hidden:@include <stdlib.h>
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+continue
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+  echo '#ifdef __cplusplus' >>confdefs.h
+  echo $ac_declaration      >>confdefs.h
+  echo '#endif'             >>confdefs.h
+fi
+
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+DEPDIR="${am__leading_dot}deps"
+
+          ac_config_commands="$ac_config_commands depfiles"
+
+
+am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+       @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
+echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = 
"done"; then
+   am__include=include
+   am__quote=
+   _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+   echo '.include "confinc"' > confmf
+   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+      am__include=.include
+      am__quote="\""
+      _am_result=BSD
+   fi
+fi
+
+
+echo "$as_me:$LINENO: result: $_am_result" >&5
+echo "${ECHO_T}$_am_result" >&6
+rm -f confinc confmf
+
+# Check whether --enable-dependency-tracking or --disable-dependency-tracking 
was given.
+if test "${enable_dependency_tracking+set}" = set; then
+  enableval="$enable_dependency_tracking"
+  
+fi; 
+if test "x$enable_dependency_tracking" != xno; then
+  am_depcomp="$ac_aux_dir/depcomp"
+  AMDEPBACKSLASH='\'
+fi
+ 
+
+if test "x$enable_dependency_tracking" != xno; then
+  AMDEP_TRUE=
+  AMDEP_FALSE='#'
+else
+  AMDEP_TRUE='#'
+  AMDEP_FALSE=
+fi
+
+
+
+
+depcc="$CC"   am_compiler_list=
+
+echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+  # We make a subdir and do the tests there.  Otherwise we can end up
+  # making bogus files that we don't know about and never remove.  For
+  # instance it was reported that on HP-UX the gcc test will end up
+  # making a dummy file named `D' -- because `-MD' means `put the output
+  # in D'.
+  mkdir conftest.dir
+  # Copy depcomp to subdir because otherwise we won't find it if we're
+  # using a relative directory.
+  cp "$am_depcomp" conftest.dir
+  cd conftest.dir
+  # We will build objects and dependencies in a subdirectory because
+  # it helps to detect inapplicable dependency modes.  For instance
+  # both Tru64's cc and ICC support -MD to output dependencies as a
+  # side effect of compilation, but ICC will put the dependencies in
+  # the current directory while Tru64 will put them in the object
+  # directory.
+  mkdir sub
+
+  am_cv_CC_dependencies_compiler_type=none
+  if test "$am_compiler_list" = ""; then
+     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+  fi
+  for depmode in $am_compiler_list; do
+    # Setup a source with many dependencies, because some compilers
+    # like to wrap large dependency lists on column 80 (with \), and
+    # we should not choose a depcomp mode which is confused by this.
+    #
+    # We need to recreate these files for each test, as the compiler may
+    # overwrite some of them when testing with obscure command lines.
+    # This happens at least with the AIX C compiler.
+    : > sub/conftest.c
+    for i in 1 2 3 4 5 6; do
+      echo '#include "conftst'$i'.h"' >> sub/conftest.c
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
+    done
+    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+    case $depmode in
+    nosideeffect)
+      # after this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested
+      if test "x$enable_dependency_tracking" = xyes; then
+       continue
+      else
+       break
+      fi
+      ;;
+    none) break ;;
+    esac
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.
+    if depmode=$depmode \
+       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+         >/dev/null 2>conftest.err &&
+       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+      # icc doesn't choke on unknown options, it will just issue warnings
+      # or remarks (even with -Werror).  So we grep stderr for any message
+      # that says an option was ignored or not supported.
+      # When given -MP, icc 7.0 and 7.1 complain thusly:
+      #   icc: Command line warning: ignoring option '-M'; no argument required
+      # The diagnosis changed in icc 8.0:
+      #   icc: Command line remark: option '-MP' not supported
+      if (grep 'ignoring option' conftest.err ||
+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+        am_cv_CC_dependencies_compiler_type=$depmode
+        break
+      fi
+    fi
+  done
+
+  cd ..
+  rm -rf conftest.dir
+else
+  am_cv_CC_dependencies_compiler_type=none
+fi
+
+fi
+echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
+
+ 
+
+if 
+  test "x$enable_dependency_tracking" != xno \
+  && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
+  am__fastdepCC_TRUE=
+  am__fastdepCC_FALSE='#'
+else
+  am__fastdepCC_TRUE='#'
+  am__fastdepCC_FALSE=
+fi
+
+
+
+#Find idl4-config. We need this here, since it gives
+#us some CFLAGS
+if test "x$IDL4CONFIG" = "x" ;then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}idl4-config", so it can be a 
program name with args.
+set dummy ${ac_tool_prefix}idl4-config; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_IDL4CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $IDL4CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_IDL4CONFIG="$IDL4CONFIG" # Let the user override the test with a 
path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_IDL4CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  ;;
+esac
+fi
+IDL4CONFIG=$ac_cv_path_IDL4CONFIG
+
+if test -n "$IDL4CONFIG"; then
+  echo "$as_me:$LINENO: result: $IDL4CONFIG" >&5
+echo "${ECHO_T}$IDL4CONFIG" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_path_IDL4CONFIG"; then
+  ac_pt_IDL4CONFIG=$IDL4CONFIG
+  # Extract the first word of "idl4-config", so it can be a program name with 
args.
+set dummy idl4-config; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ac_pt_IDL4CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ac_pt_IDL4CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_IDL4CONFIG="$ac_pt_IDL4CONFIG" # Let the user override the 
test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_IDL4CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_ac_pt_IDL4CONFIG" && ac_cv_path_ac_pt_IDL4CONFIG="no"
+  ;;
+esac
+fi
+ac_pt_IDL4CONFIG=$ac_cv_path_ac_pt_IDL4CONFIG
+
+if test -n "$ac_pt_IDL4CONFIG"; then
+  echo "$as_me:$LINENO: result: $ac_pt_IDL4CONFIG" >&5
+echo "${ECHO_T}$ac_pt_IDL4CONFIG" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  IDL4CONFIG=$ac_pt_IDL4CONFIG
+else
+  IDL4CONFIG="$ac_cv_path_IDL4CONFIG"
+fi
+
+fi
+if test "x$IDL4CONFIG" = "xno"; then
+  exit 1
+fi
+# FIXME: We should support setting the CFLAGS by the user.  But
+# -std=gnu99 and -O2 are required.
+CFLAGS="-std=gnu99 -Wall -g -O3 `$IDL4CONFIG --cflags`"
+
+# By default we simply use the C compiler to build assembly code.
+
+test "${CCAS+set}" = set || CCAS=$CC
+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS
+
+
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a 
program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+  echo "$as_me:$LINENO: result: $RANLIB" >&5
+echo "${ECHO_T}$RANLIB" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+  ac_ct_RANLIB=$RANLIB
+  # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_RANLIB"; then
+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_RANLIB="ranlib"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+  echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
+echo "${ECHO_T}$ac_ct_RANLIB" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  RANLIB=$ac_ct_RANLIB
+else
+  RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AR"; then
+  ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_AR="${ac_tool_prefix}ar"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+  echo "$as_me:$LINENO: result: $AR" >&5
+echo "${ECHO_T}$AR" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+  ac_ct_AR=$AR
+  # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_AR"; then
+  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_AR="ar"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_AR" && ac_cv_prog_ac_ct_AR=":"
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+  echo "$as_me:$LINENO: result: $ac_ct_AR" >&5
+echo "${ECHO_T}$ac_ct_AR" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  AR=$ac_ct_AR
+else
+  AR="$ac_cv_prog_AR"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nm", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}nm; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NM+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NM"; then
+  ac_cv_prog_NM="$NM" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NM="${ac_tool_prefix}nm"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NM=$ac_cv_prog_NM
+if test -n "$NM"; then
+  echo "$as_me:$LINENO: result: $NM" >&5
+echo "${ECHO_T}$NM" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NM"; then
+  ac_ct_NM=$NM
+  # Extract the first word of "nm", so it can be a program name with args.
+set dummy nm; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NM+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NM"; then
+  ac_cv_prog_ac_ct_NM="$ac_ct_NM" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NM="nm"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NM" && ac_cv_prog_ac_ct_NM=":"
+fi
+fi
+ac_ct_NM=$ac_cv_prog_ac_ct_NM
+if test -n "$ac_ct_NM"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NM" >&5
+echo "${ECHO_T}$ac_ct_NM" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NM=$ac_ct_NM
+else
+  NM="$ac_cv_prog_NM"
+fi
+
+
+#idl4 stuff (check, --help, ...)
+
+
+
+IDL4FLAGS="$IDL4FLAGS -i V4_GNU -p generic -T -fctypes"
+if test "x$IDL4" = "x";then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}idl4", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}idl4; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_IDL4+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $IDL4 in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_IDL4="$IDL4" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_IDL4="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  ;;
+esac
+fi
+IDL4=$ac_cv_path_IDL4
+
+if test -n "$IDL4"; then
+  echo "$as_me:$LINENO: result: $IDL4" >&5
+echo "${ECHO_T}$IDL4" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_path_IDL4"; then
+  ac_pt_IDL4=$IDL4
+  # Extract the first word of "idl4", so it can be a program name with args.
+set dummy idl4; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ac_pt_IDL4+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ac_pt_IDL4 in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_IDL4="$ac_pt_IDL4" # Let the user override the test with a 
path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_IDL4="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_ac_pt_IDL4" && ac_cv_path_ac_pt_IDL4="no"
+  ;;
+esac
+fi
+ac_pt_IDL4=$ac_cv_path_ac_pt_IDL4
+
+if test -n "$ac_pt_IDL4"; then
+  echo "$as_me:$LINENO: result: $ac_pt_IDL4" >&5
+echo "${ECHO_T}$ac_pt_IDL4" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  IDL4=$ac_pt_IDL4
+else
+  IDL4="$ac_cv_path_IDL4"
+fi
+
+fi
+if test "x$IDL4" = xno; then
+  exit 1
+fi
+echo -n "checking for idl4 -l -i V4_GNU -T... "
+$IDL4 $IDL4FLAGS -l -c -C "$CC $CFLAGS" test.idl
+if test -e test_client.h;then
+  echo yes
+  rm test_client.h
+else
+  echo 'Your version of idl4 is outdated, see README.idl4!'
+  exit 1
+fi
+IDL4FLAGS="$IDL4FLAGS -C \"\$(COMPILE) \$(\$(subdir)_CPPFLAGS)\""
+# Extract the first word of "sed", so it can be a program name with args.
+set dummy sed; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_SED+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $SED in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SED="$SED" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_SED" && ac_cv_path_SED=":"
+  ;;
+esac
+fi
+SED=$ac_cv_path_SED
+
+if test -n "$SED"; then
+  echo "$as_me:$LINENO: result: $SED" >&5
+echo "${ECHO_T}$SED" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+# Extract the first word of "sort", so it can be a program name with args.
+set dummy sort; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_SORT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $SORT in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SORT="$SORT" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SORT="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_SORT" && ac_cv_path_SORT=":"
+  ;;
+esac
+fi
+SORT=$ac_cv_path_SORT
+
+if test -n "$SORT"; then
+  echo "$as_me:$LINENO: result: $SORT" >&5
+echo "${ECHO_T}$SORT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+
+# Required for building the documentation
+# Extract the first word of "latex", so it can be a program name with args.
+set dummy latex; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_LATEX+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $LATEX in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_LATEX="$LATEX" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_LATEX="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_LATEX" && ac_cv_path_LATEX="no"
+  ;;
+esac
+fi
+LATEX=$ac_cv_path_LATEX
+
+if test -n "$LATEX"; then
+  echo "$as_me:$LINENO: result: $LATEX" >&5
+echo "${ECHO_T}$LATEX" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$LATEX" = xno; then
+  missing_progs="$missing_progs latex"
+fi
+# Extract the first word of "dvips", so it can be a program name with args.
+set dummy dvips; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_DVIPS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $DVIPS in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_DVIPS="$DVIPS" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_DVIPS="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_DVIPS" && ac_cv_path_DVIPS="no"
+  ;;
+esac
+fi
+DVIPS=$ac_cv_path_DVIPS
+
+if test -n "$DVIPS"; then
+  echo "$as_me:$LINENO: result: $DVIPS" >&5
+echo "${ECHO_T}$DVIPS" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$DVIPS" = xno; then
+  missing_progs="$missing_progs dvips"
+fi
+# Extract the first word of "ps2pdf", so it can be a program name with args.
+set dummy ps2pdf; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_PS2PDF+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $PS2PDF in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PS2PDF="$PS2PDF" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_PS2PDF="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_PS2PDF" && ac_cv_path_PS2PDF="no"
+  ;;
+esac
+fi
+PS2PDF=$ac_cv_path_PS2PDF
+
+if test -n "$PS2PDF"; then
+  echo "$as_me:$LINENO: result: $PS2PDF" >&5
+echo "${ECHO_T}$PS2PDF" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$PS2PDF" = xno; then
+  missing_progs="$missing_progs ps2pdf"
+fi
+# Extract the first word of "fig2dev", so it can be a program name with args.
+set dummy fig2dev; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_FIG2DEV+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $FIG2DEV in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_FIG2DEV="$FIG2DEV" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_FIG2DEV="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_FIG2DEV" && ac_cv_path_FIG2DEV="no"
+  ;;
+esac
+fi
+FIG2DEV=$ac_cv_path_FIG2DEV
+
+if test -n "$FIG2DEV"; then
+  echo "$as_me:$LINENO: result: $FIG2DEV" >&5
+echo "${ECHO_T}$FIG2DEV" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$FIG2DEV" = xno; then
+  if test "x$maintainer_mode" = xyes; then
+    missing_progs="missing_progs fig2dev"
+  fi
+fi
+
+# Set up the host information.
+
+# Make sure we can run config.sub.
+$ac_config_sub sun4 >/dev/null 2>&1 ||
+  { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
+   { (exit 1); exit 1; }; }
+
+echo "$as_me:$LINENO: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6
+if test "${ac_cv_build+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_build_alias=$build_alias
+test -z "$ac_cv_build_alias" &&
+  ac_cv_build_alias=`$ac_config_guess`
+test -z "$ac_cv_build_alias" &&
+  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify 
one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+   { (exit 1); exit 1; }; }
+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
+  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" 
>&5
+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6
+build=$ac_cv_build
+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+echo "$as_me:$LINENO: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6
+if test "${ac_cv_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_host_alias=$host_alias
+test -z "$ac_cv_host_alias" &&
+  ac_cv_host_alias=$ac_cv_build_alias
+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
+  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6
+host=$ac_cv_host
+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+
+# Checks for libraries.
+
+echo "$as_me:$LINENO: checking for static GNU C library" >&5
+echo $ECHO_N "checking for static GNU C library... $ECHO_C" >&6
+static_libc=libc.a
+case $host_os in
+  gnu*)
+    # On the GNU/Hurd, libc.a is a linker script, the real C library
+    # can be found in libcrt.a instead.  But fall back on libc.a for
+    # cheap cross-compilation.
+    libcrta=`$CC -print-file-name=libcrt.a`
+    if test "x$libcrta" != "xlibcrt.a"; then
+      static_libc=libcrt.a
+    fi
+    ;;
+esac
+STATIC_GLIBC=`$CC -print-file-name=$static_libc`
+if test "x$STATIC_GLIBC" = "x$static_libc"; then
+  echo "$as_me:$LINENO: result: none" >&5
+echo "${ECHO_T}none" >&6
+  { { echo "$as_me:$LINENO: error: Could not find static version of the GNU C 
library" >&5
+echo "$as_me: error: Could not find static version of the GNU C library" >&2;}
+   { (exit 1); exit 1; }; }
+else
+  echo "$as_me:$LINENO: result: $STATIC_GLIBC" >&5
+echo "${ECHO_T}$STATIC_GLIBC" >&6
+fi
+
+
+
+# Checks for header files.
+
+# Checks for typedefs, structures, and compiler characteristics.
+
+echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
+echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
+if test "${ac_cv_c_const+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+/* FIXME: Include the comments suggested by Paul. */
+#ifndef __cplusplus
+  /* Ultrix mips cc rejects this.  */
+  typedef int charset[2];
+  const charset x;
+  /* SunOS 4.1.1 cc rejects this.  */
+  char const *const *ccp;
+  char **p;
+  /* NEC SVR4.0.2 mips cc rejects this.  */
+  struct point {int x, y;};
+  static struct point const zero = {0,0};
+  /* AIX XL C 1.02.0.0 rejects this.
+     It does not let you subtract one const X* pointer from another in
+     an arm of an if-expression whose if-part is not a constant
+     expression */
+  const char *g = "string";
+  ccp = &g + (g ? g-g : 0);
+  /* HPUX 7.0 cc rejects these. */
+  ++ccp;
+  p = (char**) ccp;
+  ccp = (char const *const *) p;
+  { /* SCO 3.2v4 cc rejects this.  */
+    char *t;
+    char const *s = 0 ? (char *) 0 : (char const *) 0;
+
+    *t++ = 0;
+  }
+  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
+    int x[] = {25, 17};
+    const int *foo = &x[0];
+    ++foo;
+  }
+  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
+    typedef const int *iptr;
+    iptr p = 0;
+    ++p;
+  }
+  { /* AIX XL C 1.02.0.0 rejects this saying
+       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
+    struct s { int j; const int *ap[3]; };
+    struct s *b; b->j = 5;
+  }
+  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
+    const int foo = 10;
+  }
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_const=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_c_const=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
+echo "${ECHO_T}$ac_cv_c_const" >&6
+if test $ac_cv_c_const = no; then
+  
+cat >>confdefs.h <<\_ACEOF
address@hidden:@define const 
+_ACEOF
+
+fi
+
+echo "$as_me:$LINENO: checking for working volatile" >&5
+echo $ECHO_N "checking for working volatile... $ECHO_C" >&6
+if test "${ac_cv_c_volatile+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+volatile int x;
+int * volatile y;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_volatile=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_c_volatile=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_volatile" >&5
+echo "${ECHO_T}$ac_cv_c_volatile" >&6
+if test $ac_cv_c_volatile = no; then
+  
+cat >>confdefs.h <<\_ACEOF
address@hidden:@define volatile 
+_ACEOF
+
+fi
+
+
+arch_ia32=false
+arch_powerpc=false
+case $host_cpu in
+  alpha)
+    arch=alpha
+    arch_alpha=true
+    ;;
+  amd64)
+    arch=amd64
+    arch_alpha=true
+    ;;
+  i386 | i486 | i586 | i686)
+    arch=ia32
+    arch_ia32=true
+    ;;
+  ia64)
+    arch=ia64
+    arch_ia64=true
+    ;;
+  powerpc)
+    arch=powerpc
+    arch_powerpc=true
+    ;;
+  powerpc64)
+    arch=powerpc64
+    arch_powerpc64=true
+    ;;
+  *)
+    { { echo "$as_me:$LINENO: error: unsupported architecture" >&5
+echo "$as_me: error: unsupported architecture" >&2;}
+   { (exit 1); exit 1; }; }
+    ;;
+esac
+ 
+
+if $arch_alpha; then
+  ARCH_ALPHA_TRUE=
+  ARCH_ALPHA_FALSE='#'
+else
+  ARCH_ALPHA_TRUE='#'
+  ARCH_ALPHA_FALSE=
+fi
+
+ 
+
+if $arch_amd64; then
+  ARCH_AMD64_TRUE=
+  ARCH_AMD64_FALSE='#'
+else
+  ARCH_AMD64_TRUE='#'
+  ARCH_AMD64_FALSE=
+fi
+
+ 
+
+if $arch_ia32; then
+  ARCH_IA32_TRUE=
+  ARCH_IA32_FALSE='#'
+else
+  ARCH_IA32_TRUE='#'
+  ARCH_IA32_FALSE=
+fi
+
+ 
+
+if $arch_ia64; then
+  ARCH_IA64_TRUE=
+  ARCH_IA64_FALSE='#'
+else
+  ARCH_IA64_TRUE='#'
+  ARCH_IA64_FALSE=
+fi
+
+ 
+
+if $arch_powerpc; then
+  ARCH_POWERPC_TRUE=
+  ARCH_POWERPC_FALSE='#'
+else
+  ARCH_POWERPC_TRUE='#'
+  ARCH_POWERPC_FALSE=
+fi
+
+ 
+
+if $arch_powerpc64; then
+  ARCH_POWERPC64_TRUE=
+  ARCH_POWERPC64_FALSE='#'
+else
+  ARCH_POWERPC64_TRUE='#'
+  ARCH_POWERPC64_FALSE=
+fi
+
+
+# Configure components.
+# config.m4 - Configure snippet for laden.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+# 
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-laden-loadaddr or --without-laden-loadaddr was given.
+if test "${with_laden_loadaddr+set}" = set; then
+  withval="$with_laden_loadaddr"
+  hurd_laden_load_address=$withval
+else
+  hurd_laden_load_address=0x190000
+fi; 
+       HURD_LADEN_LOAD_ADDRESS=$hurd_laden_load_address
+       
+
+# config.m4 - Configure snippet for wortel.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+# 
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-wortel-loadaddr or --without-wortel-loadaddr was given.
+if test "${with_wortel_loadaddr+set}" = set; then
+  withval="$with_wortel_loadaddr"
+  hurd_wortel_load_address=$withval
+else
+  hurd_wortel_load_address=0x300000
+fi; 
+       HURD_WORTEL_LOAD_ADDRESS=$hurd_wortel_load_address
+       
+
+# config.m4 - Configure snippet for physmem.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+# 
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-physmem-loadaddr or --without-physmem-loadaddr was 
given.
+if test "${with_physmem_loadaddr+set}" = set; then
+  withval="$with_physmem_loadaddr"
+  hurd_physmem_load_address=$withval
+else
+  hurd_physmem_load_address=0x400000
+fi; 
+       HURD_PHYSMEM_LOAD_ADDRESS=$hurd_physmem_load_address
+       
+
+
+# Create links for header file.
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                                                                               
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
 ac_config_links="$ac_config_links include/l4.h:libl4/l4.h 
include/l4/features.h:libl4/l4/features.h 
include/l4/globals.h:libl4/l4/globals.h include/l4/init.h:libl4/l4/init.h 
include/l4/ipc.h:libl4/l4/ipc.h include/l4/kip.h:libl4/l4/kip.h 
include/l4/math.h:libl4/l4/math.h include/l4/message.h:libl4/l4/message.h 
include/l4/misc.h:libl4/l4/misc.h include/l4/arch.h:libl4/l4/arch.h 
include/l4/pagefault.h:libl4/l4/pagefault.h 
include/l4/schedule.h:libl4/l4/schedule.h include/l4/space.h:libl4/l4/space.h 
include/l4/stubs-init.h:libl4/l4/stubs-init.h 
include/l4/stubs.h:libl4/l4/stubs.h include/l4/syscall.h:libl4/l4/syscall.h 
include/l4/thread.h:libl4/l4/thread.h 
include/l4/thread-start.h:libl4/l4/thread-start.h 
include/l4/types.h:libl4/l4/types.h include/l4/vregs.h:libl4/l4/vregs.h 
include/l4/sigma0.h:libl4/l4/sigma0.h 
include/l4/compat/ipc.h:libl4/l4/compat/ipc.h 
include/l4/compat/kip.h:libl4/l4/compat/kip.h 
include/l4/compat/message.h:libl4/l4/compat/message.h 
include/l4/compat/misc.h:libl4/l4/compat/misc.h 
include/l4/compat/schedule.h:libl4/l4/compat/schedule.h 
include/l4/compat/space.h:libl4/l4/compat/space.h 
include/l4/compat/syscall.h:libl4/l4/compat/syscall.h 
include/l4/compat/thread.h:libl4/l4/compat/thread.h 
include/l4/compat/types.h:libl4/l4/compat/types.h 
include/l4/compat/sigma0.h:libl4/l4/compat/sigma0.h 
include/l4/gnu/ipc.h:libl4/l4/gnu/ipc.h include/l4/gnu/kip.h:libl4/l4/gnu/kip.h 
include/l4/gnu/math.h:libl4/l4/gnu/math.h 
include/l4/gnu/message.h:libl4/l4/gnu/message.h 
include/l4/gnu/misc.h:libl4/l4/gnu/misc.h 
include/l4/gnu/pagefault.h:libl4/l4/gnu/pagefault.h 
include/l4/gnu/schedule.h:libl4/l4/gnu/schedule.h 
include/l4/gnu/space.h:libl4/l4/gnu/space.h 
include/l4/gnu/syscall.h:libl4/l4/gnu/syscall.h 
include/l4/gnu/thread.h:libl4/l4/gnu/thread.h 
include/l4/gnu/thread-start.h:libl4/l4/gnu/thread-start.h 
include/l4/gnu/types.h:libl4/l4/gnu/types.h 
include/l4/gnu/sigma0.h:libl4/l4/gnu/sigma0.h 
include/l4/bits/ipc.h:libl4/${arch}/l4/bits/ipc.h 
include/l4/bits/kip.h:libl4/${arch}/l4/bits/kip.h 
include/l4/bits/math.h:libl4/${arch}/l4/bits/math.h 
include/l4/bits/misc.h:libl4/${arch}/l4/bits/misc.h 
include/l4/bits/arch.h:libl4/${arch}/l4/bits/arch.h 
include/l4/bits/space.h:libl4/${arch}/l4/bits/space.h 
include/l4/bits/stubs.h:libl4/${arch}/l4/bits/stubs.h 
include/l4/bits/stubs-init.h:libl4/${arch}/l4/bits/stubs-init.h 
include/l4/bits/syscall.h:libl4/${arch}/l4/bits/syscall.h 
include/l4/bits/types.h:libl4/${arch}/l4/bits/types.h 
include/l4/bits/vregs.h:libl4/${arch}/l4/bits/vregs.h 
include/l4/bits/compat/ipc.h:libl4/${arch}/l4/bits/compat/ipc.h 
include/l4/bits/compat/misc.h:libl4/${arch}/l4/bits/compat/misc.h 
include/l4/bits/compat/arch.h:libl4/${arch}/l4/bits/compat/arch.h 
include/l4/bits/compat/space.h:libl4/${arch}/l4/bits/compat/space.h 
include/l4/bits/gnu/ipc.h:libl4/${arch}/l4/bits/gnu/ipc.h 
include/l4/bits/gnu/kip.h:libl4/${arch}/l4/bits/gnu/kip.h 
include/l4/bits/gnu/misc.h:libl4/${arch}/l4/bits/gnu/misc.h 
include/l4/bits/gnu/arch.h:libl4/${arch}/l4/bits/gnu/arch.h 
include/l4/bits/gnu/space.h:libl4/${arch}/l4/bits/gnu/space.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                              ac_config_links="$ac_config_links 
include/atomic.h:platform/atomic.h 
include/bits/atomic.h:platform/${arch}/bits/atomic.h 
include/compiler.h:platform/compiler.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                    ac_config_links="$ac_config_links 
include/hurd/types.h:hurd/types.h include/hurd/startup.h:hurd/startup.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/ihash.h:libhurd-ihash/ihash.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/btree.h:libhurd-btree/btree.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/slab.h:libhurd-slab/slab.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/cap.h:libhurd-cap/cap.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/cap-server.h:libhurd-cap-server/cap-server.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004, 2005 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                              ac_config_links="$ac_config_links 
include/hurd/mm.h:libhurd-mm/mm.h include/hurd/vm.h:libhurd-mm/vm.h 
include/hurd/anonymous.h:libhurd-mm/anonymous.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                                                                               
                                                                                
                                         ac_config_links="$ac_config_links 
include/pthread.h:libpthread/include/pthread.h 
include/pthread/pthread.h:libpthread/include/pthread/pthread.h 
include/bits/memory.h:libpthread/sysdeps/${arch}/bits/memory.h 
include/bits/spin-lock.h:libpthread/sysdeps/${arch}/bits/spin-lock.h 
include/bits/pthreadtypes.h:libpthread/sysdeps/generic/bits/pthreadtypes.h 
include/bits/barrier-attr.h:libpthread/sysdeps/generic/bits/barrier-attr.h 
include/bits/barrier.h:libpthread/sysdeps/generic/bits/barrier.h 
include/bits/cancelation.h:libpthread/sysdeps/generic/bits/cancelation.h 
include/bits/condition-attr.h:libpthread/sysdeps/generic/bits/condition-attr.h 
include/bits/condition.h:libpthread/sysdeps/generic/bits/condition.h 
include/bits/mutex-attr.h:libpthread/sysdeps/generic/bits/mutex-attr.h 
include/bits/mutex.h:libpthread/sysdeps/generic/bits/mutex.h 
include/bits/once.h:libpthread/sysdeps/generic/bits/once.h 
include/bits/pthread.h:libpthread/sysdeps/generic/bits/pthread.h 
include/bits/rwlock-attr.h:libpthread/sysdeps/generic/bits/rwlock-attr.h 
include/bits/rwlock.h:libpthread/sysdeps/generic/bits/rwlock.h 
include/bits/thread-attr.h:libpthread/sysdeps/generic/bits/thread-attr.h 
include/bits/thread-barrier.h:libpthread/sysdeps/generic/bits/thread-barrier.h 
include/bits/thread-specific.h:libpthread/sysdeps/generic/bits/thread-specific.h
 include/bits/pthread-np.h:libpthread/sysdeps/l4/bits/pthread-np.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/wortel.h:wortel/wortel.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2005 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/physmem.h:physmem/physmem.h"
+
+
+
+# Check for libc and components using it.
+
+
+# Check whether --with-libc or --without-libc was given.
+if test "${with_libc+set}" = set; then
+  withval="$with_libc"
+  
+fi; 
+ 
+
+if test x"${with_libc-no}" != xno; then
+  WITH_LIBC_TRUE=
+  WITH_LIBC_FALSE='#'
+else
+  WITH_LIBC_TRUE='#'
+  WITH_LIBC_FALSE=
+fi
+
+
+
+if test "x$missing_progs" != "x"; then
+  { { echo "$as_me:$LINENO: error: The following programs were not 
found:$missing_progs" >&5
+echo "$as_me: error: The following programs were not found:$missing_progs" 
>&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# Checks for library functions.
+                                                                               
                                                                                
                                                                                
                                                   
ac_config_files="$ac_config_files Makefile libl4/ia32/Makefile 
libl4/powerpc/Makefile libl4/tests/Makefile libl4/Makefile 
platform/alpha/Makefile platform/amd64/Makefile platform/ia32/Makefile 
platform/ia64/Makefile platform/powerpc/Makefile platform/powerpc64/Makefile 
platform/Makefile libc-parts/Makefile hurd/Makefile libhurd-ihash/Makefile 
libhurd-btree/Makefile libhurd-slab/Makefile libhurd-cap/Makefile 
libhurd-cap-server/Makefile libhurd-mm/Makefile libpthread/Makefile 
laden/Makefile wortel/Makefile physmem/Makefile task/Makefile deva/Makefile 
libc/Makefile ruth/Makefile doc/Makefile"
+
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems.  If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, don't put newlines in cache variables' values.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+{
+  (set) 2>&1 |
+    case `(ac_space=' '; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      # `set' does not quote correctly, so add quotes (double-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \).
+      sed -n \
+       "s/'/'\\\\''/g;
+         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+      ;;
+    *)
+      # `set' quotes correctly as required by POSIX, so do not add quotes.
+      sed -n \
+       "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} |
+  sed '
+     t clear
+     : clear
+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     t end
+     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+     : end' >>confcache
+if diff $cache_file confcache >/dev/null 2>&1; then :; else
+  if test -w $cache_file; then
+    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+    cat confcache >$cache_file
+  else
+    echo "not updating unwritable cache $cache_file"
+  fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+  ac_vpsub='/^[         ]*VPATH[        ]*=/{
+s/:*\$(srcdir):*/:/;
+s/:*\${srcdir}:*/:/;
+s/:address@hidden@:*/:/;
+s/^\([^=]*=[    ]*\):*/\1/;
+s/:*$//;
+s/^[^=]*=[      ]*$//;
+}'
+fi
+
+DEFS=-DHAVE_CONFIG_H
+
+ac_libobjs=
+ac_ltlibobjs=
+for ac_i in : $LIB@&address@hidden; do test "x$ac_i" = x: && continue
+  # 1. Remove the extension, and $U if already installed.
+  ac_i=`echo "$ac_i" |
+        sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
+  # 2. Add them.
+  ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
+  ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
+done
+LIB@&address@hidden
+
+LTLIBOBJS=$ac_ltlibobjs
+
+
+if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; 
then
+  { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_ALPHA_TRUE}" && test -z "${ARCH_ALPHA_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_ALPHA\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_ALPHA\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_AMD64_TRUE}" && test -z "${ARCH_AMD64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_AMD64\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_AMD64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_IA32_TRUE}" && test -z "${ARCH_IA32_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_IA32\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_IA32\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_IA64_TRUE}" && test -z "${ARCH_IA64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_IA64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_IA64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_POWERPC_TRUE}" && test -z "${ARCH_POWERPC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_POWERPC\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_POWERPC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_POWERPC64_TRUE}" && test -z "${ARCH_POWERPC64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_POWERPC64\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_POWERPC64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${WITH_LIBC_TRUE}" && test -z "${WITH_LIBC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"WITH_LIBC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"WITH_LIBC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+: ${CONFIG_STATUS=./config.status}
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate the current configuration.
+# Compiler output produced by configure, useful for debugging
+# configure, is in config.log if it exists.
+
+debug=false
+ac_cs_recheck=false
+ac_cs_silent=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+## --------------------- ##
+## M4sh Initialization.  ##
+## --------------------- ##
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+
+# Work around bugs in pre-3.0 UWIN ksh.
+$as_unset ENV MAIL MAILPATH
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+  LC_TELEPHONE LC_TIME
+do
+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+    eval $as_var=C; export $as_var
+  else
+    $as_unset $as_var
+  fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)$' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+         /^X\/\(\/\/\)$/{ s//\1/; q; }
+         /^X\/\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+
+
+# PATH needs CR, and LINENO needs CR and PATH.
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
+  # Find who we are.  Look in the path if we contain no path at all
+  # relative or not.
+  case $0 in
+    *[\\/]* ) as_myself=$0 ;;
+    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+
+       ;;
+  esac
+  # We did not find ourselves, most probably we were run as `sh COMMAND'
+  # in which case we are not to be found in the path.
+  if test "x$as_myself" = x; then
+    as_myself=$0
+  fi
+  if test ! -f "$as_myself"; then
+    { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an 
absolute path" >&5
+echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+  case $CONFIG_SHELL in
+  '')
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for as_base in sh bash ksh sh5; do
+        case $as_dir in
+        /*)
+          if ("$as_dir/$as_base" -c '
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
+            $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { 
BASH_ENV=; export BASH_ENV; }
+            $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+            CONFIG_SHELL=$as_dir/$as_base
+            export CONFIG_SHELL
+            exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+          fi;;
+        esac
+       done
+done
+;;
+  esac
+
+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+  # uniformly replaced by the line number.  The first 'sed' inserts a
+  # line-number line before each line; the second 'sed' does the real
+  # work.  The second script uses 'N' to pair each line-number line
+  # with the numbered line, and appends trailing '-' during
+  # substitution so that $LINENO is not a special case at line end.
+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
+  sed '=' <$as_myself |
+    sed '
+      N
+      s,$,-,
+      : loop
+      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+      t loop
+      s,-$,,
+      s,^['$as_cr_digits']*\n,,
+    ' >$as_me.lineno &&
+  chmod +x $as_me.lineno ||
+    { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a 
POSIX shell" >&5
+echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" 
>&2;}
+   { (exit 1); exit 1; }; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensible to this).
+  . ./$as_me.lineno
+  # Exit status is that of the last command.
+  exit
+}
+
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='     ' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p=:
+else
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
+fi
+
+as_executable_p="test -f"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS="  $as_nl"
+
+# CDPATH.
+$as_unset CDPATH
+
+exec 6>&1
+
+# Open the log real soon, to keep \$[0] and so on meaningful, and to
+# report actual input values of CONFIG_FILES etc. instead of their
+# values after options handling.  Logging --version etc. is OK.
+exec 5>>config.log
+{
+  echo
+  sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
address@hidden:@@%:@ Running $as_me. @%:@@%:@
+_ASBOX
+} >&5
+cat >&5 <<_CSEOF
+
+This file was extended by hurd $as_me 0.0, which was
+generated by GNU Autoconf 2.59.  Invocation command line was
+
+  CONFIG_FILES    = $CONFIG_FILES
+  CONFIG_HEADERS  = $CONFIG_HEADERS
+  CONFIG_LINKS    = $CONFIG_LINKS
+  CONFIG_COMMANDS = $CONFIG_COMMANDS
+  $ $0 $@
+
+_CSEOF
+echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
+echo >&5
+_ACEOF
+
+# Files that config.status was made for.
+if test -n "$ac_config_files"; then
+  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_headers"; then
+  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_links"; then
+  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_commands"; then
+  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+fi
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTIONS] [FILE]...
+
+  -h, --help       print this help, then exit
+  -V, --version    print version number, then exit
+  -q, --quiet      do not print progress messages
+  -d, --debug      don't remove temporary files
+      --recheck    update $as_me by reconfiguring in the same conditions
+  --file=FILE[:TEMPLATE]
+                  instantiate the configuration file FILE
+  --header=FILE[:TEMPLATE]
+                  instantiate the configuration header FILE
+
+Configuration files:
+$config_files
+
+Configuration headers:
+$config_headers
+
+Configuration links:
+$config_links
+
+Configuration commands:
+$config_commands
+
+Report bugs to <address@hidden>."
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+ac_cs_version="\\
+hurd config.status 0.0
+configured by $0, generated by GNU Autoconf 2.59,
+  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright (C) 2003 Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+srcdir=$srcdir
+INSTALL="$INSTALL"
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+# If no file are specified by the user, then we need to provide default
+# value.  By we need to know if files were specified by the user.
+ac_need_defaults=:
+while test $# != 0
+do
+  case $1 in
+  --*=*)
+    ac_option=`expr "x$1" : 'x\([^=]*\)='`
+    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
+    ac_shift=:
+    ;;
+  -*)
+    ac_option=$1
+    ac_optarg=$2
+    ac_shift=shift
+    ;;
+  *) # This is not an option, so the user has probably given explicit
+     # arguments.
+     ac_option=$1
+     ac_need_defaults=false;;
+  esac
+
+  case $ac_option in
+  # Handling of the options.
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+    ac_cs_recheck=: ;;
+  --version | --vers* | -V )
+    echo "$ac_cs_version"; exit 0 ;;
+  --he | --h)
+    # Conflict between --help and --header
+    { { echo "$as_me:$LINENO: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; };;
+  --help | --hel | -h )
+    echo "$ac_cs_usage"; exit 0 ;;
+  --debug | --d* | -d )
+    debug=: ;;
+  --file | --fil | --fi | --f )
+    $ac_shift
+    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
+    ac_need_defaults=false;;
+  --header | --heade | --head | --hea )
+    $ac_shift
+    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
+    ac_need_defaults=false;;
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil | --si | --s)
+    ac_cs_silent=: ;;
+
+  # This is an error.
+  -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; } ;;
+
+  *) ac_config_targets="$ac_config_targets $1" ;;
+
+  esac
+  shift
+done
+
+ac_configure_extra_args=
+
+if $ac_cs_silent; then
+  exec 6>/dev/null
+  ac_configure_extra_args="$ac_configure_extra_args --silent"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+if \$ac_cs_recheck; then
+  echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " 
--no-create --no-recursion" >&6
+  exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create 
--no-recursion
+fi
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+#
+# INIT-COMMANDS section.
+#
+
+AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+
+_ACEOF
+
+
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+for ac_config_target in $ac_config_targets
+do
+  case "$ac_config_target" in
+  # Handling of arguments.
+  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+  "libl4/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/ia32/Makefile" ;;
+  "libl4/powerpc/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libl4/powerpc/Makefile" ;;
+  "libl4/tests/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/tests/Makefile" ;;
+  "libl4/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/Makefile" ;;
+  "platform/alpha/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/alpha/Makefile" ;;
+  "platform/amd64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/amd64/Makefile" ;;
+  "platform/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/ia32/Makefile" ;;
+  "platform/ia64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/ia64/Makefile" ;;
+  "platform/powerpc/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/powerpc/Makefile" ;;
+  "platform/powerpc64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/powerpc64/Makefile" ;;
+  "platform/Makefile" ) CONFIG_FILES="$CONFIG_FILES platform/Makefile" ;;
+  "libc-parts/Makefile" ) CONFIG_FILES="$CONFIG_FILES libc-parts/Makefile" ;;
+  "hurd/Makefile" ) CONFIG_FILES="$CONFIG_FILES hurd/Makefile" ;;
+  "libhurd-ihash/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-ihash/Makefile" ;;
+  "libhurd-btree/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-btree/Makefile" ;;
+  "libhurd-slab/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-slab/Makefile" 
;;
+  "libhurd-cap/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-cap/Makefile" ;;
+  "libhurd-cap-server/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-cap-server/Makefile" ;;
+  "libhurd-mm/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-mm/Makefile" ;;
+  "libpthread/Makefile" ) CONFIG_FILES="$CONFIG_FILES libpthread/Makefile" ;;
+  "laden/Makefile" ) CONFIG_FILES="$CONFIG_FILES laden/Makefile" ;;
+  "wortel/Makefile" ) CONFIG_FILES="$CONFIG_FILES wortel/Makefile" ;;
+  "physmem/Makefile" ) CONFIG_FILES="$CONFIG_FILES physmem/Makefile" ;;
+  "task/Makefile" ) CONFIG_FILES="$CONFIG_FILES task/Makefile" ;;
+  "deva/Makefile" ) CONFIG_FILES="$CONFIG_FILES deva/Makefile" ;;
+  "libc/Makefile" ) CONFIG_FILES="$CONFIG_FILES libc/Makefile" ;;
+  "ruth/Makefile" ) CONFIG_FILES="$CONFIG_FILES ruth/Makefile" ;;
+  "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
+  "include/l4.h" ) CONFIG_LINKS="$CONFIG_LINKS include/l4.h:libl4/l4.h" ;;
+  "include/l4/features.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/features.h:libl4/l4/features.h" ;;
+  "include/l4/globals.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/globals.h:libl4/l4/globals.h" ;;
+  "include/l4/init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/init.h:libl4/l4/init.h" ;;
+  "include/l4/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/ipc.h:libl4/l4/ipc.h" ;;
+  "include/l4/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/kip.h:libl4/l4/kip.h" ;;
+  "include/l4/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/math.h:libl4/l4/math.h" ;;
+  "include/l4/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/message.h:libl4/l4/message.h" ;;
+  "include/l4/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/misc.h:libl4/l4/misc.h" ;;
+  "include/l4/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/arch.h:libl4/l4/arch.h" ;;
+  "include/l4/pagefault.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/pagefault.h:libl4/l4/pagefault.h" ;;
+  "include/l4/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/schedule.h:libl4/l4/schedule.h" ;;
+  "include/l4/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/space.h:libl4/l4/space.h" ;;
+  "include/l4/stubs-init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/stubs-init.h:libl4/l4/stubs-init.h" ;;
+  "include/l4/stubs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/stubs.h:libl4/l4/stubs.h" ;;
+  "include/l4/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/syscall.h:libl4/l4/syscall.h" ;;
+  "include/l4/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/thread.h:libl4/l4/thread.h" ;;
+  "include/l4/thread-start.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/thread-start.h:libl4/l4/thread-start.h" ;;
+  "include/l4/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/types.h:libl4/l4/types.h" ;;
+  "include/l4/vregs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/vregs.h:libl4/l4/vregs.h" ;;
+  "include/l4/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/sigma0.h:libl4/l4/sigma0.h" ;;
+  "include/l4/compat/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/ipc.h:libl4/l4/compat/ipc.h" ;;
+  "include/l4/compat/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/kip.h:libl4/l4/compat/kip.h" ;;
+  "include/l4/compat/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/message.h:libl4/l4/compat/message.h" ;;
+  "include/l4/compat/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/misc.h:libl4/l4/compat/misc.h" ;;
+  "include/l4/compat/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/schedule.h:libl4/l4/compat/schedule.h" ;;
+  "include/l4/compat/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/space.h:libl4/l4/compat/space.h" ;;
+  "include/l4/compat/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/syscall.h:libl4/l4/compat/syscall.h" ;;
+  "include/l4/compat/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/thread.h:libl4/l4/compat/thread.h" ;;
+  "include/l4/compat/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/types.h:libl4/l4/compat/types.h" ;;
+  "include/l4/compat/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/sigma0.h:libl4/l4/compat/sigma0.h" ;;
+  "include/l4/gnu/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/ipc.h:libl4/l4/gnu/ipc.h" ;;
+  "include/l4/gnu/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/kip.h:libl4/l4/gnu/kip.h" ;;
+  "include/l4/gnu/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/math.h:libl4/l4/gnu/math.h" ;;
+  "include/l4/gnu/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/message.h:libl4/l4/gnu/message.h" ;;
+  "include/l4/gnu/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/misc.h:libl4/l4/gnu/misc.h" ;;
+  "include/l4/gnu/pagefault.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/pagefault.h:libl4/l4/gnu/pagefault.h" ;;
+  "include/l4/gnu/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/schedule.h:libl4/l4/gnu/schedule.h" ;;
+  "include/l4/gnu/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/space.h:libl4/l4/gnu/space.h" ;;
+  "include/l4/gnu/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/syscall.h:libl4/l4/gnu/syscall.h" ;;
+  "include/l4/gnu/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/thread.h:libl4/l4/gnu/thread.h" ;;
+  "include/l4/gnu/thread-start.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/thread-start.h:libl4/l4/gnu/thread-start.h" ;;
+  "include/l4/gnu/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/types.h:libl4/l4/gnu/types.h" ;;
+  "include/l4/gnu/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/sigma0.h:libl4/l4/gnu/sigma0.h" ;;
+  "include/l4/bits/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/ipc.h:libl4/${arch}/l4/bits/ipc.h" ;;
+  "include/l4/bits/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/kip.h:libl4/${arch}/l4/bits/kip.h" ;;
+  "include/l4/bits/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/math.h:libl4/${arch}/l4/bits/math.h" ;;
+  "include/l4/bits/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/misc.h:libl4/${arch}/l4/bits/misc.h" ;;
+  "include/l4/bits/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/arch.h:libl4/${arch}/l4/bits/arch.h" ;;
+  "include/l4/bits/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/space.h:libl4/${arch}/l4/bits/space.h" ;;
+  "include/l4/bits/stubs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/stubs.h:libl4/${arch}/l4/bits/stubs.h" ;;
+  "include/l4/bits/stubs-init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/stubs-init.h:libl4/${arch}/l4/bits/stubs-init.h" ;;
+  "include/l4/bits/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/syscall.h:libl4/${arch}/l4/bits/syscall.h" ;;
+  "include/l4/bits/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/types.h:libl4/${arch}/l4/bits/types.h" ;;
+  "include/l4/bits/vregs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/vregs.h:libl4/${arch}/l4/bits/vregs.h" ;;
+  "include/l4/bits/compat/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/ipc.h:libl4/${arch}/l4/bits/compat/ipc.h" ;;
+  "include/l4/bits/compat/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/misc.h:libl4/${arch}/l4/bits/compat/misc.h" ;;
+  "include/l4/bits/compat/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/arch.h:libl4/${arch}/l4/bits/compat/arch.h" ;;
+  "include/l4/bits/compat/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/space.h:libl4/${arch}/l4/bits/compat/space.h" ;;
+  "include/l4/bits/gnu/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/ipc.h:libl4/${arch}/l4/bits/gnu/ipc.h" ;;
+  "include/l4/bits/gnu/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/kip.h:libl4/${arch}/l4/bits/gnu/kip.h" ;;
+  "include/l4/bits/gnu/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/misc.h:libl4/${arch}/l4/bits/gnu/misc.h" ;;
+  "include/l4/bits/gnu/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/arch.h:libl4/${arch}/l4/bits/gnu/arch.h" ;;
+  "include/l4/bits/gnu/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/space.h:libl4/${arch}/l4/bits/gnu/space.h" ;;
+  "include/atomic.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/atomic.h:platform/atomic.h" ;;
+  "include/bits/atomic.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/atomic.h:platform/${arch}/bits/atomic.h" ;;
+  "include/compiler.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/compiler.h:platform/compiler.h" ;;
+  "include/hurd/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/types.h:hurd/types.h" ;;
+  "include/hurd/startup.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/startup.h:hurd/startup.h" ;;
+  "include/hurd/ihash.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/ihash.h:libhurd-ihash/ihash.h" ;;
+  "include/hurd/btree.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/btree.h:libhurd-btree/btree.h" ;;
+  "include/hurd/slab.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/slab.h:libhurd-slab/slab.h" ;;
+  "include/hurd/cap.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/cap.h:libhurd-cap/cap.h" ;;
+  "include/hurd/cap-server.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/cap-server.h:libhurd-cap-server/cap-server.h" ;;
+  "include/hurd/mm.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/mm.h:libhurd-mm/mm.h" ;;
+  "include/hurd/vm.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/vm.h:libhurd-mm/vm.h" ;;
+  "include/hurd/anonymous.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/anonymous.h:libhurd-mm/anonymous.h" ;;
+  "include/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/pthread.h:libpthread/include/pthread.h" ;;
+  "include/pthread/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/pthread/pthread.h:libpthread/include/pthread/pthread.h" ;;
+  "include/bits/memory.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/memory.h:libpthread/sysdeps/${arch}/bits/memory.h" ;;
+  "include/bits/spin-lock.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/spin-lock.h:libpthread/sysdeps/${arch}/bits/spin-lock.h" ;;
+  "include/bits/pthreadtypes.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthreadtypes.h:libpthread/sysdeps/generic/bits/pthreadtypes.h" ;;
+  "include/bits/barrier-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/barrier-attr.h:libpthread/sysdeps/generic/bits/barrier-attr.h" ;;
+  "include/bits/barrier.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/barrier.h:libpthread/sysdeps/generic/bits/barrier.h" ;;
+  "include/bits/cancelation.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/cancelation.h:libpthread/sysdeps/generic/bits/cancelation.h" ;;
+  "include/bits/condition-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/condition-attr.h:libpthread/sysdeps/generic/bits/condition-attr.h" 
;;
+  "include/bits/condition.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/condition.h:libpthread/sysdeps/generic/bits/condition.h" ;;
+  "include/bits/mutex-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/mutex-attr.h:libpthread/sysdeps/generic/bits/mutex-attr.h" ;;
+  "include/bits/mutex.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/mutex.h:libpthread/sysdeps/generic/bits/mutex.h" ;;
+  "include/bits/once.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/once.h:libpthread/sysdeps/generic/bits/once.h" ;;
+  "include/bits/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthread.h:libpthread/sysdeps/generic/bits/pthread.h" ;;
+  "include/bits/rwlock-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/rwlock-attr.h:libpthread/sysdeps/generic/bits/rwlock-attr.h" ;;
+  "include/bits/rwlock.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/rwlock.h:libpthread/sysdeps/generic/bits/rwlock.h" ;;
+  "include/bits/thread-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-attr.h:libpthread/sysdeps/generic/bits/thread-attr.h" ;;
+  "include/bits/thread-barrier.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-barrier.h:libpthread/sysdeps/generic/bits/thread-barrier.h" 
;;
+  "include/bits/thread-specific.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-specific.h:libpthread/sysdeps/generic/bits/thread-specific.h"
 ;;
+  "include/bits/pthread-np.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthread-np.h:libpthread/sysdeps/l4/bits/pthread-np.h" ;;
+  "include/hurd/wortel.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/wortel.h:wortel/wortel.h" ;;
+  "include/hurd/physmem.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/physmem.h:physmem/physmem.h" ;;
+  "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+  "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
+  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used.  Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
+  test "${CONFIG_LINKS+set}" = set || CONFIG_LINKS=$config_links
+  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+fi
+
+# Have a temporary directory for convenience.  Make it in the build tree
+# simply because there is no reason to put it here, and in addition,
+# creating and moving files from /tmp can sometimes cause problems.
+# Create a temporary directory, and hook for its removal unless debugging.
+$debug ||
+{
+  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
+  trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+
+# Create a (secure) tmp directory for tmp files.
+
+{
+  tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
+  test -n "$tmp" && test -d "$tmp"
+}  ||
+{
+  tmp=./confstat$$-$RANDOM
+  (umask 077 && mkdir $tmp)
+} ||
+{
+   echo "$me: cannot create a temporary directory in ." >&2
+   { (exit 1); exit 1; }
+}
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+
+#
+# CONFIG_FILES section.
+#
+
+# No need to generate the scripts if there are no CONFIG_FILES.
+# This happens for instance when ./config.status config.h
+if test -n "\$CONFIG_FILES"; then
+  # Protect against being on the right side of a sed subst in config.status.
+  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
+   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
+s,@SHELL@,$SHELL,;t t
+s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
+s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
+s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
+s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
+s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
+s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
+s,@exec_prefix@,$exec_prefix,;t t
+s,@prefix@,$prefix,;t t
+s,@program_transform_name@,$program_transform_name,;t t
+s,@bindir@,$bindir,;t t
+s,@sbindir@,$sbindir,;t t
+s,@libexecdir@,$libexecdir,;t t
+s,@datadir@,$datadir,;t t
+s,@sysconfdir@,$sysconfdir,;t t
+s,@sharedstatedir@,$sharedstatedir,;t t
+s,@localstatedir@,$localstatedir,;t t
+s,@libdir@,$libdir,;t t
+s,@includedir@,$includedir,;t t
+s,@oldincludedir@,$oldincludedir,;t t
+s,@infodir@,$infodir,;t t
+s,@mandir@,$mandir,;t t
+s,@build_alias@,$build_alias,;t t
+s,@host_alias@,$host_alias,;t t
+s,@target_alias@,$target_alias,;t t
+s,@DEFS@,$DEFS,;t t
+s,@ECHO_C@,$ECHO_C,;t t
+s,@ECHO_N@,$ECHO_N,;t t
+s,@ECHO_T@,$ECHO_T,;t t
+s,@LIBS@,$LIBS,;t t
+s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
+s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
+s,@INSTALL_DATA@,$INSTALL_DATA,;t t
+s,@CYGPATH_W@,$CYGPATH_W,;t t
+s,@PACKAGE@,$PACKAGE,;t t
+s,@VERSION@,$VERSION,;t t
+s,@ACLOCAL@,$ACLOCAL,;t t
+s,@AUTOCONF@,$AUTOCONF,;t t
+s,@AUTOMAKE@,$AUTOMAKE,;t t
+s,@AUTOHEADER@,$AUTOHEADER,;t t
+s,@MAKEINFO@,$MAKEINFO,;t t
+s,@install_sh@,$install_sh,;t t
+s,@STRIP@,$STRIP,;t t
+s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
+s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
+s,@mkdir_p@,$mkdir_p,;t t
+s,@AWK@,$AWK,;t t
+s,@SET_MAKE@,$SET_MAKE,;t t
+s,@am__leading_dot@,$am__leading_dot,;t t
+s,@AMTAR@,$AMTAR,;t t
+s,@am__tar@,$am__tar,;t t
+s,@am__untar@,$am__untar,;t t
+s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
+s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
+s,@MAINT@,$MAINT,;t t
+s,@CC@,$CC,;t t
+s,@CFLAGS@,$CFLAGS,;t t
+s,@LDFLAGS@,$LDFLAGS,;t t
+s,@CPPFLAGS@,$CPPFLAGS,;t t
+s,@ac_ct_CC@,$ac_ct_CC,;t t
+s,@EXEEXT@,$EXEEXT,;t t
+s,@OBJEXT@,$OBJEXT,;t t
+s,@DEPDIR@,$DEPDIR,;t t
+s,@am__include@,$am__include,;t t
+s,@am__quote@,$am__quote,;t t
+s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t
+s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
+s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
+s,@CCDEPMODE@,$CCDEPMODE,;t t
+s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
+s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
+s,@IDL4CONFIG@,$IDL4CONFIG,;t t
+s,@ac_pt_IDL4CONFIG@,$ac_pt_IDL4CONFIG,;t t
+s,@CCAS@,$CCAS,;t t
+s,@CCASFLAGS@,$CCASFLAGS,;t t
+s,@RANLIB@,$RANLIB,;t t
+s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
+s,@AR@,$AR,;t t
+s,@ac_ct_AR@,$ac_ct_AR,;t t
+s,@NM@,$NM,;t t
+s,@ac_ct_NM@,$ac_ct_NM,;t t
+s,@IDL4@,$IDL4,;t t
+s,@IDL4FLAGS@,$IDL4FLAGS,;t t
+s,@ac_pt_IDL4@,$ac_pt_IDL4,;t t
+s,@SED@,$SED,;t t
+s,@SORT@,$SORT,;t t
+s,@LATEX@,$LATEX,;t t
+s,@DVIPS@,$DVIPS,;t t
+s,@PS2PDF@,$PS2PDF,;t t
+s,@FIG2DEV@,$FIG2DEV,;t t
+s,@build@,$build,;t t
+s,@build_cpu@,$build_cpu,;t t
+s,@build_vendor@,$build_vendor,;t t
+s,@build_os@,$build_os,;t t
+s,@host@,$host,;t t
+s,@host_cpu@,$host_cpu,;t t
+s,@host_vendor@,$host_vendor,;t t
+s,@host_os@,$host_os,;t t
+s,@STATIC_GLIBC@,$STATIC_GLIBC,;t t
+s,@ARCH_ALPHA_TRUE@,$ARCH_ALPHA_TRUE,;t t
+s,@ARCH_ALPHA_FALSE@,$ARCH_ALPHA_FALSE,;t t
+s,@ARCH_AMD64_TRUE@,$ARCH_AMD64_TRUE,;t t
+s,@ARCH_AMD64_FALSE@,$ARCH_AMD64_FALSE,;t t
+s,@ARCH_IA32_TRUE@,$ARCH_IA32_TRUE,;t t
+s,@ARCH_IA32_FALSE@,$ARCH_IA32_FALSE,;t t
+s,@ARCH_IA64_TRUE@,$ARCH_IA64_TRUE,;t t
+s,@ARCH_IA64_FALSE@,$ARCH_IA64_FALSE,;t t
+s,@ARCH_POWERPC_TRUE@,$ARCH_POWERPC_TRUE,;t t
+s,@ARCH_POWERPC_FALSE@,$ARCH_POWERPC_FALSE,;t t
+s,@ARCH_POWERPC64_TRUE@,$ARCH_POWERPC64_TRUE,;t t
+s,@ARCH_POWERPC64_FALSE@,$ARCH_POWERPC64_FALSE,;t t
+s,@HURD_LADEN_LOAD_ADDRESS@,$HURD_LADEN_LOAD_ADDRESS,;t t
+s,@HURD_WORTEL_LOAD_ADDRESS@,$HURD_WORTEL_LOAD_ADDRESS,;t t
+s,@HURD_PHYSMEM_LOAD_ADDRESS@,$HURD_PHYSMEM_LOAD_ADDRESS,;t t
+s,@WITH_LIBC_TRUE@,$WITH_LIBC_TRUE,;t t
+s,@WITH_LIBC_FALSE@,$WITH_LIBC_FALSE,;t t
+s,@LIB@&address@hidden@,$LIB@&address@hidden,;t t
+s,@LTLIBOBJS@,$LTLIBOBJS,;t t
+CEOF
+
+_ACEOF
+
+  cat >>$CONFIG_STATUS <<\_ACEOF
+  # Split the substitutions into bite-sized pieces for seds with
+  # small command number limits, like on Digital OSF/1 and HP-UX.
+  ac_max_sed_lines=48
+  ac_sed_frag=1 # Number of current file.
+  ac_beg=1 # First line for current file.
+  ac_end=$ac_max_sed_lines # Line after last line for current file.
+  ac_more_lines=:
+  ac_sed_cmds=
+  while $ac_more_lines; do
+    if test $ac_beg -gt 1; then
+      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    else
+      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    fi
+    if test ! -s $tmp/subs.frag; then
+      ac_more_lines=false
+    else
+      # The purpose of the label and of the branching condition is to
+      # speed up the sed processing (if there are no `@' at all, there
+      # is no need to browse any of the substitutions).
+      # These are the two extra sed commands mentioned above.
+      (echo ':t
+  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) 
>$tmp/subs-$ac_sed_frag.sed
+      if test -z "$ac_sed_cmds"; then
+       ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
+      else
+       ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
+      fi
+      ac_sed_frag=`expr $ac_sed_frag + 1`
+      ac_beg=$ac_end
+      ac_end=`expr $ac_end + $ac_max_sed_lines`
+    fi
+  done
+  if test -z "$ac_sed_cmds"; then
+    ac_sed_cmds=cat
+  fi
+fi # test -n "$CONFIG_FILES"
+
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
+  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+       cat >$tmp/stdin
+       ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
+  esac
+
+  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
+  ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_file" : 'X\(//\)[^/]' \| \
+        X"$ac_file" : 'X\(//\)$' \| \
+        X"$ac_file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  case $INSTALL in
+  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+  *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
+  esac
+
+  if test x"$ac_file" != x-; then
+    { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+    rm -f "$ac_file"
+  fi
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated by config.status.  */
+  if test x"$ac_file" = x-; then
+    configure_input=
+  else
+    configure_input="$ac_file.  "
+  fi
+  configure_input=$configure_input"Generated from `echo $ac_file_in |
+                                    sed 's,.*/,,'` by configure."
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+        # Absolute (can't be DOS-style, as IFS=:)
+        test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        echo "$f";;
+      *) # Relative
+        if test -f "$f"; then
+          # Build tree
+          echo "$f"
+        elif test -f "$srcdir/$f"; then
+          # Source tree
+          echo "$srcdir/$f"
+        else
+          # /dev/null tree
+          { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+  sed "$ac_vpsub
+$extrasub
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s,@configure_input@,$configure_input,;t t
+s,@srcdir@,$ac_srcdir,;t t
+s,@abs_srcdir@,$ac_abs_srcdir,;t t
+s,@top_srcdir@,$ac_top_srcdir,;t t
+s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
+s,@builddir@,$ac_builddir,;t t
+s,@abs_builddir@,$ac_abs_builddir,;t t
+s,@top_builddir@,$ac_top_builddir,;t t
+s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
+s,@INSTALL@,$ac_INSTALL,;t t
+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
+  rm -f $tmp/stdin
+  if test x"$ac_file" != x-; then
+    mv $tmp/out $ac_file
+  else
+    cat $tmp/out
+    rm -f $tmp/out
+  fi
+
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_HEADER section.
+#
+
+# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
+# NAME is the cpp macro being defined and VALUE is the value it is being given.
+#
+# ac_d sets the value in "#define NAME VALUE" lines.
+ac_dA='s,^\([   ]*\)#\([        ]*define[       ][      ]*\)'
+ac_dB='[        ].*$,\1#\2'
+ac_dC=' '
+ac_dD=',;t'
+# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+ac_uA='s,^\([   ]*\)#\([        ]*\)undef\([    ][      ]*\)'
+ac_uB='$,\1#\2define\3'
+ac_uC=' '
+ac_uD=',;t'
+
+for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
+  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+       cat >$tmp/stdin
+       ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
+  esac
+
+  test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+        # Absolute (can't be DOS-style, as IFS=:)
+        test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        # Do quote $f, to prevent DOS paths from being IFS'd.
+        echo "$f";;
+      *) # Relative
+        if test -f "$f"; then
+          # Build tree
+          echo "$f"
+        elif test -f "$srcdir/$f"; then
+          # Source tree
+          echo "$srcdir/$f"
+        else
+          # /dev/null tree
+          { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+  # Remove the trailing spaces.
+  sed 's/[      ]*$//' $ac_file_inputs >$tmp/in
+
+_ACEOF
+
+# Transform confdefs.h into two sed scripts, `conftest.defines' and
+# `conftest.undefs', that substitutes the proper values into
+# config.h.in to produce config.h.  The first handles `#define'
+# templates, and the second `#undef' templates.
+# And first: Protect against being on the right side of a sed subst in
+# config.status.  Protect against being in an unquoted here document
+# in config.status.
+rm -f conftest.defines conftest.undefs
+# Using a here document instead of a string reduces the quoting nightmare.
+# Putting comments in sed scripts is not portable.
+#
+# `end' is used to avoid that the second main sed command (meant for
+# 0-ary CPP macros) applies to n-ary macro definitions.
+# See the Autoconf documentation for `clear'.
+cat >confdef2sed.sed <<\_ACEOF
+s/[\\&,]/\\&/g
+s,[\\$`],\\&,g
+t clear
+: clear
+s,^[    ]*#[    ]*define[       ][      ]*\([^  (][^    (]*\)\(([^)]*)\)[      
 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
+t end
+s,^[    ]*#[    ]*define[       ][      ]*\([^  ][^     ]*\)[   
]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
+: end
+_ACEOF
+# If some macros were called several times there might be several times
+# the same #defines, which is useless.  Nevertheless, we may not want to
+# sort them, since we want the *last* AC-DEFINE to be honored.
+uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
+sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
+rm -f confdef2sed.sed
+
+# This sed command replaces #undef with comments.  This is necessary, for
+# example, in the case of _POSIX_SOURCE, which is predefined and required
+# on some systems where configure will not decide to define it.
+cat >>conftest.undefs <<\_ACEOF
+s,^[    ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
+_ACEOF
+
+# Break up conftest.defines because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
+echo '  if grep "^[     ]*#[    ]*define" $tmp/in >/dev/null; then' 
>>$CONFIG_STATUS
+echo '  # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
+echo '  :' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.defines >/dev/null
+do
+  # Write a limited-size here document to $tmp/defines.sed.
+  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#define' lines.
+  echo '/^[     ]*#[    ]*define/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/defines.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
+  rm -f conftest.defines
+  mv conftest.tail conftest.defines
+done
+rm -f conftest.defines
+echo '  fi # grep' >>$CONFIG_STATUS
+echo >>$CONFIG_STATUS
+
+# Break up conftest.undefs because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.undefs >/dev/null
+do
+  # Write a limited-size here document to $tmp/undefs.sed.
+  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#undef'
+  echo '/^[     ]*#[    ]*undef/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
+  rm -f conftest.undefs
+  mv conftest.tail conftest.undefs
+done
+rm -f conftest.undefs
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated by config.status.  */
+  if test x"$ac_file" = x-; then
+    echo "/* Generated by configure.  */" >$tmp/config.h
+  else
+    echo "/* $ac_file.  Generated by configure.  */" >$tmp/config.h
+  fi
+  cat $tmp/in >>$tmp/config.h
+  rm -f $tmp/in
+  if test x"$ac_file" != x-; then
+    if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
+      { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+echo "$as_me: $ac_file is unchanged" >&6;}
+    else
+      ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_file" : 'X\(//\)[^/]' \| \
+        X"$ac_file" : 'X\(//\)$' \| \
+        X"$ac_file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+      { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+      rm -f $ac_file
+      mv $tmp/config.h $ac_file
+    fi
+  else
+    cat $tmp/config.h
+    rm -f $tmp/config.h
+  fi
+# Compute $ac_file's index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+  case $_am_header in
+    $ac_file | $ac_file:* )
+      break ;;
+    * )
+      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+  esac
+done
+echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null ||
+$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X$ac_file : 'X\(//\)[^/]' \| \
+        X$ac_file : 'X\(//\)$' \| \
+        X$ac_file : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X$ac_file |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`/stamp-h$_am_stamp_count
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_LINKS section.
+#
+
+for ac_file in : $CONFIG_LINKS; do test "x$ac_file" = x: && continue
+  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+
+  { echo "$as_me:$LINENO: linking $srcdir/$ac_source to $ac_dest" >&5
+echo "$as_me: linking $srcdir/$ac_source to $ac_dest" >&6;}
+
+  if test ! -r $srcdir/$ac_source; then
+    { { echo "$as_me:$LINENO: error: $srcdir/$ac_source: file not found" >&5
+echo "$as_me: error: $srcdir/$ac_source: file not found" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+  rm -f $ac_dest
+
+  # Make relative symlinks.
+  ac_dest_dir=`(dirname "$ac_dest") 2>/dev/null ||
+$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_dest" : 'X\(//\)[^/]' \| \
+        X"$ac_dest" : 'X\(//\)$' \| \
+        X"$ac_dest" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_dest" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dest_dir"
+  else
+    as_dir="$ac_dest_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory 
\"$ac_dest_dir\"" >&5
+echo "$as_me: error: cannot create directory \"$ac_dest_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dest_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dest_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dest_dir";;
+*)
+  case "$ac_dest_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dest_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dest_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  case $srcdir in
+  [\\/$]* | ?:[\\/]* ) ac_rel_source=$srcdir/$ac_source ;;
+      *) ac_rel_source=$ac_top_builddir$srcdir/$ac_source ;;
+  esac
+
+  # Try a symlink, then a hard link, then a copy.
+  ln -s $ac_rel_source $ac_dest 2>/dev/null ||
+    ln $srcdir/$ac_source $ac_dest 2>/dev/null ||
+    cp -p $srcdir/$ac_source $ac_dest ||
+    { { echo "$as_me:$LINENO: error: cannot link or copy $srcdir/$ac_source to 
$ac_dest" >&5
+echo "$as_me: error: cannot link or copy $srcdir/$ac_source to $ac_dest" >&2;}
+   { (exit 1); exit 1; }; }
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_COMMANDS section.
+#
+for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
+  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+  ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
+$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_dest" : 'X\(//\)[^/]' \| \
+        X"$ac_dest" : 'X\(//\)$' \| \
+        X"$ac_dest" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_dest" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
+echo "$as_me: executing $ac_dest commands" >&6;}
+  case $ac_dest in
+    depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
+  # Strip MF so we end up with the name of the file.
+  mf=`echo "$mf" | sed -e 's/:.*$//'`
+  # Check whether this is an Automake generated Makefile or not.
+  # We used to match only the files named `Makefile.in', but
+  # some people rename them; so instead we look at the file content.
+  # Grep'ing the first line is not enough: some people post-process
+  # each Makefile.in and add a new line on top of each file to say so.
+  # So let's grep whole file.
+  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+    dirpart=`(dirname "$mf") 2>/dev/null ||
+$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$mf" : 'X\(//\)[^/]' \| \
+        X"$mf" : 'X\(//\)$' \| \
+        X"$mf" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$mf" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  else
+    continue
+  fi
+  # Extract the definition of DEPDIR, am__include, and am__quote
+  # from the Makefile without running `make'.
+  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+  test -z "$DEPDIR" && continue
+  am__include=`sed -n 's/^am__include = //p' < "$mf"`
+  test -z "am__include" && continue
+  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+  # When using ansi2knr, U may be empty or an underscore; expand it
+  U=`sed -n 's/^U = //p' < "$mf"`
+  # Find all dependency output files, they are included files with
+  # $(DEPDIR) in their names.  We invoke sed twice because it is the
+  # simplest approach to changing $(DEPDIR) to its actual value in the
+  # expansion.
+  for file in `sed -n "
+    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+    # Make sure the directory exists.
+    test -f "$dirpart/$file" && continue
+    fdir=`(dirname "$file") 2>/dev/null ||
+$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$file" : 'X\(//\)[^/]' \| \
+        X"$file" : 'X\(//\)$' \| \
+        X"$file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    { if $as_mkdir_p; then
+    mkdir -p $dirpart/$fdir
+  else
+    as_dir=$dirpart/$fdir
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory 
$dirpart/$fdir" >&5
+echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+    # echo "creating $dirpart/$file"
+    echo '# dummy' > "$dirpart/$file"
+  done
+done
+ ;;
+  esac
+done
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+{ (exit 0); exit 0; }
+_ACEOF
+chmod +x $CONFIG_STATUS
+ac_clean_files=$ac_clean_files_save
+
+
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded.  So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status.  When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+  ac_cs_success=:
+  ac_config_status_args=
+  test "$silent" = yes &&
+    ac_config_status_args="$ac_config_status_args --quiet"
+  exec 5>/dev/null
+  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
+  exec 5>>config.log
+  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
+  # would make configure fail if this is the last instruction.
+  $ac_cs_success || { (exit 1); exit 1; }
+fi
+
diff -Naur hurd-l4/autom4te.cache/output.1 hurd-l4-new/autom4te.cache/output.1
--- hurd-l4/autom4te.cache/output.1     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/autom4te.cache/output.1 2005-07-13 18:30:52.255807224 +0200
@@ -0,0 +1,6027 @@
address@hidden:@! /bin/sh
address@hidden:@ Guess values for system-dependent variables and create 
Makefiles.
address@hidden:@ Generated by GNU Autoconf 2.59 for hurd 0.0.
address@hidden:@
address@hidden:@ Report bugs to <address@hidden>.
address@hidden:@ 
address@hidden:@ Copyright (C) 2003 Free Software Foundation, Inc.
address@hidden:@ This configure script is free software; the Free Software 
Foundation
address@hidden:@ gives unlimited permission to copy, distribute and modify it.
+## --------------------- ##
+## M4sh Initialization.  ##
+## --------------------- ##
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+
+# Work around bugs in pre-3.0 UWIN ksh.
+$as_unset ENV MAIL MAILPATH
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+  LC_TELEPHONE LC_TIME
+do
+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+    eval $as_var=C; export $as_var
+  else
+    $as_unset $as_var
+  fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)$' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+         /^X\/\(\/\/\)$/{ s//\1/; q; }
+         /^X\/\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+
+
+# PATH needs CR, and LINENO needs CR and PATH.
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
+  # Find who we are.  Look in the path if we contain no path at all
+  # relative or not.
+  case $0 in
+    *[\\/]* ) as_myself=$0 ;;
+    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+
+       ;;
+  esac
+  # We did not find ourselves, most probably we were run as `sh COMMAND'
+  # in which case we are not to be found in the path.
+  if test "x$as_myself" = x; then
+    as_myself=$0
+  fi
+  if test ! -f "$as_myself"; then
+    { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
+   { (exit 1); exit 1; }; }
+  fi
+  case $CONFIG_SHELL in
+  '')
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for as_base in sh bash ksh sh5; do
+        case $as_dir in
+        /*)
+          if ("$as_dir/$as_base" -c '
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
+            $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { 
BASH_ENV=; export BASH_ENV; }
+            $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+            CONFIG_SHELL=$as_dir/$as_base
+            export CONFIG_SHELL
+            exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+          fi;;
+        esac
+       done
+done
+;;
+  esac
+
+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+  # uniformly replaced by the line number.  The first 'sed' inserts a
+  # line-number line before each line; the second 'sed' does the real
+  # work.  The second script uses 'N' to pair each line-number line
+  # with the numbered line, and appends trailing '-' during
+  # substitution so that $LINENO is not a special case at line end.
+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
+  sed '=' <$as_myself |
+    sed '
+      N
+      s,$,-,
+      : loop
+      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+      t loop
+      s,-$,,
+      s,^['$as_cr_digits']*\n,,
+    ' >$as_me.lineno &&
+  chmod +x $as_me.lineno ||
+    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX 
shell" >&2
+   { (exit 1); exit 1; }; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensible to this).
+  . ./$as_me.lineno
+  # Exit status is that of the last command.
+  exit
+}
+
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='     ' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p=:
+else
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
+fi
+
+as_executable_p="test -f"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS="  $as_nl"
+
+# CDPATH.
+$as_unset CDPATH
+
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+exec 6>&1
+
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+ac_config_libobj_dir=.
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Maximum number of lines to put in a shell here document.
+# This variable seems obsolete.  It should probably be removed, and
+# only ac_max_sed_lines should be used.
+: ${ac_max_here_lines=38}
+
+# Identity of this package.
+PACKAGE_NAME='hurd'
+PACKAGE_TARNAME='hurd'
+PACKAGE_VERSION='0.0'
+PACKAGE_STRING='hurd 0.0'
+PACKAGE_BUGREPORT='address@hidden'
+
+ac_unique_file="laden/laden.c"
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME 
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix 
program_transform_name bindir sbindir libexecdir datadir sysconfdir 
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir 
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS 
INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL 
AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP 
INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar 
am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS 
CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE 
AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE 
IDL4CONFIG ac_pt_IDL4CONFIG CCAS CCASFLAGS RANLIB ac_ct_RANLIB AR ac_ct_AR NM 
ac_ct_NM IDL4 IDL4FLAGS ac_pt_IDL4 SED SORT LATEX DVIPS PS2PDF FIG2DEV build 
build_cpu build_vendor build_os host host_cpu host_vendor host_os STATIC_GLIBC 
ARCH_ALPHA_TRUE ARCH_ALPHA_FALSE ARCH_AMD64_TRUE ARCH_AMD64_FALSE 
ARCH_IA32_TRUE ARCH_IA32_FALSE ARCH_IA64_TRUE ARCH_IA64_FALSE ARCH_POWERPC_TRUE 
ARCH_POWERPC_FALSE ARCH_POWERPC64_TRUE ARCH_POWERPC64_FALSE 
HURD_LADEN_LOAD_ADDRESS HURD_WORTEL_LOAD_ADDRESS HURD_PHYSMEM_LOAD_ADDRESS 
WITH_LIBC_TRUE WITH_LIBC_FALSE LIB@&address@hidden LTLIBOBJS'
+ac_subst_files=''
+
+# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+cache_file=/dev/null
+exec_prefix=NONE
+no_create=
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+verbose=
+x_includes=NONE
+x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datadir='${prefix}/share'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+libdir='${exec_prefix}/lib'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+infodir='${prefix}/info'
+mandir='${prefix}/man'
+
+ac_prev=
+for ac_option
+do
+  # If the previous option needs an argument, assign it.
+  if test -n "$ac_prev"; then
+    eval "$ac_prev=\$ac_option"
+    ac_prev=
+    continue
+  fi
+
+  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
+
+  # Accept the important Cygnus configure options, so we can diagnose typos.
+
+  case $ac_option in
+
+  -bindir | --bindir | --bindi | --bind | --bin | --bi)
+    ac_prev=bindir ;;
+  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+    bindir=$ac_optarg ;;
+
+  -build | --build | --buil | --bui | --bu)
+    ac_prev=build_alias ;;
+  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+    build_alias=$ac_optarg ;;
+
+  -cache-file | --cache-file | --cache-fil | --cache-fi \
+  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+    ac_prev=cache_file ;;
+  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+    cache_file=$ac_optarg ;;
+
+  --config-cache | -C)
+    cache_file=config.cache ;;
+
+  -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+    ac_prev=datadir ;;
+  -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+  | --da=*)
+    datadir=$ac_optarg ;;
+
+  -disable-* | --disable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    eval "enable_$ac_feature=no" ;;
+
+  -enable-* | --enable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+      *) ac_optarg=yes ;;
+    esac
+    eval "enable_$ac_feature='$ac_optarg'" ;;
+
+  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+  | --exec | --exe | --ex)
+    ac_prev=exec_prefix ;;
+  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+  | --exec=* | --exe=* | --ex=*)
+    exec_prefix=$ac_optarg ;;
+
+  -gas | --gas | --ga | --g)
+    # Obsolete; use --with-gas.
+    with_gas=yes ;;
+
+  -help | --help | --hel | --he | -h)
+    ac_init_help=long ;;
+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+    ac_init_help=recursive ;;
+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+    ac_init_help=short ;;
+
+  -host | --host | --hos | --ho)
+    ac_prev=host_alias ;;
+  -host=* | --host=* | --hos=* | --ho=*)
+    host_alias=$ac_optarg ;;
+
+  -includedir | --includedir | --includedi | --included | --include \
+  | --includ | --inclu | --incl | --inc)
+    ac_prev=includedir ;;
+  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+  | --includ=* | --inclu=* | --incl=* | --inc=*)
+    includedir=$ac_optarg ;;
+
+  -infodir | --infodir | --infodi | --infod | --info | --inf)
+    ac_prev=infodir ;;
+  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+    infodir=$ac_optarg ;;
+
+  -libdir | --libdir | --libdi | --libd)
+    ac_prev=libdir ;;
+  -libdir=* | --libdir=* | --libdi=* | --libd=*)
+    libdir=$ac_optarg ;;
+
+  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+  | --libexe | --libex | --libe)
+    ac_prev=libexecdir ;;
+  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+  | --libexe=* | --libex=* | --libe=*)
+    libexecdir=$ac_optarg ;;
+
+  -localstatedir | --localstatedir | --localstatedi | --localstated \
+  | --localstate | --localstat | --localsta | --localst \
+  | --locals | --local | --loca | --loc | --lo)
+    ac_prev=localstatedir ;;
+  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+  | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+  | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+    localstatedir=$ac_optarg ;;
+
+  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+    ac_prev=mandir ;;
+  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+    mandir=$ac_optarg ;;
+
+  -nfp | --nfp | --nf)
+    # Obsolete; use --without-fp.
+    with_fp=no ;;
+
+  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+  | --no-cr | --no-c | -n)
+    no_create=yes ;;
+
+  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+    no_recursion=yes ;;
+
+  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+  | --oldin | --oldi | --old | --ol | --o)
+    ac_prev=oldincludedir ;;
+  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+    oldincludedir=$ac_optarg ;;
+
+  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+    ac_prev=prefix ;;
+  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+    prefix=$ac_optarg ;;
+
+  -program-prefix | --program-prefix | --program-prefi | --program-pref \
+  | --program-pre | --program-pr | --program-p)
+    ac_prev=program_prefix ;;
+  -program-prefix=* | --program-prefix=* | --program-prefi=* \
+  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+    program_prefix=$ac_optarg ;;
+
+  -program-suffix | --program-suffix | --program-suffi | --program-suff \
+  | --program-suf | --program-su | --program-s)
+    ac_prev=program_suffix ;;
+  -program-suffix=* | --program-suffix=* | --program-suffi=* \
+  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+    program_suffix=$ac_optarg ;;
+
+  -program-transform-name | --program-transform-name \
+  | --program-transform-nam | --program-transform-na \
+  | --program-transform-n | --program-transform- \
+  | --program-transform | --program-transfor \
+  | --program-transfo | --program-transf \
+  | --program-trans | --program-tran \
+  | --progr-tra | --program-tr | --program-t)
+    ac_prev=program_transform_name ;;
+  -program-transform-name=* | --program-transform-name=* \
+  | --program-transform-nam=* | --program-transform-na=* \
+  | --program-transform-n=* | --program-transform-=* \
+  | --program-transform=* | --program-transfor=* \
+  | --program-transfo=* | --program-transf=* \
+  | --program-trans=* | --program-tran=* \
+  | --progr-tra=* | --program-tr=* | --program-t=*)
+    program_transform_name=$ac_optarg ;;
+
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil)
+    silent=yes ;;
+
+  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+    ac_prev=sbindir ;;
+  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+  | --sbi=* | --sb=*)
+    sbindir=$ac_optarg ;;
+
+  -sharedstatedir | --sharedstatedir | --sharedstatedi \
+  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+  | --sharedst | --shareds | --shared | --share | --shar \
+  | --sha | --sh)
+    ac_prev=sharedstatedir ;;
+  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+  | --sha=* | --sh=*)
+    sharedstatedir=$ac_optarg ;;
+
+  -site | --site | --sit)
+    ac_prev=site ;;
+  -site=* | --site=* | --sit=*)
+    site=$ac_optarg ;;
+
+  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+    ac_prev=srcdir ;;
+  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+    srcdir=$ac_optarg ;;
+
+  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+  | --syscon | --sysco | --sysc | --sys | --sy)
+    ac_prev=sysconfdir ;;
+  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+    sysconfdir=$ac_optarg ;;
+
+  -target | --target | --targe | --targ | --tar | --ta | --t)
+    ac_prev=target_alias ;;
+  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+    target_alias=$ac_optarg ;;
+
+  -v | -verbose | --verbose | --verbos | --verbo | --verb)
+    verbose=yes ;;
+
+  -version | --version | --versio | --versi | --vers | -V)
+    ac_init_version=: ;;
+
+  -with-* | --with-*)
+    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package| sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+      *) ac_optarg=yes ;;
+    esac
+    eval "with_$ac_package='$ac_optarg'" ;;
+
+  -without-* | --without-*)
+    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package | sed 's/-/_/g'`
+    eval "with_$ac_package=no" ;;
+
+  --x)
+    # Obsolete; use --with-x.
+    with_x=yes ;;
+
+  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+  | --x-incl | --x-inc | --x-in | --x-i)
+    ac_prev=x_includes ;;
+  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+    x_includes=$ac_optarg ;;
+
+  -x-libraries | --x-libraries | --x-librarie | --x-librari \
+  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+    ac_prev=x_libraries ;;
+  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+    x_libraries=$ac_optarg ;;
+
+  -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+   { (exit 1); exit 1; }; }
+    ;;
+
+  *=*)
+    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+   { (exit 1); exit 1; }; }
+    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
+    eval "$ac_envvar='$ac_optarg'"
+    export $ac_envvar ;;
+
+  *)
+    # FIXME: should be removed in autoconf 3.0.
+    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+    : ${build_alias=$ac_option} ${host_alias=$ac_option} 
${target_alias=$ac_option}
+    ;;
+
+  esac
+done
+
+if test -n "$ac_prev"; then
+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+  { echo "$as_me: error: missing argument to $ac_option" >&2
+   { (exit 1); exit 1; }; }
+fi
+
+# Be sure to have absolute paths.
+for ac_var in exec_prefix prefix
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
+    *)  { echo "$as_me: error: expected an absolute directory name for 
--$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# Be sure to have absolute paths.
+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
+             localstatedir libdir includedir oldincludedir infodir mandir
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* ) ;;
+    *)  { echo "$as_me: error: expected an absolute directory name for 
--$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+# FIXME: To remove some day.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: To remove some day.
+if test "x$host_alias" != x; then
+  if test "x$build_alias" = x; then
+    cross_compiling=maybe
+    echo "$as_me: WARNING: If you wanted to set the --build type, don't use 
--host.
+    If a cross compiler is detected then cross compile mode will be used." >&2
+  elif test "x$build_alias" != "x$host_alias"; then
+    cross_compiling=yes
+  fi
+fi
+
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
+
+test "$silent" = yes && exec 6>/dev/null
+
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+  ac_srcdir_defaulted=yes
+  # Try the directory containing this script, then its parent.
+  ac_confdir=`(dirname "$0") 2>/dev/null ||
+$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$0" : 'X\(//\)[^/]' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$0" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  srcdir=$ac_confdir
+  if test ! -r $srcdir/$ac_unique_file; then
+    srcdir=..
+  fi
+else
+  ac_srcdir_defaulted=no
+fi
+if test ! -r $srcdir/$ac_unique_file; then
+  if test "$ac_srcdir_defaulted" = yes; then
+    { echo "$as_me: error: cannot find sources ($ac_unique_file) in 
$ac_confdir or .." >&2
+   { (exit 1); exit 1; }; }
+  else
+    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" 
>&2
+   { (exit 1); exit 1; }; }
+  fi
+fi
+(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
+  { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not 
work" >&2
+   { (exit 1); exit 1; }; }
+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
+ac_env_build_alias_set=${build_alias+set}
+ac_env_build_alias_value=$build_alias
+ac_cv_env_build_alias_set=${build_alias+set}
+ac_cv_env_build_alias_value=$build_alias
+ac_env_host_alias_set=${host_alias+set}
+ac_env_host_alias_value=$host_alias
+ac_cv_env_host_alias_set=${host_alias+set}
+ac_cv_env_host_alias_value=$host_alias
+ac_env_target_alias_set=${target_alias+set}
+ac_env_target_alias_value=$target_alias
+ac_cv_env_target_alias_set=${target_alias+set}
+ac_cv_env_target_alias_value=$target_alias
+ac_env_CC_set=${CC+set}
+ac_env_CC_value=$CC
+ac_cv_env_CC_set=${CC+set}
+ac_cv_env_CC_value=$CC
+ac_env_CFLAGS_set=${CFLAGS+set}
+ac_env_CFLAGS_value=$CFLAGS
+ac_cv_env_CFLAGS_set=${CFLAGS+set}
+ac_cv_env_CFLAGS_value=$CFLAGS
+ac_env_LDFLAGS_set=${LDFLAGS+set}
+ac_env_LDFLAGS_value=$LDFLAGS
+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
+ac_cv_env_LDFLAGS_value=$LDFLAGS
+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_env_CPPFLAGS_value=$CPPFLAGS
+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
+ac_env_CCAS_set=${CCAS+set}
+ac_env_CCAS_value=$CCAS
+ac_cv_env_CCAS_set=${CCAS+set}
+ac_cv_env_CCAS_value=$CCAS
+ac_env_CCASFLAGS_set=${CCASFLAGS+set}
+ac_env_CCASFLAGS_value=$CCASFLAGS
+ac_cv_env_CCASFLAGS_set=${CCASFLAGS+set}
+ac_cv_env_CCASFLAGS_value=$CCASFLAGS
+ac_env_IDL4_set=${IDL4+set}
+ac_env_IDL4_value=$IDL4
+ac_cv_env_IDL4_set=${IDL4+set}
+ac_cv_env_IDL4_value=$IDL4
+ac_env_IDL4FLAGS_set=${IDL4FLAGS+set}
+ac_env_IDL4FLAGS_value=$IDL4FLAGS
+ac_cv_env_IDL4FLAGS_set=${IDL4FLAGS+set}
+ac_cv_env_IDL4FLAGS_value=$IDL4FLAGS
+ac_env_IDL4CONFIG_set=${IDL4CONFIG+set}
+ac_env_IDL4CONFIG_value=$IDL4CONFIG
+ac_cv_env_IDL4CONFIG_set=${IDL4CONFIG+set}
+ac_cv_env_IDL4CONFIG_value=$IDL4CONFIG
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+  # Omit some internal or obsolete options to make the list less imposing.
+  # This message is too long to be a string in the A/UX 3.1 sh.
+  cat <<_ACEOF
+\`configure' configures hurd 0.0 to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE.  See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+  -h, --help              display this help and exit
+      --help=short        display options specific to this package
+      --help=recursive    display the short help of all the included packages
+  -V, --version           display version information and exit
+  -q, --quiet, --silent   do not print \`checking...' messages
+      --cache-file=FILE   cache test results in FILE [disabled]
+  -C, --config-cache      alias for \`--cache-file=config.cache'
+  -n, --no-create         do not create output files
+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
+
+_ACEOF
+
+  cat <<_ACEOF
+Installation directories:
+  --prefix=PREFIX         install architecture-independent files in PREFIX
+                         [$ac_default_prefix]
+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+                         [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+  --bindir=DIR           user executables [EPREFIX/bin]
+  --sbindir=DIR          system admin executables [EPREFIX/sbin]
+  --libexecdir=DIR       program executables [EPREFIX/libexec]
+  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
+  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
+  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
+  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
+  --libdir=DIR           object code libraries [EPREFIX/lib]
+  --includedir=DIR       C header files [PREFIX/include]
+  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
+  --infodir=DIR          info documentation [PREFIX/info]
+  --mandir=DIR           man documentation [PREFIX/man]
+_ACEOF
+
+  cat <<\_ACEOF
+
+Program names:
+  --program-prefix=PREFIX            prepend PREFIX to installed program names
+  --program-suffix=SUFFIX            append SUFFIX to installed program names
+  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
+
+System types:
+  --build=BUILD     configure for building on BUILD [guessed]
+  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
+_ACEOF
+fi
+
+if test -n "$ac_init_help"; then
+  case $ac_init_help in
+     short | recursive ) echo "Configuration of hurd 0.0:";;
+   esac
+  cat <<\_ACEOF
+
+Optional Features:
+  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
+  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
+  --enable-maintainer-mode  enable make rules and dependencies not useful
+                         (and sometimes confusing) to the casual installer
+  --disable-dependency-tracking  speeds up one-time build
+  --enable-dependency-tracking   do not reject slow dependency extractors
+
+Optional Packages:
+  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+  --with-laden-loadaddr   laden load address @<:@0x190000@:>@
+  --with-wortel-loadaddr  wortel load address @<:@0x300000@:>@
+  --with-physmem-loadaddr physmem load address @<:@0x400000@:>@
+  --with-libc             compile with the GNU C library (see libc/README)
+
+Some influential environment variables:
+  CC          C compiler command
+  CFLAGS      C compiler flags
+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
+              nonstandard directory <lib dir>
+  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
+              headers in a nonstandard directory <include dir>
+  CCAS        assembler compiler command (defaults to CC)
+  CCASFLAGS   assembler compiler flags (defaults to CFLAGS)
+  IDL4        idl4 code generator command
+  IDL4FLAGS   idl4 code generator flags
+  IDL4CONFIG  idl4 path configuration tool
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+Report bugs to <address@hidden>.
+_ACEOF
+fi
+
+if test "$ac_init_help" = "recursive"; then
+  # If there are subdirs, report their specific --help.
+  ac_popdir=`pwd`
+  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
+    test -d $ac_dir || continue
+    ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+    cd $ac_dir
+    # Check for guested configure; otherwise get Cygnus style configure.
+    if test -f $ac_srcdir/configure.gnu; then
+      echo
+      $SHELL $ac_srcdir/configure.gnu  --help=recursive
+    elif test -f $ac_srcdir/configure; then
+      echo
+      $SHELL $ac_srcdir/configure  --help=recursive
+    elif test -f $ac_srcdir/configure.ac ||
+          test -f $ac_srcdir/configure.in; then
+      echo
+      $ac_configure --help
+    else
+      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+    fi
+    cd $ac_popdir
+  done
+fi
+
+test -n "$ac_init_help" && exit 0
+if $ac_init_version; then
+  cat <<\_ACEOF
+hurd configure 0.0
+generated by GNU Autoconf 2.59
+
+Copyright (C) 2003 Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+_ACEOF
+  exit 0
+fi
+exec 5>config.log
+cat >&5 <<_ACEOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by hurd $as_me 0.0, which was
+generated by GNU Autoconf 2.59.  Invocation command line was
+
+  $ $0 $@
+
+_ACEOF
+{
+cat <<_ASUNAME
address@hidden:@@%:@ --------- @%:@@%:@
address@hidden:@@%:@ Platform. @%:@@%:@
address@hidden:@@%:@ --------- @%:@@%:@
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
+
+/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+hostinfo               = `(hostinfo) 2>/dev/null               || echo unknown`
+/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
+/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  echo "PATH: $as_dir"
+done
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
address@hidden:@@%:@ ----------- @%:@@%:@
address@hidden:@@%:@ Core tests. @%:@@%:@
address@hidden:@@%:@ ----------- @%:@@%:@
+
+_ACEOF
+
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Strip out --silent because we don't want to record it for future runs.
+# Also quote any args containing shell meta-characters.
+# Make two passes to allow for proper duplicate-argument suppression.
+ac_configure_args=
+ac_configure_args0=
+ac_configure_args1=
+ac_sep=
+ac_must_keep_next=false
+for ac_pass in 1 2
+do
+  for ac_arg
+  do
+    case $ac_arg in
+    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
+    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+    | -silent | --silent | --silen | --sile | --sil)
+      continue ;;
+    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    esac
+    case $ac_pass in
+    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+    2)
+      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+      if test $ac_must_keep_next = true; then
+       ac_must_keep_next=false # Got value, back to normal.
+      else
+       case $ac_arg in
+         *=* | --config-cache | -C | -disable-* | --disable-* \
+         | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+         | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+         | -with-* | --with-* | -without-* | --without-* | --x)
+           case "$ac_configure_args0 " in
+             "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+           esac
+           ;;
+         -* ) ac_must_keep_next=true ;;
+       esac
+      fi
+      ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
+      # Get rid of the leading space.
+      ac_sep=" "
+      ;;
+    esac
+  done
+done
+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { 
ac_configure_args0=; export ac_configure_args0; }
+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { 
ac_configure_args1=; export ac_configure_args1; }
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log.  We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+# WARNING: Be sure not to use single quotes in there, as some shells,
+# such as our DU 5.0 friend, will then `close' the trap.
+trap 'exit_status=$?
+  # Save into config.log some information that might help in debugging.
+  {
+    echo
+
+    cat <<\_ASBOX
address@hidden:@@%:@ ---------------- @%:@@%:@
address@hidden:@@%:@ Cache variables. @%:@@%:@
address@hidden:@@%:@ ---------------- @%:@@%:@
+_ASBOX
+    echo
+    # The following way of writing the cache mishandles newlines in values,
+{
+  (set) 2>&1 |
+    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      sed -n \
+       "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
+         
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
+      ;;
+    *)
+      sed -n \
+       "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+}
+    echo
+
+    cat <<\_ASBOX
address@hidden:@@%:@ ----------------- @%:@@%:@
address@hidden:@@%:@ Output variables. @%:@@%:@
address@hidden:@@%:@ ----------------- @%:@@%:@
+_ASBOX
+    echo
+    for ac_var in $ac_subst_vars
+    do
+      eval ac_val=$`echo $ac_var`
+      echo "$ac_var='"'"'$ac_val'"'"'"
+    done | sort
+    echo
+
+    if test -n "$ac_subst_files"; then
+      cat <<\_ASBOX
address@hidden:@@%:@ ------------- @%:@@%:@
address@hidden:@@%:@ Output files. @%:@@%:@
address@hidden:@@%:@ ------------- @%:@@%:@
+_ASBOX
+      echo
+      for ac_var in $ac_subst_files
+      do
+       eval ac_val=$`echo $ac_var`
+       echo "$ac_var='"'"'$ac_val'"'"'"
+      done | sort
+      echo
+    fi
+
+    if test -s confdefs.h; then
+      cat <<\_ASBOX
address@hidden:@@%:@ ----------- @%:@@%:@
address@hidden:@@%:@ confdefs.h. @%:@@%:@
address@hidden:@@%:@ ----------- @%:@@%:@
+_ASBOX
+      echo
+      sed "/^$/d" confdefs.h | sort
+      echo
+    fi
+    test "$ac_signal" != 0 &&
+      echo "$as_me: caught signal $ac_signal"
+    echo "$as_me: exit $exit_status"
+  } >&5
+  rm -f core *.core &&
+  rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
+    exit $exit_status
+     ' 0
+for ac_signal in 1 2 13 15; do
+  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -rf conftest* confdefs.h
+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+echo >confdefs.h
+
+# Predefined preprocessor variables.
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_NAME "$PACKAGE_NAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_VERSION "$PACKAGE_VERSION"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_STRING "$PACKAGE_STRING"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
+_ACEOF
+
+
+# Let the site file select an alternate cache file if it wants to.
+# Prefer explicitly selected file to automatically selected ones.
+if test -z "$CONFIG_SITE"; then
+  if test "x$prefix" != xNONE; then
+    CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+  else
+    CONFIG_SITE="$ac_default_prefix/share/config.site 
$ac_default_prefix/etc/config.site"
+  fi
+fi
+for ac_site_file in $CONFIG_SITE; do
+  if test -r "$ac_site_file"; then
+    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+    sed 's/^/| /' "$ac_site_file" >&5
+    . "$ac_site_file"
+  fi
+done
+
+if test -r "$cache_file"; then
+  # Some versions of bash will fail to source /dev/null (special
+  # files actually), so we avoid doing that.
+  if test -f "$cache_file"; then
+    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+    case $cache_file in
+      [\\/]* | ?:[\\/]* ) . $cache_file;;
+      *)                      . ./$cache_file;;
+    esac
+  fi
+else
+  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+  >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in `(set) 2>&1 |
+              sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
+  eval ac_new_set=\$ac_env_${ac_var}_set
+  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
+  eval ac_new_val="\$ac_env_${ac_var}_value"
+  case $ac_old_set,$ac_new_set in
+    set,)
+      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in 
the previous run" >&5
+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" 
>&2;}
+      ac_cache_corrupted=: ;;
+    ,set)
+      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous 
run" >&5
+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,);;
+    *)
+      if test "x$ac_old_val" != "x$ac_new_val"; then
+       { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the 
previous run:" >&5
+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+       { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
+echo "$as_me:   former value:  $ac_old_val" >&2;}
+       { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
+echo "$as_me:   current value: $ac_new_val" >&2;}
+       ac_cache_corrupted=:
+      fi;;
+  esac
+  # Pass precious variables to config.status.
+  if test "$ac_new_set" = set; then
+    case $ac_new_val in
+    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *) ac_arg=$ac_var=$ac_new_val ;;
+    esac
+    case " $ac_configure_args " in
+      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
+      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+    esac
+  fi
+done
+if $ac_cache_corrupted; then
+  { echo "$as_me:$LINENO: error: changes in the environment can compromise the 
build" >&5
+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm 
$cache_file' and start over" >&5
+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start 
over" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+am__api_version="1.9"
+ac_aux_dir=
+for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
+  if test -f $ac_dir/install-sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install-sh -c"
+    break
+  elif test -f $ac_dir/install.sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install.sh -c"
+    break
+  elif test -f $ac_dir/shtool; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/shtool install -c"
+    break
+  fi
+done
+if test -z "$ac_aux_dir"; then
+  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in 
$srcdir $srcdir/.. $srcdir/../.." >&5
+echo "$as_me: error: cannot find install-sh or install.sh in $srcdir 
$srcdir/.. $srcdir/../.." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
+
+# Find a good install program.  We prefer a C program (faster),
+# so one script is as good as another.  But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+  ./ | .// | /cC/* | \
+  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+  /usr/ucb/* ) ;;
+  *)
+    # OSF1 and SCO ODT 3.0 have their own names for install.
+    # Don't use installbsd from OSF since it installs stuff as root
+    # by default.
+    for ac_prog in ginstall scoinst install; do
+      for ac_exec_ext in '' $ac_executable_extensions; do
+       if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+         if test $ac_prog = install &&
+           grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+           # AIX install.  It has an incompatible calling convention.
+           :
+         elif test $ac_prog = install &&
+           grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+           # program-specific install script used by HP pwplus--don't use.
+           :
+         else
+           ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+           break 3
+         fi
+       fi
+      done
+    done
+    ;;
+esac
+done
+
+
+fi
+  if test "${ac_cv_path_install+set}" = set; then
+    INSTALL=$ac_cv_path_install
+  else
+    # As a last resort, use the slow shell script.  We don't cache a
+    # path for INSTALL within a source directory, because that will
+    # break other packages using the cache if that directory is
+    # removed, or if the path is relative.
+    INSTALL=$ac_install_sh
+  fi
+fi
+echo "$as_me:$LINENO: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+echo "$as_me:$LINENO: checking whether build environment is sane" >&5
+echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments.  Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   if test "$*" = "X"; then
+      # -L didn't work.
+      set X `ls -t $srcdir/configure conftest.file`
+   fi
+   rm -f conftest.file
+   if test "$*" != "X $srcdir/configure conftest.file" \
+      && test "$*" != "X conftest.file $srcdir/configure"; then
+
+      # If neither matched, then we have a broken ls.  This can happen
+      # if, for instance, CONFIG_SHELL is bash and it inherits a
+      # broken ls alias from the environment.  This has actually
+      # happened.  Such a system could not be considered "sane".
+      { { echo "$as_me:$LINENO: error: ls -t appears to fail.  Make sure there 
is not a broken
+alias in your environment" >&5
+echo "$as_me: error: ls -t appears to fail.  Make sure there is not a broken
+alias in your environment" >&2;}
+   { (exit 1); exit 1; }; }
+   fi
+
+   test "$2" = conftest.file
+   )
+then
+   # Ok.
+   :
+else
+   { { echo "$as_me:$LINENO: error: newly created file is older than 
distributed files!
+Check your system clock" >&5
+echo "$as_me: error: newly created file is older than distributed files!
+Check your system clock" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+test "$program_prefix" != NONE &&
+  program_transform_name="s,^,$program_prefix,;$program_transform_name"
+# Use a double $ so make ignores it.
+test "$program_suffix" != NONE &&
+  program_transform_name="s,\$,$program_suffix,;$program_transform_name"
+# Double any \ or $.  echo might interpret backslashes.
+# By default was `s,x,x', remove it if useless.
+cat <<\_ACEOF >conftest.sed
+s/[\\$]/&&/g;s/;s,x,x,$//
+_ACEOF
+program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
+rm conftest.sed
+
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+  am_missing_run="$MISSING --run "
+else
+  am_missing_run=
+  { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
+echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+  # We used to keeping the `.' as first argument, in order to
+  # allow $(mkdir_p) to be used without argument.  As in
+  #   $(mkdir_p) $(somedir)
+  # where $(somedir) is conditionally defined.  However this is wrong
+  # for two reasons:
+  #  1. if the package is installed by a user who cannot write `.'
+  #     make install will fail,
+  #  2. the above comment should most certainly read
+  #     $(mkdir_p) $(DESTDIR)$(somedir)
+  #     so it does not work when $(somedir) is undefined and
+  #     $(DESTDIR) is not.
+  #  To support the latter case, we have to write
+  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+  #  so the `.' trick is pointless.
+  mkdir_p='mkdir -p --'
+else
+  # On NextStep and OpenStep, the `mkdir' command does not
+  # recognize any option.  It will interpret all options as
+  # directories to create, and then abort because `.' already
+  # exists.
+  for d in ./-p ./--version;
+  do
+    test -d $d && rmdir $d
+  done
+  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+  if test -f "$ac_aux_dir/mkinstalldirs"; then
+    mkdir_p='$(mkinstalldirs)'
+  else
+    mkdir_p='$(install_sh) -d'
+  fi
+fi
+
+for ac_prog in gawk mawk nawk awk
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AWK+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AWK"; then
+  ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_AWK="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+AWK=$ac_cv_prog_AWK
+if test -n "$AWK"; then
+  echo "$as_me:$LINENO: result: $AWK" >&5
+echo "${ECHO_T}$AWK" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$AWK" && break
+done
+
+echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.make <<\_ACEOF
+all:
+       @echo 'ac_maketemp="$(MAKE)"'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
+if test -n "$ac_maketemp"; then
+  eval ac_cv_prog_make_${ac_make}_set=yes
+else
+  eval ac_cv_prog_make_${ac_make}_set=no
+fi
+rm -f conftest.make
+fi
+if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
+  echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+  SET_MAKE=
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+  SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+  am__leading_dot=.
+else
+  am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+   test -f $srcdir/config.status; then
+  { { echo "$as_me:$LINENO: error: source directory already configured; run 
\"make distclean\" there first" >&5
+echo "$as_me: error: source directory already configured; run \"make 
distclean\" there first" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+  if (cygpath --version) >/dev/null 2>/dev/null; then
+    CYGPATH_W='cygpath -w'
+  else
+    CYGPATH_W=echo
+  fi
+fi
+
+
+# Define the identity of the package.
+ PACKAGE='hurd'
+ VERSION='0.0'
+
+
+cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE "$PACKAGE"
+_ACEOF
+
+ 
+cat >>confdefs.h <<_ACEOF
address@hidden:@define VERSION "$VERSION"
+_ACEOF
+
+# Some tools Automake needs.
+
+ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
+
+
+AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
+
+
+AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
+
+
+AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
+
+
+MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'.  However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_STRIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$STRIP"; then
+  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+  echo "$as_me:$LINENO: result: $STRIP" >&5
+echo "${ECHO_T}$STRIP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+  ac_ct_STRIP=$STRIP
+  # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_STRIP"; then
+  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_STRIP="strip"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":"
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+echo "${ECHO_T}$ac_ct_STRIP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  STRIP=$ac_ct_STRIP
+else
+  STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
+# Always define AMTAR for backward compatibility.
+
+AMTAR=${AMTAR-"${am_missing_run}tar"}
+
+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+
+
+
+
+
+echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions 
of Makefiles" >&5
+echo $ECHO_N "checking whether to enable maintainer-specific portions of 
Makefiles... $ECHO_C" >&6
+    # Check whether --enable-maintainer-mode or --disable-maintainer-mode was 
given.
+if test "${enable_maintainer_mode+set}" = set; then
+  enableval="$enable_maintainer_mode"
+  USE_MAINTAINER_MODE=$enableval
+else
+  USE_MAINTAINER_MODE=no
+fi; 
+  echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5
+echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6
+   
+
+if test $USE_MAINTAINER_MODE = yes; then
+  MAINTAINER_MODE_TRUE=
+  MAINTAINER_MODE_FALSE='#'
+else
+  MAINTAINER_MODE_TRUE='#'
+  MAINTAINER_MODE_FALSE=
+fi
+
+  MAINT=$MAINTAINER_MODE_TRUE
+  
+
+
+          ac_config_headers="$ac_config_headers config.h"
+
+
+cat >>confdefs.h <<\_ACEOF
address@hidden:@define _GNU_SOURCE 1
+_ACEOF
+
+
+
+maintainer_mode=${enable_maintainer_mode-no}
+
+# Checks for programs.
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}gcc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="gcc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+fi
+if test -z "$CC"; then
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+       ac_prog_rejected=yes
+       continue
+     fi
+    ac_cv_prog_CC="cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+if test $ac_prog_rejected = yes; then
+  # We found a bogon in the path, so make sure we never use it.
+  set dummy $ac_cv_prog_CC
+  shift
+  if test address@hidden:@ != 0; then
+    # We chose a different compiler from the bogus one.
+    # However, it has the same basename, so the bogon will be chosen
+    # first if we set CC to just the basename; use the full file name.
+    shift
+    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+  fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  for ac_prog in cl
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a 
program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+    test -n "$CC" && break
+  done
+fi
+if test -z "$CC"; then
+  ac_ct_CC=$CC
+  for ac_prog in cl
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ac_ct_CC" && break
+done
+
+  CC=$ac_ct_CC
+fi
+
+fi
+
+
+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler 
found in \$PATH
+See \`config.log' for more details." >&5
+echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO:" \
+     "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
+  (eval $ac_compiler --version </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
+  (eval $ac_compiler -v </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
+  (eval $ac_compiler -V </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
+echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
+  (eval $ac_link_default) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # Find the output, starting from the most likely.  This scheme is
+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
+# resort.
+
+# Be careful to initialize this variable, since it used to be cached.
+# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
+ac_cv_exeext=
+# b.out is created by i960 compilers.
+for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
+do
+  test -f "$ac_file" || continue
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj )
+       ;;
+    conftest.$ac_ext )
+       # This is the source file.
+       ;;
+    [ab].out )
+       # We found the default executable, but exeext='' is most
+       # certainly right.
+       break;;
+    *.* )
+       ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+       # FIXME: I believe we export ac_cv_exeext for Libtool,
+       # but it would be cool to find out if it's true.  Does anybody
+       # maintain Libtool? --akim.
+       export ac_cv_exeext
+       break;;
+    * )
+       break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
+See \`config.log' for more details." >&5
+echo "$as_me: error: C compiler cannot create executables
+See \`config.log' for more details." >&2;}
+   { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6
+
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+  if { ac_try='./$ac_file'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+    cross_compiling=no
+  else
+    if test "$cross_compiling" = maybe; then
+       cross_compiling=yes
+    else
+       { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+    fi
+  fi
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+rm -f a.out a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
+echo "$as_me:$LINENO: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6
+
+echo "$as_me:$LINENO: checking for suffix of executables" >&5
+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+  test -f "$ac_file" || continue
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj ) ;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+         export ac_cv_exeext
+         break;;
+    * ) break;;
+  esac
+done
+else
+  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: 
cannot compile and link
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of executables: cannot compile and 
link
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+echo "$as_me:$LINENO: checking for suffix of object files" >&5
+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
+if test "${ac_cv_objext+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+       break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot 
compile
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+#ifndef __GNUC__
+       choke me
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_compiler_gnu=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_compiler_gnu=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_g+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_g=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_prog_cc_g=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+if test "$ac_test_CFLAGS" = set; then
+  CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+  if test "$GCC" = yes; then
+    CFLAGS="-g -O2"
+  else
+    CFLAGS="-g"
+  fi
+else
+  if test "$GCC" = yes; then
+    CFLAGS="-O2"
+  else
+    CFLAGS=
+  fi
+fi
+echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_prog_cc_stdc=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
+   function prototypes and stuff, but not '\xHH' hex character constants.
+   These don't provoke an error unfortunately, instead are silently treated
+   as 'x'.  The following induces an error, until -std1 is added to get
+   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
+   array size at least.  It's necessary to write '\x00'==0 to get something
+   that's true only with -std1.  */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, 
int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
+  ;
+  return 0;
+}
+_ACEOF
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX                  -qlanglvl=ansi
+# Ultrix and OSF/1     -std1
+# HP-UX 10.20 and later        -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
+# SVR4                 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc 
-D__EXTENSIONS__"
+do
+  CC="$ac_save_CC $ac_arg"
+  rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_stdc=$ac_arg
+break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext 
+done
+rm -f conftest.$ac_ext conftest.$ac_objext
+CC=$ac_save_CC
+
+fi
+
+case "x$ac_cv_prog_cc_stdc" in
+  x|xno)
+    echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+  *)
+    echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
+    CC="$CC $ac_cv_prog_cc_stdc" ;;
+esac
+
+# Some people use a C++ compiler to compile C.  Since we use `exit',
+# in C++ we need to declare it.  In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
address@hidden:@ifndef __cplusplus
+  choke me
address@hidden:@endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  for ac_declaration in \
+   '' \
+   'extern "C" void std::exit (int) throw (); using std::exit;' \
+   'extern "C" void std::exit (int); using std::exit;' \
+   'extern "C" void exit (int) throw ();' \
+   'extern "C" void exit (int);' \
+   'void exit (int);'
+do
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_declaration
address@hidden:@include <stdlib.h>
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+continue
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+  echo '#ifdef __cplusplus' >>confdefs.h
+  echo $ac_declaration      >>confdefs.h
+  echo '#endif'             >>confdefs.h
+fi
+
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+DEPDIR="${am__leading_dot}deps"
+
+          ac_config_commands="$ac_config_commands depfiles"
+
+
+am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+       @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
+echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = 
"done"; then
+   am__include=include
+   am__quote=
+   _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+   echo '.include "confinc"' > confmf
+   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+      am__include=.include
+      am__quote="\""
+      _am_result=BSD
+   fi
+fi
+
+
+echo "$as_me:$LINENO: result: $_am_result" >&5
+echo "${ECHO_T}$_am_result" >&6
+rm -f confinc confmf
+
+# Check whether --enable-dependency-tracking or --disable-dependency-tracking 
was given.
+if test "${enable_dependency_tracking+set}" = set; then
+  enableval="$enable_dependency_tracking"
+  
+fi; 
+if test "x$enable_dependency_tracking" != xno; then
+  am_depcomp="$ac_aux_dir/depcomp"
+  AMDEPBACKSLASH='\'
+fi
+ 
+
+if test "x$enable_dependency_tracking" != xno; then
+  AMDEP_TRUE=
+  AMDEP_FALSE='#'
+else
+  AMDEP_TRUE='#'
+  AMDEP_FALSE=
+fi
+
+
+
+
+depcc="$CC"   am_compiler_list=
+
+echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+  # We make a subdir and do the tests there.  Otherwise we can end up
+  # making bogus files that we don't know about and never remove.  For
+  # instance it was reported that on HP-UX the gcc test will end up
+  # making a dummy file named `D' -- because `-MD' means `put the output
+  # in D'.
+  mkdir conftest.dir
+  # Copy depcomp to subdir because otherwise we won't find it if we're
+  # using a relative directory.
+  cp "$am_depcomp" conftest.dir
+  cd conftest.dir
+  # We will build objects and dependencies in a subdirectory because
+  # it helps to detect inapplicable dependency modes.  For instance
+  # both Tru64's cc and ICC support -MD to output dependencies as a
+  # side effect of compilation, but ICC will put the dependencies in
+  # the current directory while Tru64 will put them in the object
+  # directory.
+  mkdir sub
+
+  am_cv_CC_dependencies_compiler_type=none
+  if test "$am_compiler_list" = ""; then
+     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+  fi
+  for depmode in $am_compiler_list; do
+    # Setup a source with many dependencies, because some compilers
+    # like to wrap large dependency lists on column 80 (with \), and
+    # we should not choose a depcomp mode which is confused by this.
+    #
+    # We need to recreate these files for each test, as the compiler may
+    # overwrite some of them when testing with obscure command lines.
+    # This happens at least with the AIX C compiler.
+    : > sub/conftest.c
+    for i in 1 2 3 4 5 6; do
+      echo '#include "conftst'$i'.h"' >> sub/conftest.c
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
+    done
+    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+    case $depmode in
+    nosideeffect)
+      # after this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested
+      if test "x$enable_dependency_tracking" = xyes; then
+       continue
+      else
+       break
+      fi
+      ;;
+    none) break ;;
+    esac
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.
+    if depmode=$depmode \
+       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+         >/dev/null 2>conftest.err &&
+       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+      # icc doesn't choke on unknown options, it will just issue warnings
+      # or remarks (even with -Werror).  So we grep stderr for any message
+      # that says an option was ignored or not supported.
+      # When given -MP, icc 7.0 and 7.1 complain thusly:
+      #   icc: Command line warning: ignoring option '-M'; no argument required
+      # The diagnosis changed in icc 8.0:
+      #   icc: Command line remark: option '-MP' not supported
+      if (grep 'ignoring option' conftest.err ||
+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+        am_cv_CC_dependencies_compiler_type=$depmode
+        break
+      fi
+    fi
+  done
+
+  cd ..
+  rm -rf conftest.dir
+else
+  am_cv_CC_dependencies_compiler_type=none
+fi
+
+fi
+echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
+
+ 
+
+if 
+  test "x$enable_dependency_tracking" != xno \
+  && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
+  am__fastdepCC_TRUE=
+  am__fastdepCC_FALSE='#'
+else
+  am__fastdepCC_TRUE='#'
+  am__fastdepCC_FALSE=
+fi
+
+
+
+#Find idl4-config. We need this here, since it gives
+#us some CFLAGS
+if test "x$IDL4CONFIG" = "x" ;then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}idl4-config", so it can be a 
program name with args.
+set dummy ${ac_tool_prefix}idl4-config; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_IDL4CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $IDL4CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_IDL4CONFIG="$IDL4CONFIG" # Let the user override the test with a 
path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_IDL4CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  ;;
+esac
+fi
+IDL4CONFIG=$ac_cv_path_IDL4CONFIG
+
+if test -n "$IDL4CONFIG"; then
+  echo "$as_me:$LINENO: result: $IDL4CONFIG" >&5
+echo "${ECHO_T}$IDL4CONFIG" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_path_IDL4CONFIG"; then
+  ac_pt_IDL4CONFIG=$IDL4CONFIG
+  # Extract the first word of "idl4-config", so it can be a program name with 
args.
+set dummy idl4-config; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ac_pt_IDL4CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ac_pt_IDL4CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_IDL4CONFIG="$ac_pt_IDL4CONFIG" # Let the user override the 
test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_IDL4CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_ac_pt_IDL4CONFIG" && ac_cv_path_ac_pt_IDL4CONFIG="no"
+  ;;
+esac
+fi
+ac_pt_IDL4CONFIG=$ac_cv_path_ac_pt_IDL4CONFIG
+
+if test -n "$ac_pt_IDL4CONFIG"; then
+  echo "$as_me:$LINENO: result: $ac_pt_IDL4CONFIG" >&5
+echo "${ECHO_T}$ac_pt_IDL4CONFIG" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  IDL4CONFIG=$ac_pt_IDL4CONFIG
+else
+  IDL4CONFIG="$ac_cv_path_IDL4CONFIG"
+fi
+
+fi
+if test "x$IDL4CONFIG" = "xno"; then
+  exit 1
+fi
+# FIXME: We should support setting the CFLAGS by the user.  But
+# -std=gnu99 and -O2 are required.
+CFLAGS="-std=gnu99 -Wall -g -O3 `$IDL4CONFIG --cflags`"
+
+# By default we simply use the C compiler to build assembly code.
+
+test "${CCAS+set}" = set || CCAS=$CC
+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS
+
+
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a 
program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+  echo "$as_me:$LINENO: result: $RANLIB" >&5
+echo "${ECHO_T}$RANLIB" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+  ac_ct_RANLIB=$RANLIB
+  # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_RANLIB"; then
+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_RANLIB="ranlib"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+  echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
+echo "${ECHO_T}$ac_ct_RANLIB" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  RANLIB=$ac_ct_RANLIB
+else
+  RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AR"; then
+  ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_AR="${ac_tool_prefix}ar"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+  echo "$as_me:$LINENO: result: $AR" >&5
+echo "${ECHO_T}$AR" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+  ac_ct_AR=$AR
+  # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_AR"; then
+  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_AR="ar"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_AR" && ac_cv_prog_ac_ct_AR=":"
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+  echo "$as_me:$LINENO: result: $ac_ct_AR" >&5
+echo "${ECHO_T}$ac_ct_AR" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  AR=$ac_ct_AR
+else
+  AR="$ac_cv_prog_AR"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nm", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}nm; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NM+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NM"; then
+  ac_cv_prog_NM="$NM" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NM="${ac_tool_prefix}nm"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NM=$ac_cv_prog_NM
+if test -n "$NM"; then
+  echo "$as_me:$LINENO: result: $NM" >&5
+echo "${ECHO_T}$NM" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NM"; then
+  ac_ct_NM=$NM
+  # Extract the first word of "nm", so it can be a program name with args.
+set dummy nm; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NM+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NM"; then
+  ac_cv_prog_ac_ct_NM="$ac_ct_NM" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NM="nm"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NM" && ac_cv_prog_ac_ct_NM=":"
+fi
+fi
+ac_ct_NM=$ac_cv_prog_ac_ct_NM
+if test -n "$ac_ct_NM"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NM" >&5
+echo "${ECHO_T}$ac_ct_NM" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NM=$ac_ct_NM
+else
+  NM="$ac_cv_prog_NM"
+fi
+
+
+#idl4 stuff (check, --help, ...)
+
+
+
+IDL4FLAGS="$IDL4FLAGS -i V4_GNU -p generic -T -fctypes"
+if test "x$IDL4" = "x";then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}idl4", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}idl4; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_IDL4+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $IDL4 in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_IDL4="$IDL4" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_IDL4="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  ;;
+esac
+fi
+IDL4=$ac_cv_path_IDL4
+
+if test -n "$IDL4"; then
+  echo "$as_me:$LINENO: result: $IDL4" >&5
+echo "${ECHO_T}$IDL4" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_path_IDL4"; then
+  ac_pt_IDL4=$IDL4
+  # Extract the first word of "idl4", so it can be a program name with args.
+set dummy idl4; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ac_pt_IDL4+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ac_pt_IDL4 in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_IDL4="$ac_pt_IDL4" # Let the user override the test with a 
path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_IDL4="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_ac_pt_IDL4" && ac_cv_path_ac_pt_IDL4="no"
+  ;;
+esac
+fi
+ac_pt_IDL4=$ac_cv_path_ac_pt_IDL4
+
+if test -n "$ac_pt_IDL4"; then
+  echo "$as_me:$LINENO: result: $ac_pt_IDL4" >&5
+echo "${ECHO_T}$ac_pt_IDL4" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  IDL4=$ac_pt_IDL4
+else
+  IDL4="$ac_cv_path_IDL4"
+fi
+
+fi
+if test "x$IDL4" = xno; then
+  exit 1
+fi
+echo -n "checking for idl4 -l -i V4_GNU -T... "
+$IDL4 $IDL4FLAGS -l -c -C "$CC $CFLAGS" test.idl
+if test -e test_client.h;then
+  echo yes
+  rm test_client.h
+else
+  echo 'Your version of idl4 is outdated, see README.idl4!'
+  exit 1
+fi
+IDL4FLAGS="$IDL4FLAGS -C \"\$(COMPILE) \$(\$(subdir)_CPPFLAGS)\""
+# Extract the first word of "sed", so it can be a program name with args.
+set dummy sed; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_SED+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $SED in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SED="$SED" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_SED" && ac_cv_path_SED=":"
+  ;;
+esac
+fi
+SED=$ac_cv_path_SED
+
+if test -n "$SED"; then
+  echo "$as_me:$LINENO: result: $SED" >&5
+echo "${ECHO_T}$SED" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+# Extract the first word of "sort", so it can be a program name with args.
+set dummy sort; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_SORT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $SORT in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SORT="$SORT" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SORT="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_SORT" && ac_cv_path_SORT=":"
+  ;;
+esac
+fi
+SORT=$ac_cv_path_SORT
+
+if test -n "$SORT"; then
+  echo "$as_me:$LINENO: result: $SORT" >&5
+echo "${ECHO_T}$SORT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+
+# Required for building the documentation
+# Extract the first word of "latex", so it can be a program name with args.
+set dummy latex; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_LATEX+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $LATEX in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_LATEX="$LATEX" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_LATEX="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_LATEX" && ac_cv_path_LATEX="no"
+  ;;
+esac
+fi
+LATEX=$ac_cv_path_LATEX
+
+if test -n "$LATEX"; then
+  echo "$as_me:$LINENO: result: $LATEX" >&5
+echo "${ECHO_T}$LATEX" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$LATEX" = xno; then
+  missing_progs="$missing_progs latex"
+fi
+# Extract the first word of "dvips", so it can be a program name with args.
+set dummy dvips; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_DVIPS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $DVIPS in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_DVIPS="$DVIPS" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_DVIPS="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_DVIPS" && ac_cv_path_DVIPS="no"
+  ;;
+esac
+fi
+DVIPS=$ac_cv_path_DVIPS
+
+if test -n "$DVIPS"; then
+  echo "$as_me:$LINENO: result: $DVIPS" >&5
+echo "${ECHO_T}$DVIPS" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$DVIPS" = xno; then
+  missing_progs="$missing_progs dvips"
+fi
+# Extract the first word of "ps2pdf", so it can be a program name with args.
+set dummy ps2pdf; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_PS2PDF+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $PS2PDF in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PS2PDF="$PS2PDF" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_PS2PDF="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_PS2PDF" && ac_cv_path_PS2PDF="no"
+  ;;
+esac
+fi
+PS2PDF=$ac_cv_path_PS2PDF
+
+if test -n "$PS2PDF"; then
+  echo "$as_me:$LINENO: result: $PS2PDF" >&5
+echo "${ECHO_T}$PS2PDF" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$PS2PDF" = xno; then
+  missing_progs="$missing_progs ps2pdf"
+fi
+# Extract the first word of "fig2dev", so it can be a program name with args.
+set dummy fig2dev; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_FIG2DEV+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $FIG2DEV in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_FIG2DEV="$FIG2DEV" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_FIG2DEV="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_FIG2DEV" && ac_cv_path_FIG2DEV="no"
+  ;;
+esac
+fi
+FIG2DEV=$ac_cv_path_FIG2DEV
+
+if test -n "$FIG2DEV"; then
+  echo "$as_me:$LINENO: result: $FIG2DEV" >&5
+echo "${ECHO_T}$FIG2DEV" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$FIG2DEV" = xno; then
+  if test "x$maintainer_mode" = xyes; then
+    missing_progs="missing_progs fig2dev"
+  fi
+fi
+
+# Set up the host information.
+
+# Make sure we can run config.sub.
+$ac_config_sub sun4 >/dev/null 2>&1 ||
+  { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
+   { (exit 1); exit 1; }; }
+
+echo "$as_me:$LINENO: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6
+if test "${ac_cv_build+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_build_alias=$build_alias
+test -z "$ac_cv_build_alias" &&
+  ac_cv_build_alias=`$ac_config_guess`
+test -z "$ac_cv_build_alias" &&
+  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify 
one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+   { (exit 1); exit 1; }; }
+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
+  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" 
>&5
+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6
+build=$ac_cv_build
+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+echo "$as_me:$LINENO: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6
+if test "${ac_cv_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_host_alias=$host_alias
+test -z "$ac_cv_host_alias" &&
+  ac_cv_host_alias=$ac_cv_build_alias
+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
+  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6
+host=$ac_cv_host
+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+
+# Checks for libraries.
+
+echo "$as_me:$LINENO: checking for static GNU C library" >&5
+echo $ECHO_N "checking for static GNU C library... $ECHO_C" >&6
+static_libc=libc.a
+case $host_os in
+  gnu*)
+    # On the GNU/Hurd, libc.a is a linker script, the real C library
+    # can be found in libcrt.a instead.  But fall back on libc.a for
+    # cheap cross-compilation.
+    libcrta=`$CC -print-file-name=libcrt.a`
+    if test "x$libcrta" != "xlibcrt.a"; then
+      static_libc=libcrt.a
+    fi
+    ;;
+esac
+STATIC_GLIBC=`$CC -print-file-name=$static_libc`
+if test "x$STATIC_GLIBC" = "x$static_libc"; then
+  echo "$as_me:$LINENO: result: none" >&5
+echo "${ECHO_T}none" >&6
+  { { echo "$as_me:$LINENO: error: Could not find static version of the GNU C 
library" >&5
+echo "$as_me: error: Could not find static version of the GNU C library" >&2;}
+   { (exit 1); exit 1; }; }
+else
+  echo "$as_me:$LINENO: result: $STATIC_GLIBC" >&5
+echo "${ECHO_T}$STATIC_GLIBC" >&6
+fi
+
+
+
+# Checks for header files.
+
+# Checks for typedefs, structures, and compiler characteristics.
+
+echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
+echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
+if test "${ac_cv_c_const+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+/* FIXME: Include the comments suggested by Paul. */
+#ifndef __cplusplus
+  /* Ultrix mips cc rejects this.  */
+  typedef int charset[2];
+  const charset x;
+  /* SunOS 4.1.1 cc rejects this.  */
+  char const *const *ccp;
+  char **p;
+  /* NEC SVR4.0.2 mips cc rejects this.  */
+  struct point {int x, y;};
+  static struct point const zero = {0,0};
+  /* AIX XL C 1.02.0.0 rejects this.
+     It does not let you subtract one const X* pointer from another in
+     an arm of an if-expression whose if-part is not a constant
+     expression */
+  const char *g = "string";
+  ccp = &g + (g ? g-g : 0);
+  /* HPUX 7.0 cc rejects these. */
+  ++ccp;
+  p = (char**) ccp;
+  ccp = (char const *const *) p;
+  { /* SCO 3.2v4 cc rejects this.  */
+    char *t;
+    char const *s = 0 ? (char *) 0 : (char const *) 0;
+
+    *t++ = 0;
+  }
+  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
+    int x[] = {25, 17};
+    const int *foo = &x[0];
+    ++foo;
+  }
+  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
+    typedef const int *iptr;
+    iptr p = 0;
+    ++p;
+  }
+  { /* AIX XL C 1.02.0.0 rejects this saying
+       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
+    struct s { int j; const int *ap[3]; };
+    struct s *b; b->j = 5;
+  }
+  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
+    const int foo = 10;
+  }
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_const=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_c_const=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
+echo "${ECHO_T}$ac_cv_c_const" >&6
+if test $ac_cv_c_const = no; then
+  
+cat >>confdefs.h <<\_ACEOF
address@hidden:@define const 
+_ACEOF
+
+fi
+
+echo "$as_me:$LINENO: checking for working volatile" >&5
+echo $ECHO_N "checking for working volatile... $ECHO_C" >&6
+if test "${ac_cv_c_volatile+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+volatile int x;
+int * volatile y;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_volatile=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_c_volatile=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_volatile" >&5
+echo "${ECHO_T}$ac_cv_c_volatile" >&6
+if test $ac_cv_c_volatile = no; then
+  
+cat >>confdefs.h <<\_ACEOF
address@hidden:@define volatile 
+_ACEOF
+
+fi
+
+
+arch_ia32=false
+arch_powerpc=false
+case $host_cpu in
+  alpha)
+    arch=alpha
+    arch_alpha=true
+    ;;
+  amd64)
+    arch=amd64
+    arch_alpha=true
+    ;;
+  i386 | i486 | i586 | i686)
+    arch=ia32
+    arch_ia32=true
+    ;;
+  ia64)
+    arch=ia64
+    arch_ia64=true
+    ;;
+  powerpc)
+    arch=powerpc
+    arch_powerpc=true
+    ;;
+  powerpc64)
+    arch=powerpc64
+    arch_powerpc64=true
+    ;;
+  *)
+    { { echo "$as_me:$LINENO: error: unsupported architecture" >&5
+echo "$as_me: error: unsupported architecture" >&2;}
+   { (exit 1); exit 1; }; }
+    ;;
+esac
+ 
+
+if $arch_alpha; then
+  ARCH_ALPHA_TRUE=
+  ARCH_ALPHA_FALSE='#'
+else
+  ARCH_ALPHA_TRUE='#'
+  ARCH_ALPHA_FALSE=
+fi
+
+ 
+
+if $arch_amd64; then
+  ARCH_AMD64_TRUE=
+  ARCH_AMD64_FALSE='#'
+else
+  ARCH_AMD64_TRUE='#'
+  ARCH_AMD64_FALSE=
+fi
+
+ 
+
+if $arch_ia32; then
+  ARCH_IA32_TRUE=
+  ARCH_IA32_FALSE='#'
+else
+  ARCH_IA32_TRUE='#'
+  ARCH_IA32_FALSE=
+fi
+
+ 
+
+if $arch_ia64; then
+  ARCH_IA64_TRUE=
+  ARCH_IA64_FALSE='#'
+else
+  ARCH_IA64_TRUE='#'
+  ARCH_IA64_FALSE=
+fi
+
+ 
+
+if $arch_powerpc; then
+  ARCH_POWERPC_TRUE=
+  ARCH_POWERPC_FALSE='#'
+else
+  ARCH_POWERPC_TRUE='#'
+  ARCH_POWERPC_FALSE=
+fi
+
+ 
+
+if $arch_powerpc64; then
+  ARCH_POWERPC64_TRUE=
+  ARCH_POWERPC64_FALSE='#'
+else
+  ARCH_POWERPC64_TRUE='#'
+  ARCH_POWERPC64_FALSE=
+fi
+
+
+# Configure components.
+# config.m4 - Configure snippet for laden.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+# 
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-laden-loadaddr or --without-laden-loadaddr was given.
+if test "${with_laden_loadaddr+set}" = set; then
+  withval="$with_laden_loadaddr"
+  hurd_laden_load_address=$withval
+else
+  hurd_laden_load_address=0x190000
+fi; 
+       HURD_LADEN_LOAD_ADDRESS=$hurd_laden_load_address
+       
+
+# config.m4 - Configure snippet for wortel.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+# 
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-wortel-loadaddr or --without-wortel-loadaddr was given.
+if test "${with_wortel_loadaddr+set}" = set; then
+  withval="$with_wortel_loadaddr"
+  hurd_wortel_load_address=$withval
+else
+  hurd_wortel_load_address=0x300000
+fi; 
+       HURD_WORTEL_LOAD_ADDRESS=$hurd_wortel_load_address
+       
+
+# config.m4 - Configure snippet for physmem.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+# 
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-physmem-loadaddr or --without-physmem-loadaddr was 
given.
+if test "${with_physmem_loadaddr+set}" = set; then
+  withval="$with_physmem_loadaddr"
+  hurd_physmem_load_address=$withval
+else
+  hurd_physmem_load_address=0x400000
+fi; 
+       HURD_PHYSMEM_LOAD_ADDRESS=$hurd_physmem_load_address
+       
+
+
+# Create links for header file.
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                                                                               
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
 ac_config_links="$ac_config_links include/l4.h:libl4/l4.h 
include/l4/features.h:libl4/l4/features.h 
include/l4/globals.h:libl4/l4/globals.h include/l4/init.h:libl4/l4/init.h 
include/l4/ipc.h:libl4/l4/ipc.h include/l4/kip.h:libl4/l4/kip.h 
include/l4/math.h:libl4/l4/math.h include/l4/message.h:libl4/l4/message.h 
include/l4/misc.h:libl4/l4/misc.h include/l4/arch.h:libl4/l4/arch.h 
include/l4/pagefault.h:libl4/l4/pagefault.h 
include/l4/schedule.h:libl4/l4/schedule.h include/l4/space.h:libl4/l4/space.h 
include/l4/stubs-init.h:libl4/l4/stubs-init.h 
include/l4/stubs.h:libl4/l4/stubs.h include/l4/syscall.h:libl4/l4/syscall.h 
include/l4/thread.h:libl4/l4/thread.h 
include/l4/thread-start.h:libl4/l4/thread-start.h 
include/l4/types.h:libl4/l4/types.h include/l4/vregs.h:libl4/l4/vregs.h 
include/l4/sigma0.h:libl4/l4/sigma0.h 
include/l4/compat/ipc.h:libl4/l4/compat/ipc.h 
include/l4/compat/kip.h:libl4/l4/compat/kip.h 
include/l4/compat/message.h:libl4/l4/compat/message.h 
include/l4/compat/misc.h:libl4/l4/compat/misc.h 
include/l4/compat/schedule.h:libl4/l4/compat/schedule.h 
include/l4/compat/space.h:libl4/l4/compat/space.h 
include/l4/compat/syscall.h:libl4/l4/compat/syscall.h 
include/l4/compat/thread.h:libl4/l4/compat/thread.h 
include/l4/compat/types.h:libl4/l4/compat/types.h 
include/l4/compat/sigma0.h:libl4/l4/compat/sigma0.h 
include/l4/gnu/ipc.h:libl4/l4/gnu/ipc.h include/l4/gnu/kip.h:libl4/l4/gnu/kip.h 
include/l4/gnu/math.h:libl4/l4/gnu/math.h 
include/l4/gnu/message.h:libl4/l4/gnu/message.h 
include/l4/gnu/misc.h:libl4/l4/gnu/misc.h 
include/l4/gnu/pagefault.h:libl4/l4/gnu/pagefault.h 
include/l4/gnu/schedule.h:libl4/l4/gnu/schedule.h 
include/l4/gnu/space.h:libl4/l4/gnu/space.h 
include/l4/gnu/syscall.h:libl4/l4/gnu/syscall.h 
include/l4/gnu/thread.h:libl4/l4/gnu/thread.h 
include/l4/gnu/thread-start.h:libl4/l4/gnu/thread-start.h 
include/l4/gnu/types.h:libl4/l4/gnu/types.h 
include/l4/gnu/sigma0.h:libl4/l4/gnu/sigma0.h 
include/l4/bits/ipc.h:libl4/${arch}/l4/bits/ipc.h 
include/l4/bits/kip.h:libl4/${arch}/l4/bits/kip.h 
include/l4/bits/math.h:libl4/${arch}/l4/bits/math.h 
include/l4/bits/misc.h:libl4/${arch}/l4/bits/misc.h 
include/l4/bits/arch.h:libl4/${arch}/l4/bits/arch.h 
include/l4/bits/space.h:libl4/${arch}/l4/bits/space.h 
include/l4/bits/stubs.h:libl4/${arch}/l4/bits/stubs.h 
include/l4/bits/stubs-init.h:libl4/${arch}/l4/bits/stubs-init.h 
include/l4/bits/syscall.h:libl4/${arch}/l4/bits/syscall.h 
include/l4/bits/types.h:libl4/${arch}/l4/bits/types.h 
include/l4/bits/vregs.h:libl4/${arch}/l4/bits/vregs.h 
include/l4/bits/compat/ipc.h:libl4/${arch}/l4/bits/compat/ipc.h 
include/l4/bits/compat/misc.h:libl4/${arch}/l4/bits/compat/misc.h 
include/l4/bits/compat/arch.h:libl4/${arch}/l4/bits/compat/arch.h 
include/l4/bits/compat/space.h:libl4/${arch}/l4/bits/compat/space.h 
include/l4/bits/gnu/ipc.h:libl4/${arch}/l4/bits/gnu/ipc.h 
include/l4/bits/gnu/kip.h:libl4/${arch}/l4/bits/gnu/kip.h 
include/l4/bits/gnu/misc.h:libl4/${arch}/l4/bits/gnu/misc.h 
include/l4/bits/gnu/arch.h:libl4/${arch}/l4/bits/gnu/arch.h 
include/l4/bits/gnu/space.h:libl4/${arch}/l4/bits/gnu/space.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                              ac_config_links="$ac_config_links 
include/atomic.h:platform/atomic.h 
include/bits/atomic.h:platform/${arch}/bits/atomic.h 
include/compiler.h:platform/compiler.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                    ac_config_links="$ac_config_links 
include/hurd/types.h:hurd/types.h include/hurd/startup.h:hurd/startup.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/ihash.h:libhurd-ihash/ihash.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/btree.h:libhurd-btree/btree.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/slab.h:libhurd-slab/slab.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/cap.h:libhurd-cap/cap.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/cap-server.h:libhurd-cap-server/cap-server.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004, 2005 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                              ac_config_links="$ac_config_links 
include/hurd/mm.h:libhurd-mm/mm.h include/hurd/vm.h:libhurd-mm/vm.h 
include/hurd/anonymous.h:libhurd-mm/anonymous.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                                                                               
                                                                                
                                         ac_config_links="$ac_config_links 
include/pthread.h:libpthread/include/pthread.h 
include/pthread/pthread.h:libpthread/include/pthread/pthread.h 
include/bits/memory.h:libpthread/sysdeps/${arch}/bits/memory.h 
include/bits/spin-lock.h:libpthread/sysdeps/${arch}/bits/spin-lock.h 
include/bits/pthreadtypes.h:libpthread/sysdeps/generic/bits/pthreadtypes.h 
include/bits/barrier-attr.h:libpthread/sysdeps/generic/bits/barrier-attr.h 
include/bits/barrier.h:libpthread/sysdeps/generic/bits/barrier.h 
include/bits/cancelation.h:libpthread/sysdeps/generic/bits/cancelation.h 
include/bits/condition-attr.h:libpthread/sysdeps/generic/bits/condition-attr.h 
include/bits/condition.h:libpthread/sysdeps/generic/bits/condition.h 
include/bits/mutex-attr.h:libpthread/sysdeps/generic/bits/mutex-attr.h 
include/bits/mutex.h:libpthread/sysdeps/generic/bits/mutex.h 
include/bits/once.h:libpthread/sysdeps/generic/bits/once.h 
include/bits/pthread.h:libpthread/sysdeps/generic/bits/pthread.h 
include/bits/rwlock-attr.h:libpthread/sysdeps/generic/bits/rwlock-attr.h 
include/bits/rwlock.h:libpthread/sysdeps/generic/bits/rwlock.h 
include/bits/thread-attr.h:libpthread/sysdeps/generic/bits/thread-attr.h 
include/bits/thread-barrier.h:libpthread/sysdeps/generic/bits/thread-barrier.h 
include/bits/thread-specific.h:libpthread/sysdeps/generic/bits/thread-specific.h
 include/bits/pthread-np.h:libpthread/sysdeps/l4/bits/pthread-np.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/wortel.h:wortel/wortel.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2005 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/physmem.h:physmem/physmem.h"
+
+
+
+# Check for libc and components using it.
+
+
+# Check whether --with-libc or --without-libc was given.
+if test "${with_libc+set}" = set; then
+  withval="$with_libc"
+  
+fi; 
+ 
+
+if test x"${with_libc-no}" != xno; then
+  WITH_LIBC_TRUE=
+  WITH_LIBC_FALSE='#'
+else
+  WITH_LIBC_TRUE='#'
+  WITH_LIBC_FALSE=
+fi
+
+
+
+if test "x$missing_progs" != "x"; then
+  { { echo "$as_me:$LINENO: error: The following programs were not 
found:$missing_progs" >&5
+echo "$as_me: error: The following programs were not found:$missing_progs" 
>&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# Checks for library functions.
+                                                                               
                                                                                
                                                                                
                                                   
ac_config_files="$ac_config_files Makefile libl4/ia32/Makefile 
libl4/powerpc/Makefile libl4/tests/Makefile libl4/Makefile 
platform/alpha/Makefile platform/amd64/Makefile platform/ia32/Makefile 
platform/ia64/Makefile platform/powerpc/Makefile platform/powerpc64/Makefile 
platform/Makefile libc-parts/Makefile hurd/Makefile libhurd-ihash/Makefile 
libhurd-btree/Makefile libhurd-slab/Makefile libhurd-cap/Makefile 
libhurd-cap-server/Makefile libhurd-mm/Makefile libpthread/Makefile 
laden/Makefile wortel/Makefile physmem/Makefile task/Makefile deva/Makefile 
libc/Makefile ruth/Makefile doc/Makefile"
+
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems.  If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, don't put newlines in cache variables' values.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+{
+  (set) 2>&1 |
+    case `(ac_space=' '; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      # `set' does not quote correctly, so add quotes (double-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \).
+      sed -n \
+       "s/'/'\\\\''/g;
+         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+      ;;
+    *)
+      # `set' quotes correctly as required by POSIX, so do not add quotes.
+      sed -n \
+       "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} |
+  sed '
+     t clear
+     : clear
+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     t end
+     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+     : end' >>confcache
+if diff $cache_file confcache >/dev/null 2>&1; then :; else
+  if test -w $cache_file; then
+    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+    cat confcache >$cache_file
+  else
+    echo "not updating unwritable cache $cache_file"
+  fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+  ac_vpsub='/^[         ]*VPATH[        ]*=/{
+s/:*\$(srcdir):*/:/;
+s/:*\${srcdir}:*/:/;
+s/:address@hidden@:*/:/;
+s/^\([^=]*=[    ]*\):*/\1/;
+s/:*$//;
+s/^[^=]*=[      ]*$//;
+}'
+fi
+
+DEFS=-DHAVE_CONFIG_H
+
+ac_libobjs=
+ac_ltlibobjs=
+for ac_i in : $LIB@&address@hidden; do test "x$ac_i" = x: && continue
+  # 1. Remove the extension, and $U if already installed.
+  ac_i=`echo "$ac_i" |
+        sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
+  # 2. Add them.
+  ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
+  ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
+done
+LIB@&address@hidden
+
+LTLIBOBJS=$ac_ltlibobjs
+
+
+if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; 
then
+  { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_ALPHA_TRUE}" && test -z "${ARCH_ALPHA_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_ALPHA\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_ALPHA\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_AMD64_TRUE}" && test -z "${ARCH_AMD64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_AMD64\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_AMD64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_IA32_TRUE}" && test -z "${ARCH_IA32_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_IA32\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_IA32\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_IA64_TRUE}" && test -z "${ARCH_IA64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_IA64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_IA64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_POWERPC_TRUE}" && test -z "${ARCH_POWERPC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_POWERPC\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_POWERPC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_POWERPC64_TRUE}" && test -z "${ARCH_POWERPC64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_POWERPC64\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_POWERPC64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${WITH_LIBC_TRUE}" && test -z "${WITH_LIBC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"WITH_LIBC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"WITH_LIBC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+: ${CONFIG_STATUS=./config.status}
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate the current configuration.
+# Compiler output produced by configure, useful for debugging
+# configure, is in config.log if it exists.
+
+debug=false
+ac_cs_recheck=false
+ac_cs_silent=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+## --------------------- ##
+## M4sh Initialization.  ##
+## --------------------- ##
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+
+# Work around bugs in pre-3.0 UWIN ksh.
+$as_unset ENV MAIL MAILPATH
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+  LC_TELEPHONE LC_TIME
+do
+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+    eval $as_var=C; export $as_var
+  else
+    $as_unset $as_var
+  fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)$' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+         /^X\/\(\/\/\)$/{ s//\1/; q; }
+         /^X\/\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+
+
+# PATH needs CR, and LINENO needs CR and PATH.
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
+  # Find who we are.  Look in the path if we contain no path at all
+  # relative or not.
+  case $0 in
+    *[\\/]* ) as_myself=$0 ;;
+    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+
+       ;;
+  esac
+  # We did not find ourselves, most probably we were run as `sh COMMAND'
+  # in which case we are not to be found in the path.
+  if test "x$as_myself" = x; then
+    as_myself=$0
+  fi
+  if test ! -f "$as_myself"; then
+    { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an 
absolute path" >&5
+echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+  case $CONFIG_SHELL in
+  '')
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for as_base in sh bash ksh sh5; do
+        case $as_dir in
+        /*)
+          if ("$as_dir/$as_base" -c '
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
+            $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { 
BASH_ENV=; export BASH_ENV; }
+            $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+            CONFIG_SHELL=$as_dir/$as_base
+            export CONFIG_SHELL
+            exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+          fi;;
+        esac
+       done
+done
+;;
+  esac
+
+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+  # uniformly replaced by the line number.  The first 'sed' inserts a
+  # line-number line before each line; the second 'sed' does the real
+  # work.  The second script uses 'N' to pair each line-number line
+  # with the numbered line, and appends trailing '-' during
+  # substitution so that $LINENO is not a special case at line end.
+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
+  sed '=' <$as_myself |
+    sed '
+      N
+      s,$,-,
+      : loop
+      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+      t loop
+      s,-$,,
+      s,^['$as_cr_digits']*\n,,
+    ' >$as_me.lineno &&
+  chmod +x $as_me.lineno ||
+    { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a 
POSIX shell" >&5
+echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" 
>&2;}
+   { (exit 1); exit 1; }; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensible to this).
+  . ./$as_me.lineno
+  # Exit status is that of the last command.
+  exit
+}
+
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='     ' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p=:
+else
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
+fi
+
+as_executable_p="test -f"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS="  $as_nl"
+
+# CDPATH.
+$as_unset CDPATH
+
+exec 6>&1
+
+# Open the log real soon, to keep \$[0] and so on meaningful, and to
+# report actual input values of CONFIG_FILES etc. instead of their
+# values after options handling.  Logging --version etc. is OK.
+exec 5>>config.log
+{
+  echo
+  sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
address@hidden:@@%:@ Running $as_me. @%:@@%:@
+_ASBOX
+} >&5
+cat >&5 <<_CSEOF
+
+This file was extended by hurd $as_me 0.0, which was
+generated by GNU Autoconf 2.59.  Invocation command line was
+
+  CONFIG_FILES    = $CONFIG_FILES
+  CONFIG_HEADERS  = $CONFIG_HEADERS
+  CONFIG_LINKS    = $CONFIG_LINKS
+  CONFIG_COMMANDS = $CONFIG_COMMANDS
+  $ $0 $@
+
+_CSEOF
+echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
+echo >&5
+_ACEOF
+
+# Files that config.status was made for.
+if test -n "$ac_config_files"; then
+  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_headers"; then
+  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_links"; then
+  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_commands"; then
+  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+fi
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTIONS] [FILE]...
+
+  -h, --help       print this help, then exit
+  -V, --version    print version number, then exit
+  -q, --quiet      do not print progress messages
+  -d, --debug      don't remove temporary files
+      --recheck    update $as_me by reconfiguring in the same conditions
+  --file=FILE[:TEMPLATE]
+                  instantiate the configuration file FILE
+  --header=FILE[:TEMPLATE]
+                  instantiate the configuration header FILE
+
+Configuration files:
+$config_files
+
+Configuration headers:
+$config_headers
+
+Configuration links:
+$config_links
+
+Configuration commands:
+$config_commands
+
+Report bugs to <address@hidden>."
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+ac_cs_version="\\
+hurd config.status 0.0
+configured by $0, generated by GNU Autoconf 2.59,
+  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright (C) 2003 Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+srcdir=$srcdir
+INSTALL="$INSTALL"
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+# If no file are specified by the user, then we need to provide default
+# value.  By we need to know if files were specified by the user.
+ac_need_defaults=:
+while test $# != 0
+do
+  case $1 in
+  --*=*)
+    ac_option=`expr "x$1" : 'x\([^=]*\)='`
+    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
+    ac_shift=:
+    ;;
+  -*)
+    ac_option=$1
+    ac_optarg=$2
+    ac_shift=shift
+    ;;
+  *) # This is not an option, so the user has probably given explicit
+     # arguments.
+     ac_option=$1
+     ac_need_defaults=false;;
+  esac
+
+  case $ac_option in
+  # Handling of the options.
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+    ac_cs_recheck=: ;;
+  --version | --vers* | -V )
+    echo "$ac_cs_version"; exit 0 ;;
+  --he | --h)
+    # Conflict between --help and --header
+    { { echo "$as_me:$LINENO: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; };;
+  --help | --hel | -h )
+    echo "$ac_cs_usage"; exit 0 ;;
+  --debug | --d* | -d )
+    debug=: ;;
+  --file | --fil | --fi | --f )
+    $ac_shift
+    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
+    ac_need_defaults=false;;
+  --header | --heade | --head | --hea )
+    $ac_shift
+    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
+    ac_need_defaults=false;;
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil | --si | --s)
+    ac_cs_silent=: ;;
+
+  # This is an error.
+  -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; } ;;
+
+  *) ac_config_targets="$ac_config_targets $1" ;;
+
+  esac
+  shift
+done
+
+ac_configure_extra_args=
+
+if $ac_cs_silent; then
+  exec 6>/dev/null
+  ac_configure_extra_args="$ac_configure_extra_args --silent"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+if \$ac_cs_recheck; then
+  echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " 
--no-create --no-recursion" >&6
+  exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create 
--no-recursion
+fi
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+#
+# INIT-COMMANDS section.
+#
+
+AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+
+_ACEOF
+
+
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+for ac_config_target in $ac_config_targets
+do
+  case "$ac_config_target" in
+  # Handling of arguments.
+  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+  "libl4/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/ia32/Makefile" ;;
+  "libl4/powerpc/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libl4/powerpc/Makefile" ;;
+  "libl4/tests/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/tests/Makefile" ;;
+  "libl4/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/Makefile" ;;
+  "platform/alpha/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/alpha/Makefile" ;;
+  "platform/amd64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/amd64/Makefile" ;;
+  "platform/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/ia32/Makefile" ;;
+  "platform/ia64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/ia64/Makefile" ;;
+  "platform/powerpc/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/powerpc/Makefile" ;;
+  "platform/powerpc64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/powerpc64/Makefile" ;;
+  "platform/Makefile" ) CONFIG_FILES="$CONFIG_FILES platform/Makefile" ;;
+  "libc-parts/Makefile" ) CONFIG_FILES="$CONFIG_FILES libc-parts/Makefile" ;;
+  "hurd/Makefile" ) CONFIG_FILES="$CONFIG_FILES hurd/Makefile" ;;
+  "libhurd-ihash/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-ihash/Makefile" ;;
+  "libhurd-btree/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-btree/Makefile" ;;
+  "libhurd-slab/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-slab/Makefile" 
;;
+  "libhurd-cap/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-cap/Makefile" ;;
+  "libhurd-cap-server/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-cap-server/Makefile" ;;
+  "libhurd-mm/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-mm/Makefile" ;;
+  "libpthread/Makefile" ) CONFIG_FILES="$CONFIG_FILES libpthread/Makefile" ;;
+  "laden/Makefile" ) CONFIG_FILES="$CONFIG_FILES laden/Makefile" ;;
+  "wortel/Makefile" ) CONFIG_FILES="$CONFIG_FILES wortel/Makefile" ;;
+  "physmem/Makefile" ) CONFIG_FILES="$CONFIG_FILES physmem/Makefile" ;;
+  "task/Makefile" ) CONFIG_FILES="$CONFIG_FILES task/Makefile" ;;
+  "deva/Makefile" ) CONFIG_FILES="$CONFIG_FILES deva/Makefile" ;;
+  "libc/Makefile" ) CONFIG_FILES="$CONFIG_FILES libc/Makefile" ;;
+  "ruth/Makefile" ) CONFIG_FILES="$CONFIG_FILES ruth/Makefile" ;;
+  "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
+  "include/l4.h" ) CONFIG_LINKS="$CONFIG_LINKS include/l4.h:libl4/l4.h" ;;
+  "include/l4/features.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/features.h:libl4/l4/features.h" ;;
+  "include/l4/globals.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/globals.h:libl4/l4/globals.h" ;;
+  "include/l4/init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/init.h:libl4/l4/init.h" ;;
+  "include/l4/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/ipc.h:libl4/l4/ipc.h" ;;
+  "include/l4/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/kip.h:libl4/l4/kip.h" ;;
+  "include/l4/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/math.h:libl4/l4/math.h" ;;
+  "include/l4/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/message.h:libl4/l4/message.h" ;;
+  "include/l4/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/misc.h:libl4/l4/misc.h" ;;
+  "include/l4/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/arch.h:libl4/l4/arch.h" ;;
+  "include/l4/pagefault.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/pagefault.h:libl4/l4/pagefault.h" ;;
+  "include/l4/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/schedule.h:libl4/l4/schedule.h" ;;
+  "include/l4/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/space.h:libl4/l4/space.h" ;;
+  "include/l4/stubs-init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/stubs-init.h:libl4/l4/stubs-init.h" ;;
+  "include/l4/stubs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/stubs.h:libl4/l4/stubs.h" ;;
+  "include/l4/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/syscall.h:libl4/l4/syscall.h" ;;
+  "include/l4/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/thread.h:libl4/l4/thread.h" ;;
+  "include/l4/thread-start.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/thread-start.h:libl4/l4/thread-start.h" ;;
+  "include/l4/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/types.h:libl4/l4/types.h" ;;
+  "include/l4/vregs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/vregs.h:libl4/l4/vregs.h" ;;
+  "include/l4/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/sigma0.h:libl4/l4/sigma0.h" ;;
+  "include/l4/compat/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/ipc.h:libl4/l4/compat/ipc.h" ;;
+  "include/l4/compat/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/kip.h:libl4/l4/compat/kip.h" ;;
+  "include/l4/compat/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/message.h:libl4/l4/compat/message.h" ;;
+  "include/l4/compat/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/misc.h:libl4/l4/compat/misc.h" ;;
+  "include/l4/compat/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/schedule.h:libl4/l4/compat/schedule.h" ;;
+  "include/l4/compat/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/space.h:libl4/l4/compat/space.h" ;;
+  "include/l4/compat/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/syscall.h:libl4/l4/compat/syscall.h" ;;
+  "include/l4/compat/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/thread.h:libl4/l4/compat/thread.h" ;;
+  "include/l4/compat/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/types.h:libl4/l4/compat/types.h" ;;
+  "include/l4/compat/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/sigma0.h:libl4/l4/compat/sigma0.h" ;;
+  "include/l4/gnu/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/ipc.h:libl4/l4/gnu/ipc.h" ;;
+  "include/l4/gnu/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/kip.h:libl4/l4/gnu/kip.h" ;;
+  "include/l4/gnu/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/math.h:libl4/l4/gnu/math.h" ;;
+  "include/l4/gnu/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/message.h:libl4/l4/gnu/message.h" ;;
+  "include/l4/gnu/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/misc.h:libl4/l4/gnu/misc.h" ;;
+  "include/l4/gnu/pagefault.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/pagefault.h:libl4/l4/gnu/pagefault.h" ;;
+  "include/l4/gnu/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/schedule.h:libl4/l4/gnu/schedule.h" ;;
+  "include/l4/gnu/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/space.h:libl4/l4/gnu/space.h" ;;
+  "include/l4/gnu/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/syscall.h:libl4/l4/gnu/syscall.h" ;;
+  "include/l4/gnu/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/thread.h:libl4/l4/gnu/thread.h" ;;
+  "include/l4/gnu/thread-start.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/thread-start.h:libl4/l4/gnu/thread-start.h" ;;
+  "include/l4/gnu/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/types.h:libl4/l4/gnu/types.h" ;;
+  "include/l4/gnu/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/sigma0.h:libl4/l4/gnu/sigma0.h" ;;
+  "include/l4/bits/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/ipc.h:libl4/${arch}/l4/bits/ipc.h" ;;
+  "include/l4/bits/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/kip.h:libl4/${arch}/l4/bits/kip.h" ;;
+  "include/l4/bits/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/math.h:libl4/${arch}/l4/bits/math.h" ;;
+  "include/l4/bits/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/misc.h:libl4/${arch}/l4/bits/misc.h" ;;
+  "include/l4/bits/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/arch.h:libl4/${arch}/l4/bits/arch.h" ;;
+  "include/l4/bits/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/space.h:libl4/${arch}/l4/bits/space.h" ;;
+  "include/l4/bits/stubs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/stubs.h:libl4/${arch}/l4/bits/stubs.h" ;;
+  "include/l4/bits/stubs-init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/stubs-init.h:libl4/${arch}/l4/bits/stubs-init.h" ;;
+  "include/l4/bits/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/syscall.h:libl4/${arch}/l4/bits/syscall.h" ;;
+  "include/l4/bits/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/types.h:libl4/${arch}/l4/bits/types.h" ;;
+  "include/l4/bits/vregs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/vregs.h:libl4/${arch}/l4/bits/vregs.h" ;;
+  "include/l4/bits/compat/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/ipc.h:libl4/${arch}/l4/bits/compat/ipc.h" ;;
+  "include/l4/bits/compat/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/misc.h:libl4/${arch}/l4/bits/compat/misc.h" ;;
+  "include/l4/bits/compat/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/arch.h:libl4/${arch}/l4/bits/compat/arch.h" ;;
+  "include/l4/bits/compat/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/space.h:libl4/${arch}/l4/bits/compat/space.h" ;;
+  "include/l4/bits/gnu/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/ipc.h:libl4/${arch}/l4/bits/gnu/ipc.h" ;;
+  "include/l4/bits/gnu/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/kip.h:libl4/${arch}/l4/bits/gnu/kip.h" ;;
+  "include/l4/bits/gnu/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/misc.h:libl4/${arch}/l4/bits/gnu/misc.h" ;;
+  "include/l4/bits/gnu/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/arch.h:libl4/${arch}/l4/bits/gnu/arch.h" ;;
+  "include/l4/bits/gnu/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/space.h:libl4/${arch}/l4/bits/gnu/space.h" ;;
+  "include/atomic.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/atomic.h:platform/atomic.h" ;;
+  "include/bits/atomic.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/atomic.h:platform/${arch}/bits/atomic.h" ;;
+  "include/compiler.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/compiler.h:platform/compiler.h" ;;
+  "include/hurd/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/types.h:hurd/types.h" ;;
+  "include/hurd/startup.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/startup.h:hurd/startup.h" ;;
+  "include/hurd/ihash.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/ihash.h:libhurd-ihash/ihash.h" ;;
+  "include/hurd/btree.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/btree.h:libhurd-btree/btree.h" ;;
+  "include/hurd/slab.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/slab.h:libhurd-slab/slab.h" ;;
+  "include/hurd/cap.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/cap.h:libhurd-cap/cap.h" ;;
+  "include/hurd/cap-server.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/cap-server.h:libhurd-cap-server/cap-server.h" ;;
+  "include/hurd/mm.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/mm.h:libhurd-mm/mm.h" ;;
+  "include/hurd/vm.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/vm.h:libhurd-mm/vm.h" ;;
+  "include/hurd/anonymous.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/anonymous.h:libhurd-mm/anonymous.h" ;;
+  "include/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/pthread.h:libpthread/include/pthread.h" ;;
+  "include/pthread/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/pthread/pthread.h:libpthread/include/pthread/pthread.h" ;;
+  "include/bits/memory.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/memory.h:libpthread/sysdeps/${arch}/bits/memory.h" ;;
+  "include/bits/spin-lock.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/spin-lock.h:libpthread/sysdeps/${arch}/bits/spin-lock.h" ;;
+  "include/bits/pthreadtypes.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthreadtypes.h:libpthread/sysdeps/generic/bits/pthreadtypes.h" ;;
+  "include/bits/barrier-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/barrier-attr.h:libpthread/sysdeps/generic/bits/barrier-attr.h" ;;
+  "include/bits/barrier.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/barrier.h:libpthread/sysdeps/generic/bits/barrier.h" ;;
+  "include/bits/cancelation.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/cancelation.h:libpthread/sysdeps/generic/bits/cancelation.h" ;;
+  "include/bits/condition-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/condition-attr.h:libpthread/sysdeps/generic/bits/condition-attr.h" 
;;
+  "include/bits/condition.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/condition.h:libpthread/sysdeps/generic/bits/condition.h" ;;
+  "include/bits/mutex-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/mutex-attr.h:libpthread/sysdeps/generic/bits/mutex-attr.h" ;;
+  "include/bits/mutex.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/mutex.h:libpthread/sysdeps/generic/bits/mutex.h" ;;
+  "include/bits/once.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/once.h:libpthread/sysdeps/generic/bits/once.h" ;;
+  "include/bits/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthread.h:libpthread/sysdeps/generic/bits/pthread.h" ;;
+  "include/bits/rwlock-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/rwlock-attr.h:libpthread/sysdeps/generic/bits/rwlock-attr.h" ;;
+  "include/bits/rwlock.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/rwlock.h:libpthread/sysdeps/generic/bits/rwlock.h" ;;
+  "include/bits/thread-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-attr.h:libpthread/sysdeps/generic/bits/thread-attr.h" ;;
+  "include/bits/thread-barrier.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-barrier.h:libpthread/sysdeps/generic/bits/thread-barrier.h" 
;;
+  "include/bits/thread-specific.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-specific.h:libpthread/sysdeps/generic/bits/thread-specific.h"
 ;;
+  "include/bits/pthread-np.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthread-np.h:libpthread/sysdeps/l4/bits/pthread-np.h" ;;
+  "include/hurd/wortel.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/wortel.h:wortel/wortel.h" ;;
+  "include/hurd/physmem.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/physmem.h:physmem/physmem.h" ;;
+  "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+  "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
+  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used.  Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
+  test "${CONFIG_LINKS+set}" = set || CONFIG_LINKS=$config_links
+  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+fi
+
+# Have a temporary directory for convenience.  Make it in the build tree
+# simply because there is no reason to put it here, and in addition,
+# creating and moving files from /tmp can sometimes cause problems.
+# Create a temporary directory, and hook for its removal unless debugging.
+$debug ||
+{
+  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
+  trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+
+# Create a (secure) tmp directory for tmp files.
+
+{
+  tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
+  test -n "$tmp" && test -d "$tmp"
+}  ||
+{
+  tmp=./confstat$$-$RANDOM
+  (umask 077 && mkdir $tmp)
+} ||
+{
+   echo "$me: cannot create a temporary directory in ." >&2
+   { (exit 1); exit 1; }
+}
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+
+#
+# CONFIG_FILES section.
+#
+
+# No need to generate the scripts if there are no CONFIG_FILES.
+# This happens for instance when ./config.status config.h
+if test -n "\$CONFIG_FILES"; then
+  # Protect against being on the right side of a sed subst in config.status.
+  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
+   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
+s,@SHELL@,$SHELL,;t t
+s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
+s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
+s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
+s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
+s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
+s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
+s,@exec_prefix@,$exec_prefix,;t t
+s,@prefix@,$prefix,;t t
+s,@program_transform_name@,$program_transform_name,;t t
+s,@bindir@,$bindir,;t t
+s,@sbindir@,$sbindir,;t t
+s,@libexecdir@,$libexecdir,;t t
+s,@datadir@,$datadir,;t t
+s,@sysconfdir@,$sysconfdir,;t t
+s,@sharedstatedir@,$sharedstatedir,;t t
+s,@localstatedir@,$localstatedir,;t t
+s,@libdir@,$libdir,;t t
+s,@includedir@,$includedir,;t t
+s,@oldincludedir@,$oldincludedir,;t t
+s,@infodir@,$infodir,;t t
+s,@mandir@,$mandir,;t t
+s,@build_alias@,$build_alias,;t t
+s,@host_alias@,$host_alias,;t t
+s,@target_alias@,$target_alias,;t t
+s,@DEFS@,$DEFS,;t t
+s,@ECHO_C@,$ECHO_C,;t t
+s,@ECHO_N@,$ECHO_N,;t t
+s,@ECHO_T@,$ECHO_T,;t t
+s,@LIBS@,$LIBS,;t t
+s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
+s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
+s,@INSTALL_DATA@,$INSTALL_DATA,;t t
+s,@CYGPATH_W@,$CYGPATH_W,;t t
+s,@PACKAGE@,$PACKAGE,;t t
+s,@VERSION@,$VERSION,;t t
+s,@ACLOCAL@,$ACLOCAL,;t t
+s,@AUTOCONF@,$AUTOCONF,;t t
+s,@AUTOMAKE@,$AUTOMAKE,;t t
+s,@AUTOHEADER@,$AUTOHEADER,;t t
+s,@MAKEINFO@,$MAKEINFO,;t t
+s,@install_sh@,$install_sh,;t t
+s,@STRIP@,$STRIP,;t t
+s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
+s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
+s,@mkdir_p@,$mkdir_p,;t t
+s,@AWK@,$AWK,;t t
+s,@SET_MAKE@,$SET_MAKE,;t t
+s,@am__leading_dot@,$am__leading_dot,;t t
+s,@AMTAR@,$AMTAR,;t t
+s,@am__tar@,$am__tar,;t t
+s,@am__untar@,$am__untar,;t t
+s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
+s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
+s,@MAINT@,$MAINT,;t t
+s,@CC@,$CC,;t t
+s,@CFLAGS@,$CFLAGS,;t t
+s,@LDFLAGS@,$LDFLAGS,;t t
+s,@CPPFLAGS@,$CPPFLAGS,;t t
+s,@ac_ct_CC@,$ac_ct_CC,;t t
+s,@EXEEXT@,$EXEEXT,;t t
+s,@OBJEXT@,$OBJEXT,;t t
+s,@DEPDIR@,$DEPDIR,;t t
+s,@am__include@,$am__include,;t t
+s,@am__quote@,$am__quote,;t t
+s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t
+s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
+s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
+s,@CCDEPMODE@,$CCDEPMODE,;t t
+s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
+s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
+s,@IDL4CONFIG@,$IDL4CONFIG,;t t
+s,@ac_pt_IDL4CONFIG@,$ac_pt_IDL4CONFIG,;t t
+s,@CCAS@,$CCAS,;t t
+s,@CCASFLAGS@,$CCASFLAGS,;t t
+s,@RANLIB@,$RANLIB,;t t
+s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
+s,@AR@,$AR,;t t
+s,@ac_ct_AR@,$ac_ct_AR,;t t
+s,@NM@,$NM,;t t
+s,@ac_ct_NM@,$ac_ct_NM,;t t
+s,@IDL4@,$IDL4,;t t
+s,@IDL4FLAGS@,$IDL4FLAGS,;t t
+s,@ac_pt_IDL4@,$ac_pt_IDL4,;t t
+s,@SED@,$SED,;t t
+s,@SORT@,$SORT,;t t
+s,@LATEX@,$LATEX,;t t
+s,@DVIPS@,$DVIPS,;t t
+s,@PS2PDF@,$PS2PDF,;t t
+s,@FIG2DEV@,$FIG2DEV,;t t
+s,@build@,$build,;t t
+s,@build_cpu@,$build_cpu,;t t
+s,@build_vendor@,$build_vendor,;t t
+s,@build_os@,$build_os,;t t
+s,@host@,$host,;t t
+s,@host_cpu@,$host_cpu,;t t
+s,@host_vendor@,$host_vendor,;t t
+s,@host_os@,$host_os,;t t
+s,@STATIC_GLIBC@,$STATIC_GLIBC,;t t
+s,@ARCH_ALPHA_TRUE@,$ARCH_ALPHA_TRUE,;t t
+s,@ARCH_ALPHA_FALSE@,$ARCH_ALPHA_FALSE,;t t
+s,@ARCH_AMD64_TRUE@,$ARCH_AMD64_TRUE,;t t
+s,@ARCH_AMD64_FALSE@,$ARCH_AMD64_FALSE,;t t
+s,@ARCH_IA32_TRUE@,$ARCH_IA32_TRUE,;t t
+s,@ARCH_IA32_FALSE@,$ARCH_IA32_FALSE,;t t
+s,@ARCH_IA64_TRUE@,$ARCH_IA64_TRUE,;t t
+s,@ARCH_IA64_FALSE@,$ARCH_IA64_FALSE,;t t
+s,@ARCH_POWERPC_TRUE@,$ARCH_POWERPC_TRUE,;t t
+s,@ARCH_POWERPC_FALSE@,$ARCH_POWERPC_FALSE,;t t
+s,@ARCH_POWERPC64_TRUE@,$ARCH_POWERPC64_TRUE,;t t
+s,@ARCH_POWERPC64_FALSE@,$ARCH_POWERPC64_FALSE,;t t
+s,@HURD_LADEN_LOAD_ADDRESS@,$HURD_LADEN_LOAD_ADDRESS,;t t
+s,@HURD_WORTEL_LOAD_ADDRESS@,$HURD_WORTEL_LOAD_ADDRESS,;t t
+s,@HURD_PHYSMEM_LOAD_ADDRESS@,$HURD_PHYSMEM_LOAD_ADDRESS,;t t
+s,@WITH_LIBC_TRUE@,$WITH_LIBC_TRUE,;t t
+s,@WITH_LIBC_FALSE@,$WITH_LIBC_FALSE,;t t
+s,@LIB@&address@hidden@,$LIB@&address@hidden,;t t
+s,@LTLIBOBJS@,$LTLIBOBJS,;t t
+CEOF
+
+_ACEOF
+
+  cat >>$CONFIG_STATUS <<\_ACEOF
+  # Split the substitutions into bite-sized pieces for seds with
+  # small command number limits, like on Digital OSF/1 and HP-UX.
+  ac_max_sed_lines=48
+  ac_sed_frag=1 # Number of current file.
+  ac_beg=1 # First line for current file.
+  ac_end=$ac_max_sed_lines # Line after last line for current file.
+  ac_more_lines=:
+  ac_sed_cmds=
+  while $ac_more_lines; do
+    if test $ac_beg -gt 1; then
+      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    else
+      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    fi
+    if test ! -s $tmp/subs.frag; then
+      ac_more_lines=false
+    else
+      # The purpose of the label and of the branching condition is to
+      # speed up the sed processing (if there are no `@' at all, there
+      # is no need to browse any of the substitutions).
+      # These are the two extra sed commands mentioned above.
+      (echo ':t
+  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) 
>$tmp/subs-$ac_sed_frag.sed
+      if test -z "$ac_sed_cmds"; then
+       ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
+      else
+       ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
+      fi
+      ac_sed_frag=`expr $ac_sed_frag + 1`
+      ac_beg=$ac_end
+      ac_end=`expr $ac_end + $ac_max_sed_lines`
+    fi
+  done
+  if test -z "$ac_sed_cmds"; then
+    ac_sed_cmds=cat
+  fi
+fi # test -n "$CONFIG_FILES"
+
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
+  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+       cat >$tmp/stdin
+       ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
+  esac
+
+  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
+  ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_file" : 'X\(//\)[^/]' \| \
+        X"$ac_file" : 'X\(//\)$' \| \
+        X"$ac_file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  case $INSTALL in
+  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+  *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
+  esac
+
+  if test x"$ac_file" != x-; then
+    { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+    rm -f "$ac_file"
+  fi
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated by config.status.  */
+  if test x"$ac_file" = x-; then
+    configure_input=
+  else
+    configure_input="$ac_file.  "
+  fi
+  configure_input=$configure_input"Generated from `echo $ac_file_in |
+                                    sed 's,.*/,,'` by configure."
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+        # Absolute (can't be DOS-style, as IFS=:)
+        test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        echo "$f";;
+      *) # Relative
+        if test -f "$f"; then
+          # Build tree
+          echo "$f"
+        elif test -f "$srcdir/$f"; then
+          # Source tree
+          echo "$srcdir/$f"
+        else
+          # /dev/null tree
+          { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+  sed "$ac_vpsub
+$extrasub
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s,@configure_input@,$configure_input,;t t
+s,@srcdir@,$ac_srcdir,;t t
+s,@abs_srcdir@,$ac_abs_srcdir,;t t
+s,@top_srcdir@,$ac_top_srcdir,;t t
+s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
+s,@builddir@,$ac_builddir,;t t
+s,@abs_builddir@,$ac_abs_builddir,;t t
+s,@top_builddir@,$ac_top_builddir,;t t
+s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
+s,@INSTALL@,$ac_INSTALL,;t t
+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
+  rm -f $tmp/stdin
+  if test x"$ac_file" != x-; then
+    mv $tmp/out $ac_file
+  else
+    cat $tmp/out
+    rm -f $tmp/out
+  fi
+
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_HEADER section.
+#
+
+# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
+# NAME is the cpp macro being defined and VALUE is the value it is being given.
+#
+# ac_d sets the value in "#define NAME VALUE" lines.
+ac_dA='s,^\([   ]*\)#\([        ]*define[       ][      ]*\)'
+ac_dB='[        ].*$,\1#\2'
+ac_dC=' '
+ac_dD=',;t'
+# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+ac_uA='s,^\([   ]*\)#\([        ]*\)undef\([    ][      ]*\)'
+ac_uB='$,\1#\2define\3'
+ac_uC=' '
+ac_uD=',;t'
+
+for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
+  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+       cat >$tmp/stdin
+       ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
+  esac
+
+  test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+        # Absolute (can't be DOS-style, as IFS=:)
+        test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        # Do quote $f, to prevent DOS paths from being IFS'd.
+        echo "$f";;
+      *) # Relative
+        if test -f "$f"; then
+          # Build tree
+          echo "$f"
+        elif test -f "$srcdir/$f"; then
+          # Source tree
+          echo "$srcdir/$f"
+        else
+          # /dev/null tree
+          { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+  # Remove the trailing spaces.
+  sed 's/[      ]*$//' $ac_file_inputs >$tmp/in
+
+_ACEOF
+
+# Transform confdefs.h into two sed scripts, `conftest.defines' and
+# `conftest.undefs', that substitutes the proper values into
+# config.h.in to produce config.h.  The first handles `#define'
+# templates, and the second `#undef' templates.
+# And first: Protect against being on the right side of a sed subst in
+# config.status.  Protect against being in an unquoted here document
+# in config.status.
+rm -f conftest.defines conftest.undefs
+# Using a here document instead of a string reduces the quoting nightmare.
+# Putting comments in sed scripts is not portable.
+#
+# `end' is used to avoid that the second main sed command (meant for
+# 0-ary CPP macros) applies to n-ary macro definitions.
+# See the Autoconf documentation for `clear'.
+cat >confdef2sed.sed <<\_ACEOF
+s/[\\&,]/\\&/g
+s,[\\$`],\\&,g
+t clear
+: clear
+s,^[    ]*#[    ]*define[       ][      ]*\([^  (][^    (]*\)\(([^)]*)\)[      
 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
+t end
+s,^[    ]*#[    ]*define[       ][      ]*\([^  ][^     ]*\)[   
]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
+: end
+_ACEOF
+# If some macros were called several times there might be several times
+# the same #defines, which is useless.  Nevertheless, we may not want to
+# sort them, since we want the *last* AC-DEFINE to be honored.
+uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
+sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
+rm -f confdef2sed.sed
+
+# This sed command replaces #undef with comments.  This is necessary, for
+# example, in the case of _POSIX_SOURCE, which is predefined and required
+# on some systems where configure will not decide to define it.
+cat >>conftest.undefs <<\_ACEOF
+s,^[    ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
+_ACEOF
+
+# Break up conftest.defines because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
+echo '  if grep "^[     ]*#[    ]*define" $tmp/in >/dev/null; then' 
>>$CONFIG_STATUS
+echo '  # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
+echo '  :' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.defines >/dev/null
+do
+  # Write a limited-size here document to $tmp/defines.sed.
+  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#define' lines.
+  echo '/^[     ]*#[    ]*define/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/defines.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
+  rm -f conftest.defines
+  mv conftest.tail conftest.defines
+done
+rm -f conftest.defines
+echo '  fi # grep' >>$CONFIG_STATUS
+echo >>$CONFIG_STATUS
+
+# Break up conftest.undefs because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.undefs >/dev/null
+do
+  # Write a limited-size here document to $tmp/undefs.sed.
+  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#undef'
+  echo '/^[     ]*#[    ]*undef/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
+  rm -f conftest.undefs
+  mv conftest.tail conftest.undefs
+done
+rm -f conftest.undefs
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated by config.status.  */
+  if test x"$ac_file" = x-; then
+    echo "/* Generated by configure.  */" >$tmp/config.h
+  else
+    echo "/* $ac_file.  Generated by configure.  */" >$tmp/config.h
+  fi
+  cat $tmp/in >>$tmp/config.h
+  rm -f $tmp/in
+  if test x"$ac_file" != x-; then
+    if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
+      { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+echo "$as_me: $ac_file is unchanged" >&6;}
+    else
+      ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_file" : 'X\(//\)[^/]' \| \
+        X"$ac_file" : 'X\(//\)$' \| \
+        X"$ac_file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+      { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+      rm -f $ac_file
+      mv $tmp/config.h $ac_file
+    fi
+  else
+    cat $tmp/config.h
+    rm -f $tmp/config.h
+  fi
+# Compute $ac_file's index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+  case $_am_header in
+    $ac_file | $ac_file:* )
+      break ;;
+    * )
+      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+  esac
+done
+echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null ||
+$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X$ac_file : 'X\(//\)[^/]' \| \
+        X$ac_file : 'X\(//\)$' \| \
+        X$ac_file : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X$ac_file |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`/stamp-h$_am_stamp_count
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_LINKS section.
+#
+
+for ac_file in : $CONFIG_LINKS; do test "x$ac_file" = x: && continue
+  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+
+  { echo "$as_me:$LINENO: linking $srcdir/$ac_source to $ac_dest" >&5
+echo "$as_me: linking $srcdir/$ac_source to $ac_dest" >&6;}
+
+  if test ! -r $srcdir/$ac_source; then
+    { { echo "$as_me:$LINENO: error: $srcdir/$ac_source: file not found" >&5
+echo "$as_me: error: $srcdir/$ac_source: file not found" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+  rm -f $ac_dest
+
+  # Make relative symlinks.
+  ac_dest_dir=`(dirname "$ac_dest") 2>/dev/null ||
+$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_dest" : 'X\(//\)[^/]' \| \
+        X"$ac_dest" : 'X\(//\)$' \| \
+        X"$ac_dest" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_dest" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dest_dir"
+  else
+    as_dir="$ac_dest_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory 
\"$ac_dest_dir\"" >&5
+echo "$as_me: error: cannot create directory \"$ac_dest_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dest_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dest_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dest_dir";;
+*)
+  case "$ac_dest_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dest_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dest_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  case $srcdir in
+  [\\/$]* | ?:[\\/]* ) ac_rel_source=$srcdir/$ac_source ;;
+      *) ac_rel_source=$ac_top_builddir$srcdir/$ac_source ;;
+  esac
+
+  # Try a symlink, then a hard link, then a copy.
+  ln -s $ac_rel_source $ac_dest 2>/dev/null ||
+    ln $srcdir/$ac_source $ac_dest 2>/dev/null ||
+    cp -p $srcdir/$ac_source $ac_dest ||
+    { { echo "$as_me:$LINENO: error: cannot link or copy $srcdir/$ac_source to 
$ac_dest" >&5
+echo "$as_me: error: cannot link or copy $srcdir/$ac_source to $ac_dest" >&2;}
+   { (exit 1); exit 1; }; }
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_COMMANDS section.
+#
+for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
+  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+  ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
+$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_dest" : 'X\(//\)[^/]' \| \
+        X"$ac_dest" : 'X\(//\)$' \| \
+        X"$ac_dest" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_dest" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
+echo "$as_me: executing $ac_dest commands" >&6;}
+  case $ac_dest in
+    depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
+  # Strip MF so we end up with the name of the file.
+  mf=`echo "$mf" | sed -e 's/:.*$//'`
+  # Check whether this is an Automake generated Makefile or not.
+  # We used to match only the files named `Makefile.in', but
+  # some people rename them; so instead we look at the file content.
+  # Grep'ing the first line is not enough: some people post-process
+  # each Makefile.in and add a new line on top of each file to say so.
+  # So let's grep whole file.
+  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+    dirpart=`(dirname "$mf") 2>/dev/null ||
+$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$mf" : 'X\(//\)[^/]' \| \
+        X"$mf" : 'X\(//\)$' \| \
+        X"$mf" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$mf" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  else
+    continue
+  fi
+  # Extract the definition of DEPDIR, am__include, and am__quote
+  # from the Makefile without running `make'.
+  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+  test -z "$DEPDIR" && continue
+  am__include=`sed -n 's/^am__include = //p' < "$mf"`
+  test -z "am__include" && continue
+  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+  # When using ansi2knr, U may be empty or an underscore; expand it
+  U=`sed -n 's/^U = //p' < "$mf"`
+  # Find all dependency output files, they are included files with
+  # $(DEPDIR) in their names.  We invoke sed twice because it is the
+  # simplest approach to changing $(DEPDIR) to its actual value in the
+  # expansion.
+  for file in `sed -n "
+    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+    # Make sure the directory exists.
+    test -f "$dirpart/$file" && continue
+    fdir=`(dirname "$file") 2>/dev/null ||
+$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$file" : 'X\(//\)[^/]' \| \
+        X"$file" : 'X\(//\)$' \| \
+        X"$file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    { if $as_mkdir_p; then
+    mkdir -p $dirpart/$fdir
+  else
+    as_dir=$dirpart/$fdir
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory 
$dirpart/$fdir" >&5
+echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+    # echo "creating $dirpart/$file"
+    echo '# dummy' > "$dirpart/$file"
+  done
+done
+ ;;
+  esac
+done
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+{ (exit 0); exit 0; }
+_ACEOF
+chmod +x $CONFIG_STATUS
+ac_clean_files=$ac_clean_files_save
+
+
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded.  So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status.  When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+  ac_cs_success=:
+  ac_config_status_args=
+  test "$silent" = yes &&
+    ac_config_status_args="$ac_config_status_args --quiet"
+  exec 5>/dev/null
+  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
+  exec 5>>config.log
+  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
+  # would make configure fail if this is the last instruction.
+  $ac_cs_success || { (exit 1); exit 1; }
+fi
+
diff -Naur hurd-l4/autom4te.cache/requests hurd-l4-new/autom4te.cache/requests
--- hurd-l4/autom4te.cache/requests     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/autom4te.cache/requests 2005-07-13 18:30:52.259806616 +0200
@@ -0,0 +1,276 @@
+# This file was generated.
+# It contains the lists of macros which have been traced.
+# It can be safely removed.
+
address@hidden = (
+             bless( [
+                      '0',
+                      1,
+                      [
+                        '/usr/share/autoconf'
+                      ],
+                      [
+                        '/usr/share/autoconf/autoconf/autoconf.m4f',
+                        '/usr/share/aclocal-1.9/amversion.m4',
+                        '/usr/share/aclocal-1.9/as.m4',
+                        '/usr/share/aclocal-1.9/auxdir.m4',
+                        '/usr/share/aclocal-1.9/cond.m4',
+                        '/usr/share/aclocal-1.9/depend.m4',
+                        '/usr/share/aclocal-1.9/depout.m4',
+                        '/usr/share/aclocal-1.9/init.m4',
+                        '/usr/share/aclocal-1.9/install-sh.m4',
+                        '/usr/share/aclocal-1.9/lead-dot.m4',
+                        '/usr/share/aclocal-1.9/maintainer.m4',
+                        '/usr/share/aclocal-1.9/make.m4',
+                        '/usr/share/aclocal-1.9/missing.m4',
+                        '/usr/share/aclocal-1.9/mkdirp.m4',
+                        '/usr/share/aclocal-1.9/options.m4',
+                        '/usr/share/aclocal-1.9/runlog.m4',
+                        '/usr/share/aclocal-1.9/sanity.m4',
+                        '/usr/share/aclocal-1.9/strip.m4',
+                        '/usr/share/aclocal-1.9/tar.m4',
+                        'acinclude.m4',
+                        'configure.ac'
+                      ],
+                      {
+                        'm4_pattern_forbid' => 1,
+                        'AC_CONFIG_LIBOBJ_DIR' => 1,
+                        'AC_TYPE_OFF_T' => 1,
+                        'AC_C_VOLATILE' => 1,
+                        'AC_FUNC_CLOSEDIR_VOID' => 1,
+                        'AC_REPLACE_FNMATCH' => 1,
+                        'AC_DEFUN' => 1,
+                        'AC_PROG_LIBTOOL' => 1,
+                        'AC_FUNC_STAT' => 1,
+                        'AM_PROG_MKDIR_P' => 1,
+                        'AC_HEADER_TIME' => 1,
+                        'AC_FUNC_WAIT3' => 1,
+                        'AC_STRUCT_TM' => 1,
+                        'AC_FUNC_LSTAT' => 1,
+                        'AM_AUTOMAKE_VERSION' => 1,
+                        'AC_TYPE_MODE_T' => 1,
+                        'AC_FUNC_GETMNTENT' => 1,
+                        'AM_MISSING_HAS_RUN' => 1,
+                        'AC_FUNC_STRTOD' => 1,
+                        'AC_CHECK_HEADERS' => 1,
+                        'AM_MISSING_PROG' => 1,
+                        'AC_FUNC_STRNLEN' => 1,
+                        'm4_sinclude' => 1,
+                        'AC_PROG_CXX' => 1,
+                        'AC_PATH_X' => 1,
+                        'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1,
+                        'AM_PROG_INSTALL_STRIP' => 1,
+                        'AC_PROG_AWK' => 1,
+                        '_m4_warn' => 1,
+                        'AC_HEADER_STDC' => 1,
+                        'AC_HEADER_MAJOR' => 1,
+                        'AM_SANITY_CHECK' => 1,
+                        '_AM_PROG_TAR' => 1,
+                        'AC_FUNC_ERROR_AT_LINE' => 1,
+                        'AC_PROG_GCC_TRADITIONAL' => 1,
+                        'AC_LIBSOURCE' => 1,
+                        'AM_DEP_TRACK' => 1,
+                        'AC_FUNC_MBRTOWC' => 1,
+                        'AC_STRUCT_ST_BLOCKS' => 1,
+                        'AC_TYPE_SIGNAL' => 1,
+                        'AC_TYPE_UID_T' => 1,
+                        '_AM_IF_OPTION' => 1,
+                        'AC_CONFIG_AUX_DIR' => 1,
+                        'AC_PROG_MAKE_SET' => 1,
+                        'sinclude' => 1,
+                        'm4_pattern_allow' => 1,
+                        'AM_SET_LEADING_DOT' => 1,
+                        'AC_DEFINE_TRACE_LITERAL' => 1,
+                        '_AM_DEPENDENCIES' => 1,
+                        'AC_FUNC_STRERROR_R' => 1,
+                        'AC_PROG_CC' => 1,
+                        'AC_FUNC_FORK' => 1,
+                        'AC_DECL_SYS_SIGLIST' => 1,
+                        'HURD_LOAD_ADDRESS' => 1,
+                        'AC_FUNC_VPRINTF' => 1,
+                        'AC_FUNC_STRCOLL' => 1,
+                        'AU_DEFUN' => 1,
+                        'AC_PROG_YACC' => 1,
+                        'AC_INIT' => 1,
+                        'AC_STRUCT_TIMEZONE' => 1,
+                        'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
+                        'jm_MAINTAINER_MODE' => 1,
+                        'AC_FUNC_CHOWN' => 1,
+                        'AC_SUBST' => 1,
+                        'AC_FUNC_ALLOCA' => 1,
+                        '_AM_SET_OPTION' => 1,
+                        'AC_CANONICAL_HOST' => 1,
+                        'AC_FUNC_GETPGRP' => 1,
+                        'AC_PROG_RANLIB' => 1,
+                        'AC_FUNC_SETPGRP' => 1,
+                        'AM_INIT_AUTOMAKE' => 1,
+                        'AC_CONFIG_SUBDIRS' => 1,
+                        'AC_FUNC_MMAP' => 1,
+                        'AC_FUNC_REALLOC' => 1,
+                        'AC_TYPE_SIZE_T' => 1,
+                        'AC_CONFIG_LINKS' => 1,
+                        'AC_CHECK_TYPES' => 1,
+                        'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
+                        'AC_CHECK_MEMBERS' => 1,
+                        'AM_MAINTAINER_MODE' => 1,
+                        'AC_DEFUN_ONCE' => 1,
+                        'AC_FUNC_UTIME_NULL' => 1,
+                        'AC_FUNC_SELECT_ARGTYPES' => 1,
+                        'AC_HEADER_STAT' => 1,
+                        'AC_FUNC_STRFTIME' => 1,
+                        'AC_PROG_CPP' => 1,
+                        'AC_C_INLINE' => 1,
+                        'AC_TYPE_PID_T' => 1,
+                        'AC_PROG_LEX' => 1,
+                        'AC_C_CONST' => 1,
+                        'AC_CONFIG_FILES' => 1,
+                        'include' => 1,
+                        'AC_FUNC_SETVBUF_REVERSED' => 1,
+                        'AM_PROG_AS' => 1,
+                        'AC_PROG_INSTALL' => 1,
+                        'AM_AUX_DIR_EXPAND' => 1,
+                        'AM_GNU_GETTEXT' => 1,
+                        'AC_CHECK_LIB' => 1,
+                        'AC_FUNC_OBSTACK' => 1,
+                        '_AM_SET_OPTIONS' => 1,
+                        'AC_FUNC_MALLOC' => 1,
+                        'AM_RUN_LOG' => 1,
+                        '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
+                        'AC_FUNC_GETGROUPS' => 1,
+                        'AC_FUNC_GETLOADAVG' => 1,
+                        'AH_OUTPUT' => 1,
+                        'AC_FUNC_FSEEKO' => 1,
+                        'AM_PROG_CC_C_O' => 1,
+                        '_AM_MANGLE_OPTION' => 1,
+                        'AC_CANONICAL_SYSTEM' => 1,
+                        'AM_CONDITIONAL' => 1,
+                        'AC_FUNC_MKTIME' => 1,
+                        'AC_CONFIG_HEADERS' => 1,
+                        'AM_SET_DEPDIR' => 1,
+                        'AC_HEADER_SYS_WAIT' => 1,
+                        'AC_PROG_LN_S' => 1,
+                        'AC_FUNC_MEMCMP' => 1,
+                        'm4_include' => 1,
+                        'AM_PROG_INSTALL_SH' => 1,
+                        'AC_HEADER_DIRENT' => 1,
+                        '_AC_AM_CONFIG_HEADER_HOOK' => 1,
+                        'AC_CHECK_FUNCS' => 1,
+                        'AM_MAKE_INCLUDE' => 1
+                      }
+                    ], 'Autom4te::Request' ),
+             bless( [
+                      '1',
+                      1,
+                      [
+                        '/usr/share/autoconf'
+                      ],
+                      [
+                        '/usr/share/autoconf/autoconf/autoconf.m4f',
+                        'aclocal.m4',
+                        'configure.ac'
+                      ],
+                      {
+                        '_LT_AC_TAGCONFIG' => 1,
+                        'm4_pattern_forbid' => 1,
+                        'AC_CANONICAL_TARGET' => 1,
+                        'AC_CONFIG_LIBOBJ_DIR' => 1,
+                        'AC_C_VOLATILE' => 1,
+                        'AC_TYPE_OFF_T' => 1,
+                        'AC_FUNC_CLOSEDIR_VOID' => 1,
+                        'AC_REPLACE_FNMATCH' => 1,
+                        'AC_PROG_LIBTOOL' => 1,
+                        'AC_FUNC_STAT' => 1,
+                        'AC_FUNC_WAIT3' => 1,
+                        'AC_HEADER_TIME' => 1,
+                        'AC_FUNC_LSTAT' => 1,
+                        'AC_STRUCT_TM' => 1,
+                        'AM_AUTOMAKE_VERSION' => 1,
+                        'AC_FUNC_GETMNTENT' => 1,
+                        'AC_TYPE_MODE_T' => 1,
+                        'AC_FUNC_STRTOD' => 1,
+                        'AC_CHECK_HEADERS' => 1,
+                        'AC_FUNC_STRNLEN' => 1,
+                        'm4_sinclude' => 1,
+                        'AC_PROG_CXX' => 1,
+                        'AC_PATH_X' => 1,
+                        'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1,
+                        'AC_PROG_AWK' => 1,
+                        '_m4_warn' => 1,
+                        'AC_HEADER_STDC' => 1,
+                        'AC_HEADER_MAJOR' => 1,
+                        'AC_FUNC_ERROR_AT_LINE' => 1,
+                        'AC_PROG_GCC_TRADITIONAL' => 1,
+                        'AC_LIBSOURCE' => 1,
+                        'AC_FUNC_MBRTOWC' => 1,
+                        'AC_STRUCT_ST_BLOCKS' => 1,
+                        'AC_CANONICAL_BUILD' => 1,
+                        'AC_TYPE_SIGNAL' => 1,
+                        'AC_TYPE_UID_T' => 1,
+                        'AC_CONFIG_AUX_DIR' => 1,
+                        'AC_PROG_MAKE_SET' => 1,
+                        'm4_pattern_allow' => 1,
+                        'sinclude' => 1,
+                        'AC_DEFINE_TRACE_LITERAL' => 1,
+                        'AC_FUNC_STRERROR_R' => 1,
+                        'AC_PROG_CC' => 1,
+                        'AC_FUNC_FORK' => 1,
+                        'AC_DECL_SYS_SIGLIST' => 1,
+                        'AC_FUNC_STRCOLL' => 1,
+                        'AC_FUNC_VPRINTF' => 1,
+                        'AC_PROG_YACC' => 1,
+                        'AC_STRUCT_TIMEZONE' => 1,
+                        'AC_INIT' => 1,
+                        'AC_FUNC_CHOWN' => 1,
+                        'AC_SUBST' => 1,
+                        'AC_FUNC_ALLOCA' => 1,
+                        'AC_CANONICAL_HOST' => 1,
+                        'AC_FUNC_GETPGRP' => 1,
+                        'AC_PROG_RANLIB' => 1,
+                        'AM_INIT_AUTOMAKE' => 1,
+                        'AC_FUNC_SETPGRP' => 1,
+                        'AC_CONFIG_SUBDIRS' => 1,
+                        'AC_FUNC_MMAP' => 1,
+                        'AC_FUNC_REALLOC' => 1,
+                        'AC_TYPE_SIZE_T' => 1,
+                        'AC_CONFIG_LINKS' => 1,
+                        'AC_CHECK_TYPES' => 1,
+                        'LT_SUPPORTED_TAG' => 1,
+                        'AC_CHECK_MEMBERS' => 1,
+                        'AM_MAINTAINER_MODE' => 1,
+                        'AC_FUNC_UTIME_NULL' => 1,
+                        'AC_FUNC_SELECT_ARGTYPES' => 1,
+                        'AC_HEADER_STAT' => 1,
+                        'AC_FUNC_STRFTIME' => 1,
+                        'AC_PROG_CPP' => 1,
+                        'AC_C_INLINE' => 1,
+                        'AM_ENABLE_MULTILIB' => 1,
+                        'AC_PROG_LEX' => 1,
+                        'AC_C_CONST' => 1,
+                        'AC_TYPE_PID_T' => 1,
+                        'AC_CONFIG_FILES' => 1,
+                        'include' => 1,
+                        'AC_FUNC_SETVBUF_REVERSED' => 1,
+                        'AC_PROG_INSTALL' => 1,
+                        'AM_GNU_GETTEXT' => 1,
+                        'AC_FUNC_OBSTACK' => 1,
+                        'AC_CHECK_LIB' => 1,
+                        'AC_FUNC_MALLOC' => 1,
+                        'AC_FUNC_GETGROUPS' => 1,
+                        'AC_FUNC_GETLOADAVG' => 1,
+                        'AH_OUTPUT' => 1,
+                        'AC_FUNC_FSEEKO' => 1,
+                        'AM_PROG_CC_C_O' => 1,
+                        'AC_FUNC_MKTIME' => 1,
+                        'AC_CANONICAL_SYSTEM' => 1,
+                        'AM_CONDITIONAL' => 1,
+                        'AC_CONFIG_HEADERS' => 1,
+                        'AC_HEADER_SYS_WAIT' => 1,
+                        'AC_FUNC_MEMCMP' => 1,
+                        'AC_PROG_LN_S' => 1,
+                        'm4_include' => 1,
+                        'AC_HEADER_DIRENT' => 1,
+                        'AC_CHECK_FUNCS' => 1
+                      }
+                    ], 'Autom4te::Request' )
+           );
+
diff -Naur hurd-l4/autom4te.cache/traces.0 hurd-l4-new/autom4te.cache/traces.0
--- hurd-l4/autom4te.cache/traces.0     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/autom4te.cache/traces.0 2005-07-13 18:30:52.260806464 +0200
@@ -0,0 +1,908 @@
+m4trace:/usr/share/aclocal-1.9/amversion.m4:13: -1- 
AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"])
+m4trace:/usr/share/aclocal-1.9/amversion.m4:20: -1- 
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.9.5])])
+m4trace:/usr/share/aclocal-1.9/as.m4:20: -1- AC_DEFUN([AM_PROG_AS], [# By 
default we simply use the C compiler to build assembly code.
+AC_REQUIRE([AC_PROG_CC])
+test "${CCAS+set}" = set || CCAS=$CC
+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS
+AC_ARG_VAR([CCAS],      [assembler compiler command (defaults to CC)])
+AC_ARG_VAR([CCASFLAGS], [assembler compiler flags (defaults to CFLAGS)])
+])
+m4trace:/usr/share/aclocal-1.9/auxdir.m4:52: -1- AC_DEFUN([AM_AUX_DIR_EXPAND], 
[dnl Rely on autoconf to set up CDPATH properly.
+AC_PREREQ([2.50])dnl
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+])
+m4trace:/usr/share/aclocal-1.9/cond.m4:32: -1- AC_DEFUN([AM_CONDITIONAL], 
[AC_PREREQ(2.52)dnl
+ ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
+       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
+AC_SUBST([$1_TRUE])
+AC_SUBST([$1_FALSE])
+if $2; then
+  $1_TRUE=
+  $1_FALSE='#'
+else
+  $1_TRUE='#'
+  $1_FALSE=
+fi
+AC_CONFIG_COMMANDS_PRE(
+[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
+  AC_MSG_ERROR([[conditional "$1" was never defined.
+Usually this means the macro was only invoked conditionally.]])
+fi])])
+m4trace:/usr/share/aclocal-1.9/depend.m4:131: -1- AC_DEFUN([_AM_DEPENDENCIES], 
[AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+
+ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
+       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
+       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
+                   [depcc="$$1"   am_compiler_list=])
+
+AC_CACHE_CHECK([dependency style of $depcc],
+               [am_cv_$1_dependencies_compiler_type],
+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+  # We make a subdir and do the tests there.  Otherwise we can end up
+  # making bogus files that we don't know about and never remove.  For
+  # instance it was reported that on HP-UX the gcc test will end up
+  # making a dummy file named `D' -- because `-MD' means `put the output
+  # in D'.
+  mkdir conftest.dir
+  # Copy depcomp to subdir because otherwise we won't find it if we're
+  # using a relative directory.
+  cp "$am_depcomp" conftest.dir
+  cd conftest.dir
+  # We will build objects and dependencies in a subdirectory because
+  # it helps to detect inapplicable dependency modes.  For instance
+  # both Tru64's cc and ICC support -MD to output dependencies as a
+  # side effect of compilation, but ICC will put the dependencies in
+  # the current directory while Tru64 will put them in the object
+  # directory.
+  mkdir sub
+
+  am_cv_$1_dependencies_compiler_type=none
+  if test "$am_compiler_list" = ""; then
+     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
+  fi
+  for depmode in $am_compiler_list; do
+    # Setup a source with many dependencies, because some compilers
+    # like to wrap large dependency lists on column 80 (with \), and
+    # we should not choose a depcomp mode which is confused by this.
+    #
+    # We need to recreate these files for each test, as the compiler may
+    # overwrite some of them when testing with obscure command lines.
+    # This happens at least with the AIX C compiler.
+    : > sub/conftest.c
+    for i in 1 2 3 4 5 6; do
+      echo '#include "conftst'$i'.h"' >> sub/conftest.c
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
+    done
+    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+    case $depmode in
+    nosideeffect)
+      # after this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested
+      if test "x$enable_dependency_tracking" = xyes; then
+       continue
+      else
+       break
+      fi
+      ;;
+    none) break ;;
+    esac
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.
+    if depmode=$depmode \
+       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+         >/dev/null 2>conftest.err &&
+       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+      # icc doesn't choke on unknown options, it will just issue warnings
+      # or remarks (even with -Werror).  So we grep stderr for any message
+      # that says an option was ignored or not supported.
+      # When given -MP, icc 7.0 and 7.1 complain thusly:
+      #   icc: Command line warning: ignoring option '-M'; no argument required
+      # The diagnosis changed in icc 8.0:
+      #   icc: Command line remark: option '-MP' not supported
+      if (grep 'ignoring option' conftest.err ||
+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+        am_cv_$1_dependencies_compiler_type=$depmode
+        break
+      fi
+    fi
+  done
+
+  cd ..
+  rm -rf conftest.dir
+else
+  am_cv_$1_dependencies_compiler_type=none
+fi
+])
+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
+AM_CONDITIONAL([am__fastdep$1], [
+  test "x$enable_dependency_tracking" != xno \
+  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
+])
+m4trace:/usr/share/aclocal-1.9/depend.m4:141: -1- AC_DEFUN([AM_SET_DEPDIR], 
[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+])
+m4trace:/usr/share/aclocal-1.9/depend.m4:156: -1- AC_DEFUN([AM_DEP_TRACK], 
[AC_ARG_ENABLE(dependency-tracking,
+[  --disable-dependency-tracking  speeds up one-time build
+  --enable-dependency-tracking   do not reject slow dependency extractors])
+if test "x$enable_dependency_tracking" != xno; then
+  am_depcomp="$ac_aux_dir/depcomp"
+  AMDEPBACKSLASH='\'
+fi
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
+AC_SUBST([AMDEPBACKSLASH])
+])
+m4trace:/usr/share/aclocal-1.9/depout.m4:53: -1- 
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [for mf in $CONFIG_FILES; do
+  # Strip MF so we end up with the name of the file.
+  mf=`echo "$mf" | sed -e 's/:.*$//'`
+  # Check whether this is an Automake generated Makefile or not.
+  # We used to match only the files named `Makefile.in', but
+  # some people rename them; so instead we look at the file content.
+  # Grep'ing the first line is not enough: some people post-process
+  # each Makefile.in and add a new line on top of each file to say so.
+  # So let's grep whole file.
+  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+    dirpart=`AS_DIRNAME("$mf")`
+  else
+    continue
+  fi
+  # Extract the definition of DEPDIR, am__include, and am__quote
+  # from the Makefile without running `make'.
+  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+  test -z "$DEPDIR" && continue
+  am__include=`sed -n 's/^am__include = //p' < "$mf"`
+  test -z "am__include" && continue
+  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+  # When using ansi2knr, U may be empty or an underscore; expand it
+  U=`sed -n 's/^U = //p' < "$mf"`
+  # Find all dependency output files, they are included files with
+  # $(DEPDIR) in their names.  We invoke sed twice because it is the
+  # simplest approach to changing $(DEPDIR) to its actual value in the
+  # expansion.
+  for file in `sed -n "
+    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+    # Make sure the directory exists.
+    test -f "$dirpart/$file" && continue
+    fdir=`AS_DIRNAME(["$file"])`
+    AS_MKDIR_P([$dirpart/$fdir])
+    # echo "creating $dirpart/$file"
+    echo '# dummy' > "$dirpart/$file"
+  done
+done
+])
+m4trace:/usr/share/aclocal-1.9/depout.m4:67: -1- 
AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles],
+     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
+     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
+])
+m4trace:/usr/share/aclocal-1.9/init.m4:92: -1- AC_DEFUN([AM_INIT_AUTOMAKE], 
[AC_PREREQ([2.58])dnl
+dnl Autoconf wants to disallow AM_ names.  We explicitly allow
+dnl the ones we care about.
+m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
+AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
+AC_REQUIRE([AC_PROG_INSTALL])dnl
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+   test -f $srcdir/config.status; then
+  AC_MSG_ERROR([source directory already configured; run "make distclean" 
there first])
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+  if (cygpath --version) >/dev/null 2>/dev/null; then
+    CYGPATH_W='cygpath -w'
+  else
+    CYGPATH_W=echo
+  fi
+fi
+AC_SUBST([CYGPATH_W])
+
+# Define the identity of the package.
+dnl Distinguish between old-style and new-style calls.
+m4_ifval([$2],
+[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+ AC_SUBST([PACKAGE], [$1])dnl
+ AC_SUBST([VERSION], [$2])],
+[_AM_SET_OPTIONS([$1])dnl
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
+
+_AM_IF_OPTION([no-define],,
+[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+ AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+
+# Some tools Automake needs.
+AC_REQUIRE([AM_SANITY_CHECK])dnl
+AC_REQUIRE([AC_ARG_PROGRAM])dnl
+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
+AM_MISSING_PROG(AUTOCONF, autoconf)
+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
+AM_MISSING_PROG(AUTOHEADER, autoheader)
+AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_PROG_INSTALL_SH
+AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
+AC_REQUIRE([AC_PROG_AWK])dnl
+AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
+              [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+                            [_AM_PROG_TAR([v7])])])
+_AM_IF_OPTION([no-dependencies],,
+[AC_PROVIDE_IFELSE([AC_PROG_CC],
+                  [_AM_DEPENDENCIES(CC)],
+                  [define([AC_PROG_CC],
+                          defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_CXX],
+                  [_AM_DEPENDENCIES(CXX)],
+                  [define([AC_PROG_CXX],
+                          defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+])
+])
+m4trace:/usr/share/aclocal-1.9/init.m4:113: -1- 
AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+  case $_am_header in
+    $1 | $1:* )
+      break ;;
+    * )
+      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+  esac
+done
+echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+m4trace:/usr/share/aclocal-1.9/install-sh.m4:14: -1- 
AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+AC_SUBST(install_sh)])
+m4trace:/usr/share/aclocal-1.9/lead-dot.m4:21: -1- 
AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+  am__leading_dot=.
+else
+  am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+AC_SUBST([am__leading_dot])])
+m4trace:/usr/share/aclocal-1.9/maintainer.m4:26: -1- 
AC_DEFUN([AM_MAINTAINER_MODE], [AC_MSG_CHECKING([whether to enable 
maintainer-specific portions of Makefiles])
+  dnl maintainer-mode is disabled by default
+  AC_ARG_ENABLE(maintainer-mode,
+[  --enable-maintainer-mode  enable make rules and dependencies not useful
+                         (and sometimes confusing) to the casual installer],
+      USE_MAINTAINER_MODE=$enableval,
+      USE_MAINTAINER_MODE=no)
+  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
+  AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes])
+  MAINT=$MAINTAINER_MODE_TRUE
+  AC_SUBST(MAINT)dnl
+
+])
+m4trace:/usr/share/aclocal-1.9/maintainer.m4:28: -1- 
AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
+m4trace:/usr/share/aclocal-1.9/maintainer.m4:28: -1- 
AC_DEFUN([jm_MAINTAINER_MODE], [AC_DIAGNOSE([obsolete], [The macro 
`jm_MAINTAINER_MODE' is obsolete.
+You should run autoupdate.])dnl
+AM_MAINTAINER_MODE])
+m4trace:/usr/share/aclocal-1.9/make.m4:51: -1- AC_DEFUN([AM_MAKE_INCLUDE], 
[am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+       @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+AC_MSG_CHECKING([for style of include used by $am_make])
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = 
"done"; then
+   am__include=include
+   am__quote=
+   _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+   echo '.include "confinc"' > confmf
+   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+      am__include=.include
+      am__quote="\""
+      _am_result=BSD
+   fi
+fi
+AC_SUBST([am__include])
+AC_SUBST([am__quote])
+AC_MSG_RESULT([$_am_result])
+rm -f confinc confmf
+])
+m4trace:/usr/share/aclocal-1.9/missing.m4:17: -1- AC_DEFUN([AM_MISSING_PROG], 
[AC_REQUIRE([AM_MISSING_HAS_RUN])
+$1=${$1-"${am_missing_run}$2"}
+AC_SUBST($1)])
+m4trace:/usr/share/aclocal-1.9/missing.m4:34: -1- 
AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+  am_missing_run="$MISSING --run "
+else
+  am_missing_run=
+  AC_MSG_WARN([`missing' script is too old or missing])
+fi
+])
+m4trace:/usr/share/aclocal-1.9/mkdirp.m4:63: -1- AC_DEFUN([AM_PROG_MKDIR_P], 
[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+  # We used to keeping the `.' as first argument, in order to
+  # allow $(mkdir_p) to be used without argument.  As in
+  #   $(mkdir_p) $(somedir)
+  # where $(somedir) is conditionally defined.  However this is wrong
+  # for two reasons:
+  #  1. if the package is installed by a user who cannot write `.'
+  #     make install will fail,
+  #  2. the above comment should most certainly read
+  #     $(mkdir_p) $(DESTDIR)$(somedir)
+  #     so it does not work when $(somedir) is undefined and
+  #     $(DESTDIR) is not.
+  #  To support the latter case, we have to write
+  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+  #  so the `.' trick is pointless.
+  mkdir_p='mkdir -p --'
+else
+  # On NextStep and OpenStep, the `mkdir' command does not
+  # recognize any option.  It will interpret all options as
+  # directories to create, and then abort because `.' already
+  # exists.
+  for d in ./-p ./--version;
+  do
+    test -d $d && rmdir $d
+  done
+  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+  if test -f "$ac_aux_dir/mkinstalldirs"; then
+    mkdir_p='$(mkinstalldirs)'
+  else
+    mkdir_p='$(install_sh) -d'
+  fi
+fi
+AC_SUBST([mkdir_p])])
+m4trace:/usr/share/aclocal-1.9/options.m4:14: -1- 
AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], 
[_])])
+m4trace:/usr/share/aclocal-1.9/options.m4:20: -1- AC_DEFUN([_AM_SET_OPTION], 
[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+m4trace:/usr/share/aclocal-1.9/options.m4:26: -1- AC_DEFUN([_AM_SET_OPTIONS], 
[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+m4trace:/usr/share/aclocal-1.9/options.m4:32: -1- AC_DEFUN([_AM_IF_OPTION], 
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+m4trace:/usr/share/aclocal-1.9/runlog.m4:17: -1- AC_DEFUN([AM_RUN_LOG], [{ 
echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
+   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+   (exit $ac_status); }])
+m4trace:/usr/share/aclocal-1.9/sanity.m4:51: -1- AC_DEFUN([AM_SANITY_CHECK], 
[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments.  Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   if test "$[*]" = "X"; then
+      # -L didn't work.
+      set X `ls -t $srcdir/configure conftest.file`
+   fi
+   rm -f conftest.file
+   if test "$[*]" != "X $srcdir/configure conftest.file" \
+      && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+      # If neither matched, then we have a broken ls.  This can happen
+      # if, for instance, CONFIG_SHELL is bash and it inherits a
+      # broken ls alias from the environment.  This has actually
+      # happened.  Such a system could not be considered "sane".
+      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
+alias in your environment])
+   fi
+
+   test "$[2]" = conftest.file
+   )
+then
+   # Ok.
+   :
+else
+   AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+AC_MSG_RESULT(yes)])
+m4trace:/usr/share/aclocal-1.9/strip.m4:28: -1- 
AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'.  However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+if test "$cross_compiling" != no; then
+  AC_CHECK_TOOL([STRIP], [strip], :)
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+AC_SUBST([INSTALL_STRIP_PROGRAM])])
+m4trace:/usr/share/aclocal-1.9/tar.m4:95: -1- AC_DEFUN([_AM_PROG_TAR], [# 
Always define AMTAR for backward compatibility.
+AM_MISSING_PROG([AMTAR], [tar])
+m4_if([$1], [v7],
+     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+     [m4_case([$1], [ustar],, [pax],,
+              [m4_fatal([Unknown tar format])])
+AC_MSG_CHECKING([how to create a $1 tar archive])
+# Loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
+_am_tools=${am_cv_prog_tar_$1-$_am_tools}
+# Do not fold the above two line into one, because Tru64 sh and
+# Solaris sh will not grok spaces in the rhs of `-'.
+for _am_tool in $_am_tools
+do
+  case $_am_tool in
+  gnutar)
+    for _am_tar in tar gnutar gtar;
+    do
+      AM_RUN_LOG([$_am_tar --version]) && break
+    done
+    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - 
"'"$$tardir"'
+    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - 
"'"$tardir"'
+    am__untar="$_am_tar -xf -"
+    ;;
+  plaintar)
+    # Must skip GNU tar: if it does not support --format= it doesn't create
+    # ustar tarball either.
+    (tar --version) >/dev/null 2>&1 && continue
+    am__tar='tar chf - "$$tardir"'
+    am__tar_='tar chf - "$tardir"'
+    am__untar='tar xf -'
+    ;;
+  pax)
+    am__tar='pax -L -x $1 -w "$$tardir"'
+    am__tar_='pax -L -x $1 -w "$tardir"'
+    am__untar='pax -r'
+    ;;
+  cpio)
+    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+    am__untar='cpio -i -H $1 -d'
+    ;;
+  none)
+    am__tar=false
+    am__tar_=false
+    am__untar=false
+    ;;
+  esac
+
+  # If the value was cached, stop now.  We just wanted to have am__tar
+  # and am__untar set.
+  test -n "${am_cv_prog_tar_$1}" && break
+
+  # tar/untar a dummy directory, and stop if the command works
+  rm -rf conftest.dir
+  mkdir conftest.dir
+  echo GrepMe > conftest.dir/file
+  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+  rm -rf conftest.dir
+  if test -s conftest.tar; then
+    AM_RUN_LOG([$am__untar <conftest.tar])
+    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+  fi
+done
+rm -rf conftest.dir
+
+AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+AC_SUBST([am__tar])
+AC_SUBST([am__untar])
+])
+m4trace:acinclude.m4:33: -1- AC_DEFUN([HURD_LOAD_ADDRESS], 
[AC_ARG_WITH([$1-loadaddr],
+       AC_HELP_STRING([--with-$1-loadaddr],
+       [$1 load address @<:@$2@:>@]),
+       hurd_$1_load_address=$withval,
+       hurd_$1_load_address=$2)
+       HURD_[]translit($1, [a-z], [A-Z])_LOAD_ADDRESS=$hurd_$1_load_address
+       AC_SUBST(HURD_[]translit($1, [a-z], [A-Z])_LOAD_ADDRESS)])
+m4trace:configure.ac:26: -1- AC_INIT([hurd], [0.0], address@hidden)
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^_?A[CHUM]_])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([_AC_])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^LIBOBJS$], [do not use 
LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
+m4trace:configure.ac:26: -1- m4_pattern_allow([^AS_FLAGS$])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^_?m4_])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^dnl$])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^_?AS_])
+m4trace:configure.ac:26: -1- AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}])
+m4trace:configure.ac:26: -1- AC_SUBST([PATH_SEPARATOR])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_NAME], 
[m4_ifdef([AC_PACKAGE_NAME],      ['AC_PACKAGE_NAME'])])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_TARNAME], 
[m4_ifdef([AC_PACKAGE_TARNAME],   ['AC_PACKAGE_TARNAME'])])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_VERSION], 
[m4_ifdef([AC_PACKAGE_VERSION],   ['AC_PACKAGE_VERSION'])])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_STRING], 
[m4_ifdef([AC_PACKAGE_STRING],    ['AC_PACKAGE_STRING'])])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_BUGREPORT], 
[m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
+m4trace:configure.ac:26: -1- AC_SUBST([exec_prefix], [NONE])
+m4trace:configure.ac:26: -1- AC_SUBST([prefix], [NONE])
+m4trace:configure.ac:26: -1- AC_SUBST([program_transform_name], [s,x,x,])
+m4trace:configure.ac:26: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
+m4trace:configure.ac:26: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
+m4trace:configure.ac:26: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
+m4trace:configure.ac:26: -1- AC_SUBST([datadir], ['${prefix}/share'])
+m4trace:configure.ac:26: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
+m4trace:configure.ac:26: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
+m4trace:configure.ac:26: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
+m4trace:configure.ac:26: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
+m4trace:configure.ac:26: -1- AC_SUBST([includedir], ['${prefix}/include'])
+m4trace:configure.ac:26: -1- AC_SUBST([oldincludedir], ['/usr/include'])
+m4trace:configure.ac:26: -1- AC_SUBST([infodir], ['${prefix}/info'])
+m4trace:configure.ac:26: -1- AC_SUBST([mandir], ['${prefix}/man'])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full 
name of this package. */
+#undef PACKAGE_NAME])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the 
one symbol short name of this package. */
+#undef PACKAGE_TARNAME])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the 
version of this package. */
+#undef PACKAGE_VERSION])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the 
full name and version of this package. */
+#undef PACKAGE_STRING])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the 
address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT])
+m4trace:configure.ac:26: -1- AC_SUBST([build_alias])
+m4trace:configure.ac:26: -1- AC_SUBST([host_alias])
+m4trace:configure.ac:26: -1- AC_SUBST([target_alias])
+m4trace:configure.ac:26: -1- AC_SUBST([DEFS])
+m4trace:configure.ac:26: -1- AC_SUBST([ECHO_C])
+m4trace:configure.ac:26: -1- AC_SUBST([ECHO_N])
+m4trace:configure.ac:26: -1- AC_SUBST([ECHO_T])
+m4trace:configure.ac:26: -1- AC_SUBST([LIBS])
+m4trace:configure.ac:27: -1- AM_INIT_AUTOMAKE
+m4trace:configure.ac:27: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
+m4trace:configure.ac:27: -1- AM_SET_CURRENT_AUTOMAKE_VERSION
+m4trace:configure.ac:27: -1- AM_AUTOMAKE_VERSION([1.9.5])
+m4trace:configure.ac:27: -1- AC_PROG_INSTALL
+m4trace:configure.ac:27: -1- AC_SUBST([INSTALL_PROGRAM])
+m4trace:configure.ac:27: -1- AC_SUBST([INSTALL_SCRIPT])
+m4trace:configure.ac:27: -1- AC_SUBST([INSTALL_DATA])
+m4trace:configure.ac:27: -1- AC_SUBST([CYGPATH_W])
+m4trace:configure.ac:27: -1- _AM_SET_OPTIONS([])
+m4trace:configure.ac:27: -1- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])
+m4trace:configure.ac:27: -1- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])
+m4trace:configure.ac:27: -1- _AM_IF_OPTION([no-define], [], 
[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+ AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])
+m4trace:configure.ac:27: -2- _AM_MANGLE_OPTION([no-define])
+m4trace:configure.ac:27: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE])
+m4trace:configure.ac:27: -1- AH_OUTPUT([PACKAGE], [/* Name of package */
+#undef PACKAGE])
+m4trace:configure.ac:27: -1- AC_DEFINE_TRACE_LITERAL([VERSION])
+m4trace:configure.ac:27: -1- AH_OUTPUT([VERSION], [/* Version number of 
package */
+#undef VERSION])
+m4trace:configure.ac:27: -1- AM_SANITY_CHECK
+m4trace:configure.ac:27: -1- AM_MISSING_PROG([ACLOCAL], 
[aclocal-${am__api_version}])
+m4trace:configure.ac:27: -1- AM_MISSING_HAS_RUN
+m4trace:configure.ac:27: -1- AM_AUX_DIR_EXPAND
+m4trace:configure.ac:27: -1- AC_SUBST([ACLOCAL])
+m4trace:configure.ac:27: -1- AM_MISSING_PROG([AUTOCONF], [autoconf])
+m4trace:configure.ac:27: -1- AC_SUBST([AUTOCONF])
+m4trace:configure.ac:27: -1- AM_MISSING_PROG([AUTOMAKE], 
[automake-${am__api_version}])
+m4trace:configure.ac:27: -1- AC_SUBST([AUTOMAKE])
+m4trace:configure.ac:27: -1- AM_MISSING_PROG([AUTOHEADER], [autoheader])
+m4trace:configure.ac:27: -1- AC_SUBST([AUTOHEADER])
+m4trace:configure.ac:27: -1- AM_MISSING_PROG([MAKEINFO], [makeinfo])
+m4trace:configure.ac:27: -1- AC_SUBST([MAKEINFO])
+m4trace:configure.ac:27: -1- AM_PROG_INSTALL_SH
+m4trace:configure.ac:27: -1- AC_SUBST([install_sh])
+m4trace:configure.ac:27: -1- AM_PROG_INSTALL_STRIP
+m4trace:configure.ac:27: -1- AC_SUBST([STRIP])
+m4trace:configure.ac:27: -1- AC_SUBST([ac_ct_STRIP])
+m4trace:configure.ac:27: -1- AC_SUBST([INSTALL_STRIP_PROGRAM])
+m4trace:configure.ac:27: -1- AM_PROG_MKDIR_P
+m4trace:configure.ac:27: -1- AC_SUBST([mkdir_p])
+m4trace:configure.ac:27: -1- AC_PROG_AWK
+m4trace:configure.ac:27: -1- AC_SUBST([AWK])
+m4trace:configure.ac:27: -1- AC_PROG_MAKE_SET
+m4trace:configure.ac:27: -1- AC_SUBST([SET_MAKE])
+m4trace:configure.ac:27: -1- AM_SET_LEADING_DOT
+m4trace:configure.ac:27: -1- AC_SUBST([am__leading_dot])
+m4trace:configure.ac:27: -1- _AM_IF_OPTION([tar-ustar], 
[_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+                            [_AM_PROG_TAR([v7])])])
+m4trace:configure.ac:27: -2- _AM_MANGLE_OPTION([tar-ustar])
+m4trace:configure.ac:27: -1- _AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], 
[_AM_PROG_TAR([v7])])
+m4trace:configure.ac:27: -2- _AM_MANGLE_OPTION([tar-pax])
+m4trace:configure.ac:27: -1- _AM_PROG_TAR([v7])
+m4trace:configure.ac:27: -1- AM_MISSING_PROG([AMTAR], [tar])
+m4trace:configure.ac:27: -1- AC_SUBST([AMTAR])
+m4trace:configure.ac:27: -1- AC_SUBST([am__tar])
+m4trace:configure.ac:27: -1- AC_SUBST([am__untar])
+m4trace:configure.ac:27: -1- _AM_IF_OPTION([no-dependencies], [], 
[AC_PROVIDE_IFELSE([AC_PROG_CC],
+                  [_AM_DEPENDENCIES(CC)],
+                  [define([AC_PROG_CC],
+                          defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_CXX],
+                  [_AM_DEPENDENCIES(CXX)],
+                  [define([AC_PROG_CXX],
+                          defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+])
+m4trace:configure.ac:27: -2- _AM_MANGLE_OPTION([no-dependencies])
+m4trace:configure.ac:28: -1- AM_MAINTAINER_MODE
+m4trace:configure.ac:28: -1- AM_CONDITIONAL([MAINTAINER_MODE], [test 
$USE_MAINTAINER_MODE = yes])
+m4trace:configure.ac:28: -1- AC_SUBST([MAINTAINER_MODE_TRUE])
+m4trace:configure.ac:28: -1- AC_SUBST([MAINTAINER_MODE_FALSE])
+m4trace:configure.ac:28: -1- AC_SUBST([MAINT])
+m4trace:configure.ac:30: -1- AC_CONFIG_HEADERS([config.h])
+m4trace:configure.ac:31: -1- AH_OUTPUT([_GNU_SOURCE], [/* Enable GNU 
extensions on systems that have them.  */
+#ifndef _GNU_SOURCE
+# undef _GNU_SOURCE
+#endif])
+m4trace:configure.ac:31: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
+m4trace:configure.ac:36: -1- AC_PROG_CC
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([CFLAGS])
+m4trace:configure.ac:36: -1- AC_SUBST([LDFLAGS])
+m4trace:configure.ac:36: -1- AC_SUBST([CPPFLAGS])
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([ac_ct_CC])
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([ac_ct_CC])
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([ac_ct_CC])
+m4trace:configure.ac:36: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
+m4trace:configure.ac:36: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
+m4trace:configure.ac:36: -1- _AM_DEPENDENCIES([CC])
+m4trace:configure.ac:36: -1- AM_SET_DEPDIR
+m4trace:configure.ac:36: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
+m4trace:configure.ac:36: -1- AM_OUTPUT_DEPENDENCY_COMMANDS
+m4trace:configure.ac:36: -1- AM_MAKE_INCLUDE
+m4trace:configure.ac:36: -1- AC_SUBST([am__include])
+m4trace:configure.ac:36: -1- AC_SUBST([am__quote])
+m4trace:configure.ac:36: -1- AM_DEP_TRACK
+m4trace:configure.ac:36: -1- AM_CONDITIONAL([AMDEP], [test 
"x$enable_dependency_tracking" != xno])
+m4trace:configure.ac:36: -1- AC_SUBST([AMDEP_TRUE])
+m4trace:configure.ac:36: -1- AC_SUBST([AMDEP_FALSE])
+m4trace:configure.ac:36: -1- AC_SUBST([AMDEPBACKSLASH])
+m4trace:configure.ac:36: -1- AC_SUBST([CCDEPMODE], 
[depmode=$am_cv_CC_dependencies_compiler_type])
+m4trace:configure.ac:36: -1- AM_CONDITIONAL([am__fastdepCC], [
+  test "x$enable_dependency_tracking" != xno \
+  && test "$am_cv_CC_dependencies_compiler_type" = gcc3])
+m4trace:configure.ac:36: -1- AC_SUBST([am__fastdepCC_TRUE])
+m4trace:configure.ac:36: -1- AC_SUBST([am__fastdepCC_FALSE])
+m4trace:configure.ac:41: -1- AC_SUBST([IDL4CONFIG], [$ac_cv_path_IDL4CONFIG])
+m4trace:configure.ac:41: -1- AC_SUBST([ac_pt_IDL4CONFIG], 
[$ac_cv_path_ac_pt_IDL4CONFIG])
+m4trace:configure.ac:50: -1- AM_PROG_AS
+m4trace:configure.ac:50: -1- AC_SUBST([CCAS])
+m4trace:configure.ac:50: -1- AC_SUBST([CCASFLAGS])
+m4trace:configure.ac:51: -1- AC_PROG_RANLIB
+m4trace:configure.ac:51: -1- AC_SUBST([RANLIB])
+m4trace:configure.ac:51: -1- AC_SUBST([ac_ct_RANLIB])
+m4trace:configure.ac:52: -1- AC_SUBST([AR])
+m4trace:configure.ac:52: -1- AC_SUBST([ac_ct_AR])
+m4trace:configure.ac:53: -1- AC_SUBST([NM])
+m4trace:configure.ac:53: -1- AC_SUBST([ac_ct_NM])
+m4trace:configure.ac:56: -1- AC_SUBST([IDL4])
+m4trace:configure.ac:57: -1- AC_SUBST([IDL4FLAGS])
+m4trace:configure.ac:58: -1- AC_SUBST([IDL4CONFIG])
+m4trace:configure.ac:61: -1- AC_SUBST([IDL4], [$ac_cv_path_IDL4])
+m4trace:configure.ac:61: -1- AC_SUBST([ac_pt_IDL4], [$ac_cv_path_ac_pt_IDL4])
+m4trace:configure.ac:76: -1- AC_SUBST([SED], [$ac_cv_path_SED])
+m4trace:configure.ac:77: -1- AC_SUBST([SORT], [$ac_cv_path_SORT])
+m4trace:configure.ac:80: -1- AC_SUBST([LATEX], [$ac_cv_path_LATEX])
+m4trace:configure.ac:84: -1- AC_SUBST([DVIPS], [$ac_cv_path_DVIPS])
+m4trace:configure.ac:88: -1- AC_SUBST([PS2PDF], [$ac_cv_path_PS2PDF])
+m4trace:configure.ac:92: -1- AC_SUBST([FIG2DEV], [$ac_cv_path_FIG2DEV])
+m4trace:configure.ac:101: -1- AC_CANONICAL_HOST
+m4trace:configure.ac:101: -1- AC_SUBST([build], [$ac_cv_build])
+m4trace:configure.ac:101: -1- AC_SUBST([build_cpu], [`echo $ac_cv_build | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([build_vendor], [`echo $ac_cv_build | 
sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([build_os], [`echo $ac_cv_build | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([host], [$ac_cv_host])
+m4trace:configure.ac:101: -1- AC_SUBST([host_cpu], [`echo $ac_cv_host | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([host_vendor], [`echo $ac_cv_host | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([host_os], [`echo $ac_cv_host | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`])
+m4trace:configure.ac:125: -1- AC_SUBST([STATIC_GLIBC])
+m4trace:configure.ac:131: -1- AC_C_CONST
+m4trace:configure.ac:131: -1- AC_DEFINE_TRACE_LITERAL([const])
+m4trace:configure.ac:131: -1- AH_OUTPUT([const], [/* Define to empty if 
`const\' does not conform to ANSI C. */
+#undef const])
+m4trace:configure.ac:132: -1- AC_C_VOLATILE
+m4trace:configure.ac:132: -1- AC_DEFINE_TRACE_LITERAL([volatile])
+m4trace:configure.ac:132: -1- AH_OUTPUT([volatile], [/* Define to empty if the 
keyword `volatile\' does not work. Warning: valid
+   code using `volatile\' can become incorrect without. Disable with care. */
+#undef volatile])
+m4trace:configure.ac:165: -1- AM_CONDITIONAL([ARCH_ALPHA], [$arch_alpha])
+m4trace:configure.ac:165: -1- AC_SUBST([ARCH_ALPHA_TRUE])
+m4trace:configure.ac:165: -1- AC_SUBST([ARCH_ALPHA_FALSE])
+m4trace:configure.ac:166: -1- AM_CONDITIONAL([ARCH_AMD64], [$arch_amd64])
+m4trace:configure.ac:166: -1- AC_SUBST([ARCH_AMD64_TRUE])
+m4trace:configure.ac:166: -1- AC_SUBST([ARCH_AMD64_FALSE])
+m4trace:configure.ac:167: -1- AM_CONDITIONAL([ARCH_IA32], [$arch_ia32])
+m4trace:configure.ac:167: -1- AC_SUBST([ARCH_IA32_TRUE])
+m4trace:configure.ac:167: -1- AC_SUBST([ARCH_IA32_FALSE])
+m4trace:configure.ac:168: -1- AM_CONDITIONAL([ARCH_IA64], [$arch_ia64])
+m4trace:configure.ac:168: -1- AC_SUBST([ARCH_IA64_TRUE])
+m4trace:configure.ac:168: -1- AC_SUBST([ARCH_IA64_FALSE])
+m4trace:configure.ac:169: -1- AM_CONDITIONAL([ARCH_POWERPC], [$arch_powerpc])
+m4trace:configure.ac:169: -1- AC_SUBST([ARCH_POWERPC_TRUE])
+m4trace:configure.ac:169: -1- AC_SUBST([ARCH_POWERPC_FALSE])
+m4trace:configure.ac:170: -1- AM_CONDITIONAL([ARCH_POWERPC64], 
[$arch_powerpc64])
+m4trace:configure.ac:170: -1- AC_SUBST([ARCH_POWERPC64_TRUE])
+m4trace:configure.ac:170: -1- AC_SUBST([ARCH_POWERPC64_FALSE])
+m4trace:configure.ac:173: -1- m4_include([laden/config.m4])
+m4trace:laden/config.m4:21: -1- HURD_LOAD_ADDRESS([laden], [0x190000])
+m4trace:laden/config.m4:21: -2- _m4_warn([obsolete], [The macro 
`AC_HELP_STRING' is obsolete.
+You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is 
expanded from...
+acinclude.m4:33: HURD_LOAD_ADDRESS is expanded from...
+laden/config.m4:21: the top level])
+m4trace:laden/config.m4:21: -1- AC_SUBST([HURD_LADEN_LOAD_ADDRESS])
+m4trace:configure.ac:174: -1- m4_include([wortel/config.m4])
+m4trace:wortel/config.m4:21: -1- HURD_LOAD_ADDRESS([wortel], [0x300000])
+m4trace:wortel/config.m4:21: -2- _m4_warn([obsolete], [The macro 
`AC_HELP_STRING' is obsolete.
+You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is 
expanded from...
+acinclude.m4:33: HURD_LOAD_ADDRESS is expanded from...
+wortel/config.m4:21: the top level])
+m4trace:wortel/config.m4:21: -1- AC_SUBST([HURD_WORTEL_LOAD_ADDRESS])
+m4trace:configure.ac:175: -1- m4_include([physmem/config.m4])
+m4trace:physmem/config.m4:21: -1- HURD_LOAD_ADDRESS([physmem], [0x400000])
+m4trace:physmem/config.m4:21: -2- _m4_warn([obsolete], [The macro 
`AC_HELP_STRING' is obsolete.
+You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is 
expanded from...
+acinclude.m4:33: HURD_LOAD_ADDRESS is expanded from...
+physmem/config.m4:21: the top level])
+m4trace:physmem/config.m4:21: -1- AC_SUBST([HURD_PHYSMEM_LOAD_ADDRESS])
+m4trace:configure.ac:178: -1- m4_include([libl4/headers.m4])
+m4trace:libl4/headers.m4:78: -1- AC_CONFIG_LINKS([
+  include/l4.h:libl4/l4.h
+  include/l4/features.h:libl4/l4/features.h
+  include/l4/globals.h:libl4/l4/globals.h
+  include/l4/init.h:libl4/l4/init.h
+  include/l4/ipc.h:libl4/l4/ipc.h
+  include/l4/kip.h:libl4/l4/kip.h
+  include/l4/math.h:libl4/l4/math.h
+  include/l4/message.h:libl4/l4/message.h
+  include/l4/misc.h:libl4/l4/misc.h
+  include/l4/arch.h:libl4/l4/arch.h
+  include/l4/pagefault.h:libl4/l4/pagefault.h
+  include/l4/schedule.h:libl4/l4/schedule.h
+  include/l4/space.h:libl4/l4/space.h
+  include/l4/stubs-init.h:libl4/l4/stubs-init.h
+  include/l4/stubs.h:libl4/l4/stubs.h
+  include/l4/syscall.h:libl4/l4/syscall.h
+  include/l4/thread.h:libl4/l4/thread.h
+  include/l4/thread-start.h:libl4/l4/thread-start.h
+  include/l4/types.h:libl4/l4/types.h
+  include/l4/vregs.h:libl4/l4/vregs.h
+  include/l4/sigma0.h:libl4/l4/sigma0.h
+  include/l4/compat/ipc.h:libl4/l4/compat/ipc.h
+  include/l4/compat/kip.h:libl4/l4/compat/kip.h
+  include/l4/compat/message.h:libl4/l4/compat/message.h
+  include/l4/compat/misc.h:libl4/l4/compat/misc.h
+  include/l4/compat/schedule.h:libl4/l4/compat/schedule.h
+  include/l4/compat/space.h:libl4/l4/compat/space.h
+  include/l4/compat/syscall.h:libl4/l4/compat/syscall.h
+  include/l4/compat/thread.h:libl4/l4/compat/thread.h
+  include/l4/compat/types.h:libl4/l4/compat/types.h
+  include/l4/compat/sigma0.h:libl4/l4/compat/sigma0.h
+  include/l4/gnu/ipc.h:libl4/l4/gnu/ipc.h
+  include/l4/gnu/kip.h:libl4/l4/gnu/kip.h
+  include/l4/gnu/math.h:libl4/l4/gnu/math.h
+  include/l4/gnu/message.h:libl4/l4/gnu/message.h
+  include/l4/gnu/misc.h:libl4/l4/gnu/misc.h
+  include/l4/gnu/pagefault.h:libl4/l4/gnu/pagefault.h
+  include/l4/gnu/schedule.h:libl4/l4/gnu/schedule.h
+  include/l4/gnu/space.h:libl4/l4/gnu/space.h
+  include/l4/gnu/syscall.h:libl4/l4/gnu/syscall.h
+  include/l4/gnu/thread.h:libl4/l4/gnu/thread.h
+  include/l4/gnu/thread-start.h:libl4/l4/gnu/thread-start.h
+  include/l4/gnu/types.h:libl4/l4/gnu/types.h
+  include/l4/gnu/sigma0.h:libl4/l4/gnu/sigma0.h
+  include/l4/bits/ipc.h:libl4/${arch}/l4/bits/ipc.h
+  include/l4/bits/kip.h:libl4/${arch}/l4/bits/kip.h
+  include/l4/bits/math.h:libl4/${arch}/l4/bits/math.h
+  include/l4/bits/misc.h:libl4/${arch}/l4/bits/misc.h
+  include/l4/bits/arch.h:libl4/${arch}/l4/bits/arch.h
+  include/l4/bits/space.h:libl4/${arch}/l4/bits/space.h
+  include/l4/bits/stubs.h:libl4/${arch}/l4/bits/stubs.h
+  include/l4/bits/stubs-init.h:libl4/${arch}/l4/bits/stubs-init.h
+  include/l4/bits/syscall.h:libl4/${arch}/l4/bits/syscall.h
+  include/l4/bits/types.h:libl4/${arch}/l4/bits/types.h
+  include/l4/bits/vregs.h:libl4/${arch}/l4/bits/vregs.h
+  include/l4/bits/compat/ipc.h:libl4/${arch}/l4/bits/compat/ipc.h
+  include/l4/bits/compat/misc.h:libl4/${arch}/l4/bits/compat/misc.h
+  include/l4/bits/compat/arch.h:libl4/${arch}/l4/bits/compat/arch.h
+  include/l4/bits/compat/space.h:libl4/${arch}/l4/bits/compat/space.h
+  include/l4/bits/gnu/ipc.h:libl4/${arch}/l4/bits/gnu/ipc.h
+  include/l4/bits/gnu/kip.h:libl4/${arch}/l4/bits/gnu/kip.h
+  include/l4/bits/gnu/misc.h:libl4/${arch}/l4/bits/gnu/misc.h
+  include/l4/bits/gnu/arch.h:libl4/${arch}/l4/bits/gnu/arch.h
+  include/l4/bits/gnu/space.h:libl4/${arch}/l4/bits/gnu/space.h
+])
+m4trace:configure.ac:179: -1- m4_include([platform/headers.m4])
+m4trace:platform/headers.m4:17: -1- AC_CONFIG_LINKS([
+  include/atomic.h:platform/atomic.h
+  include/bits/atomic.h:platform/${arch}/bits/atomic.h
+  include/compiler.h:platform/compiler.h
+])
+m4trace:configure.ac:180: -1- m4_include([hurd/headers.m4])
+m4trace:hurd/headers.m4:14: -1- 
AC_CONFIG_LINKS([include/hurd/types.h:hurd/types.h
+                include/hurd/startup.h:hurd/startup.h])
+m4trace:configure.ac:181: -1- m4_include([libhurd-ihash/headers.m4])
+m4trace:libhurd-ihash/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/ihash.h:libhurd-ihash/ihash.h])
+m4trace:configure.ac:182: -1- m4_include([libhurd-btree/headers.m4])
+m4trace:libhurd-btree/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/btree.h:libhurd-btree/btree.h])
+m4trace:configure.ac:183: -1- m4_include([libhurd-slab/headers.m4])
+m4trace:libhurd-slab/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/slab.h:libhurd-slab/slab.h])
+m4trace:configure.ac:184: -1- m4_include([libhurd-cap/headers.m4])
+m4trace:libhurd-cap/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/cap.h:libhurd-cap/cap.h])
+m4trace:configure.ac:185: -1- m4_include([libhurd-cap-server/headers.m4])
+m4trace:libhurd-cap-server/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/cap-server.h:libhurd-cap-server/cap-server.h])
+m4trace:configure.ac:186: -1- m4_include([libhurd-mm/headers.m4])
+m4trace:libhurd-mm/headers.m4:17: -1- AC_CONFIG_LINKS([
+  include/hurd/mm.h:libhurd-mm/mm.h
+  include/hurd/vm.h:libhurd-mm/vm.h
+  include/hurd/anonymous.h:libhurd-mm/anonymous.h
+])
+m4trace:configure.ac:187: -1- m4_include([libpthread/headers.m4])
+m4trace:libpthread/headers.m4:34: -1- AC_CONFIG_LINKS([
+  include/pthread.h:libpthread/include/pthread.h
+  include/pthread/pthread.h:libpthread/include/pthread/pthread.h
+  include/bits/memory.h:libpthread/sysdeps/${arch}/bits/memory.h
+  include/bits/spin-lock.h:libpthread/sysdeps/${arch}/bits/spin-lock.h
+  include/bits/pthreadtypes.h:libpthread/sysdeps/generic/bits/pthreadtypes.h
+  include/bits/barrier-attr.h:libpthread/sysdeps/generic/bits/barrier-attr.h
+  include/bits/barrier.h:libpthread/sysdeps/generic/bits/barrier.h
+  include/bits/cancelation.h:libpthread/sysdeps/generic/bits/cancelation.h
+  
include/bits/condition-attr.h:libpthread/sysdeps/generic/bits/condition-attr.h
+  include/bits/condition.h:libpthread/sysdeps/generic/bits/condition.h
+  include/bits/mutex-attr.h:libpthread/sysdeps/generic/bits/mutex-attr.h
+  include/bits/mutex.h:libpthread/sysdeps/generic/bits/mutex.h
+  include/bits/once.h:libpthread/sysdeps/generic/bits/once.h
+  include/bits/pthread.h:libpthread/sysdeps/generic/bits/pthread.h
+  include/bits/rwlock-attr.h:libpthread/sysdeps/generic/bits/rwlock-attr.h
+  include/bits/rwlock.h:libpthread/sysdeps/generic/bits/rwlock.h
+  include/bits/thread-attr.h:libpthread/sysdeps/generic/bits/thread-attr.h
+  
include/bits/thread-barrier.h:libpthread/sysdeps/generic/bits/thread-barrier.h
+  
include/bits/thread-specific.h:libpthread/sysdeps/generic/bits/thread-specific.h
+  include/bits/pthread-np.h:libpthread/sysdeps/l4/bits/pthread-np.h
+])
+m4trace:configure.ac:188: -1- m4_include([wortel/headers.m4])
+m4trace:wortel/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/wortel.h:wortel/wortel.h])
+m4trace:configure.ac:189: -1- m4_include([physmem/headers.m4])
+m4trace:physmem/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/physmem.h:physmem/physmem.h])
+m4trace:configure.ac:195: -1- AM_CONDITIONAL([WITH_LIBC], [test 
x"${with_libc-no}" != xno])
+m4trace:configure.ac:195: -1- AC_SUBST([WITH_LIBC_TRUE])
+m4trace:configure.ac:195: -1- AC_SUBST([WITH_LIBC_FALSE])
+m4trace:configure.ac:226: -1- AC_CONFIG_FILES([Makefile
+                libl4/ia32/Makefile libl4/powerpc/Makefile
+                libl4/tests/Makefile libl4/Makefile
+                platform/alpha/Makefile platform/amd64/Makefile
+                platform/ia32/Makefile platform/ia64/Makefile
+                platform/powerpc/Makefile platform/powerpc64/Makefile
+                platform/Makefile
+                libc-parts/Makefile
+                hurd/Makefile
+                libhurd-ihash/Makefile
+                libhurd-btree/Makefile
+                libhurd-slab/Makefile
+                libhurd-cap/Makefile
+                libhurd-cap-server/Makefile
+                libhurd-mm/Makefile
+                libpthread/Makefile
+                 laden/Makefile
+                 wortel/Makefile
+                 physmem/Makefile
+                 task/Makefile
+                 deva/Makefile
+                libc/Makefile
+                 ruth/Makefile
+                doc/Makefile])
+m4trace:configure.ac:227: -1- AC_SUBST([LIB@&address@hidden, [$ac_libobjs])
+m4trace:configure.ac:227: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
+m4trace:configure.ac:227: -1- _AC_AM_CONFIG_HEADER_HOOK([$ac_file])
+m4trace:configure.ac:227: -1- _AM_OUTPUT_DEPENDENCY_COMMANDS
diff -Naur hurd-l4/autom4te.cache/traces.1 hurd-l4-new/autom4te.cache/traces.1
--- hurd-l4/autom4te.cache/traces.1     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/autom4te.cache/traces.1 2005-07-13 18:30:52.261806312 +0200
@@ -0,0 +1,352 @@
+m4trace:aclocal.m4:901: -1- m4_include([acinclude.m4])
+m4trace:configure.ac:26: -1- AC_INIT([hurd], [0.0], address@hidden)
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^_?A[CHUM]_])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([_AC_])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^LIBOBJS$], [do not use 
LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
+m4trace:configure.ac:26: -1- m4_pattern_allow([^AS_FLAGS$])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^_?m4_])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^dnl$])
+m4trace:configure.ac:26: -1- m4_pattern_forbid([^_?AS_])
+m4trace:configure.ac:26: -1- AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}])
+m4trace:configure.ac:26: -1- AC_SUBST([PATH_SEPARATOR])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_NAME], 
[m4_ifdef([AC_PACKAGE_NAME],      ['AC_PACKAGE_NAME'])])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_TARNAME], 
[m4_ifdef([AC_PACKAGE_TARNAME],   ['AC_PACKAGE_TARNAME'])])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_VERSION], 
[m4_ifdef([AC_PACKAGE_VERSION],   ['AC_PACKAGE_VERSION'])])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_STRING], 
[m4_ifdef([AC_PACKAGE_STRING],    ['AC_PACKAGE_STRING'])])
+m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE_BUGREPORT], 
[m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
+m4trace:configure.ac:26: -1- AC_SUBST([exec_prefix], [NONE])
+m4trace:configure.ac:26: -1- AC_SUBST([prefix], [NONE])
+m4trace:configure.ac:26: -1- AC_SUBST([program_transform_name], [s,x,x,])
+m4trace:configure.ac:26: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
+m4trace:configure.ac:26: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
+m4trace:configure.ac:26: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
+m4trace:configure.ac:26: -1- AC_SUBST([datadir], ['${prefix}/share'])
+m4trace:configure.ac:26: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
+m4trace:configure.ac:26: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
+m4trace:configure.ac:26: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
+m4trace:configure.ac:26: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
+m4trace:configure.ac:26: -1- AC_SUBST([includedir], ['${prefix}/include'])
+m4trace:configure.ac:26: -1- AC_SUBST([oldincludedir], ['/usr/include'])
+m4trace:configure.ac:26: -1- AC_SUBST([infodir], ['${prefix}/info'])
+m4trace:configure.ac:26: -1- AC_SUBST([mandir], ['${prefix}/man'])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full 
name of this package. */
+#undef PACKAGE_NAME])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the 
one symbol short name of this package. */
+#undef PACKAGE_TARNAME])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the 
version of this package. */
+#undef PACKAGE_VERSION])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the 
full name and version of this package. */
+#undef PACKAGE_STRING])
+m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
+m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the 
address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT])
+m4trace:configure.ac:26: -1- AC_SUBST([build_alias])
+m4trace:configure.ac:26: -1- AC_SUBST([host_alias])
+m4trace:configure.ac:26: -1- AC_SUBST([target_alias])
+m4trace:configure.ac:26: -1- AC_SUBST([DEFS])
+m4trace:configure.ac:26: -1- AC_SUBST([ECHO_C])
+m4trace:configure.ac:26: -1- AC_SUBST([ECHO_N])
+m4trace:configure.ac:26: -1- AC_SUBST([ECHO_T])
+m4trace:configure.ac:26: -1- AC_SUBST([LIBS])
+m4trace:configure.ac:27: -1- AM_INIT_AUTOMAKE
+m4trace:configure.ac:27: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
+m4trace:configure.ac:27: -1- AM_AUTOMAKE_VERSION([1.9.5])
+m4trace:configure.ac:27: -1- AC_PROG_INSTALL
+m4trace:configure.ac:27: -1- AC_SUBST([INSTALL_PROGRAM])
+m4trace:configure.ac:27: -1- AC_SUBST([INSTALL_SCRIPT])
+m4trace:configure.ac:27: -1- AC_SUBST([INSTALL_DATA])
+m4trace:configure.ac:27: -1- AC_SUBST([CYGPATH_W])
+m4trace:configure.ac:27: -1- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])
+m4trace:configure.ac:27: -1- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])
+m4trace:configure.ac:27: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE])
+m4trace:configure.ac:27: -1- AH_OUTPUT([PACKAGE], [/* Name of package */
+#undef PACKAGE])
+m4trace:configure.ac:27: -1- AC_DEFINE_TRACE_LITERAL([VERSION])
+m4trace:configure.ac:27: -1- AH_OUTPUT([VERSION], [/* Version number of 
package */
+#undef VERSION])
+m4trace:configure.ac:27: -1- AC_SUBST([ACLOCAL])
+m4trace:configure.ac:27: -1- AC_SUBST([AUTOCONF])
+m4trace:configure.ac:27: -1- AC_SUBST([AUTOMAKE])
+m4trace:configure.ac:27: -1- AC_SUBST([AUTOHEADER])
+m4trace:configure.ac:27: -1- AC_SUBST([MAKEINFO])
+m4trace:configure.ac:27: -1- AC_SUBST([install_sh])
+m4trace:configure.ac:27: -1- AC_SUBST([STRIP])
+m4trace:configure.ac:27: -1- AC_SUBST([ac_ct_STRIP])
+m4trace:configure.ac:27: -1- AC_SUBST([INSTALL_STRIP_PROGRAM])
+m4trace:configure.ac:27: -1- AC_SUBST([mkdir_p])
+m4trace:configure.ac:27: -1- AC_PROG_AWK
+m4trace:configure.ac:27: -1- AC_SUBST([AWK])
+m4trace:configure.ac:27: -1- AC_PROG_MAKE_SET
+m4trace:configure.ac:27: -1- AC_SUBST([SET_MAKE])
+m4trace:configure.ac:27: -1- AC_SUBST([am__leading_dot])
+m4trace:configure.ac:27: -1- AC_SUBST([AMTAR])
+m4trace:configure.ac:27: -1- AC_SUBST([am__tar])
+m4trace:configure.ac:27: -1- AC_SUBST([am__untar])
+m4trace:configure.ac:28: -1- AM_MAINTAINER_MODE
+m4trace:configure.ac:28: -1- AM_CONDITIONAL([MAINTAINER_MODE], [test 
$USE_MAINTAINER_MODE = yes])
+m4trace:configure.ac:28: -1- AC_SUBST([MAINTAINER_MODE_TRUE])
+m4trace:configure.ac:28: -1- AC_SUBST([MAINTAINER_MODE_FALSE])
+m4trace:configure.ac:28: -1- AC_SUBST([MAINT])
+m4trace:configure.ac:30: -1- AC_CONFIG_HEADERS([config.h])
+m4trace:configure.ac:31: -1- AH_OUTPUT([_GNU_SOURCE], [/* Enable GNU 
extensions on systems that have them.  */
+#ifndef _GNU_SOURCE
+# undef _GNU_SOURCE
+#endif])
+m4trace:configure.ac:31: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
+m4trace:configure.ac:36: -1- AC_PROG_CC
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([CFLAGS])
+m4trace:configure.ac:36: -1- AC_SUBST([LDFLAGS])
+m4trace:configure.ac:36: -1- AC_SUBST([CPPFLAGS])
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([ac_ct_CC])
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([ac_ct_CC])
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([CC])
+m4trace:configure.ac:36: -1- AC_SUBST([ac_ct_CC])
+m4trace:configure.ac:36: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
+m4trace:configure.ac:36: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
+m4trace:configure.ac:36: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
+m4trace:configure.ac:36: -1- AC_SUBST([am__include])
+m4trace:configure.ac:36: -1- AC_SUBST([am__quote])
+m4trace:configure.ac:36: -1- AM_CONDITIONAL([AMDEP], [test 
"x$enable_dependency_tracking" != xno])
+m4trace:configure.ac:36: -1- AC_SUBST([AMDEP_TRUE])
+m4trace:configure.ac:36: -1- AC_SUBST([AMDEP_FALSE])
+m4trace:configure.ac:36: -1- AC_SUBST([AMDEPBACKSLASH])
+m4trace:configure.ac:36: -1- AC_SUBST([CCDEPMODE], 
[depmode=$am_cv_CC_dependencies_compiler_type])
+m4trace:configure.ac:36: -1- AM_CONDITIONAL([am__fastdepCC], [
+  test "x$enable_dependency_tracking" != xno \
+  && test "$am_cv_CC_dependencies_compiler_type" = gcc3])
+m4trace:configure.ac:36: -1- AC_SUBST([am__fastdepCC_TRUE])
+m4trace:configure.ac:36: -1- AC_SUBST([am__fastdepCC_FALSE])
+m4trace:configure.ac:41: -1- AC_SUBST([IDL4CONFIG], [$ac_cv_path_IDL4CONFIG])
+m4trace:configure.ac:41: -1- AC_SUBST([ac_pt_IDL4CONFIG], 
[$ac_cv_path_ac_pt_IDL4CONFIG])
+m4trace:configure.ac:50: -1- AC_SUBST([CCAS])
+m4trace:configure.ac:50: -1- AC_SUBST([CCASFLAGS])
+m4trace:configure.ac:51: -1- AC_PROG_RANLIB
+m4trace:configure.ac:51: -1- AC_SUBST([RANLIB])
+m4trace:configure.ac:51: -1- AC_SUBST([ac_ct_RANLIB])
+m4trace:configure.ac:52: -1- AC_SUBST([AR])
+m4trace:configure.ac:52: -1- AC_SUBST([ac_ct_AR])
+m4trace:configure.ac:53: -1- AC_SUBST([NM])
+m4trace:configure.ac:53: -1- AC_SUBST([ac_ct_NM])
+m4trace:configure.ac:56: -1- AC_SUBST([IDL4])
+m4trace:configure.ac:57: -1- AC_SUBST([IDL4FLAGS])
+m4trace:configure.ac:58: -1- AC_SUBST([IDL4CONFIG])
+m4trace:configure.ac:61: -1- AC_SUBST([IDL4], [$ac_cv_path_IDL4])
+m4trace:configure.ac:61: -1- AC_SUBST([ac_pt_IDL4], [$ac_cv_path_ac_pt_IDL4])
+m4trace:configure.ac:76: -1- AC_SUBST([SED], [$ac_cv_path_SED])
+m4trace:configure.ac:77: -1- AC_SUBST([SORT], [$ac_cv_path_SORT])
+m4trace:configure.ac:80: -1- AC_SUBST([LATEX], [$ac_cv_path_LATEX])
+m4trace:configure.ac:84: -1- AC_SUBST([DVIPS], [$ac_cv_path_DVIPS])
+m4trace:configure.ac:88: -1- AC_SUBST([PS2PDF], [$ac_cv_path_PS2PDF])
+m4trace:configure.ac:92: -1- AC_SUBST([FIG2DEV], [$ac_cv_path_FIG2DEV])
+m4trace:configure.ac:101: -1- AC_CANONICAL_HOST
+m4trace:configure.ac:101: -1- AC_CANONICAL_BUILD
+m4trace:configure.ac:101: -1- AC_SUBST([build], [$ac_cv_build])
+m4trace:configure.ac:101: -1- AC_SUBST([build_cpu], [`echo $ac_cv_build | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([build_vendor], [`echo $ac_cv_build | 
sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([build_os], [`echo $ac_cv_build | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([host], [$ac_cv_host])
+m4trace:configure.ac:101: -1- AC_SUBST([host_cpu], [`echo $ac_cv_host | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([host_vendor], [`echo $ac_cv_host | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`])
+m4trace:configure.ac:101: -1- AC_SUBST([host_os], [`echo $ac_cv_host | sed 
's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`])
+m4trace:configure.ac:125: -1- AC_SUBST([STATIC_GLIBC])
+m4trace:configure.ac:131: -1- AC_C_CONST
+m4trace:configure.ac:131: -1- AC_DEFINE_TRACE_LITERAL([const])
+m4trace:configure.ac:131: -1- AH_OUTPUT([const], [/* Define to empty if 
`const\' does not conform to ANSI C. */
+#undef const])
+m4trace:configure.ac:132: -1- AC_C_VOLATILE
+m4trace:configure.ac:132: -1- AC_DEFINE_TRACE_LITERAL([volatile])
+m4trace:configure.ac:132: -1- AH_OUTPUT([volatile], [/* Define to empty if the 
keyword `volatile\' does not work. Warning: valid
+   code using `volatile\' can become incorrect without. Disable with care. */
+#undef volatile])
+m4trace:configure.ac:165: -1- AM_CONDITIONAL([ARCH_ALPHA], [$arch_alpha])
+m4trace:configure.ac:165: -1- AC_SUBST([ARCH_ALPHA_TRUE])
+m4trace:configure.ac:165: -1- AC_SUBST([ARCH_ALPHA_FALSE])
+m4trace:configure.ac:166: -1- AM_CONDITIONAL([ARCH_AMD64], [$arch_amd64])
+m4trace:configure.ac:166: -1- AC_SUBST([ARCH_AMD64_TRUE])
+m4trace:configure.ac:166: -1- AC_SUBST([ARCH_AMD64_FALSE])
+m4trace:configure.ac:167: -1- AM_CONDITIONAL([ARCH_IA32], [$arch_ia32])
+m4trace:configure.ac:167: -1- AC_SUBST([ARCH_IA32_TRUE])
+m4trace:configure.ac:167: -1- AC_SUBST([ARCH_IA32_FALSE])
+m4trace:configure.ac:168: -1- AM_CONDITIONAL([ARCH_IA64], [$arch_ia64])
+m4trace:configure.ac:168: -1- AC_SUBST([ARCH_IA64_TRUE])
+m4trace:configure.ac:168: -1- AC_SUBST([ARCH_IA64_FALSE])
+m4trace:configure.ac:169: -1- AM_CONDITIONAL([ARCH_POWERPC], [$arch_powerpc])
+m4trace:configure.ac:169: -1- AC_SUBST([ARCH_POWERPC_TRUE])
+m4trace:configure.ac:169: -1- AC_SUBST([ARCH_POWERPC_FALSE])
+m4trace:configure.ac:170: -1- AM_CONDITIONAL([ARCH_POWERPC64], 
[$arch_powerpc64])
+m4trace:configure.ac:170: -1- AC_SUBST([ARCH_POWERPC64_TRUE])
+m4trace:configure.ac:170: -1- AC_SUBST([ARCH_POWERPC64_FALSE])
+m4trace:configure.ac:173: -1- m4_include([laden/config.m4])
+m4trace:laden/config.m4:21: -2- _m4_warn([obsolete], [The macro 
`AC_HELP_STRING' is obsolete.
+You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is 
expanded from...
+acinclude.m4:33: HURD_LOAD_ADDRESS is expanded from...
+laden/config.m4:21: the top level])
+m4trace:laden/config.m4:21: -1- AC_SUBST([HURD_LADEN_LOAD_ADDRESS])
+m4trace:configure.ac:174: -1- m4_include([wortel/config.m4])
+m4trace:wortel/config.m4:21: -2- _m4_warn([obsolete], [The macro 
`AC_HELP_STRING' is obsolete.
+You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is 
expanded from...
+acinclude.m4:33: HURD_LOAD_ADDRESS is expanded from...
+wortel/config.m4:21: the top level])
+m4trace:wortel/config.m4:21: -1- AC_SUBST([HURD_WORTEL_LOAD_ADDRESS])
+m4trace:configure.ac:175: -1- m4_include([physmem/config.m4])
+m4trace:physmem/config.m4:21: -2- _m4_warn([obsolete], [The macro 
`AC_HELP_STRING' is obsolete.
+You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is 
expanded from...
+acinclude.m4:33: HURD_LOAD_ADDRESS is expanded from...
+physmem/config.m4:21: the top level])
+m4trace:physmem/config.m4:21: -1- AC_SUBST([HURD_PHYSMEM_LOAD_ADDRESS])
+m4trace:configure.ac:178: -1- m4_include([libl4/headers.m4])
+m4trace:libl4/headers.m4:78: -1- AC_CONFIG_LINKS([
+  include/l4.h:libl4/l4.h
+  include/l4/features.h:libl4/l4/features.h
+  include/l4/globals.h:libl4/l4/globals.h
+  include/l4/init.h:libl4/l4/init.h
+  include/l4/ipc.h:libl4/l4/ipc.h
+  include/l4/kip.h:libl4/l4/kip.h
+  include/l4/math.h:libl4/l4/math.h
+  include/l4/message.h:libl4/l4/message.h
+  include/l4/misc.h:libl4/l4/misc.h
+  include/l4/arch.h:libl4/l4/arch.h
+  include/l4/pagefault.h:libl4/l4/pagefault.h
+  include/l4/schedule.h:libl4/l4/schedule.h
+  include/l4/space.h:libl4/l4/space.h
+  include/l4/stubs-init.h:libl4/l4/stubs-init.h
+  include/l4/stubs.h:libl4/l4/stubs.h
+  include/l4/syscall.h:libl4/l4/syscall.h
+  include/l4/thread.h:libl4/l4/thread.h
+  include/l4/thread-start.h:libl4/l4/thread-start.h
+  include/l4/types.h:libl4/l4/types.h
+  include/l4/vregs.h:libl4/l4/vregs.h
+  include/l4/sigma0.h:libl4/l4/sigma0.h
+  include/l4/compat/ipc.h:libl4/l4/compat/ipc.h
+  include/l4/compat/kip.h:libl4/l4/compat/kip.h
+  include/l4/compat/message.h:libl4/l4/compat/message.h
+  include/l4/compat/misc.h:libl4/l4/compat/misc.h
+  include/l4/compat/schedule.h:libl4/l4/compat/schedule.h
+  include/l4/compat/space.h:libl4/l4/compat/space.h
+  include/l4/compat/syscall.h:libl4/l4/compat/syscall.h
+  include/l4/compat/thread.h:libl4/l4/compat/thread.h
+  include/l4/compat/types.h:libl4/l4/compat/types.h
+  include/l4/compat/sigma0.h:libl4/l4/compat/sigma0.h
+  include/l4/gnu/ipc.h:libl4/l4/gnu/ipc.h
+  include/l4/gnu/kip.h:libl4/l4/gnu/kip.h
+  include/l4/gnu/math.h:libl4/l4/gnu/math.h
+  include/l4/gnu/message.h:libl4/l4/gnu/message.h
+  include/l4/gnu/misc.h:libl4/l4/gnu/misc.h
+  include/l4/gnu/pagefault.h:libl4/l4/gnu/pagefault.h
+  include/l4/gnu/schedule.h:libl4/l4/gnu/schedule.h
+  include/l4/gnu/space.h:libl4/l4/gnu/space.h
+  include/l4/gnu/syscall.h:libl4/l4/gnu/syscall.h
+  include/l4/gnu/thread.h:libl4/l4/gnu/thread.h
+  include/l4/gnu/thread-start.h:libl4/l4/gnu/thread-start.h
+  include/l4/gnu/types.h:libl4/l4/gnu/types.h
+  include/l4/gnu/sigma0.h:libl4/l4/gnu/sigma0.h
+  include/l4/bits/ipc.h:libl4/${arch}/l4/bits/ipc.h
+  include/l4/bits/kip.h:libl4/${arch}/l4/bits/kip.h
+  include/l4/bits/math.h:libl4/${arch}/l4/bits/math.h
+  include/l4/bits/misc.h:libl4/${arch}/l4/bits/misc.h
+  include/l4/bits/arch.h:libl4/${arch}/l4/bits/arch.h
+  include/l4/bits/space.h:libl4/${arch}/l4/bits/space.h
+  include/l4/bits/stubs.h:libl4/${arch}/l4/bits/stubs.h
+  include/l4/bits/stubs-init.h:libl4/${arch}/l4/bits/stubs-init.h
+  include/l4/bits/syscall.h:libl4/${arch}/l4/bits/syscall.h
+  include/l4/bits/types.h:libl4/${arch}/l4/bits/types.h
+  include/l4/bits/vregs.h:libl4/${arch}/l4/bits/vregs.h
+  include/l4/bits/compat/ipc.h:libl4/${arch}/l4/bits/compat/ipc.h
+  include/l4/bits/compat/misc.h:libl4/${arch}/l4/bits/compat/misc.h
+  include/l4/bits/compat/arch.h:libl4/${arch}/l4/bits/compat/arch.h
+  include/l4/bits/compat/space.h:libl4/${arch}/l4/bits/compat/space.h
+  include/l4/bits/gnu/ipc.h:libl4/${arch}/l4/bits/gnu/ipc.h
+  include/l4/bits/gnu/kip.h:libl4/${arch}/l4/bits/gnu/kip.h
+  include/l4/bits/gnu/misc.h:libl4/${arch}/l4/bits/gnu/misc.h
+  include/l4/bits/gnu/arch.h:libl4/${arch}/l4/bits/gnu/arch.h
+  include/l4/bits/gnu/space.h:libl4/${arch}/l4/bits/gnu/space.h
+])
+m4trace:configure.ac:179: -1- m4_include([platform/headers.m4])
+m4trace:platform/headers.m4:17: -1- AC_CONFIG_LINKS([
+  include/atomic.h:platform/atomic.h
+  include/bits/atomic.h:platform/${arch}/bits/atomic.h
+  include/compiler.h:platform/compiler.h
+])
+m4trace:configure.ac:180: -1- m4_include([hurd/headers.m4])
+m4trace:hurd/headers.m4:14: -1- 
AC_CONFIG_LINKS([include/hurd/types.h:hurd/types.h
+                include/hurd/startup.h:hurd/startup.h])
+m4trace:configure.ac:181: -1- m4_include([libhurd-ihash/headers.m4])
+m4trace:libhurd-ihash/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/ihash.h:libhurd-ihash/ihash.h])
+m4trace:configure.ac:182: -1- m4_include([libhurd-btree/headers.m4])
+m4trace:libhurd-btree/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/btree.h:libhurd-btree/btree.h])
+m4trace:configure.ac:183: -1- m4_include([libhurd-slab/headers.m4])
+m4trace:libhurd-slab/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/slab.h:libhurd-slab/slab.h])
+m4trace:configure.ac:184: -1- m4_include([libhurd-cap/headers.m4])
+m4trace:libhurd-cap/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/cap.h:libhurd-cap/cap.h])
+m4trace:configure.ac:185: -1- m4_include([libhurd-cap-server/headers.m4])
+m4trace:libhurd-cap-server/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/cap-server.h:libhurd-cap-server/cap-server.h])
+m4trace:configure.ac:186: -1- m4_include([libhurd-mm/headers.m4])
+m4trace:libhurd-mm/headers.m4:17: -1- AC_CONFIG_LINKS([
+  include/hurd/mm.h:libhurd-mm/mm.h
+  include/hurd/vm.h:libhurd-mm/vm.h
+  include/hurd/anonymous.h:libhurd-mm/anonymous.h
+])
+m4trace:configure.ac:187: -1- m4_include([libpthread/headers.m4])
+m4trace:libpthread/headers.m4:34: -1- AC_CONFIG_LINKS([
+  include/pthread.h:libpthread/include/pthread.h
+  include/pthread/pthread.h:libpthread/include/pthread/pthread.h
+  include/bits/memory.h:libpthread/sysdeps/${arch}/bits/memory.h
+  include/bits/spin-lock.h:libpthread/sysdeps/${arch}/bits/spin-lock.h
+  include/bits/pthreadtypes.h:libpthread/sysdeps/generic/bits/pthreadtypes.h
+  include/bits/barrier-attr.h:libpthread/sysdeps/generic/bits/barrier-attr.h
+  include/bits/barrier.h:libpthread/sysdeps/generic/bits/barrier.h
+  include/bits/cancelation.h:libpthread/sysdeps/generic/bits/cancelation.h
+  
include/bits/condition-attr.h:libpthread/sysdeps/generic/bits/condition-attr.h
+  include/bits/condition.h:libpthread/sysdeps/generic/bits/condition.h
+  include/bits/mutex-attr.h:libpthread/sysdeps/generic/bits/mutex-attr.h
+  include/bits/mutex.h:libpthread/sysdeps/generic/bits/mutex.h
+  include/bits/once.h:libpthread/sysdeps/generic/bits/once.h
+  include/bits/pthread.h:libpthread/sysdeps/generic/bits/pthread.h
+  include/bits/rwlock-attr.h:libpthread/sysdeps/generic/bits/rwlock-attr.h
+  include/bits/rwlock.h:libpthread/sysdeps/generic/bits/rwlock.h
+  include/bits/thread-attr.h:libpthread/sysdeps/generic/bits/thread-attr.h
+  
include/bits/thread-barrier.h:libpthread/sysdeps/generic/bits/thread-barrier.h
+  
include/bits/thread-specific.h:libpthread/sysdeps/generic/bits/thread-specific.h
+  include/bits/pthread-np.h:libpthread/sysdeps/l4/bits/pthread-np.h
+])
+m4trace:configure.ac:188: -1- m4_include([wortel/headers.m4])
+m4trace:wortel/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/wortel.h:wortel/wortel.h])
+m4trace:configure.ac:189: -1- m4_include([physmem/headers.m4])
+m4trace:physmem/headers.m4:13: -1- 
AC_CONFIG_LINKS([include/hurd/physmem.h:physmem/physmem.h])
+m4trace:configure.ac:195: -1- AM_CONDITIONAL([WITH_LIBC], [test 
x"${with_libc-no}" != xno])
+m4trace:configure.ac:195: -1- AC_SUBST([WITH_LIBC_TRUE])
+m4trace:configure.ac:195: -1- AC_SUBST([WITH_LIBC_FALSE])
+m4trace:configure.ac:226: -1- AC_CONFIG_FILES([Makefile
+                libl4/ia32/Makefile libl4/powerpc/Makefile
+                libl4/tests/Makefile libl4/Makefile
+                platform/alpha/Makefile platform/amd64/Makefile
+                platform/ia32/Makefile platform/ia64/Makefile
+                platform/powerpc/Makefile platform/powerpc64/Makefile
+                platform/Makefile
+                libc-parts/Makefile
+                hurd/Makefile
+                libhurd-ihash/Makefile
+                libhurd-btree/Makefile
+                libhurd-slab/Makefile
+                libhurd-cap/Makefile
+                libhurd-cap-server/Makefile
+                libhurd-mm/Makefile
+                libpthread/Makefile
+                 laden/Makefile
+                 wortel/Makefile
+                 physmem/Makefile
+                 task/Makefile
+                 deva/Makefile
+                libc/Makefile
+                 ruth/Makefile
+                doc/Makefile])
+m4trace:configure.ac:227: -1- AC_SUBST([LIB@&address@hidden, [$ac_libobjs])
+m4trace:configure.ac:227: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
diff -Naur hurd-l4/compile hurd-l4-new/compile
--- hurd-l4/compile     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/compile 2005-07-13 18:30:52.262806160 +0200
@@ -0,0 +1,142 @@
+#! /bin/sh
+# Wrapper for compilers which do not understand `-c -o'.
+
+scriptversion=2005-02-03.08
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Tom Tromey <address@hidden>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <address@hidden> or send patches to
+# <address@hidden>.
+
+case $1 in
+  '')
+     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: compile [--help] [--version] PROGRAM [ARGS]
+
+Wrapper for compilers which do not understand `-c -o'.
+Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
+arguments, and rename the output as expected.
+
+If you are trying to build a whole package this is not the
+right script to run: please start by reading the file `INSTALL'.
+
+Report bugs to <address@hidden>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "compile $scriptversion"
+    exit $?
+    ;;
+esac
+
+ofile=
+cfile=
+eat=
+
+for arg
+do
+  if test -n "$eat"; then
+    eat=
+  else
+    case $1 in
+      -o)
+       # configure might choose to run compile as `compile cc -o foo foo.c'.
+       # So we strip `-o arg' only if arg is an object.
+       eat=1
+       case $2 in
+         *.o | *.obj)
+           ofile=$2
+           ;;
+         *)
+           set x "$@" -o "$2"
+           shift
+           ;;
+       esac
+       ;;
+      *.c)
+       cfile=$1
+       set x "$@" "$1"
+       shift
+       ;;
+      *)
+       set x "$@" "$1"
+       shift
+       ;;
+    esac
+  fi
+  shift
+done
+
+if test -z "$ofile" || test -z "$cfile"; then
+  # If no `-o' option was seen then we might have been invoked from a
+  # pattern rule where we don't need one.  That is ok -- this is a
+  # normal compilation that the losing compiler can handle.  If no
+  # `.c' file was seen then we are probably linking.  That is also
+  # ok.
+  exec "$@"
+fi
+
+# Name of file we expect compiler to create.
+cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
+
+# Create the lock directory.
+# Note: use `[/.-]' here to ensure that we don't use the same name
+# that we are using for the .o file.  Also, base the name on the expected
+# object file name, since that is what matters with a parallel build.
+lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
+while true; do
+  if mkdir "$lockdir" >/dev/null 2>&1; then
+    break
+  fi
+  sleep 1
+done
+# FIXME: race condition here if user kills between mkdir and trap.
+trap "rmdir '$lockdir'; exit 1" 1 2 15
+
+# Run the compile.
+"$@"
+ret=$?
+
+if test -f "$cofile"; then
+  mv "$cofile" "$ofile"
+elif test -f "${cofile}bj"; then
+  mv "${cofile}bj" "$ofile"
+fi
+
+rmdir "$lockdir"
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff -Naur hurd-l4/config.guess hurd-l4-new/config.guess
--- hurd-l4/config.guess        1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/config.guess    2005-07-13 18:30:52.263806008 +0200
@@ -0,0 +1,1479 @@
+#! /bin/sh
+# Attempt to guess a canonical system name.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+
+timestamp='2005-03-24'
+
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# Originally written by Per Bothner <address@hidden>.
+# Please send patches to <address@hidden>.  Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
+# This script attempts to guess a canonical system name similar to
+# config.sub.  If it succeeds, it prints the system name on stdout, and
+# exits with 0.  Otherwise, it exits with 1.
+#
+# The plan is that this can be called by configure scripts if you
+# don't specify an explicit build system type.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <address@hidden>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 
2002, 2003, 2004, 2005
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )        # Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help" >&2
+       exit 1 ;;
+    * )
+       break ;;
+  esac
+done
+
+if test $# != 0; then
+  echo "$me: too many arguments$help" >&2
+  exit 1
+fi
+
+trap 'exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+# compiler to aid in system detection is discouraged as it requires
+# temporary files to be created and, as you can see below, it is a
+# headache to deal with in a portable fashion.
+
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+# Portable tmp directory creation inspired by the Autoconf team.
+
+set_cc_for_build='
+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && 
exit \$exitcode" 0 ;
+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 
;
+: ${TMPDIR=/tmp} ;
+ { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n 
"$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) 
; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating 
insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } 
;
+dummy=$tmp/dummy ;
+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
+case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,)    echo "int x;" > $dummy.c ;
+       for c in cc gcc c89 c99 ; do
+         if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+            CC_FOR_BUILD="$c"; break ;
+         fi ;
+       done ;
+       if test x"$CC_FOR_BUILD" = x ; then
+         CC_FOR_BUILD=no_compiler_found ;
+       fi
+       ;;
+ ,,*)   CC_FOR_BUILD=$CC ;;
+ ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+esac ;'
+
+# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+# (address@hidden 1994-08-24)
+if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+       PATH=$PATH:/.attbin ; export PATH
+fi
+
+UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
+UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
+UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+
+if [ "${UNAME_SYSTEM}" = "Linux" ] ; then
+       eval $set_cc_for_build
+       cat << EOF > $dummy.c
+       #include <features.h>
+       #ifdef __UCLIBC__
+       # ifdef __UCLIBC_CONFIG_VERSION__
+       LIBC=uclibc __UCLIBC_CONFIG_VERSION__
+       # else
+       LIBC=uclibc
+       # endif
+       #else
+       LIBC=gnu
+       #endif
+EOF
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep LIBC= | sed -e 's: 
::g'`
+fi
+
+# Note: order is significant - the case branches are not exclusive.
+
+case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+    *:NetBSD:*:*)
+       # NetBSD (nbsd) targets should (where applicable) match one or
+       # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+       # *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
+       # switched to ELF, *-*-netbsd* would select the old
+       # object file format.  This provides both forward
+       # compatibility and a consistent mechanism for selecting the
+       # object file format.
+       #
+       # Note: NetBSD doesn't particularly care about the vendor
+       # portion of the name.  We always set it to "unknown".
+       sysctl="sysctl -n hw.machine_arch"
+       UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+           /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+       case "${UNAME_MACHINE_ARCH}" in
+           armeb) machine=armeb-unknown ;;
+           arm*) machine=arm-unknown ;;
+           sh3el) machine=shl-unknown ;;
+           sh3eb) machine=sh-unknown ;;
+           *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+       esac
+       # The Operating System including object format, if it has switched
+       # to ELF recently, or will in the future.
+       case "${UNAME_MACHINE_ARCH}" in
+           arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+               eval $set_cc_for_build
+               if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+                       | grep __ELF__ >/dev/null
+               then
+                   # Once all utilities can be ECOFF (netbsdecoff) or a.out 
(netbsdaout).
+                   # Return netbsd for either.  FIX?
+                   os=netbsd
+               else
+                   os=netbsdelf
+               fi
+               ;;
+           *)
+               os=netbsd
+               ;;
+       esac
+       # The OS release
+       # Debian GNU/NetBSD machines have a different userland, and
+       # thus, need a distinct triplet. However, they do not need
+       # kernel version information, so it can be replaced with a
+       # suitable tag, in the style of linux-gnu.
+       case "${UNAME_VERSION}" in
+           Debian*)
+               release='-gnu'
+               ;;
+           *)
+               release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+               ;;
+       esac
+       # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+       # contains redundant information, the shorter form:
+       # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+       echo "${machine}-${os}${release}"
+       exit 0 ;;
+    amd64:OpenBSD:*:*)
+       echo x86_64-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    amiga:OpenBSD:*:*)
+       echo m68k-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    cats:OpenBSD:*:*)
+       echo arm-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    hp300:OpenBSD:*:*)
+       echo m68k-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    luna88k:OpenBSD:*:*)
+       echo m88k-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    mac68k:OpenBSD:*:*)
+       echo m68k-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    macppc:OpenBSD:*:*)
+       echo powerpc-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    mvme68k:OpenBSD:*:*)
+       echo m68k-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    mvme88k:OpenBSD:*:*)
+       echo m88k-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    mvmeppc:OpenBSD:*:*)
+       echo powerpc-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    sgi:OpenBSD:*:*)
+       echo mips64-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    sun3:OpenBSD:*:*)
+       echo m68k-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    *:OpenBSD:*:*)
+       echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
+    *:ekkoBSD:*:*)
+       echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+       exit 0 ;;
+    macppc:MirBSD:*:*)
+       echo powerppc-unknown-mirbsd${UNAME_RELEASE}
+       exit 0 ;;
+    *:MirBSD:*:*)
+       echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+       exit 0 ;;
+    alpha:OSF1:*:*)
+       case $UNAME_RELEASE in
+       *4.0)
+               UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+               ;;
+       *5.*)
+               UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+               ;;
+       esac
+       # According to Compaq, /usr/sbin/psrinfo has been available on
+       # OSF/1 and Tru64 systems produced since 1995.  I hope that
+       # covers most systems running today.  This code pipes the CPU
+       # types through head -n 1, so we only detect the type of CPU 0.
+       ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) 
processor.*$/\1/p' | head -n 1`
+       case "$ALPHA_CPU_TYPE" in
+           "EV4 (21064)")
+               UNAME_MACHINE="alpha" ;;
+           "EV4.5 (21064)")
+               UNAME_MACHINE="alpha" ;;
+           "LCA4 (21066/21068)")
+               UNAME_MACHINE="alpha" ;;
+           "EV5 (21164)")
+               UNAME_MACHINE="alphaev5" ;;
+           "EV5.6 (21164A)")
+               UNAME_MACHINE="alphaev56" ;;
+           "EV5.6 (21164PC)")
+               UNAME_MACHINE="alphapca56" ;;
+           "EV5.7 (21164PC)")
+               UNAME_MACHINE="alphapca57" ;;
+           "EV6 (21264)")
+               UNAME_MACHINE="alphaev6" ;;
+           "EV6.7 (21264A)")
+               UNAME_MACHINE="alphaev67" ;;
+           "EV6.8CB (21264C)")
+               UNAME_MACHINE="alphaev68" ;;
+           "EV6.8AL (21264B)")
+               UNAME_MACHINE="alphaev68" ;;
+           "EV6.8CX (21264D)")
+               UNAME_MACHINE="alphaev68" ;;
+           "EV6.9A (21264/EV69A)")
+               UNAME_MACHINE="alphaev69" ;;
+           "EV7 (21364)")
+               UNAME_MACHINE="alphaev7" ;;
+           "EV7.9 (21364A)")
+               UNAME_MACHINE="alphaev79" ;;
+       esac
+       # A Pn.n version is a patched version.
+       # A Vn.n version is a released version.
+       # A Tn.n version is a released field test version.
+       # A Xn.n version is an unreleased experimental baselevel.
+       # 1.2 uses "1.2" for uname -r.
+       echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 
's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+       exit 0 ;;
+    Alpha\ *:Windows_NT*:*)
+       # How do we know it's Interix rather than the generic POSIX subsystem?
+       # Should we change UNAME_MACHINE based on the output of uname instead
+       # of the specific Alpha model?
+       echo alpha-pc-interix
+       exit 0 ;;
+    21064:Windows_NT:50:3)
+       echo alpha-dec-winnt3.5
+       exit 0 ;;
+    Amiga*:UNIX_System_V:4.0:*)
+       echo m68k-unknown-sysv4
+       exit 0;;
+    *:[Aa]miga[Oo][Ss]:*:*)
+       echo ${UNAME_MACHINE}-unknown-amigaos
+       exit 0 ;;
+    *:[Mm]orph[Oo][Ss]:*:*)
+       echo ${UNAME_MACHINE}-unknown-morphos
+       exit 0 ;;
+    *:OS/390:*:*)
+       echo i370-ibm-openedition
+       exit 0 ;;
+    *:z/VM:*:*)
+       echo s390-ibm-zvmoe
+       exit 0 ;;
+    *:OS400:*:*)
+        echo powerpc-ibm-os400
+       exit 0 ;;
+    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+       echo arm-acorn-riscix${UNAME_RELEASE}
+       exit 0;;
+    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+       echo hppa1.1-hitachi-hiuxmpp
+       exit 0;;
+    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+       # address@hidden (Earle F. Ake) contributed MIS and NILE.
+       if test "`(/bin/universe) 2>/dev/null`" = att ; then
+               echo pyramid-pyramid-sysv3
+       else
+               echo pyramid-pyramid-bsd
+       fi
+       exit 0 ;;
+    NILE*:*:*:dcosx)
+       echo pyramid-pyramid-svr4
+       exit 0 ;;
+    DRS?6000:unix:4.0:6*)
+       echo sparc-icl-nx6
+       exit 0 ;;
+    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+       case `/usr/bin/uname -p` in
+           sparc) echo sparc-icl-nx7 && exit 0 ;;
+       esac ;;
+    sun4H:SunOS:5.*:*)
+       echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+       exit 0 ;;
+    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+       echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+       exit 0 ;;
+    i86pc:SunOS:5.*:*)
+       echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+       exit 0 ;;
+    sun4*:SunOS:6*:*)
+       # According to config.sub, this is the proper way to canonicalize
+       # SunOS6.  Hard to guess exactly what SunOS6 will be like, but
+       # it's likely to be more like Solaris than SunOS4.
+       echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+       exit 0 ;;
+    sun4*:SunOS:*:*)
+       case "`/usr/bin/arch -k`" in
+           Series*|S4*)
+               UNAME_RELEASE=`uname -v`
+               ;;
+       esac
+       # Japanese Language versions have a version number like `4.1.3-JL'.
+       echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+       exit 0 ;;
+    sun3*:SunOS:*:*)
+       echo m68k-sun-sunos${UNAME_RELEASE}
+       exit 0 ;;
+    sun*:*:4.2BSD:*)
+       UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 
2>/dev/null`
+       test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+       case "`/bin/arch`" in
+           sun3)
+               echo m68k-sun-sunos${UNAME_RELEASE}
+               ;;
+           sun4)
+               echo sparc-sun-sunos${UNAME_RELEASE}
+               ;;
+       esac
+       exit 0 ;;
+    aushp:SunOS:*:*)
+       echo sparc-auspex-sunos${UNAME_RELEASE}
+       exit 0 ;;
+    # The situation for MiNT is a little confusing.  The machine name
+    # can be virtually everything (everything which is not
+    # "atarist" or "atariste" at least should have a processor
+    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
+    # to the lowercase version "mint" (or "freemint").  Finally
+    # the system name "TOS" denotes a system which is actually not
+    # MiNT.  But MiNT is downward compatible to TOS, so this should
+    # be no problem.
+    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
+       exit 0 ;;
+    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+       echo m68k-atari-mint${UNAME_RELEASE}
+        exit 0 ;;
+    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
+       exit 0 ;;
+    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+        echo m68k-milan-mint${UNAME_RELEASE}
+        exit 0 ;;
+    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+        echo m68k-hades-mint${UNAME_RELEASE}
+        exit 0 ;;
+    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+        echo m68k-unknown-mint${UNAME_RELEASE}
+        exit 0 ;;
+    m68k:machten:*:*)
+       echo m68k-apple-machten${UNAME_RELEASE}
+       exit 0 ;;
+    powerpc:machten:*:*)
+       echo powerpc-apple-machten${UNAME_RELEASE}
+       exit 0 ;;
+    RISC*:Mach:*:*)
+       echo mips-dec-mach_bsd4.3
+       exit 0 ;;
+    RISC*:ULTRIX:*:*)
+       echo mips-dec-ultrix${UNAME_RELEASE}
+       exit 0 ;;
+    VAX*:ULTRIX*:*:*)
+       echo vax-dec-ultrix${UNAME_RELEASE}
+       exit 0 ;;
+    2020:CLIX:*:* | 2430:CLIX:*:*)
+       echo clipper-intergraph-clix${UNAME_RELEASE}
+       exit 0 ;;
+    mips:*:*:UMIPS | mips:*:*:RISCos)
+       eval $set_cc_for_build
+       sed 's/^        //' << EOF >$dummy.c
+#ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
+       int main (int argc, char *argv[]) {
+#else
+       int main (argc, argv) int argc; char *argv[]; {
+#endif
+       #if defined (host_mips) && defined (MIPSEB)
+       #if defined (SYSTYPE_SYSV)
+         printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+       #endif
+       #if defined (SYSTYPE_SVR4)
+         printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+       #endif
+       #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+         printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+       #endif
+       #endif
+         exit (-1);
+       }
+EOF
+       $CC_FOR_BUILD -o $dummy $dummy.c \
+         && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+         && exit 0
+       echo mips-mips-riscos${UNAME_RELEASE}
+       exit 0 ;;
+    Motorola:PowerMAX_OS:*:*)
+       echo powerpc-motorola-powermax
+       exit 0 ;;
+    Motorola:*:4.3:PL8-*)
+       echo powerpc-harris-powermax
+       exit 0 ;;
+    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+       echo powerpc-harris-powermax
+       exit 0 ;;
+    Night_Hawk:Power_UNIX:*:*)
+       echo powerpc-harris-powerunix
+       exit 0 ;;
+    m88k:CX/UX:7*:*)
+       echo m88k-harris-cxux7
+       exit 0 ;;
+    m88k:*:4*:R4*)
+       echo m88k-motorola-sysv4
+       exit 0 ;;
+    m88k:*:3*:R3*)
+       echo m88k-motorola-sysv3
+       exit 0 ;;
+    AViiON:dgux:*:*)
+        # DG/UX returns AViiON for all architectures
+        UNAME_PROCESSOR=`/usr/bin/uname -p`
+       if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+       then
+           if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+              [ ${TARGET_BINARY_INTERFACE}x = x ]
+           then
+               echo m88k-dg-dgux${UNAME_RELEASE}
+           else
+               echo m88k-dg-dguxbcs${UNAME_RELEASE}
+           fi
+       else
+           echo i586-dg-dgux${UNAME_RELEASE}
+       fi
+       exit 0 ;;
+    M88*:DolphinOS:*:*)        # DolphinOS (SVR3)
+       echo m88k-dolphin-sysv3
+       exit 0 ;;
+    M88*:*:R3*:*)
+       # Delta 88k system running SVR3
+       echo m88k-motorola-sysv3
+       exit 0 ;;
+    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+       echo m88k-tektronix-sysv3
+       exit 0 ;;
+    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+       echo m68k-tektronix-bsd
+       exit 0 ;;
+    *:IRIX*:*:*)
+       echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+       exit 0 ;;
+    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+       echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
+       exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
+    i*86:AIX:*:*)
+       echo i386-ibm-aix
+       exit 0 ;;
+    ia64:AIX:*:*)
+       if [ -x /usr/bin/oslevel ] ; then
+               IBM_REV=`/usr/bin/oslevel`
+       else
+               IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+       fi
+       echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+       exit 0 ;;
+    *:AIX:2:3)
+       if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+               eval $set_cc_for_build
+               sed 's/^                //' << EOF >$dummy.c
+               #include <sys/systemcfg.h>
+
+               main()
+                       {
+                       if (!__power_pc())
+                               exit(1);
+                       puts("powerpc-ibm-aix3.2.5");
+                       exit(0);
+                       }
+EOF
+               $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+               echo rs6000-ibm-aix3.2.5
+       elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+               echo rs6000-ibm-aix3.2.4
+       else
+               echo rs6000-ibm-aix3.2
+       fi
+       exit 0 ;;
+    *:AIX:*:[45])
+       IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk 
'{ print $1 }'`
+       if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; 
then
+               IBM_ARCH=rs6000
+       else
+               IBM_ARCH=powerpc
+       fi
+       if [ -x /usr/bin/oslevel ] ; then
+               IBM_REV=`/usr/bin/oslevel`
+       else
+               IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+       fi
+       echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+       exit 0 ;;
+    *:AIX:*:*)
+       echo rs6000-ibm-aix
+       exit 0 ;;
+    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+       echo romp-ibm-bsd4.4
+       exit 0 ;;
+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
+       echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
+       exit 0 ;;                           # report: romp-ibm BSD 4.3
+    *:BOSX:*:*)
+       echo rs6000-bull-bosx
+       exit 0 ;;
+    DPX/2?00:B.O.S.:*:*)
+       echo m68k-bull-sysv3
+       exit 0 ;;
+    9000/[34]??:4.3bsd:1.*:*)
+       echo m68k-hp-bsd
+       exit 0 ;;
+    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+       echo m68k-hp-bsd4.4
+       exit 0 ;;
+    9000/[34678]??:HP-UX:*:*)
+       HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+       case "${UNAME_MACHINE}" in
+           9000/31? )            HP_ARCH=m68000 ;;
+           9000/[34]?? )         HP_ARCH=m68k ;;
+           9000/[678][0-9][0-9])
+               if [ -x /usr/bin/getconf ]; then
+                   sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 
2>/dev/null`
+                    case "${sc_cpu_version}" in
+                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+                      532)                      # CPU_PA_RISC2_0
+                        case "${sc_kernel_bits}" in
+                          32) HP_ARCH="hppa2.0n" ;;
+                          64) HP_ARCH="hppa2.0w" ;;
+                         '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
+                        esac ;;
+                    esac
+               fi
+               if [ "${HP_ARCH}" = "" ]; then
+                   eval $set_cc_for_build
+                   sed 's/^              //' << EOF >$dummy.c
+
+              #define _HPUX_SOURCE
+              #include <stdlib.h>
+              #include <unistd.h>
+
+              int main ()
+              {
+              #if defined(_SC_KERNEL_BITS)
+                  long bits = sysconf(_SC_KERNEL_BITS);
+              #endif
+                  long cpu  = sysconf (_SC_CPU_VERSION);
+
+                  switch (cpu)
+               {
+               case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+               case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+               case CPU_PA_RISC2_0:
+              #if defined(_SC_KERNEL_BITS)
+                   switch (bits)
+                       {
+                       case 64: puts ("hppa2.0w"); break;
+                       case 32: puts ("hppa2.0n"); break;
+                       default: puts ("hppa2.0"); break;
+                       } break;
+              #else  /* !defined(_SC_KERNEL_BITS) */
+                   puts ("hppa2.0"); break;
+              #endif
+               default: puts ("hppa1.0"); break;
+               }
+                  exit (0);
+              }
+EOF
+                   (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && 
HP_ARCH=`$dummy`
+                   test -z "$HP_ARCH" && HP_ARCH=hppa
+               fi ;;
+       esac
+       if [ ${HP_ARCH} = "hppa2.0w" ]
+       then
+           # avoid double evaluation of $set_cc_for_build
+           test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
+           if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ 
>/dev/null
+           then
+               HP_ARCH="hppa2.0w"
+           else
+               HP_ARCH="hppa64"
+           fi
+       fi
+       echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+       exit 0 ;;
+    ia64:HP-UX:*:*)
+       HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+       echo ia64-hp-hpux${HPUX_REV}
+       exit 0 ;;
+    3050*:HI-UX:*:*)
+       eval $set_cc_for_build
+       sed 's/^        //' << EOF >$dummy.c
+       #include <unistd.h>
+       int
+       main ()
+       {
+         long cpu = sysconf (_SC_CPU_VERSION);
+         /* The order matters, because CPU_IS_HP_MC68K erroneously returns
+            true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
+            results, however.  */
+         if (CPU_IS_PA_RISC (cpu))
+           {
+             switch (cpu)
+               {
+                 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
+                 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
+                 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
+                 default: puts ("hppa-hitachi-hiuxwe2"); break;
+               }
+           }
+         else if (CPU_IS_HP_MC68K (cpu))
+           puts ("m68k-hitachi-hiuxwe2");
+         else puts ("unknown-hitachi-hiuxwe2");
+         exit (0);
+       }
+EOF
+       $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+       echo unknown-hitachi-hiuxwe2
+       exit 0 ;;
+    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+       echo hppa1.1-hp-bsd
+       exit 0 ;;
+    9000/8??:4.3bsd:*:*)
+       echo hppa1.0-hp-bsd
+       exit 0 ;;
+    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+       echo hppa1.0-hp-mpeix
+       exit 0 ;;
+    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+       echo hppa1.1-hp-osf
+       exit 0 ;;
+    hp8??:OSF1:*:*)
+       echo hppa1.0-hp-osf
+       exit 0 ;;
+    i*86:OSF1:*:*)
+       if [ -x /usr/sbin/sysversion ] ; then
+           echo ${UNAME_MACHINE}-unknown-osf1mk
+       else
+           echo ${UNAME_MACHINE}-unknown-osf1
+       fi
+       exit 0 ;;
+    parisc*:Lites*:*:*)
+       echo hppa1.1-hp-lites
+       exit 0 ;;
+    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+       echo c1-convex-bsd
+        exit 0 ;;
+    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+       if getsysinfo -f scalar_acc
+       then echo c32-convex-bsd
+       else echo c2-convex-bsd
+       fi
+        exit 0 ;;
+    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+       echo c34-convex-bsd
+        exit 0 ;;
+    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+       echo c38-convex-bsd
+        exit 0 ;;
+    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+       echo c4-convex-bsd
+        exit 0 ;;
+    CRAY*Y-MP:*:*:*)
+       echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+       exit 0 ;;
+    CRAY*[A-Z]90:*:*:*)
+       echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+       | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+             -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+             -e 's/\.[^.]*$/.X/'
+       exit 0 ;;
+    CRAY*TS:*:*:*)
+       echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+       exit 0 ;;
+    CRAY*T3E:*:*:*)
+       echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+       exit 0 ;;
+    CRAY*SV1:*:*:*)
+       echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+       exit 0 ;;
+    *:UNICOS/mp:*:*)
+       echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+       exit 0 ;;
+    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+       FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
'abcdefghijklmnopqrstuvwxyz'`
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+        exit 0 ;;
+    5000:UNIX_System_V:4.*:*)
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+       exit 0 ;;
+    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+       echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+       exit 0 ;;
+    sparc*:BSD/OS:*:*)
+       echo sparc-unknown-bsdi${UNAME_RELEASE}
+       exit 0 ;;
+    *:BSD/OS:*:*)
+       echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+       exit 0 ;;
+    *:FreeBSD:*:*)
+       echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 
's/[-(].*//'`
+       exit 0 ;;
+    i*:CYGWIN*:*)
+       echo ${UNAME_MACHINE}-pc-cygwin
+       exit 0 ;;
+    i*:MINGW*:*)
+       echo ${UNAME_MACHINE}-pc-mingw32
+       exit 0 ;;
+    i*:PW*:*)
+       echo ${UNAME_MACHINE}-pc-pw32
+       exit 0 ;;
+    x86:Interix*:[34]*)
+       echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
+       exit 0 ;;
+    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+       echo i${UNAME_MACHINE}-pc-mks
+       exit 0 ;;
+    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+       # How do we know it's Interix rather than the generic POSIX subsystem?
+       # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+       # UNAME_MACHINE based on the output of uname instead of i386?
+       echo i586-pc-interix
+       exit 0 ;;
+    i*:UWIN*:*)
+       echo ${UNAME_MACHINE}-pc-uwin
+       exit 0 ;;
+    amd64:CYGWIN*:*:*)
+       echo x86_64-unknown-cygwin
+       exit 0 ;;
+    p*:CYGWIN*:*)
+       echo powerpcle-unknown-cygwin
+       exit 0 ;;
+    prep*:SunOS:5.*:*)
+       echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 
's/[^.]*//'`
+       exit 0 ;;
+    *:GNU:*:*)
+       # the GNU system
+       echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo 
${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+       exit 0 ;;
+    *:GNU/*:*:*)
+       # other systems with GNU libc and userland
+       echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' 
| tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+       exit 0 ;;
+    i*86:Minix:*:*)
+       echo ${UNAME_MACHINE}-pc-minix
+       exit 0 ;;
+    arm*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit 0 ;;
+    cris:Linux:*:*)
+       echo cris-axis-linux-${LIBC}
+       exit 0 ;;
+    crisv32:Linux:*:*)
+       echo crisv32-axis-linux-${LIBC}
+       exit 0 ;;
+    frv:Linux:*:*)
+       echo frv-unknown-linux-${LIBC}
+       exit 0 ;;
+    ia64:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit 0 ;;
+    m32r*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit 0 ;;
+    m68*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit 0 ;;
+    mips:Linux:*:*)
+       eval $set_cc_for_build
+       sed 's/^        //' << EOF >$dummy.c
+       #undef CPU
+       #undef mips
+       #undef mipsel
+       #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || 
defined(MIPSEL)
+       CPU=mipsel
+       #else
+       #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || 
defined(MIPSEB)
+       CPU=mips
+       #else
+       CPU=
+       #endif
+       #endif
+EOF
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+       test x"${CPU}" != x && echo "${CPU}-unknown-linux-${LIBC}" && exit 0
+       ;;
+    mips64:Linux:*:*)
+       eval $set_cc_for_build
+       sed 's/^        //' << EOF >$dummy.c
+       #undef CPU
+       #undef mips64
+       #undef mips64el
+       #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || 
defined(MIPSEL)
+       CPU=mips64el
+       #else
+       #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || 
defined(MIPSEB)
+       CPU=mips64
+       #else
+       CPU=
+       #endif
+       #endif
+EOF
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+       test x"${CPU}" != x && echo "${CPU}-unknown-linux-${LIBC}" && exit 0
+       ;;
+    ppc:Linux:*:*)
+       echo powerpc-unknown-linux-${LIBC}
+       exit 0 ;;
+    ppc64:Linux:*:*)
+       echo powerpc64-unknown-linux-${LIBC}
+       exit 0 ;;
+    alpha:Linux:*:*)
+       case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+         EV5)   UNAME_MACHINE=alphaev5 ;;
+         EV56)  UNAME_MACHINE=alphaev56 ;;
+         PCA56) UNAME_MACHINE=alphapca56 ;;
+         PCA57) UNAME_MACHINE=alphapca56 ;;
+         EV6)   UNAME_MACHINE=alphaev6 ;;
+         EV67)  UNAME_MACHINE=alphaev67 ;;
+         EV68*) UNAME_MACHINE=alphaev68 ;;
+        esac
+       objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+       if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit 0 ;;
+    parisc:Linux:*:* | hppa:Linux:*:*)
+       # Look for CPU level
+       case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+         PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
+         PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
+         *)    echo hppa-unknown-linux-${LIBC} ;;
+       esac
+       exit 0 ;;
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+       echo hppa64-unknown-linux-${LIBC}
+       exit 0 ;;
+    s390:Linux:*:* | s390x:Linux:*:*)
+       echo ${UNAME_MACHINE}-ibm-linux
+       exit 0 ;;
+    sh64*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit 0 ;;
+    sh*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit 0 ;;
+    sparc:Linux:*:* | sparc64:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit 0 ;;
+    x86_64:Linux:*:*)
+       echo x86_64-unknown-linux-${LIBC}
+       exit 0 ;;
+    i*86:Linux:*:*)
+       # The BFD linker knows what the default object file format is, so
+       # first see if it will tell us. cd to the root directory to prevent
+       # problems with other programs or directories called `ld' in the path.
+       # Set LC_ALL=C to ensure ld outputs messages in English.
+       ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+                        | sed -ne '/supported targets:/!d
+                                   s/[         ][      ]*/ /g
+                                   s/.*supported targets: *//
+                                   s/ .*//
+                                   p'`
+        case "$ld_supported_targets" in
+         elf32-i386)
+               TENTATIVE="${UNAME_MACHINE}-pc-linux-${LIBC}"
+               ;;
+         a.out-i386-linux)
+               echo "${UNAME_MACHINE}-pc-linux-${LIBC}aout"
+               exit 0 ;;
+         coff-i386)
+               echo "${UNAME_MACHINE}-pc-linux-${LIBC}coff"
+               exit 0 ;;
+         "")
+               # Either a pre-BFD a.out linker (linux-gnuoldld) or
+               # one that does not give us useful --help.
+               echo "${UNAME_MACHINE}-pc-linux-${LIBC}oldld"
+               exit 0 ;;
+       esac
+       if [ "`echo $LIBC | sed -e 's:uclibc::'`" != "$LIBC" ] ; then echo 
"$TENTATIVE" && exit 0 ; fi
+       # Determine whether the default compiler is a.out or elf
+       eval $set_cc_for_build
+       sed 's/^        //' << EOF >$dummy.c
+       #include <features.h>
+       #ifdef __ELF__
+       # ifdef __GLIBC__
+       #  if __GLIBC__ >= 2
+       LIBC=gnu
+       #  else
+       LIBC=gnulibc1
+       #  endif
+       # else
+       LIBC=gnulibc1
+       # endif
+       #else
+       #ifdef __INTEL_COMPILER
+       LIBC=gnu
+       #else
+       LIBC=gnuaout
+       #endif
+       #endif
+       #ifdef __dietlibc__
+       LIBC=dietlibc
+       #endif
+EOF
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+       test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && 
exit 0
+       test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+       ;;
+    i*86:DYNIX/ptx:4*:*)
+       # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+       # earlier versions are messed up and put the nodename in both
+       # sysname and nodename.
+       echo i386-sequent-sysv4
+       exit 0 ;;
+    i*86:UNIX_SV:4.2MP:2.*)
+        # Unixware is an offshoot of SVR4, but it has its own version
+        # number series starting with 2...
+        # I am not positive that other SVR4 systems won't match this,
+       # I just have to hope.  -- rms.
+        # Use sysv4.2uw... so that sysv4* matches it.
+       echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+       exit 0 ;;
+    i*86:OS/2:*:*)
+       # If we were able to find `uname', then EMX Unix compatibility
+       # is probably installed.
+       echo ${UNAME_MACHINE}-pc-os2-emx
+       exit 0 ;;
+    i*86:XTS-300:*:STOP)
+       echo ${UNAME_MACHINE}-unknown-stop
+       exit 0 ;;
+    i*86:atheos:*:*)
+       echo ${UNAME_MACHINE}-unknown-atheos
+       exit 0 ;;
+       i*86:syllable:*:*)
+       echo ${UNAME_MACHINE}-pc-syllable
+       exit 0 ;;
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+       echo i386-unknown-lynxos${UNAME_RELEASE}
+       exit 0 ;;
+    i*86:*DOS:*:*)
+       echo ${UNAME_MACHINE}-pc-msdosdjgpp
+       exit 0 ;;
+    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+       UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+       if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+               echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+       else
+               echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+       fi
+       exit 0 ;;
+    i*86:*:5:[78]*)
+       case `/bin/uname -X | grep "^Machine"` in
+           *486*)           UNAME_MACHINE=i486 ;;
+           *Pentium)        UNAME_MACHINE=i586 ;;
+           *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+       esac
+       echo 
${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+       exit 0 ;;
+    i*86:*:3.2:*)
+       if test -f /usr/options/cb.name; then
+               UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+               echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+       elif /bin/uname -X 2>/dev/null >/dev/null ; then
+               UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+               (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+               (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
+                       && UNAME_MACHINE=i586
+               (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
+                       && UNAME_MACHINE=i686
+               (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+                       && UNAME_MACHINE=i686
+               echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+       else
+               echo ${UNAME_MACHINE}-pc-sysv32
+       fi
+       exit 0 ;;
+    pc:*:*:*)
+       # Left here for compatibility:
+        # uname -m prints for DJGPP always 'pc', but it prints nothing about
+        # the processor, so we play safe by assuming i386.
+       echo i386-pc-msdosdjgpp
+        exit 0 ;;
+    Intel:Mach:3*:*)
+       echo i386-pc-mach3
+       exit 0 ;;
+    paragon:*:*:*)
+       echo i860-intel-osf1
+       exit 0 ;;
+    i860:*:4.*:*) # i860-SVR4
+       if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+         echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+       else # Add other i860-SVR4 vendors below as they are discovered.
+         echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+       fi
+       exit 0 ;;
+    mini*:CTIX:SYS*5:*)
+       # "miniframe"
+       echo m68010-convergent-sysv
+       exit 0 ;;
+    mc68k:UNIX:SYSTEM5:3.51m)
+       echo m68k-convergent-sysv
+       exit 0 ;;
+    M680?0:D-NIX:5.3:*)
+       echo m68k-diab-dnix
+       exit 0 ;;
+    M68*:*:R3V[5678]*:*)
+       test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
+    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 
3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | 
SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
+       OS_REL=''
+       test -r /etc/.relid \
+       && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+       /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+         && echo i486-ncr-sysv4.3${OS_REL} && exit 0
+       /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+         && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
+    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+          && echo i486-ncr-sysv4 && exit 0 ;;
+    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+       echo m68k-unknown-lynxos${UNAME_RELEASE}
+       exit 0 ;;
+    mc68030:UNIX_System_V:4.*:*)
+       echo m68k-atari-sysv4
+       exit 0 ;;
+    TSUNAMI:LynxOS:2.*:*)
+       echo sparc-unknown-lynxos${UNAME_RELEASE}
+       exit 0 ;;
+    rs6000:LynxOS:2.*:*)
+       echo rs6000-unknown-lynxos${UNAME_RELEASE}
+       exit 0 ;;
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+       echo powerpc-unknown-lynxos${UNAME_RELEASE}
+       exit 0 ;;
+    SM[BE]S:UNIX_SV:*:*)
+       echo mips-dde-sysv${UNAME_RELEASE}
+       exit 0 ;;
+    RM*:ReliantUNIX-*:*:*)
+       echo mips-sni-sysv4
+       exit 0 ;;
+    RM*:SINIX-*:*:*)
+       echo mips-sni-sysv4
+       exit 0 ;;
+    *:SINIX-*:*:*)
+       if uname -p 2>/dev/null >/dev/null ; then
+               UNAME_MACHINE=`(uname -p) 2>/dev/null`
+               echo ${UNAME_MACHINE}-sni-sysv4
+       else
+               echo ns32k-sni-sysv
+       fi
+       exit 0 ;;
+    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+                      # says <address@hidden>
+        echo i586-unisys-sysv4
+        exit 0 ;;
+    *:UNIX_System_V:4*:FTX*)
+       # From Gerald Hewes <address@hidden>.
+       # How about differentiating between stratus architectures? -djm
+       echo hppa1.1-stratus-sysv4
+       exit 0 ;;
+    *:*:*:FTX*)
+       # From address@hidden
+       echo i860-stratus-sysv4
+       exit 0 ;;
+    *:VOS:*:*)
+       # From address@hidden
+       echo hppa1.1-stratus-vos
+       exit 0 ;;
+    mc68*:A/UX:*:*)
+       echo m68k-apple-aux${UNAME_RELEASE}
+       exit 0 ;;
+    news*:NEWS-OS:6*:*)
+       echo mips-sony-newsos6
+       exit 0 ;;
+    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+       if [ -d /usr/nec ]; then
+               echo mips-nec-sysv${UNAME_RELEASE}
+       else
+               echo mips-unknown-sysv${UNAME_RELEASE}
+       fi
+        exit 0 ;;
+    BeBox:BeOS:*:*)    # BeOS running on hardware made by Be, PPC only.
+       echo powerpc-be-beos
+       exit 0 ;;
+    BeMac:BeOS:*:*)    # BeOS running on Mac or Mac clone, PPC only.
+       echo powerpc-apple-beos
+       exit 0 ;;
+    BePC:BeOS:*:*)     # BeOS running on Intel PC compatible.
+       echo i586-pc-beos
+       exit 0 ;;
+    SX-4:SUPER-UX:*:*)
+       echo sx4-nec-superux${UNAME_RELEASE}
+       exit 0 ;;
+    SX-5:SUPER-UX:*:*)
+       echo sx5-nec-superux${UNAME_RELEASE}
+       exit 0 ;;
+    SX-6:SUPER-UX:*:*)
+       echo sx6-nec-superux${UNAME_RELEASE}
+       exit 0 ;;
+    Power*:Rhapsody:*:*)
+       echo powerpc-apple-rhapsody${UNAME_RELEASE}
+       exit 0 ;;
+    *:Rhapsody:*:*)
+       echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+       exit 0 ;;
+    *:Darwin:*:*)
+       UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+       case $UNAME_PROCESSOR in
+           *86) UNAME_PROCESSOR=i686 ;;
+           unknown) UNAME_PROCESSOR=powerpc ;;
+       esac
+       echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+       exit 0 ;;
+    *:procnto*:*:* | *:QNX:[0123456789]*:*)
+       UNAME_PROCESSOR=`uname -p`
+       if test "$UNAME_PROCESSOR" = "x86"; then
+               UNAME_PROCESSOR=i386
+               UNAME_MACHINE=pc
+       fi
+       echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+       exit 0 ;;
+    *:QNX:*:4*)
+       echo i386-pc-qnx
+       exit 0 ;;
+    NSE-?:NONSTOP_KERNEL:*:*)
+       echo nse-tandem-nsk${UNAME_RELEASE}
+       exit 0 ;;
+    NSR-?:NONSTOP_KERNEL:*:*)
+       echo nsr-tandem-nsk${UNAME_RELEASE}
+       exit 0 ;;
+    *:NonStop-UX:*:*)
+       echo mips-compaq-nonstopux
+       exit 0 ;;
+    BS2000:POSIX*:*:*)
+       echo bs2000-siemens-sysv
+       exit 0 ;;
+    DS/*:UNIX_System_V:*:*)
+       echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+       exit 0 ;;
+    *:Plan9:*:*)
+       # "uname -m" is not consistent, so use $cputype instead. 386
+       # is converted to i386 for consistency with other x86
+       # operating systems.
+       if test "$cputype" = "386"; then
+           UNAME_MACHINE=i386
+       else
+           UNAME_MACHINE="$cputype"
+       fi
+       echo ${UNAME_MACHINE}-unknown-plan9
+       exit 0 ;;
+    *:TOPS-10:*:*)
+       echo pdp10-unknown-tops10
+       exit 0 ;;
+    *:TENEX:*:*)
+       echo pdp10-unknown-tenex
+       exit 0 ;;
+    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+       echo pdp10-dec-tops20
+       exit 0 ;;
+    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+       echo pdp10-xkl-tops20
+       exit 0 ;;
+    *:TOPS-20:*:*)
+       echo pdp10-unknown-tops20
+       exit 0 ;;
+    *:ITS:*:*)
+       echo pdp10-unknown-its
+       exit 0 ;;
+    SEI:*:*:SEIUX)
+        echo mips-sei-seiux${UNAME_RELEASE}
+       exit 0 ;;
+    *:DragonFly:*:*)
+       echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 
's/[-(].*//'`
+       exit 0 ;;
+    *:*VMS:*:*)
+       UNAME_MACHINE=`(uname -p) 2>/dev/null`
+       case "${UNAME_MACHINE}" in
+           A*) echo alpha-dec-vms && exit 0 ;;
+           I*) echo ia64-dec-vms && exit 0 ;;
+           V*) echo vax-dec-vms && exit 0 ;;
+       esac ;;
+    *:XENIX:*:SysV)
+       echo i386-pc-xenix
+       exit 0 ;;
+esac
+
+#echo '(No uname command or uname output not recognized.)' 1>&2
+#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+
+eval $set_cc_for_build
+cat >$dummy.c <<EOF
+#ifdef _SEQUENT_
+# include <sys/types.h>
+# include <sys/utsname.h>
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
+     I don't know....  */
+  printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include <sys/param.h>
+  printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+          "4"
+#else
+         ""
+#endif
+         ); exit (0);
+#endif
+#endif
+
+#if defined (__arm) && defined (__acorn) && defined (__unix)
+  printf ("arm-acorn-riscix"); exit (0);
+#endif
+
+#if defined (hp300) && !defined (hpux)
+  printf ("m68k-hp-bsd\n"); exit (0);
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+  int version;
+  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+  if (version < 4)
+    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+  else
+    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+  exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+  printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+  printf ("ns32k-encore-mach\n"); exit (0);
+#else
+  printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+  printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+  printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+  printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+    struct utsname un;
+
+    uname(&un);
+
+    if (strncmp(un.version, "V2", 2) == 0) {
+       printf ("i386-sequent-ptx2\n"); exit (0);
+    }
+    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+       printf ("i386-sequent-ptx1\n"); exit (0);
+    }
+    printf ("i386-sequent-ptx\n"); exit (0);
+
+#endif
+
+#if defined (vax)
+# if !defined (ultrix)
+#  include <sys/param.h>
+#  if defined (BSD)
+#   if BSD == 43
+      printf ("vax-dec-bsd4.3\n"); exit (0);
+#   else
+#    if BSD == 199006
+      printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#    else
+      printf ("vax-dec-bsd\n"); exit (0);
+#    endif
+#   endif
+#  else
+    printf ("vax-dec-bsd\n"); exit (0);
+#  endif
+# else
+    printf ("vax-dec-ultrix\n"); exit (0);
+# endif
+#endif
+
+#if defined (alliant) && defined (i860)
+  printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+  exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
+
+# Apollos put the system type in the environment.
+
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
+
+# Convex versions that predate uname can use getsysinfo(1)
+
+if [ -x /usr/convex/getsysinfo ]
+then
+    case `getsysinfo -f cpu_type` in
+    c1*)
+       echo c1-convex-bsd
+       exit 0 ;;
+    c2*)
+       if getsysinfo -f scalar_acc
+       then echo c32-convex-bsd
+       else echo c2-convex-bsd
+       fi
+       exit 0 ;;
+    c34*)
+       echo c34-convex-bsd
+       exit 0 ;;
+    c38*)
+       echo c38-convex-bsd
+       exit 0 ;;
+    c4*)
+       echo c4-convex-bsd
+       exit 0 ;;
+    esac
+fi
+
+cat >&2 <<EOF
+$0: unable to guess system type
+
+This script, last modified $timestamp, has failed to recognize
+the operating system you are using. It is advised that you
+download the most up to date version of the config scripts from
+
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+and
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <address@hidden> in order to provide the needed
+information to handle your system.
+
+config.guess timestamp = $timestamp
+
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo               = `(hostinfo) 2>/dev/null`
+/bin/universe          = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch              = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM  = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
+
+exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff -Naur hurd-l4/config.h.in hurd-l4-new/config.h.in
--- hurd-l4/config.h.in 1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/config.h.in     2005-07-13 18:30:52.264805856 +0200
@@ -0,0 +1,34 @@
+/* config.h.in.  Generated from configure.ac by autoheader.  */
+
+/* Name of package */
+#undef PACKAGE
+
+/* Define to the address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#undef PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#undef PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#undef PACKAGE_TARNAME
+
+/* Define to the version of this package. */
+#undef PACKAGE_VERSION
+
+/* Version number of package */
+#undef VERSION
+
+/* Enable GNU extensions on systems that have them.  */
+#ifndef _GNU_SOURCE
+# undef _GNU_SOURCE
+#endif
+
+/* Define to empty if `const' does not conform to ANSI C. */
+#undef const
+
+/* Define to empty if the keyword `volatile' does not work. Warning: valid
+   code using `volatile' can become incorrect without. Disable with care. */
+#undef volatile
diff -Naur hurd-l4/config.sub hurd-l4-new/config.sub
--- hurd-l4/config.sub  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/config.sub      2005-07-13 18:30:52.265805704 +0200
@@ -0,0 +1,1586 @@
+#! /bin/sh
+# Configuration validation subroutine script.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+
+timestamp='2005-02-10'
+
+# This file is (in principle) common to ALL GNU software.
+# The presence of a machine in this file suggests that SOME GNU software
+# can handle that machine.  It does not imply ALL GNU software can.
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# Please send patches to <address@hidden>.  Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
+# Configuration subroutine to validate and canonicalize a configuration type.
+# Supply the specified configuration type as an argument.
+# If it is invalid, we print an error message on stderr and exit with code 1.
+# Otherwise, we print the canonical config type on stdout and succeed.
+
+# This file is supposed to be the same for all GNU packages
+# and recognize all the CPU types, system types and aliases
+# that are meaningful with *any* GNU software.
+# Each package is responsible for reporting which valid configurations
+# it does not support.  The user should be able to distinguish
+# a failure to support a valid configuration from a meaningless
+# configuration.
+
+# The goal of this file is to map all the various variations of a given
+# machine specification into a single specification in the form:
+#      CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or in some cases, the newer four-part form:
+#      CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+# It is wrong to echo any other type of specification.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+       $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <address@hidden>."
+
+version="\
+GNU config.sub ($timestamp)
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 
2002, 2003, 2004, 2005
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )        # Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help"
+       exit 1 ;;
+
+    *local*)
+       # First pass through any local machine types.
+       echo $1
+       exit 0;;
+
+    * )
+       break ;;
+  esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+    exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+    exit 1;;
+esac
+
+# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
+# Here we must recognize all the valid KERNEL-OS combinations.
+maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+case $maybe_os in
+  nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | 
uclinux-gnu* | \
+  kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | 
rtmk-nova*)
+    os=-$maybe_os
+    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
+    ;;
+  *)
+    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
+    if [ $basic_machine != $1 ]
+    then os=`echo $1 | sed 's/.*-/-/'`
+    else os=; fi
+    ;;
+esac
+
+### Let's recognize common machines as not being operating systems so
+### that things like config.sub decstation-3100 work.  We also
+### recognize some manufacturers as not being operating systems, so we
+### can provide default operating systems below.
+case $os in
+       -sun*os*)
+               # Prevent following clause from handling this invalid input.
+               ;;
+       -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
+       -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
+       -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
+       -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
+       -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
+       -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
+       -apple | -axis | -knuth | -cray)
+               os=
+               basic_machine=$1
+               ;;
+       -sim | -cisco | -oki | -wec | -winbond)
+               os=
+               basic_machine=$1
+               ;;
+       -scout)
+               ;;
+       -wrs)
+               os=-vxworks
+               basic_machine=$1
+               ;;
+       -chorusos*)
+               os=-chorusos
+               basic_machine=$1
+               ;;
+       -chorusrdb)
+               os=-chorusrdb
+               basic_machine=$1
+               ;;
+       -hiux*)
+               os=-hiuxwe2
+               ;;
+       -sco5)
+               os=-sco3.2v5
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
+       -sco4)
+               os=-sco3.2v4
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
+       -sco3.2.[4-9]*)
+               os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
+       -sco3.2v[4-9]*)
+               # Don't forget version if it is 3.2v4 or newer.
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
+       -sco*)
+               os=-sco3.2v2
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
+       -udk*)
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
+       -isc)
+               os=-isc2.2
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
+       -clix*)
+               basic_machine=clipper-intergraph
+               ;;
+       -isc*)
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
+       -lynx*)
+               os=-lynxos
+               ;;
+       -ptx*)
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
+               ;;
+       -windowsnt*)
+               os=`echo $os | sed -e 's/windowsnt/winnt/'`
+               ;;
+       -psos*)
+               os=-psos
+               ;;
+       -mint | -mint[0-9]*)
+               basic_machine=m68k-atari
+               os=-mint
+               ;;
+esac
+
+# Decode aliases for certain CPU-COMPANY combinations.
+case $basic_machine in
+       # Recognize the basic CPU types without company name.
+       # Some are omitted here because they have special meanings below.
+       1750a | 580 \
+       | a29k \
+       | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+       | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | 
alpha64pca5[67] \
+       | am33_2.0 \
+       | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+       | c4x | clipper \
+       | d10v | d30v | dlx | dsp16xx \
+       | fr30 | frv \
+       | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+       | i370 | i860 | i960 | ia64 \
+       | ip2k | iq2000 \
+       | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
+       | mips | mipsbe | mipseb | mipsel | mipsle \
+       | mips16 \
+       | mips64 | mips64el \
+       | mips64vr | mips64vrel \
+       | mips64orion | mips64orionel \
+       | mips64vr4100 | mips64vr4100el \
+       | mips64vr4300 | mips64vr4300el \
+       | mips64vr5000 | mips64vr5000el \
+       | mipsisa32 | mipsisa32el \
+       | mipsisa32r2 | mipsisa32r2el \
+       | mipsisa64 | mipsisa64el \
+       | mipsisa64r2 | mipsisa64r2el \
+       | mipsisa64sb1 | mipsisa64sb1el \
+       | mipsisa64sr71k | mipsisa64sr71kel \
+       | mipstx39 | mipstx39el \
+       | mips64r5900 | mips64r5900el \
+       | mn10200 | mn10300 \
+       | msp430 \
+       | ns16k | ns32k \
+       | openrisc | or32 \
+       | pdp10 | pdp11 | pj | pjl \
+       | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+       | pyramid \
+       | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | 
sh3ele \
+       | sh64 | sh64le \
+       | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 
| sparcv9b \
+       | strongarm \
+       | tahoe | dvp | thumb | tic4x | tic80 | tron \
+       | v850 | v850e \
+       | we32k \
+       | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
+       | z8k)
+               basic_machine=$basic_machine-unknown
+               ;;
+       m6811 | m68hc11 | m6812 | m68hc12)
+               # Motorola 68HC11/12.
+               basic_machine=$basic_machine-unknown
+               os=-none
+               ;;
+       m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+               ;;
+
+       # We use `pc' rather than `unknown'
+       # because (1) that's what they normally are, and
+       # (2) the word "unknown" tends to confuse beginning users.
+       i*86 | x86_64)
+         basic_machine=$basic_machine-pc
+         ;;
+       # Object if more than one company name word.
+       *-*-*)
+               echo Invalid configuration \`$1\': machine \`$basic_machine\' 
not recognized 1>&2
+               exit 1
+               ;;
+       # Recognize the basic CPU types with company name.
+       580-* \
+       | a29k-* \
+       | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+       | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
+       | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+       | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
+       | avr-* \
+       | bs2000-* \
+       | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
+       | clipper-* | craynv-* | cydra-* \
+       | d10v-* | d30v-* | dlx-* \
+       | elxsi-* \
+       | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+       | h8300-* | h8500-* \
+       | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+       | i*86-* | i860-* | i960-* | ia64-* \
+       | ip2k-* | iq2000-* \
+       | m32r-* | m32rle-* \
+       | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
+       | m88110-* | m88k-* | maxq-* | mcore-* \
+       | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
+       | mips16-* \
+       | mips64-* | mips64el-* \
+       | mips64vr-* | mips64vrel-* \
+       | mips64orion-* | mips64orionel-* \
+       | mips64vr4100-* | mips64vr4100el-* \
+       | mips64vr4300-* | mips64vr4300el-* \
+       | mips64vr5000-* | mips64vr5000el-* \
+       | mipsisa32-* | mipsisa32el-* \
+       | mipsisa32r2-* | mipsisa32r2el-* \
+       | mipsisa64-* | mipsisa64el-* \
+       | mipsisa64r2-* | mipsisa64r2el-* \
+       | mipsisa64sb1-* | mipsisa64sb1el-* \
+       | mipsisa64sr71k-* | mipsisa64sr71kel-* \
+       | mipstx39-* | mipstx39el-* \
+       | mips64r5900-* | mips64r5900el-* \
+       | mmix-* \
+       | msp430-* \
+       | none-* | np1-* | ns16k-* | ns32k-* \
+       | orion-* \
+       | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+       | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+       | pyramid-* \
+       | romp-* | rs6000-* \
+       | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+       | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
+       | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
+       | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+       | tahoe-* | thumb-* \
+       | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+       | tron-* \
+       | v850-* | v850e-* | vax-* \
+       | we32k-* \
+       | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
+       | xstormy16-* | xtensa-* \
+       | ymp-* \
+       | z8k-*)
+               ;;
+       # Recognize the various machine names and aliases which stand
+       # for a CPU type and a company and sometimes even an OS.
+       386bsd)
+               basic_machine=i386-unknown
+               os=-bsd
+               ;;
+       3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
+               basic_machine=m68000-att
+               ;;
+       3b*)
+               basic_machine=we32k-att
+               ;;
+       a29khif)
+               basic_machine=a29k-amd
+               os=-udi
+               ;;
+       abacus)
+               basic_machine=abacus-unknown
+               ;;
+       adobe68k)
+               basic_machine=m68010-adobe
+               os=-scout
+               ;;
+       alliant | fx80)
+               basic_machine=fx80-alliant
+               ;;
+       altos | altos3068)
+               basic_machine=m68k-altos
+               ;;
+       am29k)
+               basic_machine=a29k-none
+               os=-bsd
+               ;;
+       amd64)
+               basic_machine=x86_64-pc
+               ;;
+       amd64-*)
+               basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       amdahl)
+               basic_machine=580-amdahl
+               os=-sysv
+               ;;
+       amiga | amiga-*)
+               basic_machine=m68k-unknown
+               ;;
+       amigaos | amigados)
+               basic_machine=m68k-unknown
+               os=-amigaos
+               ;;
+       amigaunix | amix)
+               basic_machine=m68k-unknown
+               os=-sysv4
+               ;;
+       apollo68)
+               basic_machine=m68k-apollo
+               os=-sysv
+               ;;
+       apollo68bsd)
+               basic_machine=m68k-apollo
+               os=-bsd
+               ;;
+       aux)
+               basic_machine=m68k-apple
+               os=-aux
+               ;;
+       balance)
+               basic_machine=ns32k-sequent
+               os=-dynix
+               ;;
+       c90)
+               basic_machine=c90-cray
+               os=-unicos
+               ;;
+       convex-c1)
+               basic_machine=c1-convex
+               os=-bsd
+               ;;
+       convex-c2)
+               basic_machine=c2-convex
+               os=-bsd
+               ;;
+       convex-c32)
+               basic_machine=c32-convex
+               os=-bsd
+               ;;
+       convex-c34)
+               basic_machine=c34-convex
+               os=-bsd
+               ;;
+       convex-c38)
+               basic_machine=c38-convex
+               os=-bsd
+               ;;
+       cray | j90)
+               basic_machine=j90-cray
+               os=-unicos
+               ;;
+       craynv)
+               basic_machine=craynv-cray
+               os=-unicosmp
+               ;;
+       cr16c)
+               basic_machine=cr16c-unknown
+               os=-elf
+               ;;
+       crds | unos)
+               basic_machine=m68k-crds
+               ;;
+       crisv32 | crisv32-* | etraxfs*)
+               basic_machine=crisv32-axis
+               ;;
+       cris | cris-* | etrax*)
+               basic_machine=cris-axis
+               ;;
+       crx)
+               basic_machine=crx-unknown
+               os=-elf
+               ;;
+       da30 | da30-*)
+               basic_machine=m68k-da30
+               ;;
+       decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | 
decstatn)
+               basic_machine=mips-dec
+               ;;
+       decsystem10* | dec10*)
+               basic_machine=pdp10-dec
+               os=-tops10
+               ;;
+       decsystem20* | dec20*)
+               basic_machine=pdp10-dec
+               os=-tops20
+               ;;
+       delta | 3300 | motorola-3300 | motorola-delta \
+             | 3300-motorola | delta-motorola)
+               basic_machine=m68k-motorola
+               ;;
+       delta88)
+               basic_machine=m88k-motorola
+               os=-sysv3
+               ;;
+       djgpp)
+               basic_machine=i586-pc
+               os=-msdosdjgpp
+               ;;
+       dpx20 | dpx20-*)
+               basic_machine=rs6000-bull
+               os=-bosx
+               ;;
+       dpx2* | dpx2*-bull)
+               basic_machine=m68k-bull
+               os=-sysv3
+               ;;
+       ebmon29k)
+               basic_machine=a29k-amd
+               os=-ebmon
+               ;;
+       elxsi)
+               basic_machine=elxsi-elxsi
+               os=-bsd
+               ;;
+       encore | umax | mmax)
+               basic_machine=ns32k-encore
+               ;;
+       es1800 | OSE68k | ose68k | ose | OSE)
+               basic_machine=m68k-ericsson
+               os=-ose
+               ;;
+       fx2800)
+               basic_machine=i860-alliant
+               ;;
+       genix)
+               basic_machine=ns32k-ns
+               ;;
+       gmicro)
+               basic_machine=tron-gmicro
+               os=-sysv
+               ;;
+       go32)
+               basic_machine=i386-pc
+               os=-go32
+               ;;
+       h3050r* | hiux*)
+               basic_machine=hppa1.1-hitachi
+               os=-hiuxwe2
+               ;;
+       h8300hms)
+               basic_machine=h8300-hitachi
+               os=-hms
+               ;;
+       h8300xray)
+               basic_machine=h8300-hitachi
+               os=-xray
+               ;;
+       h8500hms)
+               basic_machine=h8500-hitachi
+               os=-hms
+               ;;
+       harris)
+               basic_machine=m88k-harris
+               os=-sysv3
+               ;;
+       hp300-*)
+               basic_machine=m68k-hp
+               ;;
+       hp300bsd)
+               basic_machine=m68k-hp
+               os=-bsd
+               ;;
+       hp300hpux)
+               basic_machine=m68k-hp
+               os=-hpux
+               ;;
+       hp3k9[0-9][0-9] | hp9[0-9][0-9])
+               basic_machine=hppa1.0-hp
+               ;;
+       hp9k2[0-9][0-9] | hp9k31[0-9])
+               basic_machine=m68000-hp
+               ;;
+       hp9k3[2-9][0-9])
+               basic_machine=m68k-hp
+               ;;
+       hp9k6[0-9][0-9] | hp6[0-9][0-9])
+               basic_machine=hppa1.0-hp
+               ;;
+       hp9k7[0-79][0-9] | hp7[0-79][0-9])
+               basic_machine=hppa1.1-hp
+               ;;
+       hp9k78[0-9] | hp78[0-9])
+               # FIXME: really hppa2.0-hp
+               basic_machine=hppa1.1-hp
+               ;;
+       hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | 
hp9k893 | hp893)
+               # FIXME: really hppa2.0-hp
+               basic_machine=hppa1.1-hp
+               ;;
+       hp9k8[0-9][13679] | hp8[0-9][13679])
+               basic_machine=hppa1.1-hp
+               ;;
+       hp9k8[0-9][0-9] | hp8[0-9][0-9])
+               basic_machine=hppa1.0-hp
+               ;;
+       hppa-next)
+               os=-nextstep3
+               ;;
+       hppaosf)
+               basic_machine=hppa1.1-hp
+               os=-osf
+               ;;
+       hppro)
+               basic_machine=hppa1.1-hp
+               os=-proelf
+               ;;
+       i370-ibm* | ibm*)
+               basic_machine=i370-ibm
+               ;;
+# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
+       i*86v32)
+               basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+               os=-sysv32
+               ;;
+       i*86v4*)
+               basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+               os=-sysv4
+               ;;
+       i*86v)
+               basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+               os=-sysv
+               ;;
+       i*86sol2)
+               basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+               os=-solaris2
+               ;;
+       i386mach)
+               basic_machine=i386-mach
+               os=-mach
+               ;;
+       i386-vsta | vsta)
+               basic_machine=i386-unknown
+               os=-vsta
+               ;;
+       iris | iris4d)
+               basic_machine=mips-sgi
+               case $os in
+                   -irix*)
+                       ;;
+                   *)
+                       os=-irix4
+                       ;;
+               esac
+               ;;
+       isi68 | isi)
+               basic_machine=m68k-isi
+               os=-sysv
+               ;;
+       m88k-omron*)
+               basic_machine=m88k-omron
+               ;;
+       magnum | m3230)
+               basic_machine=mips-mips
+               os=-sysv
+               ;;
+       merlin)
+               basic_machine=ns32k-utek
+               os=-sysv
+               ;;
+       mingw32)
+               basic_machine=i386-pc
+               os=-mingw32
+               ;;
+       miniframe)
+               basic_machine=m68000-convergent
+               ;;
+       *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
+               basic_machine=m68k-atari
+               os=-mint
+               ;;
+       mipsEE* | ee | ps2)
+               basic_machine=mips64r5900el-scei
+               case $os in
+                   -linux*)
+                       ;;
+                   *)
+                       os=-elf
+                       ;;
+               esac
+               ;;
+       iop)
+               basic_machine=mipsel-scei
+               os=-irx
+               ;;
+       dvp)
+               basic_machine=dvp-scei
+               os=-elf
+               ;;
+       mips3*-*)
+               basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
+               ;;
+       mips3*)
+               basic_machine=`echo $basic_machine | sed -e 
's/mips3/mips64/'`-unknown
+               ;;
+       monitor)
+               basic_machine=m68k-rom68k
+               os=-coff
+               ;;
+       morphos)
+               basic_machine=powerpc-unknown
+               os=-morphos
+               ;;
+       msdos)
+               basic_machine=i386-pc
+               os=-msdos
+               ;;
+       mvs)
+               basic_machine=i370-ibm
+               os=-mvs
+               ;;
+       ncr3000)
+               basic_machine=i486-ncr
+               os=-sysv4
+               ;;
+       netbsd386)
+               basic_machine=i386-unknown
+               os=-netbsd
+               ;;
+       netwinder)
+               basic_machine=armv4l-rebel
+               os=-linux
+               ;;
+       news | news700 | news800 | news900)
+               basic_machine=m68k-sony
+               os=-newsos
+               ;;
+       news1000)
+               basic_machine=m68030-sony
+               os=-newsos
+               ;;
+       news-3600 | risc-news)
+               basic_machine=mips-sony
+               os=-newsos
+               ;;
+       necv70)
+               basic_machine=v70-nec
+               os=-sysv
+               ;;
+       next | m*-next )
+               basic_machine=m68k-next
+               case $os in
+                   -nextstep* )
+                       ;;
+                   -ns2*)
+                     os=-nextstep2
+                       ;;
+                   *)
+                     os=-nextstep3
+                       ;;
+               esac
+               ;;
+       nh3000)
+               basic_machine=m68k-harris
+               os=-cxux
+               ;;
+       nh[45]000)
+               basic_machine=m88k-harris
+               os=-cxux
+               ;;
+       nindy960)
+               basic_machine=i960-intel
+               os=-nindy
+               ;;
+       mon960)
+               basic_machine=i960-intel
+               os=-mon960
+               ;;
+       nonstopux)
+               basic_machine=mips-compaq
+               os=-nonstopux
+               ;;
+       np1)
+               basic_machine=np1-gould
+               ;;
+       nsr-tandem)
+               basic_machine=nsr-tandem
+               ;;
+       op50n-* | op60c-*)
+               basic_machine=hppa1.1-oki
+               os=-proelf
+               ;;
+       or32 | or32-*)
+               basic_machine=or32-unknown
+               os=-coff
+               ;;
+       os400)
+               basic_machine=powerpc-ibm
+               os=-os400
+               ;;
+       OSE68000 | ose68000)
+               basic_machine=m68000-ericsson
+               os=-ose
+               ;;
+       os68k)
+               basic_machine=m68k-none
+               os=-os68k
+               ;;
+       pa-hitachi)
+               basic_machine=hppa1.1-hitachi
+               os=-hiuxwe2
+               ;;
+       paragon)
+               basic_machine=i860-intel
+               os=-osf
+               ;;
+       pbd)
+               basic_machine=sparc-tti
+               ;;
+       pbb)
+               basic_machine=m68k-tti
+               ;;
+       pc532 | pc532-*)
+               basic_machine=ns32k-pc532
+               ;;
+       pentium | p5 | k5 | k6 | nexgen | viac3)
+               basic_machine=i586-pc
+               ;;
+       pentiumpro | p6 | 6x86 | athlon | athlon_*)
+               basic_machine=i686-pc
+               ;;
+       pentiumii | pentium2 | pentiumiii | pentium3)
+               basic_machine=i686-pc
+               ;;
+       pentium4)
+               basic_machine=i786-pc
+               ;;
+       pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
+               basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       pentiumpro-* | p6-* | 6x86-* | athlon-*)
+               basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
+               basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       pentium4-*)
+               basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       pn)
+               basic_machine=pn-gould
+               ;;
+       power)  basic_machine=power-ibm
+               ;;
+       ppc)    basic_machine=powerpc-unknown
+               ;;
+       ppc-*)  basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       ppcle | powerpclittle | ppc-le | powerpc-little)
+               basic_machine=powerpcle-unknown
+               ;;
+       ppcle-* | powerpclittle-*)
+               basic_machine=powerpcle-`echo $basic_machine | sed 
's/^[^-]*-//'`
+               ;;
+       ppc64)  basic_machine=powerpc64-unknown
+               ;;
+       ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 
's/^[^-]*-//'`
+               ;;
+       ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+               basic_machine=powerpc64le-unknown
+               ;;
+       ppc64le-* | powerpc64little-*)
+               basic_machine=powerpc64le-`echo $basic_machine | sed 
's/^[^-]*-//'`
+               ;;
+       ps2)
+               basic_machine=i386-ibm
+               ;;
+       pw32)
+               basic_machine=i586-unknown
+               os=-pw32
+               ;;
+       rom68k)
+               basic_machine=m68k-rom68k
+               os=-coff
+               ;;
+       rm[46]00)
+               basic_machine=mips-siemens
+               ;;
+       rtpc | rtpc-*)
+               basic_machine=romp-ibm
+               ;;
+       s390 | s390-*)
+               basic_machine=s390-ibm
+               ;;
+       s390x | s390x-*)
+               basic_machine=s390x-ibm
+               ;;
+       sa29200)
+               basic_machine=a29k-amd
+               os=-udi
+               ;;
+       sb1)
+               basic_machine=mipsisa64sb1-unknown
+               ;;
+       sb1el)
+               basic_machine=mipsisa64sb1el-unknown
+               ;;
+       sei)
+               basic_machine=mips-sei
+               os=-seiux
+               ;;
+       sequent)
+               basic_machine=i386-sequent
+               ;;
+       sh)
+               basic_machine=sh-hitachi
+               os=-hms
+               ;;
+       sh64)
+               basic_machine=sh64-unknown
+               ;;
+       sparclite-wrs | simso-wrs)
+               basic_machine=sparclite-wrs
+               os=-vxworks
+               ;;
+       sps7)
+               basic_machine=m68k-bull
+               os=-sysv2
+               ;;
+       spur)
+               basic_machine=spur-unknown
+               ;;
+       st2000)
+               basic_machine=m68k-tandem
+               ;;
+       stratus)
+               basic_machine=i860-stratus
+               os=-sysv4
+               ;;
+       sun2)
+               basic_machine=m68000-sun
+               ;;
+       sun2os3)
+               basic_machine=m68000-sun
+               os=-sunos3
+               ;;
+       sun2os4)
+               basic_machine=m68000-sun
+               os=-sunos4
+               ;;
+       sun3os3)
+               basic_machine=m68k-sun
+               os=-sunos3
+               ;;
+       sun3os4)
+               basic_machine=m68k-sun
+               os=-sunos4
+               ;;
+       sun4os3)
+               basic_machine=sparc-sun
+               os=-sunos3
+               ;;
+       sun4os4)
+               basic_machine=sparc-sun
+               os=-sunos4
+               ;;
+       sun4sol2)
+               basic_machine=sparc-sun
+               os=-solaris2
+               ;;
+       sun3 | sun3-*)
+               basic_machine=m68k-sun
+               ;;
+       sun4)
+               basic_machine=sparc-sun
+               ;;
+       sun386 | sun386i | roadrunner)
+               basic_machine=i386-sun
+               ;;
+       sv1)
+               basic_machine=sv1-cray
+               os=-unicos
+               ;;
+       symmetry)
+               basic_machine=i386-sequent
+               os=-dynix
+               ;;
+       t3e)
+               basic_machine=alphaev5-cray
+               os=-unicos
+               ;;
+       t90)
+               basic_machine=t90-cray
+               os=-unicos
+               ;;
+       tic54x | c54x*)
+               basic_machine=tic54x-unknown
+               os=-coff
+               ;;
+       tic55x | c55x*)
+               basic_machine=tic55x-unknown
+               os=-coff
+               ;;
+       tic6x | c6x*)
+               basic_machine=tic6x-unknown
+               os=-coff
+               ;;
+       tx39)
+               basic_machine=mipstx39-unknown
+               ;;
+       tx39el)
+               basic_machine=mipstx39el-unknown
+               ;;
+       toad1)
+               basic_machine=pdp10-xkl
+               os=-tops20
+               ;;
+       tower | tower-32)
+               basic_machine=m68k-ncr
+               ;;
+       tpf)
+               basic_machine=s390x-ibm
+               os=-tpf
+               ;;
+       udi29k)
+               basic_machine=a29k-amd
+               os=-udi
+               ;;
+       ultra3)
+               basic_machine=a29k-nyu
+               os=-sym1
+               ;;
+       v810 | necv810)
+               basic_machine=v810-nec
+               os=-none
+               ;;
+       vaxv)
+               basic_machine=vax-dec
+               os=-sysv
+               ;;
+       vms)
+               basic_machine=vax-dec
+               os=-vms
+               ;;
+       vpp*|vx|vx-*)
+               basic_machine=f301-fujitsu
+               ;;
+       vxworks960)
+               basic_machine=i960-wrs
+               os=-vxworks
+               ;;
+       vxworks68)
+               basic_machine=m68k-wrs
+               os=-vxworks
+               ;;
+       vxworks29k)
+               basic_machine=a29k-wrs
+               os=-vxworks
+               ;;
+       w65*)
+               basic_machine=w65-wdc
+               os=-none
+               ;;
+       w89k-*)
+               basic_machine=hppa1.1-winbond
+               os=-proelf
+               ;;
+       xbox)
+               basic_machine=i686-pc
+               os=-mingw32
+               ;;
+       xps | xps100)
+               basic_machine=xps100-honeywell
+               ;;
+       ymp)
+               basic_machine=ymp-cray
+               os=-unicos
+               ;;
+       z8k-*-coff)
+               basic_machine=z8k-unknown
+               os=-sim
+               ;;
+       none)
+               basic_machine=none-none
+               os=-none
+               ;;
+
+# Here we handle the default manufacturer of certain CPU types.  It is in
+# some cases the only manufacturer, in others, it is the most popular.
+       w89k)
+               basic_machine=hppa1.1-winbond
+               ;;
+       op50n)
+               basic_machine=hppa1.1-oki
+               ;;
+       op60c)
+               basic_machine=hppa1.1-oki
+               ;;
+       romp)
+               basic_machine=romp-ibm
+               ;;
+       mmix)
+               basic_machine=mmix-knuth
+               ;;
+       rs6000)
+               basic_machine=rs6000-ibm
+               ;;
+       vax)
+               basic_machine=vax-dec
+               ;;
+       pdp10)
+               # there are many clones, so DEC is not a safe bet
+               basic_machine=pdp10-unknown
+               ;;
+       pdp11)
+               basic_machine=pdp11-dec
+               ;;
+       we32k)
+               basic_machine=we32k-att
+               ;;
+       sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
+               basic_machine=sh-unknown
+               ;;
+       sh64)
+               basic_machine=sh64-unknown
+               ;;
+       sparc | sparcv8 | sparcv9 | sparcv9b)
+               basic_machine=sparc-sun
+               ;;
+       cydra)
+               basic_machine=cydra-cydrome
+               ;;
+       orion)
+               basic_machine=orion-highlevel
+               ;;
+       orion105)
+               basic_machine=clipper-highlevel
+               ;;
+       mac | mpw | mac-mpw)
+               basic_machine=m68k-apple
+               ;;
+       pmac | pmac-mpw)
+               basic_machine=powerpc-apple
+               ;;
+       *-unknown)
+               # Make sure to match an already-canonicalized machine name.
+               ;;
+       *)
+               echo Invalid configuration \`$1\': machine \`$basic_machine\' 
not recognized 1>&2
+               exit 1
+               ;;
+esac
+
+# Here we canonicalize certain aliases for manufacturers.
+case $basic_machine in
+       *-digital*)
+               basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+               ;;
+       *-commodore*)
+               basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+               ;;
+       *)
+               ;;
+esac
+
+# Decode manufacturer-specific aliases for certain operating systems.
+
+if [ x"$os" != x"" ]
+then
+case $os in
+        # First match some system type aliases
+        # that might get confused with valid system types.
+       # -solaris* is a basic system type, with this one exception.
+       -solaris1 | -solaris1.*)
+               os=`echo $os | sed -e 's|solaris1|sunos4|'`
+               ;;
+       -solaris)
+               os=-solaris2
+               ;;
+       -svr4*)
+               os=-sysv4
+               ;;
+       -unixware*)
+               os=-sysv4.2uw
+               ;;
+       -gnu/linux*)
+               os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
+               ;;
+       # First accept the basic system types.
+       # The portable systems comes first.
+       # Each alternative MUST END IN A *, to match a version number.
+       # -sysv* is not here because it comes later, after sysvr4.
+       -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
+             | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
+             | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+             | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
+             | -aos* \
+             | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
+             | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
+             | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* 
\
+             | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+             | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+             | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
+             | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+             | -chorusos* | -chorusrdb* \
+             | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+             | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | 
-mpeix* | -udk* \
+             | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+             | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+             | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+             | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+             | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+             | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* | -irx*)
+       # Remember, each alternative MUST END IN *, to match a version number.
+               ;;
+       -qnx*)
+               case $basic_machine in
+                   x86-* | i*86-*)
+                       ;;
+                   *)
+                       os=-nto$os
+                       ;;
+               esac
+               ;;
+       -nto-qnx*)
+               ;;
+       -nto*)
+               os=`echo $os | sed -e 's|nto|nto-qnx|'`
+               ;;
+       -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+             | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
+             | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+               ;;
+       -mac*)
+               os=`echo $os | sed -e 's|mac|macos|'`
+               ;;
+       -linux-dietlibc)
+               os=-linux-dietlibc
+               ;;
+       -linux*)
+               os=`echo $os | sed -e 's|linux|linux-gnu|'`
+               ;;
+       -sunos5*)
+               os=`echo $os | sed -e 's|sunos5|solaris2|'`
+               ;;
+       -sunos6*)
+               os=`echo $os | sed -e 's|sunos6|solaris3|'`
+               ;;
+       -opened*)
+               os=-openedition
+               ;;
+        -os400*)
+               os=-os400
+               ;;
+       -wince*)
+               os=-wince
+               ;;
+       -osfrose*)
+               os=-osfrose
+               ;;
+       -osf*)
+               os=-osf
+               ;;
+       -utek*)
+               os=-bsd
+               ;;
+       -dynix*)
+               os=-bsd
+               ;;
+       -acis*)
+               os=-aos
+               ;;
+       -atheos*)
+               os=-atheos
+               ;;
+       -syllable*)
+               os=-syllable
+               ;;
+       -386bsd)
+               os=-bsd
+               ;;
+       -ctix* | -uts*)
+               os=-sysv
+               ;;
+       -nova*)
+               os=-rtmk-nova
+               ;;
+       -ns2 )
+               os=-nextstep2
+               ;;
+       -nsk*)
+               os=-nsk
+               ;;
+       # Preserve the version number of sinix5.
+       -sinix5.*)
+               os=`echo $os | sed -e 's|sinix|sysv|'`
+               ;;
+       -sinix*)
+               os=-sysv4
+               ;;
+        -tpf*)
+               os=-tpf
+               ;;
+       -triton*)
+               os=-sysv3
+               ;;
+       -oss*)
+               os=-sysv3
+               ;;
+       -svr4)
+               os=-sysv4
+               ;;
+       -svr3)
+               os=-sysv3
+               ;;
+       -sysvr4)
+               os=-sysv4
+               ;;
+       # This must come after -sysvr4.
+       -sysv*)
+               ;;
+       -ose*)
+               os=-ose
+               ;;
+       -es1800*)
+               os=-ose
+               ;;
+       -xenix)
+               os=-xenix
+               ;;
+       -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+               os=-mint
+               ;;
+       -aros*)
+               os=-aros
+               ;;
+       -kaos*)
+               os=-kaos
+               ;;
+       -zvmoe)
+               os=-zvmoe
+               ;;
+       -none)
+               ;;
+       *)
+               # Get rid of the `-' at the beginning of $os.
+               os=`echo $os | sed 's/[^-]*-//'`
+               echo Invalid configuration \`$1\': system \`$os\' not 
recognized 1>&2
+               exit 1
+               ;;
+esac
+else
+
+# Here we handle the default operating systems that come with various machines.
+# The value should be what the vendor currently ships out the door with their
+# machine or put another way, the most popular os provided with the machine.
+
+# Note that if you're going to try to match "-MANUFACTURER" here (say,
+# "-sun"), then you have to tell the case statement up towards the top
+# that MANUFACTURER isn't an operating system.  Otherwise, code above
+# will signal an error saying that MANUFACTURER isn't an operating
+# system, and we'll never get to this point.
+
+case $basic_machine in
+       *-acorn)
+               os=-riscix1.2
+               ;;
+       arm*-rebel)
+               os=-linux
+               ;;
+       arm*-semi)
+               os=-aout
+               ;;
+    c4x-* | tic4x-*)
+        os=-coff
+        ;;
+       # This must come before the *-dec entry.
+       pdp10-*)
+               os=-tops20
+               ;;
+       pdp11-*)
+               os=-none
+               ;;
+       *-dec | vax-*)
+               os=-ultrix4.2
+               ;;
+       m68*-apollo)
+               os=-domain
+               ;;
+       i386-sun)
+               os=-sunos4.0.2
+               ;;
+       m68000-sun)
+               os=-sunos3
+               # This also exists in the configure program, but was not the
+               # default.
+               # os=-sunos4
+               ;;
+       m68*-cisco)
+               os=-aout
+               ;;
+       mips*-cisco)
+               os=-elf
+               ;;
+       mips*-*)
+               os=-elf
+               ;;
+       or32-*)
+               os=-coff
+               ;;
+       *-tti)  # must be before sparc entry or we get the wrong os.
+               os=-sysv3
+               ;;
+       sparc-* | *-sun)
+               os=-sunos4.1.1
+               ;;
+       *-be)
+               os=-beos
+               ;;
+       *-ibm)
+               os=-aix
+               ;;
+       *-knuth)
+               os=-mmixware
+               ;;
+       *-wec)
+               os=-proelf
+               ;;
+       *-winbond)
+               os=-proelf
+               ;;
+       *-oki)
+               os=-proelf
+               ;;
+       *-hp)
+               os=-hpux
+               ;;
+       *-hitachi)
+               os=-hiux
+               ;;
+       i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
+               os=-sysv
+               ;;
+       *-cbm)
+               os=-amigaos
+               ;;
+       *-dg)
+               os=-dgux
+               ;;
+       *-dolphin)
+               os=-sysv3
+               ;;
+       m68k-ccur)
+               os=-rtu
+               ;;
+       m88k-omron*)
+               os=-luna
+               ;;
+       *-next )
+               os=-nextstep
+               ;;
+       *-sequent)
+               os=-ptx
+               ;;
+       *-crds)
+               os=-unos
+               ;;
+       *-ns)
+               os=-genix
+               ;;
+       i370-*)
+               os=-mvs
+               ;;
+       *-next)
+               os=-nextstep3
+               ;;
+       *-gould)
+               os=-sysv
+               ;;
+       *-highlevel)
+               os=-bsd
+               ;;
+       *-encore)
+               os=-bsd
+               ;;
+       *-sgi)
+               os=-irix
+               ;;
+       *-siemens)
+               os=-sysv4
+               ;;
+       *-masscomp)
+               os=-rtu
+               ;;
+       f30[01]-fujitsu | f700-fujitsu)
+               os=-uxpv
+               ;;
+       *-rom68k)
+               os=-coff
+               ;;
+       *-*bug)
+               os=-coff
+               ;;
+       *-apple)
+               os=-macos
+               ;;
+       *-atari*)
+               os=-mint
+               ;;
+       *)
+               os=-none
+               ;;
+esac
+fi
+
+# Here we handle the case where we know the os, and the CPU type, but not the
+# manufacturer.  We pick the logical manufacturer.
+vendor=unknown
+case $basic_machine in
+       *-unknown)
+               case $os in
+                       -riscix*)
+                               vendor=acorn
+                               ;;
+                       -sunos*)
+                               vendor=sun
+                               ;;
+                       -aix*)
+                               vendor=ibm
+                               ;;
+                       -beos*)
+                               vendor=be
+                               ;;
+                       -hpux*)
+                               vendor=hp
+                               ;;
+                       -mpeix*)
+                               vendor=hp
+                               ;;
+                       -hiux*)
+                               vendor=hitachi
+                               ;;
+                       -unos*)
+                               vendor=crds
+                               ;;
+                       -dgux*)
+                               vendor=dg
+                               ;;
+                       -luna*)
+                               vendor=omron
+                               ;;
+                       -genix*)
+                               vendor=ns
+                               ;;
+                       -mvs* | -opened*)
+                               vendor=ibm
+                               ;;
+                       -os400*)
+                               vendor=ibm
+                               ;;
+                       -ptx*)
+                               vendor=sequent
+                               ;;
+                       -tpf*)
+                               vendor=ibm
+                               ;;
+                       -vxsim* | -vxworks* | -windiss*)
+                               vendor=wrs
+                               ;;
+                       -aux*)
+                               vendor=apple
+                               ;;
+                       -hms*)
+                               vendor=hitachi
+                               ;;
+                       -mpw* | -macos*)
+                               vendor=apple
+                               ;;
+                       -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+                               vendor=atari
+                               ;;
+                       -vos*)
+                               vendor=stratus
+                               ;;
+               esac
+               basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
+               ;;
+esac
+
+echo $basic_machine$os
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff -Naur hurd-l4/configure hurd-l4-new/configure
--- hurd-l4/configure   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/configure       2005-07-13 18:30:52.274804336 +0200
@@ -0,0 +1,6027 @@
+#! /bin/sh
+# Guess values for system-dependent variables and create Makefiles.
+# Generated by GNU Autoconf 2.59 for hurd 0.0.
+#
+# Report bugs to <address@hidden>.
+#
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
+## --------------------- ##
+## M4sh Initialization.  ##
+## --------------------- ##
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+
+# Work around bugs in pre-3.0 UWIN ksh.
+$as_unset ENV MAIL MAILPATH
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+  LC_TELEPHONE LC_TIME
+do
+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+    eval $as_var=C; export $as_var
+  else
+    $as_unset $as_var
+  fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)$' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+         /^X\/\(\/\/\)$/{ s//\1/; q; }
+         /^X\/\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+
+
+# PATH needs CR, and LINENO needs CR and PATH.
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
+  # Find who we are.  Look in the path if we contain no path at all
+  # relative or not.
+  case $0 in
+    *[\\/]* ) as_myself=$0 ;;
+    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+
+       ;;
+  esac
+  # We did not find ourselves, most probably we were run as `sh COMMAND'
+  # in which case we are not to be found in the path.
+  if test "x$as_myself" = x; then
+    as_myself=$0
+  fi
+  if test ! -f "$as_myself"; then
+    { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
+   { (exit 1); exit 1; }; }
+  fi
+  case $CONFIG_SHELL in
+  '')
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for as_base in sh bash ksh sh5; do
+        case $as_dir in
+        /*)
+          if ("$as_dir/$as_base" -c '
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
+            $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { 
BASH_ENV=; export BASH_ENV; }
+            $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+            CONFIG_SHELL=$as_dir/$as_base
+            export CONFIG_SHELL
+            exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+          fi;;
+        esac
+       done
+done
+;;
+  esac
+
+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+  # uniformly replaced by the line number.  The first 'sed' inserts a
+  # line-number line before each line; the second 'sed' does the real
+  # work.  The second script uses 'N' to pair each line-number line
+  # with the numbered line, and appends trailing '-' during
+  # substitution so that $LINENO is not a special case at line end.
+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
+  sed '=' <$as_myself |
+    sed '
+      N
+      s,$,-,
+      : loop
+      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+      t loop
+      s,-$,,
+      s,^['$as_cr_digits']*\n,,
+    ' >$as_me.lineno &&
+  chmod +x $as_me.lineno ||
+    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX 
shell" >&2
+   { (exit 1); exit 1; }; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensible to this).
+  . ./$as_me.lineno
+  # Exit status is that of the last command.
+  exit
+}
+
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='     ' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p=:
+else
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
+fi
+
+as_executable_p="test -f"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS="  $as_nl"
+
+# CDPATH.
+$as_unset CDPATH
+
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+exec 6>&1
+
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+ac_config_libobj_dir=.
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Maximum number of lines to put in a shell here document.
+# This variable seems obsolete.  It should probably be removed, and
+# only ac_max_sed_lines should be used.
+: ${ac_max_here_lines=38}
+
+# Identity of this package.
+PACKAGE_NAME='hurd'
+PACKAGE_TARNAME='hurd'
+PACKAGE_VERSION='0.0'
+PACKAGE_STRING='hurd 0.0'
+PACKAGE_BUGREPORT='address@hidden'
+
+ac_unique_file="laden/laden.c"
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME 
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix 
program_transform_name bindir sbindir libexecdir datadir sysconfdir 
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir 
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS 
INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL 
AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP 
INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar 
am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS 
CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE 
AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE 
IDL4CONFIG ac_pt_IDL4CONFIG CCAS CCASFLAGS RANLIB ac_ct_RANLIB AR ac_ct_AR NM 
ac_ct_NM IDL4 IDL4FLAGS ac_pt_IDL4 SED SORT LATEX DVIPS PS2PDF FIG2DEV build 
build_cpu build_vendor build_os host host_cpu host_vendor host_os STATIC_GLIBC 
ARCH_ALPHA_TRUE ARCH_ALPHA_FALSE ARCH_AMD64_TRUE ARCH_AMD64_FALSE 
ARCH_IA32_TRUE ARCH_IA32_FALSE ARCH_IA64_TRUE ARCH_IA64_FALSE ARCH_POWERPC_TRUE 
ARCH_POWERPC_FALSE ARCH_POWERPC64_TRUE ARCH_POWERPC64_FALSE 
HURD_LADEN_LOAD_ADDRESS HURD_WORTEL_LOAD_ADDRESS HURD_PHYSMEM_LOAD_ADDRESS 
WITH_LIBC_TRUE WITH_LIBC_FALSE LIBOBJS LTLIBOBJS'
+ac_subst_files=''
+
+# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+cache_file=/dev/null
+exec_prefix=NONE
+no_create=
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+verbose=
+x_includes=NONE
+x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datadir='${prefix}/share'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+libdir='${exec_prefix}/lib'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+infodir='${prefix}/info'
+mandir='${prefix}/man'
+
+ac_prev=
+for ac_option
+do
+  # If the previous option needs an argument, assign it.
+  if test -n "$ac_prev"; then
+    eval "$ac_prev=\$ac_option"
+    ac_prev=
+    continue
+  fi
+
+  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
+
+  # Accept the important Cygnus configure options, so we can diagnose typos.
+
+  case $ac_option in
+
+  -bindir | --bindir | --bindi | --bind | --bin | --bi)
+    ac_prev=bindir ;;
+  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+    bindir=$ac_optarg ;;
+
+  -build | --build | --buil | --bui | --bu)
+    ac_prev=build_alias ;;
+  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+    build_alias=$ac_optarg ;;
+
+  -cache-file | --cache-file | --cache-fil | --cache-fi \
+  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+    ac_prev=cache_file ;;
+  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+    cache_file=$ac_optarg ;;
+
+  --config-cache | -C)
+    cache_file=config.cache ;;
+
+  -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+    ac_prev=datadir ;;
+  -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+  | --da=*)
+    datadir=$ac_optarg ;;
+
+  -disable-* | --disable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    eval "enable_$ac_feature=no" ;;
+
+  -enable-* | --enable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+      *) ac_optarg=yes ;;
+    esac
+    eval "enable_$ac_feature='$ac_optarg'" ;;
+
+  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+  | --exec | --exe | --ex)
+    ac_prev=exec_prefix ;;
+  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+  | --exec=* | --exe=* | --ex=*)
+    exec_prefix=$ac_optarg ;;
+
+  -gas | --gas | --ga | --g)
+    # Obsolete; use --with-gas.
+    with_gas=yes ;;
+
+  -help | --help | --hel | --he | -h)
+    ac_init_help=long ;;
+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+    ac_init_help=recursive ;;
+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+    ac_init_help=short ;;
+
+  -host | --host | --hos | --ho)
+    ac_prev=host_alias ;;
+  -host=* | --host=* | --hos=* | --ho=*)
+    host_alias=$ac_optarg ;;
+
+  -includedir | --includedir | --includedi | --included | --include \
+  | --includ | --inclu | --incl | --inc)
+    ac_prev=includedir ;;
+  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+  | --includ=* | --inclu=* | --incl=* | --inc=*)
+    includedir=$ac_optarg ;;
+
+  -infodir | --infodir | --infodi | --infod | --info | --inf)
+    ac_prev=infodir ;;
+  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+    infodir=$ac_optarg ;;
+
+  -libdir | --libdir | --libdi | --libd)
+    ac_prev=libdir ;;
+  -libdir=* | --libdir=* | --libdi=* | --libd=*)
+    libdir=$ac_optarg ;;
+
+  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+  | --libexe | --libex | --libe)
+    ac_prev=libexecdir ;;
+  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+  | --libexe=* | --libex=* | --libe=*)
+    libexecdir=$ac_optarg ;;
+
+  -localstatedir | --localstatedir | --localstatedi | --localstated \
+  | --localstate | --localstat | --localsta | --localst \
+  | --locals | --local | --loca | --loc | --lo)
+    ac_prev=localstatedir ;;
+  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+  | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+  | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+    localstatedir=$ac_optarg ;;
+
+  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+    ac_prev=mandir ;;
+  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+    mandir=$ac_optarg ;;
+
+  -nfp | --nfp | --nf)
+    # Obsolete; use --without-fp.
+    with_fp=no ;;
+
+  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+  | --no-cr | --no-c | -n)
+    no_create=yes ;;
+
+  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+    no_recursion=yes ;;
+
+  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+  | --oldin | --oldi | --old | --ol | --o)
+    ac_prev=oldincludedir ;;
+  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+    oldincludedir=$ac_optarg ;;
+
+  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+    ac_prev=prefix ;;
+  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+    prefix=$ac_optarg ;;
+
+  -program-prefix | --program-prefix | --program-prefi | --program-pref \
+  | --program-pre | --program-pr | --program-p)
+    ac_prev=program_prefix ;;
+  -program-prefix=* | --program-prefix=* | --program-prefi=* \
+  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+    program_prefix=$ac_optarg ;;
+
+  -program-suffix | --program-suffix | --program-suffi | --program-suff \
+  | --program-suf | --program-su | --program-s)
+    ac_prev=program_suffix ;;
+  -program-suffix=* | --program-suffix=* | --program-suffi=* \
+  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+    program_suffix=$ac_optarg ;;
+
+  -program-transform-name | --program-transform-name \
+  | --program-transform-nam | --program-transform-na \
+  | --program-transform-n | --program-transform- \
+  | --program-transform | --program-transfor \
+  | --program-transfo | --program-transf \
+  | --program-trans | --program-tran \
+  | --progr-tra | --program-tr | --program-t)
+    ac_prev=program_transform_name ;;
+  -program-transform-name=* | --program-transform-name=* \
+  | --program-transform-nam=* | --program-transform-na=* \
+  | --program-transform-n=* | --program-transform-=* \
+  | --program-transform=* | --program-transfor=* \
+  | --program-transfo=* | --program-transf=* \
+  | --program-trans=* | --program-tran=* \
+  | --progr-tra=* | --program-tr=* | --program-t=*)
+    program_transform_name=$ac_optarg ;;
+
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil)
+    silent=yes ;;
+
+  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+    ac_prev=sbindir ;;
+  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+  | --sbi=* | --sb=*)
+    sbindir=$ac_optarg ;;
+
+  -sharedstatedir | --sharedstatedir | --sharedstatedi \
+  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+  | --sharedst | --shareds | --shared | --share | --shar \
+  | --sha | --sh)
+    ac_prev=sharedstatedir ;;
+  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+  | --sha=* | --sh=*)
+    sharedstatedir=$ac_optarg ;;
+
+  -site | --site | --sit)
+    ac_prev=site ;;
+  -site=* | --site=* | --sit=*)
+    site=$ac_optarg ;;
+
+  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+    ac_prev=srcdir ;;
+  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+    srcdir=$ac_optarg ;;
+
+  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+  | --syscon | --sysco | --sysc | --sys | --sy)
+    ac_prev=sysconfdir ;;
+  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+    sysconfdir=$ac_optarg ;;
+
+  -target | --target | --targe | --targ | --tar | --ta | --t)
+    ac_prev=target_alias ;;
+  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+    target_alias=$ac_optarg ;;
+
+  -v | -verbose | --verbose | --verbos | --verbo | --verb)
+    verbose=yes ;;
+
+  -version | --version | --versio | --versi | --vers | -V)
+    ac_init_version=: ;;
+
+  -with-* | --with-*)
+    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package| sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+      *) ac_optarg=yes ;;
+    esac
+    eval "with_$ac_package='$ac_optarg'" ;;
+
+  -without-* | --without-*)
+    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package | sed 's/-/_/g'`
+    eval "with_$ac_package=no" ;;
+
+  --x)
+    # Obsolete; use --with-x.
+    with_x=yes ;;
+
+  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+  | --x-incl | --x-inc | --x-in | --x-i)
+    ac_prev=x_includes ;;
+  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+    x_includes=$ac_optarg ;;
+
+  -x-libraries | --x-libraries | --x-librarie | --x-librari \
+  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+    ac_prev=x_libraries ;;
+  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+    x_libraries=$ac_optarg ;;
+
+  -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+   { (exit 1); exit 1; }; }
+    ;;
+
+  *=*)
+    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+   { (exit 1); exit 1; }; }
+    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
+    eval "$ac_envvar='$ac_optarg'"
+    export $ac_envvar ;;
+
+  *)
+    # FIXME: should be removed in autoconf 3.0.
+    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+    : ${build_alias=$ac_option} ${host_alias=$ac_option} 
${target_alias=$ac_option}
+    ;;
+
+  esac
+done
+
+if test -n "$ac_prev"; then
+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+  { echo "$as_me: error: missing argument to $ac_option" >&2
+   { (exit 1); exit 1; }; }
+fi
+
+# Be sure to have absolute paths.
+for ac_var in exec_prefix prefix
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
+    *)  { echo "$as_me: error: expected an absolute directory name for 
--$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# Be sure to have absolute paths.
+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
+             localstatedir libdir includedir oldincludedir infodir mandir
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* ) ;;
+    *)  { echo "$as_me: error: expected an absolute directory name for 
--$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+# FIXME: To remove some day.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: To remove some day.
+if test "x$host_alias" != x; then
+  if test "x$build_alias" = x; then
+    cross_compiling=maybe
+    echo "$as_me: WARNING: If you wanted to set the --build type, don't use 
--host.
+    If a cross compiler is detected then cross compile mode will be used." >&2
+  elif test "x$build_alias" != "x$host_alias"; then
+    cross_compiling=yes
+  fi
+fi
+
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
+
+test "$silent" = yes && exec 6>/dev/null
+
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+  ac_srcdir_defaulted=yes
+  # Try the directory containing this script, then its parent.
+  ac_confdir=`(dirname "$0") 2>/dev/null ||
+$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$0" : 'X\(//\)[^/]' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$0" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  srcdir=$ac_confdir
+  if test ! -r $srcdir/$ac_unique_file; then
+    srcdir=..
+  fi
+else
+  ac_srcdir_defaulted=no
+fi
+if test ! -r $srcdir/$ac_unique_file; then
+  if test "$ac_srcdir_defaulted" = yes; then
+    { echo "$as_me: error: cannot find sources ($ac_unique_file) in 
$ac_confdir or .." >&2
+   { (exit 1); exit 1; }; }
+  else
+    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" 
>&2
+   { (exit 1); exit 1; }; }
+  fi
+fi
+(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
+  { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not 
work" >&2
+   { (exit 1); exit 1; }; }
+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
+ac_env_build_alias_set=${build_alias+set}
+ac_env_build_alias_value=$build_alias
+ac_cv_env_build_alias_set=${build_alias+set}
+ac_cv_env_build_alias_value=$build_alias
+ac_env_host_alias_set=${host_alias+set}
+ac_env_host_alias_value=$host_alias
+ac_cv_env_host_alias_set=${host_alias+set}
+ac_cv_env_host_alias_value=$host_alias
+ac_env_target_alias_set=${target_alias+set}
+ac_env_target_alias_value=$target_alias
+ac_cv_env_target_alias_set=${target_alias+set}
+ac_cv_env_target_alias_value=$target_alias
+ac_env_CC_set=${CC+set}
+ac_env_CC_value=$CC
+ac_cv_env_CC_set=${CC+set}
+ac_cv_env_CC_value=$CC
+ac_env_CFLAGS_set=${CFLAGS+set}
+ac_env_CFLAGS_value=$CFLAGS
+ac_cv_env_CFLAGS_set=${CFLAGS+set}
+ac_cv_env_CFLAGS_value=$CFLAGS
+ac_env_LDFLAGS_set=${LDFLAGS+set}
+ac_env_LDFLAGS_value=$LDFLAGS
+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
+ac_cv_env_LDFLAGS_value=$LDFLAGS
+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_env_CPPFLAGS_value=$CPPFLAGS
+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
+ac_env_CCAS_set=${CCAS+set}
+ac_env_CCAS_value=$CCAS
+ac_cv_env_CCAS_set=${CCAS+set}
+ac_cv_env_CCAS_value=$CCAS
+ac_env_CCASFLAGS_set=${CCASFLAGS+set}
+ac_env_CCASFLAGS_value=$CCASFLAGS
+ac_cv_env_CCASFLAGS_set=${CCASFLAGS+set}
+ac_cv_env_CCASFLAGS_value=$CCASFLAGS
+ac_env_IDL4_set=${IDL4+set}
+ac_env_IDL4_value=$IDL4
+ac_cv_env_IDL4_set=${IDL4+set}
+ac_cv_env_IDL4_value=$IDL4
+ac_env_IDL4FLAGS_set=${IDL4FLAGS+set}
+ac_env_IDL4FLAGS_value=$IDL4FLAGS
+ac_cv_env_IDL4FLAGS_set=${IDL4FLAGS+set}
+ac_cv_env_IDL4FLAGS_value=$IDL4FLAGS
+ac_env_IDL4CONFIG_set=${IDL4CONFIG+set}
+ac_env_IDL4CONFIG_value=$IDL4CONFIG
+ac_cv_env_IDL4CONFIG_set=${IDL4CONFIG+set}
+ac_cv_env_IDL4CONFIG_value=$IDL4CONFIG
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+  # Omit some internal or obsolete options to make the list less imposing.
+  # This message is too long to be a string in the A/UX 3.1 sh.
+  cat <<_ACEOF
+\`configure' configures hurd 0.0 to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE.  See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+  -h, --help              display this help and exit
+      --help=short        display options specific to this package
+      --help=recursive    display the short help of all the included packages
+  -V, --version           display version information and exit
+  -q, --quiet, --silent   do not print \`checking...' messages
+      --cache-file=FILE   cache test results in FILE [disabled]
+  -C, --config-cache      alias for \`--cache-file=config.cache'
+  -n, --no-create         do not create output files
+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
+
+_ACEOF
+
+  cat <<_ACEOF
+Installation directories:
+  --prefix=PREFIX         install architecture-independent files in PREFIX
+                         [$ac_default_prefix]
+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+                         [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+  --bindir=DIR           user executables [EPREFIX/bin]
+  --sbindir=DIR          system admin executables [EPREFIX/sbin]
+  --libexecdir=DIR       program executables [EPREFIX/libexec]
+  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
+  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
+  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
+  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
+  --libdir=DIR           object code libraries [EPREFIX/lib]
+  --includedir=DIR       C header files [PREFIX/include]
+  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
+  --infodir=DIR          info documentation [PREFIX/info]
+  --mandir=DIR           man documentation [PREFIX/man]
+_ACEOF
+
+  cat <<\_ACEOF
+
+Program names:
+  --program-prefix=PREFIX            prepend PREFIX to installed program names
+  --program-suffix=SUFFIX            append SUFFIX to installed program names
+  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
+
+System types:
+  --build=BUILD     configure for building on BUILD [guessed]
+  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
+_ACEOF
+fi
+
+if test -n "$ac_init_help"; then
+  case $ac_init_help in
+     short | recursive ) echo "Configuration of hurd 0.0:";;
+   esac
+  cat <<\_ACEOF
+
+Optional Features:
+  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
+  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
+  --enable-maintainer-mode  enable make rules and dependencies not useful
+                         (and sometimes confusing) to the casual installer
+  --disable-dependency-tracking  speeds up one-time build
+  --enable-dependency-tracking   do not reject slow dependency extractors
+
+Optional Packages:
+  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+  --with-laden-loadaddr   laden load address [0x190000]
+  --with-wortel-loadaddr  wortel load address [0x300000]
+  --with-physmem-loadaddr physmem load address [0x400000]
+  --with-libc             compile with the GNU C library (see libc/README)
+
+Some influential environment variables:
+  CC          C compiler command
+  CFLAGS      C compiler flags
+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
+              nonstandard directory <lib dir>
+  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
+              headers in a nonstandard directory <include dir>
+  CCAS        assembler compiler command (defaults to CC)
+  CCASFLAGS   assembler compiler flags (defaults to CFLAGS)
+  IDL4        idl4 code generator command
+  IDL4FLAGS   idl4 code generator flags
+  IDL4CONFIG  idl4 path configuration tool
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+Report bugs to <address@hidden>.
+_ACEOF
+fi
+
+if test "$ac_init_help" = "recursive"; then
+  # If there are subdirs, report their specific --help.
+  ac_popdir=`pwd`
+  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
+    test -d $ac_dir || continue
+    ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+    cd $ac_dir
+    # Check for guested configure; otherwise get Cygnus style configure.
+    if test -f $ac_srcdir/configure.gnu; then
+      echo
+      $SHELL $ac_srcdir/configure.gnu  --help=recursive
+    elif test -f $ac_srcdir/configure; then
+      echo
+      $SHELL $ac_srcdir/configure  --help=recursive
+    elif test -f $ac_srcdir/configure.ac ||
+          test -f $ac_srcdir/configure.in; then
+      echo
+      $ac_configure --help
+    else
+      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+    fi
+    cd $ac_popdir
+  done
+fi
+
+test -n "$ac_init_help" && exit 0
+if $ac_init_version; then
+  cat <<\_ACEOF
+hurd configure 0.0
+generated by GNU Autoconf 2.59
+
+Copyright (C) 2003 Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+_ACEOF
+  exit 0
+fi
+exec 5>config.log
+cat >&5 <<_ACEOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by hurd $as_me 0.0, which was
+generated by GNU Autoconf 2.59.  Invocation command line was
+
+  $ $0 $@
+
+_ACEOF
+{
+cat <<_ASUNAME
+## --------- ##
+## Platform. ##
+## --------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
+
+/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+hostinfo               = `(hostinfo) 2>/dev/null               || echo unknown`
+/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
+/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  echo "PATH: $as_dir"
+done
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
+## ----------- ##
+## Core tests. ##
+## ----------- ##
+
+_ACEOF
+
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Strip out --silent because we don't want to record it for future runs.
+# Also quote any args containing shell meta-characters.
+# Make two passes to allow for proper duplicate-argument suppression.
+ac_configure_args=
+ac_configure_args0=
+ac_configure_args1=
+ac_sep=
+ac_must_keep_next=false
+for ac_pass in 1 2
+do
+  for ac_arg
+  do
+    case $ac_arg in
+    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
+    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+    | -silent | --silent | --silen | --sile | --sil)
+      continue ;;
+    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    esac
+    case $ac_pass in
+    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+    2)
+      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+      if test $ac_must_keep_next = true; then
+       ac_must_keep_next=false # Got value, back to normal.
+      else
+       case $ac_arg in
+         *=* | --config-cache | -C | -disable-* | --disable-* \
+         | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+         | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+         | -with-* | --with-* | -without-* | --without-* | --x)
+           case "$ac_configure_args0 " in
+             "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+           esac
+           ;;
+         -* ) ac_must_keep_next=true ;;
+       esac
+      fi
+      ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
+      # Get rid of the leading space.
+      ac_sep=" "
+      ;;
+    esac
+  done
+done
+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { 
ac_configure_args0=; export ac_configure_args0; }
+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { 
ac_configure_args1=; export ac_configure_args1; }
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log.  We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+# WARNING: Be sure not to use single quotes in there, as some shells,
+# such as our DU 5.0 friend, will then `close' the trap.
+trap 'exit_status=$?
+  # Save into config.log some information that might help in debugging.
+  {
+    echo
+
+    cat <<\_ASBOX
+## ---------------- ##
+## Cache variables. ##
+## ---------------- ##
+_ASBOX
+    echo
+    # The following way of writing the cache mishandles newlines in values,
+{
+  (set) 2>&1 |
+    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      sed -n \
+       "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
+         
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
+      ;;
+    *)
+      sed -n \
+       "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+}
+    echo
+
+    cat <<\_ASBOX
+## ----------------- ##
+## Output variables. ##
+## ----------------- ##
+_ASBOX
+    echo
+    for ac_var in $ac_subst_vars
+    do
+      eval ac_val=$`echo $ac_var`
+      echo "$ac_var='"'"'$ac_val'"'"'"
+    done | sort
+    echo
+
+    if test -n "$ac_subst_files"; then
+      cat <<\_ASBOX
+## ------------- ##
+## Output files. ##
+## ------------- ##
+_ASBOX
+      echo
+      for ac_var in $ac_subst_files
+      do
+       eval ac_val=$`echo $ac_var`
+       echo "$ac_var='"'"'$ac_val'"'"'"
+      done | sort
+      echo
+    fi
+
+    if test -s confdefs.h; then
+      cat <<\_ASBOX
+## ----------- ##
+## confdefs.h. ##
+## ----------- ##
+_ASBOX
+      echo
+      sed "/^$/d" confdefs.h | sort
+      echo
+    fi
+    test "$ac_signal" != 0 &&
+      echo "$as_me: caught signal $ac_signal"
+    echo "$as_me: exit $exit_status"
+  } >&5
+  rm -f core *.core &&
+  rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
+    exit $exit_status
+     ' 0
+for ac_signal in 1 2 13 15; do
+  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -rf conftest* confdefs.h
+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+echo >confdefs.h
+
+# Predefined preprocessor variables.
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_NAME "$PACKAGE_NAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION "$PACKAGE_VERSION"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_STRING "$PACKAGE_STRING"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
+_ACEOF
+
+
+# Let the site file select an alternate cache file if it wants to.
+# Prefer explicitly selected file to automatically selected ones.
+if test -z "$CONFIG_SITE"; then
+  if test "x$prefix" != xNONE; then
+    CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+  else
+    CONFIG_SITE="$ac_default_prefix/share/config.site 
$ac_default_prefix/etc/config.site"
+  fi
+fi
+for ac_site_file in $CONFIG_SITE; do
+  if test -r "$ac_site_file"; then
+    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+    sed 's/^/| /' "$ac_site_file" >&5
+    . "$ac_site_file"
+  fi
+done
+
+if test -r "$cache_file"; then
+  # Some versions of bash will fail to source /dev/null (special
+  # files actually), so we avoid doing that.
+  if test -f "$cache_file"; then
+    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+    case $cache_file in
+      [\\/]* | ?:[\\/]* ) . $cache_file;;
+      *)                      . ./$cache_file;;
+    esac
+  fi
+else
+  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+  >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in `(set) 2>&1 |
+              sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
+  eval ac_new_set=\$ac_env_${ac_var}_set
+  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
+  eval ac_new_val="\$ac_env_${ac_var}_value"
+  case $ac_old_set,$ac_new_set in
+    set,)
+      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in 
the previous run" >&5
+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" 
>&2;}
+      ac_cache_corrupted=: ;;
+    ,set)
+      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous 
run" >&5
+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,);;
+    *)
+      if test "x$ac_old_val" != "x$ac_new_val"; then
+       { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the 
previous run:" >&5
+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+       { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
+echo "$as_me:   former value:  $ac_old_val" >&2;}
+       { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
+echo "$as_me:   current value: $ac_new_val" >&2;}
+       ac_cache_corrupted=:
+      fi;;
+  esac
+  # Pass precious variables to config.status.
+  if test "$ac_new_set" = set; then
+    case $ac_new_val in
+    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *) ac_arg=$ac_var=$ac_new_val ;;
+    esac
+    case " $ac_configure_args " in
+      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
+      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+    esac
+  fi
+done
+if $ac_cache_corrupted; then
+  { echo "$as_me:$LINENO: error: changes in the environment can compromise the 
build" >&5
+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm 
$cache_file' and start over" >&5
+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start 
over" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+am__api_version="1.9"
+ac_aux_dir=
+for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
+  if test -f $ac_dir/install-sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install-sh -c"
+    break
+  elif test -f $ac_dir/install.sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install.sh -c"
+    break
+  elif test -f $ac_dir/shtool; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/shtool install -c"
+    break
+  fi
+done
+if test -z "$ac_aux_dir"; then
+  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in 
$srcdir $srcdir/.. $srcdir/../.." >&5
+echo "$as_me: error: cannot find install-sh or install.sh in $srcdir 
$srcdir/.. $srcdir/../.." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
+
+# Find a good install program.  We prefer a C program (faster),
+# so one script is as good as another.  But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+  ./ | .// | /cC/* | \
+  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+  /usr/ucb/* ) ;;
+  *)
+    # OSF1 and SCO ODT 3.0 have their own names for install.
+    # Don't use installbsd from OSF since it installs stuff as root
+    # by default.
+    for ac_prog in ginstall scoinst install; do
+      for ac_exec_ext in '' $ac_executable_extensions; do
+       if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+         if test $ac_prog = install &&
+           grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+           # AIX install.  It has an incompatible calling convention.
+           :
+         elif test $ac_prog = install &&
+           grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+           # program-specific install script used by HP pwplus--don't use.
+           :
+         else
+           ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+           break 3
+         fi
+       fi
+      done
+    done
+    ;;
+esac
+done
+
+
+fi
+  if test "${ac_cv_path_install+set}" = set; then
+    INSTALL=$ac_cv_path_install
+  else
+    # As a last resort, use the slow shell script.  We don't cache a
+    # path for INSTALL within a source directory, because that will
+    # break other packages using the cache if that directory is
+    # removed, or if the path is relative.
+    INSTALL=$ac_install_sh
+  fi
+fi
+echo "$as_me:$LINENO: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+echo "$as_me:$LINENO: checking whether build environment is sane" >&5
+echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments.  Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   if test "$*" = "X"; then
+      # -L didn't work.
+      set X `ls -t $srcdir/configure conftest.file`
+   fi
+   rm -f conftest.file
+   if test "$*" != "X $srcdir/configure conftest.file" \
+      && test "$*" != "X conftest.file $srcdir/configure"; then
+
+      # If neither matched, then we have a broken ls.  This can happen
+      # if, for instance, CONFIG_SHELL is bash and it inherits a
+      # broken ls alias from the environment.  This has actually
+      # happened.  Such a system could not be considered "sane".
+      { { echo "$as_me:$LINENO: error: ls -t appears to fail.  Make sure there 
is not a broken
+alias in your environment" >&5
+echo "$as_me: error: ls -t appears to fail.  Make sure there is not a broken
+alias in your environment" >&2;}
+   { (exit 1); exit 1; }; }
+   fi
+
+   test "$2" = conftest.file
+   )
+then
+   # Ok.
+   :
+else
+   { { echo "$as_me:$LINENO: error: newly created file is older than 
distributed files!
+Check your system clock" >&5
+echo "$as_me: error: newly created file is older than distributed files!
+Check your system clock" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+test "$program_prefix" != NONE &&
+  program_transform_name="s,^,$program_prefix,;$program_transform_name"
+# Use a double $ so make ignores it.
+test "$program_suffix" != NONE &&
+  program_transform_name="s,\$,$program_suffix,;$program_transform_name"
+# Double any \ or $.  echo might interpret backslashes.
+# By default was `s,x,x', remove it if useless.
+cat <<\_ACEOF >conftest.sed
+s/[\\$]/&&/g;s/;s,x,x,$//
+_ACEOF
+program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
+rm conftest.sed
+
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+  am_missing_run="$MISSING --run "
+else
+  am_missing_run=
+  { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
+echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+  # We used to keeping the `.' as first argument, in order to
+  # allow $(mkdir_p) to be used without argument.  As in
+  #   $(mkdir_p) $(somedir)
+  # where $(somedir) is conditionally defined.  However this is wrong
+  # for two reasons:
+  #  1. if the package is installed by a user who cannot write `.'
+  #     make install will fail,
+  #  2. the above comment should most certainly read
+  #     $(mkdir_p) $(DESTDIR)$(somedir)
+  #     so it does not work when $(somedir) is undefined and
+  #     $(DESTDIR) is not.
+  #  To support the latter case, we have to write
+  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+  #  so the `.' trick is pointless.
+  mkdir_p='mkdir -p --'
+else
+  # On NextStep and OpenStep, the `mkdir' command does not
+  # recognize any option.  It will interpret all options as
+  # directories to create, and then abort because `.' already
+  # exists.
+  for d in ./-p ./--version;
+  do
+    test -d $d && rmdir $d
+  done
+  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+  if test -f "$ac_aux_dir/mkinstalldirs"; then
+    mkdir_p='$(mkinstalldirs)'
+  else
+    mkdir_p='$(install_sh) -d'
+  fi
+fi
+
+for ac_prog in gawk mawk nawk awk
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AWK+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AWK"; then
+  ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_AWK="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+AWK=$ac_cv_prog_AWK
+if test -n "$AWK"; then
+  echo "$as_me:$LINENO: result: $AWK" >&5
+echo "${ECHO_T}$AWK" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$AWK" && break
+done
+
+echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.make <<\_ACEOF
+all:
+       @echo 'ac_maketemp="$(MAKE)"'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
+if test -n "$ac_maketemp"; then
+  eval ac_cv_prog_make_${ac_make}_set=yes
+else
+  eval ac_cv_prog_make_${ac_make}_set=no
+fi
+rm -f conftest.make
+fi
+if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
+  echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+  SET_MAKE=
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+  SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+  am__leading_dot=.
+else
+  am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+   test -f $srcdir/config.status; then
+  { { echo "$as_me:$LINENO: error: source directory already configured; run 
\"make distclean\" there first" >&5
+echo "$as_me: error: source directory already configured; run \"make 
distclean\" there first" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+  if (cygpath --version) >/dev/null 2>/dev/null; then
+    CYGPATH_W='cygpath -w'
+  else
+    CYGPATH_W=echo
+  fi
+fi
+
+
+# Define the identity of the package.
+ PACKAGE='hurd'
+ VERSION='0.0'
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE "$PACKAGE"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define VERSION "$VERSION"
+_ACEOF
+
+# Some tools Automake needs.
+
+ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
+
+
+AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
+
+
+AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
+
+
+AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
+
+
+MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'.  However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_STRIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$STRIP"; then
+  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+  echo "$as_me:$LINENO: result: $STRIP" >&5
+echo "${ECHO_T}$STRIP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+  ac_ct_STRIP=$STRIP
+  # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_STRIP"; then
+  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_STRIP="strip"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":"
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+echo "${ECHO_T}$ac_ct_STRIP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  STRIP=$ac_ct_STRIP
+else
+  STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
+# Always define AMTAR for backward compatibility.
+
+AMTAR=${AMTAR-"${am_missing_run}tar"}
+
+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+
+
+
+
+
+echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions 
of Makefiles" >&5
+echo $ECHO_N "checking whether to enable maintainer-specific portions of 
Makefiles... $ECHO_C" >&6
+    # Check whether --enable-maintainer-mode or --disable-maintainer-mode was 
given.
+if test "${enable_maintainer_mode+set}" = set; then
+  enableval="$enable_maintainer_mode"
+  USE_MAINTAINER_MODE=$enableval
+else
+  USE_MAINTAINER_MODE=no
+fi;
+  echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5
+echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6
+
+
+if test $USE_MAINTAINER_MODE = yes; then
+  MAINTAINER_MODE_TRUE=
+  MAINTAINER_MODE_FALSE='#'
+else
+  MAINTAINER_MODE_TRUE='#'
+  MAINTAINER_MODE_FALSE=
+fi
+
+  MAINT=$MAINTAINER_MODE_TRUE
+
+
+
+          ac_config_headers="$ac_config_headers config.h"
+
+
+cat >>confdefs.h <<\_ACEOF
+#define _GNU_SOURCE 1
+_ACEOF
+
+
+
+maintainer_mode=${enable_maintainer_mode-no}
+
+# Checks for programs.
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}gcc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="gcc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+fi
+if test -z "$CC"; then
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+       ac_prog_rejected=yes
+       continue
+     fi
+    ac_cv_prog_CC="cc"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+if test $ac_prog_rejected = yes; then
+  # We found a bogon in the path, so make sure we never use it.
+  set dummy $ac_cv_prog_CC
+  shift
+  if test $# != 0; then
+    # We chose a different compiler from the bogus one.
+    # However, it has the same basename, so the bogon will be chosen
+    # first if we set CC to just the basename; use the full file name.
+    shift
+    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+  fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  for ac_prog in cl
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a 
program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+    test -n "$CC" && break
+  done
+fi
+if test -z "$CC"; then
+  ac_ct_CC=$CC
+  for ac_prog in cl
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ac_ct_CC" && break
+done
+
+  CC=$ac_ct_CC
+fi
+
+fi
+
+
+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler 
found in \$PATH
+See \`config.log' for more details." >&5
+echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO:" \
+     "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
+  (eval $ac_compiler --version </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
+  (eval $ac_compiler -v </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
+  (eval $ac_compiler -V </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
+echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
+  (eval $ac_link_default) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # Find the output, starting from the most likely.  This scheme is
+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
+# resort.
+
+# Be careful to initialize this variable, since it used to be cached.
+# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
+ac_cv_exeext=
+# b.out is created by i960 compilers.
+for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
+do
+  test -f "$ac_file" || continue
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj )
+       ;;
+    conftest.$ac_ext )
+       # This is the source file.
+       ;;
+    [ab].out )
+       # We found the default executable, but exeext='' is most
+       # certainly right.
+       break;;
+    *.* )
+       ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+       # FIXME: I believe we export ac_cv_exeext for Libtool,
+       # but it would be cool to find out if it's true.  Does anybody
+       # maintain Libtool? --akim.
+       export ac_cv_exeext
+       break;;
+    * )
+       break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
+See \`config.log' for more details." >&5
+echo "$as_me: error: C compiler cannot create executables
+See \`config.log' for more details." >&2;}
+   { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6
+
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+  if { ac_try='./$ac_file'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+    cross_compiling=no
+  else
+    if test "$cross_compiling" = maybe; then
+       cross_compiling=yes
+    else
+       { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+    fi
+  fi
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+rm -f a.out a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
+echo "$as_me:$LINENO: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6
+
+echo "$as_me:$LINENO: checking for suffix of executables" >&5
+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+  test -f "$ac_file" || continue
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj ) ;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+         export ac_cv_exeext
+         break;;
+    * ) break;;
+  esac
+done
+else
+  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: 
cannot compile and link
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of executables: cannot compile and 
link
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+echo "$as_me:$LINENO: checking for suffix of object files" >&5
+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
+if test "${ac_cv_objext+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+       break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot 
compile
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+#ifndef __GNUC__
+       choke me
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_compiler_gnu=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_compiler_gnu=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_g+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_g=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_prog_cc_g=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+if test "$ac_test_CFLAGS" = set; then
+  CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+  if test "$GCC" = yes; then
+    CFLAGS="-g -O2"
+  else
+    CFLAGS="-g"
+  fi
+else
+  if test "$GCC" = yes; then
+    CFLAGS="-O2"
+  else
+    CFLAGS=
+  fi
+fi
+echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_prog_cc_stdc=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
+   function prototypes and stuff, but not '\xHH' hex character constants.
+   These don't provoke an error unfortunately, instead are silently treated
+   as 'x'.  The following induces an error, until -std1 is added to get
+   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
+   array size at least.  It's necessary to write '\x00'==0 to get something
+   that's true only with -std1.  */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, 
int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
+  ;
+  return 0;
+}
+_ACEOF
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX                  -qlanglvl=ansi
+# Ultrix and OSF/1     -std1
+# HP-UX 10.20 and later        -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
+# SVR4                 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc 
-D__EXTENSIONS__"
+do
+  CC="$ac_save_CC $ac_arg"
+  rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_stdc=$ac_arg
+break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+done
+rm -f conftest.$ac_ext conftest.$ac_objext
+CC=$ac_save_CC
+
+fi
+
+case "x$ac_cv_prog_cc_stdc" in
+  x|xno)
+    echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+  *)
+    echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
+    CC="$CC $ac_cv_prog_cc_stdc" ;;
+esac
+
+# Some people use a C++ compiler to compile C.  Since we use `exit',
+# in C++ we need to declare it.  In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
+#ifndef __cplusplus
+  choke me
+#endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  for ac_declaration in \
+   '' \
+   'extern "C" void std::exit (int) throw (); using std::exit;' \
+   'extern "C" void std::exit (int); using std::exit;' \
+   'extern "C" void exit (int) throw ();' \
+   'extern "C" void exit (int);' \
+   'void exit (int);'
+do
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_declaration
+#include <stdlib.h>
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+continue
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+  echo '#ifdef __cplusplus' >>confdefs.h
+  echo $ac_declaration      >>confdefs.h
+  echo '#endif'             >>confdefs.h
+fi
+
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext 
$LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+DEPDIR="${am__leading_dot}deps"
+
+          ac_config_commands="$ac_config_commands depfiles"
+
+
+am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+       @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
+echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = 
"done"; then
+   am__include=include
+   am__quote=
+   _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+   echo '.include "confinc"' > confmf
+   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+      am__include=.include
+      am__quote="\""
+      _am_result=BSD
+   fi
+fi
+
+
+echo "$as_me:$LINENO: result: $_am_result" >&5
+echo "${ECHO_T}$_am_result" >&6
+rm -f confinc confmf
+
+# Check whether --enable-dependency-tracking or --disable-dependency-tracking 
was given.
+if test "${enable_dependency_tracking+set}" = set; then
+  enableval="$enable_dependency_tracking"
+
+fi;
+if test "x$enable_dependency_tracking" != xno; then
+  am_depcomp="$ac_aux_dir/depcomp"
+  AMDEPBACKSLASH='\'
+fi
+
+
+if test "x$enable_dependency_tracking" != xno; then
+  AMDEP_TRUE=
+  AMDEP_FALSE='#'
+else
+  AMDEP_TRUE='#'
+  AMDEP_FALSE=
+fi
+
+
+
+
+depcc="$CC"   am_compiler_list=
+
+echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+  # We make a subdir and do the tests there.  Otherwise we can end up
+  # making bogus files that we don't know about and never remove.  For
+  # instance it was reported that on HP-UX the gcc test will end up
+  # making a dummy file named `D' -- because `-MD' means `put the output
+  # in D'.
+  mkdir conftest.dir
+  # Copy depcomp to subdir because otherwise we won't find it if we're
+  # using a relative directory.
+  cp "$am_depcomp" conftest.dir
+  cd conftest.dir
+  # We will build objects and dependencies in a subdirectory because
+  # it helps to detect inapplicable dependency modes.  For instance
+  # both Tru64's cc and ICC support -MD to output dependencies as a
+  # side effect of compilation, but ICC will put the dependencies in
+  # the current directory while Tru64 will put them in the object
+  # directory.
+  mkdir sub
+
+  am_cv_CC_dependencies_compiler_type=none
+  if test "$am_compiler_list" = ""; then
+     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+  fi
+  for depmode in $am_compiler_list; do
+    # Setup a source with many dependencies, because some compilers
+    # like to wrap large dependency lists on column 80 (with \), and
+    # we should not choose a depcomp mode which is confused by this.
+    #
+    # We need to recreate these files for each test, as the compiler may
+    # overwrite some of them when testing with obscure command lines.
+    # This happens at least with the AIX C compiler.
+    : > sub/conftest.c
+    for i in 1 2 3 4 5 6; do
+      echo '#include "conftst'$i'.h"' >> sub/conftest.c
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
+    done
+    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+    case $depmode in
+    nosideeffect)
+      # after this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested
+      if test "x$enable_dependency_tracking" = xyes; then
+       continue
+      else
+       break
+      fi
+      ;;
+    none) break ;;
+    esac
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.
+    if depmode=$depmode \
+       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+         >/dev/null 2>conftest.err &&
+       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+      # icc doesn't choke on unknown options, it will just issue warnings
+      # or remarks (even with -Werror).  So we grep stderr for any message
+      # that says an option was ignored or not supported.
+      # When given -MP, icc 7.0 and 7.1 complain thusly:
+      #   icc: Command line warning: ignoring option '-M'; no argument required
+      # The diagnosis changed in icc 8.0:
+      #   icc: Command line remark: option '-MP' not supported
+      if (grep 'ignoring option' conftest.err ||
+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+        am_cv_CC_dependencies_compiler_type=$depmode
+        break
+      fi
+    fi
+  done
+
+  cd ..
+  rm -rf conftest.dir
+else
+  am_cv_CC_dependencies_compiler_type=none
+fi
+
+fi
+echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
+
+
+
+if
+  test "x$enable_dependency_tracking" != xno \
+  && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
+  am__fastdepCC_TRUE=
+  am__fastdepCC_FALSE='#'
+else
+  am__fastdepCC_TRUE='#'
+  am__fastdepCC_FALSE=
+fi
+
+
+
+#Find idl4-config. We need this here, since it gives
+#us some CFLAGS
+if test "x$IDL4CONFIG" = "x" ;then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}idl4-config", so it can be a 
program name with args.
+set dummy ${ac_tool_prefix}idl4-config; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_IDL4CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $IDL4CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_IDL4CONFIG="$IDL4CONFIG" # Let the user override the test with a 
path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_IDL4CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  ;;
+esac
+fi
+IDL4CONFIG=$ac_cv_path_IDL4CONFIG
+
+if test -n "$IDL4CONFIG"; then
+  echo "$as_me:$LINENO: result: $IDL4CONFIG" >&5
+echo "${ECHO_T}$IDL4CONFIG" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_path_IDL4CONFIG"; then
+  ac_pt_IDL4CONFIG=$IDL4CONFIG
+  # Extract the first word of "idl4-config", so it can be a program name with 
args.
+set dummy idl4-config; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ac_pt_IDL4CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ac_pt_IDL4CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_IDL4CONFIG="$ac_pt_IDL4CONFIG" # Let the user override the 
test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_IDL4CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_ac_pt_IDL4CONFIG" && ac_cv_path_ac_pt_IDL4CONFIG="no"
+  ;;
+esac
+fi
+ac_pt_IDL4CONFIG=$ac_cv_path_ac_pt_IDL4CONFIG
+
+if test -n "$ac_pt_IDL4CONFIG"; then
+  echo "$as_me:$LINENO: result: $ac_pt_IDL4CONFIG" >&5
+echo "${ECHO_T}$ac_pt_IDL4CONFIG" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  IDL4CONFIG=$ac_pt_IDL4CONFIG
+else
+  IDL4CONFIG="$ac_cv_path_IDL4CONFIG"
+fi
+
+fi
+if test "x$IDL4CONFIG" = "xno"; then
+  exit 1
+fi
+# FIXME: We should support setting the CFLAGS by the user.  But
+# -std=gnu99 and -O2 are required.
+CFLAGS="-std=gnu99 -Wall -g -O3 `$IDL4CONFIG --cflags`"
+
+# By default we simply use the C compiler to build assembly code.
+
+test "${CCAS+set}" = set || CCAS=$CC
+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS
+
+
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a 
program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+  echo "$as_me:$LINENO: result: $RANLIB" >&5
+echo "${ECHO_T}$RANLIB" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+  ac_ct_RANLIB=$RANLIB
+  # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_RANLIB"; then
+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_RANLIB="ranlib"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+  echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
+echo "${ECHO_T}$ac_ct_RANLIB" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  RANLIB=$ac_ct_RANLIB
+else
+  RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AR"; then
+  ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_AR="${ac_tool_prefix}ar"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+  echo "$as_me:$LINENO: result: $AR" >&5
+echo "${ECHO_T}$AR" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+  ac_ct_AR=$AR
+  # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_AR"; then
+  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_AR="ar"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_AR" && ac_cv_prog_ac_ct_AR=":"
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+  echo "$as_me:$LINENO: result: $ac_ct_AR" >&5
+echo "${ECHO_T}$ac_ct_AR" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  AR=$ac_ct_AR
+else
+  AR="$ac_cv_prog_AR"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nm", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}nm; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NM+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NM"; then
+  ac_cv_prog_NM="$NM" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NM="${ac_tool_prefix}nm"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NM=$ac_cv_prog_NM
+if test -n "$NM"; then
+  echo "$as_me:$LINENO: result: $NM" >&5
+echo "${ECHO_T}$NM" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NM"; then
+  ac_ct_NM=$NM
+  # Extract the first word of "nm", so it can be a program name with args.
+set dummy nm; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NM+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NM"; then
+  ac_cv_prog_ac_ct_NM="$ac_ct_NM" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NM="nm"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NM" && ac_cv_prog_ac_ct_NM=":"
+fi
+fi
+ac_ct_NM=$ac_cv_prog_ac_ct_NM
+if test -n "$ac_ct_NM"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NM" >&5
+echo "${ECHO_T}$ac_ct_NM" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NM=$ac_ct_NM
+else
+  NM="$ac_cv_prog_NM"
+fi
+
+
+#idl4 stuff (check, --help, ...)
+
+
+
+IDL4FLAGS="$IDL4FLAGS -i V4_GNU -p generic -T -fctypes"
+if test "x$IDL4" = "x";then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}idl4", so it can be a program 
name with args.
+set dummy ${ac_tool_prefix}idl4; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_IDL4+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $IDL4 in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_IDL4="$IDL4" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_IDL4="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  ;;
+esac
+fi
+IDL4=$ac_cv_path_IDL4
+
+if test -n "$IDL4"; then
+  echo "$as_me:$LINENO: result: $IDL4" >&5
+echo "${ECHO_T}$IDL4" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_path_IDL4"; then
+  ac_pt_IDL4=$IDL4
+  # Extract the first word of "idl4", so it can be a program name with args.
+set dummy idl4; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ac_pt_IDL4+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ac_pt_IDL4 in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_IDL4="$ac_pt_IDL4" # Let the user override the test with a 
path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_IDL4="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_ac_pt_IDL4" && ac_cv_path_ac_pt_IDL4="no"
+  ;;
+esac
+fi
+ac_pt_IDL4=$ac_cv_path_ac_pt_IDL4
+
+if test -n "$ac_pt_IDL4"; then
+  echo "$as_me:$LINENO: result: $ac_pt_IDL4" >&5
+echo "${ECHO_T}$ac_pt_IDL4" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  IDL4=$ac_pt_IDL4
+else
+  IDL4="$ac_cv_path_IDL4"
+fi
+
+fi
+if test "x$IDL4" = xno; then
+  exit 1
+fi
+echo -n "checking for idl4 -l -i V4_GNU -T... "
+$IDL4 $IDL4FLAGS -l -c -C "$CC $CFLAGS" test.idl
+if test -e test_client.h;then
+  echo yes
+  rm test_client.h
+else
+  echo 'Your version of idl4 is outdated, see README.idl4!'
+  exit 1
+fi
+IDL4FLAGS="$IDL4FLAGS -C \"\$(COMPILE) \$(\$(subdir)_CPPFLAGS)\""
+# Extract the first word of "sed", so it can be a program name with args.
+set dummy sed; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_SED+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $SED in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SED="$SED" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_SED" && ac_cv_path_SED=":"
+  ;;
+esac
+fi
+SED=$ac_cv_path_SED
+
+if test -n "$SED"; then
+  echo "$as_me:$LINENO: result: $SED" >&5
+echo "${ECHO_T}$SED" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+# Extract the first word of "sort", so it can be a program name with args.
+set dummy sort; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_SORT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $SORT in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SORT="$SORT" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SORT="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_SORT" && ac_cv_path_SORT=":"
+  ;;
+esac
+fi
+SORT=$ac_cv_path_SORT
+
+if test -n "$SORT"; then
+  echo "$as_me:$LINENO: result: $SORT" >&5
+echo "${ECHO_T}$SORT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+
+# Required for building the documentation
+# Extract the first word of "latex", so it can be a program name with args.
+set dummy latex; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_LATEX+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $LATEX in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_LATEX="$LATEX" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_LATEX="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_LATEX" && ac_cv_path_LATEX="no"
+  ;;
+esac
+fi
+LATEX=$ac_cv_path_LATEX
+
+if test -n "$LATEX"; then
+  echo "$as_me:$LINENO: result: $LATEX" >&5
+echo "${ECHO_T}$LATEX" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$LATEX" = xno; then
+  missing_progs="$missing_progs latex"
+fi
+# Extract the first word of "dvips", so it can be a program name with args.
+set dummy dvips; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_DVIPS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $DVIPS in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_DVIPS="$DVIPS" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_DVIPS="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_DVIPS" && ac_cv_path_DVIPS="no"
+  ;;
+esac
+fi
+DVIPS=$ac_cv_path_DVIPS
+
+if test -n "$DVIPS"; then
+  echo "$as_me:$LINENO: result: $DVIPS" >&5
+echo "${ECHO_T}$DVIPS" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$DVIPS" = xno; then
+  missing_progs="$missing_progs dvips"
+fi
+# Extract the first word of "ps2pdf", so it can be a program name with args.
+set dummy ps2pdf; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_PS2PDF+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $PS2PDF in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PS2PDF="$PS2PDF" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_PS2PDF="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_PS2PDF" && ac_cv_path_PS2PDF="no"
+  ;;
+esac
+fi
+PS2PDF=$ac_cv_path_PS2PDF
+
+if test -n "$PS2PDF"; then
+  echo "$as_me:$LINENO: result: $PS2PDF" >&5
+echo "${ECHO_T}$PS2PDF" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$PS2PDF" = xno; then
+  missing_progs="$missing_progs ps2pdf"
+fi
+# Extract the first word of "fig2dev", so it can be a program name with args.
+set dummy fig2dev; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_FIG2DEV+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $FIG2DEV in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_FIG2DEV="$FIG2DEV" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_FIG2DEV="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_FIG2DEV" && ac_cv_path_FIG2DEV="no"
+  ;;
+esac
+fi
+FIG2DEV=$ac_cv_path_FIG2DEV
+
+if test -n "$FIG2DEV"; then
+  echo "$as_me:$LINENO: result: $FIG2DEV" >&5
+echo "${ECHO_T}$FIG2DEV" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "x$FIG2DEV" = xno; then
+  if test "x$maintainer_mode" = xyes; then
+    missing_progs="missing_progs fig2dev"
+  fi
+fi
+
+# Set up the host information.
+
+# Make sure we can run config.sub.
+$ac_config_sub sun4 >/dev/null 2>&1 ||
+  { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
+   { (exit 1); exit 1; }; }
+
+echo "$as_me:$LINENO: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6
+if test "${ac_cv_build+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_build_alias=$build_alias
+test -z "$ac_cv_build_alias" &&
+  ac_cv_build_alias=`$ac_config_guess`
+test -z "$ac_cv_build_alias" &&
+  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify 
one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+   { (exit 1); exit 1; }; }
+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
+  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" 
>&5
+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6
+build=$ac_cv_build
+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+echo "$as_me:$LINENO: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6
+if test "${ac_cv_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_host_alias=$host_alias
+test -z "$ac_cv_host_alias" &&
+  ac_cv_host_alias=$ac_cv_build_alias
+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
+  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6
+host=$ac_cv_host
+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+
+# Checks for libraries.
+
+echo "$as_me:$LINENO: checking for static GNU C library" >&5
+echo $ECHO_N "checking for static GNU C library... $ECHO_C" >&6
+static_libc=libc.a
+case $host_os in
+  gnu*)
+    # On the GNU/Hurd, libc.a is a linker script, the real C library
+    # can be found in libcrt.a instead.  But fall back on libc.a for
+    # cheap cross-compilation.
+    libcrta=`$CC -print-file-name=libcrt.a`
+    if test "x$libcrta" != "xlibcrt.a"; then
+      static_libc=libcrt.a
+    fi
+    ;;
+esac
+STATIC_GLIBC=`$CC -print-file-name=$static_libc`
+if test "x$STATIC_GLIBC" = "x$static_libc"; then
+  echo "$as_me:$LINENO: result: none" >&5
+echo "${ECHO_T}none" >&6
+  { { echo "$as_me:$LINENO: error: Could not find static version of the GNU C 
library" >&5
+echo "$as_me: error: Could not find static version of the GNU C library" >&2;}
+   { (exit 1); exit 1; }; }
+else
+  echo "$as_me:$LINENO: result: $STATIC_GLIBC" >&5
+echo "${ECHO_T}$STATIC_GLIBC" >&6
+fi
+
+
+
+# Checks for header files.
+
+# Checks for typedefs, structures, and compiler characteristics.
+
+echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
+echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
+if test "${ac_cv_c_const+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+/* FIXME: Include the comments suggested by Paul. */
+#ifndef __cplusplus
+  /* Ultrix mips cc rejects this.  */
+  typedef int charset[2];
+  const charset x;
+  /* SunOS 4.1.1 cc rejects this.  */
+  char const *const *ccp;
+  char **p;
+  /* NEC SVR4.0.2 mips cc rejects this.  */
+  struct point {int x, y;};
+  static struct point const zero = {0,0};
+  /* AIX XL C 1.02.0.0 rejects this.
+     It does not let you subtract one const X* pointer from another in
+     an arm of an if-expression whose if-part is not a constant
+     expression */
+  const char *g = "string";
+  ccp = &g + (g ? g-g : 0);
+  /* HPUX 7.0 cc rejects these. */
+  ++ccp;
+  p = (char**) ccp;
+  ccp = (char const *const *) p;
+  { /* SCO 3.2v4 cc rejects this.  */
+    char *t;
+    char const *s = 0 ? (char *) 0 : (char const *) 0;
+
+    *t++ = 0;
+  }
+  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
+    int x[] = {25, 17};
+    const int *foo = &x[0];
+    ++foo;
+  }
+  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
+    typedef const int *iptr;
+    iptr p = 0;
+    ++p;
+  }
+  { /* AIX XL C 1.02.0.0 rejects this saying
+       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
+    struct s { int j; const int *ap[3]; };
+    struct s *b; b->j = 5;
+  }
+  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
+    const int foo = 10;
+  }
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_const=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_c_const=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
+echo "${ECHO_T}$ac_cv_c_const" >&6
+if test $ac_cv_c_const = no; then
+
+cat >>confdefs.h <<\_ACEOF
+#define const
+_ACEOF
+
+fi
+
+echo "$as_me:$LINENO: checking for working volatile" >&5
+echo $ECHO_N "checking for working volatile... $ECHO_C" >&6
+if test "${ac_cv_c_volatile+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+volatile int x;
+int * volatile y;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_volatile=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_c_volatile=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_volatile" >&5
+echo "${ECHO_T}$ac_cv_c_volatile" >&6
+if test $ac_cv_c_volatile = no; then
+
+cat >>confdefs.h <<\_ACEOF
+#define volatile
+_ACEOF
+
+fi
+
+
+arch_ia32=false
+arch_powerpc=false
+case $host_cpu in
+  alpha)
+    arch=alpha
+    arch_alpha=true
+    ;;
+  amd64)
+    arch=amd64
+    arch_alpha=true
+    ;;
+  i386 | i486 | i586 | i686)
+    arch=ia32
+    arch_ia32=true
+    ;;
+  ia64)
+    arch=ia64
+    arch_ia64=true
+    ;;
+  powerpc)
+    arch=powerpc
+    arch_powerpc=true
+    ;;
+  powerpc64)
+    arch=powerpc64
+    arch_powerpc64=true
+    ;;
+  *)
+    { { echo "$as_me:$LINENO: error: unsupported architecture" >&5
+echo "$as_me: error: unsupported architecture" >&2;}
+   { (exit 1); exit 1; }; }
+    ;;
+esac
+
+
+if $arch_alpha; then
+  ARCH_ALPHA_TRUE=
+  ARCH_ALPHA_FALSE='#'
+else
+  ARCH_ALPHA_TRUE='#'
+  ARCH_ALPHA_FALSE=
+fi
+
+
+
+if $arch_amd64; then
+  ARCH_AMD64_TRUE=
+  ARCH_AMD64_FALSE='#'
+else
+  ARCH_AMD64_TRUE='#'
+  ARCH_AMD64_FALSE=
+fi
+
+
+
+if $arch_ia32; then
+  ARCH_IA32_TRUE=
+  ARCH_IA32_FALSE='#'
+else
+  ARCH_IA32_TRUE='#'
+  ARCH_IA32_FALSE=
+fi
+
+
+
+if $arch_ia64; then
+  ARCH_IA64_TRUE=
+  ARCH_IA64_FALSE='#'
+else
+  ARCH_IA64_TRUE='#'
+  ARCH_IA64_FALSE=
+fi
+
+
+
+if $arch_powerpc; then
+  ARCH_POWERPC_TRUE=
+  ARCH_POWERPC_FALSE='#'
+else
+  ARCH_POWERPC_TRUE='#'
+  ARCH_POWERPC_FALSE=
+fi
+
+
+
+if $arch_powerpc64; then
+  ARCH_POWERPC64_TRUE=
+  ARCH_POWERPC64_FALSE='#'
+else
+  ARCH_POWERPC64_TRUE='#'
+  ARCH_POWERPC64_FALSE=
+fi
+
+
+# Configure components.
+# config.m4 - Configure snippet for laden.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+#
+# This file is part of the GNU Hurd.
+#
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+#
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-laden-loadaddr or --without-laden-loadaddr was given.
+if test "${with_laden_loadaddr+set}" = set; then
+  withval="$with_laden_loadaddr"
+  hurd_laden_load_address=$withval
+else
+  hurd_laden_load_address=0x190000
+fi;
+       HURD_LADEN_LOAD_ADDRESS=$hurd_laden_load_address
+
+
+# config.m4 - Configure snippet for wortel.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+#
+# This file is part of the GNU Hurd.
+#
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+#
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-wortel-loadaddr or --without-wortel-loadaddr was given.
+if test "${with_wortel_loadaddr+set}" = set; then
+  withval="$with_wortel_loadaddr"
+  hurd_wortel_load_address=$withval
+else
+  hurd_wortel_load_address=0x300000
+fi;
+       HURD_WORTEL_LOAD_ADDRESS=$hurd_wortel_load_address
+
+
+# config.m4 - Configure snippet for physmem.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Maurizio Boriani.
+#
+# This file is part of the GNU Hurd.
+#
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+#
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+
+
+# Check whether --with-physmem-loadaddr or --without-physmem-loadaddr was 
given.
+if test "${with_physmem_loadaddr+set}" = set; then
+  withval="$with_physmem_loadaddr"
+  hurd_physmem_load_address=$withval
+else
+  hurd_physmem_load_address=0x400000
+fi;
+       HURD_PHYSMEM_LOAD_ADDRESS=$hurd_physmem_load_address
+
+
+
+# Create links for header file.
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                                                                               
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
 ac_config_links="$ac_config_links include/l4.h:libl4/l4.h 
include/l4/features.h:libl4/l4/features.h 
include/l4/globals.h:libl4/l4/globals.h include/l4/init.h:libl4/l4/init.h 
include/l4/ipc.h:libl4/l4/ipc.h include/l4/kip.h:libl4/l4/kip.h 
include/l4/math.h:libl4/l4/math.h include/l4/message.h:libl4/l4/message.h 
include/l4/misc.h:libl4/l4/misc.h include/l4/arch.h:libl4/l4/arch.h 
include/l4/pagefault.h:libl4/l4/pagefault.h 
include/l4/schedule.h:libl4/l4/schedule.h include/l4/space.h:libl4/l4/space.h 
include/l4/stubs-init.h:libl4/l4/stubs-init.h 
include/l4/stubs.h:libl4/l4/stubs.h include/l4/syscall.h:libl4/l4/syscall.h 
include/l4/thread.h:libl4/l4/thread.h 
include/l4/thread-start.h:libl4/l4/thread-start.h 
include/l4/types.h:libl4/l4/types.h include/l4/vregs.h:libl4/l4/vregs.h 
include/l4/sigma0.h:libl4/l4/sigma0.h 
include/l4/compat/ipc.h:libl4/l4/compat/ipc.h 
include/l4/compat/kip.h:libl4/l4/compat/kip.h 
include/l4/compat/message.h:libl4/l4/compat/message.h 
include/l4/compat/misc.h:libl4/l4/compat/misc.h 
include/l4/compat/schedule.h:libl4/l4/compat/schedule.h 
include/l4/compat/space.h:libl4/l4/compat/space.h 
include/l4/compat/syscall.h:libl4/l4/compat/syscall.h 
include/l4/compat/thread.h:libl4/l4/compat/thread.h 
include/l4/compat/types.h:libl4/l4/compat/types.h 
include/l4/compat/sigma0.h:libl4/l4/compat/sigma0.h 
include/l4/gnu/ipc.h:libl4/l4/gnu/ipc.h include/l4/gnu/kip.h:libl4/l4/gnu/kip.h 
include/l4/gnu/math.h:libl4/l4/gnu/math.h 
include/l4/gnu/message.h:libl4/l4/gnu/message.h 
include/l4/gnu/misc.h:libl4/l4/gnu/misc.h 
include/l4/gnu/pagefault.h:libl4/l4/gnu/pagefault.h 
include/l4/gnu/schedule.h:libl4/l4/gnu/schedule.h 
include/l4/gnu/space.h:libl4/l4/gnu/space.h 
include/l4/gnu/syscall.h:libl4/l4/gnu/syscall.h 
include/l4/gnu/thread.h:libl4/l4/gnu/thread.h 
include/l4/gnu/thread-start.h:libl4/l4/gnu/thread-start.h 
include/l4/gnu/types.h:libl4/l4/gnu/types.h 
include/l4/gnu/sigma0.h:libl4/l4/gnu/sigma0.h 
include/l4/bits/ipc.h:libl4/${arch}/l4/bits/ipc.h 
include/l4/bits/kip.h:libl4/${arch}/l4/bits/kip.h 
include/l4/bits/math.h:libl4/${arch}/l4/bits/math.h 
include/l4/bits/misc.h:libl4/${arch}/l4/bits/misc.h 
include/l4/bits/arch.h:libl4/${arch}/l4/bits/arch.h 
include/l4/bits/space.h:libl4/${arch}/l4/bits/space.h 
include/l4/bits/stubs.h:libl4/${arch}/l4/bits/stubs.h 
include/l4/bits/stubs-init.h:libl4/${arch}/l4/bits/stubs-init.h 
include/l4/bits/syscall.h:libl4/${arch}/l4/bits/syscall.h 
include/l4/bits/types.h:libl4/${arch}/l4/bits/types.h 
include/l4/bits/vregs.h:libl4/${arch}/l4/bits/vregs.h 
include/l4/bits/compat/ipc.h:libl4/${arch}/l4/bits/compat/ipc.h 
include/l4/bits/compat/misc.h:libl4/${arch}/l4/bits/compat/misc.h 
include/l4/bits/compat/arch.h:libl4/${arch}/l4/bits/compat/arch.h 
include/l4/bits/compat/space.h:libl4/${arch}/l4/bits/compat/space.h 
include/l4/bits/gnu/ipc.h:libl4/${arch}/l4/bits/gnu/ipc.h 
include/l4/bits/gnu/kip.h:libl4/${arch}/l4/bits/gnu/kip.h 
include/l4/bits/gnu/misc.h:libl4/${arch}/l4/bits/gnu/misc.h 
include/l4/bits/gnu/arch.h:libl4/${arch}/l4/bits/gnu/arch.h 
include/l4/bits/gnu/space.h:libl4/${arch}/l4/bits/gnu/space.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                              ac_config_links="$ac_config_links 
include/atomic.h:platform/atomic.h 
include/bits/atomic.h:platform/${arch}/bits/atomic.h 
include/compiler.h:platform/compiler.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                    ac_config_links="$ac_config_links 
include/hurd/types.h:hurd/types.h include/hurd/startup.h:hurd/startup.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/ihash.h:libhurd-ihash/ihash.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/btree.h:libhurd-btree/btree.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/slab.h:libhurd-slab/slab.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/cap.h:libhurd-cap/cap.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/cap-server.h:libhurd-cap-server/cap-server.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004, 2005 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                              ac_config_links="$ac_config_links 
include/hurd/mm.h:libhurd-mm/mm.h include/hurd/vm.h:libhurd-mm/vm.h 
include/hurd/anonymous.h:libhurd-mm/anonymous.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+                                                                               
                                                                                
                                         ac_config_links="$ac_config_links 
include/pthread.h:libpthread/include/pthread.h 
include/pthread/pthread.h:libpthread/include/pthread/pthread.h 
include/bits/memory.h:libpthread/sysdeps/${arch}/bits/memory.h 
include/bits/spin-lock.h:libpthread/sysdeps/${arch}/bits/spin-lock.h 
include/bits/pthreadtypes.h:libpthread/sysdeps/generic/bits/pthreadtypes.h 
include/bits/barrier-attr.h:libpthread/sysdeps/generic/bits/barrier-attr.h 
include/bits/barrier.h:libpthread/sysdeps/generic/bits/barrier.h 
include/bits/cancelation.h:libpthread/sysdeps/generic/bits/cancelation.h 
include/bits/condition-attr.h:libpthread/sysdeps/generic/bits/condition-attr.h 
include/bits/condition.h:libpthread/sysdeps/generic/bits/condition.h 
include/bits/mutex-attr.h:libpthread/sysdeps/generic/bits/mutex-attr.h 
include/bits/mutex.h:libpthread/sysdeps/generic/bits/mutex.h 
include/bits/once.h:libpthread/sysdeps/generic/bits/once.h 
include/bits/pthread.h:libpthread/sysdeps/generic/bits/pthread.h 
include/bits/rwlock-attr.h:libpthread/sysdeps/generic/bits/rwlock-attr.h 
include/bits/rwlock.h:libpthread/sysdeps/generic/bits/rwlock.h 
include/bits/thread-attr.h:libpthread/sysdeps/generic/bits/thread-attr.h 
include/bits/thread-barrier.h:libpthread/sysdeps/generic/bits/thread-barrier.h 
include/bits/thread-specific.h:libpthread/sysdeps/generic/bits/thread-specific.h
 include/bits/pthread-np.h:libpthread/sysdeps/l4/bits/pthread-np.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/wortel.h:wortel/wortel.h"
+
+
+# headers.m4 - Autoconf snippets to install links for header files.
+# Copyright 2005 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file 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.
+
+          ac_config_links="$ac_config_links 
include/hurd/physmem.h:physmem/physmem.h"
+
+
+
+# Check for libc and components using it.
+
+
+# Check whether --with-libc or --without-libc was given.
+if test "${with_libc+set}" = set; then
+  withval="$with_libc"
+
+fi;
+
+
+if test x"${with_libc-no}" != xno; then
+  WITH_LIBC_TRUE=
+  WITH_LIBC_FALSE='#'
+else
+  WITH_LIBC_TRUE='#'
+  WITH_LIBC_FALSE=
+fi
+
+
+
+if test "x$missing_progs" != "x"; then
+  { { echo "$as_me:$LINENO: error: The following programs were not 
found:$missing_progs" >&5
+echo "$as_me: error: The following programs were not found:$missing_progs" 
>&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# Checks for library functions.
+                                                                               
                                                                                
                                                                                
                                                   
ac_config_files="$ac_config_files Makefile libl4/ia32/Makefile 
libl4/powerpc/Makefile libl4/tests/Makefile libl4/Makefile 
platform/alpha/Makefile platform/amd64/Makefile platform/ia32/Makefile 
platform/ia64/Makefile platform/powerpc/Makefile platform/powerpc64/Makefile 
platform/Makefile libc-parts/Makefile hurd/Makefile libhurd-ihash/Makefile 
libhurd-btree/Makefile libhurd-slab/Makefile libhurd-cap/Makefile 
libhurd-cap-server/Makefile libhurd-mm/Makefile libpthread/Makefile 
laden/Makefile wortel/Makefile physmem/Makefile task/Makefile deva/Makefile 
libc/Makefile ruth/Makefile doc/Makefile"
+
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems.  If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, don't put newlines in cache variables' values.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+{
+  (set) 2>&1 |
+    case `(ac_space=' '; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      # `set' does not quote correctly, so add quotes (double-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \).
+      sed -n \
+       "s/'/'\\\\''/g;
+         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+      ;;
+    *)
+      # `set' quotes correctly as required by POSIX, so do not add quotes.
+      sed -n \
+       "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} |
+  sed '
+     t clear
+     : clear
+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     t end
+     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+     : end' >>confcache
+if diff $cache_file confcache >/dev/null 2>&1; then :; else
+  if test -w $cache_file; then
+    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+    cat confcache >$cache_file
+  else
+    echo "not updating unwritable cache $cache_file"
+  fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+  ac_vpsub='/^[         ]*VPATH[        ]*=/{
+s/:*\$(srcdir):*/:/;
+s/:*\${srcdir}:*/:/;
+s/:address@hidden@:*/:/;
+s/^\([^=]*=[    ]*\):*/\1/;
+s/:*$//;
+s/^[^=]*=[      ]*$//;
+}'
+fi
+
+DEFS=-DHAVE_CONFIG_H
+
+ac_libobjs=
+ac_ltlibobjs=
+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
+  # 1. Remove the extension, and $U if already installed.
+  ac_i=`echo "$ac_i" |
+        sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
+  # 2. Add them.
+  ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
+  ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
+done
+LIBOBJS=$ac_libobjs
+
+LTLIBOBJS=$ac_ltlibobjs
+
+
+if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; 
then
+  { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_ALPHA_TRUE}" && test -z "${ARCH_ALPHA_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_ALPHA\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_ALPHA\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_AMD64_TRUE}" && test -z "${ARCH_AMD64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_AMD64\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_AMD64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_IA32_TRUE}" && test -z "${ARCH_IA32_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_IA32\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_IA32\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_IA64_TRUE}" && test -z "${ARCH_IA64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_IA64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_IA64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_POWERPC_TRUE}" && test -z "${ARCH_POWERPC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_POWERPC\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_POWERPC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${ARCH_POWERPC64_TRUE}" && test -z "${ARCH_POWERPC64_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"ARCH_POWERPC64\" was never 
defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"ARCH_POWERPC64\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${WITH_LIBC_TRUE}" && test -z "${WITH_LIBC_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"WITH_LIBC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"WITH_LIBC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+: ${CONFIG_STATUS=./config.status}
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate the current configuration.
+# Compiler output produced by configure, useful for debugging
+# configure, is in config.log if it exists.
+
+debug=false
+ac_cs_recheck=false
+ac_cs_silent=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+## --------------------- ##
+## M4sh Initialization.  ##
+## --------------------- ##
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '${1+"$@"}'='"$@"'
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+
+# Work around bugs in pre-3.0 UWIN ksh.
+$as_unset ENV MAIL MAILPATH
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+  LC_TELEPHONE LC_TIME
+do
+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+    eval $as_var=C; export $as_var
+  else
+    $as_unset $as_var
+  fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)$' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+         /^X\/\(\/\/\)$/{ s//\1/; q; }
+         /^X\/\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+
+
+# PATH needs CR, and LINENO needs CR and PATH.
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
+  # Find who we are.  Look in the path if we contain no path at all
+  # relative or not.
+  case $0 in
+    *[\\/]* ) as_myself=$0 ;;
+    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+
+       ;;
+  esac
+  # We did not find ourselves, most probably we were run as `sh COMMAND'
+  # in which case we are not to be found in the path.
+  if test "x$as_myself" = x; then
+    as_myself=$0
+  fi
+  if test ! -f "$as_myself"; then
+    { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an 
absolute path" >&5
+echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+  case $CONFIG_SHELL in
+  '')
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for as_base in sh bash ksh sh5; do
+        case $as_dir in
+        /*)
+          if ("$as_dir/$as_base" -c '
+  as_lineno_1=$LINENO
+  as_lineno_2=$LINENO
+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+  test "x$as_lineno_1" != "x$as_lineno_2" &&
+  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
+            $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { 
BASH_ENV=; export BASH_ENV; }
+            $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+            CONFIG_SHELL=$as_dir/$as_base
+            export CONFIG_SHELL
+            exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+          fi;;
+        esac
+       done
+done
+;;
+  esac
+
+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+  # uniformly replaced by the line number.  The first 'sed' inserts a
+  # line-number line before each line; the second 'sed' does the real
+  # work.  The second script uses 'N' to pair each line-number line
+  # with the numbered line, and appends trailing '-' during
+  # substitution so that $LINENO is not a special case at line end.
+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
+  sed '=' <$as_myself |
+    sed '
+      N
+      s,$,-,
+      : loop
+      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+      t loop
+      s,-$,,
+      s,^['$as_cr_digits']*\n,,
+    ' >$as_me.lineno &&
+  chmod +x $as_me.lineno ||
+    { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a 
POSIX shell" >&5
+echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" 
>&2;}
+   { (exit 1); exit 1; }; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensible to this).
+  . ./$as_me.lineno
+  # Exit status is that of the last command.
+  exit
+}
+
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='     ' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p=:
+else
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
+fi
+
+as_executable_p="test -f"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS="  $as_nl"
+
+# CDPATH.
+$as_unset CDPATH
+
+exec 6>&1
+
+# Open the log real soon, to keep \$[0] and so on meaningful, and to
+# report actual input values of CONFIG_FILES etc. instead of their
+# values after options handling.  Logging --version etc. is OK.
+exec 5>>config.log
+{
+  echo
+  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
+## Running $as_me. ##
+_ASBOX
+} >&5
+cat >&5 <<_CSEOF
+
+This file was extended by hurd $as_me 0.0, which was
+generated by GNU Autoconf 2.59.  Invocation command line was
+
+  CONFIG_FILES    = $CONFIG_FILES
+  CONFIG_HEADERS  = $CONFIG_HEADERS
+  CONFIG_LINKS    = $CONFIG_LINKS
+  CONFIG_COMMANDS = $CONFIG_COMMANDS
+  $ $0 $@
+
+_CSEOF
+echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
+echo >&5
+_ACEOF
+
+# Files that config.status was made for.
+if test -n "$ac_config_files"; then
+  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_headers"; then
+  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_links"; then
+  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_commands"; then
+  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+fi
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTIONS] [FILE]...
+
+  -h, --help       print this help, then exit
+  -V, --version    print version number, then exit
+  -q, --quiet      do not print progress messages
+  -d, --debug      don't remove temporary files
+      --recheck    update $as_me by reconfiguring in the same conditions
+  --file=FILE[:TEMPLATE]
+                  instantiate the configuration file FILE
+  --header=FILE[:TEMPLATE]
+                  instantiate the configuration header FILE
+
+Configuration files:
+$config_files
+
+Configuration headers:
+$config_headers
+
+Configuration links:
+$config_links
+
+Configuration commands:
+$config_commands
+
+Report bugs to <address@hidden>."
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+ac_cs_version="\\
+hurd config.status 0.0
+configured by $0, generated by GNU Autoconf 2.59,
+  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright (C) 2003 Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+srcdir=$srcdir
+INSTALL="$INSTALL"
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+# If no file are specified by the user, then we need to provide default
+# value.  By we need to know if files were specified by the user.
+ac_need_defaults=:
+while test $# != 0
+do
+  case $1 in
+  --*=*)
+    ac_option=`expr "x$1" : 'x\([^=]*\)='`
+    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
+    ac_shift=:
+    ;;
+  -*)
+    ac_option=$1
+    ac_optarg=$2
+    ac_shift=shift
+    ;;
+  *) # This is not an option, so the user has probably given explicit
+     # arguments.
+     ac_option=$1
+     ac_need_defaults=false;;
+  esac
+
+  case $ac_option in
+  # Handling of the options.
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+    ac_cs_recheck=: ;;
+  --version | --vers* | -V )
+    echo "$ac_cs_version"; exit 0 ;;
+  --he | --h)
+    # Conflict between --help and --header
+    { { echo "$as_me:$LINENO: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; };;
+  --help | --hel | -h )
+    echo "$ac_cs_usage"; exit 0 ;;
+  --debug | --d* | -d )
+    debug=: ;;
+  --file | --fil | --fi | --f )
+    $ac_shift
+    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
+    ac_need_defaults=false;;
+  --header | --heade | --head | --hea )
+    $ac_shift
+    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
+    ac_need_defaults=false;;
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil | --si | --s)
+    ac_cs_silent=: ;;
+
+  # This is an error.
+  -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; } ;;
+
+  *) ac_config_targets="$ac_config_targets $1" ;;
+
+  esac
+  shift
+done
+
+ac_configure_extra_args=
+
+if $ac_cs_silent; then
+  exec 6>/dev/null
+  ac_configure_extra_args="$ac_configure_extra_args --silent"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+if \$ac_cs_recheck; then
+  echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " 
--no-create --no-recursion" >&6
+  exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create 
--no-recursion
+fi
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+#
+# INIT-COMMANDS section.
+#
+
+AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+
+_ACEOF
+
+
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+for ac_config_target in $ac_config_targets
+do
+  case "$ac_config_target" in
+  # Handling of arguments.
+  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+  "libl4/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/ia32/Makefile" ;;
+  "libl4/powerpc/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libl4/powerpc/Makefile" ;;
+  "libl4/tests/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/tests/Makefile" ;;
+  "libl4/Makefile" ) CONFIG_FILES="$CONFIG_FILES libl4/Makefile" ;;
+  "platform/alpha/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/alpha/Makefile" ;;
+  "platform/amd64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/amd64/Makefile" ;;
+  "platform/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/ia32/Makefile" ;;
+  "platform/ia64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/ia64/Makefile" ;;
+  "platform/powerpc/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/powerpc/Makefile" ;;
+  "platform/powerpc64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
platform/powerpc64/Makefile" ;;
+  "platform/Makefile" ) CONFIG_FILES="$CONFIG_FILES platform/Makefile" ;;
+  "libc-parts/Makefile" ) CONFIG_FILES="$CONFIG_FILES libc-parts/Makefile" ;;
+  "hurd/Makefile" ) CONFIG_FILES="$CONFIG_FILES hurd/Makefile" ;;
+  "libhurd-ihash/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-ihash/Makefile" ;;
+  "libhurd-btree/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-btree/Makefile" ;;
+  "libhurd-slab/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-slab/Makefile" 
;;
+  "libhurd-cap/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-cap/Makefile" ;;
+  "libhurd-cap-server/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
libhurd-cap-server/Makefile" ;;
+  "libhurd-mm/Makefile" ) CONFIG_FILES="$CONFIG_FILES libhurd-mm/Makefile" ;;
+  "libpthread/Makefile" ) CONFIG_FILES="$CONFIG_FILES libpthread/Makefile" ;;
+  "laden/Makefile" ) CONFIG_FILES="$CONFIG_FILES laden/Makefile" ;;
+  "wortel/Makefile" ) CONFIG_FILES="$CONFIG_FILES wortel/Makefile" ;;
+  "physmem/Makefile" ) CONFIG_FILES="$CONFIG_FILES physmem/Makefile" ;;
+  "task/Makefile" ) CONFIG_FILES="$CONFIG_FILES task/Makefile" ;;
+  "deva/Makefile" ) CONFIG_FILES="$CONFIG_FILES deva/Makefile" ;;
+  "libc/Makefile" ) CONFIG_FILES="$CONFIG_FILES libc/Makefile" ;;
+  "ruth/Makefile" ) CONFIG_FILES="$CONFIG_FILES ruth/Makefile" ;;
+  "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
+  "include/l4.h" ) CONFIG_LINKS="$CONFIG_LINKS include/l4.h:libl4/l4.h" ;;
+  "include/l4/features.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/features.h:libl4/l4/features.h" ;;
+  "include/l4/globals.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/globals.h:libl4/l4/globals.h" ;;
+  "include/l4/init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/init.h:libl4/l4/init.h" ;;
+  "include/l4/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/ipc.h:libl4/l4/ipc.h" ;;
+  "include/l4/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/kip.h:libl4/l4/kip.h" ;;
+  "include/l4/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/math.h:libl4/l4/math.h" ;;
+  "include/l4/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/message.h:libl4/l4/message.h" ;;
+  "include/l4/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/misc.h:libl4/l4/misc.h" ;;
+  "include/l4/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/arch.h:libl4/l4/arch.h" ;;
+  "include/l4/pagefault.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/pagefault.h:libl4/l4/pagefault.h" ;;
+  "include/l4/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/schedule.h:libl4/l4/schedule.h" ;;
+  "include/l4/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/space.h:libl4/l4/space.h" ;;
+  "include/l4/stubs-init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/stubs-init.h:libl4/l4/stubs-init.h" ;;
+  "include/l4/stubs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/stubs.h:libl4/l4/stubs.h" ;;
+  "include/l4/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/syscall.h:libl4/l4/syscall.h" ;;
+  "include/l4/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/thread.h:libl4/l4/thread.h" ;;
+  "include/l4/thread-start.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/thread-start.h:libl4/l4/thread-start.h" ;;
+  "include/l4/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/types.h:libl4/l4/types.h" ;;
+  "include/l4/vregs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/vregs.h:libl4/l4/vregs.h" ;;
+  "include/l4/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/sigma0.h:libl4/l4/sigma0.h" ;;
+  "include/l4/compat/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/ipc.h:libl4/l4/compat/ipc.h" ;;
+  "include/l4/compat/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/kip.h:libl4/l4/compat/kip.h" ;;
+  "include/l4/compat/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/message.h:libl4/l4/compat/message.h" ;;
+  "include/l4/compat/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/misc.h:libl4/l4/compat/misc.h" ;;
+  "include/l4/compat/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/schedule.h:libl4/l4/compat/schedule.h" ;;
+  "include/l4/compat/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/space.h:libl4/l4/compat/space.h" ;;
+  "include/l4/compat/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/syscall.h:libl4/l4/compat/syscall.h" ;;
+  "include/l4/compat/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/thread.h:libl4/l4/compat/thread.h" ;;
+  "include/l4/compat/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/types.h:libl4/l4/compat/types.h" ;;
+  "include/l4/compat/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/compat/sigma0.h:libl4/l4/compat/sigma0.h" ;;
+  "include/l4/gnu/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/ipc.h:libl4/l4/gnu/ipc.h" ;;
+  "include/l4/gnu/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/kip.h:libl4/l4/gnu/kip.h" ;;
+  "include/l4/gnu/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/math.h:libl4/l4/gnu/math.h" ;;
+  "include/l4/gnu/message.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/message.h:libl4/l4/gnu/message.h" ;;
+  "include/l4/gnu/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/misc.h:libl4/l4/gnu/misc.h" ;;
+  "include/l4/gnu/pagefault.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/pagefault.h:libl4/l4/gnu/pagefault.h" ;;
+  "include/l4/gnu/schedule.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/schedule.h:libl4/l4/gnu/schedule.h" ;;
+  "include/l4/gnu/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/space.h:libl4/l4/gnu/space.h" ;;
+  "include/l4/gnu/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/syscall.h:libl4/l4/gnu/syscall.h" ;;
+  "include/l4/gnu/thread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/thread.h:libl4/l4/gnu/thread.h" ;;
+  "include/l4/gnu/thread-start.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/thread-start.h:libl4/l4/gnu/thread-start.h" ;;
+  "include/l4/gnu/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/types.h:libl4/l4/gnu/types.h" ;;
+  "include/l4/gnu/sigma0.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/gnu/sigma0.h:libl4/l4/gnu/sigma0.h" ;;
+  "include/l4/bits/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/ipc.h:libl4/${arch}/l4/bits/ipc.h" ;;
+  "include/l4/bits/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/kip.h:libl4/${arch}/l4/bits/kip.h" ;;
+  "include/l4/bits/math.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/math.h:libl4/${arch}/l4/bits/math.h" ;;
+  "include/l4/bits/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/misc.h:libl4/${arch}/l4/bits/misc.h" ;;
+  "include/l4/bits/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/arch.h:libl4/${arch}/l4/bits/arch.h" ;;
+  "include/l4/bits/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/space.h:libl4/${arch}/l4/bits/space.h" ;;
+  "include/l4/bits/stubs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/stubs.h:libl4/${arch}/l4/bits/stubs.h" ;;
+  "include/l4/bits/stubs-init.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/stubs-init.h:libl4/${arch}/l4/bits/stubs-init.h" ;;
+  "include/l4/bits/syscall.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/syscall.h:libl4/${arch}/l4/bits/syscall.h" ;;
+  "include/l4/bits/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/types.h:libl4/${arch}/l4/bits/types.h" ;;
+  "include/l4/bits/vregs.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/vregs.h:libl4/${arch}/l4/bits/vregs.h" ;;
+  "include/l4/bits/compat/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/ipc.h:libl4/${arch}/l4/bits/compat/ipc.h" ;;
+  "include/l4/bits/compat/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/misc.h:libl4/${arch}/l4/bits/compat/misc.h" ;;
+  "include/l4/bits/compat/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/arch.h:libl4/${arch}/l4/bits/compat/arch.h" ;;
+  "include/l4/bits/compat/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/compat/space.h:libl4/${arch}/l4/bits/compat/space.h" ;;
+  "include/l4/bits/gnu/ipc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/ipc.h:libl4/${arch}/l4/bits/gnu/ipc.h" ;;
+  "include/l4/bits/gnu/kip.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/kip.h:libl4/${arch}/l4/bits/gnu/kip.h" ;;
+  "include/l4/bits/gnu/misc.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/misc.h:libl4/${arch}/l4/bits/gnu/misc.h" ;;
+  "include/l4/bits/gnu/arch.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/arch.h:libl4/${arch}/l4/bits/gnu/arch.h" ;;
+  "include/l4/bits/gnu/space.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/l4/bits/gnu/space.h:libl4/${arch}/l4/bits/gnu/space.h" ;;
+  "include/atomic.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/atomic.h:platform/atomic.h" ;;
+  "include/bits/atomic.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/atomic.h:platform/${arch}/bits/atomic.h" ;;
+  "include/compiler.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/compiler.h:platform/compiler.h" ;;
+  "include/hurd/types.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/types.h:hurd/types.h" ;;
+  "include/hurd/startup.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/startup.h:hurd/startup.h" ;;
+  "include/hurd/ihash.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/ihash.h:libhurd-ihash/ihash.h" ;;
+  "include/hurd/btree.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/btree.h:libhurd-btree/btree.h" ;;
+  "include/hurd/slab.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/slab.h:libhurd-slab/slab.h" ;;
+  "include/hurd/cap.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/cap.h:libhurd-cap/cap.h" ;;
+  "include/hurd/cap-server.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/cap-server.h:libhurd-cap-server/cap-server.h" ;;
+  "include/hurd/mm.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/mm.h:libhurd-mm/mm.h" ;;
+  "include/hurd/vm.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/vm.h:libhurd-mm/vm.h" ;;
+  "include/hurd/anonymous.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/anonymous.h:libhurd-mm/anonymous.h" ;;
+  "include/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/pthread.h:libpthread/include/pthread.h" ;;
+  "include/pthread/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/pthread/pthread.h:libpthread/include/pthread/pthread.h" ;;
+  "include/bits/memory.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/memory.h:libpthread/sysdeps/${arch}/bits/memory.h" ;;
+  "include/bits/spin-lock.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/spin-lock.h:libpthread/sysdeps/${arch}/bits/spin-lock.h" ;;
+  "include/bits/pthreadtypes.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthreadtypes.h:libpthread/sysdeps/generic/bits/pthreadtypes.h" ;;
+  "include/bits/barrier-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/barrier-attr.h:libpthread/sysdeps/generic/bits/barrier-attr.h" ;;
+  "include/bits/barrier.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/barrier.h:libpthread/sysdeps/generic/bits/barrier.h" ;;
+  "include/bits/cancelation.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/cancelation.h:libpthread/sysdeps/generic/bits/cancelation.h" ;;
+  "include/bits/condition-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/condition-attr.h:libpthread/sysdeps/generic/bits/condition-attr.h" 
;;
+  "include/bits/condition.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/condition.h:libpthread/sysdeps/generic/bits/condition.h" ;;
+  "include/bits/mutex-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/mutex-attr.h:libpthread/sysdeps/generic/bits/mutex-attr.h" ;;
+  "include/bits/mutex.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/mutex.h:libpthread/sysdeps/generic/bits/mutex.h" ;;
+  "include/bits/once.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/once.h:libpthread/sysdeps/generic/bits/once.h" ;;
+  "include/bits/pthread.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthread.h:libpthread/sysdeps/generic/bits/pthread.h" ;;
+  "include/bits/rwlock-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/rwlock-attr.h:libpthread/sysdeps/generic/bits/rwlock-attr.h" ;;
+  "include/bits/rwlock.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/rwlock.h:libpthread/sysdeps/generic/bits/rwlock.h" ;;
+  "include/bits/thread-attr.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-attr.h:libpthread/sysdeps/generic/bits/thread-attr.h" ;;
+  "include/bits/thread-barrier.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-barrier.h:libpthread/sysdeps/generic/bits/thread-barrier.h" 
;;
+  "include/bits/thread-specific.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/thread-specific.h:libpthread/sysdeps/generic/bits/thread-specific.h"
 ;;
+  "include/bits/pthread-np.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/bits/pthread-np.h:libpthread/sysdeps/l4/bits/pthread-np.h" ;;
+  "include/hurd/wortel.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/wortel.h:wortel/wortel.h" ;;
+  "include/hurd/physmem.h" ) CONFIG_LINKS="$CONFIG_LINKS 
include/hurd/physmem.h:physmem/physmem.h" ;;
+  "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+  "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
+  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used.  Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
+  test "${CONFIG_LINKS+set}" = set || CONFIG_LINKS=$config_links
+  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+fi
+
+# Have a temporary directory for convenience.  Make it in the build tree
+# simply because there is no reason to put it here, and in addition,
+# creating and moving files from /tmp can sometimes cause problems.
+# Create a temporary directory, and hook for its removal unless debugging.
+$debug ||
+{
+  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
+  trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+
+# Create a (secure) tmp directory for tmp files.
+
+{
+  tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
+  test -n "$tmp" && test -d "$tmp"
+}  ||
+{
+  tmp=./confstat$$-$RANDOM
+  (umask 077 && mkdir $tmp)
+} ||
+{
+   echo "$me: cannot create a temporary directory in ." >&2
+   { (exit 1); exit 1; }
+}
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+
+#
+# CONFIG_FILES section.
+#
+
+# No need to generate the scripts if there are no CONFIG_FILES.
+# This happens for instance when ./config.status config.h
+if test -n "\$CONFIG_FILES"; then
+  # Protect against being on the right side of a sed subst in config.status.
+  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
+   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
+s,@SHELL@,$SHELL,;t t
+s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
+s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
+s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
+s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
+s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
+s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
+s,@exec_prefix@,$exec_prefix,;t t
+s,@prefix@,$prefix,;t t
+s,@program_transform_name@,$program_transform_name,;t t
+s,@bindir@,$bindir,;t t
+s,@sbindir@,$sbindir,;t t
+s,@libexecdir@,$libexecdir,;t t
+s,@datadir@,$datadir,;t t
+s,@sysconfdir@,$sysconfdir,;t t
+s,@sharedstatedir@,$sharedstatedir,;t t
+s,@localstatedir@,$localstatedir,;t t
+s,@libdir@,$libdir,;t t
+s,@includedir@,$includedir,;t t
+s,@oldincludedir@,$oldincludedir,;t t
+s,@infodir@,$infodir,;t t
+s,@mandir@,$mandir,;t t
+s,@build_alias@,$build_alias,;t t
+s,@host_alias@,$host_alias,;t t
+s,@target_alias@,$target_alias,;t t
+s,@DEFS@,$DEFS,;t t
+s,@ECHO_C@,$ECHO_C,;t t
+s,@ECHO_N@,$ECHO_N,;t t
+s,@ECHO_T@,$ECHO_T,;t t
+s,@LIBS@,$LIBS,;t t
+s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
+s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
+s,@INSTALL_DATA@,$INSTALL_DATA,;t t
+s,@CYGPATH_W@,$CYGPATH_W,;t t
+s,@PACKAGE@,$PACKAGE,;t t
+s,@VERSION@,$VERSION,;t t
+s,@ACLOCAL@,$ACLOCAL,;t t
+s,@AUTOCONF@,$AUTOCONF,;t t
+s,@AUTOMAKE@,$AUTOMAKE,;t t
+s,@AUTOHEADER@,$AUTOHEADER,;t t
+s,@MAKEINFO@,$MAKEINFO,;t t
+s,@install_sh@,$install_sh,;t t
+s,@STRIP@,$STRIP,;t t
+s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
+s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
+s,@mkdir_p@,$mkdir_p,;t t
+s,@AWK@,$AWK,;t t
+s,@SET_MAKE@,$SET_MAKE,;t t
+s,@am__leading_dot@,$am__leading_dot,;t t
+s,@AMTAR@,$AMTAR,;t t
+s,@am__tar@,$am__tar,;t t
+s,@am__untar@,$am__untar,;t t
+s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
+s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
+s,@MAINT@,$MAINT,;t t
+s,@CC@,$CC,;t t
+s,@CFLAGS@,$CFLAGS,;t t
+s,@LDFLAGS@,$LDFLAGS,;t t
+s,@CPPFLAGS@,$CPPFLAGS,;t t
+s,@ac_ct_CC@,$ac_ct_CC,;t t
+s,@EXEEXT@,$EXEEXT,;t t
+s,@OBJEXT@,$OBJEXT,;t t
+s,@DEPDIR@,$DEPDIR,;t t
+s,@am__include@,$am__include,;t t
+s,@am__quote@,$am__quote,;t t
+s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t
+s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
+s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
+s,@CCDEPMODE@,$CCDEPMODE,;t t
+s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
+s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
+s,@IDL4CONFIG@,$IDL4CONFIG,;t t
+s,@ac_pt_IDL4CONFIG@,$ac_pt_IDL4CONFIG,;t t
+s,@CCAS@,$CCAS,;t t
+s,@CCASFLAGS@,$CCASFLAGS,;t t
+s,@RANLIB@,$RANLIB,;t t
+s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
+s,@AR@,$AR,;t t
+s,@ac_ct_AR@,$ac_ct_AR,;t t
+s,@NM@,$NM,;t t
+s,@ac_ct_NM@,$ac_ct_NM,;t t
+s,@IDL4@,$IDL4,;t t
+s,@IDL4FLAGS@,$IDL4FLAGS,;t t
+s,@ac_pt_IDL4@,$ac_pt_IDL4,;t t
+s,@SED@,$SED,;t t
+s,@SORT@,$SORT,;t t
+s,@LATEX@,$LATEX,;t t
+s,@DVIPS@,$DVIPS,;t t
+s,@PS2PDF@,$PS2PDF,;t t
+s,@FIG2DEV@,$FIG2DEV,;t t
+s,@build@,$build,;t t
+s,@build_cpu@,$build_cpu,;t t
+s,@build_vendor@,$build_vendor,;t t
+s,@build_os@,$build_os,;t t
+s,@host@,$host,;t t
+s,@host_cpu@,$host_cpu,;t t
+s,@host_vendor@,$host_vendor,;t t
+s,@host_os@,$host_os,;t t
+s,@STATIC_GLIBC@,$STATIC_GLIBC,;t t
+s,@ARCH_ALPHA_TRUE@,$ARCH_ALPHA_TRUE,;t t
+s,@ARCH_ALPHA_FALSE@,$ARCH_ALPHA_FALSE,;t t
+s,@ARCH_AMD64_TRUE@,$ARCH_AMD64_TRUE,;t t
+s,@ARCH_AMD64_FALSE@,$ARCH_AMD64_FALSE,;t t
+s,@ARCH_IA32_TRUE@,$ARCH_IA32_TRUE,;t t
+s,@ARCH_IA32_FALSE@,$ARCH_IA32_FALSE,;t t
+s,@ARCH_IA64_TRUE@,$ARCH_IA64_TRUE,;t t
+s,@ARCH_IA64_FALSE@,$ARCH_IA64_FALSE,;t t
+s,@ARCH_POWERPC_TRUE@,$ARCH_POWERPC_TRUE,;t t
+s,@ARCH_POWERPC_FALSE@,$ARCH_POWERPC_FALSE,;t t
+s,@ARCH_POWERPC64_TRUE@,$ARCH_POWERPC64_TRUE,;t t
+s,@ARCH_POWERPC64_FALSE@,$ARCH_POWERPC64_FALSE,;t t
+s,@HURD_LADEN_LOAD_ADDRESS@,$HURD_LADEN_LOAD_ADDRESS,;t t
+s,@HURD_WORTEL_LOAD_ADDRESS@,$HURD_WORTEL_LOAD_ADDRESS,;t t
+s,@HURD_PHYSMEM_LOAD_ADDRESS@,$HURD_PHYSMEM_LOAD_ADDRESS,;t t
+s,@WITH_LIBC_TRUE@,$WITH_LIBC_TRUE,;t t
+s,@WITH_LIBC_FALSE@,$WITH_LIBC_FALSE,;t t
+s,@LIBOBJS@,$LIBOBJS,;t t
+s,@LTLIBOBJS@,$LTLIBOBJS,;t t
+CEOF
+
+_ACEOF
+
+  cat >>$CONFIG_STATUS <<\_ACEOF
+  # Split the substitutions into bite-sized pieces for seds with
+  # small command number limits, like on Digital OSF/1 and HP-UX.
+  ac_max_sed_lines=48
+  ac_sed_frag=1 # Number of current file.
+  ac_beg=1 # First line for current file.
+  ac_end=$ac_max_sed_lines # Line after last line for current file.
+  ac_more_lines=:
+  ac_sed_cmds=
+  while $ac_more_lines; do
+    if test $ac_beg -gt 1; then
+      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    else
+      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    fi
+    if test ! -s $tmp/subs.frag; then
+      ac_more_lines=false
+    else
+      # The purpose of the label and of the branching condition is to
+      # speed up the sed processing (if there are no `@' at all, there
+      # is no need to browse any of the substitutions).
+      # These are the two extra sed commands mentioned above.
+      (echo ':t
+  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) 
>$tmp/subs-$ac_sed_frag.sed
+      if test -z "$ac_sed_cmds"; then
+       ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
+      else
+       ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
+      fi
+      ac_sed_frag=`expr $ac_sed_frag + 1`
+      ac_beg=$ac_end
+      ac_end=`expr $ac_end + $ac_max_sed_lines`
+    fi
+  done
+  if test -z "$ac_sed_cmds"; then
+    ac_sed_cmds=cat
+  fi
+fi # test -n "$CONFIG_FILES"
+
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
+  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+       cat >$tmp/stdin
+       ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
+  esac
+
+  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
+  ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_file" : 'X\(//\)[^/]' \| \
+        X"$ac_file" : 'X\(//\)$' \| \
+        X"$ac_file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  case $INSTALL in
+  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+  *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
+  esac
+
+  if test x"$ac_file" != x-; then
+    { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+    rm -f "$ac_file"
+  fi
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated by config.status.  */
+  if test x"$ac_file" = x-; then
+    configure_input=
+  else
+    configure_input="$ac_file.  "
+  fi
+  configure_input=$configure_input"Generated from `echo $ac_file_in |
+                                    sed 's,.*/,,'` by configure."
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+        # Absolute (can't be DOS-style, as IFS=:)
+        test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        echo "$f";;
+      *) # Relative
+        if test -f "$f"; then
+          # Build tree
+          echo "$f"
+        elif test -f "$srcdir/$f"; then
+          # Source tree
+          echo "$srcdir/$f"
+        else
+          # /dev/null tree
+          { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+  sed "$ac_vpsub
+$extrasub
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s,@configure_input@,$configure_input,;t t
+s,@srcdir@,$ac_srcdir,;t t
+s,@abs_srcdir@,$ac_abs_srcdir,;t t
+s,@top_srcdir@,$ac_top_srcdir,;t t
+s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
+s,@builddir@,$ac_builddir,;t t
+s,@abs_builddir@,$ac_abs_builddir,;t t
+s,@top_builddir@,$ac_top_builddir,;t t
+s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
+s,@INSTALL@,$ac_INSTALL,;t t
+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
+  rm -f $tmp/stdin
+  if test x"$ac_file" != x-; then
+    mv $tmp/out $ac_file
+  else
+    cat $tmp/out
+    rm -f $tmp/out
+  fi
+
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_HEADER section.
+#
+
+# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
+# NAME is the cpp macro being defined and VALUE is the value it is being given.
+#
+# ac_d sets the value in "#define NAME VALUE" lines.
+ac_dA='s,^\([   ]*\)#\([        ]*define[       ][      ]*\)'
+ac_dB='[        ].*$,\1#\2'
+ac_dC=' '
+ac_dD=',;t'
+# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+ac_uA='s,^\([   ]*\)#\([        ]*\)undef\([    ][      ]*\)'
+ac_uB='$,\1#\2define\3'
+ac_uC=' '
+ac_uD=',;t'
+
+for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
+  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+       cat >$tmp/stdin
+       ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
+  esac
+
+  test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+        # Absolute (can't be DOS-style, as IFS=:)
+        test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        # Do quote $f, to prevent DOS paths from being IFS'd.
+        echo "$f";;
+      *) # Relative
+        if test -f "$f"; then
+          # Build tree
+          echo "$f"
+        elif test -f "$srcdir/$f"; then
+          # Source tree
+          echo "$srcdir/$f"
+        else
+          # /dev/null tree
+          { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+        fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+  # Remove the trailing spaces.
+  sed 's/[      ]*$//' $ac_file_inputs >$tmp/in
+
+_ACEOF
+
+# Transform confdefs.h into two sed scripts, `conftest.defines' and
+# `conftest.undefs', that substitutes the proper values into
+# config.h.in to produce config.h.  The first handles `#define'
+# templates, and the second `#undef' templates.
+# And first: Protect against being on the right side of a sed subst in
+# config.status.  Protect against being in an unquoted here document
+# in config.status.
+rm -f conftest.defines conftest.undefs
+# Using a here document instead of a string reduces the quoting nightmare.
+# Putting comments in sed scripts is not portable.
+#
+# `end' is used to avoid that the second main sed command (meant for
+# 0-ary CPP macros) applies to n-ary macro definitions.
+# See the Autoconf documentation for `clear'.
+cat >confdef2sed.sed <<\_ACEOF
+s/[\\&,]/\\&/g
+s,[\\$`],\\&,g
+t clear
+: clear
+s,^[    ]*#[    ]*define[       ][      ]*\([^  (][^    (]*\)\(([^)]*)\)[      
 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
+t end
+s,^[    ]*#[    ]*define[       ][      ]*\([^  ][^     ]*\)[   
]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
+: end
+_ACEOF
+# If some macros were called several times there might be several times
+# the same #defines, which is useless.  Nevertheless, we may not want to
+# sort them, since we want the *last* AC-DEFINE to be honored.
+uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
+sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
+rm -f confdef2sed.sed
+
+# This sed command replaces #undef with comments.  This is necessary, for
+# example, in the case of _POSIX_SOURCE, which is predefined and required
+# on some systems where configure will not decide to define it.
+cat >>conftest.undefs <<\_ACEOF
+s,^[    ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
+_ACEOF
+
+# Break up conftest.defines because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
+echo '  if grep "^[     ]*#[    ]*define" $tmp/in >/dev/null; then' 
>>$CONFIG_STATUS
+echo '  # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
+echo '  :' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.defines >/dev/null
+do
+  # Write a limited-size here document to $tmp/defines.sed.
+  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#define' lines.
+  echo '/^[     ]*#[    ]*define/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/defines.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
+  rm -f conftest.defines
+  mv conftest.tail conftest.defines
+done
+rm -f conftest.defines
+echo '  fi # grep' >>$CONFIG_STATUS
+echo >>$CONFIG_STATUS
+
+# Break up conftest.undefs because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.undefs >/dev/null
+do
+  # Write a limited-size here document to $tmp/undefs.sed.
+  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#undef'
+  echo '/^[     ]*#[    ]*undef/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
+  rm -f conftest.undefs
+  mv conftest.tail conftest.undefs
+done
+rm -f conftest.undefs
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated by config.status.  */
+  if test x"$ac_file" = x-; then
+    echo "/* Generated by configure.  */" >$tmp/config.h
+  else
+    echo "/* $ac_file.  Generated by configure.  */" >$tmp/config.h
+  fi
+  cat $tmp/in >>$tmp/config.h
+  rm -f $tmp/in
+  if test x"$ac_file" != x-; then
+    if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
+      { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+echo "$as_me: $ac_file is unchanged" >&6;}
+    else
+      ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_file" : 'X\(//\)[^/]' \| \
+        X"$ac_file" : 'X\(//\)$' \| \
+        X"$ac_file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+      { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+      rm -f $ac_file
+      mv $tmp/config.h $ac_file
+    fi
+  else
+    cat $tmp/config.h
+    rm -f $tmp/config.h
+  fi
+# Compute $ac_file's index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+  case $_am_header in
+    $ac_file | $ac_file:* )
+      break ;;
+    * )
+      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+  esac
+done
+echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null ||
+$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X$ac_file : 'X\(//\)[^/]' \| \
+        X$ac_file : 'X\(//\)$' \| \
+        X$ac_file : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X$ac_file |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`/stamp-h$_am_stamp_count
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_LINKS section.
+#
+
+for ac_file in : $CONFIG_LINKS; do test "x$ac_file" = x: && continue
+  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+
+  { echo "$as_me:$LINENO: linking $srcdir/$ac_source to $ac_dest" >&5
+echo "$as_me: linking $srcdir/$ac_source to $ac_dest" >&6;}
+
+  if test ! -r $srcdir/$ac_source; then
+    { { echo "$as_me:$LINENO: error: $srcdir/$ac_source: file not found" >&5
+echo "$as_me: error: $srcdir/$ac_source: file not found" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+  rm -f $ac_dest
+
+  # Make relative symlinks.
+  ac_dest_dir=`(dirname "$ac_dest") 2>/dev/null ||
+$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_dest" : 'X\(//\)[^/]' \| \
+        X"$ac_dest" : 'X\(//\)$' \| \
+        X"$ac_dest" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_dest" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dest_dir"
+  else
+    as_dir="$ac_dest_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory 
\"$ac_dest_dir\"" >&5
+echo "$as_me: error: cannot create directory \"$ac_dest_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dest_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dest_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dest_dir";;
+*)
+  case "$ac_dest_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dest_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dest_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  case $srcdir in
+  [\\/$]* | ?:[\\/]* ) ac_rel_source=$srcdir/$ac_source ;;
+      *) ac_rel_source=$ac_top_builddir$srcdir/$ac_source ;;
+  esac
+
+  # Try a symlink, then a hard link, then a copy.
+  ln -s $ac_rel_source $ac_dest 2>/dev/null ||
+    ln $srcdir/$ac_source $ac_dest 2>/dev/null ||
+    cp -p $srcdir/$ac_source $ac_dest ||
+    { { echo "$as_me:$LINENO: error: cannot link or copy $srcdir/$ac_source to 
$ac_dest" >&5
+echo "$as_me: error: cannot link or copy $srcdir/$ac_source to $ac_dest" >&2;}
+   { (exit 1); exit 1; }; }
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_COMMANDS section.
+#
+for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
+  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+  ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
+$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$ac_dest" : 'X\(//\)[^/]' \| \
+        X"$ac_dest" : 'X\(//\)$' \| \
+        X"$ac_dest" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_dest" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  { if $as_mkdir_p; then
+    mkdir -p "$ac_dir"
+  else
+    as_dir="$ac_dir"
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+  ac_builddir=.
+
+if test "$ac_dir" != .; then
+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  # A "../" for each directory in $ac_dir_suffix.
+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+  ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+  .)  # No --srcdir option.  We are building in place.
+    ac_srcdir=.
+    if test -z "$ac_top_builddir"; then
+       ac_top_srcdir=.
+    else
+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+    fi ;;
+  [\\/]* | ?:[\\/]* )  # Absolute path.
+    ac_srcdir=$srcdir$ac_dir_suffix;
+    ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+  case "$ac_dir" in
+  .) ac_abs_builddir=`pwd`;;
+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+  case ${ac_top_builddir}. in
+  .) ac_abs_top_builddir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+  case $ac_srcdir in
+  .) ac_abs_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+  esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+  case $ac_top_srcdir in
+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+  esac;;
+esac
+
+
+  { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
+echo "$as_me: executing $ac_dest commands" >&6;}
+  case $ac_dest in
+    depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
+  # Strip MF so we end up with the name of the file.
+  mf=`echo "$mf" | sed -e 's/:.*$//'`
+  # Check whether this is an Automake generated Makefile or not.
+  # We used to match only the files named `Makefile.in', but
+  # some people rename them; so instead we look at the file content.
+  # Grep'ing the first line is not enough: some people post-process
+  # each Makefile.in and add a new line on top of each file to say so.
+  # So let's grep whole file.
+  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+    dirpart=`(dirname "$mf") 2>/dev/null ||
+$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$mf" : 'X\(//\)[^/]' \| \
+        X"$mf" : 'X\(//\)$' \| \
+        X"$mf" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$mf" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+  else
+    continue
+  fi
+  # Extract the definition of DEPDIR, am__include, and am__quote
+  # from the Makefile without running `make'.
+  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+  test -z "$DEPDIR" && continue
+  am__include=`sed -n 's/^am__include = //p' < "$mf"`
+  test -z "am__include" && continue
+  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+  # When using ansi2knr, U may be empty or an underscore; expand it
+  U=`sed -n 's/^U = //p' < "$mf"`
+  # Find all dependency output files, they are included files with
+  # $(DEPDIR) in their names.  We invoke sed twice because it is the
+  # simplest approach to changing $(DEPDIR) to its actual value in the
+  # expansion.
+  for file in `sed -n "
+    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+    # Make sure the directory exists.
+    test -f "$dirpart/$file" && continue
+    fdir=`(dirname "$file") 2>/dev/null ||
+$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$file" : 'X\(//\)[^/]' \| \
+        X"$file" : 'X\(//\)$' \| \
+        X"$file" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    { if $as_mkdir_p; then
+    mkdir -p $dirpart/$fdir
+  else
+    as_dir=$dirpart/$fdir
+    as_dirs=
+    while test ! -d "$as_dir"; do
+      as_dirs="$as_dir $as_dirs"
+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_dir" : 'X\(//\)[^/]' \| \
+        X"$as_dir" : 'X\(//\)$' \| \
+        X"$as_dir" : 'X\(/\)' \| \
+        .     : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+    done
+    test ! -n "$as_dirs" || mkdir $as_dirs
+  fi || { { echo "$as_me:$LINENO: error: cannot create directory 
$dirpart/$fdir" >&5
+echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;}
+   { (exit 1); exit 1; }; }; }
+
+    # echo "creating $dirpart/$file"
+    echo '# dummy' > "$dirpart/$file"
+  done
+done
+ ;;
+  esac
+done
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+{ (exit 0); exit 0; }
+_ACEOF
+chmod +x $CONFIG_STATUS
+ac_clean_files=$ac_clean_files_save
+
+
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded.  So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status.  When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+  ac_cs_success=:
+  ac_config_status_args=
+  test "$silent" = yes &&
+    ac_config_status_args="$ac_config_status_args --quiet"
+  exec 5>/dev/null
+  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
+  exec 5>>config.log
+  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
+  # would make configure fail if this is the last instruction.
+  $ac_cs_success || { (exit 1); exit 1; }
+fi
+
diff -Naur hurd-l4/configure.ac hurd-l4-new/configure.ac
--- hurd-l4/configure.ac        2005-04-08 22:28:34.000000000 +0200
+++ hurd-l4-new/configure.ac    2005-07-13 18:30:52.275804184 +0200
@@ -1,6 +1,7 @@
 # configure.ac - Configure script for the GNU Hurd.
 # Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
 # Written by Marcus Brinkmann.
+# Edited by Tom Bachmann
 #
 # This file is part of the GNU Hurd.
 # 
@@ -34,13 +35,44 @@
 # Checks for programs.
 AC_PROG_CC
 
+#Find idl4-config. We need this here, since it gives
+#us some CFLAGS
+if test "x$IDL4CONFIG" = "x" ;then
+  AC_PATH_TOOL([IDL4CONFIG], [idl4-config], no)
+fi
+if test "x$IDL4CONFIG" = "xno"; then
+  exit 1
+fi
 # FIXME: We should support setting the CFLAGS by the user.  But
 # -std=gnu99 and -O2 are required.
-CFLAGS="-std=gnu99 -Wall -g -O3"
+CFLAGS="-std=gnu99 -Wall -g -O3 `$IDL4CONFIG --cflags`"
+
 AM_PROG_AS
 AC_PROG_RANLIB
 AC_CHECK_TOOL([AR], [ar], :)
 AC_CHECK_TOOL([NM], [nm], :)
+
+#idl4 stuff (check, --help, ...)
+AC_ARG_VAR(IDL4,idl4 code generator command)
+AC_ARG_VAR(IDL4FLAGS, idl4 code generator flags)
+AC_ARG_VAR(IDL4CONFIG, idl4 path configuration tool)
+IDL4FLAGS="$IDL4FLAGS -i V4_GNU -p generic -T -fctypes"
+if test "x$IDL4" = "x";then
+  AC_PATH_TOOL([IDL4], [idl4], no)
+fi
+if test "x$IDL4" = xno; then
+  exit 1
+fi
+echo -n "checking for idl4 -l -i V4_GNU -T... "
+$IDL4 $IDL4FLAGS -l -c -C "$CC $CFLAGS" test.idl
+if test -e test_client.h;then
+  echo yes
+  rm test_client.h
+else
+  echo 'Your version of idl4 is outdated, see README.idl4!'
+  exit 1
+fi
+IDL4FLAGS="$IDL4FLAGS -C \"\$(COMPILE) \$(\$(subdir)_CPPFLAGS)\""
 AC_PATH_PROG([SED], [sed], :)
 AC_PATH_PROG([SORT], [sort], :)
 
diff -Naur hurd-l4/COPYING hurd-l4-new/COPYING
--- hurd-l4/COPYING     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/COPYING 2005-07-13 18:30:52.276804032 +0200
@@ -0,0 +1,340 @@
+                   GNU GENERAL PUBLIC LICENSE
+                      Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                           Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                   GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+                           NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+                    END OF TERMS AND CONDITIONS
+
+           How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year  name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff -Naur hurd-l4/CVS/Entries hurd-l4-new/CVS/Entries
--- hurd-l4/CVS/Entries 2005-07-13 18:31:34.614367744 +0200
+++ hurd-l4-new/CVS/Entries     2005-07-13 18:30:52.276804032 +0200
@@ -1,11 +1,3 @@
-/AUTHORS/1.6/Fri Oct 29 01:09:01 2004//
-/ChangeLog/1.26/Fri Apr  8 20:28:34 2005//
-/Makefile.am/1.17/Sun Jan 23 21:30:41 2005//
-/NEWS/1.1/Sat Jul 26 17:26:09 2003//
-/README/1.18/Mon Jan 31 16:26:44 2005//
-/THANKS/1.5/Fri Oct 29 03:16:19 2004//
-/TODO/1.19/Tue Feb  8 22:18:19 2005//
-/acinclude.m4/1.4/Thu Mar 25 17:25:44 2004//
 /configure.ac/1.29/Fri Apr  8 20:28:34 2005//
 D/deva////
 D/doc////
@@ -26,3 +18,11 @@
 D/ruth////
 D/task////
 D/wortel////
+/AUTHORS/1.6/Wed Jul 13 15:55:51 2005//
+/ChangeLog/1.26/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.17/Wed Jul 13 15:55:51 2005//
+/NEWS/1.1/Wed Jul 13 15:55:51 2005//
+/README/1.18/Wed Jul 13 15:55:51 2005//
+/THANKS/1.5/Wed Jul 13 15:55:51 2005//
+/TODO/1.19/Wed Jul 13 15:55:51 2005//
+/acinclude.m4/1.4/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/depcomp hurd-l4-new/depcomp
--- hurd-l4/depcomp     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/depcomp 2005-07-13 18:30:52.277803880 +0200
@@ -0,0 +1,529 @@
+#! /bin/sh
+# depcomp - compile a program generating dependencies as side-effects
+
+scriptversion=2005-02-09.22
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# Originally written by Alexandre Oliva <address@hidden>.
+
+case $1 in
+  '')
+     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: depcomp [--help] [--version] PROGRAM [ARGS]
+
+Run PROGRAMS ARGS to compile a file, generating dependencies
+as side-effects.
+
+Environment variables:
+  depmode     Dependency tracking mode.
+  source      Source file read by `PROGRAMS ARGS'.
+  object      Object file output by `PROGRAMS ARGS'.
+  DEPDIR      directory where to store dependencies.
+  depfile     Dependency file to output.
+  tmpdepfile  Temporary file to use when outputing dependencies.
+  libtool     Whether libtool is used (yes/no).
+
+Report bugs to <address@hidden>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "depcomp $scriptversion"
+    exit $?
+    ;;
+esac
+
+if test -z "$depmode" || test -z "$source" || test -z "$object"; then
+  echo "depcomp: Variables source, object and depmode must be set" 1>&2
+  exit 1
+fi
+
+# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
+depfile=${depfile-`echo "$object" |
+  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
+tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
+
+rm -f "$tmpdepfile"
+
+# Some modes work just like other modes, but use different flags.  We
+# parameterize here, but still list the modes in the big case below,
+# to make depend.m4 easier to write.  Note that we *cannot* use a case
+# here, because this file can only contain one case statement.
+if test "$depmode" = hp; then
+  # HP compiler uses -M and no extra arg.
+  gccflag=-M
+  depmode=gcc
+fi
+
+if test "$depmode" = dashXmstdout; then
+   # This is just like dashmstdout with a different argument.
+   dashmflag=-xM
+   depmode=dashmstdout
+fi
+
+case "$depmode" in
+gcc3)
+## gcc 3 implements dependency tracking that does exactly what
+## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
+## it if -MD -MP comes after the -MF stuff.  Hmm.
+  "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  mv "$tmpdepfile" "$depfile"
+  ;;
+
+gcc)
+## There are various ways to get dependency output from gcc.  Here's
+## why we pick this rather obscure method:
+## - Don't want to use -MD because we'd like the dependencies to end
+##   up in a subdir.  Having to rename by hand is ugly.
+##   (We might end up doing this anyway to support other compilers.)
+## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
+##   -MM, not -M (despite what the docs say).
+## - Using -M directly means running the compiler twice (even worse
+##   than renaming).
+  if test -z "$gccflag"; then
+    gccflag=-MD,
+  fi
+  "$@" -Wp,"$gccflag$tmpdepfile"
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
+## The second -e expression handles DOS-style file names with drive letters.
+  sed -e 's/^[^:]*: / /' \
+      -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
+## This next piece of magic avoids the `deleted header file' problem.
+## The problem is that when a header file which appears in a .P file
+## is deleted, the dependency causes make to die (because there is
+## typically no way to rebuild the header).  We avoid this by adding
+## dummy dependencies for each header file.  Too bad gcc doesn't do
+## this for us directly.
+  tr ' ' '
+' < "$tmpdepfile" |
+## Some versions of gcc put a space before the `:'.  On the theory
+## that the space means something, we add a space to the output as
+## well.
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly.  Breaking it into two sed invocations is a workaround.
+    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+hp)
+  # This case exists only to let depend.m4 do its work.  It works by
+  # looking at the text of this script.  This case will never be run,
+  # since it is checked for above.
+  exit 1
+  ;;
+
+sgi)
+  if test "$libtool" = yes; then
+    "$@" "-Wp,-MDupdate,$tmpdepfile"
+  else
+    "$@" -MDupdate "$tmpdepfile"
+  fi
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+
+  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
+    echo "$object : \\" > "$depfile"
+
+    # Clip off the initial element (the dependent).  Don't try to be
+    # clever and replace this with sed code, as IRIX sed won't handle
+    # lines with more than a fixed number of characters (4096 in
+    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
+    # the IRIX cc adds comments like `#:fec' to the end of the
+    # dependency line.
+    tr ' ' '
+' < "$tmpdepfile" \
+    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
+    tr '
+' ' ' >> $depfile
+    echo >> $depfile
+
+    # The second pass generates a dummy entry for each header file.
+    tr ' ' '
+' < "$tmpdepfile" \
+   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+   >> $depfile
+  else
+    # The sourcefile does not contain any dependencies, so just
+    # store a dummy comment line, to avoid errors with the Makefile
+    # "include basename.Plo" scheme.
+    echo "#dummy" > "$depfile"
+  fi
+  rm -f "$tmpdepfile"
+  ;;
+
+aix)
+  # The C for AIX Compiler uses -M and outputs the dependencies
+  # in a .u file.  In older versions, this file always lives in the
+  # current directory.  Also, the AIX compiler puts `$object:' at the
+  # start of each line; $object doesn't have directory information.
+  # Version 6 uses the directory in both cases.
+  stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
+  tmpdepfile="$stripped.u"
+  if test "$libtool" = yes; then
+    "$@" -Wc,-M
+  else
+    "$@" -M
+  fi
+  stat=$?
+
+  if test -f "$tmpdepfile"; then :
+  else
+    stripped=`echo "$stripped" | sed 's,^.*/,,'`
+    tmpdepfile="$stripped.u"
+  fi
+
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+
+  if test -f "$tmpdepfile"; then
+    outname="$stripped.o"
+    # Each line is of the form `foo.o: dependent.h'.
+    # Do two passes, one to just change these to
+    # `$object: dependent.h' and one to simply `dependent.h:'.
+    sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
+    sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
+  else
+    # The sourcefile does not contain any dependencies, so just
+    # store a dummy comment line, to avoid errors with the Makefile
+    # "include basename.Plo" scheme.
+    echo "#dummy" > "$depfile"
+  fi
+  rm -f "$tmpdepfile"
+  ;;
+
+icc)
+  # Intel's C compiler understands `-MD -MF file'.  However on
+  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
+  # ICC 7.0 will fill foo.d with something like
+  #    foo.o: sub/foo.c
+  #    foo.o: sub/foo.h
+  # which is wrong.  We want:
+  #    sub/foo.o: sub/foo.c
+  #    sub/foo.o: sub/foo.h
+  #    sub/foo.c:
+  #    sub/foo.h:
+  # ICC 7.1 will output
+  #    foo.o: sub/foo.c sub/foo.h
+  # and will wrap long lines using \ :
+  #    foo.o: sub/foo.c ... \
+  #     sub/foo.h ... \
+  #     ...
+
+  "$@" -MD -MF "$tmpdepfile"
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+  # Each line is of the form `foo.o: dependent.h',
+  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
+  # Do two passes, one to just change these to
+  # `$object: dependent.h' and one to simply `dependent.h:'.
+  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process this invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
+    sed -e 's/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+tru64)
+   # The Tru64 compiler uses -MD to generate dependencies as a side
+   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
+   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+   # dependencies in `foo.d' instead, so we check for that too.
+   # Subdirectories are respected.
+   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+   test "x$dir" = "x$object" && dir=
+   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+
+   if test "$libtool" = yes; then
+      # With Tru64 cc, shared objects can also be used to make a
+      # static library.  This mecanism is used in libtool 1.4 series to
+      # handle both shared and static libraries in a single compilation.
+      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
+      #
+      # With libtool 1.5 this exception was removed, and libtool now
+      # generates 2 separate objects for the 2 libraries.  These two
+      # compilations output dependencies in in $dir.libs/$base.o.d and
+      # in $dir$base.o.d.  We have to check for both files, because
+      # one of the two compilations can be disabled.  We should prefer
+      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+      # automatically cleaned when .libs/ is deleted, while ignoring
+      # the former would cause a distcleancheck panic.
+      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
+      tmpdepfile2=$dir$base.o.d          # libtool 1.5
+      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
+      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
+      "$@" -Wc,-MD
+   else
+      tmpdepfile1=$dir$base.o.d
+      tmpdepfile2=$dir$base.d
+      tmpdepfile3=$dir$base.d
+      tmpdepfile4=$dir$base.d
+      "$@" -MD
+   fi
+
+   stat=$?
+   if test $stat -eq 0; then :
+   else
+      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
+      exit $stat
+   fi
+
+   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" 
"$tmpdepfile4"
+   do
+     test -f "$tmpdepfile" && break
+   done
+   if test -f "$tmpdepfile"; then
+      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+      # That's a tab and a space in the [].
+      sed -e 's,^.*\.[a-z]*:[   ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+   else
+      echo "#dummy" > "$depfile"
+   fi
+   rm -f "$tmpdepfile"
+   ;;
+
+#nosideeffect)
+  # This comment above is used by automake to tell side-effect
+  # dependency tracking mechanisms from slower ones.
+
+dashmstdout)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the preprocessed file to stdout, regardless of -o.
+  "$@" || exit $?
+
+  # Remove the call to Libtool.
+  if test "$libtool" = yes; then
+    while test $1 != '--mode=compile'; do
+      shift
+    done
+    shift
+  fi
+
+  # Remove `-o $object'.
+  IFS=" "
+  for arg
+  do
+    case $arg in
+    -o)
+      shift
+      ;;
+    $object)
+      shift
+      ;;
+    *)
+      set fnord "$@" "$arg"
+      shift # fnord
+      shift # $arg
+      ;;
+    esac
+  done
+
+  test -z "$dashmflag" && dashmflag=-M
+  # Require at least two characters before searching for `:'
+  # in the target name.  This is to cope with DOS-style filenames:
+  # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+  "$@" $dashmflag |
+    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile"
+  rm -f "$depfile"
+  cat < "$tmpdepfile" > "$depfile"
+  tr ' ' '
+' < "$tmpdepfile" | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly.  Breaking it into two sed invocations is a workaround.
+    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+dashXmstdout)
+  # This case only exists to satisfy depend.m4.  It is never actually
+  # run, as this mode is specially recognized in the preamble.
+  exit 1
+  ;;
+
+makedepend)
+  "$@" || exit $?
+  # Remove any Libtool call
+  if test "$libtool" = yes; then
+    while test $1 != '--mode=compile'; do
+      shift
+    done
+    shift
+  fi
+  # X makedepend
+  shift
+  cleared=no
+  for arg in "$@"; do
+    case $cleared in
+    no)
+      set ""; shift
+      cleared=yes ;;
+    esac
+    case "$arg" in
+    -D*|-I*)
+      set fnord "$@" "$arg"; shift ;;
+    # Strip any option that makedepend may not understand.  Remove
+    # the object too, otherwise makedepend will parse it as a source file.
+    -*|$object)
+      ;;
+    *)
+      set fnord "$@" "$arg"; shift ;;
+    esac
+  done
+  obj_suffix="`echo $object | sed 's/^.*\././'`"
+  touch "$tmpdepfile"
+  ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
+  rm -f "$depfile"
+  cat < "$tmpdepfile" > "$depfile"
+  sed '1,2d' "$tmpdepfile" | tr ' ' '
+' | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly.  Breaking it into two sed invocations is a workaround.
+    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile" "$tmpdepfile".bak
+  ;;
+
+cpp)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the preprocessed file to stdout.
+  "$@" || exit $?
+
+  # Remove the call to Libtool.
+  if test "$libtool" = yes; then
+    while test $1 != '--mode=compile'; do
+      shift
+    done
+    shift
+  fi
+
+  # Remove `-o $object'.
+  IFS=" "
+  for arg
+  do
+    case $arg in
+    -o)
+      shift
+      ;;
+    $object)
+      shift
+      ;;
+    *)
+      set fnord "$@" "$arg"
+      shift # fnord
+      shift # $arg
+      ;;
+    esac
+  done
+
+  "$@" -E |
+    sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
+    sed '$ s: \\$::' > "$tmpdepfile"
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  cat < "$tmpdepfile" >> "$depfile"
+  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+msvisualcpp)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the preprocessed file to stdout, regardless of -o,
+  # because we must use -o when running libtool.
+  "$@" || exit $?
+  IFS=" "
+  for arg
+  do
+    case "$arg" in
+    "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
+       set fnord "$@"
+       shift
+       shift
+       ;;
+    *)
+       set fnord "$@" "$arg"
+       shift
+       shift
+       ;;
+    esac
+  done
+  "$@" -E |
+  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' 
| sort | uniq > "$tmpdepfile"
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::   \1 \\:p' >> 
"$depfile"
+  echo "       " >> "$depfile"
+  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> 
"$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+none)
+  exec "$@"
+  ;;
+
+*)
+  echo "Unknown depmode $depmode" 1>&2
+  exit 1
+  ;;
+esac
+
+exit 0
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff -Naur hurd-l4/deva/CVS/Entries hurd-l4-new/deva/CVS/Entries
--- hurd-l4/deva/CVS/Entries    2005-07-13 18:31:26.283634208 +0200
+++ hurd-l4-new/deva/CVS/Entries        2005-07-13 18:30:52.278803728 +0200
@@ -1,18 +1,18 @@
-/ChangeLog/1.16/Wed Apr  6 16:56:01 2005//
-/Makefile.am/1.7/Thu Feb  3 14:23:20 2005//
-/deva.c/1.6/Thu Feb  3 22:52:52 2005//
-/deva.h/1.2/Tue Feb  1 01:22:38 2005//
-/device-console.c/1.2/Thu Feb  3 14:45:42 2005//
-/device-serial.c/1.2/Thu Feb  3 21:56:26 2005//
-/device.c/1.2/Thu Feb  3 14:23:20 2005//
-/device.h/1.2/Thu Feb  3 14:23:19 2005//
-/ia32-cmain.c/1.3/Tue Jan 11 18:15:26 2005//
-/ia32-crt0.S/1.1/Thu Oct 28 04:12:17 2004//
-/malloc-wrap.c/1.1/Thu Oct 28 04:12:17 2004//
-/malloc.c/1.1/Thu Oct 28 04:12:17 2004//
-/mmap.c/1.3/Wed Apr  6 16:56:01 2005//
-/output.c/1.1/Thu Oct 28 04:12:17 2004//
-/output.h/1.3/Fri Jan  7 11:11:46 2005//
-/task-user.c/1.2/Thu Dec  2 15:22:24 2004//
-/task-user.h/1.2/Thu Dec  2 15:22:24 2004//
+/ChangeLog/1.16/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.7/Wed Jul 13 15:55:51 2005//
+/deva.c/1.6/Wed Jul 13 15:55:51 2005//
+/deva.h/1.2/Wed Jul 13 15:55:51 2005//
+/device-console.c/1.2/Wed Jul 13 15:55:51 2005//
+/device-serial.c/1.2/Wed Jul 13 15:55:51 2005//
+/device.c/1.2/Wed Jul 13 15:55:51 2005//
+/device.h/1.2/Wed Jul 13 15:55:51 2005//
+/ia32-cmain.c/1.3/Wed Jul 13 15:55:51 2005//
+/ia32-crt0.S/1.1/Wed Jul 13 15:55:51 2005//
+/malloc-wrap.c/1.1/Wed Jul 13 15:55:51 2005//
+/malloc.c/1.1/Wed Jul 13 15:55:51 2005//
+/mmap.c/1.3/Wed Jul 13 15:55:51 2005//
+/output.c/1.1/Wed Jul 13 15:55:51 2005//
+/output.h/1.3/Wed Jul 13 15:55:51 2005//
+/task-user.c/1.2/Wed Jul 13 15:55:51 2005//
+/task-user.h/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/deva/Makefile.in hurd-l4-new/deva/Makefile.in
--- hurd-l4/deva/Makefile.in    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/deva/Makefile.in        2005-07-13 18:30:52.279803576 +0200
@@ -0,0 +1,662 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for the deva server.
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = $(deva_SOURCES) $(EXTRA_deva_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+boot_PROGRAMS = deva$(EXEEXT)
+subdir = deva
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bootdir)"
+bootPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(boot_PROGRAMS)
+am__deva_SOURCES_DIST = ia32-crt0.S ia32-cmain.c output.h output.c \
+       mmap.c malloc-wrap.c task-user.h task-user.c deva.h deva.c \
+       device.h device.c device-console.c device-serial.c
address@hidden@am__objects_1 = ia32-crt0.$(OBJEXT) \
address@hidden@ deva-ia32-cmain.$(OBJEXT)
+am_deva_OBJECTS = $(am__objects_1) deva-output.$(OBJEXT) \
+       deva-mmap.$(OBJEXT) deva-malloc-wrap.$(OBJEXT) \
+       deva-task-user.$(OBJEXT) deva-deva.$(OBJEXT) \
+       deva-device.$(OBJEXT) deva-device-console.$(OBJEXT) \
+       deva-device-serial.$(OBJEXT)
+deva_OBJECTS = $(am_deva_OBJECTS)
+deva_DEPENDENCIES = ../libhurd-cap-server/libhurd-cap-server.a \
+       ../libhurd-mm/libhurd-mm.a ../libhurd-slab/libhurd-slab.a \
+       ../libpthread/libpthread.a ../libhurd-ihash/libhurd-ihash.a \
+       ../libhurd-btree/libhurd-btree.a ../libc-parts/libc-parts.a
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CCASCOMPILE = $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS)
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(deva_SOURCES) $(EXTRA_deva_SOURCES)
+DIST_SOURCES = $(am__deva_SOURCES_DIST) $(EXTRA_deva_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@ARCH_SOURCES = ia32-crt0.S ia32-cmain.c
+bootdir = $(prefix)/boot
+deva_CPPFLAGS = -I$(top_builddir)/include                      \
+       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)
+
+deva_SOURCES = $(ARCH_SOURCES)                                 \
+       output.h output.c                                       \
+       mmap.c malloc-wrap.c                                    \
+       task-user.h task-user.c                                 \
+       deva.h deva.c                                           \
+       device.h device.c device-console.c device-serial.c
+
+
+# Doug Lea's malloc is included by malloc-wrap.c.
+EXTRA_deva_SOURCES = malloc.c
+deva_LDFLAGS = -u_start -e_start -nostdlib
+deva_LDADD = ../libhurd-cap-server/libhurd-cap-server.a                \
+       ../libhurd-mm/libhurd-mm.a                              \
+       ../libhurd-slab/libhurd-slab.a                          \
+       ../libpthread/libpthread.a                              \
+       ../libhurd-ihash/libhurd-ihash.a                        \
+       ../libhurd-btree/libhurd-btree.a                        \
+       ../libc-parts/libc-parts.a -lgcc
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  deva/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  deva/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-bootPROGRAMS: $(boot_PROGRAMS)
+       @$(NORMAL_INSTALL)
+       test -z "$(bootdir)" || $(mkdir_p) "$(DESTDIR)$(bootdir)"
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+         ; then \
+           f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) '$$p' 
'$(DESTDIR)$(bootdir)/$$f'"; \
+          $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) "$$p" 
"$(DESTDIR)$(bootdir)/$$f" || exit 1; \
+         else :; fi; \
+       done
+
+uninstall-bootPROGRAMS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         f=`echo "$$p" | sed 
's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f '$(DESTDIR)$(bootdir)/$$f'"; \
+         rm -f "$(DESTDIR)$(bootdir)/$$f"; \
+       done
+
+clean-bootPROGRAMS:
+       -test -z "$(boot_PROGRAMS)" || rm -f $(boot_PROGRAMS)
+deva$(EXEEXT): $(deva_OBJECTS) $(deva_DEPENDENCIES) 
+       @rm -f deva$(EXEEXT)
+       $(LINK) $(deva_LDFLAGS) $(deva_OBJECTS) $(deva_LDADD) $(LIBS)
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.S.o:
+       $(CCASCOMPILE) -c $<
+
+.S.obj:
+       $(CCASCOMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+deva-ia32-cmain.o: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-ia32-cmain.o -MD 
-MP -MF "$(DEPDIR)/deva-ia32-cmain.Tpo" -c -o deva-ia32-cmain.o `test -f 
'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-ia32-cmain.Tpo" 
"$(DEPDIR)/deva-ia32-cmain.Po"; else rm -f "$(DEPDIR)/deva-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='deva-ia32-cmain.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-ia32-cmain.o `test -f 
'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c
+
+deva-ia32-cmain.obj: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-ia32-cmain.obj -MD 
-MP -MF "$(DEPDIR)/deva-ia32-cmain.Tpo" -c -o deva-ia32-cmain.obj `if test -f 
'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-ia32-cmain.Tpo" 
"$(DEPDIR)/deva-ia32-cmain.Po"; else rm -f "$(DEPDIR)/deva-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='deva-ia32-cmain.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-ia32-cmain.obj `if test -f 
'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`
+
+deva-output.o: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-output.o -MD -MP 
-MF "$(DEPDIR)/deva-output.Tpo" -c -o deva-output.o `test -f 'output.c' || echo 
'$(srcdir)/'`output.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-output.Tpo" 
"$(DEPDIR)/deva-output.Po"; else rm -f "$(DEPDIR)/deva-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='deva-output.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-output.o `test -f 'output.c' || 
echo '$(srcdir)/'`output.c
+
+deva-output.obj: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-output.obj -MD -MP 
-MF "$(DEPDIR)/deva-output.Tpo" -c -o deva-output.obj `if test -f 'output.c'; 
then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) '$(srcdir)/output.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-output.Tpo" 
"$(DEPDIR)/deva-output.Po"; else rm -f "$(DEPDIR)/deva-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='deva-output.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-output.obj `if test -f 
'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`
+
+deva-mmap.o: mmap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-mmap.o -MD -MP -MF 
"$(DEPDIR)/deva-mmap.Tpo" -c -o deva-mmap.o `test -f 'mmap.c' || echo 
'$(srcdir)/'`mmap.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-mmap.Tpo" "$(DEPDIR)/deva-mmap.Po"; 
else rm -f "$(DEPDIR)/deva-mmap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='mmap.c' object='deva-mmap.o' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-mmap.o `test -f 'mmap.c' || echo 
'$(srcdir)/'`mmap.c
+
+deva-mmap.obj: mmap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-mmap.obj -MD -MP 
-MF "$(DEPDIR)/deva-mmap.Tpo" -c -o deva-mmap.obj `if test -f 'mmap.c'; then 
$(CYGPATH_W) 'mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-mmap.Tpo" "$(DEPDIR)/deva-mmap.Po"; 
else rm -f "$(DEPDIR)/deva-mmap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='mmap.c' object='deva-mmap.obj' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-mmap.obj `if test -f 'mmap.c'; 
then $(CYGPATH_W) 'mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap.c'; fi`
+
+deva-malloc-wrap.o: malloc-wrap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-malloc-wrap.o -MD 
-MP -MF "$(DEPDIR)/deva-malloc-wrap.Tpo" -c -o deva-malloc-wrap.o `test -f 
'malloc-wrap.c' || echo '$(srcdir)/'`malloc-wrap.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-malloc-wrap.Tpo" 
"$(DEPDIR)/deva-malloc-wrap.Po"; else rm -f "$(DEPDIR)/deva-malloc-wrap.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc-wrap.c' 
object='deva-malloc-wrap.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-malloc-wrap.o `test -f 
'malloc-wrap.c' || echo '$(srcdir)/'`malloc-wrap.c
+
+deva-malloc-wrap.obj: malloc-wrap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-malloc-wrap.obj 
-MD -MP -MF "$(DEPDIR)/deva-malloc-wrap.Tpo" -c -o deva-malloc-wrap.obj `if 
test -f 'malloc-wrap.c'; then $(CYGPATH_W) 'malloc-wrap.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc-wrap.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-malloc-wrap.Tpo" 
"$(DEPDIR)/deva-malloc-wrap.Po"; else rm -f "$(DEPDIR)/deva-malloc-wrap.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc-wrap.c' 
object='deva-malloc-wrap.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-malloc-wrap.obj `if test -f 
'malloc-wrap.c'; then $(CYGPATH_W) 'malloc-wrap.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc-wrap.c'; fi`
+
+deva-task-user.o: task-user.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-task-user.o -MD 
-MP -MF "$(DEPDIR)/deva-task-user.Tpo" -c -o deva-task-user.o `test -f 
'task-user.c' || echo '$(srcdir)/'`task-user.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-task-user.Tpo" 
"$(DEPDIR)/deva-task-user.Po"; else rm -f "$(DEPDIR)/deva-task-user.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task-user.c' 
object='deva-task-user.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-task-user.o `test -f 
'task-user.c' || echo '$(srcdir)/'`task-user.c
+
+deva-task-user.obj: task-user.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-task-user.obj -MD 
-MP -MF "$(DEPDIR)/deva-task-user.Tpo" -c -o deva-task-user.obj `if test -f 
'task-user.c'; then $(CYGPATH_W) 'task-user.c'; else $(CYGPATH_W) 
'$(srcdir)/task-user.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-task-user.Tpo" 
"$(DEPDIR)/deva-task-user.Po"; else rm -f "$(DEPDIR)/deva-task-user.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task-user.c' 
object='deva-task-user.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-task-user.obj `if test -f 
'task-user.c'; then $(CYGPATH_W) 'task-user.c'; else $(CYGPATH_W) 
'$(srcdir)/task-user.c'; fi`
+
+deva-deva.o: deva.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-deva.o -MD -MP -MF 
"$(DEPDIR)/deva-deva.Tpo" -c -o deva-deva.o `test -f 'deva.c' || echo 
'$(srcdir)/'`deva.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-deva.Tpo" "$(DEPDIR)/deva-deva.Po"; 
else rm -f "$(DEPDIR)/deva-deva.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='deva.c' object='deva-deva.o' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-deva.o `test -f 'deva.c' || echo 
'$(srcdir)/'`deva.c
+
+deva-deva.obj: deva.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-deva.obj -MD -MP 
-MF "$(DEPDIR)/deva-deva.Tpo" -c -o deva-deva.obj `if test -f 'deva.c'; then 
$(CYGPATH_W) 'deva.c'; else $(CYGPATH_W) '$(srcdir)/deva.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-deva.Tpo" "$(DEPDIR)/deva-deva.Po"; 
else rm -f "$(DEPDIR)/deva-deva.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='deva.c' object='deva-deva.obj' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-deva.obj `if test -f 'deva.c'; 
then $(CYGPATH_W) 'deva.c'; else $(CYGPATH_W) '$(srcdir)/deva.c'; fi`
+
+deva-device.o: device.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-device.o -MD -MP 
-MF "$(DEPDIR)/deva-device.Tpo" -c -o deva-device.o `test -f 'device.c' || echo 
'$(srcdir)/'`device.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-device.Tpo" 
"$(DEPDIR)/deva-device.Po"; else rm -f "$(DEPDIR)/deva-device.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='device.c' 
object='deva-device.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-device.o `test -f 'device.c' || 
echo '$(srcdir)/'`device.c
+
+deva-device.obj: device.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-device.obj -MD -MP 
-MF "$(DEPDIR)/deva-device.Tpo" -c -o deva-device.obj `if test -f 'device.c'; 
then $(CYGPATH_W) 'device.c'; else $(CYGPATH_W) '$(srcdir)/device.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-device.Tpo" 
"$(DEPDIR)/deva-device.Po"; else rm -f "$(DEPDIR)/deva-device.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='device.c' 
object='deva-device.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-device.obj `if test -f 
'device.c'; then $(CYGPATH_W) 'device.c'; else $(CYGPATH_W) 
'$(srcdir)/device.c'; fi`
+
+deva-device-console.o: device-console.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-device-console.o 
-MD -MP -MF "$(DEPDIR)/deva-device-console.Tpo" -c -o deva-device-console.o 
`test -f 'device-console.c' || echo '$(srcdir)/'`device-console.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-device-console.Tpo" 
"$(DEPDIR)/deva-device-console.Po"; else rm -f 
"$(DEPDIR)/deva-device-console.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='device-console.c' 
object='deva-device-console.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-device-console.o `test -f 
'device-console.c' || echo '$(srcdir)/'`device-console.c
+
+deva-device-console.obj: device-console.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-device-console.obj 
-MD -MP -MF "$(DEPDIR)/deva-device-console.Tpo" -c -o deva-device-console.obj 
`if test -f 'device-console.c'; then $(CYGPATH_W) 'device-console.c'; else 
$(CYGPATH_W) '$(srcdir)/device-console.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-device-console.Tpo" 
"$(DEPDIR)/deva-device-console.Po"; else rm -f 
"$(DEPDIR)/deva-device-console.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='device-console.c' 
object='deva-device-console.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-device-console.obj `if test -f 
'device-console.c'; then $(CYGPATH_W) 'device-console.c'; else $(CYGPATH_W) 
'$(srcdir)/device-console.c'; fi`
+
+deva-device-serial.o: device-serial.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-device-serial.o 
-MD -MP -MF "$(DEPDIR)/deva-device-serial.Tpo" -c -o deva-device-serial.o `test 
-f 'device-serial.c' || echo '$(srcdir)/'`device-serial.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-device-serial.Tpo" 
"$(DEPDIR)/deva-device-serial.Po"; else rm -f 
"$(DEPDIR)/deva-device-serial.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='device-serial.c' 
object='deva-device-serial.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-device-serial.o `test -f 
'device-serial.c' || echo '$(srcdir)/'`device-serial.c
+
+deva-device-serial.obj: device-serial.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-device-serial.obj 
-MD -MP -MF "$(DEPDIR)/deva-device-serial.Tpo" -c -o deva-device-serial.obj `if 
test -f 'device-serial.c'; then $(CYGPATH_W) 'device-serial.c'; else 
$(CYGPATH_W) '$(srcdir)/device-serial.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-device-serial.Tpo" 
"$(DEPDIR)/deva-device-serial.Po"; else rm -f 
"$(DEPDIR)/deva-device-serial.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='device-serial.c' 
object='deva-device-serial.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-device-serial.obj `if test -f 
'device-serial.c'; then $(CYGPATH_W) 'device-serial.c'; else $(CYGPATH_W) 
'$(srcdir)/device-serial.c'; fi`
+
+deva-malloc.o: malloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-malloc.o -MD -MP 
-MF "$(DEPDIR)/deva-malloc.Tpo" -c -o deva-malloc.o `test -f 'malloc.c' || echo 
'$(srcdir)/'`malloc.c; \
address@hidden@ then mv -f "$(DEPDIR)/deva-malloc.Tpo" 
"$(DEPDIR)/deva-malloc.Po"; else rm -f "$(DEPDIR)/deva-malloc.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc.c' 
object='deva-malloc.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-malloc.o `test -f 'malloc.c' || 
echo '$(srcdir)/'`malloc.c
+
+deva-malloc.obj: malloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(deva_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT deva-malloc.obj -MD -MP 
-MF "$(DEPDIR)/deva-malloc.Tpo" -c -o deva-malloc.obj `if test -f 'malloc.c'; 
then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) '$(srcdir)/malloc.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/deva-malloc.Tpo" 
"$(DEPDIR)/deva-malloc.Po"; else rm -f "$(DEPDIR)/deva-malloc.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc.c' 
object='deva-malloc.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(deva_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o deva-malloc.obj `if test -f 
'malloc.c'; then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc.c'; fi`
+uninstall-info-am:
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(PROGRAMS)
+installdirs:
+       for dir in "$(DESTDIR)$(bootdir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-bootPROGRAMS clean-generic 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-bootPROGRAMS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-bootPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-bootPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-bootPROGRAMS \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-bootPROGRAMS uninstall-info-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 -Naur hurd-l4/doc/booting.aux hurd-l4-new/doc/booting.aux
--- hurd-l4/doc/booting.aux     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/booting.aux 2005-07-13 18:30:52.280803424 +0200
@@ -0,0 +1,37 @@
+\relax 
address@hidden {chapter}{\numberline {2}Booting}{5}}
address@hidden {10\p@ }}
address@hidden {10\p@ }}
address@hidden {section}{\numberline {2.1}System bootstrap}{5}}
address@hidden {subsection}{\numberline {2.1.1}Booting the ia32}{5}}
address@hidden {section}{\numberline {2.2}The loader \texttt  {laden}}{6}}
address@hidden {section}{\numberline {2.3}The L4 kernel}{7}}
address@hidden {section}{\numberline {2.4}The initial server $\sigma _0$}{7}}
address@hidden {section}{\numberline {2.5}The initial server $\sigma _1$}{7}}
address@hidden {section}{\numberline {2.6}The rootserver wortel}{7}}
+\newlabel{rootserver}{{2.6}{7}}
+\newlabel{wortel}{{2.6}{7}}
address@hidden {section}{\numberline {2.7}The physical memory server 
physmem}{8}}
address@hidden {section}{\numberline {2.8}The task server}{9}}
address@hidden {section}{\numberline {2.9}The device access server deva}{10}}
address@hidden {section}{\numberline {2.10}The device access server 
archive}{10}}
address@hidden {section}{\numberline {2.11}The root filesystem}{10}}
address@hidden
+\setcounter{page}{11}
+\setcounter{equation}{0}
+\setcounter{enumi}{2}
+\setcounter{enumii}{0}
+\setcounter{enumiii}{0}
+\setcounter{enumiv}{0}
+\setcounter{footnote}{0}
+\setcounter{mpfootnote}{0}
+\setcounter{part}{0}
+\setcounter{chapter}{2}
+\setcounter{section}{11}
+\setcounter{subsection}{0}
+\setcounter{subsubsection}{0}
+\setcounter{paragraph}{0}
+\setcounter{subparagraph}{0}
+\setcounter{figure}{0}
+\setcounter{table}{0}
+}
diff -Naur hurd-l4/doc/CVS/Entries hurd-l4-new/doc/CVS/Entries
--- hurd-l4/doc/CVS/Entries     2005-07-13 18:31:27.016522792 +0200
+++ hurd-l4-new/doc/CVS/Entries 2005-07-13 18:30:52.280803424 +0200
@@ -1,14 +1,14 @@
-/ChangeLog/1.5/Tue Mar  1 14:46:25 2005//
-/Makefile.am/1.5/Thu May 13 18:54:18 2004//
-/booting.tex/1.3/Wed Oct 27 20:41:52 2004//
-/ddf_insert_event.fig/1.1/Tue Mar  9 22:07:03 2004//
-/ddf_several_plms.fig/1.1/Mon Mar 22 00:26:50 2004//
-/debugging.tex/1.1/Sun Sep  7 21:49:30 2003//
-/device-drivers.tex/1.5/Thu Oct  7 16:07:30 2004//
-/hurd-on-l4.tex/1.25/Tue Mar  9 22:07:03 2004//
-/introduction.tex/1.4/Sun Sep 28 18:12:59 2003//
-/ipc.tex/1.3/Wed Sep 17 15:12:22 2003//
-/posix.tex/1.3/Mon Sep 15 18:09:45 2003//
-/threads-tasks.tex/1.3/Tue Mar  1 14:46:24 2005//
-/vmm.tex/1.12/Thu Oct 30 02:18:07 2003//
+/ChangeLog/1.5/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.5/Wed Jul 13 15:55:51 2005//
+/booting.tex/1.3/Wed Jul 13 15:55:51 2005//
+/ddf_insert_event.fig/1.1/Wed Jul 13 15:55:51 2005//
+/ddf_several_plms.fig/1.1/Wed Jul 13 15:55:51 2005//
+/debugging.tex/1.1/Wed Jul 13 15:55:51 2005//
+/device-drivers.tex/1.5/Wed Jul 13 15:55:51 2005//
+/hurd-on-l4.tex/1.25/Wed Jul 13 15:55:51 2005//
+/introduction.tex/1.4/Wed Jul 13 15:55:51 2005//
+/ipc.tex/1.3/Wed Jul 13 15:55:51 2005//
+/posix.tex/1.3/Wed Jul 13 15:55:51 2005//
+/threads-tasks.tex/1.3/Wed Jul 13 15:55:51 2005//
+/vmm.tex/1.12/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/doc/ddf_insert_event.eps hurd-l4-new/doc/ddf_insert_event.eps
--- hurd-l4/doc/ddf_insert_event.eps    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/ddf_insert_event.eps        2005-07-13 18:30:52.281803272 
+0200
@@ -0,0 +1,460 @@
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: ddf_insert_event.fig
+%%Creator: /usr/bin/fig2dev Version 3.2 Patchlevel 4
+%%CreationDate: Wed Jun 29 20:29:27 2005
+%%For: address@hidden ()
+%%BoundingBox: 0 0 428 327
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 327 moveto 0 0 lineto 428 0 lineto 428 327 lineto closepath clip 
newpath
+-98.5 382.7 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+  bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+  4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+10 setmiterlimit
+0 slj 0 slc
+ 0.06299 0.06299 sc
+%
+% Fig objects follow
+%
+% 
+% here starts figure with depth 60
+% Polyline
+7.500 slw
+n 5625 1125 m 6525 1125 l 6525 5175 l 5625 5175 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+5640 1380 m 5640 1320 l 5489 1320 l 5609 1350 l 5489 1380 l cp
+eoclip
+n 4050 1350 m
+ 5625 1350 l gs col0 s gr gr
+
+% arrowhead
+n 5489 1380 m 5609 1350 l 5489 1320 l 5489 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+4035 1545 m 4035 1605 l 4186 1605 l 4066 1575 l 4186 1545 l cp
+eoclip
+n 5625 1575 m
+ 4050 1575 l gs col0 s gr gr
+
+% arrowhead
+n 4186 1545 m 4066 1575 l 4186 1605 l 4186 1545 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7215 1380 m 7215 1320 l 7064 1320 l 7184 1350 l 7064 1380 l cp
+eoclip
+n 6525 1350 m
+ 7200 1350 l gs col0 s gr gr
+
+% arrowhead
+n 7064 1380 m 7184 1350 l 7064 1320 l 7064 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+6510 1545 m 6510 1605 l 6661 1605 l 6541 1575 l 6661 1545 l cp
+eoclip
+n 7200 1575 m
+ 6525 1575 l gs col0 s gr gr
+
+% arrowhead
+n 6661 1545 m 6541 1575 l 6661 1605 l 6661 1545 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+5640 2505 m 5640 2445 l 5489 2445 l 5609 2475 l 5489 2505 l cp
+eoclip
+n 4050 2475 m
+ 5625 2475 l gs col0 s gr gr
+
+% arrowhead
+n 5489 2505 m 5609 2475 l 5489 2445 l 5489 2505 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7215 2505 m 7215 2445 l 7064 2445 l 7184 2475 l 7064 2505 l cp
+eoclip
+n 6525 2475 m
+ 7200 2475 l gs col0 s gr gr
+
+% arrowhead
+n 7064 2505 m 7184 2475 l 7064 2445 l 7064 2505 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+6510 2670 m 6510 2730 l 6661 2730 l 6541 2700 l 6661 2670 l cp
+eoclip
+n 7200 2700 m
+ 6525 2700 l gs col0 s gr gr
+
+% arrowhead
+n 6661 2670 m 6541 2700 l 6661 2730 l 6661 2670 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+4035 2670 m 4035 2730 l 4186 2730 l 4066 2700 l 4186 2670 l cp
+eoclip
+n 5625 2700 m
+ 4050 2700 l gs col0 s gr gr
+
+% arrowhead
+n 4186 2670 m 4066 2700 l 4186 2730 l 4186 2670 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+5640 3630 m 5640 3570 l 5489 3570 l 5609 3600 l 5489 3630 l cp
+eoclip
+n 4050 3600 m
+ 5625 3600 l gs col0 s gr gr
+
+% arrowhead
+n 5489 3630 m 5609 3600 l 5489 3570 l 5489 3630 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7215 3630 m 7215 3570 l 7064 3570 l 7184 3600 l 7064 3630 l cp
+eoclip
+n 6525 3600 m
+ 7200 3600 l gs col0 s gr gr
+
+% arrowhead
+n 7064 3630 m 7184 3600 l 7064 3570 l 7064 3630 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+6510 3795 m 6510 3855 l 6661 3855 l 6541 3825 l 6661 3795 l cp
+eoclip
+n 7200 3825 m
+ 6525 3825 l gs col0 s gr gr
+
+% arrowhead
+n 6661 3795 m 6541 3825 l 6661 3855 l 6661 3795 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+4035 3795 m 4035 3855 l 4186 3855 l 4066 3825 l 4186 3795 l cp
+eoclip
+n 5625 3825 m
+ 4050 3825 l gs col0 s gr gr
+
+% arrowhead
+n 4186 3795 m 4066 3825 l 4186 3855 l 4186 3795 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7620 4515 m 7680 4515 l 7680 4364 l 7650 4484 l 7620 4364 l cp
+eoclip
+n 7650 4050 m
+ 7650 4500 l gs col0 s gr gr
+
+% arrowhead
+n 7620 4364 m 7650 4484 l 7680 4364 l 7620 4364 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7905 4035 m 7845 4035 l 7845 4186 l 7875 4066 l 7905 4186 l cp
+eoclip
+n 7875 4500 m
+ 7875 4050 l gs col0 s gr gr
+
+% arrowhead
+n 7905 4186 m 7875 4066 l 7845 4186 l 7905 4186 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+2280 5160 m 2220 5160 l 2220 5311 l 2250 5191 l 2280 5311 l cp
+eoclip
+n 7650 5175 m 7650 5400 l 2250 5400 l
+ 2250 5175 l gs col0 s gr gr
+
+% arrowhead
+n 2280 5311 m 2250 5191 l 2220 5311 l 2280 5311 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7905 5160 m 7845 5160 l 7845 5311 l 7875 5191 l 7905 5311 l cp
+eoclip
+n 2025 5175 m 2025 5625 l 7875 5625 l
+ 7875 5175 l gs col0 s gr gr
+
+% arrowhead
+n 7905 5311 m 7875 5191 l 7845 5311 l 7905 5311 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 7200 1125 m 8100 1125 l 8100 1800 l 7200 1800 l
+ cp gs col0 s gr 
+% Polyline
+n 7200 2250 m 8100 2250 l 8100 2925 l 7200 2925 l
+ cp gs col0 s gr 
+% Polyline
+n 7200 3375 m 8100 3375 l 8100 4050 l 7200 4050 l
+ cp gs col0 s gr 
+% Polyline
+n 7200 4500 m 8100 4500 l 8100 5175 l 7200 5175 l
+ cp gs col0 s gr 
+% Polyline
+ [60] 0 sd
+n 6300 900 m 8325 900 l 8325 5850 l 6300 5850 l
+ cp gs col0 s gr  [] 0 sd
+% Polyline
+n 4500 4050 m 5400 4050 l 5400 5175 l 4500 5175 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+4035 4245 m 4035 4305 l 4186 4305 l 4066 4275 l 4186 4245 l cp
+eoclip
+n 4500 4275 m
+ 4050 4275 l gs col0 s gr gr
+
+% arrowhead
+n 4186 4245 m 4066 4275 l 4186 4305 l 4186 4245 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 3375 1125 m 4050 1125 l 4050 5175 l 3375 5175 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+3390 1380 m 3390 1320 l 3239 1320 l 3359 1350 l 3239 1380 l cp
+eoclip
+n 2700 1350 m
+ 3375 1350 l gs col0 s gr gr
+
+% arrowhead
+n 3239 1380 m 3359 1350 l 3239 1320 l 3239 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 1800 1125 m 2700 1125 l 2700 2250 l 1800 2250 l
+ cp gs col0 s gr 
+% Polyline
+n 1800 2610 m 2700 2610 l 2700 3735 l 1800 3735 l
+ cp gs col0 s gr 
+% Polyline
+n 1800 4050 m 2700 4050 l 2700 5175 l 1800 5175 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+2100 2235 m 2040 2235 l 2040 2386 l 2070 2266 l 2100 2386 l cp
+eoclip
+n 2070 2610 m
+ 2070 2250 l gs col0 s gr gr
+
+% arrowhead
+n 2100 2386 m 2070 2266 l 2040 2386 l 2100 2386 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+ [60] 0 sd
+n 1575 900 m 5850 900 l 5850 5850 l 1575 5850 l
+ cp gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 5400 4725 m
+ 3375 4725 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 4500 5175 m
+ 4050 5175 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 2700 5175 m
+ 3375 4275 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 1800 4725 m 2700 4725 l
+ 3375 3825 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 3375 3825 m
+ 4050 3825 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 3375 4275 m
+ 4050 4275 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 1800 3150 m 2700 3150 l 3375 2925 l
+ 4050 2925 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 2700 3735 m 3375 3510 l
+ 4050 3510 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 1800 1800 m 2700 1800 l
+ 3375 2025 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 3375 2025 m
+ 4050 2025 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 2700 2250 m 3375 2475 l
+ 4050 2475 l gs col0 s gr  [] 0 sd
+/Times-Roman ff 180.00 scf sf
+2250 2475 m
+gs 1 -1 sc (1.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3150 1260 m
+gs 1 -1 sc (2.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5400 3375 m
+gs 1 -1 sc (3.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5400 2250 m
+gs 1 -1 sc (16.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5400 1125 m
+gs 1 -1 sc (11.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 1800 m
+gs 1 -1 sc (14.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 2925 m
+gs 1 -1 sc (20.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 4050 m
+gs 1 -1 sc (10.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 4500 m
+gs 1 -1 sc (15.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6975 1125 m
+gs 1 -1 sc (12.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6975 2250 m
+gs 1 -1 sc (17.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6750 2925 m
+gs 1 -1 sc (18.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6750 1800 m
+gs 1 -1 sc (13.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6975 3375 m
+gs 1 -1 sc (4.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6750 4050 m
+gs 1 -1 sc (9.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7425 4275 m
+gs 1 -1 sc (5.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+8100 4275 m
+gs 1 -1 sc (8.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+8100 5400 m
+gs 1 -1 sc (7.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+2475 5400 m
+gs 1 -1 sc (6.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 4950 m
+gs 1 -1 sc (21.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1575 6075 m
+gs 1 -1 sc (ddf) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+8010 6075 m
+gs 1 -1 sc (hurd) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1890 1530 m
+gs 1 -1 sc (Root Bus) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1890 1755 m
+gs 1 -1 sc (Driver) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1845 2880 m
+gs 1 -1 sc (PCI Bus) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1845 3105 m
+gs 1 -1 sc (Driver) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1935 4365 m
+gs 1 -1 sc (IDE) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1935 4590 m
+gs 1 -1 sc (Driver) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4590 4365 m
+gs 1 -1 sc (NIC) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4590 4590 m
+gs 1 -1 sc (Driver) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3465 1530 m
+gs 1 -1 sc (PLM) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5850 1530 m
+gs 1 -1 sc (Deva) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7245 1485 m
+gs 1 -1 sc (wortel) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7245 2610 m
+gs 1 -1 sc (physmem) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7290 3780 m
+gs 1 -1 sc (ext2) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7290 4815 m
+gs 1 -1 sc (ddwrapper) col0 sh gr
+% here ends figure;
+$F2psEnd
+rs
+showpage
diff -Naur hurd-l4/doc/ddf_several_plms.eps hurd-l4-new/doc/ddf_several_plms.eps
--- hurd-l4/doc/ddf_several_plms.eps    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/ddf_several_plms.eps        2005-07-13 18:30:52.282803120 
+0200
@@ -0,0 +1,227 @@
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: ddf_several_plms.fig
+%%Creator: /usr/bin/fig2dev Version 3.2 Patchlevel 4
+%%CreationDate: Wed Jun 29 20:29:27 2005
+%%For: address@hidden ()
+%%BoundingBox: 0 0 342 314
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 314 moveto 0 0 lineto 342 0 lineto 342 314 lineto closepath clip 
newpath
+-55.9 340.9 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+  bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+  4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+10 setmiterlimit
+0 slj 0 slc
+ 0.06299 0.06299 sc
+%
+% Fig objects follow
+%
+% 
+% here starts figure with depth 50
+% Polyline
+7.500 slw
+gs  clippath
+4035 1320 m 4035 1380 l 4186 1380 l 4066 1350 l 4186 1320 l cp
+4965 1380 m 4965 1320 l 4814 1320 l 4934 1350 l 4814 1380 l cp
+eoclip
+n 4950 1350 m
+ 4050 1350 l gs col0 s gr gr
+
+% arrowhead
+n 4814 1380 m 4934 1350 l 4814 1320 l 4814 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% arrowhead
+n 4186 1320 m 4066 1350 l 4186 1380 l 4186 1320 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+3165 1380 m 3165 1320 l 3014 1320 l 3134 1350 l 3014 1380 l cp
+eoclip
+n 2250 1350 m
+ 3150 1350 l gs col0 s gr gr
+
+% arrowhead
+n 3014 1380 m 3134 1350 l 3014 1320 l 3014 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 1350 900 m 2250 900 l 2250 1980 l 1350 1980 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+1830 1965 m 1770 1965 l 1770 2116 l 1800 1996 l 1830 2116 l cp
+eoclip
+n 1800 2430 m
+ 1800 1980 l gs col0 s gr gr
+
+% arrowhead
+n 1830 2116 m 1800 1996 l 1770 2116 l 1830 2116 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 1350 2430 m 2250 2430 l 2250 3420 l 1350 3420 l
+ cp gs col0 s gr 
+% Polyline
+n 3150 900 m 4050 900 l 4050 3420 l 3150 3420 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+3570 3885 m 3630 3885 l 3630 3734 l 3600 3854 l 3570 3734 l cp
+eoclip
+n 3600 3420 m
+ 3600 3870 l gs col0 s gr gr
+
+% arrowhead
+n 3570 3734 m 3600 3854 l 3630 3734 l 3570 3734 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 1350 3870 m 2250 3870 l 2250 4860 l 1350 4860 l
+ cp gs col0 s gr 
+% Polyline
+n 3150 3870 m 4050 3870 l 4050 4860 l 3150 4860 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+2235 4110 m 2235 4170 l 2386 4170 l 2266 4140 l 2386 4110 l cp
+3165 4170 m 3165 4110 l 3014 4110 l 3134 4140 l 3014 4170 l cp
+eoclip
+n 3150 4140 m
+ 2250 4140 l gs col0 s gr gr
+
+% arrowhead
+n 3014 4170 m 3134 4140 l 3014 4110 l 3014 4170 l  cp gs 0.00 setgray ef gr  
col0 s
+% arrowhead
+n 2386 4110 m 2266 4140 l 2386 4170 l 2386 4110 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+4965 4170 m 4965 4110 l 4814 4110 l 4934 4140 l 4814 4170 l cp
+4035 4110 m 4035 4170 l 4186 4170 l 4066 4140 l 4186 4110 l cp
+eoclip
+n 4050 4140 m
+ 4950 4140 l gs col0 s gr gr
+
+% arrowhead
+n 4186 4110 m 4066 4140 l 4186 4170 l 4186 4110 l  cp gs 0.00 setgray ef gr  
col0 s
+% arrowhead
+n 4814 4170 m 4934 4140 l 4814 4110 l 4814 4170 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 4950 900 m 5850 900 l 5850 4950 l 4950 4950 l
+ cp gs col0 s gr 
+% Polyline
+ [15 45] 45 sd
+n 1125 675 m 4275 675 l 4275 3510 l 1125 3510 l
+ cp gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 1125 3780 m 4275 3780 l 4275 4995 l 1125 4995 l
+ cp gs col0 s gr  [] 0 sd
+% Polyline
+n 900 450 m 6300 450 l 6300 5400 l 900 5400 l
+ cp gs col0 s gr 
+/Times-Roman ff 180.00 scf sf
+1800 1350 m
+gs 1 -1 sc (Root Bus) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 1605 m
+gs 1 -1 sc (Driver) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3600 1350 m
+gs 1 -1 sc (Default) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3600 1605 m
+gs 1 -1 sc (PLM) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5400 1350 m
+gs 1 -1 sc (Deva) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 2700 m
+gs 1 -1 sc (PCI) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 2880 m
+gs 1 -1 sc (Root) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 3060 m
+gs 1 -1 sc (Driver) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3600 4185 m
+gs 1 -1 sc (Special) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3600 4410 m
+gs 1 -1 sc (PLM) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 4230 m
+gs 1 -1 sc (NIC) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1125 5310 m
+gs 1 -1 sc (ddf) col0 sh gr
+% here ends figure;
+$F2psEnd
+rs
+showpage
diff -Naur hurd-l4/doc/debugging.aux hurd-l4-new/doc/debugging.aux
--- hurd-l4/doc/debugging.aux   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/debugging.aux       2005-07-13 18:30:52.282803120 +0200
@@ -0,0 +1,24 @@
+\relax 
address@hidden {chapter}{\numberline {7}Debugging}{63}}
address@hidden {10\p@ }}
address@hidden {10\p@ }}
+\newlabel{debug}{{7}{63}}
address@hidden
+\setcounter{page}{64}
+\setcounter{equation}{0}
+\setcounter{enumi}{10}
+\setcounter{enumii}{0}
+\setcounter{enumiii}{0}
+\setcounter{enumiv}{0}
+\setcounter{footnote}{0}
+\setcounter{mpfootnote}{0}
+\setcounter{part}{0}
+\setcounter{chapter}{7}
+\setcounter{section}{0}
+\setcounter{subsection}{2}
+\setcounter{subsubsection}{0}
+\setcounter{paragraph}{0}
+\setcounter{subparagraph}{0}
+\setcounter{figure}{0}
+\setcounter{table}{0}
+}
diff -Naur hurd-l4/doc/device-drivers.aux hurd-l4-new/doc/device-drivers.aux
--- hurd-l4/doc/device-drivers.aux      1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/device-drivers.aux  2005-07-13 18:30:52.282803120 +0200
@@ -0,0 +1,66 @@
+\relax 
address@hidden {chapter}{\numberline {8}Device Drivers}{65}}
address@hidden {10\p@ }}
address@hidden {10\p@ }}
address@hidden {section}{\numberline {8.1}Requirements}{65}}
address@hidden {section}{\numberline {8.2}Overview}{65}}
address@hidden {subsection}{\numberline {8.2.1}Layer of the drivers}{66}}
address@hidden {subsection}{\numberline {8.2.2}Address spaces}{66}}
address@hidden {subsection}{\numberline {8.2.3}Zero copying and DMA}{66}}
address@hidden {subsection}{\numberline {8.2.4}Physical versus logical device 
view}{67}}
address@hidden {subsection}{\numberline {8.2.5}Things for the future}{67}}
address@hidden {section}{\numberline {8.3}Bus Drivers}{67}}
address@hidden {subsection}{\numberline {8.3.1}Root bus driver}{68}}
address@hidden {subsection}{\numberline {8.3.2}Generic Bus Driver}{68}}
address@hidden {subsection}{\numberline {8.3.3}ISA Bus Driver}{68}}
address@hidden {subsection}{\numberline {8.3.4}PCI Bus Driver}{69}}
address@hidden {section}{\numberline {8.4}Device Drivers}{69}}
address@hidden {subsection}{\numberline {8.4.1}Classes}{69}}
address@hidden {subsection}{\numberline {8.4.2}Human input devices (HID) and 
the console}{70}}
address@hidden {subsection}{\numberline {8.4.3}Generic Device Driver}{70}}
address@hidden {subsection}{\numberline {8.4.4}ISA Devices}{70}}
address@hidden {subsection}{\numberline {8.4.5}PCI Devices}{71}}
address@hidden {section}{\numberline {8.5}Service Servers}{71}}
address@hidden {subsection}{\numberline {8.5.1}Plugin Manager}{71}}
address@hidden {subsection}{\numberline {8.5.2}Deva}{71}}
address@hidden {subsection}{\numberline {8.5.3}$\omega _0$}{72}}
address@hidden {section}{\numberline {8.6}Resource Management}{72}}
address@hidden {subsection}{\numberline {8.6.1}IRQ handling}{72}}
address@hidden {subsubsection}{IRQ based interrupt vectors}{72}}
address@hidden {subsubsection}{IRQ acknowlegdement}{72}}
address@hidden {subsubsection}{Edge versus level triggered IRQs}{72}}
address@hidden {subsubsection}{Multiple interrupt controllers}{73}}
address@hidden {subsubsection}{Shared IRQs}{73}}
address@hidden {subsubsection}{IRQ priorities}{73}}
address@hidden {subsubsection}{IRQ handling by L4/x86}{73}}
address@hidden {subsection}{\numberline {8.6.2}Memory}{73}}
address@hidden {section}{\numberline {8.7}Bootstrapping}{74}}
address@hidden {subsection}{\numberline {8.7.1}deva}{74}}
address@hidden {subsection}{\numberline {8.7.2}Plugin Manager}{74}}
address@hidden {section}{\numberline {8.8}Order of implementation}{74}}
address@hidden {section}{\numberline {8.9}Scenarios}{74}}
address@hidden {subsection}{\numberline {8.9.1}Insert Event}{74}}
address@hidden {figure}{\numberline {8.1}{\ignorespaces New hardware 
detected}}{75}}
+\newlabel{fig:ddf_insert_event}{{8.1}{75}}
address@hidden {figure}{\numberline {8.2}{\ignorespaces Several plugin 
managers}}{77}}
+\newlabel{fig:ddf_several_plms}{{8.2}{77}}
address@hidden {subsection}{\numberline {8.9.2}Several Plugin Managers}{77}}
address@hidden
+\setcounter{page}{78}
+\setcounter{equation}{0}
+\setcounter{enumi}{21}
+\setcounter{enumii}{0}
+\setcounter{enumiii}{0}
+\setcounter{enumiv}{0}
+\setcounter{footnote}{1}
+\setcounter{mpfootnote}{0}
+\setcounter{part}{0}
+\setcounter{chapter}{8}
+\setcounter{section}{9}
+\setcounter{subsection}{2}
+\setcounter{subsubsection}{0}
+\setcounter{paragraph}{0}
+\setcounter{subparagraph}{0}
+\setcounter{figure}{2}
+\setcounter{table}{0}
+}
diff -Naur hurd-l4/doc/hurd-on-l4.aux hurd-l4-new/doc/hurd-on-l4.aux
--- hurd-l4/doc/hurd-on-l4.aux  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/hurd-on-l4.aux      2005-07-13 18:30:52.282803120 +0200
@@ -0,0 +1,9 @@
+\relax 
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
diff -Naur hurd-l4/doc/hurd-on-l4.dvi hurd-l4-new/doc/hurd-on-l4.dvi
--- hurd-l4/doc/hurd-on-l4.dvi  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/hurd-on-l4.dvi      2005-07-13 18:30:52.290801904 +0200
@@ -0,0 +1,111 @@
+÷ƒ’À;è TeX output 
2005.07.09:2003‹ÿÿÿÿ s\ȍ ý®£8 8G 
þ®ÿÿ‘0¶GóDÓítG®G®cmr17¹PšŒqorting–7tthe“GNU“Hurd“to“the“L4“Microk˜ernelŽŸ,’ñóX«Q

cmr12ºMarcus‘ê¨BrinkmannŽŽŽŽŽŸ’¯RAugust‘ê¨2003ŽŽŽŒ‹*
 s\ȍ ý®£8‘YóKñ`y
+
+cmr10²iiŽŽ 8GŽŒ‹ s\ȍ ý®£8 
8G þ5)ý‘#óÂÖN áHaddress@hidden"V
+
+cmbx10Æ1Ž‘2In®9troQÇduction’Øú1ŽŽ¤
e–‘2²1.1Ž‘IGenesis‘Ñv‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢1ŽŽ¡‘21.2Ž‘IW‘ÿ*ªork–UUIn“Progress‘8g‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢3ŽŽ©Sû‘#Æ2Ž‘2BoQÇoting’qÖ5ŽŽ¡‘2²2.1Ž‘ISystem‘UUb•Go“otstrap‘”ԍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢5ŽŽ¡‘I2.1.1Ž‘iBoGoting–UUthe“ia32‘Ûҍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢5ŽŽ¡‘22.2Ž‘IThe–UUloader“óßê<x
+
+cmtt10Çladen‘Ô덍‘ü².ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢6ŽŽ¡‘22.3Ž‘IThe–UUL4“k¸ãernel‘Ôꍍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢7ŽŽ¡‘22.4Ž‘IThe–UUinitial“serv¸ãer“ó
+ b>
+
+cmmi10µŸÿóٓ Rcmr7±0Ž‘
+Á‘ü².ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢7ŽŽ¡‘22.5Ž‘IThe–UUinitial“serv¸ãer“µŸÿ±1Ž‘
+Á‘ü².ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢7ŽŽ¡‘22.6Ž‘IThe–UUroGotservš¸ãer“w˜ortel‘bû‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢7ŽŽ¡‘22.7Ž‘IThe–UUphš¸ãysical“memory“serv˜er“ph˜ysmem‘?‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢8ŽŽ¡‘22.8Ž‘IThe–UUtask“serv¸ãer‘8q‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¢9ŽŽ¡‘22.9Ž‘IThe–UUdevice“access“serv¸ãer“dev‘ÿqÇa‘ÿO‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡10ŽŽ¡‘22.10Ž‘IThe–UUdevice“access“servš¸ãer“arc˜hiv˜e‘¢Ö‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡10ŽŽ¡‘22.11Ž‘IThe–UUroGot“

lesystem‘Û썍‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡10ŽŽ¦‘#Æ3Ž‘2In•®9ter-proQÇcess›ÕTcomm“unication˜(IPC)’‹Èp11ŽŽ¡‘2²3.1Ž‘ICapabilities‘œ

‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡13ŽŽ¡‘I3.1.1Ž‘iBoGotstrapping–UUa“clien•¸ãt-serv“er‘UUconnection‘)¡‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡14ŽŽ¡‘I3.1.2Ž‘iReturning–UUa“capabilitš¸ãy“from“a“serv˜er“to“a“clien˜t‘󍍑ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡17ŽŽ¡‘I3.1.3Ž‘iCopš¸ãying–UUa“capabilit˜y“from“one“clien˜t“to“another“task‘~¹‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ‘¡17ŽŽ¡‘I3.1.4Ž‘iThe–UUtrust“ruleq=‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡25ŽŽ¡‘23.2Ž‘ISync¸ãhronous‘UUIPC‘›ó‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡26ŽŽ¡‘23.3Ž‘INoti

cations‘Æ®‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡27ŽŽ¦‘#Æ4Ž‘2Threads–ÕTand“T‘ÿ
+«asks’ßÇý29ŽŽ¡‘2²4.1Ž‘IAccoun¸ãting‘ã)‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡31ŽŽ¡‘24.2Ž‘IProš¸ãxy–UUT‘ÿ*ªask“Serv˜er‘ã
  
‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡32ŽŽ¡‘24.3Ž‘ISc¸ãheduling‘œ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡32ŽŽŽŸK’ËUUiiiŽŽŒ‹q
 s\ȍ ý®£8‘Y²iv’#…óp®0J
+
+cmsl10ÃCONTENTSŽŽ 8G 
ý䍍‘YÆ5Ž‘hVirtual–ÕTMemory“Managemen®9t’§UŽ33ŽŽ¤
"荍‘h²5.1Ž‘In¸ãtroGduction‘”‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡33ŽŽ¡‘5.1.1Ž’ŸLearning–UUfrom“Unix‘¿P‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡34ŽŽ¡‘5.1.2Ž’ŸLearning–UUfrom“Mac¸ãh‘ø5‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡35ŽŽ¡‘5.1.3Ž’ŸF‘ÿ*ªolloš¸ãwing–UUthe“Hurd“Philosoph˜y‘s‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡35ŽŽ¡‘h5.2Ž‘Self‘UUP¸ãaging‘MӍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡35ŽŽ¡‘h5.3Ž‘BoGotstrap‘ÿ¡‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡37ŽŽ¡‘h5.4Ž‘Memory–UUAlloGcation“P¸ãolicy‘ñ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡37ŽŽ¡‘5.4.1Ž’ŸGuaran¸ãteed–UUF›ÿ*ªrames“and“Extra“F˜rames‘-8‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡37ŽŽ¡‘5.4.2Ž’ŸAn–UUExternal“Memory“Pš¸ãolicy“Serv˜er‘F+‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡38ŽŽ¡‘h5.5Ž‘Con¸ãtainers‘†À‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡39ŽŽ¡‘5.5.1Ž’ŸThe–UUConš¸ãtainer“In˜terface‘Ԛ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡40ŽŽ¡‘5.5.2Ž’ŸMo¸ãving‘UUData‘Û䍍‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡44ŽŽ¡‘h5.6Ž‘Cac¸ãhing–UUStore“Accesses"ü‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡44ŽŽ¡‘5.6.1Ž’ŸCac¸ãhing–UUin“the“File“System‘¢À‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡46ŽŽ¡‘5.6.2Ž’ŸCac•¸ãhing‘UUIn“terfaces‘ꍍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡47ŽŽ¡‘h5.7Ž‘The–UUMemory“Pš¸ãolicy“Serv˜erˍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡47ŽŽ¡‘h5.8Ž‘Sending–UUData“to“Sw¸ãap‘½‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡47ŽŽ¡‘h5.9Ž‘Self‘UUP¸ãaging‘MӍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡48ŽŽ¡‘5.9.1Ž’ŸThe‘UUP¸ãager‘8j‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡48ŽŽ¡‘5.9.2Ž’ŸReusing–UUVirtual“F‘ÿ*ªrames‘Ԙ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡49ŽŽ¡‘5.9.3Ž’ŸT‘ÿ*ªaking–UUAdv‘ÿqÇanš¸ãtage“of“Self-P˜aging‘MM‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡49ŽŽ©:/‘YÆ6Ž‘hThe–ÕTPOSIX“pQÇersonalit®9y’Ç£a51ŽŽ¡‘h²6.1Ž‘Authen¸ãtication‘Tލ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡51ŽŽ¡‘6.1.1Ž’ŸAuthenš¸ãticating–UUa“clien˜t“to“a“serv˜er‘)½‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡52ŽŽ¡‘h6.2Ž‘ProGcess‘UUManagemen¸ãt‘ÿr‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡54ŽŽ¡‘6.2.1Ž’ŸSignals”‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡54ŽŽ¡‘6.2.2Ž’ŸThe–UUÇfork()“²function‘ڍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡55ŽŽ¡‘6.2.3Ž’ŸThe–UUÇexec“²functions‘âø‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡55ŽŽ¡‘h6.3Ž‘Unix–UUDomain“SoGc•¸ãk“ets‘¢ö‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡58ŽŽ¡‘h6.4Ž‘PipGesjg‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡59ŽŽ¡‘h6.5Ž‘Filesystems‘¸‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡59ŽŽ¡‘6.5.1Ž’ŸDirectory–UUloGokup“across“

lesystems‘ÿ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡59ŽŽ¡‘6.5.2Ž’ŸReparen¸ãting‘8`‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡60ŽŽ¦‘YÆ7Ž‘hDebugging’̇63ŽŽ¦‘Y8Ž‘hDevice‘ÕTDriv®9ers’óãN65ŽŽ¡‘h²8.1Ž‘Requiremen¸ãts‘q\‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡65ŽŽ¡‘h8.2Ž‘Ov¸ãerview‘±k‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡65ŽŽ¡‘8.2.1Ž’ŸLa•¸ãy“er–UUof“the“driv¸ãers‘U‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡66ŽŽ¡‘8.2.2Ž’ŸAddress‘UUspaces‘xS‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡66ŽŽ¡‘8.2.3Ž’ŸZero–UUcop¸ãying“and“DMA‘©í‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡66ŽŽ¡‘8.2.4Ž’ŸPh•¸ãysical›UUv“ersus˜logical˜device˜view‘©½‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡67ŽŽ¡‘8.2.5Ž’ŸThings–UUfor“the“future‘ÿR‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡67ŽŽŽŽŒ‹„
 s\ȍ ý®£8‘#ÃCONTENTS’ꢲvŽŽ 8G 
ý䍍‘28.3Ž‘IBus‘UUDriv¸ãers‘ƹ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡67ŽŽ¤

‘I8.3.1Ž‘iRoGot–UUbus“driv¸ãer‘"ú‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡68ŽŽ¡‘I8.3.2Ž‘iGeneric–UUBus“Driv¸ãer‘-—‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡68ŽŽ¡‘I8.3.3Ž‘iISA–UUBus“Driv¸ãer‘bû‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡68ŽŽ¡‘I8.3.4Ž‘iPCI–UUBus“Driv¸ãer‘j‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡69ŽŽ¡‘28.4Ž‘IDevice‘UUDriv¸ãers‘㍍‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡69ŽŽ¡‘I8.4.1Ž‘iClasses‘œ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡69ŽŽ¡‘I8.4.2Ž‘iHuman–UUinput“devices“(HID)“and“the“console‘”;‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡70ŽŽ¡‘I8.4.3Ž‘iGeneric–UUDevice“Driv¸ãer‘Iú‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡70ŽŽ¡‘I8.4.4Ž‘iISA‘UUDevices‘xb‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡70ŽŽ¡‘I8.4.5Ž‘iPCI‘UUDevices‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡71ŽŽ¡‘28.5Ž‘IService‘UUServ¸ãers‘xq‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡71ŽŽ¡‘I8.5.1Ž‘iPlugin‘UUManagerۍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡71ŽŽ¡‘I8.5.2Ž‘iDev‘ÿqÇa‘†º‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡71ŽŽ¡‘I8.5.3Ž‘iµ!Ÿÿ±0Ž‘
  
Tf‘ü².ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡72ŽŽ¡‘28.6Ž‘IResource‘UUManagemen¸ãt‘q2‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡72ŽŽ¡‘I8.6.1Ž‘iIR¸ãQ‘UUhandling‘£‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡72ŽŽ¡‘I8.6.2Ž‘iMemory‘¿Œ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡73ŽŽ¡‘28.7Ž‘IBoGotstrapping‘ª9‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡74ŽŽ¡‘I8.7.1Ž‘idev‘ÿqÇa‘œ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡74ŽŽ¡‘I8.7.2Ž‘iPlugin‘UUManagerۍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡74ŽŽ¡‘28.8Ž‘IOrder–UUof“implemen¸ãtation‘b썍‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡74ŽŽ¡‘28.9Ž‘IScenarios‘êO‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡74ŽŽ¡‘I8.9.1Ž‘iInsert‘UUEv•¸ãen“tTӍ‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡74ŽŽ¡‘I8.9.2Ž‘iSev¸ãeral–UUPlugin“Managers‘”–‘ü.ŽŽ–Ǎ‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘¡77ŽŽŽŽŒ‹K!
 s\ȍ ý®£8‘Y²vi’#…ÃCONTENTSŽŽ 
8GŽŒ‹i s\ȍ ý®£8 8G 
þ3M2‘#óÂÖN ½qcmbx12ÉChapter‘Ç
+1ŽŸ6M2‘#ÅIn‘ÿ8õtro‘Ç
+ductionŽŸ7þЍ‘<óý':
+
+cmti10ÊWhat–Q­is“right“in“this“p›ÿ}'articular“c˜ase,›^ìlike“everything“else,˜r–ÿ}'e“quir“es‘Q­toŽ¤

‘<b–ÿ}'e‘“çexplaine“d.ŽŸøލ’ÆuR‘ÿ}'epublic‘“çV‘+`²b¸ãy‘UUPlatoŽŸ%]ð‘#ó!ÂÖN
 ff
cmbx12Ì1.1Ž‘GæcGenesisŽŸ4M‘#²The–>¶GNU‘>oHurd“is“a“m¸ãulti-user,›vptime“sharing,˜general“purpGose,˜net•¸ãw“ork‘>¶opGeratingŽ¡‘#system.‘
…pThe–Hurd's“existence“is“motiv‘ÿqÇated“bš¸ãy“pGerceiv˜ed“design“
a˜ws“in“UnixŽ¡‘#and–)xother“opGerating“systems:‘
either“the“system“is“o•¸ãv“erly›)xrestrictiv“e˜and˜doGesŽ¡‘#not–
êalloš¸ãw“the“user“to“pGerform“in˜teresting“opGerations“without“the“in˜terv˜en˜tion“ofŽ¡‘#the–£
 administrator“(e.g.‘Zãmounš¸ãt“
le“systems)“or“the“securit˜y“pGolicy“is“o˜v˜erly“laxŽ¡‘#and–ÚWusers“can“harm“eacš¸ãh“other“and“the“system.‘HÈThe“Hurd“emphasizes“
exibilit˜yŽ¡‘#and–UUsecuritš¸ãy‘ÿ*ª.‘qÇThe“fundamen˜tal“philosoph˜y“is:address@hidden<ÊThe›÷op–ÿ}'er“ating˜system˜should˜emp“ower˜users˜while˜maintaining˜strictŽ¡‘<system‘“çse‘ÿ}'curity.Ž¦‘#²SpšGeed,‘æbalthough–É`v¸ãery“imp˜ortanš¸ãt,‘æbis“secondary“to“correctness“and“securit˜y–ÿ*ª.‘ÍçW“eŽ¡‘#ha•¸ãv“e›×Bho“w“ev“er˜reason˜to˜bGeliev“e˜that˜w“e˜ha“v“e˜iden“ti

ed˜impGortan“t˜areas˜whereŽ¡‘#the–ÈHurd,›äÄdue“to“its“design,˜will“not“only“bšGe“able“to“comp˜ete“with“traditionalŽ¡‘#systems,–UUbut“outpGerform“them.ŽŸM2‘#In–V–order“to“ac•¸ãhiev“e–V–this“goal,‘–æa“m•¸ãulti-serv“er›V–arc“hitecture˜has˜bGeen˜em“braced.Ž¡‘#The–5˜initial“prototš¸ãypGe“of“the“Hurd“runs“on“a“deriv‘ÿqÇativ˜e“of“the“Mac˜h“microk˜ernelŽ¡‘#devš¸ãelopGed–Ùat“Carnegie“Mellon“Univ˜ersit˜y“in“the“1980s“and“early“1990s.‘¡TWithŽ¡‘#this–ˆimplemenš¸ãtation,‘±an“authen˜tication“sc˜heme“similar“to“KerbGeros“w˜as“exploredŽ¡‘#whicš¸ãh–riseparates“the“user“iden˜tit˜y“from“the“proGcess“thereb˜y“allo˜wing“tasks“toŽ¡‘#iden•¸ãtify›Nêthemselv“es˜not˜b“y˜an˜inheren“t˜attribute˜but˜using˜unforgeable˜iden“tit“yŽŽŸK’Í1ŽŽŒ‹ig
 s\ȍ ý®£8‘Y²2’½
ÃCHAPTER‘UU1.‘ÇINTR¸ãODUCTIONŽŽ 8G 
ý䍑Y²tokš¸ãens.‘"User–f3space“le“systems“and“a“user“space“virtual“
le“system,‘–VFS,“allo˜w˜edŽ¤‘Yusers–Þto“mounš¸ãt“their“o˜wn“
le“systems“including“NFS‘®and“to“create“their“o˜wnŽ¡‘YspšGecial–&
le“systems“suc¸ãh“as“ftpfs“without“needing“sp˜ecial“p˜ermissions“on“theŽ¡‘Ysystem–Æand“without“harming“other“users.‘°This“w¸ãas“based“on“the“observ‘ÿqÇationŽ¡‘Ythat–the“only“reason“that“users“are“not“pGermitted“to“moun¸ãt“

le“systems“in“UnixŽ¡‘Yis–!that“it“in•¸ãv“olv“es›!t“widdling˜k“ernel˜data˜structures:‘G­with˜the˜VFS‘
outside˜of˜theŽ¡‘Ykš¸ãernel,–UUthis“w˜as“no“longer“an“impGedance.Ž© 
‘YDuring–ðbthis“implemen•¸ãtation,‘“m“uc“h›ðbw“as˜learned˜including:‘?MMac“h˜did˜not˜remo“v“eŽ¡‘Yenough–cÐpGolicy“from“the“kš¸ãernel“and“as“a“result,‘§nits“mec˜hanisms“w˜ere“still“toGoŽ¡‘Yhea•¸ãvy-w“eigh“t.‘;
 
Mac“h›íómo“v“es˜what˜has˜no“w˜bGecome˜POSIX‘íËfrom˜the˜Unix˜k“er-Ž¡‘Ynel–ûinš¸ãto“user“space“and“only“pro˜vides“IPC,“a“sc˜heduler,‘%memory“managemen˜tŽ¡‘Yand–J¦device“drivš¸ãers.‘n7This“design“lea˜v˜es“the“resource“alloGcation“and“managemen˜tŽ¡‘Yscš¸ãhemes–ašin“the“k˜ernel“while“the“resource“utilization“w˜as“mo˜v˜ed“completely“in˜toŽ¡‘Yuser–
Jspace“(e.g.›Yn
le“systems).˜This“made“impšGortan¸ãt“information“ab˜out“resourceŽ¡‘Yutilization–Œinaccessible“to“the“alloGcation“mecš¸ãhanisms“and“th˜us“made“smart“im-Ž¡‘Yplemenš¸ãtations–þof“resource“managers“extremely“dicult“and“far“less“in˜telligen˜tŽ¡‘Ythan–r[their“monolithic“kš¸ãernel“coun˜terparts.‘ÈÚIn“k˜eeping“with“the“Hurd“philos-Ž¡‘Yophš¸ãy–aof“empGo˜w˜ering“the“user,‘ïcit“w˜as“observ˜ed“that“man˜y“applications“couldŽ¡‘Ypro

t–‰ëif“they“could“conš¸ãtrol“ho˜w“the“resources“they“are“using“are“managed,‘—e.g.Ž¡‘Ywhic¸ãh–Ûpages“are“evicted“when“there“is“memory“pressure.‘ËZThis“is“not“only“anŽ¡‘Yimpro•¸ãv“emen“t›7o“v“er˜the˜Mac“h˜sc“heme,‘Cïbut˜also˜o“v“er˜a˜traditional˜Unix-lik“e˜de-Ž¡‘Ysign:‘UÛapplications–|not“only“knoš¸ãw“ho˜w“a“resource“is“bGeing“used“but“also“what“itsŽ¡‘Ycon•¸ãten“ts–Tare.‘UrUnix“knoš¸ãws“ho˜w“a“frame“of“memory“is“allošGcated,‘Te.g.‘Urto“the“blo˜c¸ãkŽ¡‘Ycacš¸ãhe,‘Úbut–ßYit“doGes“not“kno˜w“what“its“con˜ten˜ts“are“nor“the“classes“of“data“andŽ¡‘Ythe–°Àt¸ãypšGe“of“exp˜ected“usage“patterns“of“the“data“t¸ãyp˜es“con¸ãtained“therein.‘„ThisŽ¡‘Yscš¸ãheme–Æsshould“pGermit“an“application“to“mak˜e“far“more“in˜telligen˜t“decisions“thanŽ¡‘Yare–UUpšGossible“with“the“sup˜er

cial“knoš¸ãwledge“that“a“monolithic“k˜ernel“has.Ž¦‘YThe–>±L4“microkš¸ãernel“mak˜es“implemen˜ting“this“philosoph˜y“pGossible:‘Dit“aims“toŽ¡‘Yabsolutely–Xßminimize“the“amounš¸ãt“of“pGolicy“in“the“microk˜ernel“while“pro˜vidingŽ¡‘YpGo•¸ãw“erful›À»Êfoundational‘ÉD²mec“hanisms˜for˜in“ter-proGcess˜comm“unication,‘”memoryŽ¡‘Ymo•¸ãv“emen“t–Ç(mapping“and“gran¸ãting“of“pages“via“address“space“manipulation)“andŽ¡‘Ytask–UUand“thread“creation“and“manipulation.Ž¦‘YThš¸ãus,‘øwhile–¤Ethe“L4“microk˜ernel“tries“to“minimize“the“pGolicy“that“the“k˜ernelŽ¡‘Yenforces–†on“the“soft•¸ãw“are–†running“on“it,‘+Rthe“Hurd“tries“to“minimize“the“pGolicyŽ¡‘Ythat–Ÿtthe“opGerating“system“enforces“on“its“users.‘5'The“Hurd“also“aims“to“pro¸ãvide“aŽ¡‘YPOSIX‘qÊconformanš¸ãt,‘Ÿ{general–rpurpGose“la˜y˜er.‘&This“POSIX‘qÊpGersonalit˜y“of“the“Hurd,Ž¡‘Yho•¸ãw“ev“er,‘§)is›–Ìpro“vided˜for˜con“v“enience˜only˜and˜to˜mak“e˜the˜Hurd˜useful:‘ôµman“yŽ¡‘Yapplications–Ùtarget“a“subset“of“POSIX.“Other“pšGersonalities“can“b˜e“implemen¸ãtedŽ¡‘Yand–n¨used“in“parallel.‘½¿This“default“pšGersonalit¸ãy“of“the“Hurd“is“not“sandb˜o¸ãxed:‘¤litŽ¡‘Ypro•¸ãvides›æcon“v“enien“t˜features˜that˜allo“w˜the˜user˜to˜extend˜the˜system˜so˜thatŽ¡‘Yall–UUPOSIX“compatible“programs“can“takš¸ãe“adv‘ÿqÇan˜tage“of“them.ŽŽŽŒ‹qÓ
 s\ȍ ý®£8‘#Ã1.2.‘ÇWš¸ãORK–UUIN“PR˜OGRESS’Ó.*²3ŽŽ 8G 
ý䍍‘#Ì1.2Ž‘GæcW‘þ¦fork–ffIn“ProgressŽŸ5S‘#²This–ÄAmanš¸ãual“is“less“a“man˜ual“than“a“series“of“notes“abšGout“the“eort“to“do˜cumen¸ãtŽ©

‘#the–UUcurrenš¸ãt“strategy“to“pGort“the“Hurd“to“the“L4“microk˜ernel.ŽŸÎ8‘<ó|{Ycmr8»Remarks–0ab<rout“the“history“of“a“certain“feature“and“implemenÃŽtation“details“areŽ¤
 
€‘<set–¯in“a“smaller“fonšÃŽt“and“separated“from“the“main“text,‘¶¬just“lik˜e“this“paragraph.Ž¡‘<Because–ÕXthis“is“wšÃŽork“in“progress,“there“are“naturally“a“lot“of“suc˜h“commen˜ts.ŽŸN8‘#²The–ÁSpGort“to“L4“wš¸ãas“set“in˜to“action“in“the“summer“of“2002“when“Neal“H.“W‘ÿ*ªal

eldŽ¦‘#w•¸ãen“t–2¾to“the“Univš¸ãersit‘úÿÿat“of“Karlsruhe.‘f?During“that“time,‘9©he“w˜ork˜ed“with“the“L4Ž¦‘#group–xåand“designed“a“basic“IPC,“T‘ÿ*ªask“and“Thread“API‘x­as“wš¸ãell“as“doing“extensiv˜eŽ¦‘#design–¯:address@hidden,‘{éUwš¸ãe“Danno˜wski,›{éKevin“Elphinstone,˜AndreasŽ¦‘#HaebGerlen,–GW‘ÿ*ªolfgang›ãˆJ‘úÿÿahrling,“Josh¸ãua˜LeV‘ÿ*ªasseur,“EspGen˜Sk¸ãoglund,“V‘ÿ*ªolkmarŽ¦‘#Uhlig–UUand“Marcus“V‘úÿÿolp.Ž¤N8‘#A‘public–Lrelease“of“L4“wš¸ãas“made“in“Ma˜y“of“2003.‘Š¬It“w˜as“soGon“after“this“thatŽ¦‘#Marcus–½
 Brinkmann“bšGegan“o•¸ãv“erhauling–½ 
the“prop˜osed“IPC‘½ysystem“and“iden¸ãtifyingŽ¦‘#impGortan•¸ãt›½
a“ws˜and˜scenarios˜that˜had˜bGeen˜originally˜o“v“erloGok“ed.‘ª 
He˜alsoŽ¦‘#revised–m2the“fork“and“exec“strategy“and“bGegan“extensivš¸ãe“w˜ork“on“the“rest“of“theŽ¦‘#system.Ž¡‘#Pš¸ãeter–±,De“Sc˜hrijv˜er“and“Daniel“W‘ÿ*ªagner“started“to“design“the“device“driv˜er“frame-Ž¦‘#w¸ãork.Ž¡‘#Niels–|oMG‘ú¸âuller“wš¸ãas“the“

rst“one“to“realize“that“the“exec“serv˜er“can“bGe“eliminatedŽ¦‘#and›UUga•¸ãv“e˜helpful˜input˜on˜sev“eral˜aspGects˜of˜the˜task˜serv“er˜and˜IPC˜design.Ž¡‘#During–Òthis“proGcess“v‘ÿqÇaluable“input“and“discussion“has“come“from“manš¸ãy“dieren˜tŽ¦‘#corners‘UUincluding:ŽŽŽŒ‹ˆ
 s\ȍ ý®£8‘Y²4’½
ÃCHAPTER‘UU1.‘ÇINTR¸ãODUCTIONŽŽ 
8GŽŒ‹‰ç s\ȍ ý®£8 8G 
þ4;‘#ÉChapter‘Ç
+2ŽŸ7;‘#ÅBo‘Ç
+otingŽŸ9;‘#²A‘¢!mš¸ãultib•Go“ot-complian˜t›¢5b“o“otloader,‘µmfor˜example˜GNU‘¢!GR¸ãUB,˜loads˜the˜loaderŽ¤

‘#program–;šÇladen²,address@hidden,˜µŸÿ±0Ž‘|s²,˜the“rošGotserv¸ãer“and“further“mo˜dules.‘i3The“loaderŽ¡‘#is–
 
Ùstarted,‘³ºpatcš¸ãhes“the“k˜ernel“in˜terface“page,‘³ºand“starts“the“k˜ernel.‘TTThe“k˜ernelŽ¡‘#starts–µ}µŸÿ±0Ž‘1ð²and“the“rošGotserv¸ãer.‘<The“ro˜otserv¸ãer“has“to“deal“with“the“other“mo˜dules.ŽŸ(&Ž‘#Ì2.1Ž‘GæcSystem‘ffb•s3o“otstrapŽŸ€ë‘#²The–UUinitial“part“of“the“b•Go“ot›UUpro“cedure˜is˜system˜sp“eci
c.ŽŸ#‘#ó"ÂÖN address@hidden,›ƒothe“BIOS‘N²will“bGe“one“of“the“
rst“things“to“run.‘REv•¸ãen“tually‘ÿ*ª,˜the‘NõBIOSŽ¡‘#will–æ`start“the“b•Go“otloader.‘LËThe–æ`Hurd“requires“a“mš¸ãultib•Go“ot-complian˜t‘æ`b“o“otloader,Ž¡‘#sucš¸ãh–3las“GNU‘3cGR˜UB.“A‘3ct˜ypical“con
guration“le“en˜try“in“the“Çmenu.list“²
le“ofŽ¡‘#GNU–UUGRš¸ãUB“will“loGok“lik˜e“this:ŽŸ…
&‘#Çtitle–?ý=“The“GNU“Hurd“on“L4Ž¡‘#root–?ý=“(hd0,0)Ž¡‘#kernel–?ý=“/boot/ladenŽ¡‘#module–?ý=“/boot/ia32-kernelŽ¡‘#module–?ý=“/boot/sigma0Ž¡‘#module–?ý=“/boot/wortelŽ¡‘#module–?ý=“/boot/physmemŽ¡‘#module–?ý=“/boot/taskŽ¡‘#module–?ý=“/boot/devaŽ¡‘#module–?ý=“/boot/deva-driversŽ¡‘#module–?ý=“/boot/rootfsŽŽŸK’Ͳ5ŽŽŒ‹ŠV
 s\ȍ ý®£8‘Y²6’ÝßòÃCHAPTER‘UU2.‘ÇBOOTINGŽŽ 8G 
ý䍑Y²GNU–„SGRš¸ãUB“loads–„_the“binary“image“
les“in˜to“memory“and“jumps“to“the“en˜tryŽ¤
‘YpGoin¸ãt‘UUof‘rÇladen².ŽŸ$
̍‘YÌ2.2Ž‘}æcThe–ffloader“ó#߆µTff
cmtt12ÎladenŽŸ‹»‘YÇladen–hâ²is“a“mš¸ãultib•Go“ot–hâcomplian˜t“k˜ernel“from“the“p•Gersp“ectiv˜e–hâof“GNU‘hÝGR˜UB.“ItŽ¡‘YexpšGects–at“least“three“mo˜dules.‘ÀThe“

rst“mo˜dule“is“the“L4“k¸ãernel“image,‘KKtheŽ¡‘Ysecond–ï=mošGdule“is“the“µŸÿ±0Ž‘k°²serv¸ãer“image,‘·and“the“third“mo˜dule“is“the“ro˜otserv¸ãerŽ¡‘Yimage.Ž©š¸‘r»Later,‘’the–lML4“kšÃŽernel“will“supp<rort“the“optional“UTCB‘l'paging“serv˜er“ó×2cmmi8¾Ÿqó¹Aa¨cmr6¼1Ž‘*§»,‘’whic˜hŽ¤
    
€‘rhas––×to“b<re“treated“likšÃŽe“the“other“initial“serv˜ers“b˜y‘µó$ßCÊscmtt8Ïladen».‘²JA‘–Çcommand“line“optionŽ¡‘rto–KãÏladen“»will“alloÃŽw“the“user“to“spš<recify“if“the“third“mo˜dule“is“the“ro˜otservÃŽer“orŽ¡‘r¾Ÿq¼1Ž‘*§».‘Ç
 
If–ÕX¾Ÿq¼1Ž‘ÿÿ»is“used,“the“roš<rotservÃŽer“is“the“fourth“mo˜dule“in“the“list.ŽŸ¸‘YÇladen–Eë²copies“(or“mo•¸ãv“es)–Eëthe“three“executable“images“to“the“righ¸ãt“loGcation“inŽ¤

‘Ymemory‘ÿ*ª,‘according–ŽÀto“their“respGectiv¸ãe“ELF‘Ž±headers.‘It“also“initializes“the“BSSŽ¡‘Ysection–UUto“zero.Ž¦‘r»Laden–évhas“to“deal“with“o•ÃŽv“erlapping–évsource“and“destination“memory“areas“in“anŽ¤
       
€‘rin•ÃŽtelligen“t›Iqw“a“y‘ÿJª.‘#kIt˜curren“tly˜will˜detect˜suc“h˜situations,‘fwbut˜is˜not˜alw“a“ys˜ableŽ¡‘rto–ÕX
nd“a“solution,“evÃŽen“if“one“exists.ŽŸ
+»
‘rIf–9a“memory“area“stretcšÃŽhes“out“to“the“v˜ery“last“page“addressible“in“32“bit,‘RštheŽ¡‘rhigh–^address“of“the“memory“descriptor“will“o•ÃŽv“er
o“w.‘†"This–^is“in“fact“the“b<rehaÃŽviourŽ¡‘rof‘£³Ïkickstart».‘LÛÏladen–ì»currenšÃŽtly“truncates“suc˜h“an“area“b˜y“one“page.‘LÛThis“needsŽ¡‘rclari

cation–ÕXin“the“L4“standard.ŽŸ¸‘Y²Then–öit“searcš¸ãhes“for“the“k˜ernel“in˜terface“page“(KIP)‘èin“the“L4“k˜ernel“image“andŽ¤
‘YmoGdies–UUit“in“the“folloš¸ãwing“w˜a˜y:ŽŸË܍‘hó
!",š
+
+cmsy10¸ŽŽŽ‘r²The–Ýmemory“descriptors“are“
lled“in“according“to“the“memory“la•¸ãy“out‘ÝofŽ¡‘rthe–ósystem.‘]§On“ia32,‘%this“information“is“{“at“least“partially“{“proš¸ãvided“b˜yŽ¡‘rGNU‘UUGR¸ãUB.Ž©1$’ˆ»GNU–GRÃŽUB“seems–to“omit“information“ab<rout“the“memory“that“is“sharedŽ¤
   
€’ˆwith–’the“VšÃŽGA‘ccard.‘‰ÞÏladen“»creates“a“sp<recial“en˜try“for“that“region,‘BSo˜v˜erridingŽ¡’ˆanÃŽy–ÕXprevious“memory“descriptor.ŽŸ±$‘h¸ŽŽŽ‘r²The–[ãstart“and“end“addresses“and“the“enš¸ãtry“pGoin˜t“of“the“initial“serv˜ers“areŽŸ
‘r
lled‘UUin.Ž¦’ˆ»A‘Xfuture–X°vÃŽersion“of“L4“should“suppš<rort“adding“information“ab˜out“the“UTCBŽ¡’ˆarea–S–of“the“initial“ro<rotservšÃŽer“as“w˜ell.‘›ßUn˜til“then,‘mŠthe“ro<rotserv˜er“has“no“cleanŽ¡’ˆw•ÃŽa“y–#Óto“create“a“new“thread“(a“hacšÃŽk“is“used“b˜y“the“ro<rotserv˜er“to“calculateŽ¡’ˆthe–ÕXUTCB“addresses“for“other“threads).ŽŸ±$‘h¸ŽŽŽ‘r²The–UUÇboot_info“²
eld“is“initialized.Ž¦’ˆ»The–sIÏboot_info“»
eld“is“currenšÃŽtly“set“to“the“GNU–s 
GR˜UB“Ïmultiboot_infoŽ¡’ˆ»structure.‘
øThis–Aõonly“wšÃŽorks“for“the“ia32“arc˜hitecture“of“course.‘
øW‘ÿJªe“migh˜tŽ¡’ˆw•ÃŽan“t– ¡to“ha•ÃŽv“e– 
¡a“more“arcšÃŽhitecture“indep<renden˜t“w˜a˜y“to“pass“the“informationŽ¡’ˆabš<rout–{§further“mo˜dules“to“the“ro˜otservšÃŽer.‘©:W‘ÿJªe“also“migh˜t“w˜an˜t“to“gather“theŽ¡’ˆinformation–ÕXprošÃŽvided“b˜y“GNU“GR˜UB“in“a“single“page“(if“it“is“not).ŽŽŽŒ‹%
 s\ȍ ý®£8‘#Ã2.3.‘ÇTHE–UUL4“KERNEL’ê¸Ö²7ŽŽ 8G 
ý䍍‘#Ì2.3Ž‘GæcThe–ffL4“kŒÌernelŽ©߄‘#²The–d#L4“k¸ãernel“initializes“itself“and“then“creates“the“address“spaces“and“threadsŽ¤

‘#for–<the“initial“servš¸ãers“µŸÿ±0Ž‘•¯²and“the“roGotserv˜er.‘]¿It“maps“all“ph˜ysical“memory“idem-Ž¡‘#pGoten•¸ãtly›Hin“to˜µŸÿ±0Ž‘|s²,‘„¯and˜sets˜the˜pager˜of˜the˜roGotserv“er˜thread˜to˜µŸÿ±0Ž‘|s².‘IÒThen˜itŽ¡‘#starts–UUthe“initial“serv¸ãers.ŽŸ&̯‘#Ì2.4Ž‘GæcThe–ffinitial“servŒÌer“ó%·ág£ff

cmmi12ЍŸ(õ²0ŽŽ¦‘#µŸÿ±0Ž‘ÍIJacts–QQas“the“pager“for“the“roGotserv•¸ãer,‘Ransw“ering–QQpage“fault“messages“b¸ãy“map-Ž¡‘#ping–UUthe“page“at“the“fault“address“idempšGoten¸ãtly“in“the“ro˜otserv¸ãer.Ž©¸¹‘<¾Ÿq¼0Ž›±M»can–†¦also“b<re“used“directly“bÃŽy“sending“messages“to“it,‘–daccording“to“the“¾Ÿq¼0Ž˜»RPCŽ¤
   
€‘<proto<rcol.‘›This–Qis“used“bšÃŽy“the“k˜ernel“to“allo<rcate“reserv˜ed“memory‘ÿJª,‘kzbut“can“also“b<reŽ¡‘<used–;—bÃŽy“the“user“to“explicitely“allo<rcate“more“memory“than“single“pages“indirectlyŽ¡‘<via–ÕXpage“faults.Ž¤8º‘#²The–UUthread“ID“of“µŸÿ±0Ž‘ÑȲis“(ÇUserBase²,“1).Ž¦‘<»W‘ÿJªe–ÕXwill“write“all“thread“IDs“in“the“form“(address@hidden,“Ïversion»).Ž¡‘#²Anš¸ãy–½æfpage“will“only“bGe“pro˜vided“to“one“thread.‘?MµŸÿ±0Ž‘:Y²will“return“an“error“if“anotherŽ¤

‘#thread–6#attempts“to“map“or“manipulate“an“fpage“that“has“already“bGeen“giv¸ãen“toŽ¡‘#some–UUother“thread,“ev¸ãen“if“bGoth“threads“reside“in“the“same“address“space.Ž©&̯‘#Ì2.5Ž‘GæcThe–ffinitial“servŒÌer“ЍŸ(õ²1ŽŽŸ߄‘#µŸÿ±1Ž‘9²is–¼”inš¸ãtended“to“pro˜vide“a“paging“service“for“UTCB‘¼ymemory‘ÿ*ª.‘§„This“will“allo˜wŽ¡‘#orthogonal–UUpšGersistence“to“b˜e“implemenš¸ãted.‘qÇIt“is“not“y˜et“suppGorted.ŽŸÇɍ‘#The–UUthread“ID“of“µŸÿ±1Ž‘ÑȲis“(ÇUserBase“²+“1,“1).Ž¦‘#Ì2.6Ž‘GæcThe–ffros3otservšŒÌer“w˜ortelŽŸ߄‘#²The–üñroGotservš¸ãer“that“L4“started“is“the“only“task“in“the“system“whic˜h“threads“canŽ¡‘#pšGerform–éprivileged“system“calls.‘ƒ„So“the“ro˜otservš¸ãer“m˜ust“pro˜vide“wrappGers“forŽ¡‘#the–UUsystem“calls“to“other“unprivileged“system“tasks.ŽŸ¸¹‘<»F‘ÿJªor–\þthis,‘~ça“simple“authenšÃŽtication“sc˜heme“is“required.‘^The“ro<rotserv˜er“can“k˜eepŽ¤
    €‘<a–Ü^small,‘ 
statically“allo<rcated“table“of“threads“whicšÃŽh“are“gran˜ted“access“to“theŽ¡‘<system–d/call“wrapp<rers.‘s¤The“caller“could“proÃŽvide“the“index“in“the“table“for“fastŽ¡‘<O(1)–¶ùloš<rokup“instead“linear“searcÃŽh.‘½Threads“with“access“could“b˜e“allo•ÃŽw“ed–¶ùto“addŽ¡‘<other–Çthreads“or“cšÃŽhange“existing“table“en˜tries.‘ÂYThe“same“sc˜heme“can“b<re“used“inŽ¡‘<the–ÕXdevice“drivšÃŽer“framew˜ork.ŽŸ¸x‘<The–ÕXro<rotservšÃŽer“should“ha˜v˜e“one“thread“p<rer“CPU,“and“run“at“a“high“priorit˜y‘ÿJª.ŽŽŽŒ‹žf
 s\ȍ ý®£8‘Y²8’ÝßòÃCHAPTER‘UU2.‘ÇBOOTINGŽŽ 8G 
ý䍑Y²Our–ñ«roGotservš¸ãer“is“called“w˜ortel,‘šand“also“b•Go“otstraps–ñ«the“opGerating“system.‘PW‘ÿ*ªor-Ž©

‘Ytel–UUth¸ãus“acts“as“a“simple“manager“OS“and“as“a“b•Go“otloader‘UUprogram.ŽŸ%¯‘r»Ideally‘ÿJª,‘iXthere–K¿wšÃŽould“b<re“a“real“manager“OS‘K
 on“top“of“L4“in“whic˜h“y˜ou“can“runŽ¤ 
€‘rdieren•ÃŽt›{˜sand-b<ro“xed˜op<rerating˜systems.‘©5W‘ÿJªortel˜implemen“ts˜only˜some˜rudimen-Ž¡‘rtary–:Kfeatures“sucšÃŽh“a“system“w˜ould“pro˜vide:‘‘Access“to“the“system“memory“andŽ¡‘rexecution–ÕXof“privileged“L4“system“calls.ŽŸE‘rIf–¡yšÃŽou“had“suc˜h“a“real“manager“OS,“then“this“manager“OS‘’w˜ould“start“a“b•<ro“ot-Ž¡‘rloader–ìRto“b•<ro“ot–ìRup“a“sand-bš<roÃŽxed“op˜erating“system.‘ysF›ÿJªor“simplicit•ÃŽy˜,‘íw“ortel‘ìRcurren“tlyŽ¡‘rimplemen•ÃŽts›’âsuc“h˜a˜b•<ro“otloader˜for˜the˜Hurd˜system.‘°ùEv•ÃŽen“tually‘ÿJª,‘
 
-the˜co<rde˜shouldŽ¡‘rbš<re–ÕXsplit“to“alloÃŽw“b˜oth“comp˜onenšÃŽts“to“dev˜elop“indep<renden˜tly‘ÿJª.ŽŸ¥¯‘Y²The–UUroGotservš¸ãer“has“the“follo˜wing“initial“state:ŽŸôö‘h¸ŽŽŽ‘r²Its–UUthread“ID“is“(ÇUserBase“²+“2,“1).ŽŸŠ0‘h¸ŽŽŽ‘r²The–UUprioritš¸ãy“is“set“to“the“255,“the“maxim˜um“v‘ÿqÇalue.ŽŸÏH’ˆ»The–?iroš<rotservÃŽer,‘Yíor“at“least“the“system“call“wrapp˜er,‘Yíshould“run“at“a“vÃŽeryŽ¡’ˆhigh‘ÕXprioritÃŽy‘ÿJª.ŽŸOH‘h¸ŽŽŽ‘r²The–Ÿ¡instruction“pGoinš¸ãter“Ç%eip“²is“set“to“the“en˜try“pGoin˜t,‘²4all“other“registersŽ¦‘rare–UUunde

ned“(including“the“stacš¸ãk“pGoin˜ter).Ž¤Š0‘h¸ŽŽŽ‘r²The–UUpager“is“set“to“µŸÿ±0Ž‘|s².Ž¡‘h¸ŽŽŽ‘r²The–UUexception“handler“is“set“to“Çnilthread².Ž¡‘h¸ŽŽŽ‘r²The–UUscš¸ãheduler“is“set“to“the“roGotserv˜er“thread“itself.ŽŸôö‘YSo–UUthe“

rst“thing“the“roGotservš¸ãer“has“to“do“is“to“set“up“a“simple“stac˜k.ŽŸ‘YThen–“”the“roGotserv¸ãer“should“ev‘ÿqÇaluate“the“Çboot_info“²
eld“in“the“KIP‘“Bto“
ndŽ¦‘Ythe–information“abšGout“the“other“mo˜dules.‘õIt“should“parse“the“information“andŽ¦‘Ycreate–“æthe“desired“initial“tasks“of“the“opšGerating“system.‘-{The“Hurd“uses“a“b˜o˜otŽ¦‘Yscript–õsynš¸ãtax“to“allo˜w“to“pass“information“abšGout“other“initial“tasks“and“the“ro˜otŽ¦‘Ytasks–UUto“eac¸ãh“initial“task“in“a“generalized“manner.ŽŸ%¯‘r»The–õÆexact“n•ÃŽum“bš<rer–õÆand“tÃŽyp˜e“of“initial“tasks“necessary“to“b˜o˜ot“the“Hurd“are“notŽ¤
  
€‘ry•ÃŽet›åDkno“wn.‘öãChances˜are˜that˜this˜list˜includes˜the˜Ïtask˜»serv“er,‘)>the˜ph“ysicalŽ¡‘rmemory–—servšÃŽer,‘£ëthe“device“serv˜ers,‘£ëand“the“b•<ro“ot–—
lesystem.‘²ˆThe“b•<ro“ot‘—lesystemŽ¡‘rmighšÃŽt–Tòb<re“a“small“simple“
lesystem,‘n¡whic˜h“also“includes“the“device“driv˜ers“neededŽ¡‘rto–ÕXaccess“the“real“ro<rot“

lesystem.ŽŸ$úŠ‘YÌ2.7Ž‘}æcThe–ffphšŒÌysical“memory“serv˜er“ph˜ysmemŽŸš‘Y²The–ÁÄphš¸ãysical“memory“serv˜er“is“the“

rst“compGonen˜t“of“the“actual“Hurd“systemŽ¦‘Ythat–1Ais“started“(wš¸ãortel“serv˜es“as“a“manager“OS‘18in“the“bac˜kground,‘8xand“its“pres-Ž¦‘Yence–Vjis“of“no“relev‘ÿqÇance“to“Hurd“programs“other“than“the“fundamenš¸ãtal“core“serv˜ersŽ¦‘YdescribGed–à¾in“this“cš¸ãhapter).‘JêIt“pro˜vides“memory“managemen˜t“routines“that“allo˜wŽ¦‘Ytasks–UUin“the“Hurd“system“to“bGe“self-paged.ŽŽŽŒ‹
        ©Æ s\ȍ 
ý®£8‘#Ã2.8.‘ÇTHE–UUT‘ÿ*ªASK“SER‘þãVER’Üøײ9ŽŽ 8G 
ý䍑#The–ašroGotservš¸ãer“mo˜v˜es“the“ph˜ysical“memory“serv˜er“executable“image“to“its“ELFŽ¤

‘#load–dpaddress“(and“initializes“the“BSS‘d*section“to“zero),‘¨6creates“a“new“addressŽ¡‘#space–%‹and“sev¸ãeral“threads“in“this“address“space,‘/starts“the“

rst“thread“and“thenŽ¡‘#maps–-ðall“the“fpages“co•¸ãv“ering–-ðthe“executable“image“1:1“in¸ãto“the“address“space“atŽ¡‘#the–i£

rst“pagefault“(the“fpage“on“whic¸ãh“the“thread“faulted“is“mappGed“last“-“thisŽ¡‘#makš¸ães–UUthe“thread“fault“repGeatedly“un˜til“the“whole“image“is“mappGed).ŽŸ¾a‘<»W‘ÿJªortel–¾should“folloÃŽw“the“Ïexec()“»proto<rcol“to“startup“the“new“task“as“closely“asŽ¤
        
€‘<p<rossible.‘¹Ho•ÃŽw“ev“er,‘Řthere–•‹is“little“that“wšÃŽortel“can“pro˜vide“to“ph˜ysmem“in“thisŽ¡‘<terms.ŽŸ>a‘#²So,‘³the–mphš¸ãysical“memory“serv˜er“runs“on“mappGed“memory“in“its“o˜wn“addressŽ¤
‘#space,‘‹but–
+˜the“virtual“addresses“of“its“executable“image“coincede“with“the“ph¸ãys-Ž¡‘#ical‘UUaddresses.ŽŸ¯\‘#Then,‘Šýin–Xga“priv‘ÿqÇate“protošGcol“b˜et•¸ãw“een›Xgw“ortel˜and˜ph“ysmem,‘Šýthe˜follo“wing˜happGens:ŽŸꍍ‘/8ä1.ŽŽŽ‘<Phš¸ãysmem–gšrequests“all“system“memory“from“w˜ortel.‘"‰W‘ÿ*ªortel“maps“the“mem-Ž¡‘<ory–UUfrom“µŸÿ±0Ž‘ÑȲand“maps“it“to“ph¸ãysmem.Ž©Vˆ‘R»The–Zûmemory“is“mapp<red,›|dnot“granÃŽted,˜to“allošÃŽw“w˜ortel“(of“whic˜h“w˜e“thinkŽ¤
       
€‘Ras–Þ\a“manager“OS‘Þhere)“to“unmap“and“reco•ÃŽv“er–Þ\the“memory“in“case“of“aŽ¡‘R(p<rossibly–ÕXforced)“system“sh•ÃŽutdo“wn.ŽŸֈ‘/8ä²2.ŽŽŽ‘<F‘ÿ*ªor–ieac¸ãh“mošGdule“that“has“not“b˜een“used“y•¸ãet,‘mýw“ortel–irequests“a“capabilit¸ãyŽ¤

‘<in–F—ph¸ãysmem“that“can“bGe“used“to“map“in“pages“from“the“range“of“memoryŽ¡‘<that–o-the“mošGdule“o˜ccupies.‘¿PThese“capabilities“should“implemen¸ãt“the“sameŽ¡‘<pager–UUinš¸ãterface“that“mappable“

les“implemen˜t.Ž¦‘R»The–aFidea“is“that“these“capabilities“can“bš<re“used“in“the“Ïexec()“»proto˜col“toŽ¤
     
€‘Rstart–ùup“the“tasks“for“these“moš<rdules.‘}µIf“a“mo˜dule“is“not“a“task,‘%%the“capabilitÃŽyŽ¡‘Rcan–N/bš<re“used“to“access“the“mo˜dule“data“bšÃŽy“mapping“it“in˜to“the“address“spaceŽ¡‘RlikšÃŽe–+¿a“

le.‘ÊVPh˜ysmem“can“ev˜en“sw˜ap“out“pages“that“bac˜k“these“obxäjects“onŽ¡‘Rmemory‘ÕXpressure.Ž©
+ǃ‘RSo,‘aÅthe–DßphšÃŽysical“memory“serv˜er“is“in“fact“a“simple“
lesystem“for“these“initialŽ¡‘Rtasks,–ÕXusable“only“for“mapping“op<rerations.Ž¦‘RW‘ÿJªortel–'öcan“then“start“up“the“other“tasks“in“the“mo<rdule“list“using“the“normalŽ¡‘RÏexec()‘ÕX»proto<rcol.ŽŸꍑ#²The–
+&result“is“that“all“tasks“except“for“the“rošGotserv¸ãer“can“b˜e“started“and“manageŽ¤

‘#their–UUmemory“through“phš¸ãysmem“lik˜e“normal“Hurd“tasks.Ž©¯\‘#Later–I´on,‘Lwš¸ãortel“will“pro˜vide“ph˜ysmem“with“further“information“retriev˜ed“fromŽ¡‘#the–UUtask“and“dev‘ÿqÇa“serv¸ãers.ŽŸ$"D‘#Ì2.8Ž‘GæcThe–fftask“servŒÌerŽŸ–w‘#²The–¨
 
task“servš¸ãer“is“the“second“Hurd“serv˜er“started“b˜y“w˜ortel.‘k¨Its“respGonsibilit˜yŽ¡‘#is–!éto“kš¸ãeep“trac˜k“of“alloGcation“of“task“and“thread“IDs“in“the“system,‘,2and“manageŽ¡‘#related–UUresources“(recording“and“restricting“CPU“usage).Ž¦‘#FIXME–UUMore“has“to“bGe“said“here.ŽŽŽŒ‹
+¶å s\ȍ 
ý®£8‘Y²10’ØßñÃCHAPTER‘UU2.‘ÇBOOTINGŽŽ 8G 
ý䍍‘YÌ2.9Ž‘}æcThe–ffdevice“access“servŒÌer“dev‘ÿ™aŽŸ5S‘Y²The–cŒdevice“access“servš¸ãer“dev‘ÿqÇa“is“the“third“Hurd“serv˜er“started“b˜y“w˜ortel.‘œlItŽ¤

‘Yimplemenš¸ãts–¾6access“to“a“lo˜w-lev˜el“device“driv˜er“framew˜ork“in“a“w˜a˜y“that“trans-Ž¡‘Yparenš¸ãtly–;k
ts“in˜to“the“o˜v˜erall“Hurd“system.‘$   
This“means“that“access“to“deviceŽ¡‘Ydrivš¸ãers–©cis“managed“via“capabilities,‘¾fand“that“ph˜ysmem“con˜tainers“are“used“forŽ¡‘Ydata–UUexcš¸ãhange“bGet˜w˜een“a“user-lev˜el“application“and“a“lo˜w-lev˜el“device“driv˜er.Ž©N8‘YIt–
        
ñalso“proš¸ãvides“system“in˜tegration“services“to“the“underlying“lo˜w-lev˜el“deviceŽ¡‘Ydriv•¸ãer›‡ãframew“ork.‘
    
rIn˜particular,‘”‡it˜in“termediates˜access˜to˜privileged˜resourcesŽ¡‘Yand–UUproš¸ãvides“device“driv˜ers“and“related“data“from“the“systems“
lesystem.Ž¦‘YFIXME–UUMore“has“to“bGe“said“here.ŽŸ%_ü‘YÌ2.10Ž’…
ÿüThe–ffdevice“access“servšŒÌer“arc˜hiv˜eŽŸ5S‘Y²The–ôdevice“access“servš¸ãer“needs“to“load“device“driv˜ers“bšGefore“a“ro˜ot“

lesystemŽ¡‘Yservice–™gis“aš¸ãv‘ÿqÇailable.‘=þIn“particular,‘ªlit“needs“to“bGe“able“to“pro˜vide“device“driv˜ersŽ¡‘Yfor–UUthe“roGot“

lesystem“to“the“device“drivš¸ãer“framew˜ork.Ž¦‘YThe–õÕdevice“access“servš¸ãer“arc˜hiv˜e“is“an“arc˜hiv˜e“of“device“driv˜ers“that“is“loaded“b˜yŽ¡‘Ythe›UUb•Go“otloader˜and˜con•¸ãtains˜driv“ers˜necessary˜to˜run˜the˜roGot˜
lesystem.ŽŸ%_ü‘YÌ2.11Ž’…ÿüThe–ffros3ot“
lesystemŽŸ5S‘Y²The–mroGot“
lesystem“is“the“fourth“and“last“Hurd“servš¸ãer“started“b˜y“w˜ortel.‘¸ÜAfterŽ¡‘Ythe–{vrošGot“

lesystem“starts“up“and“has“exc¸ãhanged“the“necessary“b˜o˜otstrap“infor-Ž¡‘Ymation–

ªwith“dev‘ÿqÇa,‘3it“starts“up“the“rest“of“the“opGerating“system“services“from“itsŽ¡‘Y
lesystem.Ž¦‘YThe–­ïrošGot“lesystem“is“the“
rst“program“to“actually“run“in“a“prop˜er“en•¸ãvironmen“t,Ž¡‘Ygivš¸ãen–UUthat“it“can“access“device“driv˜ers,“task“and“ph˜ysmem“services.ŽŸÎ8‘r»F‘ÿJªrom–¸the“time“the“roš<rot“
lesystem“starts“up,‘Ærthe“b˜o˜otstrap“con•ÃŽtin“ues–¸roughly“asŽŸ     
€‘rit–ÕXis“implemenšÃŽted“in“the“Hurd“running“on“GNU“Mac˜h.ŽŽŽŒ‹Ä
 s\ȍ ý®£8 8G þ3‘#ÉChapter‘Ç
+3ŽŸ6‘#ÅIn‘ÿ8õter-pro‘Ç
+cessŽŸ‘#comm‘ÿ8õunication‘       
T{(IPC)ŽŸ:91‘#²The–”ÆHurd“requires“a“capabilitš¸ãy“system.‘0Capabilities“are“used“to“pro˜v˜e“y˜ourŽ¤
‘#iden•¸ãtit“y–
éto“other“servš¸ãers“(authen˜tication),‘:Îand“access“serv˜er-side“implemen˜tedŽ¡‘#ob‘Ž8jects–W´likš¸ãe“devices,–Šn

les,“directories,“terminals,“and–W´other“things.‘=The“serv˜er“canŽ¡‘#use–cCa“capabilitš¸ãy“for“whatev˜er“it“w˜an˜ts.‘!Capabilities“pro˜vide“in˜terfaces.‘!In˜terfacesŽ¡‘#can–ÏöbGe“in•¸ãv“ok“ed›Ïöb“y˜sending˜messages˜to˜the˜capabilit“y‘ÿ*ª.‘á©In˜L4,‘îžthis˜means˜thatŽ¡‘#a–òmessage“is“senš¸ãt“to“a“thread“in“the“serv˜er“pro˜viding“the“capabilit˜y‘ÿ*ª,‘Fwith“theŽ¡‘#idenš¸ãti

er–UUfor“the“capabilit˜y“in“the“message.ŽŸ‘#Capabilities–ƍare“protected“ob‘Ž8jects.‘ÅpAccess“to“a“capabilitš¸ãy“needs“to“bGe“gran˜tedŽ¡‘#bš¸ãy–Othe“serv˜er.‘ZpOnce“y˜ou“ha˜v˜e“a“capabilit˜y‘ÿ*ª,‘Py˜ou“can“cop˜y“it“to“other“tasks“(if“theŽ¡‘#servš¸ãer–7‡pGermits“it,‘=}whic˜h“is“usually“the“case).‘gØIn“the“Hurd,‘=}access“to“capabilitiesŽ¡‘#is›UUalw•¸ãa“ys˜gran“ted˜to˜a˜whole˜task,˜not˜to˜individual˜threads.Ž©ü{‘<»There–¼Åis“no“reason“for“the“servÃŽer“not“to“pš<rermit“it,‘ö¡b˜ecause“the“holder“of“theŽ¤
  
€‘<capabilitšÃŽy–BÅcould“also“just“act“as“a“pro˜xy“for“the“in˜tended“receiv˜er“instead“cop˜yingŽ¡‘<the–f#capabilitšÃŽy“to“it.‘y€The“op<reration“migh˜t“fail“an˜yw˜a˜y‘ÿJª,‘ŠUfor“example“b<recause“ofŽ¡‘<resource–úñshortage,‘DWin“particular“if“the“servšÃŽer“puts“a“quota“on“the“n˜um˜b<rer“ofŽ¡‘<capabilities–ÕXa“user“can“hold.ŽŸ|{‘#²Capabilities–Œ‰proš¸ãvide“t˜w˜o“essen˜tial“services“to“the“Hurd.‘.ÙThey“are“used“to“restrictŽ¤

‘#access–to“a“servš¸ãer“function,‘áand“they“are“the“standard“in˜terface“the“compGonen˜tsŽ¡‘#in–Éothe“Hurd“use“to“commš¸ãunicate“with“eac˜h“others.‘ÎTh˜us,‘æuit“is“impGortan˜t“thatŽ¡‘#their–UUimplemen¸ãtation“is“fast“and“secure.Ž¦‘<»There–\jare“sevšÃŽeral“w˜a˜ys“to“implemen˜t“suc˜h“a“capabilit˜y“system.‘\UA‘\Gmore“tradi-Ž¤
       €‘<tional–ÌÐdesign“wšÃŽould“b<re“a“global,‘΅
trusted“capabilit˜y“serv˜er“that“pro˜vides“capabil-Ž¡‘<ities–Ôto“all“its“users.‘ƶThe“L4“redirector“could“b<re“used“to“reroute“all“clienÃŽt“tracŽ¡‘<automatically–ÕXthrough“this“servšÃŽer.‘Ç
 
This“approac˜h“has“sev˜eral“disadv‡an˜tages:ŽŸ¤‘H¿þó¾KÈcmsy8ÁŽŽŽ‘R»It–n0adds“a“lot“of“o•ÃŽv“erhead–n0to“evÃŽery“single“RPC,“b<recause“all“trac“has“toŽ¡‘Rb<re–“routed“through“the“capabilitšÃŽy“serv˜er,‘h!whic˜h“m˜ust“then“p<rerform“theŽ¡‘RauthenšÃŽtication–ÕXon“the“serv˜er's“b<rehalf.ŽŽŸK’Êÿ²11ŽŽŒ‹
ÌÇ s\ȍ 
ý®£8‘Y²12‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G 
ý䍍‘~¿þÁŽŽŽ’ˆ»It–ÌwšÃŽould“b<re“dicult“to“cop˜y“a“capabilit˜y“to“another“task.‘j{Either“the“capŽ¤
  
€’ˆserv•ÃŽer›ãòw“ould˜ha“v“e˜to˜pro“vide˜in“terfaces˜for˜clien“ts˜to˜do˜it,‘ç˜or˜it˜w“ould˜b<reŽ¡’ˆha•ÃŽv“e–Hto“knošÃŽw“the“message“format“for“ev˜ery“in˜terface“and“do“it“automati-Ž¡’ˆcally‘ÿJª.Ž©ÔB‘~¿þÁŽŽŽ’ˆ»It–XØwÃŽould“bš<re“a“single“p˜oinÃŽt“of“failure.‘
 
If“it“had“a“bug“and“crashed,‘q¿the“wholeŽ¡’ˆsystem–ÕXwÃŽould“b<re“aected.Ž¦‘~¿þÁŽŽŽ’ˆ»Users–ÕXcould“not“a•ÃŽv“oid–ÕXit,“it“wÃŽould“bš<re“enforced“system“co˜de.Ž¦‘~¿þÁŽŽŽ’ˆ»It–ÕXis“in
exible.‘Ç It“wÃŽould“b<re“hard“to“replace“or“extend“at“run-time.Ž©(…
‘rAnother–\approacšÃŽh“is“tak˜en“b˜y“CORBA‘Iwith“IORs.‘¥+IORs“con˜tain“long“randomŽ¡‘rn•ÃŽum“b<rers›+Äwhic“h˜allo“w˜the˜serv“er˜to˜iden“tify˜a˜user˜of˜an˜obxäject.‘ÊeThis˜approac“hŽ¡‘ris–ÕXnot“feasible“for“the“folloÃŽwing“reasons:Ž¦‘~¿þÁŽŽŽ’ˆ»EvÃŽen›­go•<ro“d˜random˜n•ÃŽum“b•<rers˜can˜b“e˜guessed.‘”Long˜enough˜random˜nÃŽum-Ž¡’ˆbš<rers–×ócan“reduce“the“likÃŽeliho˜o˜d“to“arbitrary“small“n•ÃŽum“b˜ers,‘ؚthough‘×ó(b˜elo“wŽ¡’ˆthe–ÕXprobabilitšÃŽy“of“a“hardw˜are“failure).Ž©ÔB‘~¿þÁŽŽŽ’ˆ»Go•<address@hidden<address@hidden,‘¬xand“is“sloÃŽw“to“generate.‘¶Go˜o˜dŽ¡’ˆpseudo–3random“is“faster,‘J‡but“it“is“still“dicult“to“generate.‘à]The“randomŽ¡’ˆn•ÃŽum“bš<rer–ÕXgenerator“wÃŽould“b˜ecome“a“critical“part“of“the“op˜erating“system.Ž¦‘~¿þÁŽŽŽ’ˆ»The–/'random“n•ÃŽum“bš<rer–/'had“to“b˜e“transfered“in“evÃŽery“single“message.‘ºBecauseŽ¡’ˆit–L
+wšÃŽould“ha˜v˜e“to“b<re“long,‘i¶it“w˜ould“ha˜v˜e“a“signi
can˜t“negativ˜e“impact“onŽ¡’ˆIPC‘ÕXp<rerformance.ŽŸº‘Y²The– 
GHurd“implemenš¸ãts“the“capabilit˜y“system“loGcally“in“eac˜h“task.‘ҜA‘ 
commonŽ¤
‘Ydefault–ýªimplemenš¸ãtation“will“bGe“shared“b˜y“all“programs.‘jÅHo˜w˜ev˜er,‘'¿a“maliciousŽ¡‘Yunš¸ãtrusted–،program“can“do“nothing“to“disturb“the“comm˜unication“of“other“tasks.Ž¡‘YA‘ucapabilitš¸ãy–Æis“iden˜ti
ed“in“the“clien˜t“task“b˜y“the“serv˜er“thread“and“a“loGcalŽ¡‘Yiden•¸ãti
er›¬°(whic“h˜can˜bGe˜dieren“t˜from˜clien“t˜to˜clien“t).‘wØThe˜serv“er˜thread˜willŽ¡‘Yreceivš¸ãe–õ
messages“for“the“capabilities.‘ PîThe“
rst“argumen˜t“in“the“message“isŽ¡‘Ythe–ãcapabilitš¸ãy“iden˜ti
er.‘W¡Although“ev˜ery“task“can“get“dieren˜t“IDs“for“the“sameŽ¡‘Ycapabilit•¸ãy‘ÿ*ª,‘Üra›¾9w“ell-bGeha“ving˜serv“er˜will˜giv“e˜the˜same˜ID‘¾to˜a˜clien“t˜whic“h˜alreadyŽ¡‘Yhas–Êña“capabilitš¸ãy“and“gets“the“same“capabilit˜y“from“another“clien˜t.‘C¦So“clien˜ts“canŽ¡‘Ycompare–^_capabilitš¸ãy“IDs“from“the“serv˜er“n˜umerically“to“c˜hec˜k“if“t˜w˜o“capabilitiesŽ¡‘Yare–A
…the“same,‘E|but“only“if“one“of“the“t•¸ãw“o–A…
IDs“is“receivš¸ãed“while“the“clien˜t“alreadyŽ¡‘Yhad–UUthe“other“one.Ž©¼x‘YBecause–
+áaccess“to“a“capabilitš¸ãy“m˜ust“bGe“restricted,‘Åthe“serv˜er“needs“to“bGe“carefulŽ¡‘Yin–µRonly“alloš¸ãwing“registered“and“kno˜wn“users“to“access“the“capabilit˜y–ÿ*ª.‘‘¿F“or‘µRthis,Ž¡‘Ythe–Ãservš¸ãer“m˜ust“bGe“sure“that“it“can“determine“the“sender“of“a“message.‘»InŽ¡‘YL4,‘ý¾this–Üis“easy“on“the“surface:‘<The“kš¸ãernel“pro˜vides“the“receiving“thread“withŽ¡‘Ythe–Šhsender's“thread“ID,“whicš¸ãh“also“con˜tains“the“task“ID‘Šin“the“v˜ersion“

eld.Ž¡‘YHo•¸ãw“ev“er,‘!Öthe›÷serv“er˜m“ust˜also˜kno“w˜for˜sure˜if˜this˜task˜is˜the˜same˜task˜that˜itŽ¡‘Yga•¸ãv“e–„access“to“the“capabilitš¸ãy‘ÿ*ª.‘ÿuComparing“the“task“IDs“n˜umerically“is“not“go•Go“dŽ¡‘Yenough,‘bthe–ÿ%servš¸ãer“m˜ust“also“someho˜w“ha˜v˜e“kno˜wledge“or“in
uence“on“ho˜w“taskŽ¡‘YIDs–UUare“reused“when“tasks“die“and“are“created.Ž¦‘YThe–ü®same“is“true“for“the“clien¸ãt,›iof“course,˜whicš¸ãh“trusts“the“serv˜er“and“th˜us“m˜ustŽ¡‘YbGe–4Ðsure“that“it“is“not“tric•¸ãk“ed›4Ðin“to˜trusting˜on˜unreliable˜data˜from˜an˜impGoster,Ž¡‘Yor–UUsends“sensitiv¸ãe“data“to“it.ŽŽŽŒ‹
׉ s\ȍ 
ý®£8‘#Ã3.1.‘ÇCAP‘ÿ*ªABILITIES’ï¸Ö²13ŽŽ 8G 
ý䍑<»The–¬)Ïtask“»servšÃŽer“w˜an˜ts“to“reuse“thread“n˜um˜bš<rers“b˜ecause“that“makÃŽes“b˜est“useŽ¤
    €‘<of–_kšÃŽernel“memory‘ÿJª.‘–6Reusing“task“IDs,‘+¡the“v˜ersion“
eld“of“a“thread“ID,“is“not“soŽ¡‘<imp<rortanšÃŽt,‘Ÿ*but–‘žthere“are“only“14“bits“for“the“v˜ersion“
eld“(and“the“lo˜w˜er“six“bitsŽ¡‘<mÃŽust–ÕXnot“bš<re“all“zero).‘Ç 
So“a“thread“ID“is“b˜ound“to“b˜e“reused“ev•ÃŽen“tually‘ÿJª.ŽŸ» 
‘<Using–$Othe“všÃŽersion“
eld“in“a“thread“ID‘$"as“a“generation“n˜um˜bš<rer“is“not“go˜o˜d“enough,Ž¡‘<b<recause–B’it“is“so“small.‘ÎEvšÃŽen“on“64-bit“arc˜hitectures,›]àwhere“it“is“32“bit“long,˜itŽ¡‘<can›ÕXev•ÃŽen“tually˜o“v“er
o“w.Ž©Eԍ‘#²The–´ábšGest“w•¸ãa“y–´áto“prev•¸ãen“t–´áthat“a“task“can“b˜e“tric•¸ãk“ed›´áin“to˜talking˜to˜an˜impGoster˜isŽ¤

‘#to›:Íha•¸ãv“e˜the˜Çtask˜²serv“er˜notify˜the˜task˜if˜the˜comm“unication˜partner˜dies.‘hïTheŽ¡‘#Çtask–À‚²servš¸ãer“m˜ust“guaran˜tee“that“the“task“ID‘Àgis“not“reused“un˜til“all“tasks“thatŽ¡‘#got–i·sucš¸ãh“a“noti

cation“ac˜kno˜wledge“that“it“is“proGcessed,‘nÏand“th˜us“no“danger“ofŽ¡‘#confusion–UUexists“an¸ãymore.ŽŸč‘#The–üžÇtask“²servš¸ãer“pro˜vides“references“to“task“IDs“in“form“of“Êtask–BJinfo“c–ÿ}'ap“abilities².Ž¡‘#If–s*a“task“has“a“task“info“capabilitš¸ãy“for“another“task,‘zŸit“prev˜en˜ts“that“this“otherŽ¡‘#task'address@hidden,‘kÀand“it“also“mak˜es“sure“that“taskŽ¡‘#death–UUnoti

cations“are“deliv¸ãered“in“that“case.ŽŸÅԍ‘<»Because–»—only“the“Ïtask“»servšÃŽer“can“create“and“destro˜y“tasks,‘À¾and“assign“task“IDs,Ž¤
       
€‘<there–ÉHis“no“need“to“hold“sucšÃŽh“task“info“capabilities“for“the“Ïtask“»serv˜er,‘˲nor“do<resŽ¡‘<the–‡ÙÏtask“»servšÃŽer“need“to“hold“task“info“capabilities“for“its“clien˜ts.‘­KThis“a˜v˜oids“theŽ¡‘<obÃŽvious›aËb•<ro“otstrap˜problem˜in˜pro•ÃŽviding˜capabilities˜in˜the˜Ïtask˜»serv“er.‘
 
œThis˜willŽ¡‘<ev•ÃŽen›Òw“ork˜if˜the˜Ïtask˜»serv“er˜is˜not˜the˜real˜Ïtask˜»serv“er,‘Ò­but˜a˜pro“xy˜task˜serv“erŽ¡‘<(see–ÕXsection“4.2“on“page“32).Ž¦‘#²As–;`task“IDs“are“a“global“resource,address@hidden

‘#not–palloš¸ãw“for“a“DoS-attac˜k“b˜y“exhausting“the“task“ID‘\n˜um˜bGer“space,‘8see“sectionŽ¡‘#4–UUon“page“29“for“more“details.ŽŸ&ፍ‘#Ì3.1Ž‘GæcCapabilitiesŽŸé‘#²This–UUsubsection“conš¸ãtains“implemen˜tation“details“abGout“capabilities.ŽŸč‘#A‘žVserv¸ãer–žiwill“usually“opGerate“on“ob‘Ž8jects,‘°­and“not“capabilities.‘MIn“the“case“of“aŽ¡‘#
lesystem,–UUthis“could“bGe“
le“ob‘Ž8jects,“for“example.ŽŸÅԍ‘<»In–¤the“Hurd,‘×Â
lesystem“servšÃŽers“ha˜v˜e“to“k˜eep“dieren˜t“obxäjects“for“eac˜h“time“aŽ¤  
€‘<
le–¶.is“loš<rokÃŽed“up“(or“\op˜ened"),‘¼ib˜ecause“some“state,‘¼ifor“example“authenÃŽtication,Ž¡‘<opš<ren–YR
ags“and“record“lo˜cÃŽks,‘zPare“asso˜ciated“not“with“the“
le“directly‘ÿJª,‘zPbut“withŽ¡‘<this–
+yinstance“of“op<rening“the“
le.‘fƒSucšÃŽh“a“state“structure“(\creden˜tial")“will“alsoŽ¡‘<conšÃŽtain–J¤a“p<roin˜ter“and“reference“to“the“actual“

le“no<rde.‘'F‘ÿJªor“simplicit˜y‘ÿJª,‘g÷w˜e“willŽ¡‘<assume–ÕXthat“the“capabilitÃŽy“is“assoš<rciated“with“a“

le“no˜de“directly‘ÿJª.Ž¦‘#²T‘ÿ*ªo–Lýproš¸ãvide“access“to“the“ob‘Ž8ject“to“another“task,‘N¨the“serv˜er“creates“a“capabilit˜y‘ÿ*ª,Ž¤

‘#and–UÞassošGciates“it“with“the“ob‘Ž8ject“(b¸ãy“setting“a“ho˜ok“v‘ÿqÇariable“in“the“capabilit¸ãy).Ž¡‘#F›ÿ*ªrom–H=this“capabilit¸ãy˜,›„÷the“serv¸ãer“can“either“create“send“references“to“itself,˜orŽ¡‘#to–cTother“tasks.‘›ÅIf“the“serv¸ãer“creates“send“references“for“itself,‘¦Ôit“can“use“theŽ¡‘#capabilitš¸ãy–]‡just“as“it“can“use“capabilities“implemen˜ted“b˜y“other“serv˜ers.‘Š\ThisŽ¡‘#makš¸ães–F×access“to“loGcally“and“remotely“implemen˜ted“capabilities“iden˜tical.‘lòIf“y˜ouŽŽŽŒ‹ç¯
 s\ȍ 
ý®£8‘Y²14‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G 
ý䍑Y²write–opcošGde“to“w¸ãork“on“capabilities,‘uöit“can“b˜e“used“for“remote“ob‘Ž8jects“as“w¸ãell“asŽ¤

‘Yfor–UUloGcal“ob‘Ž8jects.Ž©Ä獑YIf–³the“servš¸ãer“creates“a“send“reference“for“another“task“(a“clien˜t),‘Óxa“new“capabilit˜yŽ¡‘YID›÷ªwill–÷ÓbGe“created“for“this“task.‘YBThis“ID˜will“only“bGe“v‘ÿqÇalid“for“this“task,‘
 
sandŽ¡‘Yshould–UUbGe“returned“to“the“clien¸ãt.Ž¦‘YThe–²\clienš¸ãt“itself“will“create“a“capabilit˜y“ob‘Ž8ject“from“this“capabilit˜y“ID.“TheŽ¡‘Ycapabilitš¸ãy–ê¦will“also“con˜tain“information“abGout“the“serv˜er,‘ÿýfor“example“the“serv˜erŽ¡‘Ythread–UUwhicš¸ãh“should“bGe“used“for“sending“messages“to“the“capabilit˜y‘ÿ*ª.Ž¦‘YIf–¢»the“clienš¸ãt“w˜an˜ts“to“send“a“message,‘öit“will“send“it“to“the“pro˜vided“serv˜erŽ¡‘Ythread,‘6and–îuse“the“capabilitš¸ãy“ID‘Ûit“got“from“the“serv˜er“as“the“

rst“argumen˜t“inŽ¡‘Ythe–ŠÏRPC.“The“servš¸ãer“receiv˜es“the“message,‘³Qand“no˜w“has“to“loGok“up“the“capabilit˜yŽ¡‘YID–UUin“the“list“of“capabilties“for“this“task.ŽŸö‘r»The–‰lservšÃŽer“kno˜ws“the“task“ID‘‰Yfrom“the“v˜ersion“
eld“of“the“sender's“thread“ID.“ItŽ¤       
€‘rcan–ýÀlo<address@hidden:4can–:Nb<re“an“index“inšÃŽto“an“arra˜y‘ÿJª,‘SŒso“the“serv˜er“only“needs“to“p<rerform“a“rangeŽ¡‘rc•ÃŽhec“k.‘ªžThis›Òallo“ws˜to˜v“erify˜quic“kly˜that˜the˜user˜is˜allo“w“ed˜to˜access˜the˜obxäject.ŽŸ
+àˆ‘rThis– 
is“not“enough“if“sevÃŽeral“systems“run“in“parallel“on“the“same“host.‘°8Then“theŽ¡‘rvšÃŽersion–à‚ID‘àfor“the“threads“in“the“other“systems“will“not“b<re“under“the“con˜trol“ofŽ¡‘rthe–zæHurd's“Ïtask“»servšÃŽer,‘Œýand“can“th˜us“not“b<re“trusted.‘¨úThe“serv˜er“can“still“use“theŽ¡‘rvšÃŽersion–%*
eld“to“
nd“out“the“task“ID,“whic˜h“will“b<re“correct“ó'#Ñfcmti8Òif–\­the“thr•¥e“ad–\­is“p¥artŽ¡‘rof–ߐthe“same“subsystem».‘´ÜIt–ž‹also“has“to“vÃŽerify“that“the“thread“b<relongs“to“this“sub-Ž¡‘rsystem.‘j¦Hopš<refully–Úthe“subsystem“will“b˜e“enco˜ded“in“the“thread“ID.“Otherwise,Ž¡‘rthe–€Ïtask“»servšÃŽer“has“to“b<re“consulted“(and,‘‘
…
assuming“that“thread“n˜um˜b<rers“are“notŽ¡‘rshared–ÕXbšÃŽy“the“dieren˜t“systems,“the“result“can“b<re“cac˜hed).ŽŸ
…
ö‘Y²The–Ô"servš¸ãer“reads“out“the“capabilit˜y“assoGciated“with“the“capabilit˜y“ID,“and“in-Ž¤
‘Yv•¸ãok“es–UUthe“serv¸ãer“stub“according“to“the“message“ID“
eld“in“the“message.Ž¦‘YAfter–ó¦the“message“is“proGcessed,‘9the“serv¸ãer“sends“it“reply“to“the“sender“threadŽ¡‘Ywith–UUa“zero“timeout.ŽŸö‘r»Serv•ÃŽers›ð6m“ust˜nev“er˜blo<rc“k˜on˜sending˜messages˜to˜clien“ts.‘ºEv“en˜a˜small˜timeoutŽ¤
  
€‘rcan–,Îb<re“used“for“DoS-attacšÃŽks.‘ŽòThe“clien˜t“can“alw˜a˜ys“mak˜e“sure“that“it“receiv˜es“theŽ¡‘rreply–ýbšÃŽy“using“a“com˜bined“send“and“receiv˜e“op<reration“together“with“an“in
niteŽ¡‘rtimeout.ŽŸ…
ö‘Y²The›‰abGo•¸ãv“e˜sc“heme˜assumes˜that˜the˜serv“er˜and˜the˜clien“t˜already˜ha“v“e˜task˜infoŽ¤

‘Ycaps–Ҕfor“the“respšGectiv¸ãe“other“task.‘é„This“is“the“normal“case,address@hidden:;‘Y²If–0the“clienš¸ãt“and“the“serv˜er“do“not“kno˜w“abGout“eac˜h“other“y˜et,‘/æthen“they“canŽ¡‘Yb•Go“otstrap–ù†a“connection“without“suppGort“from“an¸ãy“other“task“except“the“ÇtaskŽ¡‘Y²servš¸ãer.‘â‚The–Ð>purpGose“of“the“initial“handshak˜e“is“to“giv˜e“bGoth“participan˜ts“aŽ¡‘Ycš¸ãhance–ito“acquire“a“task“info“cap“for“the“other“participan˜ts“task“ID,“so“they“canŽ¡‘YbGe–ûsure“that“from“there“on“they“will“alw•¸ãa“ys–ûtalk“to“the“same“task“as“they“talk¸ãedŽ¡‘Yto‘UUbGefore.ŽŽŽŒ‹÷,
 s\ȍ ý®£8‘#Ã3.1.‘ÇCAP‘ÿ*ªABILITIES’ï¸Ö²15ŽŽ 8G 
ý䍑#ÆPreconditions‘
+²The–‰Xclienš¸ãt“kno˜ws“the“thread“ID‘‰Kof“the“serv˜er“thread“that“re-Ž¤
‘#ceiv¸ães–¼Ùand“prošGcesses“the“b˜o˜otstrap“messages.‘>óSome“other“task“migh¸ãt“hold“a“taskŽ¡‘#info–UUcapabilitš¸ãy“to“the“serv˜er“the“clien˜t“w˜an˜ts“to“connect“to.ŽŸl卑<»If–y´no“sucšÃŽh“other“tasks“exists,‘¢Ëthe“proto<rcol“will“still“w˜ork.‘´3Ho˜w˜ev˜er,‘¢Ëthe“clien˜tŽ¤
  
€‘<mighšÃŽt–Øànot“get“a“connection“to“the“serv˜er“that“run“at“the“time“the“clien˜t“startedŽ¡‘<the–Lproto<rcol,‘i¾but“rather“to“the“servšÃŽer“that“run“at“the“time“the“clien˜t“acquiredŽ¡‘<the–ÕXtask“info“cap“for“the“servšÃŽer's“task“ID“(after“step“1“b<relo˜w).ŽŸ¦6‘<This–P:is“similar“to“hošÃŽw“sending“signals“w˜orks“in“Unix:‘¼åT–ÿJªec˜hnically“,‘nóat–P:the“timeŽ¡‘<address@hidden,‘ƒÈand“press“en˜ter,‘ƒÈy˜ou“do“not“kno˜w“if“the“pro<rcess“with“theŽ¡‘<PID‘,k203–,yšÃŽou“though˜t“of“will“receiv˜e“the“signal,‘BKor“some“other“pro<rcess“that“gotŽ¡‘<the–ˆhPID‘ˆ:in“the“time“b<ret•ÃŽw“een›ˆhy“ou˜getting˜the˜information˜ab<rout˜the˜PID‘ˆ:andŽ¡‘<writing–ÕXthe“Ïkill»-command.ŽŸì䍑#²FIXME:–ȀHere“should“bšGe“the“pseudo“co˜de“for“the“proto˜col.‘ËGF‘ÿ*ªor“no•¸ãw,‘åJy“ou‘Ȁha“v“eŽ¤

‘#to–UUtakš¸ãe“it“out“of“the“long“v˜ersion.ŽŸ‘/8ä1.ŽŽŽ‘<The–×±clienš¸ãt“acquires“a“task“info“capabilit˜y“for“the“serv˜er's“task“ID,“eitherŽ¡‘<directly–³òfrom“the“Çtask“²servš¸ãer,‘˙or“from“another“task“in“a“capabilit˜y“cop˜y‘ÿ*ª.Ž¡‘<F‘ÿ*ªrom–üothat“pGoinš¸ãt“on,‘7the“clien˜t“can“bGe“sure“to“alw˜a˜ys“talk“to“the“same“taskŽ¡‘<when–UUtalking“to“the“serv¸ãer.Ž©Lk‘<Of–Ðåcourse,‘ïÈif“the“clienš¸ãt“already“has“a“task“info“cap“for“the“serv˜er“it“doGesŽ¡‘<not–UUneed“to“do“an¸ãything“in“this“step.ŽŸ?

‘R»As–í©explained“abš<ro•ÃŽv“e,‘ó½if–í©the“clienÃŽt“do˜es“not“ha•ÃŽv“e›í©an“y˜other˜task˜holding˜theŽ¤
 
€‘Rtask–á^info“cap“already‘ÿJª,‘ä`it“has“no“secure“information“ab<rout“what“this“task“isŽ¡‘Rfor–ÕXwhicÃŽh“it“got“a“task“info“cap.ŽŸ¿

‘/8ä²2.ŽŽŽ‘<The–àÇclienš¸ãt“sends“a“message“to“the“serv˜er,‘ørequesting“the“initial“handshak˜e.ŽŸ˜Ö‘/8ä3.ŽŽŽ‘<The–Ìservš¸ãer“receiv˜es“the“message,‘çŒand“acquires“a“task“info“cap“for“the“clien˜tŽ¤

‘<task–UU(directly“from“the“Çtask“²serv¸ãer).Ž¦‘<Of–Ðåcourse,‘ïÈif“the“servš¸ãer“already“has“a“task“info“cap“for“the“clien˜t“it“doGesŽ¡‘<not–UUneed“to“do“an¸ãything“in“this“step.Ž©?

‘R»AšÃŽt–¥Çthis“p<roin˜t,‘Ùãthe“serv˜er“kno˜ws“that“future“messages“from“this“task“willŽ¤
     €‘Rcome–   
tfrom“the“same“task“as“it“got“the“task“info“cap“for.‘cuHo•ÃŽw“ev“er,‘{it‘   
tdo<resŽ¡‘Rnot–ŸÙknošÃŽw“that“this“is“the“same“task“that“sen˜t“the“initial“handshak˜e“requestŽ¡‘Rin–ØAstep“2“ab<ro•ÃŽv“e.‘ÏÚThis›ØAsho“ws˜that˜there˜is˜no˜sense˜in˜v“erifying˜the˜task˜IDŽ¡‘Ror–ÕXp<rerform“anšÃŽy“other“authen˜tication“b<refore“acquiring“the“task“info“cap.ŽŸ¿

‘/8ä²4.ŽŽŽ‘<The–Ûservš¸ãer“replies“to“the“initial“handshak˜e“request“with“an“empt˜y“replyŽŸ

‘<message.Ž¦‘R»Because–¥othe“reply“nošÃŽw“can“go“to“a“dieren˜t“task“than“the“request“cameŽ¡‘Rfrom,‘Þsending–
Ãthe“reply“mighšÃŽt“fail.‘paIt“migh˜t“also“succeed“and“b<re“acceptedŽ¡‘RbšÃŽy–_Ythe“task“that“replaced“the“requestor.‘ŸËOr“it“migh˜t“succeed“normally‘ÿJª.‘ŸËTheŽ¡‘Rimpš<rortanÃŽt–q&thing“is“that“it“do˜es“not“matter“to“the“servšÃŽer“at“all.‘šŠIt“w˜ouldŽ¡‘Rha•ÃŽv“e›°®pro“vided˜the˜same˜\service"˜to˜the˜\imp<roster"˜of˜the˜clien“t,‘¸if˜he˜hadŽ¡‘Rb<rothered–,Óto“do“the“request.‘͒As“no“authenšÃŽtication“is“done“y˜et,‘B²there“is“noŽ¡‘Rp<roinšÃŽt–ÕXfor“the“serv˜er“to“b<rother.ŽŽŽŒ‹Õ
 s\ȍ 
ý®£8‘Y²16‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G ý䍒ˆ»This–è means“ho•ÃŽw“ev“er,‘ìÓthat–è 
the“servÃŽer“needs“to“b<re“careful“in“not“consumingŽ¤      €’ˆto<ro–À 
manšÃŽy“resources“for“this“service.‘À8Ho˜w˜ev˜er,‘ÄÅthis“is“easy“to“ac˜hiev˜e.‘À8OnlyŽ¡’ˆone–³ctask“info“cap“p<rer“clienšÃŽt“task“will“ev˜er“b<re“held“in“the“serv˜er.‘»ÎThe“serv˜erŽ¡’ˆcan–¿Teither“kšÃŽeep“it“around“un˜til“the“task“dies“(and“a“task“death“noti

cationŽ¡’ˆis–ýêreceivšÃŽed),‘or“it“can“clean“it“up“after“some“timeout“if“the“clien˜t“do<res“notŽ¡’ˆfollošÃŽw–ÕXup“and“do“some“real“authen˜tication.Ž©“8‘e8ä²5.ŽŽŽ‘rThe–UUclienš¸ãt“receiv˜es“the“reply“message“to“its“initial“handshak˜e“request.ŽŸb&‘e8ä6.ŽŽŽ‘rThe–ç„clienš¸ãt“sends“a“request“to“create“its“initial“capabilit˜y‘ÿ*ª.‘M,Ho˜w“this“requestŽ¤

‘rlo•Goks›ÿýdep“ends˜on˜the˜t¸ãyp“e˜of˜the˜serv¸ãer˜and˜the˜initial˜capabilities˜itŽ¡‘rpro¸ãvides.‘qÇHere–UUare“some“examples:Ž¦‘~¸ŽŽŽ’ˆ²A‘
 
lesystem–mighš¸ãt“pro˜vide“an“unauthen˜ticated“roGot“directory“ob‘Ž8jectŽ¡’ˆin–Ægreturn“of“the“underlying“noGde“capabilit•¸ãy‘ÿ*ª,‘"«whic“h–Ægis“proš¸ãvided“b˜yŽ¡’ˆthe–|Áparenš¸ãt“
lesystem“and“pro˜v˜es“to“the“
lesystem“that“the“user“w˜asŽ¡’ˆallo•¸ãw“ed–_eto“lošGok“up“the“ro˜ot“no˜de“of“this“
lesystem“(see“section“6.5.1Ž¡’ˆon–UUpage“59).Ž©
8’š³3»In–Ùèthis“example,‘Ûthe“parenšÃŽt“
lesystem“will“either“pro˜vide“the“task“infoŽ¤      
€’š³3cap–“=for“the“cÃŽhild“lesystem“to“the“user,‘ 
uor“it“will“hold“the“task“info“capŽ¡’š³3while–vñthe“user“is“creating“their“ošÃŽwn“(whic˜h“the“user“has“to“v˜erify“b˜yŽ¡’š³3repš<reating–ÕXthe“lo˜okup,“though).‘Ç
 
Again,“see“section“6.5.1“on“page“59.Ž¡’š³3The–ˆXunauthenšÃŽticated“ro<rot“directory“obxäject“will“then“ha˜v˜e“the“b<re“au-Ž¡’š³3thenšÃŽticated–åBusing“the“normal“reauthen˜tication“mec˜hanism“(see“sectionŽ¡’š³36.1–ÕXon“pagerefauth).‘Ç
 
This“can“also“b<re“comÃŽbined“in“a“single“RPC.ŽŸ“8‘~¸ŽŽŽ’ˆ²Evš¸ãery–n5proGcess“acts“as“a“serv˜er“that“implemen˜ts“the“signal“capabilit˜yŽ¤

’ˆfor–4Othis“proGcess.‘´T‘ÿ*ªasks“who“w•¸ãan“t–4Oto“send“a“signal“to“another“taskŽ¡’ˆcan–k
…pšGerform“the“ab˜o•¸ãv“e›k…
handshak“e,‘±and˜then˜pro“vide˜some˜t“ypGe˜ofŽ¡’ˆauthen•¸ãtication›©Ücapabilit“y˜that˜indicates˜that˜they˜are˜allo“w“ed˜to˜sendŽ¡’ˆa–ä­signal.‘L:Dierenš¸ãt“authen˜tication“capabilities“can“bGe“accepted“b˜y“theŽ¡’ˆsignalled–UUtask“for“dierenš¸ãt“t˜ypGes“of“signals.Ž¦’š³3»The–ÙHurd“used“to“store“the“signal“capabilitšÃŽy“in“the“pro<rc“serv˜er,‘Ú
   whereŽ¤ 
€’š³3authorized–»ùtasks“could“loš<rok“it“up.‘¾«This“is“no“longer“p˜ossible“b˜ecause“aŽ¡’š³3servšÃŽer–µ×can“not“accept“capabilities“implemen˜ted“b˜y“un˜trusted“tasks,‘¼$seeŽ¡’š³3b<reloÃŽw.ŽŸ“8‘e8ä²7.ŽŽŽ‘rThe–#servš¸ãer“replies“with“whatev˜er“capabilit˜y“the“clien˜t“requested,‘&Æpro˜videdŽ¤

‘rthat–«kthe“clienš¸ãt“could“pro˜vide“the“necessary“authen˜tication“capabilities,‘ÀðifŽ¡‘ran¸ãy‘ÿ*ª.ŽŸ8’ˆ»It–µ'is“not“required“that“the“servšÃŽer“p<rerforms“an˜y“authen˜tication“at“all,‘»—but“itŽ¤
       €’ˆis–ÕXrecommended,“and“all“Hurd“servÃŽers“will“do“so.ŽŸ
+±’ˆIn–¼uparticular,‘Ápthe“servšÃŽer“should“normally“only“allo˜w“access“from“tasks“run-Ž¡’ˆning–,tin“the“same“system,‘B;if“running“mÃŽultiple“systems“on“the“same“host“isŽ¡’ˆp<rossible.ŽŸè‘YÆResult‘
+²The–?ªclienš¸ãt“has“a“task“info“capabilit˜y“for“the“serv˜er“and“an“authen˜ticatedŽ¤
‘Ycapabilit•¸ãy‘ÿ*ª.‘‰íThe›
serv“er˜has˜a˜task˜info˜capabilit“y˜for˜the˜clien“t˜and˜seen˜someŽ¡‘Ysort–UUof“authenš¸ãtication“for“the“capabilit˜y“it“ga˜v˜e“to“the“clien˜t.ŽŸ~/‘r»If–2
 
yšÃŽou“think“that“the“ab<ro˜v˜e“proto<rcol“is“complex,‘R³y˜ou“ha˜v˜e“seen“nothing“y˜et!‘°ReadŽŸ
    
address@hidden|‘#²Before–—±wš¸ãe“go“on“to“the“more“complex“case“of“cop˜ying“a“capabilit˜y“from“one“clien˜tŽ¤

‘#to–PÄanother,‘Q­let“us“pGoinš¸ãt“out“that“once“a“clien˜t“has“a“capabilit˜y“from“a“serv˜er,‘Q­itŽ¡‘#is–UUeasy“for“the“servš¸ãer“to“return“more“capabilities“it“implemen˜ts“to“the“clien˜t.Ž©é䍑#The–>Íservš¸ãer“just“needs“to“create“the“capabilit˜y‘ÿ*ª,‘y*acquire“a“capabilit˜y“ID‘>in“theŽ¡‘#clien¸ãt's–UUcap“ID“space,“and“return“the“information“in“the“reply“RPC.Ž¦‘#FIXME:–ȀHere“should“bšGe“the“pseudo“co˜de“for“the“proto˜col.‘ËGF‘ÿ*ªor“no•¸ãw,‘åJy“ou‘Ȁha“v“eŽ¡‘#to–UUtakš¸ãe“it“out“of“the“long“v˜ersion.ŽŸú„‘<»The–Ǟmain“pš<roinÃŽt“of“this“section“is“to“p˜oinšÃŽt“out“that“only“one“task“info“capabilit˜yŽ¤
    €‘<is–m…
required“to“protect“all“capabilities“proÃŽvided“to“a“single“task.‘¨The“proto<rcolsŽ¡‘<describ<red–°£here“alw•ÃŽa“ys–°£assume“that“no“task“info“caps“are“held“bšÃŽy“an˜y˜one“(exceptŽ¡‘<those–4¢menšÃŽtioned“in“the“preconditions).‘äýIn“realit˜y‘ÿJª,‘Ltsometimes“the“required“taskŽ¡‘<info–ÕXcaps“will“already“b<re“held.ŽŸ"address@hidden|‘#²The–ÑÃmost“complex“opGeration“in“managing“capabilities“is“to“copš¸ãy“or“mo˜v˜e“aŽ¤

‘#capabilitš¸ãy–-Ðfrom“the“clien˜t“to“another“task,‘5·whic˜h“subsequen˜tly“bGecomes“a“clien˜tŽ¡‘#of–«¸the“servš¸ãer“pro˜viding“the“capabilit˜y‘ÿ*ª.‘9>The“dicult˜y“here“lies“in“the“fact“that“theŽ¡‘#protošGcol–¹should“b˜e“fast,‘Òbut“also“robust“and“secure.‘If“anš¸ãy“of“the“participan˜tsŽ¡‘#dies–jXunexpGectedly‘ÿ*ª,‘o˜or“anš¸ãy“of“the“un˜trusted“participan˜ts“is“malicious,‘o˜the“othersŽ¡‘#should–UUnot“bGe“harmed.ŽŸ
 r‘#ÆPreconditions‘
+²The–clienš¸ãt“µC‘¾'²has“a“capabilit˜y“from“serv˜er“µS‘š˜²(this“implies“thatŽ¡‘#µC‘"µ²has–k™a“task“info“cap“for“µS›ÿ&²and“µS˜²has“a“task“info“cap“for“µC‘·²).‘´“It“w•¸ãan“ts–k™to“cop¸ãyŽ¡‘#the–ʔcapabilitš¸ãy“to“the“destination“task“µDG².‘Ñ
…
F‘ÿ*ªor“this,‘çäit“will“ha˜v˜e“to“mak˜e“RPCsŽ¡‘#to–ŒµDG²,‘so“µC›¹¨²has“also“a“capabilit¸ãy“from“µD‘I©²(this“implies“that“µC˜²has“a“task“info“capŽ¡‘#for–×µD›/²and“µD˜²has“a“task“info“cap“for“µC‘·²).‘G±Of“course,‘ðRthe“clienš¸ãt“µC‘Ž.²trusts“its“serv˜ersŽ¡‘#µS›Ä¥²and–1µDG².‘e³µD‘x5²migh¸ãt“trust“µS˜²or“not,‘8Xand“thš¸ãus“accept“or“reject“the“capabilit˜y“thatŽ¡‘#µC›

q²w•¸ãan“ts–UUto“giv¸ãe“to“µD•G².‘qǵS‘èâ²do“es–UUnot“trust“either“µC˜²or“µDG².Ž¦‘#The–‡ÔÇtask“²servš¸ãer“is“also“in˜v˜olv˜ed,‘”tbGecause“it“pro˜vides“the“task“info“capabilities.Ž¡‘#Ev•¸ãery“one–ÍÆtrusts“the“Çtask“²serv¸ãer“they“use.‘ÛThis“došGes“not“need“to“b˜e“the“sameŽ¡‘#one–UUfor“evš¸ãery“participan˜t.Ž¦‘#FIXME:–ȀHere“should“bšGe“the“pseudo“co˜de“for“the“proto˜col.‘ËGF‘ÿ*ªor“no•¸ãw,‘åJy“ou‘Ȁha“v“eŽ¡‘#to–UUtakš¸ãe“it“out“of“the“long“v˜ersion.ŽŸÂԍ‘/8ä1.ŽŽŽ‘<The–Øëclienš¸ãt“in˜v˜ok˜es“the“Çcap_ref_cont_create“²RPC‘ØËon“the“capabilit˜y‘ÿ*ª,‘ñÍpro-Ž¡‘<address@hidden/8ä2.ŽŽŽ‘<The–1Ðservš¸ãer“receiv˜es“the“Çcap_ref_cont_create“²RPC‘1—from“the“clien˜t.‘7ItŽ¡‘<requests–½ja“task“info“cap“for“µD‘‡²from“its“trusted“task“serv¸ãer,‘ounder“theŽ¡‘<constrain¸ãt–UUthat“µC‘
q²is“still“living.ŽŽŽŒ‹$ò s\ȍ 
ý®£8‘Y²18‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G 
ý䍒ˆ»A‘ôµtask–ô½can“prošÃŽvide“a“constrain˜t“when“creating“a“task“info“cap“in“the“ÏtaskŽ¤
    
€’ˆ»serv•ÃŽer.‘Ð,The›ƒconstrain“t˜is˜a˜task˜ID.˜The˜task˜serv“er˜will˜only˜create˜theŽ¡’ˆtask–cöinfo“cap“and“return“it“if“the“task“with“the“constrainÃŽt“task“ID‘cÑis“notŽ¡’ˆdestro•ÃŽy“ed.‘ijThis›Îallo“ws˜for˜a˜task˜requesting˜a˜task˜info˜capabilit“y˜to˜mak“eŽ¡’ˆsure–P'that“another“task,›jËwhicÃŽh“also“holds“this“task“info“cap,˜is“not“destro•ÃŽy“ed.Ž¡’ˆThis–>ªis“imp•<rortanšÃŽt,‘Xÿb“ecause–>ªif“a“task“is“destro˜y˜ed,‘Xÿall“the“task“info“caps“itŽ¡’ˆheld–ÕXare“released.ŽŸÃ

’ˆIn–˜this“case,‘¬©the“servšÃŽer“relies“on“the“clien˜t“to“hold“a“task“info“cap“for“¾DŽ¡’ˆ»unšÃŽtil–ä{it“established“its“o˜wn.‘ô‰See“b<relo˜w“for“what“can“go“wrong“if“the“serv˜erŽ¡’ˆwšÃŽould–¹‚not“pro˜vide“a“constrain˜t“and“b<roth,‘òŒthe“clien˜t“and“the“destinationŽ¡’ˆtask–ÕXwÃŽould“die“unexp<rectedly‘ÿJª.Ž¤O=‘r²Noš¸ãw–·that“the“serv˜er“established“its“o˜wn“task“info“cap“for“µDG²,‘ύit“creates“aŽ©

‘rreference–UUconš¸ãtainer“for“µDG²,“that“has“the“follo˜wing“propGerties:Ž¡‘~¸ŽŽŽ’ˆ²The–"reference“conš¸ãtainer“has“a“single“new“reference“for“the“capabilit˜y‘ÿ*ª.Ž¤†‘~¸ŽŽŽ’ˆ²The–àreference“con¸ãtainer“has“an“ID‘Ëthat“is“unique“among“all“referenceŽ¦’ˆconš¸ãtainer–UUIDs“for“the“clien˜t“µC‘·².Ž¡‘~¸ŽŽŽ’ˆ²The–œ«reference“conš¸ãtainer“is“assoGciated“with“the“clien˜t“µC‘·².‘49If“µC‘SDzdies,‘ÁšandŽ¦’ˆthe–H'servš¸ãer“proGcesses“the“task“death“noti

cation“for“it,‘JÊthe“serv˜er“willŽ¦’ˆdestroš¸ãy–the“reference“con˜tainer“and“release“the“capabilit˜y“referenceŽ¦’ˆit–nÎhas“(if“anš¸ãy).‘¾1All“resources“assoGciated“with“the“reference“con˜tainerŽ¦’ˆwill–ßbGe“released.‘[KIf“this“reference“conš¸ãtainer“w˜as“the“only“reason“for“µSŽ¦’ˆ²to–ž(hold“the“task“info“cap“for“µDG²,‘°]the“serv¸ãer“will“also“release“the“taskŽ¦’ˆinfo–UUcap“for“µDG².Ž¡‘~¸ŽŽŽ’ˆ²The–Jžreference“con¸ãtainer“is“also“assošGciated“with“the“destination“task“µD˜².Ž¦’ˆIf–]kµD‘¤ˆ²dies,‘_qand“the“serv¸ãer“proGcesses“the“task“death“noti

cation“for“it,Ž¦’ˆthe–÷–servš¸ãer“will“release“the“capabilit˜y“reference“that“is“in“the“referenceŽ¦’ˆconš¸ãtainer–„
(if“an˜y).‘ýðIt“will“not“destro˜y“the“part“of“the“con˜tainer“thatŽ¦’ˆis–UUassoGciated“with“µC‘·².Ž©O=‘rThe–UUservš¸ãer“returns“the“reference“con˜tainer“ID“µR‘i²to“the“clien˜t.ŽŸ

0‘e8ä3.ŽŽŽ‘rThe–UUclienš¸ãt“receiv˜es“the“reference“con˜tainer“ID“µRDz.ŽŸÏ=’ˆ»If–JsevšÃŽeral“capabilities“ha˜v˜e“to“bš<re“copied“in“one“message,‘.the“ab˜o•ÃŽv“e–Jsteps“needŽ¤
  
€’ˆto–R£bš<re“rep˜eated“for“eacšÃŽh“capabilit˜y‘ÿJª.‘›ŽWith“appropriate“in˜terfaces,‘lÈcapabilitiesŽ¡’ˆcould–Íîbš<re“collected“so“that“only“one“call“p˜er“servÃŽer“has“to“b˜e“made.‘ħW‘ÿJªe“areŽ¡’ˆassuming–ÕXhere“that“only“one“capabilitÃŽy“is“copied.Ž¦‘e8ä²4.ŽŽŽ‘rThe–/Üclienš¸ãt“sends“the“serv˜er“thread“ID‘/ÓµT‘“k²and“the“reference“con˜tainer“ID‘/ÓµRŽ¤
‘r²to–UUthe“destination“task“µDG².ŽŸ
0‘e8ä5.ŽŽŽ‘rThe–Edestination“task“µD‘Œ0²receivš¸ães“the“serv˜er“thread“ID‘EµT‘¨¢²and“the“referenceŽ¡‘rcon¸ãtainer–UUID“µR‘i²from“µC‘·².ŽŸ†‘rIt–
 
Hnoš¸ãw“inspGects“the“serv˜er“thread“ID‘ŸóµT‘c²,‘óand“in“particular“the“task“IDŽ¡‘rcompGonenš¸ãt–d¶of“it.‘ŸëµD‘«Ó²has“to“mak˜e“the“decision“if“it“trusts“this“task“to“bGe“aŽ¡‘rserv¸ãer–UUfor“it,“or“if“it“doGes“not“trust“this“task.ŽŽŽŒ‹2Ù
 s\ȍ ý®£8‘#Ã3.1.‘ÇCAP‘ÿ*ªABILITIES’ï¸Ö²19ŽŽ 8G 
ý䍑<If–0üµD‘x²trusts“µC‘·²,‘8Ait“mighš¸ãt“decide“to“alw˜a˜ys“trust“µT‘c²,–8AtoGo,“irregardless–0üof“whatŽ¤

‘<task–UUcon¸ãtains“µT‘c².Ž©–‘<If–¶<µD‘ýY²došGes“not“trust“µC‘·²,‘Öit“migh¸ãt“b˜e“more“pic¸ãky“ab˜out“the“task“that“con¸ãtainsŽ¡‘<µT‘c².‘juThis–?`is“bšGecause“µD‘†}²will“ha•¸ãv“e–?`to“b˜ecome“a“clien¸ãt“of“µT‘c²,‘CÄso“it“will“trust“it.Ž¡‘<F‘ÿ*ªor–UUexample,“it“will“bloGc¸ãk“on“messages“it“sends“to“µT‘c².ŽŸB5‘R»If–õù¾D‘2k»is“a“servšÃŽer,‘"¦it“will“usually“only“accept“capabilities“from“its“clien˜t“that“areŽ¤
  €‘Rpro•ÃŽvided›µŸb“y˜sp<reci
c˜other˜serv“ers˜it˜trusts.‘¼This˜can˜b<re˜the˜authen“ticationŽ¡‘RservÃŽer,–ÕXfor“example“(see“section“6.1“on“page“51).ŽŸ‘RUsually‘ÿJª,‘nuthe–£tšÃŽyp<re“of“capabilit˜y“that“¾D‘Y»w˜an˜ts“to“accept“from“¾C‘­Y»is“thenŽ¡‘Rfurther–ä§restricted,‘(zand“only“one“p<rossible“trusted“servšÃŽer“implemen˜ts“thatŽ¡‘RtšÃŽyp<re–`²of“capabilities.‘i-Th˜us,‘ƒˆ¾D‘$»can“simply“compare“the“task“ID‘`Žof“¾T‘Žì»withŽ¡‘Rthe–ˆétask“ID‘ˆ»of“its“trusted“servšÃŽer“(authen˜tication“serv˜er,‘µÎ...)‘áÔto“mak˜e“theŽ¡‘Rdecision–ÕXif“it“w•ÃŽan“ts–ÕXto“accept“the“capabilitÃŽy“or“not.ŽŸÂ5‘<²If–}«µD‘ÄȲdoGes“not“trust“µT‘c²,‘‡Áit“replies“to“µC‘4Dz(probably“with“an“error“v‘ÿqÇalue“indi-Ž¤

‘<cating–»whš¸ãy“the“capabilit˜y“w˜as“not“accepted).‘£&In“that“case,‘Ԓjump“to“stepŽ¡‘<8.Ž¦‘<Otherwise,‘åäit–Èûrequests“a“task“info“cap“for“µS‘\ˆ²from“its“trusted“task“serv¸ãer,Ž¡‘<under–UUthe“constrain¸ãt“that“µC‘

q²is“still“living.Ž¦‘<Then–ü.µD‘CK²sends“a“Çcap_ref_cont_accept“²RPC‘üto“the“servš¸ãer“µS‘“²,‘%äpro˜vidingŽ¡‘<the–UUtask“ID“of“the“clienš¸ãt“µC‘

q²and“the“reference“con˜tainer“ID“µRDz.Ž©B5‘RÏcap_ref_cont_accept–1b»is“one“of“the“few“inšÃŽterfaces“that“is“not“sen˜t“to“aŽ¤
       
€‘R(real)–σcapabilitšÃŽy‘ÿJª,‘Юof“course.‘Å.Nev˜ertheless,‘Юit“is“part“of“the“capabilit˜y“obxäjectŽ¡‘RinšÃŽterface,‘Phence–7ëthe“name.‘îÚY‘ÿJªou“can“think“of“it“as“a“static“mem˜b<rer“in“theŽ¡‘RcapabilitÃŽy–ÕXclass,“that“do<res“not“require“an“instance“of“the“class.ŽŸÂ5‘/8ä²6.ŽŽŽ‘<The–B¯servš¸ãer“receiv˜es“the“Çcap_ref_cont_accept“²RPC‘B«from“the“destinationŽ¤
‘<task–8ˆµDG².‘h.It“vš¸ãeri
es“that“a“reference“con˜tainer“exists“with“the“ID‘8µRDz,‘>Kthat“isŽ¡‘<assoGciated–UUwith“µD‘œr²and“µC‘·².Ž¦‘R»The–
 
ÕservšÃŽer“will“store“the“reference“con˜tainer“in“data“structures“asso<rciatedŽ¤
 
€‘Rwith–Ùë¾C›¶»,‘Ûunder“an“ID‘Ùêthat“is“unique“but“lo<rcal“to“¾C˜».‘ÔÙSo“¾D‘]»needs“to“proÃŽvideŽ¡‘Rb<roth–ÕXinformation,“the“task“ID“and“the“reference“conÃŽtainer“ID“of“¾C‘¶».ŽŸÂ5‘<²If–that“is“the“case,‘"Âit“takš¸ães“the“reference“from“the“reference“con˜tainer,‘"ÂandŽ¤

‘<creates–¾a“capabilitš¸ãy“ID‘°for“µD‘cÛ²from“it.‘^êThe“capabilit˜y“ID‘°for“µD‘cÛ²is“returnedŽ¡‘<in–UUthe“reply“message.ŽŸ–‘<F‘ÿ*ªrom–Dqthat“momenš¸ãt“on,‘GÒthe“reference“con˜tainer“is“deassošGciated“from“µD˜².‘l&ItŽ¡‘<is–>8still“assošGciated“with“µC‘·²,‘xpbut“it“do˜es“not“conš¸ãtain“an˜y“reference“for“theŽ¡‘<capabilit¸ãy‘ÿ*ª.Ž¦‘R»It–˜>is“not“deasso<rciated“from“¾C‘(ô»and“remo•ÃŽv“ed–˜>completely‘ÿJª,‘¤vso“that“its“ID‘˜.¾R‘¤ô»(orŽ¤
     
€‘Rat–ÝÙleast“the“part“of“it“that“is“used“for“¾C‘¶»)“is“not“reused.‘ाC‘n»mÃŽust“explicitelyŽ¡‘RdestrošÃŽy–Ô}the“reference“con˜tainer“an˜yw˜a˜y“b<recause“¾D‘ï»migh˜t“die“unexp<rectedlyŽ¡‘Ror–børeturn“an“error“that“givÃŽes“no“indication“if“it“accepted“the“reference“orŽ¡‘Rnot.ŽŸÂ5‘/8ä²7.ŽŽŽ‘<The–-›destination“task“µD‘t¸²receivš¸ães“the“capabilit˜y“ID‘-cand“en˜ters“it“in˜to“itsŽŸ

‘<capabilit¸ãy–UUsystem.‘qÇIt“sends“a“reply“message“to“µC‘·².ŽŽŽŒ‹AD
 s\ȍ 
ý®£8‘Y²20‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G 
ý䍒ˆ»If–the“only“purp<rose“of“the“RPC‘ãwšÃŽas“to“cop˜y“the“capabilit˜y‘ÿJª,‘1%the“reply“messageŽ¤
     
€’ˆcan–v–bš<re“emptÃŽy–ÿJª.‘ªÙUsually“,‘žåcapabilities–v–will“b˜e“transfered“as“part“of“a“largerŽ¡’ˆopš<reration,–g´though,“and–Jomore“wÃŽork“will“b˜e“done“bÃŽy“¾D‘†á»b˜efore“returning“toŽ¡’ˆ¾C‘¶».Ž©O8‘e8ä²8.ŽŽŽ‘rThe–9§clienš¸ãt“µC‘ðòreceiv˜es“the“reply“from“µDG².‘hIrregardless“if“it“indicated“failureŽ¤

‘ror–#fsuccess,‘Vêit“will“no¸ãw“send“the“Çcap_ref_cont_destroy“²message“to“theŽ¡‘rservš¸ãer–UUµS‘“²,“pro˜viding“the“reference“con˜tainer“µRDz.ŽŸÏ8’ˆ»This–omessage“can“bš<re“a“simple“message.‘¥
        It“do˜es“not“require“a“reply“from“theŽŸ 
address@hidden,‘&ìthis“taskŽ¡‘rinfo–UUcap“is“also“released.ŽŸÏ8’ˆ»Because–ÅSthe“reference“conÃŽtainer“can“not“bš<re“deasso˜ciated“from“¾C‘V
        »bšÃŽy“an˜yŽ¤   
€’ˆother–þ{means“than“this“inšÃŽterface,‘Äthe“clien˜t“do<res“not“need“to“pro˜vide“¾D<r».‘B‰¾RŽ¡’ˆ»can–i“not“b<re“reused“without“the“clienšÃŽt“¾C‘úI»ha˜ving“it“destro˜y˜ed“

rst.‘ƒÐThis“isŽ¡’ˆdierenšÃŽt–ÕXfrom“the“Ïcap_ref_cont_accept“»call“made“b˜y“¾Dš<r»,“see“ab˜o•ÃŽv“e.ŽŸ²Â‘YÆResult‘
+²F‘ÿ*ªor–6±the“clienš¸ãt“µC‘·²,‘<Ònothing“has“c˜hanged.‘gThe“destination“task“µD‘}βeitherŽ¤
‘Ydid–—    
not“accept“the“capabilitš¸ãy‘ÿ*ª,‘§vand“nothing“has“c˜hanged“for“it,‘§vand“also“not“forŽ¡‘Ythe–ï|servš¸ãer“µS‘“².‘OÔOr“µD‘6™²accepted“the“capabilit˜y‘ÿ*ª,‘Ûand“it“no˜w“has“a“task“info“cap“for“µSŽ¡‘Y²and–°a“reference“to“the“capabilitš¸ãy“pro˜vided“b˜y“µS‘“².‘#ØIn“this“case,‘Ÿ‡the“serv˜er“µS‘$=²hasŽ¡‘Ya–UUtask“info“cap“for“µD‘œr²and“proš¸ãvides“a“capabilit˜y“ID“for“this“task.ŽŸpT‘YThe›eàabGo•¸ãv“e˜protoGcol˜is˜for˜cop“ying˜a˜capabilit“y˜from˜µC‘ü²to˜µDG².‘£iIf˜the˜goal˜w“as˜toŽ¡‘Ymo•¸ãv“e–UUthe“capabilitš¸ãy‘ÿ*ª,“then“µC‘

q²can“no˜w“release“its“reference“to“it.ŽŸ‘r»Originally–úJwšÃŽe“considered“to“mo˜v˜e“capabilities“b˜y“default,‘†and“require“the“clien˜tŽ¤
   
€‘rto–`ƒacquire“an“additional“reference“if“it“w•ÃŽan“ted–`ƒto“copšÃŽy“it“instead.‘h¡Ho˜w˜ev˜er,‘ƒNitŽ¡‘rturned–—Ýout“that“for“the“implemen•ÃŽtation,‘¤)cop“ying–—Ýis“easier“to“handle.‘²¢One“reasonŽ¡‘ris–1that“the“clienšÃŽt“usually“will“use“lo<rcal“reference“coun˜ting“for“the“capabilities“itŽ¡‘rholds,›L×and–4ñwith“lo<rcal“reference“counÃŽting,˜one“servšÃŽer-side“reference“is“shared“b˜yŽ¡‘rmanšÃŽy–‚{lo<rcal“references.‘ΊIn“that“case,‘­Äy˜ou“w˜ould“need“to“acquire“a“new“serv˜er-Ž¡‘rside–Dreference“evšÃŽen“if“y˜ou“w˜an˜t“to“mo˜v˜e“the“capabilit˜y‘ÿJª.‘MãThe“other“reason“isŽ¡‘rcancellation.‘zIf–úan“RPC‘ëis“cancelled,‘ãand“yšÃŽou“w˜an˜t“to“bac˜k“out“of“it,‘ãy˜ou“needŽ¡‘rto–Ÿ€restore“the“original“situation.‘%˜And“that“is“easier“if“yšÃŽou“do“not“c˜hange“theŽ¡‘roriginal–ÕXsituation“in“the“

rst“place“unšÃŽtil“the“natural“\p<roin˜t“of“no“return".ŽŸ‘Y²The›ÅRabGo•¸ãv“e˜protoGcol˜quite˜ob“viously˜ac“hiev“es˜the˜result˜as˜describ•Ged˜in˜the˜ab“o•¸ãv“eŽ¤

‘Yconcluding›]paragraph.‘Ho•¸ãw“ev“er,‘Ž²man“y˜other,–Ž²and˜often˜simpler,“protoGcols˜w¸ãouldŽ¡‘Yalso–
…
do“that.‘X-The“other“protošGcols“w¸ãe“lo˜ok¸ãed“at“are“not“secure“or“robust“though,Ž¡‘Yor–=Ûrequire“more“opšGerations.‘iôT‘ÿ*ªo“date“w¸ãe“think“that“the“ab˜o•¸ãv“e–=Ûis“the“shortest“(inŽ¡‘Yparticular–Îin“n•¸ãum“bšGer–Îof“IPC‘Àop˜erations)“proto˜col“that“is“also“secure“and“robustŽ¡‘Y(and–{Îif“it“is“not“w¸ãe“think“it“can“bšGe“

xed“to“b˜e“secure“and“robust“with“minimalŽ¡‘Yc•¸ãhanges).‘n8W‘ÿ*ªe›J§ha“v“e˜no˜proGof˜for˜its˜correctness.‘n8Our˜con
dence˜comes˜from˜theŽ¡‘Yscrutin•¸ãy›±ªw“e˜applied˜to˜it.‘†ÆIf˜y“ou˜
nd˜a˜problem˜with˜the˜abGo“v“e˜protoGcol,‘È¿or˜ifŽ¡‘Yyš¸ãou–UUcan“pro˜v˜e“v‘ÿqÇarious“aspGects“of“it,“w˜e“w˜ould“lik˜e“to“hear“abGout“it.ŽŽŽŒ‹P‹
 s\ȍ ý®£8‘#Ã3.1.‘ÇCAP‘ÿ*ªABILITIES’ï¸Ö²21ŽŽ 8G 
ý䍑#T‘ÿ*ªo–µ™understand“whš¸ãy“the“protoGcol“is“laid“out“as“it“is,‘
ªand“wh˜y“it“is“a“secureŽ¤
‘#and–orobust“protošGcol,‘Œvone“has“to“understand“what“could“p˜ossibly“go“wrong“andŽ¡‘#whš¸ãy–•Ìit“doGes“not“cause“an˜y“problems“for“an˜y“participan˜t“if“it“follo˜ws“its“part“ofŽ¡‘#the–XprotošGcol“(indep˜endenš¸ãt“on“what“the“other“participan˜ts“do).‘yñIn“the“follo˜wingŽ¡‘#paragraphs,‘$Üv‘ÿqÇarious–¾scenarios“are“suggested“where“things“do“not“go“as“expGectedŽ¡‘#in–Oèthe“abšGo•¸ãv“e–Oèproto˜col.‘oøThis“is“probably“not“a“complete“list,‘Pþbut“it“should“comeŽ¡‘#close–UUto“it.‘qÇIf“yš¸ãou“

nd“an˜y“other“problematic“scenario,“again,“let“us“kno˜w.Ž©û?‘<»Although–î©some“commenšÃŽts“lik˜e“this“appš<rear“in“the“proto˜col“description“ab˜o•ÃŽv“e,Ž¤
 
€‘<man•ÃŽy›;commen“ts˜ha“v“e˜b<reen˜spared˜for˜the˜follo“wing˜analysis˜of˜p<roten“tial˜prob-Ž¡‘<lems.‘ÃRead–r9the“analysis“carefully‘ÿJª,‘™qas“it“prošÃŽvides“imp<rortan˜t“information“ab<routŽ¡‘<hošÃŽw,–ÕXand“more“imp<rortan˜tly‘ÿJª,“wh˜y“it“w˜orks.ŽŸ$Êõ‘#ÆThe–serv®9er“µS‘¬Ædies‘
+²What–±ŸhappšGens“if“the“serv¸ãer“µS‘E,²dies“unexp˜ectedly“sometimeŽŸ
‘#throughout–UUthe“protoGcol?Ž¦‘<»A•ÃŽt› 
¿an“y˜time˜a˜task˜dies,–«Dthe˜task˜info˜caps˜it˜held˜are˜released.‘µ˜Also,“task˜deathŽ¡‘<noti

cations–|Œare“senšÃŽt“to“an˜y“task“that“holds“task“info“caps“to“the“no˜w“dead“task.Ž¡‘<The–Wtask“death“noti

cations“will“bš<re“pro˜cessed“asyncšÃŽhrnouly‘ÿJª,‘wpso“they“migh˜t“b<reŽ¡‘<pro<rcessed–}Limmediately‘ÿJª,›Žèor“at“anÃŽy“later“time,˜evšÃŽen“m˜uc˜h“later“after“the“task“died!Ž¡‘<So–Dìone“imp<rortanšÃŽt“thing“to“k˜eep“in“mind“is“that“the“release“of“task“info“caps“aŽ¡‘<task–ÕXheld,“and“other“tasks“noticing“the“task“death,“are“alw•ÃŽa“ys–ÕXsome“time“apart.ŽŸ{>‘#²Because–ºÜthe“clien¸ãt“µC‘qø²holds“a“task“info“cap“for“µS‘Ni²no“impGoster“can“get“the“taskŽŸ
‘#ID–UUof“µS›“².‘qǵC‘
q²and“µD‘œr²will“get“errors“when“trying“to“send“messages“to“µS˜².Ž¦‘<»Y‘ÿJªou–„ÍmighšÃŽt“no˜w“w˜onder“what“happ<rens“if“¾C›ƒ»also“dies,‘°ªor“if“¾C˜»is“malicious“andŽ¡‘<do<res–´Cnot“hold“the“task“info“cap.‘¼Y‘ÿJªou“can“use“this“as“an“exercise,‘ºáand“try“to“
ndŽ¡‘<the–ÕXanswšÃŽer“on“y˜our“o˜wn.‘Ç 
The“answ˜ers“are“b<relo˜w.ŽŸ{>‘#²Ev•¸ãen“tually‘ÿ*ª,‘mµC‘m²(and–hQµD‘¯n²if“it“already“got“the“task“info“cap“for“µS‘“²)“will“proGcess“theŽ¤
‘#task–UUdeath“noti
cation“and“clean“up“their“state.ŽŸ$Êõ‘#ÆThe–Ìyclien®9t“µC‘ƒ•Ædies‘
+²The–M¡serv¸ãer“µS‘á.²and“the“destination“task“µD‘”¾²hold“a“task“infoŽ¡‘#cap–"`for“µC‘·²,‘U¢so“no“impGoster“can“get“its“task“ID.“µS‘µí²and“µD‘i}²will“get“errors“whenŽ¡‘#trying–%4to“send“messages“to“µC‘·².‘a¼DepGending“on“when“µC‘ÜP²dies,‘.Ôthe“capabilitš¸ãy“migh˜tŽ¡‘#bGe–UUcopied“successfully“or“not“at“all.ŽŸxe‘#Ev•¸ãen“tually‘ÿ*ª,‘þ"µS‘<º²and–©-µD‘ðJ²will“proGcess“the“task“death“noti

cation“and“release“allŽ¡‘#resources–ˆÀassoGciated“with“µC‘·².‘-–If“the“reference“wš¸ãas“not“y˜et“copied,‘±«this“will“includeŽ¡‘#the–Ŕreference“conš¸ãtainer“assoGciated“with“µC‘·²,‘á¤if“an˜y‘ÿ*ª.‘Â
…
If“the“reference“w˜as“alreadyŽ¡‘#copied,–UUthis“will“only“include“the“emptš¸ãy“reference“con˜tainer,“if“an˜y‘ÿ*ª.Ž¦‘<»Of–ûcourse,‘‚the“participanšÃŽts“need“to“use“in˜ternal“lo<rc˜king“to“protect“the“in˜tegrit˜yŽ¤
     
€‘<of–«Ötheir“inšÃŽternal“data“structures.‘¹JThe“ab<ro˜v˜e“protoš<rcol“do˜es“not“shoÃŽw“where“lo˜cÃŽksŽ¡‘<are–Q[required.‘›!In“the“few“cases“where“some“actions“mÃŽust“bš<re“p˜erformed“atomically‘ÿJª,Ž¡‘<a–ÕXwÃŽording“is“used“that“suggests“that.ŽŽŽŒ‹am
 s\ȍ 
ý®£8‘Y²22‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G ý䍑YÆThe–¨\destination“task“µD‘ïyÆdies‘
+²The–.;clienš¸ãt“µC‘åW²holds“a“task“info“cap“for“µD‘uX²o˜v˜erŽ¤
‘Ythe–)whole“opšGeration,address@hidden>Ͳdies,‘ 
Fit–÷°has“either“not“yš¸ãet“accepted“the“capabilit˜y‘ÿ*ª,‘ 
Fthen“µC‘®Ì²will“clean“up“b˜yŽ¡‘Ydestroš¸ãying–urthe“reference“con˜tainer,›}yor“it“has,˜and“then“µS‘ÿ²will“clean“up“its“stateŽ¡‘Ywhen–UUit“prošGcesses“the“task“death“noti

cation“for“µD˜².Ž©%{©‘YÆThe–¼rclien®9t“µC‘sŽÆand“the“destination“task“µD‘Ædie‘
+²This–?²scenario“is“the“reasonŽ¡‘Ywhš¸ãy–¼$the“serv˜er“acquires“its“o˜wn“task“info“cap“for“µD‘A²so“early‘ÿ*ª,‘Õ×and“wh˜y“it“m˜ustŽ¡‘Ydo–þthat“under“the“constrainš¸ãt“that“µC‘Ö²still“liv˜es.‘_ªIf“µC‘Ö²and“µD‘f²die“bGefore“the“serv˜erŽ¡‘Ycreated––the“reference“conš¸ãtainer,‘¼Pthen“either“no“request“w˜as“made,‘¼Por“creating“theŽ¡‘Ytask–Ž’info“cap“for“µD›Õ¯²fails“bGecause“of“the“constrain¸ãt.‘}If“µC‘E®²and“µD˜²die“afterw¸ãards,Ž¡‘Ythen–ú
no“impGoster“can“get“the“task“ID‘ùöof“µD‘A*²and“try“to“get“at“the“reference“in“theŽ¡‘Yconš¸ãtainer,–UUbGecause“the“serv˜er“has“its“o˜wn“task“info“cap“for“µDG².ŽŸlݍ‘r»This–7‡problem“wšÃŽas“iden˜ti
ed“v˜ery“late“in“the“dev˜elopmen˜t“of“this“proto<rcol.‘í­W‘ÿJªeŽ¤        
€‘rjust–ì™did“not“think“of“b<roth“clienšÃŽts“dieing“at“the“same“time!‘
äIn“an“earlier“v˜ersionŽ¡‘rof–dxthe“proto<rcol,address@hidden<ro“late:‘‡If“¾C‘æË»and“¾D‘’‡»die“just“b˜efore“that,‘oŠan“imp˜oster“with“¾D˜»'sŽ¡‘rtask–ÏÈID‘ÏÆcan“try“to“get“the“reference“in“the“conšÃŽtainer“b<refore“the“serv˜er“pro<rcessesŽ¡‘rthe–ÕXtask“death“noti

cation“for“¾C‘f»and“destroÃŽys“it.ŽŸìލ‘Y²Ev•¸ãen“tually‘ÿ*ª,‘ý´the›Üserv“er˜will˜receiv“e˜and˜proGcess˜the˜task˜death˜noti
cations.‘ßIfŽ¤‘Yit–’zproGcesses“the“task“death“noti
cation“for“µC‘I–²
rst,‘áÃit“will“destro¸ãy“the“wholeŽ¡‘Ycon¸ãtainer–â}immediately‘ÿ*ª,›Çincluding“the“reference,address@hidden
cation“for“µD‘Z`²rst,› 
zit“will“destro¸ãy“the“reference,˜and“lea•¸ãv“e–CbGehind“theŽ¡‘Yempt•¸ãy›Iécon“tainer˜assoGciated˜with˜µC‘·²,‘‡
un“til˜the˜other˜task˜death˜noti
cation˜isŽ¡‘YproGcessed.‘qÇEither›UUw•¸ãa“y˜no˜impGoster˜can˜get˜at˜the˜capabilit“y‘ÿ*ª.ŽŸ³L‘YOf–Xcourse,‘GØif“the“capabilitš¸ãy“w˜as“already“copied“at“the“time“µC‘Ît²and“µD‘^u²die,‘GØtheŽ¡‘Yservš¸ãer–UUwill“just“do“the“normal“clean˜up.Ž¦‘YÆThe–Š3clienš®9t“µC‘AOÆand“the“serv˜er“µS‘ÀÆdie‘
+²This–scenario“doGes“not“cause“an¸ãy“prob-Ž¡‘Ylems,›*bGecause–<on“the“one“hand,˜the“destination“task“µD‘fY²holds“a“task“info“cap“forŽ¡‘YµC‘·²,‘ךand–¸+it“acquires“its“o¸ãwn“task“info“cap“for“µS‘“².‘=dAlthough“it“doGes“this“quite“late“inŽ¡‘Ythe–34protošGcol,‘:it“do˜es“so“under“the“constrainš¸ãt“that“µC‘êP²still“liv˜es,‘:whic˜h“has“a“taskŽ¡‘Yinfo–å‡cap“for“µS‘y²for“the“whole“time“(un¸ãtil“it“dies).‘LƒIt“also“gets“the“task“info“cap“forŽ¡‘YµS‘¼²bšGefore–r/sending“an¸ãy“message“to“it.‘ÈTAn“imp˜oster“with“the“task“ID‘r'of“µS‘“²,‘yewhic¸ãhŽ¡‘Yit–þºw¸ãas“pšGossible“to“get“b˜ecause“µC‘µÖ²died“early‘ÿ*ª,‘

wš¸ãould“not“receiv˜e“an˜y“message“fromŽ¡‘YµD–œr²bGecause›UUµD“²uses˜µC‘

q²as˜its˜constrain¸ãt˜in˜acquireing˜the˜task˜info˜cap˜for˜µS‘“².Ž¦‘YÆThe–íødestination“task“µD‘5Æand“the“serv®9er“µS‘
…Ædie‘
+²As–jµC‘!Þ²holds“task“info“capsŽ¡‘Yfor–[µS‘and“µDG²,›œ‘there“is“nothing“that“can“go“wrong“here.‘ƒ$Ev•¸ãen“tually‘ÿ*ª,˜the‘[taskŽ¡‘Ydeath–´†noti

cations“are“proGcessed,‘ÌRbut“the“task“info“caps“are“not“released“un¸ãtilŽ¡‘Ythe–UUprotošGcol“is“completed“or“ab˜orted“b˜ecause“of“errors.ŽŽŽŒ‹p6
 s\ȍ ý®£8‘#Ã3.1.‘ÇCAP‘ÿ*ªABILITIES’ï¸Ö²23ŽŽ 8G 
ý䍑#ÆThe–Sclienš®9t“µC‘·Æ,‘Rthe“destination“task“µD‘LpÆand“the“serv˜er“µS‘˜àÆdie‘
+²Before‘theŽ¤
‘#last–™ßone“of“these“dies,‘«yš¸ãou“are“in“one“of“the“scenarios“whic˜h“already“ha˜v˜e“bGeenŽ¡‘#co•¸ãv“ered.‘qÇAfter–UUthe“last“one“dies,“there“is“nothing“to“takš¸ãe“care“of“an˜ymore.Ž©s¯‘<»In–ïfthis“case“yšÃŽour“problem“is“probably“not“the“capabilit˜y“cop˜y“proto<rcol,‘õébut“theŽŸ
     €‘<stabilitšÃŽy–ÕXof“y˜our“soft˜w˜are!‘Ç Go“
x“some“bugs.ŽŸ󮍑#²So–H1far“the“scenarios“where“one“or“more“of“the“participating“tasks“die“unexpGect-Ž¡‘#edly›ÿ*ª.‘ætThey–яcould“also“die“purpGosefully˜.‘ætOther“things“that“tasks“can“try“to“doŽ¡‘#purpšGosefully–UUto“break“the“proto˜col“are“presenš¸ãted“in“the“follo˜wing“paragraphs.Ž¦‘<»A‘1;task–1dthat“tries“to“harm“other“tasks“bšÃŽy“not“follo˜wing“a“protoš<rcol“and“b˜ehaÃŽving“asŽ¤
 
€‘<other–zÊtasks“mighšÃŽt“exp<rect“it“is“malicious.‘¨ñBeside“securit˜y“concerns,‘Œçthis“is“also“anŽ¡‘<issue–(~of“robustness,‘=Hbš<recause“malicious“b˜ehaÃŽviour“can“also“b˜e“triggered“bÃŽy“bugsŽ¡‘<rather–ÕXthan“bad“in•ÃŽten“tions.ŽŸ§Ø‘<It–Ïis“dicult“to“protect“against“malicious“b<rehašÃŽviour“b˜y“trusted“comp<ronen˜ts,Ž¡‘<likšÃŽe–pthe“serv˜er“¾Sr}»,‘–«whic˜h“is“trusted“b˜y“bš<roth“¾C‘·»and“¾D˜».‘—If“a“trusted“comp˜onenÃŽtŽ¡‘<is–”
+compromised“or“buggy‘ÿJª,‘öill“consequences“for“soft•ÃŽw“are–”
+that“trusts“it“mÃŽust“b<reŽ¡‘<exp<rected.‘wWThšÃŽus,‘Äno–analysis“is“pro˜vided“for“scenarious“in˜v˜olving“a“malicious“orŽ¡‘<buggy–ÕXservÃŽer“¾Sr}».ŽŸMÁ‘#ÆThe–M£clien®9t“µC‘¿Æis“malicious‘
+²If–ßVthe“clienš¸ãt“µC‘–r²w˜an˜ts“to“break“the“protoGcol,‘öðit“hasŽ¤
‘#nš¸ãumerous–fäpGossibilities“to“do“so.‘¦uThe“
rst“thing“it“can“do“is“to“pro˜vide“a“wrongŽ¡‘#destination–ûtask“ID‘Ëwhen“creating“the“conš¸ãtainer.‘•¸But“in“this“case,‘9¤the“serv˜erŽ¡‘#will–Ïreturn“an“error“to“µD›+²when“it“tries“to“accept“it,‘ééand“this“will“giv¸ãe“µD˜²a“c¸ãhanceŽ¡‘#to–knotice“the“problem“and“clean“up.‘³This“also“wš¸ãould“allo˜w“for“some“other“taskŽ¡‘#to–Âreceivš¸ãe“the“con˜tainer,‘¬but“the“clien˜t“can“giv˜e“the“capabilit˜y“to“an˜y“other“taskŽ¡‘#it›UUw•¸ãan“ts˜to˜an“yw“a“y‘ÿ*ª,˜so˜this˜is˜not˜a˜problem.Ž¦‘<»If–a“malicious“bš<rehaÃŽviour“results“in“an“outcome“that“can“also“b˜e“ac•ÃŽhiev“ed‘follo“wingŽŸ
  
€‘<the–ÕXnormal“proto<rcol“with“dierenÃŽt“parameters,“then“this“not“a“problem“at“all.ŽŸ󮍑#²The–d‰clienš¸ãt“could“also“try“to“create“a“reference“con˜tainer“for“µD‘«¦²and“then“notŽ¡‘#tell–NNµD‘•k²abGout“it.‘\³Ho•¸ãw“ev“er,‘ŒŒa–NNreference“con¸ãtainer“should“not“consume“a“lot“ofŽ¡‘#resources–Âin“the“servš¸ãer,‘yand“all“suc˜h“resources“should“bGe“attributed“to“µC‘·².‘W–WhenŽ¡‘#µC‘É¥²dies›‰ev•¸ãen“tually‘ÿ*ª,‘AÖthe˜serv“er˜will˜clean˜up˜an“y˜suc“h˜pGending˜con“tainers˜whenŽ¡‘#the–UUtask“death“noti

cation“is“proGcessed.Ž¤£þ‘#The–Y1same“argumenš¸ãt“holds“when“µC‘M²lea˜v˜es“out“the“call“to“Çcap_ref_cont_destroy².Ž¡‘#The–|&clienš¸ãt“µC‘3B²could“also“pro˜vide“wrong“information“to“µDG².‘æ:It“could“supply“aŽ¤

‘#wrong–ÇÔservš¸ãer“thread“ID‘ǶµT‘c².‘ÉDIt“could“supply“a“wrong“reference“con˜tainer“ID‘ǶµRDz.Ž¡‘#If–òεD‘9ë²došGes“not“trust“µC‘©ê²and“exp˜ects“a“capabilitš¸ãy“implemen˜ted“b˜y“some“spGeci

cŽ¡‘#trusted–ûservš¸ãer,‘$nit“will“v˜erify“the“thread“ID‘úØn˜umerically“and“reject“it“if“it“doGesŽ¡‘#not–]¼matcš¸ãh.‘ŠýThe“reference“con˜tainer“ID‘]xwill“bGe“v˜eri

ed“b˜y“the“serv˜er,‘ŸÖand“itŽ¡‘#will–ß+only“bGe“accepted“if“the“reference“conš¸ãtainer“w˜as“created“b˜y“the“clien˜t“taskŽ¡‘#µC‘·².‘hThš¸ãus,‘?1the–9¨only“wrong“reference“con˜tainer“IDs“that“the“clien˜t“µC‘ðIJcould“use“toŽ¡‘#not›|ëpro•¸ãv“ok“e˜an˜error˜message˜from˜the˜serv“er˜(whic“h˜then˜lead˜µD‘IJto˜abGort˜theŽ¡‘#opšGeration)–âsw¸ãould“b˜e“a“reference“con¸ãtainer“that“it“created“itself“in“the“
rst“place.Ž¡‘#Ho•¸ãw“ev“er,–UUµC‘
q²already“is“frree“to“send“µD‘œr²anš¸ãy“reference“con˜tainer“it“created.ŽŽŽŒ‹î
 s\ȍ 
ý®£8‘Y²24‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G 
ý䍑r»Again–Õæ¾C‘fœ»can“not“ac•ÃŽhiev“e›Õæan“ything˜it˜could˜not˜ac“hiev“e˜b“y˜just˜follo“wing˜theŽ¤
        
€‘rproto<rcol–àas“wšÃŽell.‘çnIf“¾C‘pÓ»tries“to“use“the“same“reference“con˜tainer“with“sev˜eralŽ¡‘rRPCs–ó‚in“¾D<r»,‘û
one“of“them“wšÃŽould“succeed“and“the“others“w˜ould“fail,‘û
h˜urting“onlyŽ¡‘r¾C‘¶».Ž©ç‘rIf–ÕX¾D‘Ê»doš<res“trust“¾C‘¶»,“then“it“can“not“protect“against“malicious“b˜ehašÃŽviour“b˜y“¾C‘¶».ŽŸús‘Y²T‘ÿ*ªo–'summarize“the“result“so“far:‘CµC‘Þ/²can“pro¸ãvide“wrong“data“in“the“opGerationsŽ¤

‘Yit–ÖdoGes,‘ö1but“it“can“not“ac•¸ãhiev“e›Öan“ything˜this˜w“a“y˜that˜it˜could˜not˜ac“hiev“e˜b“yŽ¡‘Yjust–

Šfollo¸ãwing“the“protošGcol.‘—eIn“most“cases“the“op˜eration“w¸ãould“just“fail.‘—eIf“itŽ¡‘Ylea•¸ãv“es–ÈËout“some“opGerations,›äçtrying“to“pro•¸ãv“ok“e–ÈËresource“leaks“in“the“serv¸ãer,˜it“willŽ¡‘Yonly–çåhš¸ãurt“itself“(as“the“reference“con˜tainer“is“strictly“assoGciated“with“µC‘Ÿ²un˜til“theŽ¡‘Yreference–UUis“accepted“b¸ãy“µDG²).ŽŸzr‘r»F‘ÿJªor–¨°optimšÃŽum“p<rerformance,‘݆the“serv˜er“should“b<re“able“to“k˜eep“the“informationŽ¤
  
€‘rab<rout–ªhthe“capabilities“and“reference“conšÃŽtainers“a“clien˜t“holds“on“memory“that“isŽ¡‘ralloš<rcated–ÕXon“the“clienÃŽts“b˜ehalf.Ž¦‘rIt–ÕXmighšÃŽt“also“use“some“t˜yp<re“of“quota“system.ŽŸús‘Y²Another–ÐÆattacš¸ãk“that“µC‘‡â²can“attempt“is“to“den˜y“a“service“that“µS‘dS²and“µD‘ã²areŽ¤

‘YexpGecting–8¤of“it.‘h7Beside“not“doing“one“or“more“of“the“RPCs,‘>athis“is“in“particularŽ¡‘Yholding–Rthe“task“info“caps“for“the“time“span“as“describšGed“in“the“proto˜col.‘u¿OfŽ¡‘Ycourse,‘ÎTthis–¬”can“only“bšGe“p˜otenš¸ãtially“dangerous“in“com˜bination“with“a“task“death.Ž¡‘YIf–†µC‘=#²doGes“not“hold“the“servš¸ãer“task“info“capabilit˜y‘ÿ*ª,‘’4then“an“impGoster“of“µS‘”²couldŽ¡‘Ytric•¸ãk›ÉçµD‘²in“to˜using˜the˜impGoster˜as˜the˜serv“er.‘CMHo“w“ev“er,‘åÊthis˜is˜only˜pGossible˜if˜µDŽ¡‘Y²already–Ÿutrusts“µC‘·².‘P&Otherwise“it“wš¸ãould“only“allo˜w“serv˜ers“that“it“already“trusts,Ž¡‘Yand–´Nit“wš¸ãould“alw˜a˜ys“hold“task“info“caps“to“suc˜h“trusted“serv˜ers“when“making“theŽ¡‘Ydecision–Flthat“it“trusts“them.‘lÏHo•¸ãw“ev“er,›Igif–FlµD‘‰²trusts“µC‘·²,˜it“can“not“protect“againstŽ¡‘YµC‘

q²bGeing‘UUmalicious.ŽŸzr‘r»If–“ý¾D‘Ðo»do<res“not“trust“¾C‘¶»,‘æit“should“only“evšÃŽer“compare“the“task“ID‘“Ìof“the“serv˜erŽ¤
   
€‘rthread–°against“trusted“servšÃŽers“it“has“a“task“info“cap“for.‘R(It“m˜ust“not“rely“on“¾CŽ¡‘r»doing–ÕXthat“for“¾D<r».Ž¦‘rHo•ÃŽw“ev“er,›‹Ìif–gO¾D‘£Á»do<res“trust“¾C‘¶»,˜it“can“rely“on“¾C‘ø»holding“the“servÃŽer“task“info“capŽ¡‘runšÃŽtil–ÐXit“got“its“o˜wn.‘ÅuTh˜us,‘ÑXthe“task“ID‘ÐWof“¾C‘a»can“b<re“used“as“the“constrain˜t“whenŽ¡‘racquiring–ÕXthe“task“info“cap“in“the“proto<rcol.ŽŸús‘Y²If–DµC‘Ç`²došGes“not“hold“the“task“info“cap“of“µD˜²,‘and“µD‘Wa²dies“b˜efore“the“serv¸ãer“acquiresŽ¤

‘Yits–‰Ctask“info“cap“for“µDšG²,‘–>it“migh¸ãt“get“a“task“info“cap“for“an“imp˜oster“of“µD˜².‘
‘ButŽ¡‘Yif–GYthe“clienš¸ãt“w˜an˜ts“to“ac˜hiev˜e“that,‘ƒÚit“could“just“follo˜w“the“protoGcol“with“theŽ¡‘YimpGoster–UUas“the“destination“task.ŽŸ
 æh‘YÆThe–destination“task“µD‘H/Æis“malicious‘
+²The–œÃdestination“task“has“not“as“man¸ãyŽ¡‘YpšGossibilities–^Eas“µC‘a²to“attac¸ãk“the“proto˜col.‘Œ˜This“is“b˜ecause“it“is“trusted“b¸ãy“µC‘·².‘Œ˜SoŽ¡‘Ythe–Z

only“participanš¸ãt“that“µD‘¡)²can“try“to“attac˜k“is“the“serv˜er“µS‘“².‘ìBut“the“serv˜er“µSŽ¡‘Y²doGes–è0not“rely“on“anš¸ãy“action“b˜y“µD•G².‘*XµD‘/M²do“es–è0not“hold“an˜y“task“info“caps“for“µS‘“².Ž¡‘YThe–ðØonly“opšGeration“it“do˜es“is“an“RPC‘ð°to“µS‘„e²accepting“the“capabilit¸ãy‘ÿ*ª,‘¹and“if“itŽ¡‘Yomits–Ûkthat“it“will“just“not“get“the“capabilit¸ãy“(the“reference“will“bGe“cleaned“upŽ¡‘Ybš¸ãy–UUµC‘
q²or“b˜y“the“serv˜er“when“µC‘
q²dies).ŽŽŽŒ‹i s\ȍ 
ý®£8‘#Ã3.1.‘ÇCAP‘ÿ*ªABILITIES’ï¸Ö²25ŽŽ 8G 
ý䍑#The–8ãonly“thing“that“µD‘€²could“try“is“to“pro¸ãvide“false“information“in“the“Çcap_ref_cont_acceptŽ¤

‘#²RPC.–ˆÝThe“information“in“that“RPC›ˆÐis“the“task“ID˜of“the“clien¸ãt“µC‘?ù²and“the“ref-Ž¡‘#erence–µõconš¸ãtainer“ID‘µÝµRDz.‘“¨The“serv˜er“will“v˜erify“that“the“clien˜t“µC‘m²has“previouslyŽ¡‘#created–»Ma“reference“con¸ãtainer“with“the“ID‘»3µR‘ϲthat“is“destined“for“µDG².‘£°So“µD‘j²willŽ¡‘#only–m+bGe“able“to“accept“references“that“it“is“gran¸ãted“access“to.‘¹ISo“it“can“notŽ¡‘#ac•¸ãhiev“e›æÅan“ything˜that˜it˜could˜not˜ac“hiev“e˜b“y˜follo“wing˜the˜proto•Gcol˜(p“ossiblyŽ¡‘#the–KprotoGcol“with“another“clien¸ãt).‘±©If“µD‘\h²accepts“capabilities“from“other“trans-Ž¡‘#actions–˜houtside“of“the“protoGcol,‘©-it“can“only“cause“other“transactions“in“its“o¸ãwnŽ¡‘#task–UUto“fail.ŽŸµ‡‘<»If–CyšÃŽou“can“do“something“wrong“and“harm“y˜ourself“that“w˜a˜y‘ÿJª,‘'¾then“this“is“calledŽŸ
   
€‘<\sho<roting–ÕXyšÃŽourself“in“y˜our“fo<rot".ŽŸõX‘<The–ÕXdestination“task“¾D‘Ê»is“wÃŽelcome“to“shoš<rot“itself“in“its“fo˜ot.ŽŸ!BI‘#ÆThe–¹8clien®9t“µC‘pTÆand“the“destination“task“µD‘UÆare“malicious‘
+²The–<ä
nal“ques-Ž¡‘#tion–¬wš¸ãe“w˜an˜t“to“raise“is“what“can“happGen“if“the“clien˜t“µC‘ÎȲand“the“destinationŽ¡‘#task–®’µD›õ¯²are“malicious.‘}}Can“µC‘e®²and“µD˜²co•Gop“erate–®’and“attacš¸ãking“µS‘B²in“a“w˜a˜y“thatŽ¡‘#µC‘

q²or–UUµD‘œr²alone“could“not?Ž©J֍‘#In–áthe“abGo•¸ãv“e–áanalysis,‘Åthere“is“no“place“where“wš¸ãe“assume“an˜y“spšGeci
c“b˜eha¸ãviourŽ¡‘#of– ^µD‘g{²to“help“µS‘³ë²in“prev•¸ãen“ting– 
^an“attac¸ãk“on“µS‘“².‘ÒãThere“is“only“one“place“whereŽ¡‘#w•¸ãe›¼*mak“e˜an˜assumption˜for˜µC‘sF²in˜the˜analysis˜of˜a˜malicious˜µD•G².‘¦FIf˜µD‘G²do“esŽ¡‘#not–õaccept“a“reference“con•¸ãtainer,‘0Üw“e–õsaid“that“µC‘¼²wš¸ãould“clean“it“up“b˜y“callingŽ¡‘#Çcap_ref_cont_destroy².‘œfSo–¸ßwš¸ãe“ha˜v˜e“to“loGok“at“what“w˜ould“happGen“if“µC‘oû²w˜ereŽ¡‘#not–UUto“do“that.Ž¦‘#Luc•¸ãkily‘ÿ*ª,‘݀w“e›ÂEco“v“ered˜this˜case˜already‘ÿ*ª.‘¸–It˜is˜iden“tical˜to˜the˜case˜where˜µC‘ya²doGesŽ¡‘#not–&åevš¸ãen“tell“µD‘n²abGout“the“reference“con˜tainer“and“just“do“nothing.‘bLIn“this“case,Ž¡‘#as–<said“bGefore,‘&the“servš¸ãer“will“ev˜en˜tually“release“the“reference“con˜tainer“when“µCŽ¡‘#²dies.‘”/Before–xthat,‘9it“only“ošGccupies“resources“in“the“serv¸ãer“that“are“asso˜ciatedŽ¡‘#with‘UUµC‘·².Ž¦‘#This–ç
analysis“is“sk•¸ãetc“h“y–çin“parts,‘ýbut“it“co•¸ãv“ers–ç
a“broad“range“of“pGossible“attac¸ãks.Ž¡‘#F‘ÿ*ªor–'Îexample,‘\lall“pGossible“and“relev‘ÿqÇanš¸ãt“com˜binations“of“task“deaths“and“mali-Ž¡‘#cious–̲tasks“are“co•¸ãv“ered.‘×ßAlthough›̲b“y˜no˜means˜complete,‘ê‰it˜can˜giv“e˜us˜someŽ¡‘#con

dence–OabšGout“the“righ¸ãtness“of“the“proto˜col.‘{´It“also“pro¸ãvides“a“go˜o˜d“set“ofŽ¡‘#test–èýcases“that“yš¸ãou“can“test“y˜our“o˜wn“protoGcols,address@hidden,othe“receivš¸ãer“of“the“capabilit˜y“m˜ust“mak˜e“bloGc˜king“calls“to“the“serv˜erŽ¡‘#proš¸ãviding–’Jthe“capabilit˜y‘ÿ*ª,‘á‡the“receiv˜er“of“the“capabilit˜y“Êmust‘
…
"²trust“the“serv˜erŽ¡‘#proš¸ãviding–UUthe“capabilit˜y‘ÿ*ª.ŽŽŽŒ‹
 g s\ȍ 
ý®£8‘Y²26‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G 
ý䍑Y²This–Dwmeans“also:‘éXIf“the“receivš¸ãer“of“a“capabilit˜y“doGes“not“trust“the“serv˜er“pro˜vidingŽ¤

‘Ythe–UUcapabilit¸ãy‘ÿ*ª,“it“Êmust‘“çnot‘H-²accept“it.Ž©ƒ‘YThe–?consequence“is“that“normally‘ÿ*ª,‘¹serv¸ãers“can“not“accept“capabilities“fromŽ¡‘Yclienš¸ãts,‘Åunless–á®they“are“pro˜vided“b˜y“a“spGeci

c“trusted“serv˜er.‘ÓThis“can“bGe“theŽ¡‘YÇtask–UU²or“Çauth“²serv¸ãer“for“example.Ž¦‘YThis–Ùrule“is“evš¸ãen“true“if“the“receiv˜er“doGes“not“actually“w˜an˜t“to“use“the“capabilit˜yŽ¡‘Yfor–p¾anš¸ãything.‘%•Just“accepting“the“capabilit˜y“requires“trusting“the“serv˜er“pro˜vidingŽ¡‘Yit‘UUalready‘ÿ*ª.Ž¦‘YIn–¾Äthe“Hurd“on“Macš¸ãh,‘ÜápGorts“(whic˜h“are“analogous“to“capabilities“in“this“con˜text)Ž¡‘Ycan–cýbšGe“passed“around“freely‘ÿ*ª.‘ÀThere“is“no“securit¸ãy“risk“in“accepting“a“p˜ort“fromŽ¡‘Yanš¸ãy–‚ñsource,‘ŽXbGecause“the“k˜ernel“implemen˜ts“them“as“protected“ob‘Ž8jects.‘úšUsing“aŽ¡‘YpšGort–Ôsb¸ãy“sending“blo˜c¸ãking“messages“to“it“requires“trust,‘ô:but“simply“storing“theŽ¡‘YpšGort–UUon“the“serv¸ãer“side“do˜es“not.Ž¦‘YThis–ڙis“dierenš¸ãt“in“the“Hurd“on“L4:‘4iA‘Úzserv˜er“m˜ust“not“accept“capabilities“unlessŽ¡‘Yit–¦Ótrusts“the“servš¸ãer“pro˜viding“them.‘fBBecause“capabilities“are“used“for“man˜yŽ¡‘Ydierenš¸ãt–PppurpGoses“(remote“ob‘Ž8jects,–7authen˜tication,“iden˜ti

cation),“one–Pphas“toŽ¡‘YbGe–”vš¸ãery“careful“in“designing“the“in˜terfaces.‘‚ƒThe“Hurd“in˜terfaces“on“Mac˜h“useŽ¡‘YpšGorts–ÙJin“a“w•¸ãa“y–ÙJthat“is“not“p˜ossible“on“L4.‘HnSucš¸ãh“in˜terfaces“need“to“bGe“redesigned.Ž¦‘YOften,‘Ç
 redesigning–¤3sucš¸ãh“an“in˜terface“also“
xes“some“other“securit˜y“problems“thatŽ¡‘Yexists–³Swith“in“the“Hurd“on“L4,‘ÊÒin“particular“DoS–³;attac¸ãks.‘‹ÁA“go•Go“d–³Spart“of“thisŽ¡‘YpapšGer–’»is“ab˜out“redesigning“the“Hurd“to“a•¸ãv“oid–’»storing“un¸ãtrusted“capabilities“onŽ¡‘Ythe–UUserv¸ãer“side.ŽŸÏX‘r»Examples‘ÕXare:ŽŸtÀ‘~¿þÁŽŽŽ’ˆ»The–•new“authenšÃŽtication“proto<rcol,‘T$whic˜h“eliminates“the“need“for“a“ren-Ž¤
    €’ˆdezvÃŽous–…
Ïpš<rort“and“is“not“only“faster,‘•¸but“also“do˜es“not“require“the“servÃŽer“toŽ¡’ˆblo<rcšÃŽk–ÕXon“the“clien˜t“an˜ymore“(see“section“6.1“on“page“51).Ž©
Í֍‘~¿þÁŽŽŽ’ˆ»The–aúsignal“handling,‘…
"whicšÃŽh“do<res“not“require“the“Ïproc“»serv˜er“to“hold“theŽ¡’ˆsignal–ÕXp<rort“for“evšÃŽery“task“an˜ymore“(see“section“6.2.1“on“page“54).Ž¦‘~¿þÁŽŽŽ’ˆ»The–
*new“exec“proto<rcol,‘whicÃŽh“eliminates“the“need“to“pass“all“capabilitiesŽ¡’ˆthat–Šneed“to“b<re“transfered“to“the“new“executable“from“the“old“programŽ¡’ˆto–ùcthe“

lesystem“servšÃŽer,‘fand“then“to“the“Ïexec“»serv˜er“(see“section“6.2.3“onŽ¡’ˆpage‘ÕX55).Ž¦‘~¿þÁŽŽŽ’ˆ»The–.new“w•ÃŽa“y–.to“implemenšÃŽt“Unix“Domain“So<rc˜k˜ets,‘D?whic˜h“don't“require“aŽ¡’ˆtrusted–<£system“servšÃŽer,‘[.so“that“descriptor“passing“(whic˜h“is“really“capabilit˜yŽ¡’ˆpassing)–ÕXcan“wÃŽork“(see“section“6.3“on“page“58.Ž¦‘~¿þÁŽŽŽ’ˆ»The›ãAw•ÃŽa“y˜paren“t˜and˜c“hild˜
lesystem˜are˜link“ed˜to˜eac“h˜other,‘&»in˜otherŽ¡’ˆw•ÃŽords:‘Ç 
ho“w›ÕXmoun“ting˜a˜
lesystem˜w“orks˜(see˜section˜6.5.1˜on˜page˜59).Ž¦‘~¿þÁŽŽŽ’ˆ»The–©ÌreplacemenÃŽt“for“the“Ïfile_reparent()“»RPC‘©Á(see“section“6.5.2“on“pageŽ¡’ˆ60).ŽŸ$ƒ‘YÌ3.2Ž‘}æcSyncŒÌhronous‘ffIPCŽŸ融‘Y²The–8åHurd“only“needs“syncš¸ãhronous“IPC.“Async˜hronous“IPC‘8«is“usually“not“re-ŽŸ
‘Yquired.‘qÇAn–UUexception“are“noti
cations“(see“bGelo¸ãw).ŽŽŽŒ‹®w 
s\ȍ ý®£8‘#Ã3.3.‘ÇNOTIFICA‘ÿ*ªTIONS’åÜc²27ŽŽ 8G 
ý䍑#There–Júare“pšGossibly“some“places“in“the“Hurd“source“co˜de“where“async¸ãhronousŽ¤
‘#IPC‘Þ
+is–Þ(assumed.‘JThese“mš¸ãust“bGe“replaced“with“dieren˜t“strategies.‘JOne“exampleŽ¡‘#is–UUthe“implemen¸ãtation“of“select()“in“the“GNU“C“library‘ÿ*ª.Ž©±Í‘<»A‘­naiv•ÃŽe›­Bimplemen“tation˜w“ould˜use˜one˜thread˜p<rer˜capabilit“y˜to˜select˜on.‘NÞAŽ¤
      
€‘<b<retter–`one“wšÃŽould“com˜bine“all“capabilities“implemen˜ted“b˜y“the“same“serv˜er“in“oneŽ¡‘<arrašÃŽy–ÕXand“use“one“thread“p<rer“serv˜er.ŽŸv‘<A‘
˜more–
Ëcomplex“scšÃŽheme“migh˜t“let“the“serv˜er“pro<rcess“select()“calls“async˜hronouslyŽ¡‘<and–ÕXrep<rort“the“result“bacÃŽk“via“noti

cations.ŽŸ1΍‘#²In–º+other“cases“the“Hurd“receivš¸ães“the“reply“async˜hronously“from“sending“theŽ¤
‘#message.‘ÇThis–Çwš¸ãorks“
ne“in“Mac˜h,‘ã‹bGecause“send-once“righ˜ts“are“used“as“replyŽ¡‘#pGorts–hêand“Macš¸ãh“guaran˜tees“to“deliv˜er“the“reply“message,‘­Ïignoring“the“k˜ernelŽ¡‘#queue–£ºlimit.‘6”In“L4,‘Ç?no“messages“are“queued“and“suc¸ãh“places“need“to“bGe“rewrittenŽ¡‘#in–UUa“dierenš¸ãt“w˜a˜y“(for“example“using“extra“threads).Ž¦‘<»What–r/happš<rens“if“a“clienÃŽt“do˜es“not“go“inšÃŽto“the“receiv˜e“phase“after“a“send,‘™ebutŽ¤
      
€‘<instead–§4do<res“another“send,›°oand“another“one,˜quicšÃŽkly“man˜y“sends,‘°oas“fast“as“p<ros-Ž¡‘<sible?‘þA‘çŸcarelessly–ç¤written“servšÃŽer“migh˜t“create“w˜ork˜er“threads“for“eac˜h“request.Ž¡‘<Instead,‘0¸the–servšÃŽer“should“probably“reject“to“accept“a“request“from“a“clien˜t“threadŽ¡‘<that–úÔalready“has“a“pš<rending“request,‘3so“the“n•ÃŽum“b˜er–úÔof“w•ÃŽork“er–úÔthreads“is“limitedŽ¡‘<to–ÕXthe“n•ÃŽum“b<rer–ÕXof“clienÃŽt“threads.ŽŸv‘<This–­:also“makšÃŽes“in˜terrupting“an“RPC‘­0op<reration“easier“(the“clien˜t“thread“ID‘­0canŽ¡‘<b<re–ÕXused“to“idenšÃŽtify“the“request“to“in˜terrupt).ŽŸ%N⍍‘#Ì3.3Ž‘GæcNoti
cationsŽŸ,ƍ‘#²Noti
cations–:to“unš¸ãtrusted“tasks“happGen“frequen˜tly‘ÿ*ª.‘öOne“case“is“ob‘Ž8ject“deathŽ¤
‘#notications,‘qøin–9!particular“task“death“notications.‘
Other“cases“migh¸ãt“bGe“select()Ž¡‘#or–UUnoti
cations“of“c¸ãhanges“to“the“lesystem.Ž©E«‘#The––console“uses“noti
cations“to“broadcast“cš¸ãhange“ev˜en˜ts“to“the“console“con˜ten˜t,Ž¡‘#but–õýit“also“uses“shared“memory“to“broadcast“the“actual“data,‘
     so“not“all“noti
ca-Ž¡‘#tions–Ýàneed“to“bšGe“receiv¸ãed“for“functional“op˜eration.‘IöStill,‘õÄat“least“one“noti

cationŽ¡‘#is–Óqueued“bš¸ãy“Mac˜h,‘L2and“this“is“sucien˜t“for“the“console“to“w˜ak˜eup“whenev˜erŽ¡‘#cš¸ãhanges–UUhappGened,“ev˜en“if“the“c˜hanges“can“not“bšGe“pro˜cessed“immediately‘ÿ*ª.Ž¦‘#F‘ÿ*ªrom–ã‹the“servš¸ãers“pGoin˜t“of“view,‘noti

cations“are“simply“messages“with“a“sendŽ¡‘#and–UUxfer“timeout“of“0“and“without“a“receiv¸ãe“phase.Ž¦‘#F‘ÿ*ªor–x1the“clien•¸ãt,›€èho“w“ev“er,˜there–x1is“only“one“w•¸ãa“y–x1to“ensure“that“it“will“receiv¸ãe“theŽ¡‘#noti

cation:‘óÊIt––Vmš¸ãust“ha˜v˜e“the“receiving“thread“in“the“receiv˜e“phase“of“an“IPC.Ž¡‘#While–"ÿthis“thread“is“proGcessing“the“noti

cation“(ev¸ãen“if“it“is“only“delegating“it),Ž¡‘#it–gmighš¸ãt“bGe“preempted“and“another“(or“the“same)“serv˜er“migh˜t“try“to“send“aŽ¡‘#second‘UUnoti

cation.ŽŸ±Í‘<»It–is“an“op<ren“cšÃŽhallenge“ho˜w“the“clien˜t“can“ensure“that“it“either“receiv˜es“theŽ¤
       €‘<noti
cation–˜ñor“at“least“knošÃŽws“that“it“missed“it,‘É×while“the“serv˜er“remains“sa˜v˜eŽ¡‘<from–z¥p<rotenšÃŽtial“DoS‘zŽattac˜ks.‘¨äThe“usual“strategy‘ÿJª,‘ŒÉto“giv˜e“receiv˜ers“of“noti

cationsŽ¡‘<a–ù§higher“scšÃŽheduling“priorit˜y“than“the“sender,‘B»is“not“usable“in“a“system“withŽ¡‘<un•ÃŽtrusted›[Ireceiv“ers˜(lik“e˜the˜Hurd).‘XôThe˜b<rest˜strategy˜determined˜so˜far˜is˜toŽŽŽŒ‹¼Þ
 s\ȍ 
ý®£8‘Y²28‘;þÃCHAPTER–UU3.‘ÇINTER-PR¸ãOCESS“COMMUNICA‘ÿ*ªTION“(IPC)ŽŽ 
8G ý䍑r»ha•ÃŽv“e–uÂthe“servšÃŽers“retry“to“send“the“noti
cation“sev˜eral“times“with“small“dela˜ysŽ¤    
€‘rin•ÃŽb<ret“w“een.‘N™This–€can“increase“the“cšÃŽhance“that“a“clien˜t“is“able“to“receiv˜e“theŽ¡‘rnoti

cation.‘ºTHo•ÃŽw“ev“er,‘there–Ñis“still“the“question“what“a“servÃŽer“can“do“if“theŽ¡‘rclienÃŽt–ÕXis“not“ready‘ÿJª.ŽŸ€‘rAn–ZÖalternativšÃŽe“migh˜t“b<re“a“global“trusted“noti

cation“serv˜er“that“runs“at“a“higherŽ¡‘rsc•ÃŽheduling›8priorit“y˜and˜records˜whic“h˜serv“ers˜ha“v“e˜noti

cations˜for˜whic“h˜clien“ts,Ž¡‘rand–y½that“can“b<re“used“bšÃŽy“clien˜ts“to“bš<re“noti
ed“of“p˜ending“noti
cations.‘¨—Then“theŽ¡‘rclienšÃŽts–ÕXcan“p<roll“the“noti
cations“from“the“serv˜ers.ŽŽŽŒ‹Ì 
s\ȍ ý®£8 8G þ3‘#ÉChapter‘Ç
+4ŽŸ6‘#ÅThreads–   
T{and“T‘ýªáasksŽŸ8‘#²The–w­Çtask“²servš¸ãer“will“pro˜vide“the“abilit˜y“to“create“tasks“and“threads,‘ÀBand“toŽ©
‘#destro¸ãy‘UUthem.ŽŸ1›‘<»In– 
¬L4,‘DÏonly“threads“in“the“privileged“address“space“(the“ro<rotservšÃŽer)“are“allo˜w˜ed“toŽ¤
  €‘<manipulate–|Ûthreads“and“address“spaces“(using“the“ó(Œ-ø
+cmcsc10ÓThreadContršÒ}ol“»and“ÓSp‘ÿwwa˜ce-Ž¡‘<ContrÒ}ol–â±»system“calls).‘ï+The“Ïtask“»servÃŽer“will“use“the“system“call“wrapp<rers“pro-Ž¡‘<vided–ÕXbšÃŽy“the“ro<rotserv˜er,“see“section“2.6“on“page“7.ŽŸ±œ‘#²The–UUÇtask“²servš¸ãer“pro˜vides“three“dieren˜t“capabilit˜y“t˜ypGes.ŽŸî*‘#ÆT‘ÿ
+«ask–ªccon®9trol“capabilities‘
+²If–ša“new“task“is“created,‘<ëit“is“alw•¸ãa“ys‘šassoGciatedŽ¦‘#with–èYa“task“conš¸ãtrol“capabilit˜y‘ÿ*ª.‘MsThe“task“con˜trol“capabilit˜y“can“bGe“used“to“createŽ¦‘#and–%¬destroš¸ãy“threads“in“the“task,‘/4and“destro˜y“the“task“itself.‘aäSo“the“task“con˜trolŽ¦‘#capabilit•¸ãy›$giv“es˜the˜o“wner˜of˜a˜task˜con“trol˜o“v“er˜it.‘ßvT‘ÿ*ªask˜con“trol˜capabilitiesŽ¦‘#ha•¸ãv“e–£õthe“side“eect“that“the“task“ID‘£Èof“this“task“is“not“reused,‘Çoas“long“as“the“taskŽ¦‘#con•¸ãtrol›)capabilit“y˜is˜not˜released.‘c
     Th“us,address@hidden,‘ß+task–Á death“noti
cationsŽ¦‘#are–UUsenš¸ãt“to“holders“of“task“con˜trol“capabilities“for“that“task.ŽŸ1›‘<»A‘2task–fis“also“implicitely“destro•ÃŽy“ed–fwhen“the“last“task“conšÃŽtrol“capabilit˜y“referenceŽ¡‘<is‘ÕXreleased.ŽŸî*‘#ÆT‘ÿ
+«ask–›Yinfo“capabilities‘
+²An¸ãy–†task“can“create“task“info“capabilities“for“otherŽ¦‘#tasks.‘=Suc¸ãh–·Ztask“info“capabilities“are“used“mainly“in“the“IPC‘·2system“(see“sectionŽ¦‘#3–€on“page“11).‘¯GT‘ÿ*ªask“info“capabilities“ha•¸ãv“e–€the“side“eect“that“the“task“ID‘NofŽ¦‘#this–"task“is“not“reused,‘,Das“long“as“the“task“info“capabilitš¸ãy“is“not“released.‘`«Th˜us,Ž¦‘#haš¸ãving–,Aa“task“info“capabilit˜y“aects“the“global“namespace“of“task“IDs.‘dIf“a“taskŽ¦‘#is›õ€destro•¸ãy“ed,‘«task˜death˜noti

cations˜are˜sen“t˜to˜holders˜of˜task˜info˜capabilitiesŽ¦‘#for–UUthat“task.ŽŸ1›‘<»Because–Âof“that,‘áholding“task“info“capabilities“mšÃŽust“b<re“restricted“someho˜w.‘ª™Sev-Ž¡‘<eral–ÕXstrategies“can“b<re“takÃŽen:ŽŽŸK’Êÿ²29ŽŽŒ‹Ïu
 s\ȍ ý®£8‘Y²30’šÃCHAPTER–UU4.‘ÇTHREADS“AND“T‘ÿ*ªASKSŽŽ 8G 
ý䍍‘~¿þÁŽŽŽ’ˆ»T‘ÿJªask–âjdeath“noti
cations“can“b<re“monitored.‘îVIf“there“is“no“ac•ÃŽkno“wdgemen“tŽ¤        
€’ˆwithin–za“certain“time“p•<rerio“d,‘ŒSthe–zÏtask“»servšÃŽer“could“b<re“allo˜w˜ed“to“reuse“theŽ¡’ˆtask›¤ID‘’an•ÃŽyw“a“y‘ÿJª.‘This˜is˜not˜a˜go•<ro“d˜strategy˜b“ecause˜it˜can˜considerablyŽ¡’ˆw•ÃŽeak“en–^©the“securitšÃŽy“of“the“system“(capabilities“migh˜t“b<re“leak˜ed“to“tasksŽ¡’ˆwhicšÃŽh–ÕXreuse“suc˜h“a“task“ID“reclaimed“b˜y“force).Ž©

÷¶‘~¿þÁŽŽŽ’ˆ»The–³*pro<rc“servšÃŽer“can“sho˜w“dead“task“IDs“whic˜h“are“not“released“y˜et,‘êžinŽ¡’ˆanalogy–Kçto“the“zomšÃŽbie“pro<rcesses“in“Unix.‘*ÌIt“can“also“mak˜e“a˜v‡ailable“theŽ¡’ˆlist–=™of“tasks“whicšÃŽh“prev˜en˜t“reusing“the“task“ID,“to“allo˜w“users“or“the“systemŽ¡’ˆadministrator–ÕXto“clean“up“manÃŽually‘ÿJª.Ž¦‘~¿þÁŽŽŽ’ˆ»Quotas–¼can“b<re“used“to“punish“users“whicšÃŽh“do“not“ac˜kno˜wledge“task“deathŽ¡’ˆtimely–ÿJª.‘­þF“or–‰óexample,‘™if“the“n•ÃŽum“b<rer–‰óof“tasks“the“user“is“allo•ÃŽw“ed–‰óto“create“isŽ¡’ˆrestricted,‘E¯the–/7task“info“caps“that“the“user“holds“for“dead“tasks“could“b<address@hidden<re“restricted“to“as“man˜y“task“ID‘?óreferences“as“there“are“liv˜eŽ¡’ˆtasks–Fin“the“system,‘b+plus“some“slacšÃŽk.‘That“w˜ould“prev˜en˜t“the“task“fromŽ¡’ˆcreating–Vønew“task“info“caps“if“it“do<res“not“release“old“ones“from“death“tasks.Ž¡’ˆThe–+ÇslacšÃŽk“w˜ould“b<re“pro˜vided“to“not“unnecessarily“slo˜w“do˜wn“a“task“thatŽ¡’ˆpro<rcesses–Stask“death“noti

cations“asyncÃŽhronously“to“making“connectionsŽ¡’ˆwith–ÕXnew“tasks.ŽŸ³‘‘rIn–Q«particular“the“last“t•ÃŽw“o›Q«approac“hes˜should˜pro•<rof˜to˜b“e˜eectiv•ÃŽe˜in˜pro“vidingŽ¡‘ran›ÕXincen•ÃŽtiv“e˜for˜tasks˜to˜release˜task˜info˜caps˜they˜do˜not˜need˜an“ymore.ŽŸ×‘YÆT‘ÿ
+«ask–ÁCmanager“capabilit®9y‘
+²A‘CÝtask–Câis“a“relativ¸ãely“simple“ob‘Ž8ject,‘G_compared“toŽ¤
‘Ya–àfull“bloš¸ãwn“POSIX‘àproGcess,‘÷for“example.‘JµAs“the“Çtask“²serv˜er“is“enforced“systemŽ¡‘YcošGde,‘2§the–cHurd“do˜es“not“imp˜ose“POSIX‘6pro˜cess“semanš¸ãtics“in“the“task“serv˜er.Ž¡‘YInstead,‘¦HPOSIX‘bŸproGcess–bäsemanš¸ãtics“are“implemen˜ted“in“a“dieren˜t“serv˜er,‘¦HtheŽ¡‘YproGc–™servš¸ãer“(see“also“section“6.2“on“page“54).‘’T‘ÿ*ªo“allo˜w“the“Çproc“²serv˜er“to“doŽ¡‘Yits–0fwš¸ãork,‘7Éit“needs“to“bGe“able“to“get“the“task“con˜trol“capabilit˜y“for“an˜y“task,‘7ÉandŽ¡‘Ygather–vhother“statistics“abšGout“them.‘ÕF‘ÿ*ªurthermore,‘~­there“m¸ãust“b˜e“the“p˜ossibilit¸ãyŽ¡‘Yto–?þinstall“quota“mecš¸ãhanisms“and“other“monitoring“systems.‘1ÁThe“Çtask“²serv˜erŽ¡‘Yproš¸ãvides–Oåa“task“manager“capabilit˜y‘ÿ*ª,‘Pûthat“allo˜ws“the“holder“of“that“capabilit˜y“toŽ¡‘Yconš¸ãtrol–\pthe“bGeha˜viour“of“the“Çtask“²serv˜er“and“get“access“to“the“information“andŽ¡‘Yob‘Ž8jects–UUit“pro¸ãvides.ŽŸA‘r»F‘ÿJªor–†Bexample,‘–the“task“manager“capabilitÃŽy“could“bš<re“used“to“install“a“p˜olicy“capa-Ž¤
    
€‘rbilitšÃŽy–Ykthat“is“used“b˜y“the“Ïtask“»serv˜er“to“mak˜e“upš<rcalls“to“a“p˜olicy“servšÃŽer“whenev˜erŽ¡‘ra–Œ
+new“task“or“thread“is“created.‘®±The“p<rolicy“servÃŽer“could“then“indicate“if“the“cre-Ž¡‘ration–+Wof“the“task“or“thread“is“allo•ÃŽw“ed›+Wb“y˜that˜user.‘ÉF‘ÿJªor˜this˜to˜w“ork,address@hidden<res“not“need“to“kno˜w“abš<rout“the“concept“of“a“user,‘!or“the“p˜oliciesŽ¡‘rthat–ÕXthe“p<rolicy“servšÃŽer“implemen˜ts.Ž©;ۍ‘rNoÃŽw–P,that“I›P

am“writing“this,‘náI˜realize“that“without“anšÃŽy“further“supp<rort“b˜y“theŽ¡‘rÏtask–÷»servšÃŽer,‘)ßthe“p<rolicy“serv˜er“w˜ould“b<re“restricted“to“the“task“and“thread“ID‘æofŽ¡‘rthe–lbcaller“(or“rather“the“task“conšÃŽtrol“capabilit˜y“used)“to“mak˜e“its“decision.‘Œ?AŽ¡‘rmore–µ:capabilitšÃŽy“orien˜ted“approac˜h“w˜ould“then“not“bš<re“p˜ossible.‘fÅThis“requiresŽ¡‘rmore‘ÕXthoughÃŽt.Ž¦‘rThe–ÕXwhole“task“manager“inšÃŽterface“is“not“written“y˜et.ŽŸ‹A‘Y²When–lÔcreating“a“new“task,‘r³the“Çtask“²serv¸ãer“alloGcates“a“new“task“ID‘lÎfor“it.‘¸CTheŽ¤
‘Ytask–eSID›eOwill“bGe“used“as“the“v¸ãersion“
eld“of“the“thread“ID˜of“all“threads“createdŽ¡‘Yin–ߌthe“task.‘kThis“alloš¸ãws“the“recipien˜t“of“a“message“to“v˜erify“the“sender's“taskŽ¡‘YID–UUecien¸ãtly“and“easily‘ÿ*ª.ŽŽŽŒ‹Ù+
 s\ȍ ý®£8‘#Ã4.1.‘ÇA¸ãCCOUNTING’ñ
+Ÿ²31ŽŽ 8G ý䍑<»The–¿™všÃŽersion“
eld“is“14“bit“on“32-bit“arc˜hitectures,‘Ãóand“32“bit“on“64“bit“arc˜hitec-Ž¤ 
€‘<tures.‘suBecause–dthe“lo•ÃŽw“er–dsix“bits“mšÃŽust“not“b<re“all“zero“(to“mak˜e“global“threadŽ¡‘<IDs–t›dierenšÃŽt“from“lo<rcal“thread“IDs),‘‡ôthe“n˜um˜b<rer“of“a˜v‡ailable“task“IDs“is“2Ÿý-:¼14Ž‘÷cÁ‘"»2Ÿý-:¼8ŽŽ¡‘<»resp.‘Ç
 2Ÿý-:¼32Ž‘ 
¸ÞÁ‘㐻2Ÿý-:¼2Ž‘*§»6.Ž©¨{‘<If–ØsevšÃŽeral“systems“are“running“in“parallel“on“the“same“host,‘¾xthey“migh˜t“shareŽ¡‘<thread–ÕXIDs“bÃŽy“encoš<rding“the“system“ID“in“the“upp˜er“bits“of“the“thread“n•ÃŽum“b˜er.ŽŸöQ‘#²T‘ÿ*ªask–Y—IDs“will“bGe“reused“only“if“there“are“no“task“con¸ãtrol“or“info“capabilities“forŽ¤

‘#that–(†task“ID‘(zheld“bš¸ãy“an˜y“task“in“the“system.‘b×T‘ÿ*ªo“suppšGort“b˜o˜otstrapping“an“IPCŽ¡‘#connection–¼è(see“section“3.1.1“on“page“14),‘ÖÍthe“Çtask“²servš¸ãer“will“dela˜y“reusing“aŽ¡‘#task–UUID“as“long“as“pGossible.ŽŸvR‘<»This–ÉÄis“similar“to“hoÃŽw“PIDs“are“generated“in“Unix.‘ÃDAlthough“it“is“attempted“toŽ¤
       
€‘<kÃŽeep–ðöPIDs“small“for“ease“of“use,›÷ÝPIDs“are“not“reused“immediately‘ÿJª.‘ùInstead,˜theŽ¡‘<PID‘Ÿis–ËincremenšÃŽted“up“to“a“certain“maxim˜um“n˜um˜b<rer,‘¬èand“only“then“smallerŽ¡‘<PID–ÕXv‡alues“are“reused“again.Ž¦‘<As–
      
9task“IDs“are“not“a“user“inšÃŽterface,‘2there“is“no“need“to“k˜eep“them“small.‘bÄTheŽ¡‘<whole–ŽÇašÃŽv‡ailable“range“can“b<re“used“to“dela˜y“reusing“a“task“ID‘Ž¶as“long“as“p<rossible.Ž©öQ‘#²When–)creating“a“new“task,‘(ethe“Çtask“²serv¸ãer“also“has“to“create“the“initial“thread.Ž¤

‘#This–tÐthread“will“bGe“inactiv¸ãe.‘Ð8Once“the“creation“and“activ‘ÿqÇation“of“the“initialŽ¡‘#thread–ˆ'has“bšGeen“requested“b¸ãy“the“user,‘ÔÛit“will“b˜e“activ‘ÿqÇated.‘
+<When“the“userŽ¡‘#requests–?to“destroš¸ãy“the“last“thread“in“a“task,‘Cthe“Çtask“²serv˜er“mak˜es“that“threadŽ¡‘#inactiv¸ãe‘UUagain.ŽŸvR‘<»In–-²L4,‘CÈan“address“space“can“only“b<re“implicitely“created“(resp.‘Ð.destro•ÃŽy“ed)‘-²withŽŸ
   €‘<the–ÕXrst“(resp.‘Ç 
last)“thread“in“that“address“space.Ž¦‘#²Some–‘åopGerations,›¡       
lik¸ãe“starting“and“stopping“threads“in“a“task,˜can“not“bGe“sup-Ž¡‘#pGorted–¸bš¸ãy“the“task“serv˜er,address@hidden,‘_Mthe“debugger“in˜terface“migh˜t“bGe“used“(see“section“7“onŽ¡‘#page‘UU63).ŽŸ&ei‘#Ì4.1Ž‘GæcAccounŒÌtingŽŸ¯R‘#²W‘ÿ*ªe›ÄOw•¸ãan“t˜to˜allo“w˜the˜users˜of˜the˜system˜to˜use˜the˜Çtask˜²serv“er˜directly‘ÿ*ª,‘à
andŽ¡‘#ignore–ó9other“task“managemenš¸ãt“facilities“lik˜e“the“Çproc“²serv˜er.‘
      
KrHo˜w˜ev˜er,‘Z±theŽ¡‘#system–È1administrator“still“needs“to“bGe“able“to“idenš¸ãtify“the“user“who“created“suc˜hŽ¡‘#anon¸ãymous‘UUtasks.Ž©¥\‘#F‘ÿ*ªor–NVthis,‘Œ–a“simple“accounš¸ãting“mec˜hanism“is“pro˜vided“b˜y“the“task“serv˜er.‘\ÊAnŽ¡‘#idenš¸ãti

er–¹³can“bGe“set“for“a“task“b˜y“the“task“manager“capabilit˜y‘ÿ*ª,‘ØÔwhic˜h“is“inheritedŽ¡‘#at–‘task“creation“time“from“the“parenš¸ãt“task.‘%This“accoun˜ting“ID‘Âcan“not“bGeŽ¡‘#cš¸ãhanged–UUwithout“the“task“manager“capabilit˜y‘ÿ*ª.Ž¦‘#The–bÇproc“²servš¸ãer“sets“the“accoun˜ting“ID›aÐto“the“proGcess“ID˜(PID)˜of“the“taskŽ¡‘#whenevš¸ãer–D›a“task“registers“itself“with“the“Çproc“²serv˜er.‘l4This“means“that“all“tasksŽ¡‘#whicš¸ãh–7do“not“register“themself“with“the“Çproc“²serv˜er“will“bšGe“group˜ed“togetherŽŽŽŒ‹
 êÆ s\ȍ 
ý®£8‘Y²32’šÃCHAPTER–UU4.‘ÇTHREADS“AND“T‘ÿ*ªASKSŽŽ 8G 
ý䍑Y²with–#the“
rst“parenš¸ãt“task“that“did.‘ÚþThis“allo˜ws“to“easily“kill“all“unregisteredŽ¤
‘Ytasks–UUtogether“with“its“registered“paren¸ãt.Ž©N8‘YThe–UUÇtask“²servš¸ãer“doGes“not“in˜terpret“or“use“the“accoun˜ting“ID“in“an˜y“w˜a˜y‘ÿ*ª.ŽŸ%_ü‘YÌ4.2Ž‘}æcProšŒÌxy–ffT‘þ¦fask“Serv˜erŽŸ5S‘Y²The–èBÇtask“²servš¸ãer“can“bGe“safely“pro˜xied,‘þand“the“users“of“suc˜h“a“pro˜xy“task“serv˜erŽ¡‘Ycan–_‡use“it“likš¸ãe“the“real“Çtask“²serv˜er,‘±ev˜en“though“capabilities“w˜ork“a“bit“dieren˜tlyŽ¡‘Yfor–UUthe“Çtask“²servš¸ãer“than“for“other“serv˜ers.Ž¦‘YThe–Fproblem“exists“bGecause“the“proš¸ãxy“task“serv˜er“w˜ould“hold“the“real“task“infoŽ¡‘Ycapabilities–æ
+for“the“task“info“capabilities“that“it“proš¸ãvides“to“the“pro˜xied“task.‘L®SoŽ¡‘Yif–áïthe“proš¸ãxy“task“serv˜er“dies,‘all“suc˜h“task“info“capabilities“w˜ould“bGe“released,Ž¡‘Yand–¹øthe“tasks“using“the“proš¸ãxy“task“serv˜er“w˜ould“bšGecome“insecure“and“op˜en“toŽ¡‘Yattac•¸ãks›UUb“y˜impGosters.Ž¦‘YHo•¸ãw“ev“er,›"Àthis–ù«is“not“really“a“problem,˜bGecause“the“proš¸ãxy“task“serv˜er“will“alsoŽ¡‘Ypro•¸ãvide›K×pro“xy˜ob‘Ž8jects˜for˜all˜task˜con“trol˜capabilities.‘UMSo˜it˜will˜bGe˜the˜onlyŽ¡‘Ytask–×8whicš¸ãh“holds“task“con˜trol“capabilities“for“the“tasks“that“use“it.‘÷pWhen“theŽ¡‘Yproš¸ãxy–­àtask“serv˜er“dies,‘all“tasks“that“w˜ere“created“with“it“will“bGe“destro˜y˜edŽ¡‘Ywhen–Ýethese“tak“conš¸ãtrol“capabilities“are“released.‘IÌThe“pro˜xy“task“serv˜er“is“a“vitalŽ¡‘Ysystem–Á´compGonenš¸ãt“for“the“tasks“that“use“it,‘ß;just“as“the“real“Çtask“²serv˜er“is“a“vitalŽ¡‘Ysystem–UUcompGonen¸ãt“for“the“whole“system.ŽŸ%_ü‘YÌ4.3Ž‘}æcScŒÌhedulingŽŸ5S‘Y²The–+§task“servš¸ãer“is“the“natural“place“to“implemen˜t“a“simple,‘3ýinitial“sc˜heduler“forŽ¡‘Ythe–ÊæHurd.‘Ò{A‘ÊÈ

rst“v¸ãersion“can“at“least“collect“some“information“abGout“the“cpuŽ¡‘Ytime–Yof“a“task“and“its“threads.‘}

Later“a“propšGer“sc¸ãheduler“has“to“b˜e“written“thatŽ¡‘Yalso–UUhas“SMP“suppGort.Ž¦‘YThe–UUscš¸ãheduler“should“run“at“a“higher“priorit˜y“than“normal“threads.ŽŸÎ8‘r»This–Ö½mighšÃŽt“require“that“the“whole“task“serv˜er“m˜ust“run“at“a“higher“priorit˜y‘ÿJª,Ž¤
    
€‘rwhic•ÃŽh›ÕXmak“es˜sense˜an“yw“a“y‘ÿJª.ŽŸ€‘rNot›–®m•ÃŽuc“h˜though“t˜has˜b<reen˜giv“en˜to˜the˜sc“heduler˜so˜far.‘²=This˜is˜w“ork˜that˜stillŽ¡‘rneeds–ÕXto“b<re“done.ŽŸN8‘Y²There–‡žis“no“w•¸ãa“y–‡žto“get“at“the“\system“time"“in“L4,‘”0it“is“assumed“that“no“timeŽ¤

‘Yis–B¨spGenš¸ãt“in“the“k˜ernel“(whic˜h“is“mostly“true).‘9ÁSo“system“time“will“alw˜a˜ys“bGeŽ¡‘YrepGorted–UUas“0µ:²00,“or“0µ:²01.ŽŽŽŒ‹!ù
 s\ȍ ý®£8 8G þ3ÖR‘#ÉChapter‘Ç
+5ŽŸ6ÖR‘#ÅVirtual‘   
T{MemoryŽŸ‘#Managemen‘ÿ8õtŽŸ8~r‘<ÊThe–Emind“and“memory“ar›ÿ}'e“mor˜e“sharply“exer˜cise˜d“in“c˜ompr˜ehendingŽ¤

‘<another–“çman‘þúP's“things“than“our“own.ŽŸ<’½M¢Timb–ÿ}'er‘hâ²or›UUÊDisc“overies‘'v²b¸ãy˜Ben˜JonsonŽŸ&øK‘#Ì5.1Ž‘GæcInŒÌtros3ductionŽŸóލ‘#²The–
 
ƒgoal“of“an“opšGerating“system“is“simply‘ÿ*ª,‘+p˜erhaps“reductiv¸ãely‘ÿ*ª,‘+stated:‘W^manageŽ¡‘#the–eaš¸ãv‘ÿqÇailable“resources.‘!ßIn“other“w˜ords,‘•it“is“the“opGerating“system's“job“to“dictateŽ¡‘#the–¡ÞpGolicy“for“obtaining“resources“and“to“proš¸ãvide“mec˜hanisms“to“use“them.‘5õMostŽ¡‘#resources–¾dwhic¸ãh“the“opGerating“system“manages“are“sparse“resources,‘ܔfor“instanceŽ¡‘#the–
…
áCPUs,‘Òthe“memory“and“the“v‘ÿqÇarious“pGeripherals“including“graphics“cardsŽ¡‘#and–.hard“driv•¸ães.‘]eAn“y›.giv“en˜proGcess,–$itherefore,“needs˜to˜compGete˜with˜the˜otherŽ¡‘#proGcesses–~åin“the“system“for“some“subset“of“the“aš¸ãv‘ÿqÇailable“resources“at“an˜y“giv˜enŽ¡‘#time.‘IYAs–Ü
     
can“bšGe“imagined,‘ôLthe“p˜olicy“to“access“and“the“mec¸ãhanisms“to“use“theseŽ¡‘#resources–UUdetermines“manš¸ãy“impGortan˜t“c˜haracteristics“of“the“system.Ž©ÖR‘#A‘!simple–Rsingle“user“system“maš¸ãy“use“a“trivial“
rst“come“
rst“serv˜e“pGolicy“forŽ¡‘#alloGcating–Ybresources,‘Zea“device“abstraction“la•¸ãy“er–Yband“no“protection“domains.‘}îAl-Ž¡‘#though–äºthis“design“maš¸ãy“bGe“v˜ery“ligh˜t-w˜eigh˜t“and“the“thin“access“la˜y˜er“conduciv˜eŽ¡‘#to–Þhigh“spGeed,‘<this“design“will“only“w¸ãork“on“a“system“where“all“programs“canŽ¡‘#bšGe–itrusted:‘š;a“single“malicious“or“buggy“program“can“p˜oten¸ãtially“halt“all“othersŽ¡‘#from–Í«making“progress“simply“b¸ãy“refusing“to“yield“the“CPU‘͉or“alloGcating“and“notŽ¡‘#releasing–UUresources“in“a“timely“fashion.Ž¦‘#The–NWHurd,›‚ðlik¸ãe“Unix,˜aims“to“proš¸ãvide“strong“protection“domains“thereb˜y“prev˜en˜t-Ž¡‘#ing–ÃÝproGcesses“from“acciden¸ãtally“or“maliciously“harming“the“rest“of“the“system.ŽŽŸK’Êÿ33ŽŽŒ‹"ë
 s\ȍ ý®£8‘Y²34‘Y<WÃCHAPTER–UU5.‘ÇVIR›ÿ*ªTUAL“MEMOR˜Y“MANA¸ãGEMENTŽŽ 
8G 
ý䍑Y²Unix–¼has“shoš¸ãwn“that“this“can“bGe“done“ecien˜tly‘ÿ*ª.‘>²But“more“than“Unix,‘Ú½the“HurdŽ¤

‘Ydesires–j¨to“idenš¸ãtify“pieces“of“the“system“whic˜h“Unix“placed“in“the“k˜ernel“but“whic˜hŽ¡‘Yneed–Ùånot“bšGe“there“as“they“could“b˜e“done“in“user“space“and“pro¸ãvide“additionalŽ¡‘Yuser–ÏH
exibilitš¸ãy‘ÿ*ª.‘EThrough“our“expGerience“and“analysis,‘êw˜e“are“con˜vinced“that“oneŽ¡‘Yarea–f—is“m•¸ãuc“h–f—of“the“virtual“memory“system:‘”Ktasks“are“often“alloGcating“as“m•¸ãuc“hŽ¡‘Ymemory–2Œwithout“regard|bGecause“Unix“proš¸ãvides“them“with“no“mec˜hanism“toŽ¡‘Ydo–¥£so|address@hidden,‘-i.e.‘wmalloš¸ãwing“dieren˜t“users“to“concur-Ž¡‘Yrenš¸ãtly–š?run“proGcesses“in“the“system“and“gain“access“to“resources“in“a“con˜trolledŽ¡‘Yfashion–sucš¸ãh“that“an˜y“one“proGcess“cannot“h˜urt“or“excessiv˜ely“starv˜e“an˜y“other.Ž¡‘YUnix›6ïac•¸ãhiev“ed˜this˜through˜a˜monolithic˜k“ernel˜design˜wherein˜b•Goth˜p“olicy˜andŽ¡‘Ymecš¸ãhanism–Þare“pro˜vided“b˜y“the“k˜ernel.‘
     
Due“to“the“limited“hardw˜are“a˜v‘ÿqÇail-Ž¡‘Yable–ÓZat“the“time“and“the“state“of“MulticsŸü^ÿ±1ŽŽ‘|s²,‘íYUnix“impšGosed“a“strong“p˜olicy“on“ho¸ãwŽ¡‘Yresources––icould“bGe“used:‘Qa“program“could“access“
les,›¼™ho•¸ãw“ev“er,˜lo“w“er›–ilev“el˜mec“h-Ž¡‘Yanism–ÝIsuc¸ãh“as“the“
le“system,›ÿFthe“virtual“
le“system,˜net•¸ãw“ork–ÝIprotoGcol“stac¸ãksŽ¡‘Yand–tÑdevices“drivš¸ãers“all“existed“in“the“k˜ernel“propGer.‘Ð:This“approac˜h“made“senseŽ¡‘Yfor–kÖthe“extremely“limited“hardwš¸ãare“that“Unix“w˜as“targeted“for“in“the“1970s.Ž¡‘YAs–!Úhardwš¸ãare“pGerformance“increased,–,&ho˜w˜ev˜er,“a–!Úseparation“bGet˜w˜een“mec˜hanismŽ¡‘Yand–ׂpšGolicy“nev¸ãer“to˜ok“place“and“to˜daš¸ãy“Unix-lik˜e“opGerating“systems“are“in“a“v˜eryŽ¡‘Ysimilar–5Ästate“to“those“aš¸ãv‘ÿqÇailable“t˜w˜o“decades“ago;address@hidden,‘<the“implemen˜tationsŽ¡‘Yha•¸ãv“e–ÁèbGeen“v‘ÿqÇastly“impro•¸ãv“ed–Áèand“tuned,›ßeho•¸ãw“ev“er,˜the›Áèfundamen“tal˜design˜remainsŽ¡‘Ythe‘UUsame.ŽŸ::‘YOne–œnof“the“most“impšGortan¸ãt“of“the“p˜olicy/mecš¸ãhanism“couplings“in“the“k˜ernel“isŽ¡‘Ythe–‹Ÿvirtual“memory“subsystem:‘ÞZevš¸ãery“compGonen˜t“in“the“system“needs“memoryŽ¡‘Yfor–[ka“v‘ÿqÇarietš¸ãy“of“reasons“and“with“dieren˜t“priorities.‘„The“system“m˜ust“attemptŽ¡‘Yto–3Tmeet“a“givš¸ãen“alloGcation“criteria.‘fqHo˜w˜ev˜er,‘:!as“the“k˜ernel“doGes“not“and“cannotŽ¡‘Ykno•¸ãw›¨ho“w˜ho“w˜a˜task˜will˜use˜its˜memory˜except˜based˜on˜the˜use˜of˜page˜faultŽ¡‘Ystatistics–is“bGound“to“mak¸ãe“sub-ideal“eviction“decisions.‘Š
 It“is“in“part“throughŽ¡‘Yyš¸ãears–°of“
ne“tuning“that“Unix“is“able“to“pGerform“as“w˜ell“as“it“doGes“for“the“generalŽ¡‘Yapplications–UUwhic¸ãh“
t“its“assumed“statistical“moGdel.Ž‘YŸ[‰ff‰ÿvŸ        
J=‘"5Ÿý-:¼1ŽŽŽ‘LÜ»Multics–SwšÃŽas“seen“as“a“system“whic˜h“w˜ould“nev˜er“realize“due“to“its“o˜v˜erly“am˜bitious“featureŽŸ
        €set.ŽŽŽŒ‹#address@hidden
ª‘#²The–jfaults“of“Unix“bGecame“clear“through“the“use“of“Macš¸ãh.‘#`The“designers“of“Mac˜hŽ¤

‘#observš¸ãed–ä#that“there“w˜as“toGo“m˜uc˜h“mec˜hanism“in“the“k˜ernel“and“attempted“toŽ¡‘#expGort–^the“

le“systems,‘1anet•¸ãw“ork›^stac“k˜and˜m“uc“h˜of˜the˜system˜API‘1in“to˜userŽ¡‘#space–.ðservš¸ãers.‘þ™They“left“a“v˜ery“pGo˜w˜erful“VMM‘.¸in“the“k˜ernel“with“the“deviceŽ¡‘#drivš¸ãers–÷Øand“a“no˜v˜el“IPC‘÷Ásystem.‘RžOur“expGerience“sho˜ws“that“the“VMM‘÷ÁalthoughŽ¡‘#vš¸ãery–x¾
exible,‘˜is“unable“to“mak˜e“smart“paging“decisions:‘¸™bGecause“Unix“w˜as“tiedŽ¡‘#to–„•so“manš¸ãy“subsystems,‘eit“had“a“fair“kno˜wledge“of“ho˜w“a“lot“of“the“memory“inŽ¡‘#the–ÑBsystem“wš¸ãas“bGeing“used.‘åŽIt“could“therefore“mak˜e“go•Go“d–ÑBguesses“abGout“whatŽ¡‘#memory–ïWcould“bšGe“evicted“and“not“b˜e“needed“in“the“near“future.‘OÈMac•¸ãh,‘½ho“w“ev“er,Ž¡‘#did–¢ÿnot“ha•¸ãv“e–¢ÿthis“adv‘ÿqÇan¸ãtage“and“relied“strictly“on“page“fault“statistics“and“accessŽ¡‘#pattern–UUdetection“for“its“page“eviction“pGolicy‘ÿ*ª.ŽŸ9N‘#Based–¿on“this“observ‘ÿqÇation,‘Úit“is“impGeritivš¸ãe“that“the“page“eviction“sc˜heme“ha˜v˜eŽ¡‘#go•Go“d–«*knoš¸ãwledge“abGout“ho˜w“pages“are“bGeing“used“as“it“only“requires“a“few“badŽ¡‘#decisions–Ô
…
to“destroš¸ãy“pGerformance.‘ïVTh˜us,‘4Pa“new“design“can“either“c˜hoGose“toŽ¡‘#return–}Ìto“the“monolithic“design“and“add“evš¸ãen“more“kno˜wledge“to“the“k˜ernel“toŽ¡‘#increase–®ÍpšGerformance“or“the“page“eviction“sc¸ãheme“can“b˜e“remo•¸ãv“e–®Ífrom“the“k¸ãernelŽ¡‘#completely–UUand“placed“in“user“space“and“mak¸ãe“all“tasks“self“paged.ŽŸ#
address@hidden,›º·lik¸ãe“Unix,˜to“bGe“a“mš¸ãultiuser“system“for“m˜utually“un˜trustedŽ¡‘#users,‘ö°securitš¸ãy–£8is“an“absolute“necessit˜y‘ÿ*ª.‘[pBut“it“is“not“the“ob‘Ž8ject“of“the“sys-Ž¡‘#tem–Pto“limit“users“excessiv¸ãely:‘o,as“long“as“opšGerations“can“b˜e“done“securely‘ÿ*ª,‘Q)theyŽ¡‘#should–K^bšGe“p˜ermitted.‘SáIt“is“based“on“this“philosophš¸ãy“that“w˜e“ha˜v˜e“adopted“aŽ¡‘#self–θpaging“design“for“the“new“Hurd“VMM:“who“knoš¸ãws“bGetter“ho˜w“a“task“willŽ¡‘#use–[Œits“memory“than“the“task“itself‘Ç?‘„kThis“is“clear“from“the“problems“that“ha•¸ãv“eŽ¡‘#bGeen–Q^encounš¸ãtered“with“LR˜U,“the“basic“page“evition“algorithm,‘R)b˜y“database“de-Ž¡‘#vš¸ãelopGers,‘{language–s{designers“implemen˜ting“garbage“collectors“and“soft“realtimeŽ¡‘#application–0devš¸ãelopGers“suc˜h“as“m˜ultimedia“dev˜elopGers:‘R´they“all“wrestle“with“theŽ¡‘#underlying–¼ÀopšGerating“system's“page“eviction“sc¸ãheme.‘¨
    
By“putting“the“resp˜onsi-Ž¡‘#bilitš¸ãy–to“page“on“tasks“w˜e“think“that“tasks“will“bGe“forced“to“mak˜e“smart“decisionsŽ¡‘#as–UUthey“can“only“hš¸ãurt“themselv˜es.ŽŸ(!>‘#Ì5.2Ž‘GæcSelf‘ffPŒÌagingŽŸ~q‘#²If–mmemory“wš¸ãas“in

nite“and“the“only“problem“w˜as“w˜orrying“abGout“one“programŽ¡‘#accessing–´Úthe“memory“of“another,‘Ì»memory“allošGcation“w¸ãould“b˜e“trivial.‘UThis“isŽ¡‘#not,›-Ôho•¸ãw“ev“er,˜the–#ôcase:‘Ymemory“is“visibly“
nite“and“a“w¸ãell“designed“system“willŽ¡‘#exploit– 
Îit“all.‘5›As“memory“is“a“system“resource,‘Äéa“system“wide“memory“alloGcationŽ¡‘#pšGolicy–Ò»m¸ãust“b˜e“established“whicš¸ãh“maximizes“memory“usage“according“to“a“giv˜enŽ¡‘#set–UUof“criteria.ŽŽŽŒ‹$´
 s\ȍ ý®£8‘Y²36‘Y<WÃCHAPTER–UU5.‘ÇVIR›ÿ*ªTUAL“MEMOR˜Y“MANA¸ãGEMENTŽŽ 
8G ý䍑Y²In–ô‚a“tš¸ãypical“Unix-lik˜e“VMM,“alloGcating“memory“(e.g.‘  
  ONusing‘Çsbrk“²or“Çmmap²)Ž¤
‘YdošGes–Únot“allo˜cate“ph¸ãysical“memory“but“Çvirtual‘?ýmemory².‘In“order“to“increaseŽ¡‘Ythe–y]amounš¸ãt“of“memory“a˜v‘ÿqÇailable“to“users,‘Â_the“k˜ernel“uses“a“Çbacking‘?ýstore²,Ž¡‘Ytš¸ãypically–°3a“hard“disk,‘êto“tempGorarily“free“ph˜ysical“memory“thereb˜y“allo˜wingŽ¡‘Yother–uproGcesses“to“makš¸ãe“progress.‘WÒThe“sum“of“these“t˜w˜o“is“referred“to“as“virtualŽ¡‘Ymemory‘ÿ*ª.‘GVThe–Öuse“of“bacš¸ãking“store“ensures“data“in˜tegrit˜y“when“ph˜ysical“memoryŽ¡‘Ymš¸ãust–ÚúbGe“freed“and“application“transparency“is“required.‘HþA‘ÚÛv‘ÿqÇariet˜y“of“criteria“areŽ¡‘Yused–ûoto“determine“whicš¸ãh“frames“are“Çpaged‘?ýout²,–
jho˜w˜ev˜er,“most–ûooften“some“formŽ¡‘Yof–ÑÀa“prioritš¸ãy“based“least“recen˜tly“used,‘ìLR˜U,“algorithm“is“applied.‘EëUpGon“ÇmemoryŽ¡‘Ypressure²,‘Úthe–¿†system“steals“pages“from“loš¸ãw“priorit˜y“proGcesses“whic˜h“ha˜v˜e“notŽ¡‘YbGeen–UUused“recenš¸ãtly“or“drain“pages“from“an“in˜ternal“cac˜he.Ž©‘YThis–ˆdesign“has“a“ma‘Ž8jor“problem:‘ê,the“k¸ãernel“has“to“evict“the“pages“but“onlyŽ¡‘Ythe–θapplications“knoš¸ãw“whic˜h“pages“they“really“need“in“the“near“term.‘ÝðTheŽ¡‘Ykš¸ãernel–+.could“ask“the“applications“for“this“data,–`¤ho˜w˜ev˜er,“it–+.is“unable“to“trustŽ¡‘Ythe–e~applications“as“they“could,›i‰for“instance,˜not“respGond,˜and“the“kš¸ãernel“w˜ouldŽ¡‘Yha•¸ãv“e–¶Èto“forcefully“evict“pages“an•¸ãyw“a“y‘ÿ*ª.‘–As›¶Èsuc“h,‘Ï$the˜k“ernel˜relies˜on˜page˜faultŽ¡‘Ystatistics–‹to“makš¸ãe“pro‘Ž8jections“abGout“ho˜w“the“memory“will“bGe“used,‘³Œth˜us“the“LR˜UŽ¡‘Yeviction–o¬scš¸ãheme.‘%:An“additional“result“of“this“sc˜heme“is“that“as“applications“nev˜erŽ¡‘Yknoš¸ãw–†²if“mappGed“memory“is“in“core,‘“
      
they“are“unable“to“mak˜e“guaran˜tees“abGoutŽ¡‘Ydeadlines.Ž¦‘YThese–’problems“are“grounded“in“the“w•¸ãa“y–’the“Unix“VMM‘‘ÌalloGcates“memory:Ž¡‘Yit–u˜došGes“not“allo˜cate“ph¸ãysical“memory“but“virtual“memory‘ÿ*ª.‘ҏThis“is“illustatedŽ¡‘Ybš¸ãy–}Íthe“follo˜wing“scenario:‘·when“a“prošGcess“starts“and“b˜egins“to“use“memory‘ÿ*ª,Ž¡‘Ythe–Ž6alloGcator“will“happily“giv¸ãe“it“all“of“memory“in“the“system“as“long“as“noŽ¡‘Yother–ɸprošGcess“w•¸ãan“ts–ɸit.‘C>What“happ˜ens,›å¥ho•¸ãw“ev“er,˜when–ɸa“second“memory“h¸ãungryŽ¡‘YproGcess–øgstarts“is“that“the“kš¸ãernel“has“no“w˜a˜y“to“tak˜e“bac˜k“memory“it“alloGcated“toŽ¡‘Ythe–
 Z
rst“prošGcess.‘RÖA¸ãt“this“p˜oinš¸ãt,‘³it“has“t˜w˜o“options:‘Ñit“can“either“return“failureŽ¡‘Yto–]Ûthe“second“prošGcess“or“it“can“steal“memory“from“the“

rst“pro˜cess“and“send“itŽ¡‘Yto–UUbac¸ãking“store.Ž¦‘YOne›.w•¸ãa“y˜to˜solv“e˜these˜problems˜is˜to˜ha“v“e˜the˜VMM‘alloGcate˜phsyical˜memoryŽ¡‘Yand–Ûjmakš¸ãe“applications“completely“self-paged.‘Th˜us,‘üïthe“burden“of“paging“liesŽ¡‘Ythe–•)application“themselv¸ães.‘1BWhen“application“request“memory‘ÿ*ª,‘¥they“no“longerŽ¡‘Yrequest–›?virutal“memory“but“ph¸ãysical“memory‘ÿ*ª.‘C„Once“the“application“has“ex-Ž¡‘Yhausted–Hits“aš¸ãv‘ÿqÇailable“frames,‘„¸it“is“its“respGonsibilit˜y“to“m˜ultiplex“the“a˜v‘ÿqÇailableŽ¡‘Yframes.›â¦Th¸ãus,‘„\virtual–zõmemory“is“done“in“the“application“itself.˜It“is“impGortan¸ãtŽ¡‘Yto–9ønote“that“a“standard“manager“or“managers“should“bGe“supplied“b¸ãy“the“op-Ž¡‘Yerating–1Ãsystem.‘This“is“impGortanš¸ãt“for“implemen˜ting“something“lik˜e“a“POSIXŽ¡‘YpGersonalitš¸ãy‘ÿ*ª.‘ÀÁThis–o¨should“not,–v=ho˜w˜ev˜er,“bšGe–o¨hard“co˜ded:‘¦mcertain“application“ma¸ãyŽ¡‘Ygreatly–ŽbšGene
t“b¸ãy“b˜eing“able“to“conš¸ãtrol“their“o˜wn“eviction“sc˜hemes.‘Z…
A˜t“its“mostŽ¡‘Ybasic›çUlev•¸ãel,‘Õhin“ts˜could˜bGe˜pro“vided˜to˜the˜manager˜b“y˜in“troGducing˜exten“tionsŽ¡‘Yon–\×basic“function“calls.‘ˆNF‘ÿ*ªor“instance,‘ž·Çmalloc“²could“tak¸ãe“an“extra“parameterŽ¡‘Yindicating–9lthe“class“of“data“bšGeing“allo˜cated.‘
These“class“wš¸ãould“pro˜vide“hin˜tsŽ¡‘YabšGout–UUthe“exp˜ected“usage“pattern“and“life“time“of“the“data.ŽŽŽŒ‹%(«
 s\ȍ ý®£8‘#Ã5.3.‘ÇBOOTSTRAP’÷\d²37ŽŽ 8G 
ý䍍‘#Ì5.3Ž‘GæcBos3otstrapŽŸg‘#²When–ÌRthe“Hurd“starts“up,‘êall“phš¸ãysical“memory“is“ev˜en˜tually“transfered“to“theŽ¤

‘#phš¸ãysical–PÙmemory“serv˜er“b˜y“the“roGot“serv˜er.‘pHA˜t“this“pGoin˜t,address@hidden,‘PÆthe“total“n˜um˜bGerŽ¡‘#of–å{guaranš¸ãteed“frames“can“nev˜er“exceed“the“total“n˜um˜bGer“of“ph˜ysical“framesŽ¡‘#in–P•the“system.‘c‡Extra“frames“are“frames“whicš¸ãh“are“giv˜en“to“clien˜ts“who“ha˜v˜eŽ¡‘#reacš¸ãhed–œtheir“guaran˜teed“frame“alloGcation“limit.‘µThe“ph˜ysical“memory“serv˜erŽ¡‘#maš¸ãy–Pfrequest“that“a“clien˜t“relinquish“a“n˜um˜bGer“of“extan˜t“extra“frames“at“an˜yŽ¡‘#time.‘µÁThe–ÁSclienš¸ãt“m˜ust“return“the“frames“to“the“ph˜ysical“memory“(i.e.‘µÁfreeŽ¡‘#them)–ÉSin“a“short“amoun¸ãt“of“time.‘ÍÀThe“task“should“not“assume“that“it“hasŽ¡‘#enough–†ºtime“to“send“frames“to“bacš¸ãking“store.‘õAs“suc˜h,‘Óextra“frames“shouldŽ¡‘#only–(Âconš¸ãtain“reman˜ufacturable“data“(i.e.‘ì
cac˜hed“data).‘ì
Should“a“task“fail“toŽ¡‘#return–Øthe“frames“in“a“reasonable“amounš¸ãt“of“time,‘8¿it“risks“ha˜ving“all“of“itsŽ¡‘#memory–è¶droppšGed|not“sw¸ãapp˜ed“out“or“sa•¸ãv“ed–è¶in“anš¸ãy“w˜a˜y|and“reclaimed“b˜y“theŽ¡‘#phš¸ãysical–Ž6memory“serv˜er.‘iNote“that“the“ph˜ysical“memory“serv˜er“doGes“not“kno˜wŽ¡‘#if–Å­a“givš¸ãen“frame“is“considered“guaran˜teed“or“extra:‘Rxit“kno˜ws“that“a“giv˜en“taskŽ¡‘#has–ûµG“²guaran¸ãteed“frames“and“µG–„U²+“µE›Žœ²alloGcated–ûframes,‘
and“µE˜²extra“frames.‘S°TheŽ¡‘#distinction›—çbGet•¸ãw“een˜guaran“teed˜and˜extra˜frames˜m“ust˜bGe˜made˜b“y˜the˜taskŽ¡‘#itself.‘’One–µ˜strategy“is“to“rememš¸ãbGer“whic˜h“frames“can“bGe“reman˜ufactured“(e.g.Ž¡‘#reread–*¦from“disk“or“recalculated)“and“inš¸ãternally“promote“them“to“guaran˜teedŽ¡‘#frames–Íðwhen“the“frame“bšGecomes“dirt¸ãy“b˜eing“careful“to“nevš¸ãer“ha˜v˜e“less“than“µEŽ¡‘#²clean–øframes“in“the“task.‘§¯Givš¸ãen“these“seman˜tics,‘A
 
guan˜teed“frames“should“notŽ¡‘#bGe–k+though¸ãt“of“as“wired“(e.g.‘³JÇmlock²ed“in“the“POSIX‘k&sense)|although“they“canŽ¡‘#ha•¸ãv“e–Ä]this“propGertš¸ãy|but“as“frames“whic˜h“the“task“itself“m˜ust“m˜ultiplex.‘¾ßTh˜usŽ¡‘#the–UUidea“of“self-paged“tasks.ŽŸqȍ‘#Readers–¢Ýfamiliar“with“VMS‘¢‡will“see“striking“similarities“with“the“self-pagingŽ¡‘#and–¢¬guaran¸ãteed“frame“paradigms.›YËThis“is“not“without“reason.˜Y‘ÿ*ªet,‘¶dierencesŽ¡‘#remain:‘HöVMS‘ŸdošGes–´not“ha•¸ãv“e–´extra“frames“and“the“n•¸ãum“b˜er–´of“guaran¸ãteed“framesŽ¡‘#is–‡Œ

xed“at“task“creation“time.‘mF‘ÿ*ªrames“returned“to“VMS‘‡(in“order“to“alloGcate“aŽ¡‘#new–‚frame)“are“placed“in“a“dirtš¸ãy“list“(th˜us“the“actual“m˜ultiplexing“of“frames“isŽ¡‘#done–¬Lin“VMS,“not“in“user“space)“therebš¸ãy“sim˜ulating“a“t˜w˜o“lev˜el“bac˜king“store:Ž¡‘#a–ôfast“memory“bacš¸ãking“store“where“frames“are“w˜a˜ylaid“and“sw˜ap,‘3\where“theyŽ¡‘#are–¥Åsenš¸ãt“to“when“sucien˜t“memory“pressure“forces“them“out.‘cIt“is“in“this“w˜a˜yŽ¡‘#that–Jka“givš¸ãen“task“ma˜y“access“more“than“its“quota“of“memory“when“there“is“lo˜wŽ¡‘#memory›gÐcon•¸ãten“tion˜(e.g.‘©7if˜there˜are˜t“w“o˜tasks˜eac“h˜with˜100˜frames˜and˜thereŽŽŽŒ‹&9L
 s\ȍ ý®£8‘Y²38‘Y<WÃCHAPTER–UU5.‘ÇVIR›ÿ*ªTUAL“MEMOR˜Y“MANA¸ãGEMENTŽŽ 
8G 
ý䍑Y²are–Ý£1000“frames“in“the“system“for“tasks,‘ÿ·the“remaining“800“are“not“dorman¸ãt).Ž¤

‘YOur–tdivš¸ãergence“from“VMS‘>is“motiv‘ÿqÇated“b˜y“the“loGcation“of“
le“systems“and“deviceŽ¡‘Ydrivš¸ãers–ºÆin“the“Hurd:‘<ªunlik˜e“in“VMS,“the“
le“systems“and“device“driv˜ers“are“inŽ¡‘Yuser–>õspace.‘.¦Thš¸ãus,‘y\the“cac˜hing“that“w˜as“bGeing“done“b˜y“VMS‘>address@hidden:”‘Y²The›
…
n•¸ãum“bGer˜of˜guaran“teed˜frames˜that˜a˜giv“en˜task˜has˜access˜to˜is˜not˜deter-Ž¡‘Ymined–ú®bš¸ãy“the“ph˜ysical“memory“serv˜er“but“b˜y“the“Çmemory–?ýpolicy“server².‘SThisŽ¡‘Ydivision–(means“the“phš¸ãysical“memory“serv˜er“need“only“concern“itself“with“alloGca-Ž¡‘Ytion–ÍQmec¸ãhanisms;‘ú¨all“pšGolicy“decisions“are“delegated“to“the“p˜olicy“servš¸ãer“pro˜videdŽ¡‘Yb¸ãy–ˆ\the“underlying“opšGerating“system.‘-t(An“imp˜ortan¸ãt“implication“is“that“althoughŽ¡‘Ytailored–9ªfor“Hurd“spGeci

c“needs,‘?3the“phš¸ãysical“memory“serv˜er“is“essen˜tially“sepa-Ž¡‘Yrate–Vfrom“the“Hurd“and“can“bšGe“used“b¸ãy“other“op˜erating“systems“running“on“theŽ¡‘YL4–#‹microkš¸ãernel.)‘ÜhIt“is“the“memory“pGolicy“serv˜er's“respGonsibilit˜y“to“determineŽ¡‘Ywho–}Sgets“hoš¸ãw“m˜uc˜h“memory‘ÿ*ª.‘éÀThis“ma˜y“bGe“calculated“as“a“function“of“the“userŽ¡‘Yor–lošGoking“in“a“

le“on“disk“for“e.g.–”Lquotas.“As–can“b˜e“seen“this“t¸ãyp˜e“of“dataŽ¡‘Yacquisition–1
could“add“signi
canš¸ãt“complexit˜y“to“the“ph˜ysical“memory“serv˜er“andŽ¡‘Yrequire–hÂbloGcš¸ãking“states“(e.g.‘¬w˜aiting“for“a“read“opGeration“on“

le“i/o)“and“couldŽ¡‘Ycreate–Ø*circular“depšGendencies.‘úEThe“default“memory“p˜olicy“servš¸ãer's“mec˜hanismsŽ¡‘Yand–UUpšGolicies“will“b˜e“discussed“later.Ž©£>‘YThe–Ïüphš¸ãysical“memory“serv˜er“and“the“memory“pGolicy“serv˜er“will“con˜tain“a“sharedŽ¡‘Ybuer–2[of“tupples“indexed“bš¸ãy“task“id“con˜taining“the“n˜um˜bšGer“of“allo˜cated“frames,Ž¡‘Ythe›tn•¸ãum“bGer˜of˜guaran“teed˜frame,‘{Æand˜a˜b•Go“olean˜indicating˜whether˜or˜not˜thisŽ¡‘Ytask–ü8is“eligible“for“guaranš¸ãteed“frames.‘TThe“guaran˜teed“frame“

eld“and“the“extraŽ¡‘Yframe–¾ùpredicate“maš¸ãy“only“bGe“written“to“b˜y“the“memory“pGolicy“serv˜er.‘®³TheŽ¡‘Yn•¸ãum“bšGer–róof“allo˜cated“frames“ma¸ãy“only“b˜e“written“to“bš¸ãy“the“ph˜ysical“memoryŽ¡‘Yserv•¸ãer.‘cThis›*§sc“heme˜means˜that˜no˜loGc“king˜in˜required.‘c(On˜some˜arc“hitecturesŽ¡‘Ywhere–Ï¿a“read“of“a“giv¸ãen“

eld“cannot“bšGe“p˜erformed“in“a“single“op˜eration,‘êwthe“readŽ¡‘Yma•¸ãy›€ðha“v“e˜to˜bGe˜done˜t“wice.)‘ô˜The˜memory˜pGolicy˜serv“er˜m“ust˜not˜o“v“er˜commitŽ¡‘Ythe›Ûn•¸ãum“bGer˜of˜frames,‘ü~i.e.‘öthe˜total˜n“um“bGer˜of˜guaran“teed˜frames˜m“ust˜nev“erŽ¡‘Yexceed–UUthe“n•¸ãum“bšGer–UUof“frames“a¸ãvilable“for“allo˜cation.Ž¦‘YUnš¸ãtil–Ӌthe“memory“pGolicy“serv˜er“mak˜es“the“in˜tial“con˜tact“with“the“ph˜ysical“mem-Ž¡‘Yory–ÊÕserv¸ãer,‘(5memory“will“bšGe“allo˜cated“on“a“
rst“come“
rst“serv¸ãe“basis.‘ÒGTheŽ¡‘Ymemory–ÕRpGolicy“servš¸ãer“shall“use“the“follo˜wing“remote“proGcedure“call“to“con˜tactŽ¡‘Ythe–UUphš¸ãysical“memory“serv˜er:ŽŸ¹‘rerror‘™˜‰ffŽ–™št›UUpm‘™˜‰ffŽ“get‘™˜‰ffŽ“con•¸ãtrol˜(out˜h“urd‘™˜‰ffŽ–™šcap‘™˜‰ffŽ“t˜con¸ãtrol)ŽŸº‘YThis–W[function“will“succeed“the“

rst“time“it“is“called“and“return“a“con¸ãtrol“ca-Ž¡‘Ypabilitš¸ãy‘ÿ*ª.‘ÁÔIt–ÅYwill“fail“all“subsequen˜t“times.‘ÁÔBy“using“a“capabilit˜y‘ÿ*ª,‘áZthe“acquiringŽ¡‘Ytask–
 
maš¸ãy“mo˜v˜e“or“cop˜y“the“capabilit˜y“to“another“task.‘SDThis“pGermits“replacingŽ¡‘Ythe–ëðpGolicy“servš¸ãer“on“a“liv˜e“system.‘5™A˜t“this“pGoin˜t,‘—the“ph˜ysical“memory“serv˜erŽŽŽŒ‹'H
 s\ȍ ý®£8‘#Ã5.5.‘ÇCONT‘ÿ*ªAINERS’ôq»²39ŽŽ 8G 
ý䍑#will–2óbšGegin“allo˜cating“memory“according“to“the“describ˜ed“proto˜col.‘
+ Note“thatŽ¤
‘#the–Ôºinital“buer“will“bšGe“initialized“with“the“curren¸ãt“total“allo˜cations“while“theŽ¡‘#guaran¸ãteed–{frames“will“bšGe“set“to“zero.‘ð:The“memory“p˜olicy“servš¸ãer“m˜ust“requestŽ¡‘#the–UUshared“pšGolicy“buer“as“so˜on“as“p˜ossible“and“adjust“these“v‘ÿqÇalues.Ž©<¡‘#The–eéshared“pšGolicy“buer“ma¸ãy“b˜e“obtained“from“the“phš¸ãysical“memory“serv˜er“b˜yŽ¡‘#the–UUpGolicy“b¸ãy“calling:Ž¤Ö{‘<error‘™˜‰ffŽ–™št›UUpm‘™˜‰ffŽ“get‘™˜‰ffŽ“pGolicy‘™˜‰ffŽ“buer˜(out˜l4‘™˜‰ffŽ“map‘™˜‰ffŽ“t˜buer)Ž¡‘#The–1returned“buer“is“mappšGed“with“read“and“write“access“in¸ãto“the“p˜olicy“mem-Ž¤

‘#ory–ÓWservš¸ãer's“address“space.‘FsIt“ma˜y“need“to“bGe“resized“due“to“the“n˜um˜bGer“of“tasksŽ¡‘#in–Âthe“system.‘ñ
When“this“is“the“case,‘Š]the“phš¸ãysical“memory“serv˜er“shall“unmapŽ¡‘#the–åRbuer“from“the“memory“pGolicy“servš¸ãer's“address“space“and“cop˜y“the“buerŽ¡‘#inš¸ãternally–Œ.as“required.‘QThe“memory“pGolicy“serv˜er“will“fault“on“the“memory“re-Ž¡‘#gion–½Åon“its“next“access“and“it“ma¸ãy“rerequest“the“buer.‘«This“call“will“succeedŽ¡‘#when–UUthe“sender“is“the“memory“pGolicy“serv¸ãer,“it“will“fail“otherwise.ŽŸ%<΍‘#Ì5.5Ž‘GæcConŒÌtainersŽŸ#¼‘#²In–öQa“monolithic“k¸ãernel,›other“than“through“pipGes,˜little“data“is“exc¸ãhanged“bGe-Ž¡‘#t•¸ãw“een–ö‚tasks:‘´"all“services“are“proš¸ãvided“b˜y“the“k˜ernel,‘Ía“trusted“en˜tit˜y“whic˜h“isŽ¡‘#able–1to“directly“access“tasks'“address“space.‘eÚIn“a“m•¸ãultiserv“er–1system,‘8µmost“dataŽ¡‘#acquisitions–‘²come“from“user“space“servš¸ãers.‘&ÝAs“suc˜h,‘àÈpGo˜w˜erful“primativ˜es“forŽ¡‘#moš¸ãving–óËmemory“around“is“an“absolute“necessit˜y:‘Aph˜ysical“cop˜ying“m˜ust“bGe“k˜eptŽ¡‘#to–can“absolute“minimš¸ãum“and“there“m˜ust“bGe“a“w˜a˜y“to“use“and“preserv˜e“cop˜y“onŽ¡‘#write‘UUpages.Ž¦‘#Con¸ãtainers–öüare“the“basic“abstraction“used“for“alloGcating,‘
       
Ûaddressing“and“sharingŽ¡‘#memory–ÿ*ª.‘dConceptually“,‘4tcon•¸ãtainers›,;con“tain˜a˜set˜of˜in“tegers˜iden“tifying‘OÈÇvirtualŽ¡‘#frame²s–î
…in“the“phš¸ãysical“memory“serv˜er.‘       
=XA‘îvirtual“frame“references“a“ph˜ysi-Ž¡‘#cal–›Öframe“but“is“not“bGound“to“a“particular“phš¸ãysical“frame“(thereb˜y“allo˜wingŽ¡‘#the–àOphš¸ãysical“memory“serv˜er“to“mo˜v˜e“the“con˜ten˜ts“bGet˜w˜een“ph˜ysical“frames“forŽ¡‘#page›/¸bloGc•¸ãking,‘7>assem“bly˜of˜DMA‘/®arena˜and˜memory˜defragmen“tation).‘e=VirtualŽ¡‘#frames–öare“thš¸ãus“the“sharing“mec˜hanism“for“ph˜ysical“frames.‘UKAlthough“virtualŽ¡‘#frames–Ü5cannot“bGe“copied,‘ôotheir“con•¸ãten“ts›Ü5ma“y˜bGe˜logically˜copied˜suc“h˜that˜a˜newŽ¡‘#virtual–?Kframe“is“created“with“the“same“underlying“phš¸ãysical“frame.‘jnSharing“ma˜yŽ¡‘#bGe–UUeither“real,“e.g.›qÇSystem“V“shared“memory‘ÿ*ª,“or“logical,“e.g.˜cop¸ãy“on“write.Ž¦‘#When–

Þa“virtual“frame“is“alloGcated“inš¸ãto“a“con˜tainer,‘:Àthere“ma˜y“bGe“no“ph˜ysicalŽ¡‘#frame–Ï
 
assoGciated“with“it.‘EThe“phš¸ãysical“memory“serv˜er“guaran˜tees“that“when“theŽ¡‘#con•¸ãten“ts–qÄof“the“virtual“frame“is“accessed“a“phš¸ãysical“frame“will“bGe“pro˜vided“in“aŽ¡‘#short–UUamounš¸ãt“of“time“(cf.‘qÇguaran˜teed“virtual“frames“abGo˜v˜e).Ž¦‘#Eacš¸ãh–Þ^virtual“frame“in“a“con˜tainer“coun˜ts“against“the“con˜tainer's“o˜wner's“totalŽ¡‘#alloGcated–|ñframes.‘èšOnly“the“oš¸ãwner“of“a“con˜tainer“ma˜y“alloGcate“frames“in˜to“aŽ¡‘#con¸ãtainer.ŽŽŽŒ‹(Wƒ
 s\ȍ ý®£8‘Y²40‘Y<WÃCHAPTER–UU5.‘ÇVIR›ÿ*ªTUAL“MEMOR˜Y“MANA¸ãGEMENTŽŽ 
8G 
ý䍑Y²Conš¸ãtainers–§Åonly“hold“virtual“frames.‘7íWhen“the“con˜ten˜ts“of“a“frame“are“copied“toŽ¤

‘Ybac¸ãking–ëÄstore,‘áno“assošGciation“b˜et•¸ãw“een–ëÄthe“data“on“the“bac¸ãking“store“and“the“theŽ¡‘Yframe–UUidenš¸ãti

er“in“the“con˜tainer“is“main˜tained“b˜y“the“ph˜ysical“memory“serv˜er.Ž©̔‘YWhen–x¾a“task“starts,‘˜it“will“alloGcate“an“initial“conš¸ãtainer“and“sev˜eral“frames“in˜toŽ¡‘Yit.‘nTš¸ãypically‘ÿ*ª,‘the–ߍtotal“amoun˜t“of“memory“used“b˜y“an“application“will“exceedŽ¡‘Ythe–Etotal“n•¸ãum“bGer–Eof“guaranš¸ãteed“frames.‘{–When“the“task“reac˜hes“its“maxim˜umŽ¡‘Yp•Germitted›üallo“cation,‘Š¦it˜m•¸ãust˜reuse˜an˜a“v‘ÿqÇailable˜frame.‘ñ½T“ypically‘ÿ*ª,‘Š¦the˜task˜willŽ¡‘Ycš¸ãhoGose–¥Ìa“victim“page,‘Èèunmap“an˜y“pages“that“pGoin˜t“to“the“assoGciated“frame,‘Èèsw˜apŽ¡‘Ythe–r‰frame“out,‘Ÿåmark“the“frame“as“swš¸ãappGed“out“and“sa˜v˜e“the“sw˜ap“iden˜ti
er“in“theŽ¡‘Ymapping–n´database.‘½äAš¸ãt“this“pGoin˜t,‘u
the“task“ma˜y“reuse“the“frame.‘½äThis“exampleŽ¡‘Yillustrates–ð¿that“imagining“a“virtual“frame“as“bGound“to“a“page“in“a“task's“addressŽ¡‘Yspace–•Åfor“its“enš¸ãtire“lifetime“is“incorrect.‘3It“should“also“no˜w“bGe“clear“that“whenŽ¡‘Ythe–D|data“is“ev•¸ãen“tually›D|brough“t˜bac“k˜in“to˜memory˜from˜bac“king˜store,‘€Eit˜ma“yŽ¡‘Yreside–UUin“a“dierenš¸ãt“virtual“frame“(as“w˜ell“as“a“dieren˜t“ph˜ysical“frame).Ž¦‘YConš¸ãtainers–ÿýare“used“for“passing“data“bGet˜w˜een“tasks.‘UTT˜ypically“there“will“bGe“t˜w˜oŽ¡‘Ytasks,‘Øa–½éclienš¸ãt“and“a“serv˜er.‘«„L4“pro˜vides“a“mec˜hanism“to“map“pages“from“oneŽ¡‘Yaddress–[.space“to“another.›ƒSThis“mec¸ãhanism“could“bGe“used“to“e.g.˜map“a“

leŽ¡‘Yinš¸ãto–T:a“clien˜t“task's“address“space.‘nwAn“analysis“rev˜eals“sev˜eral“problems“withŽ¡‘Ythis–”¾approacš¸ãh.‘0If“the“serv˜er“dies“bGefore“the“clien˜t,‘¤˜the“mappings“in“the“clien˜t'sŽ¡‘Yaddress–Ÿspace“will“suddenly“disappGear.‘y¥Similarly‘ÿ*ª,›-ñif“the“serv¸ãer“is“malicious,˜itŽ¡‘Yma•¸ãy›qrev“ok“e˜the˜mappings˜at˜some˜incon“v“enien“t˜(i.e.‘%Öunreco“v“erable)address@hidden,‘kºif“a“serv˜erŽ¡‘YallošGcates–‘~resources“on“b˜ehalf“of“the“the“clien¸ãt“it“b˜ecomes“imp˜ossible“to“do“systemŽ¡‘Ywide–resource“accounš¸ãting“as“man˜y“serv˜ers“are“not“trusted“b˜y“the“system.‘‡AllŽ¡‘Yof–Ómthese“problems“are“solvš¸ãed“b˜y“con˜tainers.‘ìWhen“a“clien˜t“needs“to“read“dataŽ¡‘Yfrom–1>a“servš¸ãer,‘8vit“creates“a“con˜tainer,‘8vadds“the“n˜um˜bGer“of“frames“that“the“serv˜erŽ¡‘Ywill–‡¥require“for“the“opGeration“to“it“and“

nally“shares“the“con¸ãtainer“with“theŽ¡‘Yservš¸ãer.‘õAAfter–+Ósending“a“request“to“the“serv˜er,‘arthe“serv˜er“copies“the“data“in˜toŽ¡‘Ythe–qÄproš¸ãvided“con˜tainer.‘ÇIt“is“impGortan˜t“to“understand“that“the“serv˜er“doGes“notŽ¡‘Y\

ll"–,<the“conš¸ãtainer:‘•the“n˜um˜bGer“of“frames“remains“constan˜t;‘—°the“state“of“theŽ¡‘Ybits–qcš¸ãhanges.‘VÑWhen“the“serv˜er“returns“to“the“clien˜t,‘Ÿthe“clien˜t“rev˜ok˜es“the“shareŽ¡‘Yand–‰"is“noš¸ãw“able“to“map“the“frames“in˜to“its“address“space“b˜y“con˜tacting“theŽ¡‘Yphš¸ãysical–;3memory“serv˜er.‘#`Should“the“serv˜er“die,‘tªthe“clien˜t“remains“uneectedŽ¡‘Yas–î¸the“data“livš¸ães“in“the“ph˜ysical“memory“serv˜er.‘=ðThe“ph˜ysical“memory“serv˜erŽ¡‘Yis–ð"also“trusted“th¸ãus“if“a“task“is“malicious,‘Öit“can“only“bGe“malicious“during“theŽ¡‘Yinitial–/öcopš¸ãy“of“the“data“in˜to“the“con˜tainer,‘7oi.e.‘eRbGefore“the“clien˜t“starts“using“theŽ¡‘Ydata–[Èand“therebš¸ãy“giving“the“clien˜t“the“oppGortunit˜y“to“repGort“an“inconsistenciesŽ¡‘Yto–0ôthe“caller.‘£Finally‘ÿ*ª,‘gÛas“the“resources“are“alloGcated“bš¸ãy“the“clien˜t“via“systemŽ¡‘Yservš¸ãers,–UUglobal“resource“accoun˜ting“is“pGossible.ŽŸI&address@hidden
+²A–UUconš¸ãtainer“ma˜y“bGe“created“using:ŽŸÛ̍‘rerror‘™˜‰ffŽ–™št›UUpm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“create˜(out˜con¸ãtainer‘™˜‰ffŽ“t˜con¸ãtainer)ŽŽŽŒ‹)eõ
 s\ȍ ý®£8‘#Ã5.5.‘ÇCONT‘ÿ*ªAINERS’ôq»²41ŽŽ 8G 
ý䍑#A‘8Áconš¸ãtainer‘™˜‰ffŽ‘™št–8üis,‘qæfor“all“in˜ten˜ts“and“purpGoses,‘qæa“h˜urd‘™˜‰ffŽ–™šcap‘™˜‰ffŽ“t.‘½If–8üa“con˜tainer“isŽ¤

‘#shared–¯with“another“task,‘ƒthe“second“task“maš¸ãy“alloGcate“frames“whic˜h“coun˜tŽ¡‘#against–Êathe“conš¸ãtainer's“o˜wner's“total“alloGcated“pages.‘ÐìThis“m˜ust“bGe“used“withŽ¡‘#care.ŽŸ*¬‘#ÆSharing‘(éCon®9tainers‘
+²T‘ÿ*ªo–žalloš¸ãw“another“task“to“access“the“con˜ten˜ts“of“a“con-Ž¡‘#tainer,address@hidden,‘it“is“not“desirable“to“gran˜t“fullŽ¡‘#access–}Ÿto“the“conš¸ãtainer“to“the“remote“task:‘Â[trust“bGet˜w˜een“a“clien˜t“and“a“serv˜erŽ¡‘#m•¸ãust‘áexist,›ho“w“ev“er,˜that–átrust“is“t¸ãypically“limited“in“bGoth“directions“(neitherŽ¡‘#the–ð†clienš¸ãt“trusts“the“serv˜er“fully“nor“doGes“the“serv˜er“fully“trust“the“clien˜t).‘P-SinceŽ¡‘#clien•¸ãts›B
+pro“vide˜serv“er˜with˜the˜resources˜for˜the˜opGeration,‘Eåserv“ers˜need˜a˜guar-Ž¡‘#anš¸ãtee–{that“the“clien˜t“will“not“touc˜h“the“resources“while“it“is“in“a“critical“section.Ž¡‘#Horri

c–bsresults“can“emerge“if“this“happšGens“during“a“DMA‘bpop˜eration.‘™!Lik¸ãewise,Ž¡‘#clienš¸ãts–Î6need“to“ha˜v˜e“the“abilit˜y“to“cancel“an“exan˜t“request“and“reclaim“sharedŽ¡‘#resources–âsif“the“servš¸ãer“doGes“not“answ˜er“in“a“timely“manner“thereb˜y“also“prev˜en˜t-Ž¡‘#ing–#pthe“serv¸ãer“from“bšGeing“able“to“steal“resources.‘ÜIn“b˜oth“of“these“cases,‘VötheŽ¡‘#phš¸ãysical–½Ímemory“serv˜er“acts“as“the“trusted“third“part˜y‘ÿ*ª.‘«.The“ph˜ysical“memoryŽ¡‘#serv•¸ãer›Üñallo“ws˜a˜serv“er˜to˜loGc“k˜a˜con“tainer˜for˜a˜limited˜amoun“t˜of˜time˜duringŽ¡‘#whicš¸ãh–#the“clien˜t“ma˜y“not“access“or“destro˜y“the“resource.‘]aA˜t“an˜y“other“time,‘$atheŽ¡‘#clienš¸ãt–UUcan“cancel“the“serv˜er's“access“to“the“shared“resource.ŽŸ=W‘#T‘ÿ*ªo–ï
 
facilitš¸ãy“this,‘‘a“second“class“capabilit˜y“is“pro˜vided“to“access“con˜tainers.‘OµUsingŽ¡‘#this–UUcapabilitš¸ãy‘ÿ*ª,“clien˜ts“ma˜y“not“allošGcate“or“deallo˜cate“frames.Ž©ÛT‘<error‘™˜‰ffŽ–™št›¶kpm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“share˜(in˜con¸ãtainer‘™˜‰ffŽ“t˜con¸ãtainer,‘°in˜task‘™˜‰ffŽ“t˜re-Ž¡‘<mote,–UUout“conš¸ãtainer‘™˜‰ffŽ‘™št“w˜eak‘™˜‰ffŽ‘™šref‘Ç)Ž¦‘#Êwe–ÿ}'ak‘‰ffŽ‘®r“ef‘Ç[²can–¨ÇbGe“passed“to“the“sharee“using“the“normal“capabilit¸ãy“passing“pro-Ž¡‘#toGcol.ŽŸ*¬‘#ÆAllošQÇcating–ôôand“Deallo˜cating“Memory‘
+²Virtual–Opframes“ma¸ãy“bšGe“allo˜catedŽ¡‘#inš¸ãto–UUa“con˜tainer“using:Ž¦‘<error‘™˜‰ffŽ–™št›Ž2pm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“alloGcate˜(in˜con¸ãtainer‘™˜‰ffŽ“t˜con¸ãtainer,‘Üiin˜frame‘™˜‰ffŽ“tŽ¡‘<start,–UUin“out“inš¸ãt“coun˜t,“in“in˜t“
ags)Ž¦‘#Êstart›G;²is–Tcthe“rst“frame“iden¸ãti
er“to“use“for“the“new“memory‘ÿ*ª.‘qvIf“Êc‘ÿ}'ount˜²is“greaterŽ¡‘#than–>æone“then“frames“will“bšGe“allo˜cated“in“the“subsequen¸ãt“µcount–
¸“²1–>æframe“iden-Ž¡‘#ti
ers.‘òThe›€Bn•¸ãum“b•Ger˜of˜frames˜actually˜allo“cated˜is˜returned˜in˜Êc‘ÿ}'ount².‘òIf˜anŽ¡‘#iden¸ãti
er–‰Balready“references“a“virtual“frame,‘–>ÇEEXIST‘‰5²is“returned.‘
Ê
ags‘[c²is“a“bit-Ž¡‘#wise–èor“of:‘êíÇCONT‘¡E‰ff&fŽ–Ç«ALLOC‘¡E‰ff&fŽ“PARTIAL²,›èÇCONT‘¡E‰ff&fŽ“ALLOC‘¡E‰ff&fŽ“SQUASH‘·²and˜ÇCONT‘¡E‰ff&fŽ“ALLOC‘¡E‰ff&fŽ“EXTRA².Ž¡‘#If‘åØÇCONT‘¡E‰ff&fŽ–Ç«ALLOC‘¡E‰ff&fŽ“PARTIAL‘®²is–»set“and“the“n•¸ãum“bšGer–»of“frames“whic¸ãh“can“b˜e“allo˜catedŽ¡‘#bšGefore–"Èa“memory“allo˜cation“error“o˜ccurs“is“greater“than“one“but“less“than“Êc‘ÿ}'ountŽ¡‘#²then–\Lthe“maximš¸ãum“n˜um˜bšGer“of“frames“is“allo˜cated,‘ž
+counš¸ãt“is“set“to“that“n˜um-Ž¡‘#bGer–äand“the“error“is“returned.‘ÈuIf‘äÇCONT‘¡E‰ff&fŽ–Ç«ALLOC‘¡E‰ff&fŽ“PARTIAL‘±²is–änot“set“then“partialŽŽŽŒ‹*vÁ
 s\ȍ ý®£8‘Y²42‘Y<WÃCHAPTER–UU5.‘ÇVIR›ÿ*ªTUAL“MEMOR˜Y“MANA¸ãGEMENTŽŽ 
8G 
ý䍑Y²allošGcations–nwill“fail,‘´=coun¸ãt“will“b˜e“set“to“0“and“an“error“will“b˜e“returned.‘»õIfŽ¤

‘YÇCONT‘¡E‰ff&fŽ–Ç«ALLOC‘¡E‰ff&fŽ“SQUASH‘•²is–¤set“and“a“frame“iden¸ãti

er“already“references“a“frame,‘&atheŽ¡‘Yvirtual–„frame“will“bšGe“dropp˜ed“and“its“con•¸ãten“ts–„lost.‘Y,Using“this“
ag“is“dangerousŽ¡‘Yand–ÛbGe“a“sign“of“in¸ãternal“inconsistencies“in“the“task!‘KXAll“virtual“frames“shouldŽ¡‘YbGe–Þ"accounš¸ãted“for“b˜y“the“task“and“dealloGcated“explicitly‘ÿ*ª.‘
-If‘¥?ÇCONT‘¡E‰ff&fŽ–Ç«ALLOC‘¡E‰ff&fŽ“EXTRAŽ¡‘Y²is–      
xset“then“extra“frames“ma¸ãy“bšGe“allo˜cated“otherwise“the“phš¸ãysical“memory“serv˜erŽ¡‘Ywill–J§only“alloGcate“up“to“the“guaran¸ãteed“virtual“frame“limit.‘Q½This“
ag“shouldŽ¡‘Yonly–±ÄbGe“used“bš¸ãy“tasks“able“to“handle“the“added“complexit˜y“of“the“extra“frameŽ¡‘YprotoGcol.‘qÇThe›UUcon•¸ãten“ts˜of˜alloGcated˜frames˜is˜unde

ned.Ž©ý덑YDealloGcating–UUmemory“is“done“using:ŽŸ+¦‘rerror‘™˜‰ffŽ–™št›ípm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“dealloGcate˜(in˜con¸ãtainer‘™˜‰ffŽ“t˜con¸ãtainer,‘ðin˜frame‘™˜‰ffŽ“tŽ¡‘rstart,–UUin“out“inš¸ãt“coun˜t,“in“in˜t“
ags)ŽŸ+¥‘YThe–8ãargumenš¸ãts“ha˜v˜e“similar“meaning“as“those“in“Çpm‘¡E‰ff&fŽ–Ç«container‘¡E‰ff&fŽ“allocate².‘÷ÇCONT‘¡E‰ff&fŽ“DEALLOC‘¡E‰ff&fŽ“PARTIALŽ¡‘Y²and›8ãÇCONT‘¡E‰ff&fŽ–Ç«DEALLOC‘¡E‰ff&fŽ“SQUASH‘8›²are˜similar˜to˜ÇCONT‘¡E‰ff&fŽ“ALLOC‘¡E‰ff&fŽ“PARTIAL‘8›²and˜ÇCONT‘¡E‰ff&fŽ“ALLOC‘¡E‰ff&fŽ“SQUASHŽ¡‘Y²respGectiv¸ãely‘ÿ*ª.ŽŸ«Ô‘YÆMapping‘×VMemory‘
+²The–Wphš¸ãysical“memory“serv˜er“guaran˜tees“that“a“mappingŽ¡‘YopGeration–C‹takš¸ães“a“short“amoun˜t“of“time:‘N3no“guaran˜tee“is“made“that“this“willŽ¡‘YhappGen–»uimmediately“as“the“underlying“phš¸ãysical“frames“ma˜y“ha˜v˜e“to“bšGe“allo˜catedŽ¡‘Yin–»whicš¸ãh“case“the“ph˜ysical“memory“serv˜er“ma˜y“ha˜v˜e“to“bGe“reap“ph˜ysical“pagesŽ¡‘Yfrom–UUother“tasks'“extra“frame“alloGcations.Ž¦‘YThe–.6phš¸ãysical“memory“serv˜er“ma˜y“unmap“pages“at“an˜y“time.‘üjThis“allo˜ws“theŽ¡‘Yphš¸ãysical–ünmemory“serv˜er“to“fucn˜tionally“loGc˜k“the“con˜ten˜ts“of“the“frame“and“mo˜v˜eŽ¡‘Yit–^to“a“new“phš¸ãysical“frame.‘~âAs“suc˜h,‘0
 
tasks“m˜ust“bGe“prepared“to“reestablish“aŽ¡‘Ymapping–àwith“the“phš¸ãysical“memory“serv˜er“at“an˜ytime.‘¼gThe“ph˜ysical“memoryŽ¡‘Yservš¸ãer–UUis“not“a“registry“of“mappings:‘qÇit“is“a“cac˜he.Ž¦‘YRead-only–1Âmappings“ma¸ãy“bGe“returned“when“read/write“mapping“are“requested:Ž¡‘Ythe–ˆ½phš¸ãysical“memory“serv˜er“will“nev˜er“gran˜t“a“read/write“mapping“if“the“frame“isŽ¡‘Ymark•¸ãed›ù¥cop“y˜on˜write.‘S7In˜order˜to˜obtain˜a˜read/write˜mapping˜(and˜th“us˜forceŽ¡‘Ythe–Ζcopš¸ãy“on“write),‘ìæthe“task“m˜ust“add“the“enforced“write“
ag“to“the“mappingŽ¡‘Yrequest.ŽŸ+¦‘rerror‘™˜‰ffŽ–™št›°pm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“map˜(in˜con¸ãtainer‘™˜‰ffŽ“t˜con¸ãtainer,‘Ñ!in˜frame‘™˜‰ffŽ“t˜start,Ž¡‘rin–UUinš¸ãt“nr‘™˜‰ffŽ‘™šframes,“in“in˜t“
ags)ŽŸ+¥‘YFlags–8ãmaš¸ãy“is“a“bit˜wise“or“of:‘ãŽÇCONT‘¡E‰ff&fŽ–Ç«MAP‘¡E‰ff&fŽ“READ²,›8ãÇCONT‘¡E‰ff&fŽ“MAP‘¡E‰ff&fŽ“WRITE‘8›²and˜ÇCONT‘¡E‰ff&fŽ“MAP‘¡E‰ff&fŽ“FORCE‘¡E‰ff&fŽ“WRITE².Ž¡‘YÇCONT‘¡E‰ff&fŽ–Ç«MAP‘¡E‰ff&fŽ“FORCE‘¡E‰ff&fŽ“WRITE–UU²will“only“bšGe“resp˜ected“if‘rÇCONT‘¡E‰ff&fŽ–Ç«MAP‘¡E‰ff&fŽ“WRITE–UU²is“also“set.ŽŸ«Ô‘YÆDoing–IIt“All“A®9t“Once‘
+²When–•¥reading“to“or“writing“data“from“a“serv¸ãer,‘¥¸theŽ¡‘Ytask–jHwill“normally:‘›¬alloGcate“a“new“con¸ãtainer,‘o„

ll“it“with“memory“and“share“theŽ¡‘Yconš¸ãtainer–Ûjwith“the“serv˜er.‘I$Since“this“is“suc˜h“a“common“opGeration,‘óÍshort“cuts“areŽ¡‘Yproš¸ãvided–UUto“reduce“the“required“n˜um˜bšGer“of“rp˜cs:ŽŽŽŒ‹+†
 s\ȍ ý®£8‘#Ã5.5.‘ÇCONT‘ÿ*ªAINERS’ôq»²43ŽŽ 8G 
ý䍑<error‘™˜‰ffŽ–™št›‰cpm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“create‘™˜‰ffŽ“with˜(out˜con¸ãtainer‘™˜‰ffŽ“t˜con•¸ãtainer,‘²-in˜in˜in“tŽ¤

‘<frame‘™˜‰ffŽ‘™šcounš¸ãt,–UUout“con˜tainer‘™˜‰ffŽ‘™št“w˜eak‘™˜‰ffŽ‘™šref‘Ç)Ž©Û·‘<error‘™˜‰ffŽ–™št›)+pm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“create‘™˜‰ffŽ“from˜(out˜con¸ãtainer‘™˜‰ffŽ“t˜con¸ãtainer,‘2in˜con-Ž¡‘<tainer‘™˜‰ffŽ›™št–8ãsource,‘qÇin“frame‘™˜‰ffŽ˜t“start,‘qÇin“inš¸ãt“coun˜t,‘qÇout“con˜tainer‘™˜‰ffŽ‘™št“w˜eak‘™˜‰ffŽ‘™šref‘Ç)Ž¦‘<error‘™˜‰ffŽ–™št›Zpm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“create‘™˜‰ffŽ“grather˜(out˜con¸ãtainer‘™˜‰ffŽ“t˜con¸ãtainer,‘‰inŽ¡‘<con¸ãtainer‘™˜‰ffŽ›™št–UUsource,“in“frame‘™˜‰ffŽ˜t“[]“frames,“out“con¸ãtainer‘™˜‰ffŽ˜t“w¸ãeak‘™˜‰ffŽ˜ref‘Ç)ŽŸ!€‘#ÆCopš®9ying–™¬Data“In˜to“or“Out“of“Con˜tainers‘
+²It–Þ¬is“pGossible“to“cop¸ãy“dataŽ¡‘#in•¸ãto›êcon“tainers˜b“y˜mapping˜the˜frames˜in˜question˜and˜using‘>wÇmemcpy².‘†If˜thisŽ¡‘#tecš¸ãhnique–€ùis“used“there“is“no“easy“w˜a˜y“to“create“logical“copies“(cop˜y“on“write):address@hidden>:of“functions“are“aš¸ãv‘ÿqÇailable“whic˜h“logically“copies“the“con˜ten˜ts“of“oneŽ¡‘#con¸ãtainer–UUto“another:Ž¦‘<error‘™˜‰ffŽ–™št‘>*pm‘™˜‰ffŽ“conš¸ãtainer‘™˜‰ffŽ“cop˜y–>*(in“con˜tainer‘™˜‰ffŽ›™št“src,‘x_in“frame‘™˜‰ffŽ˜t“src‘™˜‰ffŽ˜start,Ž¡‘<in–coun¸ãtainer‘™˜‰ffŽ›™št“dest,‘CÏin“frame‘™˜‰ffŽ˜t“dest‘™˜‰ffŽ˜start,‘CÏin“in¸ãt“frame‘™˜‰ffŽ˜coun¸ãt,‘CÏoutŽ¡‘<frame‘™˜‰ffŽ–™št‘UUframe‘™˜‰ffŽ“error)Ž¦‘<error‘™˜‰ffŽ–™št‘8ãpm‘™˜‰ffŽ“conš¸ãtainer‘™˜‰ffŽ“cop˜y‘™˜‰ffŽ“scatter–8ã(in“con˜tainer‘™˜‰ffŽ›™št“src,‘qÇin“frame‘™˜‰ffŽ˜t“src‘™˜‰ffŽ˜start,Ž¡‘<in–8ãcoun¸ãtainer‘™˜‰ffŽ›™št“dest,‘qÇin“frame‘™˜‰ffŽ˜t“[]“dest‘™˜‰ffŽ˜frames,‘qÇout“frame‘™˜‰ffŽ˜t“frame‘™˜‰ffŽ˜error)Ž¦‘<error‘™˜‰ffŽ–™št‘‘‰pm‘™˜‰ffŽ“conš¸ãtainer‘™˜‰ffŽ“cop˜y‘™˜‰ffŽ“gather–‘‰(in“con˜tainer‘™˜‰ffŽ›™št“src,‘à–in“frame‘™˜‰ffŽ˜t“[]Ž¡‘<src‘™˜‰ffŽ–™šframes,‘Ein›coun¸ãtainer‘™˜‰ffŽ“t˜dest,‘Ein˜frame‘™˜‰ffŽ“t˜dest‘™˜‰ffŽ“start,‘Eout˜frame‘™˜‰ffŽ“tŽ¡‘<frame‘™˜‰ffŽ‘™šerror)Ž¦‘<error‘™˜‰ffŽ–™št‘8ãpm‘™˜‰ffŽ“conš¸ãtainer‘™˜‰ffŽ“cop˜y‘™˜‰ffŽ“scatter‘™˜‰ffŽ“gather–8ã(in“con˜tainer‘™˜‰ffŽ›™št“src,‘qÇin“frame‘™˜‰ffŽ˜tŽ¡‘<[]–'src‘™˜‰ffŽ›™šframes,‘lin“coun¸ãtainer‘™˜‰ffŽ˜t“dest,‘lin“frame‘™˜‰ffŽ˜t“[]“dest‘™˜‰ffŽ˜frames,‘loutŽ¡‘<frame‘™˜‰ffŽ–™št‘UUframe‘™˜‰ffŽ“error)Ž¦‘#If–Ya“frame“došGes“not“exist“in“the“source,‘™ûENOENT.“If“a“frame“do˜es“not“existŽ¡‘#in–÷’the“destination,›
 !ENOMEM‘÷iis“returned.‘XIn“bGoth“cases,˜the“frame“iden¸ãti
erŽ¡‘#causing–UUthe“error“is“returned“in“Êfr–ÿ}'ame‘‰ffŽ‘®err“or².Ž¤!€‘#ÆLoQÇc•®9king›ÕTCon“tainers˜and˜Pinning˜MemoryŽ¡‘#Finding–ÕTDealloQÇcate“MemoryŽ¡‘#Reusing‘ÕTframes‘
+²release‘™˜‰ffŽ‘™šdataŽŽŽŒ‹,–S
 s\ȍ ý®£8‘Y²44‘Y<address@hidden
‘Y²Data–¡will“bšGe“mo•¸ãv“ed–¡around“using“con¸ãtainers.‘TËDescrib˜e“ho¸ãw“to“read“and“write.Ž¤

‘YT›ÿ*ªask–UU->“FS“->“Device“driv•¸ãers.‘qÇLoGc“king‘UUmemory˜.‘qÇCac“hing.Ž©÷ލ‘YIt–ùøis“impGortanš¸ãt“that“clien˜ts“do“the“alloGcation“for“the“memory“whic˜h“they“use:Ž¡‘Ynot–}mthe“serv¸ãers“doing“allošGcations“on“b˜ehalf“on“clien¸ãts:‘Áöin“the“latter,‘‡rthere“is“noŽ¡‘Yw•¸ãa“y–UUto“do“resource“trac¸ãking.Ž¦‘YDiscuss–ºmmap:›;AloGcal“function“call.‘ŸþRPC‘¹øis“done“when“a“page“is“faulted:˜do“aŽ¡‘Yread–~½from“the“fs“(inš¸ãto“a“con˜tainer),‘‰then“map“the“data“from“the“con˜tainer“in˜toŽ¡‘Ythe–UUAS“as“required.Ž¦‘YMAP‘™˜‰ffŽ‘™šCOPY‘­•suc•¸ãks:‘"ùfs›­îm“ust˜sa“v“e˜all˜mo•Gdi
ed˜data.‘{’What˜happ“ens˜when˜aŽ¡‘Y100MB‘é·
le–éÒis“completely“rewritten“(or“1GB,“etc)?›Mñcan“w¸ãe“use“upGcalls?˜If“w¸ãe“do,Ž¡‘Ythe–à.fs“still“needs“to“hold“the“data“in“the“inš¸ãtern.‘QCan“w˜e“cop˜y“the“

le“on“diskŽ¡‘Yand–UUuse“that“as“bacš¸ãking“store“(think“ho˜w“deleting“an“opGen“

le“w˜orks).Ž¦‘YCan–’[a“readonly“priv‘ÿqÇate“mapping“once“faulted“bšGe“dropp˜ed“or“mš¸ãust“w˜e“promoteŽ¡‘Yit–*to“anonš¸ãymous“memory“and“send“it“to“sw˜ap“fearing“that“the“underlying“bloGc˜kŽ¡‘Ymigh•¸ãt›2.c“hange˜bGet“w“een˜dropping˜it˜and˜rereading˜it˜(e.g.‘fb“y˜another˜task˜moGdi-Ž¡‘Yfying–UUthe“

le)?ŽŸ'\퍍‘YÌ5.6Ž‘}æcCacŒÌhing–ffStore“AccessesŽŸ"ԍ‘Y²It–mðneed“not“bGe“explained“hoš¸ãw“cac˜hing“accesses“to“stores“can“radically“impro˜v˜e“theŽ¡‘YspGeed–Œdof“the“system.‘.ÍIn“a“monolithic“kš¸ãernel“this“cac˜he“is“added“to“b˜y“the“readers,Ž¡‘Yi.e.‘H¯the–Ú
device“driv•¸ãers,‘ò´supplemen“ted–Úwith“metadata“from“the“
le“systems“in“theŽ¡‘Yform–I"of“expšGected“access“patterns“based“on“the“t¸ãyp˜e“of“data“and“ho¸ãw“the“

leŽ¡‘Ywš¸ãas–‘4opGened“and“managed“b˜y“the“virtual“memory“manager.‘%dIn“our“design,‘
 
,thisŽ¡‘Yis–p€impšGossible:‘¨eac¸ãh“comp˜onen•¸ãt|eac“h–p€device“driv•¸ãer,‘·Keac“h–p€

le“system“and“theŽ¡‘Yphš¸ãysical–}¼memory“manager|all“liv˜e“in“their“o˜wn“address“spaces;‘ðadditionallyŽ¡‘Ythere–=Awill“rarely“bGe“mš¸ãutual“trust:‘Ažthe“ph˜ysical“memory“serv˜er“ma˜y“not“trustŽ¡‘Ythe–³J

le“systems“nor“the“\device“drivš¸ãers"“(consider“a“net˜w˜ork“bloGc˜k“device).‘‹§AŽ¡‘Ycac•¸ãhing›UUmec“hanism˜m“ust˜bGe˜designed.Ž¦‘YThe–r&purpGose“of“cacš¸ãhing“is“useful“for“m˜ultiple“readers“of“a“giv˜en“bloGc˜k.‘&
SometimesŽ¡‘Ythis–ìTis“the“same“task,›Uho•¸ãw“ev“er,˜more–ìToften“it“is“mš¸ãultiple“tasks.‘NÇTh˜us,‘Uha˜ving“theŽ¡‘Ycac•¸ãhing›uÕsc“heme˜in˜eac“h˜task˜is˜quite˜dicult˜as˜tasks˜do˜not˜trust˜one˜anotherŽ¡‘Yand–‘4furthermore,‘
 
,tasks“can“die“at“anš¸ãy“time“thereb˜y“dropping“their“cac˜he.‘%eTheŽ¡‘Ylogical–éplace“to“put“the“cacš¸ãhe“then“is“the“common“pGoin˜t“of“access,‘¬2the“

le“system.Ž¦‘YAn–~>argumenš¸ãt“could“bGe“made“that“in“realit˜y‘ÿ*ª,‘ˆxthe“common“pGoin˜t“of“access“is“theŽ¡‘Ydevice–”`drivš¸ãer:‘ïÝthere“can“bGe“m˜ultiple“accessors“of“the“same“store.‘.éThe“questionŽ¡‘Ymš¸ãust–°ÀbGe“ask˜ed:‘(what“happGens“when“the“device“driv˜er“is“made“the“cac˜he“pGoin˜tŽ¡‘Yinstead–Ýof“the“

le“system?‘t`Logically‘ÿ*ª,‘+¿a“large“tradeo“is“made“in“terms“of“theŽ¡‘Yabilitš¸ãy–Fèto“in˜telligen˜tly“decide“what“frame“to“k˜eep“in“the“cac˜he.‘løThe“

le“system,Ž¡‘Yfor–Ôinstance,‘îChas“meta-data“abGout“hoš¸ãw“a“giv˜en“frame“ma˜y“bGe“used“based“on“ho˜wŽŽŽŒ‹-¤e
 s\ȍ ý®£8‘#Ã5.6.‘ÇCAš¸ãCHING–UUSTORE“A˜CCESSES’ª5B²45ŽŽ 8G 
ý䍑#a–CO
le“is“opšGened“and“ma¸ãy“realize“that“some“frames“need“not“b˜e“placed“in“theŽ¤

‘#cac¸ãhe–¯¼bšGecause“they“will“b˜e“used“once“and“immediately“discarded.‘€ýThis“is“trueŽ¡‘#of–\ñthe“access“patterns“of“mš¸ãultimedia“applications.‘ˆšThese“t˜ypGes“of“hin˜ts“ma˜y“bGeŽ¡‘#gathered–Z¨at“
le“opGen“time.‘ÁThe“class“of“data“is“another“w•¸ãa“y–Z¨the“
le“systemŽ¡‘#is–ÍHable“to“predict“usage,›+Efor“example,˜it“understands“the“dierence“bGet•¸ãw“eenŽ¡‘#meta-data|inoGdes–‰Öand“directories|and“
le“data.‘KA‘‰Éle“system“is“also“able“toŽ¡‘#an•¸ãticipate›…­
le-lev“el˜access˜patterns˜whereas˜a˜device˜driv“er˜can˜only˜an“ticipateŽ¡‘#bloGc•¸ãk-lev“el–q=access“patterns,›x7i.e.‘ŀalthough“

le“data“is“sometimes“sequen¸ãtial,˜it“isŽ¡‘#often–l.scattered“across“a“section“of“the“disk“due“to“fragmen¸ãtation.‘¶QThe“primaryŽ¡‘#w•¸ãa“y–Ç¥a“the“device“drivš¸ãer“can“really“manage“its“cac˜he“is“through“historical“dataŽ¡‘#in–8_the“form“of“previous“accesses“(whicš¸ãh“is“itself“ev˜en“more“limited“as“the“deviceŽ¡‘#drivš¸ãer–µÅis“uninformed“of“cac˜he“hits“in“the“

le“system“cac˜he).‘“This“t˜ypGe“of“dataŽ¡‘#implies–qEsome“form“of“LRš¸ãU,“least“recen˜tly“used,address@hidden

le“system“can“mak¸ãe“smarter“decisions“ab˜out“what“whic¸ãhŽ¡‘#bloGcš¸ãks–Œ°to“evict“due“to“its“abilit˜y“to“mak˜e“predictions“based“on“clien˜t“hin˜ts“andŽ¡‘#its–UUgreater“understanding“of“the“data“in“the“store.ŽŸ‘#If–÷Šwš¸ãe“resign“ourselv˜es“to“k˜eeping“the“cac˜he“only“in“the“
le“system,‘
+Lthen“m˜ultipleŽ¡‘#users–-of“a“store“will“bšGe“p˜enalized“greatly:‘]ªa“blo˜cš¸ãk“read“b˜y“one“clien˜t“will“alw˜a˜ysŽ¡‘#bšGe–ƒ&reread“if“another“clien¸ãt“requests“the“same“blo˜c¸ãk:‘°not“only“is“the“store“accessedŽ¡‘#a–jgsecond“time,‘™dbut“tš¸ãwice“as“m˜uc˜h“memory“will“bGe“used“as“there“is“no“w˜a˜y“to“shareŽ¡‘#the–ë0frame“and“use“copš¸ãy“on“write.‘NfIs“this“pGenalt˜y“w˜orth“the“added“in˜telligence“inŽ¡‘#the–ý®

le“system?‘TAn“argumenš¸ãt“can“bGe“made“that“using“just“one“cac˜hing“strategyŽ¡‘#is–۔subGoptimital“when“wš¸ãe“could“just“ha˜v˜e“t˜w˜o:‘4ænothing“stops“bGoth“the“

le“systemŽ¡‘#and–؍the“device“drivš¸ãer“from“cac˜hing“thereb˜y“pGermitting“the“former“to“con˜tin˜ueŽ¡‘#to–ÏÚmainš¸ãtain“an“in˜telligen˜t“cac˜he“and“the“device“driv˜er“to“ha˜v˜e“its“simple“LR˜UŽ¡‘#cac•¸ãhe.‘íÚThis›)[argumen“t˜o“v“erloGoks˜sev“eral˜impGortan“t˜implications˜of˜ha“ving˜theŽ¡‘#t•¸ãw“o›'Lcac“hes.‘boFirst,‘0complexit“y˜is˜bGeing˜added˜to˜the˜device˜driv“er˜in˜the˜form˜ofŽ¡‘#a–5Élist“of“frames“it“has“read“and“giv¸ãen“out.‘gCThis“increase“in“memory“usage“has“aŽ¡‘#secondary–tœeect:‘jif“the“data“structures“bGecome“large“(as“it“certainly“will“for“largeŽ¡‘#activ¸ãe–

wstores),‘:?it“will“bšGe“imp˜ossible“to“kš¸ãeep“the“device“driv˜er“in“question“in“aŽ¡‘#small–¤Saddress“space“(an“impGortanš¸ãt“optimization“on“arc˜hitectures“without“taggedŽ¡‘#TLBs,›Žtable–‚¾loGok“aside“buers).‘úSecond,˜if“bGoth“the“
le“system“and“the“deviceŽ¡‘#driv•¸ãer›‹®k“eep˜a˜cac“he,‘´when˜the˜
le˜system˜has˜a˜cac“he˜miss,‘´the˜device˜driv“er˜thenŽ¡‘#c•¸ãhec“ks–ðáits“cacš¸ãhe“bGefore“going“to“disk.‘DlThe“device“driv˜er“will“only“ev˜er“ha˜v˜e“aŽ¡‘#cacš¸ãhe–ç,hit“if“there“are“m˜ultiple“readers:‘:³when“there“is“a“single“user“of“a“store,‘ý4theŽ¡‘#
le–
Ôsystem's“cacš¸ãhe“and“the“device“driv˜er's“cac˜he“will“bGe“iden˜tical.‘YñThis“bGegs“theŽ¡‘#question:‘Šhoš¸ãw–ž7often“will“there“bGe“m˜ultiple“users“of“a“single“store?‘LlThe“answ˜erŽ¡‘#seems–%”to“bGe“v¸ãery“rarely:‘Dassuming“the“common“case“that“the“store“has“someŽ¡‘#t¸ãypšGe–Ðof“

le“system“on“it,‘there“can“only“b˜e“m¸ãultiple“users“if“all“users“are“readersŽ¡‘#(note–<ñthat“not“evš¸ãen“one“can“bGe“a“writer“as“this“implies“cac˜he“consistency“issuesŽ¡‘#across–Ô
…
dierenš¸ãt“users“of“the“store).‘F×Since“this“is“a“v˜ery“rare“case,‘îHw˜e“argue“basedŽ¡‘#on–B¹the“philosophš¸ãy“\do“not“optimize“for“rare“cases"“that“the“o˜v˜erhead“is“greaterŽ¡‘#than–«>the“pGotenš¸ãtial“pa˜y“bac˜k“from“the“optimization.‘sƒHa˜ving“m˜ultiple“cac˜hesŽ¡‘#leads–‚Õto“a“further“problem:‘ÌÇa“frame“is“really“not“evicted“from“the“system“un¸ãtilŽ¡‘#it–e£is“purged“from“all“cac•¸ãhes.‘¢²Th“us–e£if“the“

le“system“cacš¸ãhe“is“smart“and“c˜hoGosesŽŽŽŒ‹.²Ã
 s\ȍ ý®£8‘Y²46‘Y<WÃCHAPTER–UU5.‘ÇVIR›ÿ*ªTUAL“MEMOR˜Y“MANA¸ãGEMENTŽŽ 
8G 
ý䍑Y²the–AnbšGetter“frames“to“evict,‘Eithe“co˜oresp˜onding“ph¸ãysical“frames“will“not“really“b˜eŽ¤
‘Yfreed–³
unš¸ãtil“the“device“driv˜er“also“drops“its“references“to“the“frames.‘ŠïTh˜us,‘Ê{theŽ¡‘Yeectivš¸ãeness–_of“the“smarter“cac˜hing“algorithm“is“impGeded“b˜y“the“device“driv˜er'address@hidden

le˜systemŽ¡‘Yla•¸ãy“er.‘qÇIn–UUthis“section,“wš¸ãe“detail“ho˜w“the“cac˜hing“will“w˜ork.Ž©â`‘YThe–_{

le“system“alloGcates“extra“frames“as“long“as“it“can“and“adds“all“eligibleŽ¡‘Yframes–ÕRto“the“cacš¸ãhe“b˜y“logically“cop˜ying“them“in˜to“a“loGcal“con˜tainer“(data“whic˜hŽ¡‘Yit–v$reasons“will“bšGe“read“once“and“then“dropp˜ed“ma¸ãy“not“b˜e“considered“eligible).Ž¡‘YWhen–zythe“phš¸ãysical“memory“serv˜er“w˜an˜ts“frames“bac˜k,‘ƒÂit“c˜hoGoses“a“victim“withŽ¡‘Yextra–øframes“and“asks“for“a“subset“of“them“bacš¸ãk.‘YÙIf“a“task“has“µG“²guaran˜teedŽ¡‘Yframes–Yæand“µG–敲+“µE‘ís²frames–YæalloGcated,‘›
+the“phš¸ãysical“memory“serv˜er“can“requestŽ¡‘Yup–¢€to“µE‘6
²frames“bac¸ãk“from“the“task.‘YHW‘ÿ*ªe“recall“from“the“de
nition“of“the“extraŽ¡‘Yframes–â¨that“extra“frames“mš¸ãust“bGe“giv˜en“bac˜k“quic˜kly“(i.e.‘Àthere“is“no“time“toŽ¡‘Ysend–UUthem“to“sw¸ãap).Ž¦‘YAlthough–T\a“task“cš¸ãhoGoses“a“frame“to“evict“from“its“cac˜he,‘TŽit“doGes“not“mean“thatŽ¡‘Ythe–Qframe“will“bGe“reused“immediately‘ÿ*ª,›
in“fact,˜it“is“sometimes“that“case“thatŽ¡‘Ythe–ŒQframe“cannot“bGe“reused“at“all“as“another“task“has“a“reference“to“the“frameŽ¡‘Y(in–h‰the“form“of“a“logical“copš¸ãy).‘«bAs“suc˜h,‘­Uit“w˜ould“bšGe“nice“to“b˜e“able“to“getŽ¡‘Yframes–ç›bacš¸ãk“that“migh˜t“still“bGe“in“the“ph˜ysical“memory“serv˜er.‘(šThe“follo˜wingŽ¡‘Ymecš¸ãhanism–Xis“th˜us“pro˜vided:‘w9when“a“frame“is“returned“to“the“ph˜ysical“memoryŽ¡‘Yservš¸ãer,‘dñthe–.Ÿreference“to“the“frame“is“turned“in˜to“a“soft“reference.‘ý¥Only“whenŽ¡‘Ythe–ºframe“is“actually“reused“bš¸ãy“the“ph˜ysical“memory“serv˜er“are“soft“referencesŽ¡‘Ydiscarded.‘[sA‘Itask–Zis“able“to“con•¸ãv“ert–Za“soft“reference“bacš¸ãk“to“a“hard“reference“b˜yŽ¡‘Yconš¸ãtacting–öVthe“ph˜ysical“memory“serv˜er“and“asking“for“the“frame“bac˜k.‘TÊIf“thisŽ¡‘YopšGeration–QÆreturns“ÇENOEXIST²,“the“frame“has“b˜een“reused“and“the“frame“m¸ãust“b˜eŽ¡‘Yreman•¸ãufactured›}r(e.g.‘êb“y˜retrieving˜it˜from˜bac“king˜store).‘êThis˜opGeration˜ma“yŽ¡‘Yalso–
 Ñfail“and“return“ÇENOMEM‘ IJif“the“task“doGes“not“ha•¸ãv“e– 
Ñenough“guaran¸ãteed“framesŽ¡‘Yand–UUthere“are“no“extra“frames“a¸ãv‘ÿqÇailable.ŽŸ‘.‘r»There–‘ois“a“problem“here“in“the“form“of“name“space“p<rollution:‘?Nthe“task“doingŽ¤
      
€‘rthe–V­cacšÃŽhing“has“to“remem˜bš<rer“the“mapping“of“blo˜cšÃŽks“to“con˜tainer“iden˜ti

ers“inŽ¡‘rorder–TÀto“reco•ÃŽv“er–TÀthe“soft“reference“but“the“task“has“no“w•ÃŽa“y–TÀto“knoÃŽw“when“theŽ¡‘rphšÃŽysical–ì;memory“serv˜er“expires“a“giv˜en“soft“reference.‘ÊTh˜us,‘ñôwhile“the“ph˜ysicalŽ¡‘rmemory–ÍüservšÃŽer“ma˜y“drop“a“frame,‘

%the“task“will“only“ev˜er“kno˜w“this“when“itŽ¡‘rtries–Æto“con•ÃŽv“ert–Æthe“soft“reference“to“a“hard“reference“and“fails“(i.e.‘Â

gets“a“cacÃŽheŽ¡‘rmiss).‘ïF‘ÿJªor–/Åframes“whicšÃŽh“this“is“nev˜er“done,‘Pãthe“memorized“mapping“will“nev˜er“b<reŽ¡‘rin•ÃŽv‡alidated.‘ÀÙThis›ƒma“y˜not˜b•<re˜a˜problem˜if˜a˜blo“c•ÃŽk˜oset˜to˜con“tainer˜id˜is˜used,Ž¡‘rho•ÃŽw“ev“er,‘èif–äJhashing“is“done“or“some“other“mapping“of“blo<rcšÃŽk“osets“to“con˜tainerŽ¡‘ridenšÃŽti

ers–ÕXis“used,“this“will“p<rollute“the“cac˜he“con˜tainer's“name“space.ŽŽŽŒ‹/address@hidden
   
phš¸ãysical“memory“serv˜er“will“do“an“up“call“to“a“victim“task“requesting“aŽ¤
‘#n•¸ãum“bGer–·tof“frames“bacš¸ãk.‘˜%The“ph˜ysical“memory“serv˜er“ma˜y“do“this“at“an˜y“timeŽ¡‘#for–ÒÈanš¸ãy“reason“and“it“expGects“to“receiv˜e“the“frames“bac˜k“from“the“task“withinŽ¡‘#a–Ñshort“amoun¸ãt“of“time“(the“victim“task“should“not“expšGect“to“b˜e“able“to“sendŽ¡‘#the–ƒframes“to“bacš¸ãking“store“in“that“amoun˜t“of“time).‘öPThe“ph˜ysical“memoryŽ¡‘#servš¸ãer–°will“nev˜er“request“guaran˜teed“frames.‘ÚAs“suc˜h,‘Ʋthis“n˜um˜bGer“will“alw˜a˜ysŽ¡‘#bšGe–ì°less“than“or“equal“to“the“n•¸ãum“b˜er–ì°of“allo˜cated“frames“minš¸ãus“the“n˜um˜bGer“ofŽ¡‘#guaran¸ãteed‘UUframes.Ž¤­¹‘<v¸ãoid›UUpm‘™˜‰ffŽ–™šreturn‘™˜‰ffŽ“frames˜(in˜in•¸ãt˜coun“t);Ž¡‘#The–×çphš¸ãysical“memory“send“this“message“to“the“task's“memory“con˜trol“thread.Ž¤

‘#The–á[thread“mš¸ãust“alw˜a˜ys“bGe“ready“to“receiv˜e:‘‰Óthe“ph˜ysical“memory“serv˜er“willŽ¡‘#nev•¸ãer›å
 
w“ait˜(th“us,‘û÷the˜thread˜m“ust˜bGe˜in˜the˜receiving˜state).‘L‹If˜the˜thread˜is˜notŽ¡‘#ready‘ÿ*ª,‘Ç]the–°phš¸ãysical“memory“serv˜er“assumes“that“the“task“is“misbGeha˜ving.‘ƒtTheŽ¡‘#phš¸ãysical–›èmemory“serv˜er“doGes“not“w˜ait“for“a“reply‘ÿ*ª,–­instead,“the–›èclien˜t“m˜ust“freeŽ¡‘#the–UUframes“using‘xâÇpm‘¡E‰ff&fŽ–Ç«release‘¡E‰ff&fŽ“frames–UU²as“describšGed“ab˜o•¸ãv“e.Ž©%0ԍ‘#Ì5.7Ž‘GæcThe–ffMemory“PšŒÌolicy“Serv˜erŽŸ¿‘#²Aš¸ãt–Дtask“creation“time,‘/cthe“task“m˜ust“negotiate“a“medium-term“con˜tract“forŽ¡‘#guaranš¸ãteed–ÐÀframes“and“determine“if“it“shall“ha˜v˜e“access“to“extra“frames.‘äThisŽ¡‘#maš¸ãy–’
+bGe“renegotiated“later.‘'æIt“m˜ust“bGe“renegotiated“when“the“con˜tract“expires.Ž¡‘#The–SJpGolicy“servš¸ãer“will“giv˜e“the“task“enough“time“to“send“frames“to“sw˜ap“bGeforeŽ¡‘#committing–UUif“the“n•¸ãum“bGer–UUof“guaran¸ãteed“frames“is“reduced.Ž¦‘#Ì5.8Ž‘GæcSending–ffData“to“SwŒÌapŽŸ¿‘#²When–cÕa“task“reacš¸ãhes“its“guaran˜teed“frame“alloGcation,‘§uit“m˜ust“bGegin“to“reuseŽ¡‘#its–Y‚a¸ãv‘ÿqÇailable“virtual“frames.›~MIf“the“data“is“frames“is“precious“(i.e.˜not“easliyŽ¡‘#constructed–Abš¸ãy“e.g.‘ka“calculation“or“b˜y“rereading“a“

le)“then“the“task“will“w˜an˜tŽ¡‘#to›Çåsa•¸ãv“e˜the˜con“ten“ts˜for˜when˜it˜is˜needed˜in˜the˜future.‘ÉvThis˜can˜bGe˜done˜b“yŽ¡‘#sending–UUa“frame“to“bac¸ãking“store.Ž©­¹‘<error‘™˜‰ffŽ–™št›¥pm‘™˜‰ffŽ“sw•¸ãap˜(in˜con“tainer‘™˜‰ffŽ‘™št˜c,‘"bin˜con“tainer‘™˜‰ffŽ–™šframe‘™˜‰ffŽ“t˜frame,‘"bin˜in¸ãtŽ¡‘<counš¸ãt,–UUout“[]“sw˜ap‘™˜‰ffŽ‘™šids)Ž¦‘#The–X+swš¸ãap“serv˜er“resides“in“(or“is“pro˜xied“b˜y)“the“phsyical“memory“serv˜er.‘zIThisŽ¡‘#alloš¸ãws–›ãthe“logical“copies“of“frames“to“bGe“preserv˜ed“across“the“sw˜appšGed“out“p˜erio˜dŽ¡‘#(i.e.‘¶logical–Ájcopies“are“not“lost“when“a“frame“is“senš¸ãt“to“sw˜ap).‘¶If“this“w˜as“notŽ¡‘#the–¤!case,‘·Ôthen“when“a“n•¸ãum“bGer–¤!of“tasks“all“with“a“reference“to“a“givš¸ãen“ph˜ysicalŽŽŽŒ‹0Óò
 s\ȍ ý®£8‘Y²48‘Y<WÃCHAPTER–UU5.‘ÇVIR›ÿ*ªTUAL“MEMOR˜Y“MANA¸ãGEMENTŽŽ 
8G ý䍑Y²send–í
+the“frame“to“swš¸ãap,‘÷the“sw˜ap“serv˜er“w˜ould“alloGcate“and“write“N‘ìãtimes“asŽ¤

address@hidden,‘ë–they“are“k˜ept“on“anŽ¡‘Yinactivš¸ãe–Délist“allo˜wing“thereb˜y“allo˜wing“a“task“to“reco˜v˜er“the“con˜ten˜ts“of“a“frameŽ¡‘YbGefore–†,it“is“
ushed“to“swš¸ãap“(that“is“to“sa˜y‘ÿ*ª,‘¯›sw˜ap“opGerations“are“not“sync˜hronous).Ž¦‘YSince–there“maš¸ãy“bGe“m˜ultiple“references“to“a“virtual“frame,‘=„it“is“recommendedŽ¡‘Ythat›ؼÇpm‘¡E‰ff&fŽ–Ç«container‘¡E‰ff&fŽ“orphan‘¡E‰ff&fŽ“data˜²b•Ge˜called˜b“efore˜the˜frame˜is˜reused˜to˜prev•¸ãen“tŽ¡‘Ygratuitous–>cop¸ãy“on“writes“from“bšGegin“p˜erformed.‘"It“also“imp˜ortan¸ãt“to“call“thisŽ¡‘Yfunction–UUif“the“frame“w¸ãas“bGeing“used“for“shared“memory‘ÿ*ª.Ž¦‘YSw¸ãap–UUquotas“(put“the“pšGolicy“in“the“memory“p˜olicy“serv¸ãer).ŽŸ'G덍‘YÌ5.9Ž‘}æcSelf‘ffPŒÌagingŽŸ‘Y²As–N$already“explained,‘‚Ètasks“are“self-paged.‘
The“default“implemenš¸ãtation“pro˜videdŽ¡‘Ywith–‡the“hš¸ãurd“has“eac˜h“thread“in“a“task“set“its“pager“(i.e.‘its“fault“handler)“toŽ¡‘Ya–1Äcommon“pager“thread“in“the“same“address“space.‘This“thread“main¸ãtains“aŽ¡‘Ymapping–ÝÚdatabase“whic¸ãh“assoGciates“virtual“addresses“with“either“a“frame“ofŽ¡‘Ymemory–êin“a“conš¸ãtainer“or“information“on“ho˜w“to“retriev˜e“the“data,‘4e.g.‘‰‡fromŽ¡‘Yswš¸ãap–UUor“a“
le“serv˜er.Ž¦‘YNormally‘ÿ*ª,‘‘‹there–…
€is“a“single“primary“con¸ãtainer“for“virtual“frames“that“is“createdŽ¡‘Yat–óstart“up.‘KA‘òôtask“maš¸ãy“c˜hoGose“to“use“more“con˜tainers“and“generally“will“forŽ¡‘Yshort›Ž£p•Gerio“ds˜of˜time˜(for˜instance,‘¶afor˜reading˜to˜and˜writing˜from˜serv¸ãers).‘/ŒTheŽ¡‘Ypager–¿mš¸ãust“alw˜a˜ys“bGe“able“to“handle“m˜ultiple“con˜tainers.‘/@When“using“additionalŽ¡‘Ycon¸ãtainers,‘>^frames–8
 
need“to“bšGe“added“to“them“to“b˜e“shared“with“the“serv¸ãer.‘h5TheŽ¡‘Ypager–S‹mš¸ãust“pro˜vide“a“mec˜hanism“to“allo˜w“the“caller“to“steal“guaran˜teed“framesŽ¡‘Yfor–UUthis“purpšGose“and“return“them“up˜on“deallo˜cation“of“the“con¸ãtainer.ŽŸ"address@hidden:‘ú¦if“the“pagerŽ¡‘Yhandles–fÉpage“faults,‘–who“will“handle“its“faults?‘"COne“of“t•¸ãw“o–fÉsolutions“are“pGossible:Ž¡‘Yeither–Ëall“of“the“text“and“data“mš¸ãust“bGe“wired“in˜to“memory“(thereb˜y“reducing“theŽ¡‘Yn•¸ãum“bGer–º*of“frames“aš¸ãv‘ÿqÇailable“for“m˜ultiplexing“application“memory)“or“the“pager“isŽ¡‘Yitself–‘~paged.‘&AThe“default“self-pager“implemen¸ãtation“uses“the“latter“option:‘êtheŽ¡‘Ypager,›1no¸ãw–*referred“to“as“the“primary“pager,˜is“bac•¸ãk“ed›*b“y˜a˜
nal˜pager.‘ETheŽ¡‘Y
nal–°=pager“only“maps“the“pagers“text“and“data“thš¸ãus“it“has“a“signi
can˜tly“smallerŽ¡‘Ymemory–]afoGotprinš¸ãt.‘‰ìCare“m˜ust“bGe“tak˜en“to“bšGe“sure“that“the“primary“pager“do˜esŽ¡‘Ynot–®acciden¸ãtly“allošGcate“memory“from“common“memory“p˜o˜ols:‘sin“the“v¸ãery“least“itŽ¡‘Yneeds–²eits“o¸ãwn“priv‘ÿqÇate“Çmalloc“²arena.‘;xAs“the“primary“pager“will“call,‘Òüfor“instance,Ž¡‘Yroutines–îßto“manipulate“capabilities,‘]this“text“mš¸ãust“bGe“bac˜k˜ed“b˜y“the“
nal“pager.ŽŽŽŒ‹1ઠs\ȍ 
ý®£8‘#Ã5.9.‘ÇSELF‘UUP‘ÿ*ªA¸ãGING’ó1»²49ŽŽ 8G 
ý䍑#Other–­coGde“can“also,›5ho•¸ãw“ev“er,˜mak“es–­calls“to“the“capabilit¸ãy“library‘ÿ*ª.‘[:This“meansŽ¤

‘#that–É£the“primary“pager“mš¸ãust“also“ha˜v˜e“a“cop˜y“of“these“mappings“in“its“database.Ž©N8‘#The–kpurpGose“of“the“

nal“pager“is“to“allo¸ãw“the“data“and“some“of“the“text“of“theŽ¡‘#primary–:'pager“to“bšGe“sw¸ãapp˜ed.‘h¸As“sucš¸ãh,‘?—the“
nal“pager“m˜ust“bGe“able“to“at“leastŽ¡‘#read–™[data“from“
le“servš¸ãers“and“retriev˜e“data“from“bac˜king“store.‘3This“ma˜y“implyŽ¡‘#signi
can•¸ãt›ؤo“v“erlap˜of˜the˜text˜for˜the˜primary˜and˜
nal˜pagers.‘û´In˜some˜case,Ž¡‘#ho•¸ãw“ev“er,‘Ñmit›¸›ma“y˜bGe˜useful˜to˜ha“v“e˜a˜second˜implemen“tation˜of˜a˜function˜onlyŽ¡‘#for–rFthe“

nal“pager“whicš¸ãh“is“optimized“for“size“or“a˜v˜oids“making“calls“to“certainŽ¡‘#libraries.ŽŸLn‘#ÆManaging‘ÕTMappingsŽŸ̍‘#²Mappings–«—are“normally“made“via“calls“to“Çmmap².‘tŽUnlik¸ãe“in“Unix,‘(this“is“notŽ¡‘#a–¸`system“trap:‘7Üinstead“it“is“almost“alw•¸ãa“ys›¸`implemen“ted˜loGcally‘ÿ*ª.‘šçÇmmap˜²m“ustŽ¡‘#assoGciate–òa“region“with“either“anon¸ãymous“memory“or“with“a“

le“on“disk.‘PµThis“isŽ¡‘#only–›ìa“matter“of“creating“a“few“en¸ãtries“in“the“mapping“database“so“that“faultsŽ¡‘#will–UUbrings“the“data“in“lazily‘ÿ*ª.Ž¦‘#Rather–üÊthan“ha•¸ãv“e–üÊthe“caller“manipulate“the“mapping“database“directly‘ÿ*ª,‘instead,Ž¡‘#a–ŽlošGcal“ip˜c“senš¸ãt“to“the“primary“pager.‘W0If“there“is“only“ev˜er“a“single“thread“whic˜hŽ¡‘#manipulates–Ûjthe“mapping“database,‘üïthere“will“bšGe“lo˜cš¸ãking“requiremen˜ts.‘If“theŽ¡‘#pager–UUthread“is“busy‘ÿ*ª,“then“the“lošGcal“ip˜c“call“blo˜cš¸ãks“in“the“k˜ernel.Ž¦‘#It–-is“not“alw•¸ãa“ys–-useful“to“fault“memory“in“lazily:address@hidden,‘›«it“will“normally“bGe“in“a“con˜tainer“from“where“it“m˜ust“bGe“consumed.Ž¡‘#The–ã‹task“will“generally“map“the“conš¸ãtainer“in˜to“memory“and“then“proGceed“to“useŽ¡‘#or–yat“least“cop¸ãy“the“data“to“some“other“loGcation.‘Z~Clearly‘ÿ*ª,‘rthe“faulting“the“pagesŽ¡‘#in–L©is“a“wš¸ãaste.‘nãAs“suc˜h,‘Nethe“pager“should“pro˜vide“a“mec˜hanism“whic˜h“allo˜ws“theŽ¡‘#caller–I£to“not“only“establish“a“mapping“from“a“con¸ãtainer“but“also“to“map“theŽ¡‘#pages–UUimmediately“in“the“address“space.Ž©
 
address@hidden:‘3Êsaš¸ãy“the“con˜ten˜ts“of“a“frame“are“sen˜t“to“sw˜ap“in“orderŽ¡‘#to–Sureuse“the“frame“for“something“else.‘l(The“frame“itself“m¸ãust“bGe“cleared,‘’ýi.e.Ž¡‘#disassoGcitated–UUwith“an¸ãy“logical“copies.‘qÇThis“is“done“using:ŽŸN8‘<error‘™˜‰ffŽ–™št›8ãpm‘™˜‰ffŽ“release‘™˜‰ffŽ“data˜(in˜pm‘™˜‰ffŽ“con¸ãtainer‘™˜‰ffŽ“t˜con¸ãtainer,‘qÇin˜pm‘™˜‰ffŽ“frame‘™˜‰ffŽ“t[]Ž¡‘<frames)address@hidden@anš
 
tage“of“Self-P˜agingŽŸ̍‘#²extend–UUmallošGc“via“e.g.‘qÇthe“slab“mec¸ãhanism,“extend“fop˜en“(ho¸ãw“a“
le“is“used).ŽŽŽŒ‹2îì s\ȍ 
ý®£8‘Y²50‘Y<address@hidden;‘#ÉChapter‘Ç
+6ŽŸ7r;‘#ÅThe–       T{POSIX“p‘Ç
+ersonalit‘ÿ8õyŽŸ9r;‘#²The–„{Hurd“oers“a“POSIX–„GAPI“to–„{the“user“bš¸ãy“default.‘,*This“is“implemen˜ted“in“theŽ¤

‘#GNU–ôC“library–ÃÑwhicš¸ãh“uses“the“services“pro˜vided“b˜y“the“Hurd“serv˜ers.‘½:Sev˜eralŽ¡‘#system–UUserv¸ãers“suppGort“the“C“library‘ÿ*ª.ŽŸ(̍‘#Ì6.1Ž‘GæcAuthenŒÌticationŽŸÎ#‘#²Capabilities–K?are“a“go•Go“d›K?w•¸ãa“y˜to˜giv“e˜access˜to˜protected˜ob‘Ž8jects˜and˜services.Ž¡‘#They–‘ëare“
exible,›áligh•¸ãt“w“eigh“t–‘ëand“generic.‘'‰Ho•¸ãw“ev“er,˜Unix–‘ëtraditionally“usesŽ¡‘#access–Rvconš¸ãtrol“lists“(A˜CL)‘R4to“restrict“access“to“ob‘Ž8jects“lik˜e“
les.‘}An˜y“task“runningŽ¡‘#with–<a“certain“user“ID‘
+can“access“all“
les“that“are“readable“for“the“user“withŽ¡‘#that–(Huser“ID.“Although“all“ob‘Ž8jects“are“implemen¸ãted“as“capabilities“in“the“Hurd,Ž¡‘#the–UUHurd“also“suppGorts“the“use“of“user“IDs“for“access“con¸ãtrol.Ž©r;‘#The–

nsystem“authenš¸ãtication“serv˜er“Çauth“²implemen˜ts“the“Unix“authen˜ticationŽ¡‘#scš¸ãheme–;gusing“capabilities.‘#þIt“pro˜vides“auth“capabilities,‘tìwhic˜h“are“assoGciatedŽ¡‘#with–¢Ja“list“of“eectivš¸ãe“and“a˜v‘ÿqÇailable“user“and“group“IDs.‘X§The“holder“of“suc˜h“aŽ¡‘#capabilitš¸ãy–Òµcan“use“it“to“authen˜ticate“itself“to“other“serv˜ers,‘ò
using“the“protoGcolŽ¡‘#bGelo¸ãw.Ž¦‘#Of– 
Acourse,‘*Þthese“other“servš¸ãers“m˜ust“use“(and“trust)“the“same“Çauth“²serv˜er“as“theŽ¡‘#user.›P¼Otherwise,‘the–ò4authen¸ãtication“will“fail.˜Once“a“capabilitš¸ãy“is“authen˜ticatedŽ¡‘#in–]òthe“servš¸ãer,‘`the“serv˜er“will“kno˜w“the“user“IDs“of“the“clien˜t,‘`and“can“use“themŽ¡‘#to–UUv‘ÿqÇalidate“further“opGerations.Ž¦‘#The–UUÇauth“²servš¸ãer“pro˜vides“t˜w˜o“t˜ypGes“of“capabilities:ŽŸ!¸w‘#ÆAuth‘­hcapabilities‘
+²An–2žauth“capabilitš¸ãy“is“assoGciated“with“four“v˜ectors“of“IDs:Ž¡‘#The–O$eectivš¸ãe“user“and“group“IDs,‘Pawhic˜h“should“bGe“used“b˜y“other“serv˜ers“to“au-Ž¡‘#thenš¸ãticate–œopGerations“that“require“certain“user“or“group“IDs,‘­Ïand“the“a˜v‘ÿqÇailableŽŽŸK’Êÿ51ŽŽŒ‹4ûÁ
 s\ȍ ý®£8‘Y²52’„\YÃCHAPTER–UU6.‘ÇTHE“POSIX“PERSONALITYŽŽ 8G 
ý䍑Y²user–³Ìand“group“IDs.‘,Av‘ÿqÇailable“IDs“should“not“bGe“used“for“authen¸ãtication“pur-Ž¤
‘YpšGoses,‘‘Óbut–…
ºcan“b˜e“turned“inš¸ãto“eectiv˜e“IDs“b˜y“the“holder“of“an“auth“capabilit˜yŽ¡‘Yat–UUan¸ãy“time.Ž©ù‘YNew–¯auth“capabilities“can“bGe“created“from“existing“auth“capabilities,‘Ńbut“onlyŽ¡‘Yif–õÔthe“requested“IDs“are“a“subsets“from“the“union“of“the“(eectivš¸ãe“and“a˜v‘ÿqÇailable)Ž¡‘YIDs–ŸÀin“the“proš¸ãvided“auth“capabilities.‘Q
      
If“an“auth“capabilit˜y“has“an“eectiv˜e“orŽ¡‘Ya¸ãv‘ÿqÇailable–UUuser“ID“0,“then“arbitrary“new“auth“ob‘Ž8jects“can“bGe“created“from“that.ŽŸ#Ns‘YÆP®9asspQÇort‘Ýcapabilities‘
+²A‘Y‰passpšGort–YÌcapabilit¸ãy“can“b˜e“created“from“an“authŽ¡‘Ycapabilitš¸ãy–®land“is“only“v‘ÿqÇalid“for“the“task“that“created“it.‘}It“can“bGe“pro˜vided“toŽ¡‘Ya–¸!servš¸ãer“in“an“authen˜tication“prošGcess“(see“b˜eloš¸ãw).‘š,F‘ÿ*ªor“the“clien˜t,‘ÐÔthe“passpGortŽ¡‘Ycapabilitš¸ãy–’€doGes“not“directly“implemen˜t“an˜y“useful“opGeration.‘)IF‘ÿ*ªor“the“serv˜er,‘¡ËitŽ¡‘Ycan–}SbGe“used“to“vš¸ãerify“the“iden˜tit˜y“of“a“user“and“read“out“the“eectiv˜e“user“andŽ¡‘Ygroup‘UUIDs.Ž¦‘YThe–´ÿauth“servš¸ãer“should“alw˜a˜ys“create“new“passpGort“ob‘Ž8jects“for“dieren˜t“tasks,Ž¡‘Yevš¸ãen–}äif“the“underlying“auth“ob‘Ž8ject“is“the“same,‘ˆso“that“a“task“ha˜ving“the“pass-Ž¡‘YpGort–|address@hidden:ŽŸ#Ns‘YÆPreconditions‘
+²The–Фclienš¸ãt“µC‘‡À²has“an“auth“capabilit˜y“implemen˜ted“b˜y“the“ÇauthŽ¡‘Y²servš¸ãer–D$µA².‘>4It“also“has“a“capabilit˜y“implemen˜ted“b˜y“the“serv˜er“µS‘“².‘>4It“w˜an˜ts“toŽ¡‘Yreauthenš¸ãticate–m™this“capabilit˜y“with“the“auth“capabilit˜y‘ÿ*ª,‘sªso“the“serv˜er“assoGciatesŽ¡‘Ythe–UUnew“user“and“group“IDs“with“it.Ž¦‘YThe–SŒservš¸ãer“also“has“an“auth“capabilit˜y“implemen˜ted“b˜y“its“trusted“Çauth“²serv˜er.Ž¡‘YF‘ÿ*ªor–úÅthe“reauthenš¸ãtication“to“succeed,‘
âthe“Çauth“²serv˜er“of“the“clien˜t“and“the“serv˜erŽ¡‘Ymš¸ãust– 
ÍbGe“iden˜tical.‘`DIf“this“is“the“case,‘+Nthe“participating“tasks“hold“task“info“capsŽ¡‘Yfor–UUall“other“participating“tasks“(bGecause“of“the“capabilities“they“hold).ŽŸM‘e8ä1.ŽŽŽ‘rThe–†zclienš¸ãt“µC‘=–²requests“the“passpGort“capabilit˜y“for“itself“from“the“auth“ca-Ž¡‘rpabilit¸ãy–UUfrom“µA².ŽŸ`‰’ˆ»Normally‘ÿJª,‘S°the–3EclienšÃŽt“will“request“the“passp<rort“capabilit˜y“only“once“and“storeŽŸ
       
€’ˆit–ÕXtogether“with“the“auth“capabilitÃŽy‘ÿJª.ŽŸà‰‘e8ä²2.ŽŽŽ‘rThe–¤2Çauth“²servš¸ãer“receiv˜es“the“request“and“creates“a“new“passpGort“capabilit˜yŽ¡‘rfor–„this“auth“capabilitš¸ãy“and“this“clien˜t.‘,
+The“passpGort“capabilit˜y“is“returnedŽ¡‘rto–UUthe“user.ŽŽŽŒ‹5G
 s\ȍ ý®£8‘#Ã6.1.‘ÇA¸ãUTHENTICA‘ÿ*ªTION’ÙG²53ŽŽ 8G 
ý䍍‘/8ä3.ŽŽŽ‘<The–UUuser“receivš¸ães“the“reply“from“the“Çauth“²serv˜er.Ž©ʍ‘<address@hidden,‘zÖwhic˜h“is“in-Ž¤

‘<v•¸ãok“ed–éöon“the“capabilitš¸ãy“the“clien˜t“w˜an˜ts“to“reauthen˜ticate.‘MýIt“pro˜vides“theŽ¡‘<passpGort–UUcapabilitš¸ãy“as“an“argumen˜t.ŽŸ+”‘/8ä4.ŽŽŽ‘<The–_Èservš¸ãer“µS‘óU²can“accept“the“passpGort“capabilit˜y‘ÿ*ª,‘åif“it“v˜eri

es“that“it“is“reallyŽ¡‘<implemen•¸ãted›?jb“y˜the˜Çauth˜²serv“er˜it˜trusts.‘jyIf˜the˜clien“t˜doGes˜not˜pro“vide˜aŽ¡‘<passpGort–"jcapabilitš¸ãy“to“the“trusted“Çauth“²serv˜er,‘,™the“authen˜tication“proGcessŽ¡‘<is–UUabGorted“with“an“error.Ž¦‘<Noš¸ãw–å1the“serv˜er“can“send“a“request“to“the“Çauth“²serv˜er“to“v‘ÿqÇalidate“theŽ¡‘<passpGort–UUcapabilitš¸ãy‘ÿ*ª.‘qÇThe“RPC“is“in˜v˜ok˜ed“on“the“passpGort“capabilit˜y‘ÿ*ª.ŽŸ+”‘/8ä5.ŽŽŽ‘<The–ÿGÇauth“²servš¸ãer“receiv˜es“the“v‘ÿqÇalidation“request“on“the“passpGort“capabilit˜yŽ¡‘<and–%`returns“the“task“ID‘%Tof“the“clien¸ãt“µC‘Ü|²that“this“passpšGort“b˜elongs“to,‘.øandŽ¡‘<the–¸Teectivš¸ãe“user“and“group“IDs“for“the“auth“cap“to“whic˜h“this“passpGortŽ¡‘<cap‘UUbGelongs.Ž©¶x‘R»The–øHurd“on“MacšÃŽh“returned“the“a˜v‡ailable“IDs“as“w˜ell.‘/tThis“feature“is“notŽ¤
    
€‘Rused–dÕanšÃŽywhere“in“the“Hurd,‘ˆ´and“as“the“a˜v‡ailable“IDs“should“not“b<re“usedŽ¡‘Rfor–ÐauthenšÃŽtication“an˜yw˜a˜y‘ÿJª,‘Ñthis“doš<res“not“seem“to“b˜e“useful.‘ÅYIf“it“is“needed,Ž¡‘Rit–ÕXcan“b<re“added“in“an“extended“vÃŽersion“of“the“v‡alidation“RPC.ŽŸ6x‘/8ä²6.ŽŽŽ‘<The–فservš¸ãer“receiv˜es“the“task“ID‘Ùand“the“eectiv˜e“user“and“group“IDs.Ž¤
‘<The–7servš¸ãer“no˜w“v˜eries“that“the“task“ID›7…
is“the“same“as“the“task“ID˜of“theŽ¡‘<sender–LÈof“the“reauthenš¸ãtication“request.‘™Only“then“w˜as“the“reauthen˜ticationŽ¡‘<request–Tomade“bš¸ãy“the“o˜wner“of“the“auth“cap.‘oIt“can“then“return“a“newŽ¡‘<capabilit•¸ãy›UUauthen“ticated˜with˜the˜new˜user˜and˜group˜IDs.Ž¦‘R»The–gdvšÃŽeri

cation“of“the“clien˜t's“task“ID‘g?is“necessary‘ÿJª.‘}DAs“the“passp<rort“capŽ¤
       
€‘Ris–ücopied“to“other“tasks,‘ªit“can“not“servšÃŽe“as“a“pro<rof“of“iden˜tit˜y“alone.‘;It“isŽ¡‘Rof–tcourse“absolutely“crucial“that“the“servÃŽer“holds“the“task“info“cap“for“theŽ¡‘RclienÃŽt–ýãtask“¾C‘Ž™»for“the“whole“time“of“the“proto<address@hidden,“as“the“serv˜er“needs“to“b<re“sure“that“the“reply“message“isŽ¡‘RsenšÃŽt–ÕXto“the“sender“thread“(and“not“an˜y“imp<roster).ŽŸ6x‘/8ä²7.ŽŽŽ‘<The–ÑÜclienš¸ãt“receiv˜es“the“reply“with“the“new,‘0ýreauthen˜ticated“capabilit˜y‘ÿ*ª.Ž¤

‘<Usually–ƒ8this“capabilitš¸ãy“is“assoGciated“in“the“serv˜er“with“the“same“abstractŽ¡‘<ob‘Ž8ject,–UUbut“dierenš¸ãt“user“creden˜tials.Ž¦‘R»Of–Ø[course“a“new“capabilitšÃŽy“m˜ust“b<re“created.‘Ð*Otherwise,‘all“other“usersŽ¤
      
€‘Rholding–ÕXthe“same“capabilitšÃŽy“w˜ould“b<re“aected“as“w˜ell.ŽŸ6x‘<²The–UUclienš¸ãt“can“no˜w“deallošGcate“the“passp˜ort“cap.Ž¦‘R»As–Ôusaid“bš<refore,‘Ô£normally“the“passp˜ort“cap“is“cacšÃŽhed“b˜y“the“clien˜t“for“otherŽ¡‘RreauthenÃŽtications.ŽŽŽŒ‹6b
 s\ȍ ý®£8‘Y²54’„\YÃCHAPTER–UU6.‘ÇTHE“POSIX“PERSONALITYŽŽ 8G 
ý䍑YÆResult‘
+²The–?£clienš¸ãt“µC‘ö¿²has“a“new“capabilit˜y“that“is“authen˜ticated“with“the“newŽ¤

‘Yeectivš¸ãe–I"user“and“group“IDs.‘M.The“serv˜er“has“obtained“the“eectiv˜e“user“andŽ¡‘Ygroup–UUIDs“from“the“Çauth“²serv¸ãer“it“trusts.Ž©z¡‘r»The–,Hurd“on“MacšÃŽh“uses“a“dieren˜t“proto<rcol,‘g¡whic˜h“is“more“complex“and“isŽ¤
  
€‘rvulnerable–,Gto“DoS‘+ïattacšÃŽks.‘ËîThe“ab<ro˜v˜e“protoš<rcol“can“not“readily“b˜e“used“onŽ¡‘rMacÃŽh,–ÕXbš<recause“the“sender“task“of“a“message“can“not“b˜e“easily“idenÃŽti

ed.ŽŸ'ú=‘YÌ6.2Ž‘}æcPros3cess‘ffManagemenŒÌtŽŸl>‘Y²The–æåÇproc“²servš¸ãer“implemen˜ts“Unix“proGcess“seman˜tics“in“the“Hurd“system.‘L÷It“willŽ¤

‘Yalso–ȃassign“a“PID‘Èeto“eacš¸ãh“task“that“w˜as“created“with“the“Çtask“²serv˜er,‘åNso“thatŽ¡‘Ythe–ÞÎo¸ãwner“of“these“tasks,›,and“the“system“administrator,˜can“at“least“send“theŽ¡‘YÇSIGKILL–UU²signal“to“them.ŽŸ,N‘YThe–³kÇproc“²servš¸ãer“uses“the“task“manager“capabilit˜y“from“the“Çtask“²serv˜er“to“getŽ¡‘Yhold–UUof“the“information“abGout“all“tasks“and“the“task“con¸ãtrol“caps.Ž¦‘r»The–&
 Ïproc“»servšÃŽer“migh˜t“also“b<re“the“natural“place“to“implemen˜t“a“
rst“p<rolicy“serv˜erŽŸ   
€‘rfor–ÕXthe“Ïtask“»servÃŽer.ŽŸ"address@hidden<re“guessed,“so“there“is“no“p˜oinÃŽt“in“protecting“it.ŽŸú¡‘Y²The–£signal“thread“ID‘£ycan“then“bGe“used“bš¸ãy“a“task“to“con˜tact“the“task“to“whic˜hŽ¡‘Yit›‡w•¸ãan“ts˜to˜send˜a˜signal.‘The˜task˜m“ust˜b•Go“otstrap˜its˜connection˜with˜theŽ¡‘Yin•¸ãtended›ÿreceiv“er˜of˜the˜signal,‘9©according˜to˜the˜proto•Gcol˜describ“ed˜in˜sectionŽ¡‘Y3.1.1–Èòon“page“14.‘BüAs“a“result,‘åit“will“receivš¸ãe“the“signal“capabilit˜y“of“the“receivingŽ¡‘Ytask.ŽŸ,N‘YThe–þ5sender“of“a“signal“mš¸ãust“then“pro˜vide“some“capabilit˜y“that“pro˜v˜es“thatŽ¡‘Ythe–¢sender“is“allo•¸ãw“ed–¢to“send“the“signal“when“a“signal“is“pGosted“to“the“signalŽ¡‘Ycapabilitš¸ãy–ÿ*ª.‘–F“or–ïexample,‘LVthe“o˜wner“of“the“task“con˜trol“cap“is“usually“allo˜w˜edŽ¡‘Yto–‚Õsend“anš¸ãy“signal“to“it.‘úGOther“capabilities“migh˜t“only“giv˜e“pGermission“to“sendŽ¡‘Ysome–UUt¸ãypGes“of“signals.Ž¦‘r»The–~IreceivšÃŽer“of“the“signal“decides“itself“whic˜h“signals“to“accept“from“whic˜h“otherŽ¤
 
€‘rtasks.‘The–íÿdefault“implemenšÃŽtation“in“the“C‘íùlibrary“pro˜vides“POSIX‘íùseman˜tics,Ž¡‘rplus–ÕXsome“extensions.ŽŸú¡‘Y²Signal–Mhandling“is“thš¸ãus“completely“implemen˜ted“loGcally“in“eac˜h“task.‘oThe“ÇprocŽŸ

‘Y²servš¸ãer–UUonly“serv˜es“as“a“name-serv˜er“for“the“thread“IDs“of“the“signal“threads.ŽŽŽŒ‹7[
 s\ȍ ý®£8‘#Ã6.2.‘ÇPR•¸ãOCESS‘UUMANA“GEMENT’¸Ê—²55ŽŽ 8G 
ý䍑<»The–ÐaÏproc“»servšÃŽer“can“not“hold“the“signal“capabilit˜y“itself,‘#as“it“used“to“do“inŽ¤
   
€‘<the–kXimplemenšÃŽtation“on“Mac˜h,‘Øas“it“do<res“not“trust“the“tasks“implemen˜ting“theŽ¡‘<capabilitšÃŽy‘ÿJª.‘ä~But–ß"this“is“not“a“problem,‘á”as“the“sender“and“receiv˜er“of“a“signal“canŽ¡‘<negotiate–VGand“b•<ro“otstrap–VGthe“connection“without“anšÃŽy“further“supp<rort“b˜y“the“ÏprocŽ¡‘<»servÃŽer.ŽŸò;‘<Also,‘Kthe–}ÇÏproc“»servšÃŽer“can“not“ev˜en“hold“task“info“caps“to“supp<rort“the“sender“of“aŽ¡‘<signal–†ùin“b•<ro“otstrapping–†ùthe“connection.‘­This“means“that“there“is“a“race“b<ret•ÃŽw“eenŽ¡‘<lo<roking–þ=up“the“signal“thread“ID›þ2from“the“PID˜in“the“Ïproc“»servÃŽer“and“acquiringŽ¡‘<a–éUtask“info“cap“for“the“task“ID‘éPof“the“signal“receivšÃŽer“in“the“sender.‘Ho˜w˜ev˜er,‘îTinŽ¡‘<Unix,‘mthere–ú6is“alw•ÃŽa“ys–ú6a“race“when“sending“a“signal“using“Ïkill».‘5ºThe“task“servÃŽerŽ¡‘<helps–ÕXthe“users“a“bit“here“bÃŽy“not“reusing“task“IDs“as“long“as“p<rossible.ŽŸ(˜‘#²Some–žysignals“are“not“implemenš¸ãted“b˜y“sending“a“message“to“the“task.‘M2ÇSIGKILLŽ¤

‘#²for–Àexample“destroš¸ãys“the“tasks“without“con˜tacting“it“at“all.‘³EThis“feature“isŽ¡‘#implemenš¸ãted–UUin“the“Çproc“²serv˜er.ŽŸD"‘#The–Esignal“capabilitš¸ãy“is“also“used“for“other“things,‘lik˜e“the“message“in˜terfaceŽ¡‘#(whic•¸ãh›þallo“ws˜y“ou˜to˜manipulate˜the˜en“vironmen“t˜v‘ÿqÇariables˜and˜Çauth˜²capabilit“yŽ¡‘#of–UUa“running“task,“etc).Ž¤#.,address@hidden)߆µT
cmtt12Ôfork()address@hidden,‘hªÇexec‘d̲o•¸ãv“erla“ysŽ¤
‘#the–ðmsame“task“with“a“new“prošGcess“image,‘W2b˜ecause“creating“a“new“task“andŽ¡‘#transferring–öTthe“assošGciated“state“is“exp˜ensiv¸ãe.‘
     
TÃIn“L4,‘^“only“the“threads“andŽ¡‘#virtual–lmemory“mappings“are“actually“k¸ãernel“state“assoGciated“with“a“task,‘qÂandŽ¡‘#exactly–hâthose“ha•¸ãv“e–hâto“bGe“destro•¸ãy“ed›hâb“y‘ŒoÇexec˜²an“yw“a“y‘ÿ*ª.‘¬nThere˜is˜a˜lot˜of˜HurdŽ¡‘#spšGeci

c–Ëcstate“asso˜ciated“with“a“task“(capabilities,›æúfor“example),˜but“it“is“dicultŽ¡‘#to–"preservš¸ãe“that.‘`³There“are“securit˜y“concerns,‘,XbGecause“POSIX‘"programs“do“notŽ¡‘#knoš¸ãw–¤habGout“Hurd“features“lik˜e“capabilities,‘¸,so“inheriting“all“capabilities“acrossŽ¡‘#Çexec–UU²unconditionally“seems“dangerous.ŽŸ¨˜‘<»One–µ
 could“think“that“if“a“program“is“not“Hurd-a•ÃŽw“are,‘»’then–µ 
it“will“not“makšÃŽe“an˜yŽ¤        
€‘<use–`mof“capabilities“except“through“the“normal“POSIX‘`OAPI,“and“thÃŽus“there“are“noŽ¡‘<capabilities–Qêexcept“those“that“the“GNU–QÉC“library–Qêuses“itself,‘l4whicšÃŽh“Ïexec“»can“tak˜eŽ¡‘<care›—Gof.‘²pHo•ÃŽw“ev“er,‘£±this˜is˜only˜true˜if˜co<rde˜that˜is˜not˜Hurd-a“w“are˜is˜nev“er˜mixedŽ¡‘<with–ʑHurd“spš<reci

c“co˜de,‘̸evšÃŽen“libraries“(unless“the“library“in˜timately“co•<rop“eratesŽ¡‘<with–¯‚the“GNU–¯xC“library).‘ºƒThis–¯‚wÃŽould“b<re“a“high“barrier“to“enable“Hurd“featuresŽ¡‘<in–ÕXotherwise“p<rortable“programs“and“libraries.Ž©ò;‘<It–v/is“b<retter“to“makšÃŽe“all“POSIX‘vfunctions“safe“b˜y“default“and“allo˜w“for“extensionsŽ¡‘<to–A
…let“the“user“spš<recify“whicÃŽh“capabilities“b˜esides“those“used“for“
le“descriptorsŽ¡‘<etc–ÕXto“b<re“inherited“bÃŽy“the“new“executable.Ž¦‘<F›ÿJªor–
 lÏposix_spawn()»,‘31this“is“straigh•ÃŽt-forw“ard.‘¨\F˜or– 
lÏexec»,‘31it“is“not.‘¨\either“sp<reci
cŽ¡‘<capabilities–could“b<re“markšÃŽes“as“\do“not“close“on“Ïexec»",‘!2or“v‡arian˜ts“of“the“ÏexecŽ¡‘<»function–ÕXcould“b<re“prošÃŽvided“whic˜h“tak˜e“further“argumen˜ts.ŽŽŽŒ‹8)
 s\ȍ ý®£8‘Y²56’„\YÃCHAPTER–UU6.‘ÇTHE“POSIX“PERSONALITYŽŽ 8G 
ý䍑Y²There–•÷are“also“implemen¸ãtation“obstacles“hindering“the“reuse“of“the“existing“task.Ž¤

‘YOnly–Ž4loGcal“threads“can“manipulate“the“virtual“memory“mappings,‘œland“there“isŽ¡‘Ya–Rlot“of“lošGcal“state“that“has“to“b˜e“k¸ãept“somewhere“b˜et•¸ãw“een–Rthe“time“the“oldŽ¡‘Yprogram–lnbGecomes“defunct“and“the“new“binary“image“is“installed“and“used“(notŽ¡‘Yto–UUspšGeak“of“the“actual“program“snipp˜et“that“runs“during“the“transition).Ž©ÓV‘YSo–Nthe“decision“wš¸ãas“made“to“alw˜a˜ys“create“a“new“task“with“Çexec²,‘Oand“cop˜y“theŽ¡‘Ydesired–ö6state“from“the“curren¸ãt“task“to“the“new“task.‘TkThis“is“a“clean“solution,Ž¡‘YbGecause–aÄa“new“task“will“alw•¸ãa“ys–aÄstart“out“without“anš¸ãy“capabilities“in“serv˜ers,Ž¡‘Yetc,‘Ÿand–ö]thš¸ãus“there“is“no“need“for“the“old“task“to“try“to“destro˜y“all“unneededŽ¡‘Ycapabilities–#and“other“lošGcal“state“b˜efore“Çexec².‘1Also,›–in“case“the“Çexec“²fails,˜theŽ¡‘Yold–’rprogram“can“con•¸ãtin“ue–’rto“run,‘¹levš¸ãen“if“the“Çexec“²fails“at“a“v˜ery“late“pGoin˜t“(thereŽ¡‘Yis–UUno“\pGoinš¸ãt“of“no“return"“un˜til“the“new“task“is“actually“up“and“running).Ž¦‘YF‘ÿ*ªor–½Ôsuid“and“sgid“applications,‘Ü!the“actual“Çexec“²has“to“bGe“done“b¸ãy“the“
lesystem.Ž¡‘YHo•¸ãw“ev“er,‘»öthe–§o
lesystem“can“not“bšGe“b˜othered“to“also“transfer“all“the“user“stateŽ¡‘Yinš¸ãto–§<the“new“task.‘7¿It“can“not“ev˜en“do“that,‘ÊbGecause“it“can“not“accept“capabilitiesŽ¡‘Yimplemen•¸ãted›¸b“y˜un“trusted˜serv“ers˜from˜the˜user.‘ðñAlso,‘ŠQthe˜

lesystem˜doGes˜notŽ¡‘Yw•¸ãan“t–NŸto“rely“on“the“new“task“to“bšGe“co˜op˜erativ¸ãe,‘O÷b˜ecause“it“do˜es“not“necessarilyŽ¡‘Ytrust–UUthe“coGde,“if“is“is“oš¸ãwned“b˜y“an“un˜trusted“user.ŽŸ
    
΍‘e8ä1.ŽŽŽ‘rThe–Úuser“creates“a“new“task“and“a“conš¸ãtainer“with“a“single“ph˜ysical“page,Ž¡‘rand–Ÿ¡makš¸ães“the“Çexec“²call“to“the“

le“capabilit˜y‘ÿ*ª,‘²4pro˜viding“the“task“con˜trolŽ¡‘rcapabilitš¸ãy‘ÿ*ª.‘S~Before–úzthat,‘

¦it“creates“a“task“info“capabilit˜y“from“it“for“its“o˜wnŽ¡‘ruse.Ž©▍‘e8ä2.ŽŽŽ‘rThe–

lesystem“c•¸ãhec“ks–pGermission“and“then“rev•¸ãok“es–all“other“users“on“theŽ¡‘rtask–jÈconš¸ãtrol“capabilit˜y‘ÿ*ª.‘²
 
This“will“rev˜ok˜e“the“users“access“to“the“task,address@hidden(It“is“assumedŽ¡‘rthat–öthe“

lesystem“should“not“create“the“task“itself“so“the“user“can“notŽ¡‘ruse–UUsuid/sgid“applications“to“escapGe“from“their“quota“restriction).Ž¦‘e8ä3.ŽŽŽ‘rThen–4#it“rev•¸ãok“es–4#access“to“the“proš¸ãvided“ph˜ysical“page“and“writes“a“trustedŽ¡‘rstartup–UUcoGde“to“it.Ž¦‘e8ä4.ŽŽŽ‘rThe–§Î

lesystem“will“also“prepare“all“capabilit¸ãy“transactions“and“write“theŽ¡‘rrequired–ëpinformation“(together“with“other“useful“information)“in“a“stac¸ãkŽ¡‘ron–UUthe“ph¸ãysical“page.Ž¦‘e8ä5.ŽŽŽ‘rThen–ë¼it“creates“a“thread“in“the“task,›Vand“starts“it.‘4üA¸ãt“pagefault,˜it“willŽ¡‘rproš¸ãvide–UUthe“ph˜ysical“page.Ž¦‘e8ä6.ŽŽŽ‘rThe–”›startup“coGde“on“the“phš¸ãysical“page“completes“the“capabilit˜y“transfer.Ž¡‘rIt–Šíwill“also“install“a“small“pager“that“can“install“

le“mappings“for“thisŽ¡‘rbinary–UUimage.‘qÇThen“it“jumps“to“the“enš¸ãtry“pGoin˜t.Ž¦‘e8ä7.ŽŽŽ‘rThe–î¸

lesystem“in“the“mean¸ãwhile“has“done“all“it“can“do“to“help“the“taskŽ¡‘rstartup.‘øIt–¯ewill“proš¸ãvide“the“con˜ten˜t“of“the“binary“or“script“via“paging“orŽ¡‘r
le–ö[reads,›      
Zbut“that“happGens“async¸ãhronously‘ÿ*ª,˜and“as“for“an¸ãy“other“task.‘RSoŽ¡‘rthe–UU

lesystem“returns“to“the“clien¸ãt.ŽŽŽŒ‹981
 s\ȍ ý®£8‘#Ã6.2.‘ÇPR•¸ãOCESS‘UUMANA“GEMENT’¸Ê—²57ŽŽ 8G 
ý䍍‘/8ä8.ŽŽŽ‘<The–ƒ        
clienš¸ãt“can“then“send“its“un˜trusted“information“to“the“new“task.‘úäTheŽ¤
‘<new–Àtask“got“the“clienš¸ãt's“thread“ID‘¬from“the“
lesystem“(pGossibly“pro˜videdŽ¡‘<bš¸ãy–hqthe“clien˜t),‘m8and“th˜us“kno˜ws“to“whic˜h“thread“it“should“listen.‘«The“newŽ¡‘<task–5ûwill“not“trust“this“information“ultimativ¸ãely“(ie,‘<@the“new“task“will“useŽ¡‘<the–×authen¸ãtication,‘0·roGot“directory“and“other“capabilities“it“got“from“theŽ¡‘<
lesystem),‘Ä°but– 
‡it“will“accept“all“capabilities“and“mak¸ãe“propGer“use“of“them.ŽŸ荍‘/8ä9.ŽŽŽ‘<Then–`åthe“new“task“will“send“a“message“to“proGc“to“takš¸ãe“o˜v˜er“the“old“PID‘`§andŽ¡‘<other–ȆprošGcess“state.‘ËZHo¸ãw“this“can“b˜e“done“b˜est“is“still“to“b˜e“determinedŽ¡‘<(likš¸ãely–1,the“old“task“will“pro˜vide“a“proGcess“con˜trol“capabilit˜y“to“the“newŽ¡‘<task).‘qÇAš¸ãt–UUthat“momen˜t,“the“old“task“is“desrto˜y˜ed“b˜y“the“proGc“serv˜er.Ž©µ‘#This–:óis“a“coarse“and“incomplete“description,address@hidden
 
À‘#ÆThe–ÕTstartup“informationŽŸ•±‘#²The–rÜfolloš¸ãwing“information“is“passed“to“the“new“task“b˜y“the“paren˜t“(the“

lesystemŽ¡‘#in–UUthe“suid“case).‘qÇEvš¸ãery“item“is“a“mac˜hine“w˜ord.Ž¦‘/8ä1.ŽŽŽ‘<ÇmagicŽ©‹t‘<²The–UU

rst“four“b¸ãytes“are“ÇE²,“ÇX²,“ÇE²,“ÇC².Ž¤荍‘/8ä2.ŽŽŽ‘<Çprogram–?ýheader“locationŽ¡‘/8ä²3.ŽŽŽ‘<Çprogram–?ýheader“sizeŽ¦‘<²The–ï:loGcation“and“size“of“the“program“header.‘?vThe“meaning“of“this“
eldŽŸ
‘<depGends–UUon“the“binary“format.Ž¡‘/8ä4.ŽŽŽ‘<Çfeature‘?ýflagsŽ¦‘<²This–àbit-
eld“indicates“whicš¸ãh“of“the“follo˜wing“information“is“presen˜t.‘¼hIfŽ¤
‘<the–—ëinformation“is“not“presenš¸ãt,‘¨‘the“correspGonding“mac˜hine“w˜ords“are“un-Ž¡‘<de

ned.‘qÇThis–UUproš¸ãvides“simple“v˜ersion“con˜trol.ŽŸÜ£‘R»They–ÕXcould“also“b<re“unde

ned.ŽŸ\¢‘/8ä²5.ŽŽŽ‘<Çwortel–?ýthread“IDŽŸ荍‘/8ä²6.ŽŽŽ‘<Çwortel–?ýcontrol“cap“IDŽ¦‘<²The–³Îthread“ID‘³¶of“the“Çwortel“²rošGotserv¸ãer,‘Ëmand“the“lo˜cal“ID‘³¶of“the“ÇwortelŽ¡‘<²conš¸ãtrol–ífcap.‘9ùThe“Çwortel“²con˜trol“cap“allo˜ws“the“user“to“mak˜e“privilegedŽ¡‘<system–½õcalls.‘«¨This“

eld“is“only“presenš¸ãt“if“the“user“has“this“capabilit˜y‘ÿ*ª.Ž¡‘<Usually‘ÿ*ª,–UUthis“is“only“the“case“for“some“initial“serv¸ãers“at“b•Go“otstrap.ŽŸ荍‘/8ä7.ŽŽŽ‘<Çphysmem–?ýthread“IDŽŽŽŒ‹:FÔ
 s\ȍ ý®£8‘Y²58’„\YÃCHAPTER–UU6.‘ÇTHE“POSIX“PERSONALITYŽŽ 8G 
ý䍍‘e8ä²8.ŽŽŽ‘rÇphysmem–?ýcontrol“cap“IDŽ©š‘r²The–«Öthread“ID‘«Àphš¸ãysical“memory“serv˜er,‘Áwand“the“loGcal“ID‘«Àof“the“ÇphysmemŽ¤

‘r²conš¸ãtrol–!ncap.‘`zThis“cap“can“bGe“used“to“manage“the“ph˜ysical“memory“of“thisŽ¡‘rtask.ŽŸ4‘e8ä9.ŽŽŽ‘rÇphysmem–?ýstartup“page“container“cap“IDŽ¦‘r²The–‚conš¸ãtainer“cap“ID‘Qfor“the“startup“coGde,‘Econ˜taining“this“information,Ž¡‘rthe–°initial“pager,‘Ç]and“other“startup“cošGde.‘ƒtThis“con¸ãtainer“is“mapp˜ed“in¸ãtoŽ¡‘rthe–Ï&address“space“of“the“task“outside“of“the“actual“program,‘íšand“can“bGeŽ¡‘runmappGed–ì—b¸ãy“the“program“after“it“has“used“this“information“and“installedŽ¡‘rits–
 
oš¸ãwn“pager,‘'*b˜y“destro˜ying“this“con˜tainer,‘'*to“reclaim“the“virtual“addressŽ¡‘rspace–UUand“ph¸ãysical“memory“it“oGccupies.ŽŸ4‘`8ã10.ŽŽŽ‘r(More–UUto“come.)ŽŸ(£‘YÌ6.3Ž‘}æcUnix–ffDomain“Sos3c•ŒÌk“etsŽŸ»‘Y²In–ØFthe“Hurd“on“Macš¸ãh,‘9there“w˜as“a“global“p
oGcal“serv˜er“that“pro˜vided“unixŽ¡‘Ydomain›ÈosoGc•¸ãk“ets˜and˜pipGes˜to˜all˜users.‘ËThis˜will˜not˜w“ork˜v“ery˜w“ell˜in˜theŽ¡‘YHurd–­qon“L4,›ÃxbGecause“for“descriptor“passing,˜read:‘!ÿcapabilit¸ãy“passing,˜the“unixŽ¡‘Ydomain›ö‚soGc•¸ãk“et˜serv“er˜needs˜to˜accept˜capabilities˜in˜transit.‘UMUser˜capabilitiesŽ¡‘Yare–·often“implemenš¸ãted“b˜y“un˜trusted“serv˜ers,–Ïpthough,“and–·th˜us“a“global“p
oGcalŽ¡‘Yserv¸ãer–UUrunning“as“roGot“can“not“accept“them.Ž©d“‘YHo•¸ãw“ev“er,‘9×unix–2ødomain“sošGc•¸ãk“ets–2øand“pip˜es“can“not“b˜e“implemen¸ãted“lo˜cally“in“theŽ¡‘Ytask.‘6PAn–ì-external“task“is“needed“to“hold“buered“data“capabilities“in“transit.Ž¡‘Yin–½žtheory‘ÿ*ª,‘×°a“new“task“could“bšGe“used“for“ev¸ãery“pip˜e“or“unix“domain“so˜c•¸ãk“etpair.Ž¡‘YHo•¸ãw“ev“er,–+£in›!7practice,“one˜serv•¸ãer˜for˜eac“h˜user˜w“ould˜suce˜and˜p•Gerform˜b“etter.Ž¦‘YThis–ëÜw¸ãorks,‘ôbšGecause“access“to“Unix“Domain“So˜c•¸ãk“ets–ëÜis“con¸ãtrolled“via“the“
lesys-Ž¡‘Ytem,›àšand–Ãkaccess“to“pipGes“is“con¸ãtrolled“via“
le“descriptors,˜usually“b¸ãy“inheritance.Ž¡‘YF‘ÿ*ªor–æ}example,›
+Æif“a“fo“is“installed“as“a“passiv¸ãe“translator“in“the“lesystem,˜theŽ¡‘Y
rst–…Žuser“accessing“it“will“create“a“pipšGe“in“his“p
o˜cal“serv¸ãer.‘sF‘ÿ*ªrom“then“on,‘‘anŽ¡‘Yactivš¸ãe–>translator“m˜ust“bšGe“installed“in“the“no˜de“that“redirects“an¸ãy“other“users“toŽ¡‘Ythe–-)righš¸ãt“p
oGcal“serv˜er“implemen˜ting“this“
fo.‘dcThis“is“asymmetrical“in“that“theŽ¡‘Yrst–½Àuser“to“access“a“
fo“will“implemenš¸ãt“it,‘×Ûand“th˜us“pa˜y“the“costs“for“it.‘«     
ButŽ¡‘Yit–cŠdoGes“not“seem“to“cause“anš¸ãy“particular“problems“in“implemen˜ting“the“POSIXŽ¡‘Yseman¸ãtics.Ž¦‘YThe›®•GNU–®~C“library˜can˜con•¸ãtact‘]*/serv“ers/sošGc“k“et/p
o˜cal–®•to“implemen¸ãt“so˜c•¸ãk“et-Ž¡‘Ypair,‘|õor–ustart“a“p
oGcal“servš¸ãer“for“this“task's“exclusiv˜e“use“if“that“nošGde“do˜es“notŽ¡‘Yexist.Ž¦‘YAll–¤this“are“optimizations:‘;It“should“wš¸ãork“to“ha˜v˜e“one“p
ošGcal“pro˜cess“for“eac¸ãhŽ¡‘YsošGc•¸ãk“etpair.‘DHo“w“ev“er,‘ç²p˜erformance–ÌIshould“b˜e“b˜etter“with“a“shared“p
o˜cal“serv¸ãer,Ž¡‘Yone–UUpGer“user.ŽŽŽŒ‹;Pû
 s\ȍ ý®£8‘#Ã6.4.‘ÇPIPES’L²59ŽŽ 8G 
ý䍍‘#Ì6.4Ž‘GæcPips3esŽŸü¨‘#²PipGes–Pzare“implemen¸ãted“using‘tÇsocketpair()²,‘Cthat“means“as“unnamed“pair“ofŽ¤

‘#Unix–ƃDomain“SošGc•¸ãk“ets.‘ÅRThe–ƃÇpflocal“²serv¸ãer“will“supp˜ort“this“bš¸ãy“implemen˜tingŽ¡‘#pipšGe–UUseman¸ãtics“on“the“so˜c•¸ãk“etpair–UUif“requested.ŽŸ<»It–E¹wšÃŽas“considered“to“use“shared“memory“for“the“pip<re“implemen˜tation.‘DBut“w˜eŽ¤
       
€‘<are–‡not“a•ÃŽw“are–‡of“a“loš<rcÃŽk-free“proto˜col“using“shared“memory“with“mÃŽultiple“readersŽ¡‘<and–JmšÃŽultiple“writers.‘%0It“migh˜t“bš<re“p˜ossible,‘g4but“it“is“not“obšÃŽvious“if“that“w˜ouldŽ¡‘<b•<re›mLfaster:‘÷Pip“es˜are˜normally˜used˜with˜Ïread()˜»and˜Ïwrite()»,‘“Iso˜the˜data˜hasŽ¡‘<to–Ž6bš<re“copied“from“and“to“the“supplied“buer.‘ñºThis“can“b˜e“done“ecienÃŽtly“inŽ¡‘<L4–#ºevšÃŽen“across“address“spaces“using“string“items.‘²GIn“the“implemen˜tation“usingŽ¡‘<so<rc•ÃŽk“ets,‘ilthe–›Ïpflocal“»servšÃŽer“handles“concurren˜t“read“and“write“accesses“withŽ¡‘<address@hidden
lesystemsŽŸŠá‘#²The–fHurd“has“the“abilitš¸ãy“to“let“users“moun˜t“
lesystems“and“other“serv˜ers“pro-Ž¤‘#viding–Sœa“
lesystem-likš¸ãe“in˜terface.‘q4Suc˜h“
lesystem“serv˜ers“are“called“translators.Ž¡‘#In–/the“Hurd“on“GNU‘!Macš¸ãh,‘)6the“paren˜t“

lesystem“w˜ould“automatically“start“upŽ¡‘#sucš¸ãh–Jítranslators“from“passiv˜e“translator“settings“in“the“inoGde.‘RIt“w˜ould“thenŽ¡‘#bloGc•¸ãk›8Hun“til˜the˜c“hild˜

lesystem˜sends˜a˜message˜to˜its˜b•Go“otstrap˜p“ort˜(pro¸ãvidedŽ¡‘#bš¸ãy–÷üthe“paren˜t“fs)“with“its“rošGot“directory“p˜ort.‘RªThis“ro˜ot“directory“p˜ort“can“thenŽ¡‘#bGe–UUgivš¸ãen“to“an˜y“clien˜t“lošGoking“up“the“translated“no˜de.Ž©‘#There–are“sevš¸ãeral“things“wrong“with“this“sc˜heme,‘FNwhic˜h“bGecomes“apparen˜t“inŽ¡‘#the–ýRHurd“on“L4.‘TqThe“parenš¸ãt“

lesystem“m˜ust“bšGe“careful“to“not“blo˜c¸ãk“on“creatingŽ¡‘#the–€ácš¸ãhild“

lesystem“task.‘ôjIt“m˜ust“also“bšGe“careful“to“not“blo˜cš¸ãk“on“receiving“an˜yŽ¡‘#ac•¸ãkno“wledgemen“t–óÌor“startup“message“from“it.‘M+F‘ÿ*ªurthermore,‘iit“can“not“acceptŽ¡‘#the–*§roGot“directory“capabilitš¸ãy“from“the“c˜hild“

lesystem“and“forw˜ard“it“to“clien˜ts,Ž¡‘#as–UUthey“are“pGoten¸ãtially“not“trusted.Ž¦‘#The–‰Clatter“problem“can“bGe“solvš¸ãed“the“follo˜wing“w˜a˜y:‘¾The“
lesystem“kno˜ws“abGoutŽ¡‘#the–•Rservš¸ãer“thread“in“the“c˜hild“
lesystem.‘1¾It“also“implemen˜ts“an“authen˜ticationŽ¡‘#capabilitš¸ãy–ˆ¾that“represen˜ts“the“abilit˜y“to“access“the“c˜hild“
lesystem.‘This“capa-Ž¡‘#bilitš¸ãy–”Nis“also“giv˜en“to“the“c˜hild“
lesystem“at“startup“(or“when“it“attac˜hes“itselfŽ¡‘#to–Ü1the“parenš¸ãt“
lesystem).‘IfOn“clien˜t“dir‘™˜‰ffŽ‘™šloGokup,‘ôlthe“paren˜t“
lesystem“can“returnŽ¡‘#the–o
+servš¸ãer‘™˜‰ffŽ‘™šthread“and“the“authen˜tication“capabilit˜y“to“the“clien˜t.‘¾æThe“clien˜tŽ¡‘#can–:„use“that“to“initiate“a“connection“with“the“cš¸ãhild“
lesystem“(b˜y“
rst“buildingŽ¡‘#up–|Üa“connection,‘ƾthen“sending“the“authenš¸ãtication“capabilit˜y“from“the“paren˜tŽ¡‘#

lesystem,–UUand“receiving“a“roGot“directory“capabilitš¸ãy“in“exc˜hange).ŽŸ<address@hidden|If“the“cšÃŽhild“
lesystem“dies“and“the“paren˜t“lesystemŽ¤   
€‘<pro<rcesses–ÂNthe“task“death“noti
cation“and“releases“the“task“info“cap“for“the“cÃŽhildŽ¡‘<b<refore–„Mthe“user“acquires“its“ošÃŽwn“task“info“cap“for“the“c˜hild,‘°then“an“imp<rosterŽ¡‘<mighÃŽt–ÕXbš<re“able“to“pretend“to“b˜e“the“cšÃŽhild“

lesystem“for“the“clien˜t.ŽŸ>1‘<This–ÕXrace“can“only“b<re“a•ÃŽv“oided›ÕXb“y˜a˜more˜complex˜proto<rcol:ŽŽŽŒ‹<]ú
 s\ȍ ý®£8‘Y²60’„\YÃCHAPTER–UU6.‘ÇTHE“POSIX“PERSONALITYŽŽ 8G 
ý䍑r»V‘ÿJªarianšÃŽt–.½1:‘yéThe“user“has“to“acquire“the“task“info“cap“for“the“c˜hild“fs,‘Eand“thenŽ¤
 €‘rit–     
has“to“pš<rerform“the“lo˜okup“again.‘b\If“then“the“thread“ID‘                
is“for“the“task“it“gotŽ¡‘rthe–$Ïtask“ID‘$»for“in“adv‡ance,›8­it“can“go“on.‘µ†If“not,˜it“has“to“retry‘ÿJª.‘µ†This“is“not“soŽ¡‘rgo•<ro“d›Ü=b“ecause˜a˜directory˜lo“okup˜is˜usually˜an˜exp“ensivÃŽe˜op“eration.‘ÛÎHo•ÃŽw“ev“er,address@hidden:‘ÿËThe“clien˜t“creates“an“empt˜y“reference“con˜tainer“in“the“task“serv˜er,Ž¡‘rwhicšÃŽh–Acan“then“b<re“used“b˜y“the“serv˜er“to“

ll“in“a“reference“to“the“c˜hild's“taskŽ¡‘rID.›Õ¿Ho•ÃŽw“ev“er,‘Ùthe˜clien“t˜has˜to˜create˜and˜destro“y˜suc“h˜a˜con“tainer˜for˜ev“eryŽ¡‘r

lesystem–€vwhere“it“excepts“it“could“b<re“redirected“to“another“(that“means:‘œ¯for“allŽ¡‘r

lesystems–W;for“whicšÃŽh“it“do<res“not“use“ÏO_NOTRANS»).“This“is“quite“an“o˜v˜erhead“toŽ¡‘rthe–ÕXcommon“case.ŽŸÖÀ‘rÏ<marcus>address@hidden<marcus>address@hidden<marcus>address@hidden,“no“container“->“returns“O_NOTRANS“nodeŽ¡‘r<marcus>address@hidden,“uses“O_NOTRANS“node,“""“and“containerŽ¡‘r<marcus>address@hidden<marcus>address@hidden<neal>address@hidden<neal>address@hidden<marcus>address@hidden<neal>address@hidden't“need“one.Ž¡‘r<marcus>address@hidden<neal>address@hidden<neal>address@hidden,“that“seems“reasonable.Ž¡‘r<marcus>address@hidden't“fail“completelyŽ¡‘r<marcus>address@hidden(¬‘Y²The–Ó®actual“creation“of“the“c¸ãhild“
lesystem“can“bšGe“p˜erformed“m•¸ãuc“h›Ó®lik“e˜a˜suidŽ¤
‘YÇexec²,‘Njust–LHwithout“anš¸ãy“clien˜t“to“follo˜w“up“with“further“capabilities“and“startupŽ¡‘Yinfo.‘ˆšThe–\ñonly“problem“that“remains“is“hoš¸ãw“the“paren˜t“
lesystem“can“kno˜wŽ¡‘Ywhicš¸ãh–üthread“in“the“c˜hild“
lesystem“implemen˜ts“the“initial“handshak˜e“protoGcolŽ¡‘Yfor–«the“clienš¸ãts“to“use.‘sThe“only“safe“w˜a˜y“here“seems“to“bGe“that“the“paren˜tŽ¡‘Y
lesystem–*     
requires“the“cš¸ãhild“to“use“the“main“thread“for“that,‘2²or“that“the“paren˜tŽ¡‘Y

lesystem–ãcreates“a“second“thread“in“the“c¸ãhild“at“startup“(passing“its“thread“IDŽ¡‘Yin–âthe“startup“data),‘ïrequiring“that“this“second“thread“is“used.‘žIn“either“caseŽ¡‘Ythe–
parenš¸ãt“
lesystem“will“kno˜w“the“thread“ID‘õin“adv‘ÿqÇance“bGecause“it“created“theŽ¡‘Ythread–¹Iin“the“

rst“place.‘£This“lošGoks“a“bit“ugly‘ÿ*ª,‘ÒFand“violates“go˜o˜d“taste,address@hidden,“Çfile_reparent²,‘Mowhic˜h“allo˜ws“y˜ouŽ¡‘Yto–‰¸create“a“new“capabilit¸ãy“for“the“same“noGde,‘–Ñwith“the“dierence“that“the“newŽ¡‘YnoGde–«"will“ha•¸ãv“e–«"a“supplied“capabilitš¸ãy“as“its“paren˜t“nošGde.‘s/A‘«

directory“lo˜okup“ofŽ¡‘YÇ..‘qDzon–UUthis“new“capabilitš¸ãy“w˜ould“return“the“pro˜vided“paren˜t“capabilit˜y‘ÿ*ª.ŽŸD,‘YThis–yJfunction“is“used“bš¸ãy“the“Çchroot()“²function,‘‚Gwhic˜h“sets“the“paren˜t“noGde“toŽ¡‘Ythe–đnš¸ãull“capabilit˜y“to“prev˜en˜t“escapGe“from“a“Çchroot()“²en˜vironmen˜t.‘¿|It“is“alsoŽ¡‘Yused–ú
…bš¸ãy“the“Çfirmlink“²translator,‘
¯whic˜h“is“a“cross“o˜v˜er“of“a“sym˜bGolic“and“a“hardŽ¡‘Ylink:‘qÇIt–UUwš¸ãorks“lik˜e“a“hard“link,“but“can“bGe“used“across“
lesystems.ŽŽŽŒ‹=lð s\ȍ 
ý®£8‘#Ã6.5.‘ÇFILESYSTEMS’ñb²61ŽŽ 8G ý䍑#A‘ÒQ
rmlink–Òris“a“dangerous“thing.‘F&Because“the“
lesystem“will“giv¸ãe“no“indication“ifŽ¤
‘#the–®parenš¸ãt“noGde“it“returns“is“pro˜vided“b˜y“itself“or“some“other,‘όpGossibly“un˜trustedŽ¡‘#
lesystem,‘":the–suser“mighš¸ãt“follo˜w“the“paren˜t“noGde“to“un˜trusted“
lesystems“with-Ž¡‘#out–UUbGeing“a•¸ãw“are–UUof“it.Ž©N8‘#In–ã‹the“Hurd“pGort“to“L4,‘the“

lesystem“can“not“accept“unš¸ãtrusted“paren˜t“capa-Ž¡‘#bilities–í¶on“bGehalf“of“the“user“an¸ãymore.‘:éThe“Çchroot()“²function“is“not“dicultŽ¡‘#to–‡8implemenš¸ãt“an˜yw˜a˜y‘ÿ*ª,‘“°as“no“real“capabilit˜y“is“required.‘oThe“serv˜er“can“just“bGeŽ¡‘#instructed–mto“create“a“nošGde“with“no“paren¸ãt“no˜de,‘Qóand“it“can“do“that“withoutŽ¡‘#problems.‘h0Nev•¸ãertheless,‘>Pw“e–8also“w•¸ãan“t–8a“secure“v¸ãersion“of“the“Çfirmlink“²transla-Ž¡‘#tor.‘˜kThis–b6is“pšGossible“if“the“same“strategy“is“used“as“in“cross“

lesystem“lo˜okups.Ž¡‘#The–BÆclienš¸ãt“registers“a“serv˜er“thread“as“the“handler“for“the“paren˜t“noGde,‘F|and“theŽ¡‘#

lesystem–m~returns“a“capabilitš¸ãy“that“can“bGe“used“for“authen˜tication“purpGoses.Ž¡‘#No•¸ãw,‘Å
the› 
úclien“t˜still˜needs˜to˜connect˜this˜to˜the˜new˜paren“t˜noGde.‘5©Normally‘ÿ*ª,‘Å
theŽ¡‘#
lesystem–šproš¸ãviding“the“new“paren˜t“noGde“will“also“not“trust“the“other“
lesystem,Ž¡‘#and–»Öthš¸ãus“can“not“accept“the“capabilit˜y“that“should“bGe“used“for“authen˜ticationŽ¡‘#purpGoses.‘WÔSo–{instead“creating“a“direct“link“from“the“one“
lesystem“to“the“other,Ž¡‘#the–âx
rmlink“translator“m¸ãust“act“as“a“middle“man,‘Áand“redirect“all“accesses“toŽ¡‘#the–´Úparenš¸ãt“noGde“
rst“to“itself,‘Ì»and“then“to“the“
lesystem“pro˜viding“the“paren˜tŽ¡‘#noGde.‘¤F‘ÿ*ªor–Æthis,‘?£it“mš¸ãust“request“a“capabilit˜y“from“that“

lesystem“that“can“bGeŽ¡‘#used–:¥for“authen¸ãtication“purpšGoses“when“b˜o˜otstrapping“a“connection,‘?üthat“allo¸ãwsŽ¡‘#sucš¸ãh–UUa“b•Go“otstrapping–UUclien˜t“to“access“the“paren˜t“noGde“directly‘ÿ*ª.Ž¦‘#This–‹also“
xes“the“securitš¸ãy“issues,‘bGecause“no˜w“an˜y“mo˜v˜e“a˜w˜a˜y“from“the“
lesys-Ž¡‘#tem–çnproš¸ãviding“the“reparen˜ted“noGde“will“explicitely“go“
rst“to“the“ÇfirmlinkŽ¡‘#²translator,‘_ìand–]Îthen“to“the“
lesystem“proš¸ãviding“the“paren˜t“noGde.‘‹2The“user“canŽ¡‘#th•¸ãus›t%mak“e˜an˜informed˜decision˜if˜it˜trusts˜the˜Çfirmlink˜²translator˜and˜theŽ¡‘#

lesystem–UUproš¸ãviding“the“paren˜t“noGde.ŽŸÎ8‘<»This–lLis“a“go•<ro“d–lLexample“where“the“redesign“of“the“IPC‘l&system“forces“us“to“
xŽ¤    
€‘<a–:´securitšÃŽy“issue“and“pro˜vides“a“deep<rer“insigh˜t“in˜to“the“trust“issues“and“ho˜w“toŽ¡‘<solvÃŽe‘ÕXthem.ŽŽŽŒ‹>{Æ
 s\ȍ ý®£8‘Y²62’„\YÃCHAPTER–UU6.‘ÇTHE“POSIX“PERSONALITYŽŽ 
8GŽŒ‹?†Ç s\ȍ ý®£8 8G 
þ3N8‘#ÉChapter‘Ç
address@hidden
‘#face–;óand“implemen¸ãt“debugging“lošGcally‘ÿ*ª.‘iQgdb“needs“to“b˜e“cš¸ãhanged“to“mak˜e“use“ofŽ¡‘#this›;Zin•¸ãterface.‘iHo“w˜to˜pGerform˜the˜required˜authen“tication,address@hidden,‘Ùand“ho˜w“the“debug“in˜terface“should“loGok“lik˜e,address@hidden
+8ŽŸ7Å0‘#ÅDevice‘    
T{Driv‘ÿ8õersŽŸ9Å0‘#²This–UUsection“written“bš¸ãy“P˜eter“De“Sc˜hrijv˜er“and“Daniel“W‘ÿ*ªagner.Ž©)Ä䍍‘#Ì8.1Ž‘GæcRequiremenŒÌtsŽŸÙs‘2¸ŽŽŽ‘<²P¸ãerformance:‘qÇSpšGeed–UUis“imp˜ortan¸ãt!Ž¤¸¸‘2¸ŽŽŽ‘<²P•¸ãortabilit“y:‘qÇF‘ÿ*ªramew“ork–UUshould“wš¸ãork“on“dieren˜t“arc˜hitectures.ŽŸ\\‘<Also:‘qÇUseable–UUin“a“not“h•¸ãurdisc“h›UUen“vironmen“t˜with˜only˜small˜c“hanges.Ž¡‘2¸ŽŽŽ‘<²Flexibilit¸ãyŽ¡‘2¸ŽŽŽ‘<²Con•¸ãv“enien“t‘UUin“terfacesŽ¡‘2¸ŽŽŽ‘<²ConsistencyŽ¡‘2¸ŽŽŽ‘<²Safet•¸ãy:‘qÇdriv“er–UUfailure“should“ha•¸ãv“e–UUas“minimal“system“impact“as“pGossible.Ž¦‘#Ì8.2Ž‘GæcOvŒÌerviewŽŸBG‘#²The–UUframew¸ãork“consists“of:ŽŸ!Œ‘2¸ŽŽŽ‘<²Bus‘UUdriv¸ãersŽ¡‘2¸ŽŽŽ‘<²Device‘UUdriv¸ãersŽ¡‘2¸ŽŽŽ‘<²Service–UUserv¸ãers“(plugin“managers,“µ!Ÿÿ±0Ž‘|s²,“dev‘ÿqÇa)address@hidden'tŽ¤

‘Yneed–#½to“ha•¸ãv“e–#½a“complicated“scš¸ãheme“for“access“con˜trol.‘a?This“is“bGecause“it“shouldŽ¡‘Yb•Ge›W8p“ossible˜to˜share˜devices,‘Še.g.‘for˜neigh¸ãb“our˜Hurd.‘The˜authen¸ãtication˜is˜doneŽ¡‘Ybš¸ãy–?ûinstalling“a“virtual“driv˜er“in“eac˜h“OS/neighour“Hurd.‘j©The“driv˜er“framew˜orkŽ¡‘Ytrusts–these“virtual“driv¸ãers.‘U¯So“it'address@hidden@Zero–€cop
 
ying“and“DMAŽ¦‘Y²It–ü9is“assumed“that“there“are“no“dierences“bGet•¸ãw“een›ü9ph“ysical˜memory˜pages.‘TF‘ÿ*ªorŽ¡‘Yexample–ý|eacš¸ãh“ph˜ysical“memory“page“can“bGe“used“for“DMA‘ýetransfers.‘TOf“course,Ž¡‘Yolder–UUhardwš¸ãare“lik˜e“ISA“devices“can“so“not“bšGe“supp˜orted.Ž©‘P‘YStill–3øsome“suppšGort“for“ISA‘3¿devices“lik¸ãe“serial“p˜orts“and“PS/2“for“k¸ãeyb˜oard“isŽ¡‘Yneeded.Ž¦‘YWith–åpthis“assumption,‘
      
vthe“device“drivš¸ãer“framew˜ork“can“bGe“giv˜en“an˜y“ph˜ysicalŽ¡‘Ymemory–]†page“for“DMA‘]„opGeration.‘Š[This“phš¸ãysical“memory“page“m˜ust“bGe“pinnedŽ¡‘Ydo¸ãwn.Ž¦‘YIf–òFan“application“w•¸ãan“ts–òFto“send“or“receivš¸ãe“data“to/from“a“device“driv˜er“it“hasŽ¡‘Yto–Ûktell“the“virtual“drivš¸ãer“the“page“on“whic˜h“the“opšGeration“has“to“b˜e“executed.Ž¡‘YSince–cÛthe“application“doGesn't“kno¸ãw“the“virtual-real“memory“mapping,‘g|it“has“toŽ¡‘Yask–Ëythe“ph¸ãysical“memory“manager“for“the“real“memory“address“of“the“page“inŽ¡‘Yquestion.‘?”If–¾ºthe“page“is“not“directly“mappGed“from“the“ph¸ãysical“memory“managerŽ¡‘Ythe–#‰application“asks“the“mappšGer“(another“application“whic¸ãh“has“mapp˜ed“thisŽ¡‘Ymemory–/¼region“to“the“

rst“application)“to“resolv¸ãe“the“mapping.‘ûThis“can“bGeŽ¡‘Ydone›GArecursiv¸ãely–ÿ*ª.‘mNormally“,‘Jthis˜resolving˜of˜a˜mapping˜can˜b•Ge˜sp“ed˜up˜using˜aŽ¡‘Ycacš¸ãhe–UUservices,“since“a“small“n˜um˜bGer“of“pages“are“reused“v˜ery“often.Ž¦‘YWith–Íthe“scš¸ãheme,address@hidden

‘#bGe–ñÄa“tree“with“devices“as“the“lea•¸ãv“es–ñÄconnected“bš¸ãy“v‘ÿqÇarious“bus“tec˜hnologies.Ž¡‘#Anš¸ãy–ñlogical“view“and“naming“pGersistence“will“ha˜v˜e“to“bGe“build“on“top“of“thisŽ¡‘#(translator).ŽŸ
 
address@hidden<²Inš¸ãteraction–UUwith“the“task“serv˜er“(e.g.‘qÇlistings“driv˜er“threads“with“ps,etc.)Ž©»‘2¸ŽŽŽ‘<²P•¸ão“w“ermanagemen“tŽŸ%$¤‘#Ì8.3Ž‘GæcBus‘ffDrivŒÌersŽŸ§‘#²A‘V-bus–Vpdrivš¸ãer“is“respGonsible“to“manage“the“bus“and“pro˜vide“access“to“devicesŽ¡‘#connected–oŒto“it.‘ÀkIn“practice“it“means“a“bus“drivš¸ãer“has“to“pGerform“the“follo˜wingŽ¡‘#tasks:ŽŸ„C‘2¸ŽŽŽ‘<²Handle–UUhotplug“ev•¸ãen“tsŽŸ݋‘<Busses–½;whic¸ãh“do“not“suppGort“hotplugging,‘4will“treated“as“if“there“is“1Ž¡‘<insertion›‚ôev•¸ãen“t˜for˜ev“ery˜device˜connected˜to˜it˜when˜the˜bus˜driv“er˜isŽ¡‘<started.‘J<Driv•¸ãers›Þ³whic“h˜don't˜suppGort˜autoprobing˜of˜devices˜will˜probablyŽ¡‘<ha•¸ãv“e–äÐto“read“some“con
guration“data“from“a“
leŸü^ÿ±1ŽŽ‘aC²or“if“the“driv¸ãer“is“neededŽ¡‘<for›~b•Go“otstrapping˜con

guration˜can˜b“e˜giv•¸ãen˜as˜argumen“t˜on˜its˜stac“k.Ž¡‘<In–^Vsome“cases“the“bus“doGesn't“generate“insertion/remoš¸ãv‘ÿqÇal“ev˜en˜ts,‘`—but“canŽ¡‘<still–>suppGort“some“form“of“hotplug“functionalitš¸ãy“if“the“user“tells“the“driv˜erŽ¡‘<when–UUa“c¸ãhange“to“the“bus“con
guration“has“happGened“(eg.‘qÇSCSI).Ž¦‘2¸ŽŽŽ‘<²Con
gure–UUclienš¸ãt“device“driv˜ersŽŸ݋‘<The–óåbus“drivš¸ãer“should“start“the“appropriate“clien˜t“device“driv˜er“translatorŽ¡‘<when–`an“insertion“ev•¸ãen“t–`is“detected.‘
 5It“should“also“proš¸ãvide“the“clien˜t“deviceŽ¡‘<driv¸ãer–
with“all“necessary“con
guration“info,‘šúso“it“can“access“the“device“itŽ¡‘<needs.‘çThis–ÑÄcon
guration“data“t¸ãypically“consists“of“the“bus“addresses“ofŽ¡‘<the–™µdevice“and“pšGossibly“IR•¸ãQ‘™¤n“um“b˜ers–™µor“DMA‘™¤c¸ãhannel“ID's.‘>èThe“deviceŽ¡‘<drivš¸ãer–UUis“loaded“b˜y“the“assoGciated“plugin“manager.Ž¦‘2¸ŽŽŽ‘<²Pro¸ãvide–UUaccess“to“devicesŽŸ݋‘<This–émeans“the“bus“driv¸ãer“should“bšGe“able“to“p˜erform“a“bus“transaction“onŽ¡‘<bGehalf–$of“a“clienš¸ãt“device“driv˜er.‘U·In“some“cases“this“in˜v˜olv˜es“sending“a“mes-Ž¡‘<sage–Áöand“w¸ãaiting“for“reply“(address@hidden,“USB,“IEEE‘ÁÑ1394,‘ßpFibre“Channel,...).Ž¡‘<The–Ԏdrivš¸ãer“should“pro˜vide“send/receiv˜e“message“primitiv˜es“in“this“case.‘FÚInŽ‘#Ÿ¡|‰ff‰ÿvŸ
     
J=‘"5Ÿý-:¼1ŽŽŽ‘LÜ»It–h;mighÃŽt“bš<re“a“go˜o˜d“idea,‘~if“the“device“drivšÃŽer“has“no“notion“ho˜w“the“con
guraiton“is“stored.ŽŸ 
€It–ÕXjust“asks“the“bus“drivšÃŽer“whic˜h“should“kno˜w“ho˜w“to“get“the“con
guration.ŽŽŽŒ‹D™- s\ȍ 
ý®£8‘Y²68’°ñ¶ÃCHAPTER–UU8.‘ÇDEVICE“DRIVERSŽŽ 8G 
ý䍑r²other–‚ôcases“devices“on“the“bus“can“bGe“accessed“b¸ãy“memory“accesses“orŽ¤

‘rbš¸ãy–ÉLusing“spGecial“I/O‘É.instructions.‘Í«In“this“case“the“driv˜er“should“pro˜videŽ¡‘rmapping–ßand“unmapping“primitivš¸ães“so“a“clien˜t“device“driv˜er“can“get“ac-Ž¡‘rcess–„¼to“the“memory“range“or“is“allo•¸ãw“ed–„¼to“access“the“I/O‘„°addresses.‘ÿýTheŽ¡‘rclienš¸ãt–ãLdevice“driv˜er“should“use“a“library‘ÿ*ª,‘úwhic˜h“is“bus“depGendan˜t,‘úto“accessŽ¡‘rthe–¹cdevice“on“the“bus.‘ðThis“library“hides“the“platform“spGeci

c“details“ofŽ¡‘raccessing–UUthe“bus.ŽŸ¶¼‘h¸ŽŽŽ‘r²RescansŽŸÛ^‘rF‘ÿ*ªurthermore–8Ithe“bus“drivš¸ãer“m˜ust“also“suppGort“rescans“for“hardw˜are.‘¢ItŽ¡‘rmighš¸ãt–ñbGe“that“not“all“driv˜ers“are“found“during“b•Go“otstrapping–ñand“henceŽ¡‘rlater–tton“drivš¸ãers“could“bGe“loaded.‘&ÒThis“is“done“b˜y“generating“new“attac˜h“no-Ž¡‘rti

cation,‘œžwhicš¸ãh–npare“sen˜t“to“the“bus's“plugin“manager.‘$ÑThe“plugin“managerŽ¡‘rthen–£3loads“a“new“drivš¸ãer,‘¶«if“p•Gossible.‘[bA‘£prob“e–£3fun˜tion“is“not“needed“sinceŽ¡‘rall–Þ3suppšGorted“hardw¸ãare“can“b˜e“idenš¸ãti
ed“b˜y“v˜endor/device“iden˜ti
cationŽ¡‘r(unlik•¸ãe›j®ISA‘jfhardw“are).‘±ÑF‘ÿ*ªor˜hardw“are˜busses˜whic“h˜don't˜suppGort˜suc“hŽ¡‘riden¸ãti
cation–© only“static“conguration“is“pGossible“(con
guration“scriptsŽ¡‘retc.)Ž¤&address@hidden@Generic–€Bus“Driv 
erŽ¦‘Y²OpGerations:ŽŸ)D‘h¸ŽŽŽ‘r²notify–UU(attacš¸ãh,“detac˜h)address@hidden:Ž¤)D‘h¸ŽŽŽ‘r²Generic–UUBus“Driv¸ãerŽ¡‘YOpGerations:Ž¡‘h¸ŽŽŽ‘r²(none)address@hidden:Ž¤Qp‘2¸ŽŽŽ‘<²Generic–UUBus“Driv¸ãerŽ¡‘#OpGerations:Ž¡‘2¸ŽŽŽ‘<²map‘™˜‰ffŽ‘™šmmio:‘qÇmap–UUa“PCI“BAR“for“MMIOŽ¤‘2¸ŽŽŽ‘<²map‘™˜‰ffŽ‘™šio:‘qÇmap–UUa“PCI“BAR“for“I/OŽ¡‘2¸ŽŽŽ‘<²map‘™˜‰ffŽ‘™šmem:‘qÇmap–UUa“PCI“BAR“for“memoryŽ¡‘2¸ŽŽŽ‘<²read‘™˜‰ffŽ–™šmmio‘™˜‰ffŽ“8,16,32,64:‘qÇread–UUfrom“a“MMIO“registerŽ¡‘2¸ŽŽŽ‘<²write‘™˜‰ffŽ–™šmmio‘™˜‰ffŽ“8,16,32,64:‘qÇwrite–UUto“a“MMIO“registerŽ¡‘2¸ŽŽŽ‘<²read‘™˜‰ffŽ–™šio‘™˜‰ffŽ“8,16,32,64:‘qÇread–UUfrom“an“IO“registerŽ¡‘2¸ŽŽŽ‘<²write‘™˜‰ffŽ–™šio‘™˜‰ffŽ“8,16,32,64:‘qÇwrite–UUto“an“IO“registerŽ¡‘2¸ŽŽŽ‘<²read‘™˜‰ffŽ–™šcon
g‘™˜‰ffŽ“8,16,32,?:‘qÇread–UUfrom“a“PCI“con
g“registerŽ¡‘2¸ŽŽŽ‘<²write‘™˜‰ffŽ–™šcon
g‘™˜‰ffŽ“8,16,32,?:‘qÇwrite–UUto“a“PCI“con
g“registerŽ¡‘2¸ŽŽŽ‘<²allošGc‘™˜‰ffŽ–™šdma‘™˜‰ffŽ“mem(for–hènon“zero“cop¸ãying):‘˜íallo˜cate“main“memory“useable“forŽ©

‘<DMAŽ¡‘2¸ŽŽŽ‘<²free‘™˜‰ffŽ–™šdma‘™˜‰ffŽ“mem–z—(for“non“zero“cop¸ãying):‘hfree“main“memory“useable“for“DMAŽ¡‘2¸ŽŽŽ‘<²prepare‘™˜‰ffŽ–™šdma‘™˜‰ffŽ“read:‘>{write–î¼bacš¸ãk“CPU‘î¢cac˜helines“for“DMAable“memory“areaŽ¡‘2¸ŽŽŽ‘<²sync‘™˜‰ffŽ–™šdma‘™˜‰ffŽ“write:‘qÇdiscard–UUCPU“cac¸ãhelines“for“DMAable“memory“areaŽ¡‘2¸ŽŽŽ‘<²allošGc‘™˜‰ffŽ–™šconsisten¸ãt‘™˜‰ffŽ“mem:‘zGallo˜cate–Y•memory“whicš¸ãh“is“consisten˜t“bGet˜w˜een“CPUŽ¦‘<and‘UUdeviceŽ¡‘2¸ŽŽŽ‘<²free‘™˜‰ffŽ–™šconsistenš¸ãt‘™˜‰ffŽ“mem:‘7free–¦memory“whic˜h“is“consisten˜t“bGet˜w˜een“CPU‘¦xandŽ¦‘<deviceŽ¡‘2¸ŽŽŽ‘<²get‘™˜‰ffŽ–™širq‘™˜‰ffŽ“mapping–(A,B,C,D):“get“the“IR•¸ãQ›Â\matc“hing–the“INT(A,B,C,D)address@hidden<²cš¸ãharacter:‘qÇThis–UUthe“standard“tt˜y“as“kno˜wn“in“the“Unix“en˜vironmen˜t.Ž¡‘2¸ŽŽŽ‘<²bloGc¸ãkŽŽŽŒ‹F¬†
 s\ȍ ý®£8‘Y²70’°ñ¶ÃCHAPTER–UU8.‘ÇDEVICE“DRIVERSŽŽ 8G 
ý䍍‘h¸ŽŽŽ‘r²h¸ãuman–UUinput:‘qÇKeybGoard,“mouse,“...Ž¤۔‘h¸ŽŽŽ‘r²pac•¸ãk“et›UUswitc“hed˜net“w“orkŽ¡‘h¸ŽŽŽ‘r²circuit–UUswitcš¸ãhed“net˜w˜orkŽ¡‘h¸ŽŽŽ‘r²framebuerŽ¡‘h¸ŽŽŽ‘r²streaming‘UUaudioŽ¡‘h¸ŽŽŽ‘r²streaming‘UUvideoŽ¡‘h¸ŽŽŽ‘r²solid–UUstate“storage:‘qÇ
address@hidden(HID)“and“the“consoleŽŸhþ‘Y²The–ЕHIDs“and“the“console“are“critical“for“user“in¸ãteraction“with“the“system.Ž¤
‘YF‘ÿ*ªurthmore,address@hidden@Generic–€Device“Driv 
erŽŸhþ‘Y²OpGerations:ŽŸ2/‘h¸ŽŽŽ‘r²init–UU:‘qÇprepare“hardw¸ãare“for“useŽ¤۔‘h¸ŽŽŽ‘r²start–UU:‘qÇstart“normal“opGerationŽ¡‘h¸ŽŽŽ‘r²stop–UU:‘qÇstop“normal“opGerationŽ¡‘h¸ŽŽŽ‘r²deinit›UU:‘qÇsh•¸ãutdo“wn˜hardw“areŽ¡‘h¸ŽŽŽ‘r²cš¸ãhange‘™˜‰ffŽ–™širq‘™˜‰ffŽ“pGeer–UU:address@hidden:Ž¤2/‘h¸ŽŽŽ‘r²Generic–UUDevice“Driv¸ãerŽ¡‘YSuppGorted‘UUdevicesŽ¡‘h¸ŽŽŽ‘r²KeybGoard‘UU(ps2)ŽŸ۔‘h¸ŽŽŽ‘r²Serial–UUpšGort“(mainly“for“debugging“purp˜osses)address@hidden:Ž¤ñP‘2¸ŽŽŽ‘<²Generic–UUDevice“Driv¸ãerŽ¡‘#SuppGorted‘UUdevices:Ž¡‘2¸ŽŽŽ‘<²bloGc¸ãk‘UUdevicesŽŸ,address@hidden

ëbus“driv˜er“has“a“handle/reference“to“whic˜h“insert/remo˜v˜e“ev˜en˜ts“are“send.Ž¤

‘#The–öïoš¸ãwner“of“the“handle/refence“m˜ust“then“tak˜e“appropriate“action“lik˜e“loadingŽ¡‘#the–UUdriv¸ãers.‘qÇThese“actors“are“called“plugin“managers.ŽŸµš‘#The–UUplugin“manager“is“also“the“pager“for“the“loaded“driv¸ãer.ŽŸqP‘<»ObšÃŽviously‘ÿJª,‘ííthe–éplugin“manager“needs“some“sort“of“exec“format“supp•<rort.‘
 Ma˜yb“eŽŸ    
€‘<it's–ÕXoÃŽwn“ELF“loader.ŽŸ'address@hidden@aŽ¦‘#²Dev‘ÿqÇa–Nystands“for“ÊDevic–ÿ}'e›yA“c“c“ess˜Server².‘]2This–Nyservš¸ãer“implemen˜ts“basic“servicesŽ¡‘#for–•–the“device“drivš¸ãer“framew˜ork“lik˜e“thread“creation,›¥¦thread“deletion,˜etc.‘2‰TheŽ¡‘#device–V±drivš¸ãer“framew˜ork“itself“došGesn't“dep˜end“on“an¸ãy“Hurd“co˜de.‘æThe“in¸ãteractionŽ¡‘#with–UUthe“Hurd“system“will“bGe“abstracted“b¸ãy“dev‘ÿqÇa.ŽŸµš‘#Whicš¸ãh–UUservices“m˜ust“dev‘ÿqÇa“pro˜vide:ŽŸñP‘2¸ŽŽŽ‘<²task/thread–UUmanipulation“(create,“deletion)Ž¤wl‘2¸ŽŽŽ‘<²memory–UU(de)alloGcation“(virtual,“ph¸ãysical)Ž¡‘2¸ŽŽŽ‘<²io‘UUpGortsŽ¡‘2¸ŽŽŽ‘<²driv¸ãer‘UU(un)loadingŽ¡‘2¸ŽŽŽ‘<address@hidden

cmmi12½!ŸÌÌ»0ŽŽŸ\͑Yµ!Ÿÿ±0Ž‘j¢²is–î/a“system-cenš¸ãtral“IR˜Q-logic“serv˜er.‘<UIt“runs“in“the“privileged“AS‘îspace“inŽ¤

‘Yorder–UUto“bGe“allo•¸ãw“ed–UUrerouting“IR¸ãQ“IPC.Ž©ço‘YIf–Ÿdan“IRš¸ãQ‘ŸQis“shared“bGet˜w˜een“sev˜eral“devices,‘±èthe“driv˜ers“are“daisy“c˜hained“andŽ¡‘Yha•¸ãv“e–UUto“notify“their“pGeers“if“an“IRš¸ãQ“IPC“has“arriv˜ed.Ž¦‘YF‘ÿ*ªor–UUmore“details“see“h•¸ãttp://os.inf.tu-dresden.de/GŸý\q~Žhohm“uth/prj/omega0.ps.gzŽ¦‘YOpGerations:ŽŸ
        
ö‘h¸ŽŽŽ‘r²attac•¸ãh‘™˜‰ffŽ‘™širq›UU:‘qÇattac“h˜an˜ISR˜thread˜to˜the˜IR“QŽŸD‘h¸ŽŽŽ‘r²detac•¸ãh‘™˜‰ffŽ‘™širq›UU:address@hidden(eg“68k,‘ÈIA32)“can“directly“jump“to“an“in˜terrupt“v˜ectorŽ¤

‘YdepšGending–±Èon“the“IR•¸ãQ‘±°n“um“b˜er.›‡This–±Èis“t¸ãypically“the“case“on“CISC‘±°CPU's.˜InŽ¡‘Ythis–Mcase“there“is“some“priorization“scš¸ãheme.‘«On“IA32“for“example,‘Þthe“lo˜w˜est“IR˜QŽ¡‘Yn•¸ãum“bGer–
êhas“the“highest“priorit¸ãy‘ÿ*ª.‘˜…
Sometimes“the“priorities“are“programmable.Ž¡‘YMost–ûÙRISC‘ûÂCPU's“ha•¸ãv“e–ûÙonly“a“few“inš¸ãterrupt“v˜ectors“whic˜h“are“connected“exter-Ž¡‘Ynal›Ü¡IR•¸ãQs.‘I‹(t“ypically˜1˜or˜2).‘I‹This˜means˜the˜IR“Q‘܂handler˜should˜read˜a˜registerŽ¡‘Yin–;×the“inš¸ãterrupt“con˜troller“to“determine“whic˜h“IR˜Q‘;Ñhandler“has“to“bGe“executed.Ž¡‘YSometimes–àõthe“hardwš¸ãare“assists“here“b˜y“pro˜viding“a“register“whic˜h“indicates“theŽ¡‘Yhighest–UUprioritš¸ãy“in˜terrupt“according“to“some“(programmable)“sc˜heme.Ž©~܍‘YÆIR•®9Q‘ÕTac“kno“wlegdemen“tŽŸ\͑Y²The›Œ

IR•¸ãQ‘‹¼ac“kno“wledgemen“t˜is˜done˜in˜t“w“o˜steps.‘ìFirst˜inform˜the˜hardw“areŽ¡‘YabšGout–j!the“successful“IR¸ãQ‘iÚacceptance.‘°,Then“inform“the“ISRs“ab˜out“the“IR¸ãQŽ¡‘Yev•¸ãen“t.Ž¦‘YÆEdge–ÕTvš®9ersus“lev˜el“triggered“IR˜QsŽŸ\͑Y²Edge–2ytriggered“IRš¸ãQs“t˜ypically“don't“need“explicit“ac˜kno˜wledgmen˜t“b˜y“the“CPUŽ¡‘Yat–”Nthe“device“levš¸ãel.‘.³Y‘ÿ*ªou“can“just“ac˜kno˜wledge“them“at“the“in˜terrupt“con˜trollerŽ¡‘Ylev•¸ãel.‘ѾLev“el–uRtriggered“IRš¸ãQs“t˜ypically“need“to“explicitly“ac˜kno˜wledged“b˜y“theŽ¡‘YCPU›Pat–PVthe“device“lev¸ãel.‘bÊThe“CPU˜has“to“read“or“write“a“register“from“theŽ¡‘YIRš¸ãQ‘ô
        generating–ô2pGeripheral“to“mak˜e“the“IR˜Q‘ô        
go“a˜w˜a˜y‘ÿ*ª.‘N]If“this“is“not“done,‘étheŽ¡‘YIRš¸ãQ‘handler–will“bGe“reen˜tered“immediatly“after“it“ended,‘%ëeectiv˜ely“creating“anŽ¡‘Yendless–UUlošGop.‘qÇAnother“w•¸ãa“y–UUof“prev•¸ãen“ting–UUthis“w¸ãould“b˜e“to“mask“the“IR¸ãQ.ŽŽŽŒ‹IÁÛ
 s\ȍ ý®£8‘#Ã8.6.‘ÇRESOUR•¸ãCE‘UUMANA“GEMENT’¯|^²73ŽŽ 8G 
ý䍑#ÆMultiple–ÕTinš®9terrupt“con˜trollersŽ©‘#²Some–Žpsystems“ha•¸ãv“e›Žpm“ultiple˜in“terrupt˜con“trollers˜in˜cascade.‘/{This˜is˜for˜exampleŽ¤

‘#the–üÊcase“on“a“PC,“where“yš¸ãou“ha˜v˜e“2“8259“in˜terrupt“con˜trollers.‘TDThe“second“con-Ž¡‘#troller–ôÞis“connected“to“the“IRš¸ãQ‘ôÅ2“pin“of“the“

rst“con˜troller.‘QŸIt“is“also“common“inŽ¡‘#non–-ñPC›-çsystems“whic¸ãh“still“use“some“standard“PC˜compGonenš¸ãts“suc˜h“as“a“SupGerŽ¡‘#IO‘ÒGcon¸ãtroller.‘èþIn–Ògthis“case“the“2“8259's“are“connected“to“1“pin“of“the“primaryŽ¡‘#in•¸ãterrupt›Hcon“troller.‘J!ImpGortan“t˜for˜the˜soft“w“are˜here˜is˜that˜y“ou˜need˜to˜ac-Ž¡‘#kno•¸ãwledge›òÒIR“Q's˜at˜eac“h˜con“troller.‘PñSo˜to˜ac“kno“wledge˜an˜IR“Q‘ò¹from˜the˜secondŽ¡‘#8259–\çconnected“to“the“

rst“8259“connected“to“another“inš¸ãterrupt“con˜troller,‘^Ìy˜ouŽ¡‘#ha•¸ãv“e–Ito“givš¸ãe“an“A˜CK‘command“to“eac˜h“of“those“con˜trollers.‘¨¤Another“impGortŽ¡‘#fact–UUis“that“on“the“PC“arcš¸ãhitecture“the“order“of“the“A˜CKs“is“impGortan˜t.ŽŸ%Lü‘#ÆShared‘ÕTIR®9QsŽ¦‘#²Some–Òªsystems“ha•¸ãv“e–Òªshared“IRš¸ãQs.‘éÇIn“this“case“the“IR˜Q‘Ҋhandler“has“to“loGok“atŽ¡‘#all–UUdevices“using“the“same“IR¸ãQ...ŽŸ%Lü‘#ÆIR®9Q‘ÕTprioritiesŽ¦‘#²All–ô’IRš¸ãQs“on“L4“ha˜v˜e“priorities,‘íso“if“an“IR˜Q‘ôzoGccurs“an˜y“IR˜Q‘ôzlo˜w˜er“then“the“
rstŽ¡‘#IR¸ãQ‘Ÿlwill–ŸbšGe“blo˜c•¸ãk“ed›Ÿun“til˜the˜
rst˜IR“Q‘Ÿlhas˜bGeen˜ac“kno“wlegded.‘PFISR‘ŸlprioritiesŽ¡‘#m•¸ãust›
+Tm“uc“h˜the˜hardw“are˜priorit“y˜(danger˜of˜priorit“y˜in“v“ersion).‘ÃF‘ÿ*ªurthermoreŽ¡‘#the–UUIRš¸ãQ“ac˜kno˜wledgmen˜t“order“is“impGortan˜t.ŽŸ£½‘#The–fJ8259“also“suppšGorts“a“sp˜eci
c“IR•¸ãQ‘fFac“kno“wledge–fJiirc.‘¤§But,‘jˆthis“sc¸ãheme“do˜esŽ¡‘#not–B
wš¸ãork“in“most“lev˜el“triggered“IR˜Q‘Ben˜vironmen˜ts.‘kZIn“these“en˜vironmen˜ts“y˜ouŽ¡‘#m•¸ãust›Ø=ac“kno“wledge˜(or˜mask)˜the˜IR“Q‘ØbGefore˜lea“ving˜the˜IR“Q‘Øhandler,‘ñBotherwiseŽ¡‘#the–CPU‘÷will“immediately“reenš¸ãter“the“IR˜Q‘÷handler,‘)eectiv˜ely“creating“an“end-Ž¡‘#less–cŒloGop.‘œlIn“this“case“L4“wš¸ãould“ha˜v˜e“to“mask“the“IR˜Q.“The“IR˜Q‘cˆthread“w˜ouldŽ¡‘#ha•¸ãv“e–UUto“unmask“it“after“ac•¸ãkno“wledgemen“t–UUand“proGcessing.ŽŸ%Lü‘#ÆIRš®9Q–ÕThandling“b˜y“L4/x86Ž¦‘#²The–UUL4“kš¸ãernel“doGes“handle“IR˜Q“ac˜kno˜wlegdmen˜t.ŽŸ'address@hidden,‘íÅwhic˜h“is“started“b˜y“w˜ortel.Ž¤

‘YAll–nìdrivš¸ãers“and“serv˜ers“(e.g.‘¾the“plugin“manager)address@hidden@aŽŸU&‘Y²F‘ÿ*ªor›ÿ
+b•Go“otstrapping˜dev‘ÿqÇa˜will˜only˜ha•¸ãv“e˜a˜subset˜of˜driv“ers˜ready‘ÿ*ª.‘nçAs˜soGon˜theŽ¡‘Y

lesystem–Ï)runs“dev‘ÿqÇa“can“ask“for“drivš¸ãers“from“the“harddisk.‘ßBIf“new“driv˜ers“areŽ¡‘Yaš¸ãv‘ÿqÇailable–Ž5it“has“to“inform“the“plugin“manager“to“ask“for“unresolv˜ed“driv˜ers“again.ŽŸm‘YDev‘ÿqÇa–ñstarts“as“

address@hidden&‘Y²A–UUPlugin“manager“handles“drivš¸ãer“loading“for“devices.‘qÇIt“asks“dev‘ÿqÇa“for“driv˜ers.ŽŸm‘YThe–á

rst“plugin“serv¸ãer“došGes“also“some“b˜o˜otstrapping.‘íFirst,‘úit“starts“the“ro˜otŽ¡‘Ybus‘UUdriv¸ãer.Ž©(¼‘‘YÌ8.8Ž‘}æcOrder–ffof“implemenŒÌtationŽŸdZ‘e8ä²1.ŽŽŽ‘rdev‘ÿqÇa,–UUplugin“managerŽ¤‘e8ä2.ŽŽŽ‘rroGot–UUbus“serv¸ãerŽ¡‘e8ä3.ŽŽŽ‘rpGci‘UUbusŽ¡‘e8ä4.ŽŽŽ‘risa‘UUbusŽ¡‘e8ä5.ŽŽŽ‘rserial–UUpGort“(isa“bus)address@hidden&‘Y²If–¾a“simple“hardwš¸ãare“device“is“found“the“ddf“will“load“a“driv˜er“for“the“newŽŸ

‘Yhardwš¸ãare–UUdevice“as“follo˜ws“(see“Figure“8.1):ŽŽŽŒ‹KØ
 s\ȍ ý®£8‘#Ã8.9.‘ÇSCENARIOS’üDz75ŽŽ 
8GŸŒJŸÈ‘#¨HïCPSfile="ddf_insert_event.eps" llx=0 lly=0 urx=428 
ury=327 rwi=3424 ŽŽŽŸ ‘#Figure–³8.1:‘ 
ªA‘²ònew“hardwš¸ãare“device“is“detected“(a“net˜w˜ork“card)“b˜y“the“PCI‘²òroGotŽ¤

‘#bus–¯gdrivš¸ãer.‘ýThe“PCI‘¯ProGot“bus“driv˜er“initiates“the“loading“of“the“correct“driv˜erŽ¡‘#for–UUthe“new“hardw¸ãare“device.ŽŽŽŽŒ‹Lޑ
 s\ȍ ý®£8‘Y²76’°ñ¶ÃCHAPTER–UU8.‘ÇDEVICE“DRIVERSŽŽ 8G 
ý䍍‘e8ä²1.ŽŽŽ‘rThe–+ÜPCI‘+¥Bus“Drivš¸ãer“detects“a“hardw˜are“device“for“whic˜h“no“driv˜er“hasŽ¤
address@hidden(all?)Ž¡‘rregistered›Ì_en•¸ãtit“y‘ÿ*ª.‘D 
The˜in“terface˜for˜the˜ev“en“t˜handler˜has˜not˜bGeen˜decidedŽ¡‘ry¸ãet.Ž©™š‘e8ä2.ŽŽŽ‘rThe–èRoGot“Bus“Drivš¸ãer“receiv˜es“the“ev˜en˜t“signal.‘*"Note“it“is“not“necessaryŽ¡‘rthat–ë*the“RoGot“Bus“Drivš¸ãer“handles“the“insert“signal“for“all“driv˜ers.‘
    
3FItŽ¡‘rforw¸ãards–UUthe“signal“to“the/a“Plugin“Manager“(PLM).Ž¦‘e8ä3.ŽŽŽ‘rThe/a–÷Plugin“Manager“(PLM)‘÷asks“Dev‘ÿqÇa“to“load“the“driv¸ãer“binary“for“theŽ¡‘rnew‘UUdevice.Ž¦‘e8ä4.ŽŽŽ‘rDev‘ÿqÇa–bóforw¸ãards“the“loading“request“to“the“ext2“

lesystem“proGcess.‘š¡DuringŽ¡‘rb•Go“otstrapping–±Dev›ÿqÇa“will“handle“the“request“b¸ãy“itself.‘\æDev˜a“has“an“arc•¸ãhiv“eŽ¡‘rof–UUdrivš¸ãers“loaded“b˜y“grub.Ž¦‘e8ä5.ŽŽŽ‘rThe–I
+ext2“prošGcess“decides“where“it“
nds“the“device“driv¸ãer“binary“(blo˜c¸ãkŽ¡‘raddress)Ž¦‘e8ä6.ŽŽŽ‘rThe–¬ddwrappšGer“(device“driv¸ãer“wrapp˜er)“forw¸ãards“the“read“call“from“theŽ¡‘rext2–UUproGcess“to“the“IDE“Driv¸ãer.Ž¦‘e8ä7.ŽŽŽ‘rAfter›²Èc•¸ãhec“king˜if˜the˜caller˜is˜allo“w“ed˜start˜a˜read˜command,‘
+%the˜IDEŽ¡‘rDrivš¸ãer–UUreads“the“device“driv˜er“from“the“disk.Ž¦‘e8ä8.ŽŽŽ‘rThe–UUIDE“Driv¸ãer“returns“the“data.Ž¦‘e8ä9.ŽŽŽ‘rddwrappšGer–P­returns“the“data.‘åXXX‘PkThis“migh¸ãt“b˜e“wrong.‘åIFR¸ãC,“the“data“isŽ¡‘rreturned–[in“a“conš¸ãtainer“and“only“the“handle“of“the“con˜tainer“is“transfered.Ž¦‘`8ã10.ŽŽŽ‘rExt2–UUreturns“the“device“driv¸ãer“(data).Ž¦‘`8ã11.ŽŽŽ‘rDev‘ÿqÇa–UUreturns“the“device“driv¸ãer“(data).Ž¦‘`8ã12.ŽŽŽ‘rAsk–UUDev‘ÿqÇa“to“create“a“new“address“space.Ž¦‘`8ã13.ŽŽŽ‘rDev‘ÿqÇa–UUasks“w¸ãortel“to“create“new“address“space.Ž¦‘`8ã14.ŽŽŽ‘rw¸ãortel–UUreturns“\a“new“address“space".Ž¦‘`8ã15.ŽŽŽ‘rDev‘ÿqÇa–UUreturns“\a“new“address“space".Ž¦‘`8ã16.ŽŽŽ‘rPLM‘–Žis––žregistered“as“pagefault“handler“for“the“new“driv¸ãer“address“space.Ž¡‘rThe›UUb•Go“otstrap˜thread˜starts˜to˜run˜and˜generates˜a˜page˜fault.Ž¦‘`8ã17.ŽŽŽ‘rPLM–UUasks“Dev‘ÿqÇa“for“memory‘ÿ*ª.Ž¦‘`8ã18.ŽŽŽ‘rDev‘ÿqÇa–UUasks“ph¸ãysmem“for“memory‘ÿ*ª.Ž¦‘`8ã19.ŽŽŽ‘rph¸ãysmem–UUreturns“memory“pages.Ž¦‘`8ã20.ŽŽŽ‘rDev‘ÿqÇa–UUreturns“memory“pages.Ž¦‘`8ã21.ŽŽŽ‘rPLM‘ìmaps–Ž<the“device“drivš¸ãer“binary“in˜to“the“address“space“of“the“newŽ¡‘rdriv¸ãer.ŽŽŽŒ‹MàM
 s\ȍ ý®£8‘#Ã8.9.‘ÇSCENARIOS’üDz77ŽŽ 8G 
ÿ77ŸÞ9‘#ÛØïCPSfile="ddf_several_plms.eps" llx=0 lly=0 urx=342 ury=314 
rwi=3420 ŽŽŸ 
‘#Figure–É8.2:‘NF‘ÿ*ªor“the“new“NIC‘·driv¸ãer“a“spGecialised“plugin“manager“is“loaded“
address@hidden
‘#default–B½plugin“manger“(dPLM)‘B€has“to“bGe“ask¸ãed“to“create“a“new“plugin“man-Ž¡‘#ager.‘§¶It–úis“loaded“likš¸ãe“a“normal“driv˜er.‘§¶The“default“plugin“manager“will“alsoŽ¡‘#act–d~as“pager“for“the“new“plugin“manager.‘ŸBWhen“the“new“plugin“manager“isŽ¡‘#activ›ÿqÇated–yÓit“registers“itself“to“the“Dev˜a“as“new“plugin“manager.‘ßBDev˜a“will“sendŽ¡‘#all–UUsignals/messages“from“outside“of“the“ddf“to“all“registered“plugin“managers.ŽŽŽŒø것’À;ès\ȲSó)߆µT
cmtt12ó(Œ-ø
+cmcsc10ó'#Ñfcmti8ó%·ág£ff
cmmi12ó$ßCÊscmtt8ó#߆µTffcmtt12ó"ÂÖN 
cmbx12ó!ÂÖN ffcmbx12óý':
+
+cmti10óÂÖN ½qcmbx12óßê<x
+
+cmtt10óò"V
+
+cmbx10óÂÖN áHcmbx12óp®0J
+
+cmsl10ó¾KÈcmsy8ó×2cmmi8ó·ág£
cmmi12ó¹Aa¨cmr6ó|{Ycmr8óX«Q
cmr12óDÓítG®G®cmr17ó
!",š
+
+cmsy10ó
+ b>
+
+cmmi10óKñ`y
+
+cmr10óٓ Rcmr7ùîCßßßß
\ Kein Zeilenumbruch am Dateiende.
diff -Naur hurd-l4/doc/hurd-on-l4.log hurd-l4-new/doc/hurd-on-l4.log
--- hurd-l4/doc/hurd-on-l4.log  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/hurd-on-l4.log      2005-07-13 18:30:52.291801752 +0200
@@ -0,0 +1,273 @@
+This is TeX, Version 3.14159 (Web2C 7.4.5) (format=latex 2005.5.7)  9 JUL 2005 
20:03
+**hurd-on-l4.tex -o hurd-on-l4.dvi
+(./hurd-on-l4.tex
+LaTeX2e <2001/06/01>
+Babel <v3.7h> and hyphenation patterns for american, french, german, ngerman, n
+ohyphenation, loaded.
+(/usr/share/texmf/tex/latex/base/book.cls
+Document Class: book 2001/04/21 v1.4e Standard LaTeX document class
+(/usr/share/texmf/tex/latex/base/bk10.clo
+File: bk10.clo 2001/04/21 v1.4e Standard LaTeX file (size option)
+)
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
+\abovecaptionskip=\skip41
+\belowcaptionskip=\skip42
+\bibindent=\dimen102
+)
+(/usr/share/texmf/tex/latex/graphics/graphicx.sty
+Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR)
+
+(/usr/share/texmf/tex/latex/graphics/keyval.sty
+Package: keyval 1999/03/16 v1.13 key=value parser (DPC)
address@hidden@=\toks14
+)
+(/usr/share/texmf/tex/latex/graphics/graphics.sty
+Package: graphics 2001/07/07 v1.0n Standard LaTeX Graphics (DPC,SPQR)
+
+(/usr/share/texmf/tex/latex/graphics/trig.sty
+Package: trig 1999/03/16 v1.09 sin cos tan (DPC)
+)
+(/usr/share/texmf/tex/latex/config/graphics.cfg
+File: graphics.cfg 2001/08/31 v1.1 graphics configuration of teTeX/TeXLive
+)
+Package graphics Info: Driver file: dvips.def on input line 80.
+
+(/usr/share/texmf/tex/latex/graphics/dvips.def
+File: dvips.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR)
+))
address@hidden@height=\dimen103
address@hidden@width=\dimen104
+) (./hurd-on-l4.aux
+(./introduction.aux) (./booting.aux) (./ipc.aux) (./threads-tasks.aux)
+(./vmm.aux) (./posix.aux) (./debugging.aux) (./device-drivers.aux))
+\openout1 = `hurd-on-l4.aux'.
+
+LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line 22.
+LaTeX Font Info:    ... okay on input line 22.
+LaTeX Font Info:    Checking defaults for T1/cmr/m/n on input line 22.
+LaTeX Font Info:    ... okay on input line 22.
+LaTeX Font Info:    Checking defaults for OT1/cmr/m/n on input line 22.
+LaTeX Font Info:    ... okay on input line 22.
+LaTeX Font Info:    Checking defaults for OMS/cmsy/m/n on input line 22.
+LaTeX Font Info:    ... okay on input line 22.
+LaTeX Font Info:    Checking defaults for OMX/cmex/m/n on input line 22.
+LaTeX Font Info:    ... okay on input line 22.
+LaTeX Font Info:    Checking defaults for U/cmr/m/n on input line 22.
+LaTeX Font Info:    ... okay on input line 22.
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <12> on input line 25.
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <8> on input line 25.
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <6> on input line 25.
+ [1
+
+
+
+]
+[2
+
+] (./hurd-on-l4.toc
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <7> on input line 2.
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <5> on input line 2.
+ [3] [4])
address@hidden
+\openout3 = `hurd-on-l4.toc'.
+
+ [5] [6
+
+]
+\openout2 = `introduction.aux'.
+
+ (./introduction.tex
+Chapter 1.
+[1
+
+
+]
+Underfull \vbox (badness 10000) has occurred while \output is active []
+
+ [2])
+[3]
+\openout2 = `booting.aux'.
+
+ (./booting.tex [4
+
+
+
+]
+Chapter 2.
+[5]
+LaTeX Font Info:    Font shape `OT1/cmtt/bx/n' in size <14.4> not available
+(Font)              Font shape `OT1/cmtt/m/n' tried instead on input line 42.
+LaTeX Font Info:    Try loading font information for OMS+cmr on input line 79.
+ (/usr/share/texmf/tex/latex/base/omscmr.fd
+File: omscmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions
+)
+LaTeX Font Info:    Font shape `OMS/cmr/m/n' in size <10> not available
+(Font)              Font shape `OMS/cmsy/m/n' tried instead on input line 79.
+ [6]
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <14.4> on input line 122.
+ [7] [8] [9]) [10]
+\openout2 = `ipc.aux'.
+
+
+(./ipc.tex
+Chapter 3.
+LaTeX Font Info:    Font shape `OMS/cmr/m/n' in size <8> not available
+(Font)              Font shape `OMS/cmsy/m/n' tried instead on input line 42.
+[11
+
+
+
+] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23]
+Overfull \hbox (47.94551pt too wide) in paragraph at lines 922--932
+[]\OT1/cmr/m/n/10 The only thing that $\OML/cmm/m/it/10 D$ \OT1/cmr/m/n/10 coul
+d try is to pro-vide false in-for-ma-tion in the []\OT1/cmtt/m/n/10 cap_ref_con
+t_accept
+ []
+
+[24] [25] [26] [27]) [28]
+\openout2 = `threads-tasks.aux'.
+
+ (./threads-tasks.tex
+Chapter 4.
+[29
+
+
+
+] [30] [31]) [32]
+\openout2 = `vmm.aux'.
+
+ (./vmm.tex
+Chapter 5.
+[33
+
+
+
+]
+Underfull \vbox (badness 4967) has occurred while \output is active []
+
+ [34]
+[35]
+Underfull \vbox (badness 4556) has occurred while \output is active []
+
+ [36]
+[37] [38] [39] [40] [41]
+Overfull \hbox (77.6092pt too wide) in paragraph at lines 493--499
+\OT1/cmr/m/n/10 The ar-gu-ments have sim-i-lar mean-ing as those in \OT1/cmtt/m
+/n/10 pm[]container[]allocate\OT1/cmr/m/n/10 . \OT1/cmtt/m/n/10 CONT[]DEALLOC[]
+PARTIAL
+ []
+
+
+Overfull \hbox (29.23103pt too wide) in paragraph at lines 493--499
+\OT1/cmr/m/n/10 and \OT1/cmtt/m/n/10 CONT[]DEALLOC[]SQUASH \OT1/cmr/m/n/10 are 
+sim-i-lar to \OT1/cmtt/m/n/10 CONT[]ALLOC[]PARTIAL \OT1/cmr/m/n/10 and \OT1/cmt
+t/m/n/10 CONT[]ALLOC[]SQUASH
+ []
+
+
+Overfull \hbox (40.40141pt too wide) in paragraph at lines 526--531
+\OT1/cmr/m/n/10 Flags may is a bit-wise or of: \OT1/cmtt/m/n/10 CONT[]MAP[]READ
+\OT1/cmr/m/n/10 , \OT1/cmtt/m/n/10 CONT[]MAP[]WRITE \OT1/cmr/m/n/10 and \OT1/cm
+tt/m/n/10 CONT[]MAP[]FORCE[]WRITE\OT1/cmr/m/n/10 .
+ []
+
+[42]
+Overfull \hbox (5.84505pt too wide) in paragraph at lines 545--548
+\OT1/cmr/m/n/10 tainer[]t source, in frame[]t start, in int count, out con-tain
+er[]t weak[]ref) 
+ []
+
+
+Overfull \hbox (18.97836pt too wide) in paragraph at lines 572--575
+[]\OT1/cmr/m/n/10 error[]t pm[]container[]copy[]scatter (in con-tainer[]t src, 
+in frame[]t src[]start,
+ []
+
+
+Overfull \hbox (6.88951pt too wide) in paragraph at lines 572--575
+\OT1/cmr/m/n/10 in coun-tainer[]t dest, in frame[]t [] dest[]frames, out frame[
+]t frame[]error)
+ []
+
+
+Overfull \hbox (8.8395pt too wide) in paragraph at lines 584--587
+[]\OT1/cmr/m/n/10 error[]t pm[]container[]copy[]scatter[]gather (in con-tainer[
+]t src, in frame[]t
+ []
+
+[43] [44]
+Underfull \vbox (badness 4556) has occurred while \output is active []
+
+ [45]
+Underfull \vbox (badness 1735) has occurred while \output is active []
+
+ [46]
+[47] [48]
+Overfull \hbox (0.95064pt too wide) in paragraph at lines 911--912
+[]\OT1/cmr/m/n/10 error[]t pm[]release[]data (in pm[]container[]t con-tainer, i
+n pm[]frame[]t[]
+ []
+
+) [49]
+\openout2 = `posix.aux'.
+
+ (./posix.tex [50
+
+
+
+]
+Chapter 6.
+[51] [52] [53] [54]
+LaTeX Font Info:    Font shape `OT1/cmtt/bx/n' in size <12> not available
+(Font)              Font shape `OT1/cmtt/m/n' tried instead on input line 246.
+ [55] [56] [57] [58] [59] [60]) [61]
+\openout2 = `debugging.aux'.
+
+ (./debugging.tex
+[62
+
+
+
+]
+Chapter 7.
+) [63]
+\openout2 = `device-drivers.aux'.
+
+ (./device-drivers.tex [64
+
+
+
+]
+Chapter 8.
+[65] [66] [67] [68] [69] [70] [71] [72] [73]
+File: ddf_insert_event.eps Graphic file (type eps)
+ <ddf_insert_event.eps> [74]
+[75]
+File: ddf_several_plms.eps Graphic file (type eps)
+ <ddf_several_plms.eps> [76]) [77] (./hurd-on-l4.aux (./introduction.aux)
+(./booting.aux) (./ipc.aux) (./threads-tasks.aux) (./vmm.aux) (./posix.aux)
+(./debugging.aux) (./device-drivers.aux)) ) 
+Here is how much of TeX's memory you used:
+ 702 strings out of 95847
+ 8140 string characters out of 1195949
+ 58514 words of memory out of 1000001
+ 3617 multiletter control sequences out of 10000+50000
+ 11748 words of font info for 42 fonts, out of 500000 for 1000
+ 14 hyphenation exceptions out of 1000
+ 26i,8n,22p,205b,407s stack positions out of 1500i,500n,5000p,200000b,5000s
+
+Output written on hurd-on-l4.dvi (83 pages, 258180 bytes).
diff -Naur hurd-l4/doc/hurd-on-l4.pdf hurd-l4-new/doc/hurd-on-l4.pdf
--- hurd-l4/doc/hurd-on-l4.pdf  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/hurd-on-l4.pdf      2005-07-13 18:30:52.303799928 +0200
@@ -0,0 +1,4807 @@
+%PDF-1.2
+%Ç쏢
+6 0 obj
+<</Length 7 0 R/Filter /FlateDecode>>
+stream
+xœ]MNÃ0…÷>…—e‘Á3þ_R  Á 
s€*MC(I'¹?±ët¼ù{Ïof<rÈE:¥Ö=Ùý§âíÄFŽYÚJÝó}XÅõŠµâáÄ®ï#        
PŽk¡Á:z¶{¿?HTÉŽlw‰s7´‰+d…*|þn$£/ðéí+;!ø¼Äc¦¬ÙbçKnå½0ÿ"
x{‹|Q™Iä7ãkWÇË9gZpdtáMšß„׍%G¯5¥+´
+HZ^)   îšqˆõ2•i¥qÛ`ûØ
çþ0IªÖ¾>i9ð”
K»LsYÈèۇ2ÑÇÀ?X:uÌa½endstream
+endobj
+7 0 obj
+254
+endobj
+20 0 obj
+<</Length 21 0 R/Filter /FlateDecode>>
+stream
+xœ+T0Ð3T0A(œËUÈU¨`ƒQɹ
+N!\úA†
+–z–fFf&
+!i\
†
+†fzf
+æÆfzf
+!¹\™™š!Y\®!
+\ ˆ±endstream
+endobj
+21 0 obj
+86
+endobj
+27 0 obj
+<</Length 28 0 R/Filter /FlateDecode>>
+stream
+xœí[KoÛF¾ù½ðè¼Ù÷ãØE 
(ÜX@/¹(±‘H›¢Òêßw¸/’ã(¶êÒ–àƒÑp9Úùö›ÇŽîŒH‚›?ÿ?]Mî&w       
±²ð/]%o§“7ï©H(GJ+’L?MÜ”$24‘T!J“éjrqU¯§M¸Fs 
JÓùä¢Î¬iD¹`A¸ndoÞ3’d$•¼YùR+„¹1É¥äk«IE‘Všû‡ßÙ      
FŒ„åªÒŠX©Î7i;‹¨Qˆsã? 
îÝD÷ÞÍ(EFÓä’0ĨSDVµù“ðô¯Y‘­sk?§`¥ÔþԈRÆHÖIe$R­³ÏÔٍ8¨ua0eHeaʹ‡)݇韍È
 &ˆ
+-«/vU8FŠþa¢ð&¯«òs•­Æ      |‚Õ     lýو EöAÀy›»
+ „0A(é>o¿-½Œª“u^|¶ñk¤xPß h†p¡éCßl×u¶²‹r$
èc#H  address@hidden'`ác¤˜ÞA¡Ã!#HΊÇ;EŒÇl(â
+ÄIÌêE橙plÏgÌ;G†=í®ŽÆi£0Bî=(sOèmè檏œÐ=u`      
,˜–ålžUž}y—©Aš›€¤%¨CìÉ0â,address@hidden<address@hidden)address@hidden
address@hidden È,©°g ˆÖc5ñCJ “®Öؼv6âh¡¿Å¯¤_1jüúÞÂwðËGéµ³O_y ~]sÖ Je¬ 
Êöà¥QL½}´þ݈¨‚áð
˪ö9…bŒ›1lõ(ü=
+#ŽôéN¿GºÛ…]ju£Ã²ÛužzƤ&d¨«lUVÛFÎÀ›S÷ð+ TàˆÐᗭ|
+ Ëäƒ:¨ÏÌï&address@hidden(P£äO³µ\ób|q6âhldZ6;ldDå<ûš§VÎ0ÂÚ3giêïY 
1IÈìúÌ[!o˜2˜0z„œ›×ÿ«‰öâ;ª¤Ümc O 
Y•z‹I{˳ȿz!Ã1JfîË2ÂØ÷Ùr4Þ{FF}©ív  9
BÃi¸}WƒÃ˜¡¼ZfëxƒÆ%¼p·g÷ü·úŒxHÜୁË^„P‰u.{™A÷édÕå­!ˆ    
ŒÁz*ÐMZ®Vž×$QÁ¦M)|address@hidden"îÉ7æ}šË6lºg‰
Ý&_Íngóe^癵R(أݠp*˜:q¼ÓeÍ%5i®»Åû‘ëd;¬pë/•<JhíH÷†Òeîn        
œ*)ÂW­/c7†#!ïkƤeQdq°N€¥Fˆ18äñ1–G‡(ÂwxÁÝÓöò>«7Uᷞ›Ð¸¡C[xÄ.¤DÕV·N[ÖOU¹òœ(address@hidden<Zµê5bûº*oýÞsÖmÀ
 °Jl(þ7+7Ö>ãL°Å
+aÕnñ ÏŠ²^83   ŒýúAʾÏNßk©ôî^óý½nSN¦ÛfLµY×Þ*.cYm–™ßÁÕ±Z//2̌ˆGŸ\ê`à 
4S¦½X70s³-R&ÑÎ,ª²(7k%T6!Õ¼¾òkÈf–á9ïôو£…
s*[Ìñ4`Âå÷²Î_¹ÒÂBLŠ†³4.õ"wúŒxtNOmÔ®˜ïVÌatªS1OU6›»¡{ÈÂM¬ygÅÜã«Øà›Z"™ML×_\ÍÁ¨8EJ³i
 ü¥¸w£Ë‡ÊߟӴÜØt…QÈpãõVwŽ•
+uš€9q´£ÃHK×Rôa9"\Ç_| 
‡þÙúu¥Œ)¸?'¬3<à3e[2ÅßÁ܄BJ#Ãt0ÔWRòÔ®G㍳ÇÃ%mq¹Ã–YčÍ[
¨¶Û"›o–¡K€Ñº“{‘Þ9qlœ)¦Mª!ÃižçÍ'¿L“?&Íß¿ðyɊendstream
+endobj
+28 0 obj
+1670
+endobj
+43 0 obj
+<</Length 44 0 R/Filter /FlateDecode>>
+stream
+xœí\KsÛF¾«ò#xtš÷ã¨DÎnªâXkrS©­\’S¤’²õï·1/<8ÑҊ¤KU
&æ›î¯ƒOŒÈWþÿüæäÓɧ        ±cáßüfòÝì䈞d$•|2»<q7       
‘I=QL",'³›“7ÅÝ·³?`>WÍùT+DÜ2[œ¼ùþýϳ·?Ϧn"#͉§~æ)U0h§‹jáH+ͽ„_Šr»Ë–Õ73.ý…
wùͺ¼¯Æ9h$ˆ
+ãÙ*»ÊoòUu      t¦˜ikÅ+‚a~ˆ1§Zû7Ÿ2¢ÃdrJ("Ôé†H5•Rd0  ´OÑ 
°Ð$<¥\Ûç0xOqâb7ßk;›      ¤˜
+ê¢jH!©Œäí!eŒdÏ7ë™ÅL   ¹w£0‡ÌJ‰'û³²È×ߐÂ%tO©HîhCՁ•¤

Pû)ÏÊU±º²{† ‰E¸rY®o,¸’4ü¢ÿ¬Š/Vì!JŽ è'x
²ú—Að.›Û‡jÄ8¯ìځXeF‹ÄŠ<ã‚ÿ‰,ùõ7v`!°à,"&Ø>&~¨†’L(ê‡ÖË¥óbž±Ÿ=p,DXtx×¹s¬ˆpÞò¿våÂNo§ã6º¸.–ëÍúÖ"ˆS
 áʽǔd˜¾(žyí3"‡ÜèVXµW˜ÁÎT]¢B÷‰Ê4_^Z!~ȅ
¥HHÎÂó+¿Ä!½0˯T‰Ggwc‡Ü˜´D§°©Z8eû8ýÎY
+V'2ýõv³-³[‹J…DmxŽé…#q™ªªÐm ò} 
Öá'„¥Œò`—Ï‚ãÔÀšiˆƒçYˆþ¨AZD—°Àëe1¿÷žS°×€Ÿ‘0q)—Ò
ÆÅS¡Ø?wY™Y<0 
address@hidden&‚¸Œ´+ÁÏÊì&ßؙWÅÂýÙjá½<§‘*¼ýæÓÏÅ\Š¤‚¶¤–:Ö½n׊ÑÎ^OEMgv­ˆDŒ^¿Ö¼\¹ÔÇUÎ*¼¯–m
 8چw;CLÑÓ¼¼óFÄ°˜XÊK;FÑZ쿂We¬u4Ö²k¬Å¾±þÞÙ^ˆPfáÕm³b•—¿     
™4/kæf‘{¡Äã4Mæ¬ƒÔ”k˜¹hšbÀjÌÍ<`oØ¥àÁŠ'“Òyy™Í­dÄ[b=h address@hidden|>+'* 
ã: ‰"\»½év]:Ó#&1ú>›ÏóÍÆÓBšcø=.Åë‚·L
H¥\ÔW€ªp~‹ Abª7™/þ¡XºQJÄêïô~³Ío<ô¸ ‰ßz´#´#²&&˜vW=ᒾbÕ` address@hidden
î¢ö=N’¿þY¶ìi"b\™ŒGGÄG4ý}h’¦SÐû€šæ«E(Jl0‘úòªŽ¤oCR`6ýìǸŠ%-WP'„>Fþaq{˜jÚ+Ö
    ºM
+aÇâèÀ”‰%Ô5ãKhN%‘êCp7éæz¶Ô½Pb|xcͶ 
“"address@hidden&L°˜cÌ>†(address@hidden>— Z±ÀÚŸZ{FF2vnGÏK
2êI=ïH]æ½{Æ`ltà;nÑmÐßî°>¥
+·"c¾x?ýñW$=<åÖaC‘š„çåf½Ê–…í­¯:úª’»ä¢8cA¬ 
NÍd»}‹¨ÉT»ýÙn{íûÁšÔÃÛ¢î¯à$ñ„é«1ê…,Ä8
z'address@hidden"ñÉ°óøñɐqðaٌË0HÑ6+‰æØb§:لƒŒªêá×LTj. 
VÔåX·NDˆ2›½ÙÀ½Pb€¼J4^t–2#Óâ
+¼¤#Âq!^v)z³Ò½PbàpƒÀ¿¸DðæY0BÞ:ÙÊ\®Ë¿½ùíÛ)«";iÞån0V՛½w1| 
Œ#õɟª!ñ´’T°wJò/ù<…ÊÅØtâ
+|à_Iü˜£yé§yiœÒ 8,qJ#
0†ž¯o2W﯎i€¬àû»Â WL       address@hidden,¦„>ZJU•ch 
ÎùvãN4?¶ŒÌRéæxs‰…
+؉*5ޓK-Úғ€_1°z¡ÄHÐmjtÒFw¢C½jÚØf'‹hQɧ¯sýûªÄS]{Í灩õ¼(óù6|T…
#^§ªÜ™6]9gu>în=        address@hidden<’öaî±^(address@hidden
0±þccÚõŸóü÷ÝUÝÙ¢ª£PA¬ûÄcp;WVÖöŠNɹ+ü …
8Ž|ý¼tŠ‚›Y,!ûƒW´rt1N”ÂýŠTu¨•èTuèCþi&,$g    ¼´˜fs¼4©ž¬b`°î…
CÜ[Ø¸zÓ©bÂ{W™¡HÓºMõ®È?û9Y!½Pb¸0í–5uºñ“­*BàŒiüå}L8r,êšbªo#y¤cá
?Œ‚)o4
øMC꾀1ci€äTÖgC:MC:]m8[,J_/e%à(isÎ|0ŽˆT/Û¥DÊ"E·Ã®8ü7wÅvØÿRćùÚ%÷8„01!|Ÿ<ðZâ‚áhüÎߝÙGÁ#•9ìõCt=Ms!»
 àû 
¸¸ö‰èî7ÅÜõ”ÒŠî›à‚îR^i³sN„W§Âðr}DÀãp/êÈC?ZX•H±Çb=3²ùM”}û8«Îý…
nJbNèršêo%¹Áån»ó§
ҒŒ®aoL x;›üû¤úûúÒ5Óendstream
+endobj
+44 0 obj
+2319
+endobj
+50 0 obj
+<</Length 51 0 R/Filter /FlateDecode>>
+stream
+xœíZËrÛ8¼ë+¸7ç`„¼ëGm|ÈKÒ1FbmI¤MI®Ú¿ß!HÐdÈH²-U‘ÊW
`löôÀxBBƒ0ÿ)address@hidden@1IBLW£‹ëϟ¦·Ÿ¦“wÓqÕõYŒi¸ƙÓùèâ)O¹dÀ—:¸…
‰v“ò!bBjÊì«í:RC”V.x“-žÊ(©Êhœ©f.Hò"Êɚ!©Â;N։—÷ 
N‚ÖC”!ŒcŽT–¨`ÑÌ—K     ÍG%ڀ˧v BWÜK7e?û¾u$e¢Jœ;>+‚ŸŒƒg6†‘Z
gK=—%Ûär!©ŸÉ´A.h“ëŸ8‰³ÅÌH"¤cËı$“ѧ$ÓÀÞЉAÐöD³'ë÷4     
Òi¡+¦°6Sî&address@hidden&õÄۙd,“ºÅiS–,•šþ&~ZÌbK1¤§jq,ǀÓÆ÷fï=ˆc³Ðêå5=ã]ýz­×±¥§„xj9ˆ]½_Z\4¨ÕaÏ?lWQbÂPºƒŽEò°µ
  g§Êðܪ¡%"ã$äÜUÇoîn¾½³3°À2ê¢d^Ê$+ˆ›ŸVQ±e¤\»?x–&ët—kSÉ:>²^õA*¬6º]Iº
îïZ¡—Öã¯î†Fõ^€8J5¾·kÚÙäÜÔ>address@hidden&u69u&!©gÒA¼Ù^*k"Ë&‡7K“¥R³É™ÄYUe=°«kb˜vt]NHBð]ιƒØ%hôYÐh]ÐDW—óe¹½_$e\Jæžõ1J¢ûÂõðݨÎÞx/d
  ü*V]=9»
+Z%!Üã£<„2e(¥=Ý¢W ¤$o
+—íëޏYãnA“Ÿ)<$1Ša—†)’€Ä¾×"œÃmfXd6¯ ÿ•êiØL¢W vqÛ*ªõ†êw¤5u
c8Ž×é6+œ!B
sΰ(Ê«ØÖkC¢²çF›!ôpṽpY»Î: ÒEœÛ,Õ²ËÓݍí"!ú9ã8ùՆ(   
YuÜø3JæËEr_òL½¿oí󞈷7©ÏdÒêBÔeú>Æ«4ûÏ$ÿ÷}癃Ø%S¬*qJ֏dU»Ä]¹ËoŒs7?ݬ7YôðP*–7cÀß<:'²5Qt¨Û.ògu³‡¹µR©ºJå¼ìj9‘îYQU+}WëA2q—ó¯QRȺ,v\÷ƒØϒÎÿèvýüœÍ2æ+æ|{ú£T.¦K]¬–®eD§88±ÜD›Ejã`›Ð×mó
 ^H V÷õ¦ÍžÉ,N¢l‘w›ðÝ+Õ®¼½Ý¢W 
,}]Óyj‘¬ãlSŠš`Â-|ûTŠš–U¯PÈY~ÜÕ;U®D—iö&Ÿˆ£šöËÕ0Óe¶&•ù7º2ÿq-m4¿ÿeÎ=¾¬PRŽÏΎÄ®×nÏn§Á×Qþó?éç]|endstream
+endobj
+51 0 obj
+1214
+endobj
+54 0 obj
+<</Length 55 0 R/Filter /FlateDecode>>
+stream
+xœM‹1
address@hidden/µ™ì3»¶[%ÉÜÀ (l±çä>ï'8¸Ìá1R¢ùo§Æˆ§Ñí-
7Zi
›h?Dk€¿+;…E*Ö¹´eëkí«àYÛžT´Co]oŸv†e~,nendstream
+endobj
+55 0 obj
+112
+endobj
+61 0 obj
+<</Length 62 0 R/Filter /FlateDecode>>
+stream
+xœYێ·}_ø#æ-2 
¡y¿ä1FàƒDYÇ/zééÝ騧{ԗ]­¿>Å&«ØsYőC—M«N:UûyÙØðø'ÿ½;Þ}¾û¼Ëþµ;nþt÷Ã6’3k¥ÝÜ?Þ¥l²,ȍ•q¹¹?Þ½ûñP¦zøþþ?w!îç6Þïïމ¸ôÃi6R3睈çlqÏÖèe×_»¸M&<ìL_NC•
…ό̋ûy75}—µfXÛôr¨rLHçàPÃü²û×C5-ÃJª|F3Æ5Á™VJ絡y:¤­Šé 
цf¹I‚³h×!à™—h×)®hfŒøm5LÍnn«Å)š3g8îÞ¥ÝÜɀKÕX¿_(‡g´Í§z¹Ë±àÈ    
õs=¼‚ÝÓrŽcŽk?kñ Ʉ
ß·¸’9¡%F¦¾6âóÜ,……ð‡Çìo®MKl¶ÒCȬØl…\–®Ï\®ñLééæ/§¶jºå'
+œÆé'{¶\e“Ü-"¤ƒ?Äu˼’ŸTŸæ‡¶Y\©ôÔ'p¿‡Ì‰NZÌ4Lº€˜xMVÁiÓ?Ú*½€æ7B3¥­\€&|kÔ&".™'address@hidden>ú©îê1aåҜ-îÜ4¹Ûã÷‡ìÀ'ïÿô÷_rnpƒ°øË<ì—Epž'‡¤«<`U;th—
 /‚ø®cÚŕˆþ¹ší<ÖÂ-àuã75ÇÅ*)à.J‚ñP
€¿÷ùÕ^p´í       ^=Tm‹ä
+ï=ÍÃ)#ÜZí3\!›L        GW/É(address@hidden|Êx•Á¢ý)ç·_&M9_¶
+À."Ў¯ãTä)ÈiíѶx¹”èû?ŒˆºíúKÇt»”V
+üKäB„cÆÀû©yÆ:ƒ~­¦zŸ³×ŠÏx
address@hidden:_èх?öÙ¹AH¼xP}ZØN˜CP}ªl¼ä͗ô 
͂÷xh¦Jɔñøñ/]ó%¹ÞˆBWݹNt`?R”ðFÛßÍÈ1ù*”ã—À•ÀðøICÇ`XËt ‚õþü˜cϽ¹
¤È>QžƒCóžS(8‡\>´¯ùÉÊyª:õ8
Í.#Àè%™6UPô„›^Û÷7Ü3&§ƒo0Á6Rw*ˆ]?å×*OkÛt††¸ú’åN]x
+2“§"i`RkÚÙSÁ°îkð|ì‡c†œ5ò¼èž3hðV¼È äÄ7Òw)MӜèépÐÏSæ-”ýÚóÞ0å9;h’nìRF: 
ĜI¨€oxáþ1ÜmJJª‚Ãjl: xM¿¸Ù&æÊ©ù®fO,s/lqìç.¯
+îɚT   ´2dÊw->(ñ"…
>~ŸK¡°mNqãí%*ÎìëÝ<4IOy­Às™]I¡¸è¡ª¿f-Dp™{J|cîA]u%÷Ú*S“ŠGšKnZÔeY„ùHlMbWuùñ~4
+*ã1s.ÀqWW»Lº ¬ÉÀëòšásE,xÓªYk/¸‹aaæDÐE]~VÍòm 
9HZO‡jl~KDb°I´Tº‡¦Má(vV¯Ã¹§ÅšwÐü¨lÈü¯£DTKYB/address@hidden&MEX     
   O‡¦íÇþtÈ`WNŸ#u-›TW®úY©mÒrÀŸç¾öÁë’Ù#W˜!`ÝCµ
À
+^œvq:address@hidden "MYE6¼dtq_·‰BŠÊ<address@hidden        
þÏVB·%=¥d*h¤ö¢8×YùV”`‹ 
Å;address@hidden(address@hidden(­æô>“ÐîUûiLñZ½ë¸é:
ù,‰cr1]HMØõÃPï&h/0A&F-¹æü·çZ„~ –ÿ5!WÁwä^Êõ 
<ÅøpC-Þr,–UEÈ<ô×_ÞPüõs2E[BoBtlÒ=)µ¡®Æå,HyéMÇɛ7¤IÛ¤‹À‹ZØQ&ŒR…
ƒóˆrҟ«§ï¿ýÿœµþ²Ù×Xy€ HÂ4ßÕÈæzðolâYÿáÎ*úrÙ  ­j©/P§2À
+/՚ï‹*0ELÅZ“2¸¦fv?#WŠp¦è›  »U„^j[R
+j¡Àó¥iÛ«cQþßRãÓwY™CçÂ)Z·0q†ê¡ÅQŽ½±)àmÐ>Ô3NXÀ¡ß¦6*F—©ÓP훨(Sۂ
+€Õä:&Oz€ž2Ó£uõ ±‡PF׊ܹj’’¢Ø
+Ll¢Z²yô‘Fw k€âH—
{jå‚ÓTï*ŽI²:Y©
î;`òE]%í¹ÿíŠ3p»ªÂuO}Õ¾ÏiÀ
9»Ê©ÿ9 ³Âqc¹¹ 
™Xë}™ñ¡ªŽî?4óœ²DHºd|ÒÁ·°–ÓÛGž¢zŽ÷;ÂÊÃPíê44ƒ4„˜™2‹+úH–YTí©IŠuÀ’À<
ýÔã°4X4ä+—Á¬9¢$Bjj`t¦¡€&‘Ë3È¡±–¸d˜S«9È-MzD–u”ï&a‘µ<äý¦hBYå®:ªccíï°]Ú¯Ûþs–ðЕk"Š¢²ïØì†þS&:]jR=tuJÞ81Eí3Üã<E’o{ÔoÁÓ(éÖè&
 †—”V?VpÙSƒ„RŽ ÿ¹†~¿Ë„iÃzVóœñ[al>Š{®§O·¦?ʼn¾´' PyŠ5$w 
œ¹9Û¨+œšD‰,øÈòà$R2q‚{Aò)w^hho
address@hidden>S¡Eœ#(ù
+”3<µË·q05»
address@hidden ȌͱɿAX9\XT¡Ò¿ÕÃC΃PÆ;õЏ¹Ú"8o”j,GRø¿œÚ~H Û*u*‚ö`‡'ÛòŽ„
¿Jˆ±>UC5¥nRƒØ´¥+ˉùz¨5Éæ7$ϔ5”üžnÕ»=}jÊãÄüúrU¦Ì§ôk'HF§‰¢wYiG`9'Ê÷CýÁ
›ÅÛ÷¿1d+ž+ƒò©?¡àR֝‡|address@hidden/tú¢\}ý—'”&«¡\ÓE¡(0SO¤ÌÝJtNÐG‚rAãžjèM=3èJ©’¦.s‚æ©FfTlaì7"
+4Ï2~Y~/•ï×ÿ|¿ùç]üó_þÞendstream
+endobj
+62 0 obj
+2574
+endobj
+71 0 obj
+<</Length 72 0 R/Filter /FlateDecode>>
+stream
+xœ¥[[oäƱ~_ù
z´‰é+»é·sœYàÄvl%ȃ_¨Jós3ÉÑ®òëS}©ªæ
5Ò"ðƒ.Õì®ËW_}Õóû¨äÿåÿ¯v~ÿðûŒÏð«ÝÍÿÞøã/Òß4US«ÚÜÜ?~H 
od-ªÚß8]W¢¾¹ß}øV}wÿÿðºq³×]iþè~ýáÛþú??ßÿù—ð¢Õ•q²Îÿ 
«ðLZx&|~öñÇûø¦²•jŒÊOúÓ?~¸ÿøӏécó½Ý)ï*kü͝rð4¾?>Å¥uå—×èöcüž‚#(góӌݟªJ:‹»íªËÛ¨­Òùñ7Û.ïXJz8¾ŒS·Ã?hÐx¼v¿ŽoûÊÔ´‹6<rÁ:dŸncôÂœ£=÷Ãtj·ñc²2R¸··v›·&„G{þó/¿Æ§ÊTNÔxêv»=äE´!/}êª±Zàº]<؝Ö¬ãnƒŒ´gç›Ò¢ªòªÆíî§}ހŸNÉ8´ä‰iÓõC~ÓÔ׌KÂæ)
î3.(ëªv«áÍE‡¹ª6?ßïWÛÓºß?ÅÅuՁFøñ/¿ÆMè;rî`ð›Pä`:mcÈ°«¡k§ä͸g³~élõìl`pQy­Èàã1<n*'Á€îV}ŠØ«·NYÂUÊ-ZÂWŠ-1žV9êÚá)6écmE̘_3ªÆE§ãã˜7ÐxGGè§Íá4á·,¥É¾ëÐæàç,:ô+N߄
 +¶Ö
»~ûÃ>îÅ4•0
+wØS®ÃÎH6Õ&ØXVÞfŠƒxo/ü/
ù¿<g8sÓŽrlAÄXƒÿp€O§0€0Õô8fS•3]:rÃý¦GóZA±¸¥Ù91ñÙC;¦äU€J’ð Âð 
1ç`WÏqÝÚàËíÔrŒ*À¥šAaÚ´ÑðX)
+h\v,address@hidden,-Ìdªº!jüžjŠ¼Ã”O¨}}=’¦)™
<'Ý°AœÔï¶r×Zl·\KÈ<O¿ÏŸRÎ7Xºöý—lrÎteȦ‰¹ãÜUƒõSzÓ6V™Ù×|%´oðÙs2ŒÐBQ0lŸ   
ÙÑ&ݘ7*
åIJ†ð…šÂµ_¯·E6Ð?|ºüL7ì;ÌùÆSX·S›+7 /þý8
§Õtºñû¸’¨´­úê´É`p‹ÎS,þ3~|“ù4ý:¾­
¤°Æó©¡4óe 
eÁ„x턷9«¤d¸œê²]0Â\Iu)(Õ÷‡ŒÍ®¡œÞöOkB!jÇ÷—ïö»#ÕN‡‡êÖí~ÕETºX†5à`€OM:۟NB¹®
 ÆÔåAs!ø¶ÛuñÛFVŠ¾ñä6ƒðôÀî20S©
+¡Îôb“^ÓM£Þ¶Zø2YmÛµàŒuv±ÕÿÈAŒ+‚…ú[»ÊLOz¸°‡u¿&“¤2
+©Ï?t»"¡%lZHÁbºŠjKèö‡ÓÓ&3?í(Rðí°íW/HCšõq8숛œ×(address@hidden;qHPHöӘ‹WÃÁ»ëVT_,EE»ïnj®`0é¯ÄF7`õ“Fâ§Æ©ßnó
        ¬8£|MH>2ß!;Æ˒rÓµy¯Îh´ÊóËÝ缨‡Uq}rìÀ
+rßTåD7Ž
+áëÑ,È~Þ! '䕐B,ãg?cé€^M6’ì9҇-Õø
\ÌTâ3¢£&²PfW‡]—˼±·óóO¿~üWŽc©‰$á¹DYœ¡ðÄ2      o6F.-5ˆÃ]vdTtZåyg±T"—jî 
fÅesIÏÕ±Ÿ R¤ É¥ŽÃ!’ªÉôÏP›°ÿ‚¾WøøóØìiC‘Ô¦ý{Ç)6®Ò³PºñL›n}ÚvCÊ;_A% 
(Œ^r2Õ¡0k÷íº•õŒE´ª]¢¶Ê°œVëî¹_aDßàÙ×CÿLˆIÉr\ƒâŒÈ²
+Œ¤•ÇþiO±FP²Íé õ̓öðzŠHÈL&9
ÏÜu<œ†|_±ôQ´Úž¹ØŠh4”g§)Íó>;íù²{w9d`±ôA¢›µöÍÅUý>ìñFØÿyÓ'Æ]ŽP_cµ†üøÛÿ›Œd
 {æ=âöô
$0Xç×dC¬
+ËÔ¥„„–²iŒ›Y,á±,PBU]Æ{!ù¸ɧ†ŠM¨ðÛ·]õ””+؍&address@hidden 
h¶!¹PpÚ]»ÆªZÔì’ü†)ŸúfÑÜ°5ÎeXJ&›¹Bd3w̳V¬
ƒ;-‚.Ä,ú2\Ѿ´«UÍÿC2QT9䥵ᄡ0Ôܼ#GG)ó&〆»!ÆÁmY:˜rіhó5ñ– 
®p™g—»vHE:´öÔÞírQƒÝ†´Cû1ót\Aãé҆¡Ûâ&)w8¡Ã g–§Ð¢P·š )õáòÊY¢U_&඘APQ      
Ôû?¬€ßÅ¥ÀÂ^rÆ¢(>¶CöLCÒÐ<žm
+Dr©NS^vÛmÿ”OÍpˆ«sà´vÖOCïŒm=pÍaC^cˆ›ì{àÔÐóĈ€TªŽoe£0W¨$Àß³ð9uÃü<b~{Cø›8ËòéÒçº#öhª²hÉss¬!ª.šãÈøq‰¿ž†5
 Åp8ÂÆnÀLj¨2n‡ã†R‰¼ø’ÂÝIAý…™ã0ë2ùrv°$_€ÛÑPt¤¿<”áR0ù–Ü 
æúHT^ˆq¿^jfJèL,kS•uænš[Cgàè^‰”7j™ff³y-(nÛãš8Î][ðÓ÷ 
address@hidden@$ñPM¬‡–Ú%¬+‹>gÛ|š†jój¿ €oë3Íñ'á@$SÙåݲ
+èY<#À'/߅Vslë[6¯)Hsƒ³ä¬ÿœ‘©®™z%ÛB8Ââ#Ƌçâ%ž·ÈñDB…«
‰\›„lÑ#ϨÌ[LdU&”bCü½äõZrÁÜãiHâO<<ñ²eIº\OˆbGÈ<Jeîpêšb 
őøÕ1‰b’ZŸ¨,\%é¹¾Eº3“"6:K°µ€$K«
D%(ÃAy­7Ž}ý¿ÍÔ¢V4  x8¡Ñ€PO°H!µ»2{çar?Ø4<˜œ†vÝLI#—HxIàmõݶÿ”ÐóŒ 
K+éF!XwØZCw³Ê:±ïs
UŠ¢øÑ ûg̙amKsŸöÈáàáLïÀ”ÔS^C!Ö[äd¢³VÅRz¢ïµ!þ¼$z öÄF€$M҄žŸ|Ëa 
åEÈØëQ-Çj† gBYL)o˜
+.ƒuGl‚³       3ºæ}›!ˆzŽìI¢Kìåug 
|'˜`\s‡p¯»ãqhw(¬XG/.Éó́Aæ–&'¯v¹ä»¤e.I‰ ƒ.
‹f“<ûÃ;Tš­RVC¸šÙœ$ê‹JjveKs[V56       Sà+–¯2p0A„RÛ?eMw®(ºµ%‰‘¹ÓÕäk(,
+uÑjҗX×Õü寎UFšE¬f؀>šˁ۞3D(•«m;ŽéìBŠ   ?ŗç‘
+§B¯ìΔ`      ሙ·øIË#х
ÑÙˑƒ™B.׫‰¯ÑžjŽùîË1ûÃÀS|ˆ4"ʸâi.’3ÉX¢"Çv‚dºæÚ÷TF³Ôw”]]Š‰¶Ç1Ž(ð‘t«œøNSñE¾ÑQszK7#‚7Ȇ¡«„”˜Ór6ºdÞLs8É!_T¸Žˆ70ÎQê
 
ƒŸ.H—ˆ,Š26ÑP#»»\84+1‹b÷E}6ì.]¹îV=ßÅãðÀ;ëhv+¸,1·œ¬Kã+zâ`ˆªh1í­/ڙâ8ž01gP7|ƒ·M
 Ý¥–×amÛ­SÆÀËÆSwˍ].]ªPß窐-å©-N+XfU¬lÚ$
ÜA›õæ0õ9À»¼:\æÿ!}mׯ†tx¨áû.¥P!já¯Æ&*tØÔV¾>ïEn~X.¹­
+©IfȂ,£ÝYc¬yxôz¸DÊ©Û¤æ‚C•‰:ý¶ßám`"„k…°[3P´ãa{"}Ø„§Äê÷ý®ÿwô€     
תÔ9Hú€iDmèIjÕLŸ
+8_´/¨˜hC¸ûƐ×XVJó;address@hidden:address@hidden>ís¸Íxp9¦»Ó""NI:Þ;~µ—®Ã$š‚ñ7ƒ#ʋüÌ-߆-À§!W<@»†iq^
 
é%gˆ¨ç@'Áì,ù}›QOÕ®×C6iº‹~-Ç.‚');ðìñ´fýí»xTÀۜé҉ÉA2Ó}·vü„0«I×\œàM›¡k‘/uÃSÅ뢹Ü‚¯ÆóA
 í4ßÌ ãCˆŽûŽy°to±Zž¢™«.Æt3Á”J‡W_U:,§¡ïP9bøš0(MqaxŽŸXÀÏbotЭ"     
˺ëâš×¤ûtÏ°NՅ X–&£0аN‘Apñ®eqqa<<N<ãQ,@§ý¾¸V[\/^ø~Ÿ.ÖĞÓ\²÷bS…
ô¯=å=ûQUþ܏ó‹ßs?êK?Î>w­’EÆ(nš
+èÃnš¾²t8"–MíÐN|yM0×/®ÿ†®cºtq¸W}î∪lbœܞïø*Zv¾ãÛå<address@hidden&I6¥åa}›YOȊYá;:address@hidden
 
Š-·a·©6Å­Sh&ÀÛ¼ŽáöúxŽy7Îr8ÿö’,¿Í¿¯°V1_–ò¶Ê‡.î6“Š-«†U·òl†¿¾ØӍIô8Ä<š{¡]ÑÝY¬fF­†ª³„»Íôj_%{M";£Bωþ]Jsà_„XœõÍÐàáM
 ï¬ºÚ˜/±‹}ßíWx­Ös'YL_ç"Xח?»(¦ú×áFj}©ãÃ¥è 
xßµü>ƒAã©Qx}R—Dº¢4\—¶§vxê¦\A%ÙèRëOcz1Gí΂p›8qÒ< <45‘?ÑO`߬^î
ôV–xºÊ§“òô’ܝŒ_;MøJSˆ?3
+ÓÑ,ß+îEªySL¡®2[À™m·M–_Ã*.É‹¬»Ço'ˆsÿ
„ñàÅÀ;@ò‚lVÜ´*пáÛ”¶ÂQÚòpÄÑi‹=ä?w|·má§F_ºõ÷ٖ¹~7# é,çÇ˱p
ñ«Ð ïàbpg‹Î÷Xr¸èŸ)–’
H¤NÔKwîÎÞ6“£‰Èâ=NÇê[÷eêRtÆÉe9‘Ϋ֜7³_YVJƂ9é³CA>Ø 
]Íò!]Kž_àçÊeJ™#ÜbðÁ»QpòZ:´d‰:;s<QZ¾)Uˆ¬?³ä'ݕÜÊ\Ö¯   
5çpí]ž•ÊóÙÅìýóýÍß?„ÿþ[Z*êendstream
+endobj
+72 0 obj
+4424
+endobj
+75 0 obj
+<</Length 76 0 R/Filter /FlateDecode>>
+stream
+xœYMsÜ6½+ùº­S%1ø$€½%k×Ú±“õÚJrÙ=iq†’cG¹ä¯oƒènpF•ÊWAØè~ýÞæ÷KQÉK‘þáÿ«íÅï¿_ÊyŒþ[m/¿¿¹øöƒq—¡
+µªÍåÍíE^ aR]uét]‰úòf{ñBVªúææ·¥+id
³nÖ/~MC°ÞJçqè?ÞÎóêJj#qðÍOiLšJ{OkߘÇt„£µÿþðêãÇ4üí闁)++ÁótžRûË´¥©Ušr­µ¯¬¾¼VÖÍó
 è4NáÊâ9fi+m…Æ¡~¸Ÿc†õFXŠy7‰J9I‡{?ôwCÇs!^K!*_§àì9€›M;ÏU
+òè(ÛfÞZÂç|08xhºy2îÍÌ«Äj\À±¿/]ú¡IC®‚HõœÏX(fÚä©f]ۓ-]’&ŽqhãÈõ•S;o**çíú
   §ÚÊHCeo>ÑÔ (¨þ0á‰Ê¼i1Öx
+)~Õî霦’Ný<UVP[÷¿³:lc>(@ÄÚuÞà*º†.HAq«Ã0ðÖY·ÜzÆZK秡™âÝÌÀTgŽÃU´m°OCp(”gTN„ˆš3}6ª×‡aMYñF•¬œ]þÎ`wZáhâ¶]
}îŠPï©+Ⰻ]•ñ„<address@hidden        
lêèSÀº§üASMýð€-[[ë`˜øH06ÅZB¨ˆq˜šv‡ëÂml¦Ãñ®öô‡f·ÆRÔ5Ïn·û." Òñ…15SÛï° 
²Àtá³ÝˆèܓMþäµò
+Îw¶Ë-7!OŠÒš9øP9éÌQ»&*EÅ·M×Å«($gà6‡£jï—^–«]έK–Ƹo´ç?i@@¨)†Û¡ßÎ 
4ÏÜTŠôO‡ÞRD<ƒ`ŠLW¸ô-ñÎo‡‘z˜îÚ "¥"€æ4W˜|Bžá¹ãàwC³ßT9ùVƒJ„”|] 
Æ4çû¸jã¼¥†Ú,ې·z¢-óôº4tÌ/9©Þi TH‡3^—‚îQl®`ÚºE#LóK      
v¦¹»„iÀÁJ¡ÖÌûØЃŠâíú        Yà      ,ê+çy<¬BÀÀ†TȪèªßR€”JÍh«³*ª 
Uˆ6
ŠhdLÙg𥮕'$x$
Èw³ópË:¥îÑì
+š±,Ռý 3<£3ÏWBåïÚÂñ͊y!TÊ
+u´æ¦
É_]3QÈå€m'jñ”ü*!iº1Ô
+_6‘ˆÉ0Mü³)€©ªôòëŠx§øŸ_ɎHÇTÞ}»uVP½PÐ39L\Mz¬œ½àÏH—Pœ‘Ÿwígdg$eÛé/4?a÷éñ¶˜;
    -ù{ÛÝ86qN¶tÜã/C»»›k +ckf®MÞpkj6ÈS»W˜p]´^:¨'X˜BȚx
+LOŸùÒN¬ ðãcĉ؃Ûû]BµºúÕIs“ÿƒJÍ°ŒíÝéHÁ     žžÛßh6ŒŸš±yBÁ{ÿ7ïÿu…
ñ‚NÐÉnrôQÞSØúT•Ž¢ºÙ±É1Á§,cá»÷o 
¥‹¹³µç±s`í:Lµ.©>·vÝ#$À«ší&address@hidden)l*¬¼_¤ÉÒKæÕ'°]sfPցÿ-GQúÆ|n‡ 
¯„…8mã­xV_´.Í]rC€«       ìv^Gf]kÿ>^Ì´ä­i×F7_s'€ê5êˆr¡¤O™ô•4ò™×ƒ  
ex¶ãê0^##éÔ»Œòø—î$ZpŠ¸}4p=·ÏÍ¡jŠÂ¬ßÜC>v3„-\„TMxÿù;«–ÕŸª5#ý%¬îÉJ&â/ã}{E8*jÿ6~nI6ÀéÐÙ_uûM»+¼Ëc!ž½ðw»5¤qÌi
 ÉàßH{ÝÄO$…wãÐÅ|¬ä;¨ï³Úv·w
!D+÷‡¿r•À‚ÿ¼:h‘+ĕv´ñý¸Aq7’ë|hRJsÞÅ_ƪVLèãÃv=v:È«q_ì…
©;\iç÷(address@hidden'Š‚ØN¬˜½XƒÌQ~ù    
UinŽ¾ÛgÃêÓ5ˤÏAúsɉ™'høÔeBûFÇbà cV†oa·Ø¦R0àÑ/A`ÏñK 
L†+¹mÖUE)uìvg^åŠýØS¶lîù’¨äáÓÑbV*6žoHì­äåOEí.¯Ï_†+cÉ;ÇJÆds;áíʀµ-„‹>"yŠb_|gH—B`l‚É¢ô¦â“ÌÜLpˆšIYpi}ã]yÀ
 SÈ3YÏ8Ûç¼VèÒ¯qØ4‡̀Ý3lÑÏ=ÁÀ­dςZ>5"‘C¤¬Z òEzùYäaœânñ±¨ûÒ ;ìú˜á§ööã…
¦³©LœM¸”c̮܋àf€ùÕêèÝ'address@hiddenm?b*Á…
ؓòC€fjÃMsf—sõÅ4ÀÙCõC{×îèbš¬e1µÏ¬|×c²ŒdIí‰E͋ãºÂ8Càô½.7þ¦Ë½(‡
address@hidden,o’çÈ3þW¾PûïßßÎnòTWiP,†úÓ®.½—ÿü¤oÓî±oúŒo[<Õ
BÀwëR2ºÃØŠ¸
+’¶4÷_…¥ƒ±w/ÞóYÖLyEAbKˆs¬Ö/éy¡fËòq•©ry¡Ûíot+ƒÎ—7ÜFžìzpGmìP´ê`ÎÜ>YLá"2 
ƚÀ½qj†‰¡>†¡væZ^L7¤Êú:Kkñ*âdã¹ë!#b1¿þœ;òíÐl#ÙÓt
òÂ
pÉrOÃEî‚$¨>^rá¤,•“Ì6⊑rÙdñÓ`º„¹çH¤6O÷ì×CFçÌgìÁŸbµ)Ï?}ÙÓ1¸›®ý3›™4òT;¡ÁÁèŸ^oB`.Pp·*\ªŽv'ÅIï;\œÿf²ˆõ5déO»v|Œ°»Vþl׶ŽŒô»&Ë/ÌÑ9¢ÎÌb­f²ÙÄn{
 œ¯ˆínŸÒ¡#àÊQŠ€öjñsÈ?ã ¸S>ـ¿…ä|öØúPX&‰Õ4âT˜$˜Œ´?%£ã·› 
/÷éÅÄ*ù¬Riÿˆ:ŽX¼X_,GnðÜFZÈôȵh££:øÄ{ÄM`'bE?É%VæNúœE¸v‚_W›îÐ|ê"~ŠfÏT
ÔNžœñ(„|Áñ)ÑÀÝԔ‡¥†~Tu        ¯ßF䉐Þ爇ò[ýìHÊ«ü™ßì‘ëö«ˆ?„¥‡$Í®dñ[šw
þU?O“ÉUž¯_ínÕ֐ÿ¦¿½º¹üïEú÷“6P¯endstream
+endobj
+76 0 obj
+2742
+endobj
+82 0 obj
+<</Length 83 0 R/Filter /FlateDecode>>
+stream
+xœU‹;Â0Dû=Ŗ¡Y¼þ¬ãB$Ò$-'address@hidden)©½dXaEÞÙ¯–Œg…
ãÌ-&JbÅ£¾à{`d1$-F'd5CãúÞtÿôäÈq9éšîzºi?18ò‘¥L…
qؘi+FÝMÈ&o+.N‡i,K¯x‡’­‘,>endstream
+endobj
+83 0 obj
+143
+endobj
+86 0 obj
+<</Length 87 0 R/Filter /FlateDecode>>
+stream
+xœ½WKoÛF¾þ½ð˜âzߏ=ÄE(ÔQn¹Ðm±–D™¤œúßwö5ÔËnã…–³»3ß|óÍìCA     
+¨ÿ¥ÿùzò0y(XXËóuq5›\^+WpJ´æº˜ÝNâFš8^hn       
³Ål=yóó²Úu÷vöçÄy{jÁp¶˜¼á~éòš«‚Kb¬aþœ2۔Jøó†W­·’HªtÚÜÍæ.÷8âÀÈv¥2Áò·bŒPÁYÚ¼öKV¬“ii·š¿ìcBåkü’"Ü0ÆñærÞ®·«¦Ú„Œ¦Mú8ø%C¤P*/ÝÄ#Œrܾtꪭu7õŸ$#VèìímÀcŠ(›ýªÿªÀ
…:àâˆà–¿AhÂU¶ýp¶KbµÈá~¾š¦`UÙïA–Á]£³í°
÷0C„µbÏ6&µ„ðÁ\%ã?m»ö®«Ö19pã^rÀWmñ:8as.…
à½PˆÌñÓüÄ#ÊÑ£ûhGåÙ®î6õjš1WÂ(address@hidden
íú%»ÀG8×Ü úº{Ì”Ô` ‰Ä\#ªÍ",Bú©Ë†·».ÖB©˜ëpD)š‰µØ­êž„ÛÀ
       ŸEw…9ŸpE^‚C6–hxÃ`“™åýPuC½H¯
+Ùóm5̃¹%Ê`.ëifì      
rŠþc¦ƒÓª%¦ÙœV:hÑm5¥Ã‰¦h¼­îêiÂ^©OpÖq±ÅZÓå÷jå93ôL"GèD­ÛÛoŽã-çD8Õ7zv†ótDöÎkÙ̜wÏsÞ^ìe”,±QÊhh"_Ë{’¤Qԍ„$Čô|E5Æ«iYeö±ø¡Me§(Ò¢®VX¨§_›aV9Óãº×DIŒ¿Í
+*+Òìå½¼Ö¶   address@hidden'%öSÂR©Š±~zê‡:h±¸=èJŽH£èA¯ƒ’dÂî!8tÕölŸe 
ƒµx%íóÂÑlš¡I˜Y€#ÞQÃ*àkÇFx›0‡’u'UÅFÿm_
;›1…ÛH€s¯Èæõb×EU„Èw£²Q3*‚
+
+âFIî·UäÄN=o.æ)‡&$FœR1‡"—€¦YÏ9ŒY”a`É‡Ä    x¤²Çìô¨YsfòbS    
þLU»ÖÇM*7i„#‰Ù(iþÄi"<´‚Ó‚ß³½úõã§\„ëeµJ)58œÉh8ÍöF²M&ײ†ú^x̚g.º~Hê!¹
+À2˹£cìY NQiv’hk
+ÀûÇdi5<N7ž|wÕjõ”:address@hidden    ý)q&SÆ~sIÅY   
9x£ê(”£ü²ëIïU9;]ý°kºØót&ÂÜpãmcÿÓÀî      ¦”}
+Ә
ês76áÝ<©¹ÖØq—1-ÆsSÓ    ꔓGx…
õòOF±Í^½KeàÛø~„ÐVœÂ4=m›9*²u"address@hidden',¼|eœÄ|address@hidden       
°ÏÃÞºÞìȪ‰U{,`
+t遃‡ý¤†ÿÜ+—ñ­DÙË@'½±Zè—õ‘㈜iJqhïs[   
¾jîSš”ÄיõBŒãCÓÿx!Lx0—?¥{h†Un_|ôé§t“„áñ¤HÁ9!ƒA‰Uô¤r!“œæ´µ¹IÀ˜‘CúM”™¯q9>»6ößÃÎøôåÍrA§ôËۘ,˜;HÖ=N¼þãˆå™³.oàÖK|]–Ò¸L£SëÖÏUßp”ovep
 
äWN±ñÄ!œę̀×_Ñ7w늹‹Áóq_[xy­¾OôÛåS¿ŽÓÎ?l¨úûïå¢~¬¾[þ¤rÑ5g2ÜõG)~½Ã¾nûsBÆü+NúaºLØ¡¼ÙûYñÇÄÿþð}—Fendstream
+endobj
+87 0 obj
+1557
+endobj
+93 0 obj
+<</Length 94 0 R/Filter /FlateDecode>>
+stream
+xœ­[KÇ¾òráÑv'ý~ä&ŽbD°{•\³ä¬8É¡g†Z¯óçSýªîy쮬:5»«ëñÕWU­_6¤¢âþÄ¿·Ç¿¼øeCý·ô×ö¸y}óâO?Q³±•UL‰ÍÍ݋𺡊TÊl4WQ››ã‹¯Ô×7ÿ†åB—Ë“••îG7»_}ó×W?Þ|û“[(y%-UñXå¾QY
        MLüöú‡n¾ûþMØu*Ä5³²"”o®™†¯~ù›ïß¹¥LULʸÅ•Q\Äoï^ûoð;#Óñ‡®Þ
þײRR¥¥ã¾‰k¹1<~¼mOuÿà¾sZ        
*’¸í±þà—3S+XüüòЄA×B'Áړûf*Âai:­ó‡±Š¥ã·csìâa¦ÒL§ÃêÓÎ/¶•6-þ÷åxgÙJK*ŸØwõf
+~K®‡_sN*÷ëkÊü÷³7!œbY©w¢¼"š$ƒî“®¨•×Ý‹‚AJ·b%Ö&{Ô» 
ÌÜð`].iÒm–€‚‰ávÌû†•0jsÍeeLô.æU¨*MHºÚMPgà¨WçM¶½Û
+îž×e§÷¸¦ÔT\ÃñàJB<sþŽ·i½í(ý¡SÕÁM¸¥4©ô¸ôœËalo£“)Γá»`$¦)žÑK_ØvÇó¡­½„ÜVÄ2ù¸õ>†=
     ',íÙô§æàOwÚÂð½ë;/*ã•bˈ‚ÀI~·âLM?ø¯ LJÐ?·cû)^SX†Ÿƒ”Úr®&>F)x·M[f| 
©ˆ´ß»×U<D™.ùÝãàL`4¿žn)f³˜)â5Lj¯“æmÖü¡©‡1êÈjaQI}Ó 
–©tcãKJŒ¯Ýॊ`¤"WtnF+àtÜË>žzÉ7{l[¿…"H£ƒj‹š
j”I[¾Q+\è¥ãP³pø®ÈH¯bl
+Ëíô¨kaã<*ah¶]€CX¯9ŠûÌŨ]^LÊùÅ ¾'ù.ª³çþ1¦<address@hidden
+媡é?%\Ö՝Ù#×tÄ$ê(æp=ÂììÑÇ}Ûï¢ò%ºÞ3:#z©3¥Wœ¡8¨ïBVaLaZéÆtSçâ19\ÕG™€$`š 
address@hidden"2”.ºªKT®wUb¹X¸ª‹¨¤™ûöà?ÂÙ*ç¼ár>G5(Ž^Ýõc„¦¡³H” 
HÝyl»Síwæ’ˆN:wó'/Žôp£sý¡=}Àï¨dt&á…OTžHH©E0¤R5õk½€wZü{Ç&œ
+gpkƒaèšMà’›rÑU~£“ŸÝïÛmҜé~{o}flEI]vL;ìë‘Z!»èRÆT&}»
Ƴ°Ã$A(ØLT|address@hidden@address@hidden {•ÔÀ0â'#¾e•yhOɍ
ǯÁƒE5í1oQCÀ©²ñkZ‚Ö|üÀ5^ DÁ1ëáCU¢Öï EÍÖˆER5Dàú% ËiƒBª*ñ 
‘€öî!B1ËÞޅ¥Tj:;|‚i%žåjøFÝ<ƒœøóÎÎ|à1O]2€3àµÑ+Ø€/Ù8¦8Ñ­ƒ   
„0x¤þ‰Á×AúeÅc¿»[•r,PÍtßGe 
Š~Žæ¥KÖå¤l8§ðÝU4Ÿ&rÎ~]¼Ïò£7zÌS*`+ìÐ3[ǯžs×]úqÓ¢’è©ÏøŸ–¬p60¾8Hfß=´Ã3õ¬6b®é™‘IUû£µœ<×-Ûî܆:Ú}G|{=R-atAbŠBôÒÏ\·
ᅫ Á‰˜‡£™†cfäPÜ!ýµÙ^Æú6(KXǁÑ,Ž°1‡K5¯ò9¤¸E5>9³o?ìñn% Îb©ÄOä\EH)lë¾ /C   
  ›Ñ,¢,Rè¢ÍI† address@hidden/*        
Š7pqÂYNCÏ¢Ruû[°œð6³’¯þ9h”¹B[•E     Z€W,[•Ä²ä¿5}·Êm¯A:     
îémì&¼MãÃý*$—F–I0ÌV»&pßÃìpßl ‚ËHÿs¨M%CVùiêó9º×3X»
:Û9$Lê_)W{dɆ±=¡ç
+îZØöÈ.ʪܹ«È
i•±s°²Rc'®ŽdÄ(Ofô2¬WÜН›Ã¡ýu
귝:,ÖTbb¹O—c1S/•ä‡fåUÁ»!OçL6á5EÒ²½ô}”„»þ&Öć‡'ÀÌÚr
íš|2:Ž±˜S†Ëòó}‚”Ì¢‡v¼xÛÔ­™t_Æx Ñlž˜À]O±5'ðxÅûBa+´‡ŒwÀ0Î
²¾À1ù©Y×üÿ%º€(/OÓNú¬—îpq×½Š°e      –©Ÿ
+s1mžº–Sç K“¤Ù¹2\6'ș¹ 
楎IBÈû{¦6^“˜¶ëä7Y?Eˆ0Ú2D"address@hidden@6a™˜\­"ÆC^—{ªCò"‘/uN]u¨ò(’æz·ƒ2´)õBL!Å>E¹8Eâ,ꬴñm;^e§1@
      ×o¡S»O)Ù'j6•Å è©2;F³>/¹«røÒpB3­<ÜöíyÇ
¨YT<vrŒ.^¿¤“ºVrƒû*Fa¦]7ûØæzitÂ7çÖ9°àRšÙá]½M~c™sƉŠª=íØìk¤(ŸZH(1ޅk×M
Ôa
0¯)¥$éúÛíÇa¬C?fžq!}…aµºKfmV±(QÁõy'9Uýå.òG {®u¥´™e;×5´9#e$X”<ÖZР
3‹uo†-MDÑy
+=9¸’°È:ÐkÜt
+/zjš0cÓÁrpÐ   address@hidden)3)JnöÈ°tn¹bV–E§î·‘}ÈÜÿN 
ª\Q‡óXª¸ú{ÞxPe,<3búÖL´2›"6=Ä]m±<A 
en<™¬òþ«¿}÷c¨ƒ¼Å)F›ó™±O‰5î:aØCx²Ù﯀ÇSSÉïÝEZ
ÎOL.TÖúÓíË&
o¥Àâ,ÙËJÉäüR’..5IÝu©wäº?ˆ]÷©Ñ
+ùF`1s蠕œLøðLKþœÀÄΆ®
+Ñàzá–XsTw“™Ó€‡ðL¦ÅV¡ëåDâõ$‰ËH´z¼?ÇÔóòpˆÝQ᎝–>E þæ!§Ë‚P“•Ésµ…
àà„å˜5!Q®I–á‘ø‰«h¦#Àk£ÿ¬zðð0ŒÍ1LÑÛsfÿá´¤ÑmÍÙUôU
Ê3æÑLÛDý1Mzê:address@hidden:Õ®Ö¬Î
!Ã$Kœ!§AõzHŠ´ß,÷=G
+àâ«©Oí.š
+³»·AåJðÒ \rªÊ9Ídʯ¿ÂX/xA®è€-Á§; <`È£âžÌ="±¸gLQ\È<iŽCtdÎÕ¬¾‘‹˜î 
ÃÏrÇvjBHK RëÛÄzˆž;£C-ç:7#)iÇ}´¹#]¦©šÒRà´oØCð 
dԎÅ{:±jÜã6‹'-ÜÑöôñÀ]Ðäo^ÅKЌ`Û"‡NÀ¡öù©0‘·ó3˜`q…(SqxQú=Òb
¸¡ÆË41)BšÆ1|Æâºng8)!;® Í\ùŸPù}ó!U‚ *£yȑ   
w2JA¸súîۄ×P€FLa©:J¬8ÁŠ%R0N-ÏÛ8ú›zŠ*—ðGÊs«
ûhµyêè·.»Ú4<ý©‚'§$Ôþ)›÷y\W)—Ïñ£X̊¨ØwãP3åZ÷k3í"k˜r¾‰¦wM^ÔdÀ³/address@hidden
qw/á<ØUd2«õãÑ–+¦)×£!bd‡ÔúÌûîrHi†£Æžž›»†9î
+ޒGÞ,s‘9X;6²ÖjÞÙp5Ä
+X¾•fïi0]»ZŸ€¯DSÕQvƒ•Õš>òÞ$ӟÒW |
Ö_2*[¤ŽÃ0­&óÏi§²9ª(džë»ÔGÑ2Çö?Bê/‹§4ìš i¡Å•yãg_ˆ‹|¡ü
앛ŠÑÇXîcm#Å~¯tO¶Ø´ÚüíZWVg(Gâ ò“ƒÈü _*9ÙÑaxùŸšûè&Z    
6ØEo†xJ¾ò>ì0=l_ocÖ*Ú"—‚®ñ7–ŒPZ¼{¼0¹øZkï÷›.Cs›~U›õa{9D…
B¶„ôlÊl¹Zö/cx~3I*n0
“œûAÝ5ø~à      ž‡(Þ<Ãû¯Ë¢®U«]
ÛÏÏ¢óé4«ÞvÝø/jkûI…8ÏzÙðÁÀüe›;Yè
’iȵ[O6¶¾hwSi睵É3ꙸ³>­D~3’Äu|_Y;—æYöó}3)±m04)Yh“G¦ÉɊw%«oÁr¡¡ÍgKe¸>g.Æý«Ü§4¿¬Ü7;÷0ö—­KÄiŠ©Õ¢kÝåò8!êÁëqґ˜Â[×L­\¡W§8p
¹ä.^Š¸º7þÄÆëS7’äÚaߺISdPQ3‚M#}roœ±»í.ý.ì^™¡ÿ3€èϋ³`àÉx±cٔÇ*,<×eš:ÒXVE+À¿B¿Ç°ÌÚüNbí±Ù¾^þt0¹OÓh±Æ)Ç[Àá±û²Ï×°¬TÖp{Ú5ç¸
7EU”¦Æ.Ig:Ä _6Ét†XI4„Îõ¼Žå—dÙÁŠÿ}0ãn׌SH’´¬“ž¨¶]açνt‰PnÊÑ}{ë’&È<·Å×Ìý 
4’Yt¬ìæO<8LÏ\³ƒÿ     
×wՍ4+œ°ðzõø/×Ôð¡Fíºÿba³3i•Èù„}NÍunÖ¥f”ïr¥{äf”ÛÎÎFE+t¥,–3–õyM£â¡üÚ´amB
5H|íæXȤN»Cê\ƾã`?¿F§ƒÊ7j+ºNÝéÇ·7›¿¿pþ‚ª§1endstream
+endobj
+94 0 obj
+4119
+endobj
+112 0 obj
+<</Length 113 0 R/Filter /FlateDecode>>
+stream
+xœÍZËrãÆÝë²áÒ®á~?–±=©¸âJœ‰\Ùxƒ!!¾¤$+_ŸÓèîÛJò¤R嚅
¦ÀF?îãœsoãó‚U|Á¿ôwµ»ù|óyÁûgùÏj·øööæ›Ê.|å0jq{w_àd*/VšŠ™Åíîæ+QÉêëÛßYqÅ
FÝ®o¾ºýËûþ¡ª÷:=üQ…g\UšY›žýõý‡¿½ÿ1<ÿæwÃ%…ÅŽ§q61n÷¥2"YJé*­Kañ^?Û  
#±?ËX^ävÓôEåŒu£ÝôÛ62=û¹Š     +EzÔtûf;·¿%g¬²J`u,f†   address@hidden>ǹ¥¬$·¢
ï簕0.¨^¯»æGëÊ0—§9ëUš‡7V¿¼,ºîG/%çX€/–\ô¿Ýºd.ïôd+ˆ=F[I†éO„(PŠ¶ÒtiçÒ*²î):QŽãZWœÉ¼¯?Ä!Š-°’•XCte
…R
+¬”bLõ#Ù\DØ*„ç`T9<3C7\¦;„g>4"<œóI`BQ47]Ÿpغ.{ë‡sÿ
¶×"çÌ®>ö‡8‚Sä‘mo3.1”eó7éuëɥϧv•ì‹`>/µkv‡î¹wµÃ¾(¡Úu³[&ŸúŠKC>=Æh·ÚG‡‹ÁÈá:ëó6ÎÛçdf´&G§¬”®
<address@hidden||jΧôTZ/'žwˆ9òü±¾oºÄL³ì»CŸÕp¦¼¿ÈHï¾0rhÒAn…
\Lð¨¼ô¯Y˜»×,ì¤нÅÂaÀØÂUŠCf=qIÆ-øVyí9†Þ#¶—€ç¢ñÏu—Ì2’Ⳙ«+(‚4y
EªY"ò¬ò”¹DJ•˜H½‘‰{P¦’NÊÉ°3Qò2zÆÛö Vj7vÍØà<-üKÿøĘlÎÏKnaO¤    
xŊÓIzè[Àq‚+Jå5eÓ)E(Âyš6¼<“6À&Ni“Ù#Àú”=F~ÿmió.Q&({zê‡âPzà›vOʇ‡Ýfµ!)„ïê‡í9=ç
 ہ`1>Ò=<åe>address@hidden
+ckq:HcޝŒ¤^2Ð`ËBӖësò„à”ÐF¯_9ÛUýÈã˜Lo53䒗h"0à„&pVžx)t¾€ǩ-€»–qÞç‡Ð
address@hidden"{Œ€ex>Hë‡Ó™dÃQ«zO'T9§ëíéèÑh?Œ        
ˆ%îT>`f*2ÛñáÔ)b²×m׬’1!Û´ÃxV%‹nxŽÜ`&m|jöëQx]pÃgB~Öތ‰;¼!mߞߑx!þ©W«CG³[E„™9’§/
…¤…|Í«Ïû(èpËå›üdFnúðÓw}ª     «C      °ÓoÇî6ê+—¼ùÕa[%'*AOo7í)ŹeäÛø,(J r¤«œ 
«^sSz9±L2ȆOñUî½,,—+jº‘ÕqAF‡”<$-©‰ù„¨'ˆ9ÉiHûœaHQ/sP§ãåI3…)¢dE}©
+ÄéóÛιZð”Ì%y8›KÅÝLö„Gºà5Ý»Ôzï¦Æ·ì
Æ·üãcÂ.™
+|'¯[ºùõ¸mWí¹IɊ9ouL˜ç†as‰jøœ¤ƒŸ7ɒ5ò¼'ää6SãDˆÇœð 
ÅEå!Ê7!XoWIä±­Óþ=gSÎ«-|à•,Â&9¦ryý0”[A†;=®>ûÃòJKBœ¾OҌeø…
+昏dùµª‘       
ù%Â(AÀ¼¿|•¶¡†oJd·Îæú¡ôm}jæ–*Þ¦Q_Qÿòu5‡w(àª1ä¹Eð܏2&D»¢zò©MU&`¶5O]c
 -©ê\‘òÀüòÂKA÷kJ­¾?¥‰5²vÄý8±
™iÂéRmAîRDÀ=bbÞ|ƒÓCùÈ"address@hidden}õ§}’k–ólíçì¿"ïHìA“i:9åÙ갏™
B_d»~¤˜¢
+¿‰ë  OŽQzõœLûé—ýŒ-ëÏ 
ç)ÍÃ>#šҍüRÍå)¤‡Ð¤ž¯U«Èö^£)T2/address@hidden'€ãžšíbµ¥r¼½ËŠÞÑ    
ëýÁÜEQ`½ð—`¦x‘Oç3u,±Ç)”֗B5ÃeYJ©~ 
ÑG½oÛD-8°®šžÑX:c‰,^‘‚c!Š'CMãMªþ‚{)<êm8`ä&ýB´¥:!¼›_½oSø;
+õ&address@hidden 
])J’7BÄr5ˆ>Õ1“(e[óÑIʄ¦Äm#º‚gàú™“bõtR;Y:ËmEò¢ÙÕo5´¨Øz±TTq§zîüã"N¹qx¾AsDp’.7ËE¥û)~Ÿ
Ö÷5zrœƒ–/iLg¼X;÷i i%՘ë&íPbMnâyÇÄ(²‘ºäúUÎÄìH»Õq%«‹ÖD>address@hidden
+3”ŽŒ¥ŽÌÏ·ß}›FNSD¨
+B.¸Š»¶T‘¹\êooH"address@hidden;ÌøCwÞîûmIFÈ9ÓÆœ}‚õãÉÒ¤ð
_»Î“vÀ“íî¸mv#ÞÐ4”èMd:èïˆ]¨ùŠŠêS–DŠÆG. ã9îhtuNð 
Y~óôp<¦u­¦šÆJûY"ˆñKŠPk¿/íͯç\ÑÞüÿ¦½a[EªæÉ²\Ó—žÁôŒ4ÞF¹Eq¥Õ¸ÏlÞ£]N΋©ñ…
"Ak7¹*€ÒÕ™O´y2Nˆ€+·£SóùÛQ&("¾àþ‚‡ºtwIJAùMw®H=º”   ÷      
%Q)+j:çTÑ^]\ŒnéÚW™R©Ô§O9'mɿ̱Aã_LjËÎé²KÞ²å`O›v•|`ŒÎÈ·‰`(íŽ1ùs‘WKm¥
5œã£>ð’åÚ¨¿"address@hidden>çJëa»5z©EÄüÏÌ<š³Ëæ³3ÿÛ¥g´Ý%E>œ2ö    
Kék\èJ;å©«Zd 
AjºW†K¡Úò–ç_V^ÄúœÆúߛ±“*çvRðWôèÃ~ì;Ý7¤ÔœïXñ]ˆæӕf€Õˇ̀?÷AÞ’BÂP_>address@hidden<ÐçA‹ÒççvUŸSÙ
k[c(8ûìÁ$ÂÓõŦIz6|‘§Î]VvÔììšÏm—È
X‹Ú%ÓÒí `)fbW539©…
,_DgïS1Cà:ךmŽ‘n]ˆ,>nOÖ9êæÜ!ŠzË÷:ƒå¶©ñzWw4—ᥚ¬?n›¥T"Ý¥3¾1âT¸™"'¤3Á+T
ÆÓ D¡.y{—}c—z?÷َ[Wñ:
ՎÖ«Uª[B¦0=¹PÊbz¡Ð[Ú1zû“̺m‡      [œ˜ç.¸.ÒlA­˜d¡{ 
HÍÆV˜·Éb>øêð°ÍáŠÔ[Æ´¾nÏ3¦…Î5gS’ÓÃZ”¿æ
_ç¨-×áå}QzÚ%"BŸŸ""×!¨HQÜÕ•aåpÔdz4Yýý— „µrEÃ3Üm”6óáÓ   
ÔòqC»‡«¨iÛå¶í¾©³M¥uåF«îVÉPÌó|¦Mþ,Áz[jΡâ”!©B÷á[‰™ØS•+±W¼(BºM.àf®õ”UTHQª‚9J‘ðÙÝYYHrMÚMLêèóò™J{òGØã_
+Ï<3%SŠ!ðVçIJ0Ao\Ù"?ÚÔûûÜePšz¦Í¯¨¬r­‰[Áa„±aM*ŒÃio]Û$%ðÉ9r]Q9J4êvôÓRH¼Ì#å¨\;©‚á×ýµÉ.nõF!S¾À`1D
 ÒÚ6%ïÖM.ÀõåuÝ¥.ËÁdžQ`…
C‘jépþ§L½·ݧXãy‚AõB2³vüídˆÂAùòé͆r"hAq’Q>ÎPd4ïð6"÷Gž¹vÁpœñ،µ¾ûéçw?HѤ/þÂå.EP÷z›¸,×ìÃì‹vcV}6íý&á‘+_ûAغöLëëQs_öùQï»÷·‹܄ÿÆiU<endstream
+endobj
+113 0 obj
+3370
+endobj
+119 0 obj
+<</Length 120 0 R/Filter /FlateDecode>>
+stream
+xœµZMÜƽ+òr™KÙ¥ûû#7;qâE‚È‘7ðE@@address@hidden|Å¿ôÿzÿâ§?­øð
ÿ[ïWßÜ¿øê5w+_x#ŒZÝ?¼ˆ?à+nXaÜÊJS0³ºß¿øÂ}yÿx]ÙñëBèÂëð£û͋/þôÝ×ßßû:¼¨e¡=7é¢ϸ.”e.=ûæÕ«û»ü5~uº‰[áuÁ¸\Ý
+O‡×_Úðª€3)-Ò7ÚCxæ!Œ°éÙ¡ïªöix×B1|^
¿ç¬ðÌéô¬îâïµW÷µ.w»j3üÞŽ|÷}xdഒI\ªí«ÝÍðª.¬Uxܲ~Ï]á•ÇõË]7ì–ÃrÒ¢ÉÞÆ*¬ö7pˆ„å\ä3õmyv+aWÖáúm5|ÔÖÑÃÃ1Õz¦èøe_7Ãd!
…Æ?t»¾Úg;æpk?FÛHÍéÑ¡½
o¥äç~u;vQí†U!3´µøΕǃœ†#pQXð"fÝwɵ†k<C‰o‚oéYxä&address@hidden|Œ.W¬PŒá^ýìe,ã3ÁaYö×ó6ð\îå&îGºÂI‚Õ±=<¶e´ÿW¯­_âag<Æ*Xÿ
 ”L}·© ƒ©‚yçӇn⪀
ï28ÚÁ6BL[?FrxSRpN»l79›*<w
+-0|address@hidden(âG>‘ª°FÌ|¢
+Í-í¨Aóç]ö      ØÀ#Æ Ì        ì<ƒýï
+a6Šõ&½§¤Å÷Þoë5ÂÁPønãÂ±!£%¸÷2›ì|ƒë²IŸcFáÃö4<¼ŽƒÔêll€/üqSÿ|Ô$ºœŽŠ>address@hidden/Ä#³øÛ+abÑϑº"9KKüŏhOh1ü}¡8ùeÌ}<š„dTv¸N€94Ҁs!<Z½;ì«Ä
N‡´§M
ߍL$ OI°%UYk
+”-~M;ç¨ÊþÔV‘DĹ²;EðB3Š’mŒu&3øҕÌHvBûq‹§¿cÜQŒcƒµ½3øð©ÞTLËÇ-}½^W]—°¢rìÈ÷Ž¨„¯sê»ÝWûC4äægy
Ë âõ`dÇ ý
ÐùP­O}ã4$%§§!Ò*“†ÎY?Õ»ê1"3p "?S¸Jå
ä…ÏCzŽ°„äYOv䅈ž¿{ˆ^³ZQÅ®"W Í=¹g[nˆ
+k—‘a!¹:¥¦È’Å9C«L9B6sà
&rolvbƒ‘%L¦õ¨[bÒƗ„%v½OfžÄRŸbPyåÎÏ;Q21Yâ£/$Mú·.ˆ;…
TΑÀpÚr=Á·ðàWrÓh9â•>address@hidden        ’‰g² 
;³CkX"ÛAÕëºO_€ØÆOÇ°Á•áƒ†r~¯ÈvÄë.è`Êq§–,„ÖxÞ>2øàÙ°Ù        #2™“Áµ “|FÇ 
YGþ~.*Fj,hQ2ÃC4.PäݑŒÊêmøÝ©EìÒ)½èGáÉAß>address@hidden"urXL<5‘ôìœàeVþëCú¤2äíM•¬Éd6ñÃ2¨/address@hidden&
 [r`,address@hidden|Oa\í’è„xu!Q7›ê˜¼4E›„
+à<â¯èÑPK)ÚkRüóÊWAA
Ió6¸_
/ÞoQiȃ˜]>address@hidden ¬Gz8 
ïPÕ¾ï‘Ç€ZqSÝÔ}ó¤m›Sä‘>J82ó“3sª›PíÆ3ÿvÉ8!zrIuÝ
+ø·ÊærÒî&…Ÿ–½x÷çô®ÎÕMJ¢AÚP^{óE\‚g´°Ž!#ýŒüMÙUK;ç1EÐùC2;×T‰ŠEzÆß|Y\2
‡à€Š!äÿgf/ ¿mŒVÈ< §ðc±P&_2LWõ)•¡ª¨Ç˜Ú3
qE‚4q“öäí¼u1ys_~¨£êƒh±Tܞöøª&ÿ=Eª€:address@hidden"·TnÒùGeæÛLðj%ôôŒÈfW•
++.Í</ËvH c-œ¼âñåû¶<)?[{m·9„ê3‹¹T³†kb¬¥cŒJ"7õKÐÛY÷$m`$xÐNµÁ¶~ÜRÕE° 
-õ«ô̅ð±àYåßm`ãŸ>4^Ýt}{Zc¹£œî“󤔺
PMå6S‰xÎ.`d'(¦~_ÕÇ¥M7*Å0(D%_ÑÑç(D•YQ 
&ÊïML(–b9•Ñ¦ÐôÁgö†vHu*ÂUJ¤Z,t©0ii•Ë§ÇPßvIT        n±áX¶Øö4šÄÛ    
²ïË&jq`b©Hî¼®w§MÊY
+7WyòÕsanJ¾‹d©y&address@hidden:€tÒ蟒üïâ+Š­L t xŒ  Ã)RY
8¶˜&=HÍñ‹—LÃta~X}XWGŒ_ÁdÉ«[¨ôv©³öšBÈ6ÓîÜfjf3P¬¸¦Þeurf‘Bñs—lá¡Beö×°F·Æ:Á±n«Í)›AZ¯&f_UTŽ]1Ãô؋Ñõ³Ô+èlÔd^
ßØ=ÄîÉÜTeš!ýpHq9š‹,îïeK¹ÙˆÜfÛ¢æ”0ýÿ<`–ç ZÌܼ£HÜ,i 
address@hidden(ù•rUªÌ9“&—«'(address@hidden     Š^s
+ô—U_°£<-­qôá5 à‰Ip;»û>ýÚ>+¿eèⳗ©‘+ÁLŽ«<·#ìBi(iù‡C»/IëRŽoQf¼N=        
address@hidden ׺C
ê³Gžå MɳDzeZTâÚÖÎÍl’ùl!MV!k`¡ؤ™£uf6UW·©ù
×:¯œKf…7™¥/»w]¢›Ñd&address@hidden&]Lœ
+Þë#Ó¬£ÍC3›ë¡Éï\J^m}ÄRVʬÙ>address@hidden'-ª¡m7ÿ©Ë‚úXvxp!˜»©p#â™q$‰zsÈK琙öYÔhÔ¸¿¼x#arwàú•
+r…á&³Ç Âٙ…&©¦JYø_Ï'lc\ì…
µ[Y(%¦„XÎO7NVUÀßÕÿñ¬„M¥á¯ºÚÀ«v<Ï]PÔÉýP®ûDŊÓã¨5CŸÄ©‘²uΗº­ØE`Æë™C5F£³¸já!UPG'
$ÔþÔÅB«\±ùÎBâÓæWavz+Øy¾}ÒTa ™¦­ÀFºéÌfÚ`ýœ™
üR«…i&Hš…¼Wù:I‹¯Šœ›á0ƒ‡ü;t»!c¥µ0 Lʈ½ɾk0OÊº÷M‘èJZÜŸ 
¢X§AsÅCâÞB+›çñBj¬„!_nPão¨Òñ»ºCÍ&@M‘ÛBq›š±f–B-aÆÈ4ƒkŽÿÐÉPC©–5BåÖÎ
address@hidden
+TfäHäÎϳþd±ÏD<3„ø— 
rNVP˸yNJ"›ÑRü|)7_Š»ó¥¢4ıž8"7èF³ÌtCÅH}í´‰xøhl”ÆvÀúönŸZCÃ4¦   
¹È*.ŠNÚpdJóa®\é      —÷œÊͨt¶’³Ç$” Éûy(…æ•Z#Fß´5IŠ*tû)|µ©ªM…“¸ 
îÍÈòK$ZæK !Åëy+à7Mù‚ÊÊd¹É–Mí¦üêµq«o8öf|_«Ûpo0ö#àhƒåL˜˜Û)\!Š½£k–‘
»qΙ
”
+ê.ó9Œ¯TüAºÏÕjʝ>t¯¯¶?ÂiÐ?&¤v“´?í
+§¯—o›ÐÂõQFô0b3aƺÙ‚ê³jz„ 
2gwU‡ûkj>™žtrGÍï¨ySDͲ²KSx<áF_žîSÕaÕBÕ1B¡S<¿„ofkJ 
-bÝÌ;address@hidden&×Æ©J&÷¢Â•TZÁ7rGëM”ïqbqv]M„|£Îøâ‡.z49¥{¡ÐY‘ÃGm·éTáÎ/ 
*ÉÎt¬ægÿdû6éh5î`¼{l§fɬ•¾x±µNƒSFgxÒc[uén/hX1´Ú©àªšÄq 
‡ü¬-`]ž¦Ë˜*ë¦ë'i¹¶ÚžKž&)address@hidden<address@hidden)]¦íRʄ
+žRᨎbyÊ ‹ø÷ìΨ4ä÷<—é
+|[çþhŸ8VBŽ¢FÅúÐ"c„›ì #9CŽp«:ÜËÆ€4•îÛK.·ÓÒu#1
kæv¡D“²orW‚¶å1Ï'¤­Aª.27\ðÎbØ¤?ELK:address@hidden        
ÐÔÏ(æÁ̦ÂŒ~¡’]*/Û½„FÐCfÜ­J7/&òBO$]µ¶à§¬}w·aÀ³<õíýêŸ/¿ÿɌÑendstream
+endobj
+120 0 obj
+3865
+endobj
+123 0 obj
+<</Length 124 0 R/Filter /FlateDecode>>
+stream
+xœZMsÜƽ³üráQªâÂóýá[œÈeUâŠ#)address@hidden,ü¥ÿÛÃÕoW¿]óéþÛ®¿ÿpõí;e¯}å0êúÃÝU|Ã
 Syqm¥©˜¹þp¸z%*W½þð땐WÜÀ¨»«W~|3=T•ã^ãÃðÈTRK&Ó£?¿ÿ[zÙ;!ÒÃ÷oޅ
‡ÜUÚùïøðÛwܕŠWFû4ȇ!)áM%®7ÂÂÀøéûfú«4Ó6î»ðÌWBÏºqhú/ÓXS      
ÅðyÓOKâ•t÷s˜Þç²b–ñôlzUWL2ÚN3¤W 
WǸnÁh·xºŸž±Êz‡†|Úm½ŸÖc+¥<Nzh]ÿžÃf•³.=ÇÕÃÌÒªåâ5£4ÿm¶ç±þ¸Ÿ¢|ńÃͶ‡úS´—«¬UøÍ1îWƒÑÐqHFðœá÷Þüý‡èð«l¸˜žï»z7M+À?§­w»¾¦iVÚÐÞo_ÕÇ]‚‘TÍÔÛ±­÷íïÑ°JW¸0¬ƒE’a¿ÿ>}VIÁÉRÛ±íŽÓgU›7ómÊJ2ÚæïMßݾ¾™fS1šzÛ7õf±–v±%5§›‡i^)£Íåî7\Ä¥#{
§zÛ$,address@hidden
+V鴘-zú"؏Kafh}0ï‘èC6°+°Ê9õ)®DÃG†C½ß'óK8^]ÞÝ    
‚#nȖ­·Ä&address@hidden(£[Q-)Fùw|š6§øܱÖἚ£œñûÜ~Ÿ÷uB'N\‰„<•„åUÆ+\m¹:ø®>履”8Òªoq"ΓO(address@hidden
+‘<!²CãÛ!~ÎÒ³}ítæsrÝÄ<j¹•9ÚD!`ÒÌñþ9M!å]ÊIEFxyÃZÎ7œR·f
+íØ7Óθ‚9(ÊCîö‰#µ Ÿ—        
ol÷)ËX®üsK{¸ïöÂÜFFS`üGܾ®¢Ö°þ$dw´ÆFhab¢u a
÷¸®›}5—†¢å¾;ïw‰9£4t×í÷]
+YíHo<D2á\.ÙH¯bY`lgåzàŒÛW·¯×6‘ž¢ãÔw‰|address@hidden&Ô9禁¦ÆQ
¤~>%²wš/#g¶®”üÀ…VQòë!ƒS¥ô1‹sn÷ÝÐD
„KJ-qðF8P¤’_o|¥¬÷Ñ9ÓÚ8ÇÑîºahO'ÿJx×ò#nQf8?DþvVf!ø=.iÒ¦¿I&ã®
§¾AÙÁ­Ÿá҄¤¯ìÛqÜ£>œƒ:ré”Û„~zM%ä”'Èmëc¢sؒË^ÏďFüÒîP69ÉÜÜé<¤$tzÔ¨˜†´èãj4Á@:ÂW‹Ñ­µÍN<%lñfò—cÀKÓ¯MRèÍeþ&T
+7
}ßÝ$8¹,¾WÅߪ²§XSÕ”èW©j¸ÓŸCbEaHD¥<¤ÂZñíg“èݜˆžZT²o JúÊq½§Ou1
¬çœ€}Dµ!ÅJ¢JÔ.”襮ûxÉj)Ág*âK\MaÇ3vÓW“–ɞrgwGøóË
ÎtڅNÒê%´íÚ㶉¨³*EQ÷Ў÷¶Â.õÙlSëÐÚ$ý±,fÊ17á“R7`þÜ@> Úõx“ˆÏ+e–ሠ
æŒÜÄÁÓ°}û…V®²HkRαŒå¡)!z
˄ t
+Ç~Œ,dµ'Ã5cR™Ây2f”*¾(ù›YÉS­address@hidden&address@hiddenaddress@hidden
Ëò® 
˜$«³»¾;¤Mêyâ[qHlõ€ö”„Ã_bB€B—¦,}§²Š+*/ÈÈKÙiBò”y±1ŒÀõ•à3A›v¤£²êÃ]|ûNÎWQž¦AŠ#»†­xÖa„™õ:ˆ:`cÃH¶–„€å®ËA¹ôíb—›€
        Úd;F+y­)‘S;…ç>ÓH^¤F:©aí¶Ù)97
address@hidden
%&Ž8v# Wù©'Õ€ ¼ô„]Ô 
,Ôµ<cí╘Dv’}¥Úä>RÊ$P[åN‚ˆÍ©„J™ÔݚŒ<¥Ë0nŸ#dµÂ.mj,¸¤#M[ã·aâP!]õ‰¶¤¡¶Á?Þ'SsNï
…>address@hidden"¸÷ò¢¯       zÎäþþŒ¿Haž&¶õ€"Îç'²2ë×IH²Øg(…ÿm”þP­é…òÇ
+ÂxJšw]¿
5_     
Š9j[•Âs¦-îq¸þ·^’Î8».ÁISØ?×Õ,×àœ)ÉCá4+9â‡<#5u;ԜÀ¿”Pë-J¢Œ„ã2?S»ZkJù»óÛ)–ó,vbáOµ£§÷
    Ã3fAe>[Ó͑ÞÅaç¡Án°u$úã˳–ÙHäãÜWIdº'8ùD ·3…š8Ë¥m}ª?¶ûÈא(
®\äw`°_©ë°oj$êI"OA 
eÑu[³6o3­¸fÙEcaÆKÃBMÅÑJºAN¡yŠVYÝö<!t˜'øvA.`Ö¬¬døl’øÄÏdU=ø.7ÉT/{§"KºЮ=½ÞE£
+›;õÛíùÔ&EÎW<U<^#?…cžË       „MͤÁ¢¤ërëGò $©€;œöÍ!F†‚_rº£S%×zÙ*Ÿ¬JUš$“L 
Q2Ô      ³ÈÜÜ«à¦¿K\ŒÒ°eûaŽË ¨Ò‚•T¾Ù'ˆ0ÈV¿¼É'4
ŠO½¨iÚ]S§.$›®H꣄.ª(`:`rª“
+ªviò¯Ç”Ý`þYTÎÛL)*¹W”®0*ò=3‹`ƒ&틍>Èþlv8ðL£Ïd>x±Ñgݢѷ&4)UȪ€ˆ¤a¦†*^Nۏ-ÀÃÖ,¶aîL
õðbxQ|aR㬄û€-1+É;”6 W0¼BTÇP 
Xrûö.:AkE\Ǭ!JÉõĔ¨‹æüÀ´Y˜ýB»Û<ó°ó›d9ëø¥•Ln”Î3°°¢ŸIñpá3ŃÀº©Cx\ÓA=kæÚ“{õv›úC`hU4‡©ß[œ]½`V—ù~WÈ
…*KkW2WŠÑ°NzYV+©Hǯ>ÇU¢Pϳùb¬…        ¬ÒOosu;Es˜ß0Ò»t
+º¨Â'Ý?ý¶o?#YŠÆ¡Ø16üb¾I=êØàħ?£ªàž:¹û
+ßÉI'3•ˆÕæuN÷ôõ!Õ[B¸Üy9a”ò\p±”ÿY+ÈÐ_υ±°vÄ“x
Š––ù9®À-‹¦â€¹Ûg>è>ƅJÍHèüÚlGJDœQl³E Kf/ʼn˜Z7ȚàïsÝ°I?mBÁ=ýŒ
è»þòäƒ-Ð˖95 AýZOx.× 
3ÔVP>Çè%¯¨Ý9`†Ws؇K¯BƏÎ]Љ¹”äŸaÊßÓBuÐ.*ã³h4†6>Ÿhå"e…
Ï¡Zôù4$ÞåHñ#)address@hidden&¡Éi‹K=(B`]ÎSMÜc‰7©‚•%ù¼¤9wXKÜѝÐaÌæcû:ÜÁ&-|4Ü#Êpxæpº|qq(ÇTaTûÚ:u(ò­Ñ—ùVó•|[´§»p•l®´!~+Ò°•4z
&«Ó¾ÀìT—îÛtxN}v6UÃ5¹Ôð³/address@hidden âú+Ñz¹îÃáL¸        ä³¼PÆU¾PÖ
x*l®³iәŸåÊ®T}"wäò5Û–ÙaË…ÍpۜP%°œŽìa—MÖ¼ÿ×ý7–/±!”ÁÎî+JT%¥Ô%´ó}        
C‹_½Î»b‘‡CòS³k%mŸèp»Â£³ëqã}ߝ?M„ºà€àI?]¯CüXÂõç4`­ç{,ËðŒ^xßqÚâç~G„JW''GvÌxqô÷zL‘l
 
ñ|®x“¼Z¹/4F óãëíÏ£%Z<V¡Mˆ[ÁóáéÖ
eô?`³âPÍ:T»;÷HQóáíñ.ïçAbч>웱o£’™ÚuTPÒ
 mœ    
;ÓM0Õçï#á}ÁËÂ6cRŒ×äŒ,fçonÖJxâ菹ìC_K™&address@hidden|ŒK—¡EïŸnȐ¢Å/›’0¡GòL¥,g3ËFAßßgb
«ˆ5è"Žäê²¹¡3=
Ͷ‹–ŸÎÈ#)~    
‹^nuýûTרG•¼™˜KXÊUÑá†ÅÌÑU%33Mmзé¨:TíDڐ"N)æxžá8´¹äSáB³(—0Ýh<ƒw5¡¬\èû·4k¦¦ZÁԔ|û¤Â-f²Gª]¸fÔ}ÆnW±:__r¢è^bì†j‰?;C'æW‚®¸wúÔ%з’Q
…sAŽA¼[ê¤YŒBϊMîÿ¯®a™ŒE/¸oöuNl‚ׁã»s¿MM% 
AKq;¸ô»$Œ¸&>«‡Œ0pàv\}ã/?ÿ+‰…
âî=èåOMº×2F‡è+ÌoÿóӛÄ4ÆSuüSדö·Ÿæƒ€ò*×Êåð§µÄX.nêv—XF3º·¦Õ¾ùpýÏ«ð÷?^Ц2endstream
+endobj
+124 0 obj
+3875
+endobj
+127 0 obj
+<</Length 128 0 R/Filter /FlateDecode>>
+stream
+xœ¥Y[ÛÖ~_øGè­)address@hidden|óÍ7£¯+RÐqã¿ÛÃÃׇ¯+êÏÒ?ÛÃê‡ÍÃß~¥fe«˜«ÍÓCx®¨"
…
2+ÍUAÔjsxøŽ’¿nþÏ=~ž1YXÁàÍîỿÿôý¿6uJ^HKUüV¸3*¡‰‰g?üòËæÓÏ?†[á[T\(æn]3+BäjÍ4|+^aÝ£`&DÇ;6ûʝ.ÞU/õ֟[P™l(·Ûªïý±Ûç}Õ½¸Sf
+fMzºê¼Å¶\Ž.öòÂj›n
öO£¸fÜÀ—Á|UP5¶”ÑB(©g–r
+Z>3•“B*c2•ê‚k1µ”ÁÅFN-…*Æ&¦Ú‚KJSÂjÿ
+—"y9K)x@
ÇúÛyxãOg<ÔBÚ»¬”­ì‡²*œ§‡¿xLcD^ƒíÒš>óÍ©ÂJNÒS-\×1nŒŠ·Oƒ;[s`åjµÿ½÷‡SSª£ÇXzaHq‘ñš“Âla&ehÑ3¥Ç¡6
…â”Æ“Æ?À“úmÝDD±Bkž^®!)address@hidden&#â©+Õ·5%‰Àý/€ZO×Çè¥Æ^ui!þ!†S
ÏkxÏhB5‚©b1X‘O»òدC¢Àà~œÆÿï©ìB¢˜€Ìf\6¯‘Y¬Éü1}Ú¥N|2áƊiê8pœÊÆ-À¿Í~¥w_F  
    'ŒaÜ˦‰ù4v¡HËEòÚÕ!`p­L²s³E  ,£˜N§‡
+‚³Ç2û`$}9’úàŒÊK¤Z¡æQW…
¦ò¸®>FÜ0„läøE9”Çò9T·``†HÁ|©=LàkJ%ÿ¶å©üR7õPWý£¬tԍÜ}ÜE:ÖÆ.ÀÈ0ÄÛiÕƒdþÚªƒ/

Eß·í1²¤鯬ÑG×VF¤ÜUÑlÈmºâÜ![T`¶žÚ.0§cïÊ¡Œƒ>€Èùÿ6"1»·/ÏUlLJbÜ¨¡ƒ%“«!B›‹Ü2/Î*+udÆXÕ4ì
      àR—ˆ    â%Ĝ˜8Å œNM½-‡:„RB{ã–ͲƉ½ 
F¥ôg¸1›0áFbÞäÆ"¤ÆÕ¨t£›£.áIŸ%Óʦ÷Æ1Có{êÚ¦P_¼Ô»*T.dþL
+=Såæ·ÈGÕs‡±҂†¸¦
+n\j¨
9«jÃf$¦]H9wU×¼ÖÇgŸ*èB‰?‘»‚@"DM »IiqO“*R¥S•àõ)u)iQ¢A›êí¹)»Ç(     -…
|ˆ–-ÙÍ4t‡jW—C7HY+ɜ\A(2— address@hidden/HKH4y³*©…
‰^´¡«š2i6(ÑɎeb{êÚv31C't”á¾N¾·roùÐT£f    N¢¾pC¬þñ鿟?Æ÷     
address@hidden&mŠu–;–Kh‰gC€,ã¨ÈËzùAÕ¾ê*oíl°¡ €t ‚#é€Æòƒ•€&đ–ÿð\£é½s
§X4e·ÕE,bwpâ‰Â¼
+N]N;
+Œ‡¡Æ;P³#àm˜1iÈò¸ÃȝãcÈǪڅpº‘ÜÒ;M[î"L9ÁžwͲÛ՝ƒð[xyJ„é¤ô´ÚQ…
mþXº°漎µIH)#vˆˆÍ°ï£8£VLlX´00j‚…ZÖMù¥  
P†âb”§Ð"÷júNî¥Ëdœ6¡æiãâÍjtÄÍÑ*gl„\\Þ'²Ê¿J¥ø:“KØâ>lxéí³%!0,Ûyð&(Y†´e°µ,ÑÙâ·Þ+’>"wwì5ªaZŽè:Q|q‰üp½@
pNî£ê\DHtIYS¥ut»ÎÆÆxÒ 
2»‡Ê¡´}îŠñUÁÑÛw„ŽZHû”ôÁ™ñZ8ÞêÞ4óÑh:¢9ncÒÇ%ƎÏjœ„®laÚ0‰Ð^„ÖBÁ¶é¾<k´ƒÿ¸Ïܪ)®
 ²ø̾9°õ‘eÃ"x‡Ð9Vde÷1TîJ©;+ ¯r~³¾Þ]ËË¢"æ6^6 j wª†Ht€
ÊéÔЯ
+÷#>™µxêèÓª¥¾Çcv¥‘M…1¶+¢g;I—KŒîèçaŸd];address@hidden 
ÕܵÀ–c‹L§ßåú/KÇ­ÏòºèæZ"ϙýþi¨âJâ­¡Aϋo™?š›ËÇ»–š³e§ó)V 
¤f¾<m“;ìÕ=GZ3Ëçݑôì²T‡w16¦¡ºò?'ÏûAhÑiý¤«rï>àLîö!Ï·:À´¤`yZܽ?FPk‹“dDŽ‹%.ž'abv[ê"@
+°›S_õ©¸iF_ì1Ôíîíìu;Ztž²ùàXø}œŽl(8sYŒwÊMÛY.à8Èp÷PI29­kÆ«ƒ)1ÆUÍ?÷ü%¬ï¡'Y®‚ž˜êq?‘=“`¦FÙæ±Då3è!ï6ØAÒyl"address@hidden"áb#Oú)XpŠ¤
address@hidden'†,[P#Òd5+ÀJ‰¢x[bweØã'2çÄÞ½åxÌwc‹/address@hidden;:À   
hT˜øÂïƒPŠn‡š'.1|address@hidden>T©èº\³Líâ¢O›lk›f3NÌ¢pҌá(7â( 
‹0?Ÿ±7ÈËò™ñ%8XÆâ/,‚çñhDՐu–ßI2ÐMˆY"`‰8ŸL
+$ä¹+ºkÏÏûXy¤Py
k͌ÿÑ{
ÒS[kFH5à™0È[=žáÑèE×ñQ%xC0
u¬A*ƒßŠÊ÷ƒ.¸€(Ž‰—)°Ð1<z!6›þOlUÔàèñ¹Ü¢Æ]ÄÞCöãfõï÷÷wVŒ»*endstream
+endobj
+128 0 obj
+2417
+endobj
+131 0 obj
+<</Length 132 0 R/Filter /FlateDecode>>
+stream
+xœZKoÜH¾ƒÝ¿àÛ&€­©÷co³Á`€ |ÌEé–Ýšén9’Úÿûe=È*uË,r 
.U±È?Rþ~Í~Í¿üÿæpõýêû5Ïð¿Íáú_wW?ÑþZ°Æa®ïî¯Ò™Æ‹k#|~8\}ø´kçnüx÷Ǖ뙃…
wÛ«2<úù‹Ð×B5ÖYö¹Å5·Z6ÖąŸa¥Ð
w°8½
;Þ>ŽCøÁéFƒù‡M7Máé-笱Ê_ßÊüÃp8„¬h˜õ&/?ûM;÷C<‚ÞXö}ýðù·O_?&+¹»ö‡Ëªh%÷²q6Xiái\~·ë¢™°Ó6ïñŸÓ¸OÁ+<–žŽÝ÷S?vÑNéøʿ´ÑMöœs¼PûØ~ë÷ýWÛF1‡>§Õ–3«§çiîMøA'•Ã>á6}:WëÆ{ƒnhÇh<·
XI¾™ºd¼ã-n4G§sÙ(aðš9\AÐ5¾þi˜dƒqÕRÚúËUÃ)¢åVˆã×·\Äçý¶;f+½çx̜<Ñæžù¥gìº4[4^‘ÙüKÀ„ðX©pÇ©Ÿò9Òbdº1º›†2þë‡ö{D«$xDËbU‚Õ׏71
+nÂðµö˜ü
+&+O7]ÉæøÖÜNàŽ¸Z4\Jü¡?<î»C²H!H”1[òjp$HHŠ~øà
×7ú£ÛÌS4#óã}ÿgö¶V^×a‚øhÛ=õpŸxy    >s
+ñóÓ>?†½"Xm!!6ó0öùWÍBôŠñã¡?¶ûô›ÒqÖ,½É]#‹7Kh[šB;ïúãÃÔP¼(ÙsörÈ=EÙ»p½ôäûì%^wÓ³sÁ
+_ )”QÃ]TI‰,ߝãa1!ù~s²I:ÿÇ®»h«ä
Sž۪­M§8È!-0Ú?R½–L’[ó«’(æä:8ÚHzxÁ,@’˜e2v!„!NïÉ0&W%ð÷-)…
¸ÎÓ&Ÿórg5¹—§`ã!ÂÒsœ+NÉ/}Kdµ®F´k„•”ÑkÖ­P܀ùÁ±zÊ< 
L­)ó¡ÂzYG:„¥bóî¸Àæ$`â) Šö!ÝS‰ÆX"â9ˈçæ²»N¾s*bl’qš{¢‚ÏGdT­ñÍ_Õ
ÖCdI7å䆶t…öˆtç¥õ´¸s*…‚¯(•ZtO)Ù¹ŒzMwËçðÊ_æ(Sð’²Ëór…µB±rö¼»v› 
Xhb‡½"µóþ÷Žl|×óÛ¢pËK„À€2ク8ʙÿ3Ô7ÈžDՏ~Þe% 
™5˳bE‰’í:ýSfdvÀ}gl©PÄ]‚«w_"€³dN¢Z      
CµmÆP“4£:áse݊nâzE7qé+ʛ¡–¥¬‡Ê_9òÅJχâÁ-©Ä_Š 4™RÈ 
ڝÔjÎÅ»ýå,ãxر붩Ü[ؗéWÎz.ñVc¦ZPaÞ~."address@hidden/Îõ'*ÜRävíe5|Ià‚%•j±l¼»Ú¯¤ct7¡è5›u»@;address@hidden(q¿d\è-ô9ð
 ˜š    
&Ú¢³ÚéÏ'address@hidden,0P:‰ ç¬ ¾I?õ›ŒVc4=¹ÅȲkª,PÈ´¢OÓ©Ý¨ôRÝ
¬guݝº¯1ßmaéÏ¥r”b´¶Ch*oòûJhñEh¾¿›/9¼9cµ[áAӁö#_¹g»ÿq        
6!ÖBiÄk?Ox¥×逄IVFPm]8Gˆs~¶ðۏݰïˆ5®w“‘Ç<G3ÃœYâE*õ 
address@hidden@b=¥¹…`"=8Ð"z¡§‘q×üBR+R
GRmœºD8lJs      àdÁ(X1¡Œº ÀIÆ¡Ó)} ¶B¡©'°Ž:8tªç8hhüc
+78¶ÚïØ"ªò8æàÎ/¥öÙë›6wIñšk7‚˜o«–Ý
Ýç;Uô‡¼"\`,'Ð÷bP0cÂn?NzR(›á´OýzhX‰q¡2x'ñÇišóÓºãÛÌHÏÕNØ¢'ÒñÊ
+jÍPþÅüÅwÿz&áì.bޝãBÕ’ÄQ¸¥Ue vÜæq§:]y×?åë3Ò8y 
ZnU:¤iΚrÒh*Xs‚e¤ÇŸ³~½’Ò¦øXïÝYô9{A^Æ-ù·_¸…ron¨NRòÝUš™v2Ù7’ªûH£B 
Xi¨®ú‡X+ ¯¬–ÏÉËôÄ}Ûïs<  ©ß
£*÷üƒA!¢*Œb1>&€{ãª,À“þî¯6‹rÙ2^-ދI
+°)ê9夘       ­V•bc7
§1      .©¦Ô¡L»aœAqßdõc¤¾í¬TûÇvœûÍißÆ(ÖpSDÊ=
+ي£7–]jÄ5„Óñàã)½XÈQû=È£Ò¢|?
s›ËŒã´r(=1;ï¾&Qè9ÊÀÓ!Û£9õk¡¨ÌVkaàkL—ë<t#B_ß²½bˆòHÉ Kâó´£\œkáùtœ…
6(9p£ŠkWfD^¿{F$«¹Â;ä”Á¯Ì®†t±jÂÊ(5¥B4Lª}*ôQÔ×>‘$”«ÏÚ!]
WL˜Ö­Ažpô>0Í3ªbIAÆ&R’.‡ï‹)隐jóØoòÔ$,h¤JD/t!—º°’ó—ÍÊ뜗±âýé¸ 
ì˜&address@hidden"„Zß0ã+¿=ç€pK» /ÈDo.\\ÉÄi†mÛôyŽÊ,iduŽC
+
+v^ Måf8<’¢!®ŽBajYÊL6R´-ã*â²ÀÃjÞ,¡’‰•+]z
+\j•½MUÝ8~Ö
+ý—+i?kuÁBs\^Mr¸¢IN×nr}0¥QÚaôÔÆn/address@hidden
*!¯J¦²¦/¦uZ¹ô)!,ž,
+…ãˆÖKºlâi­uW5E¼Ì¦àýÊê•Ï&‹’oéеé¾Íâ¼æØù÷ 
x½L?§ns»õV‚ƒŒPF®·‘9(±FTwFð2è|ÊÐÝ^ºáLtaøE¥éG’
+ÎJ¶`€31‘Ø$°*®*'Þô‹)ëRM§
V;¶D\Ì[ªv¹D™ªD½­AEJ’åƒ($¾/â/)~¶bÄÃ0â7Üz¤:¶Ûþ6KUÙ°Ð%S
àHž
_I-•Öm7õøÝ„Ø+Çö"~” 
%±VùэŠ-¡‰ÑÂ{=ì‡oí>µÀÀْòq¡7ÉEÅ7Մêm‡ÊJV¿&¦B3St$&aü2÷z?Š=~m”Êœ 
þì|zÉÕÎ'9±T+„M(Ȕ)û}>Õj’       
y>´|PÇ*`t"address@hidden,­¤¨;Á÷ÅA$’¢`V.;address@hidden:íimøìGa 
ñ¤*½ÐLJM¤!+cú8õÓŗ×3a÷Ɲ+šŠ¾.IV4Õ#à,Uµ8e#>Ø!¡8ER'{MS`þ‹Bd
+‹nû©Ý>eÞµ®.4>Ó?³h†\LTP¬aþ »§_«áÏJº¦A-•¬v»Å&˜t1ZX2é~À±˜ˆ§Q
+÷½á²(<%Ìr_ÏnÜaûæJñZ­HÞ

»¬Âûœc½1U³þø°ÇÒ'J§õå·O7ÙåN{Üö­Ö՗q+æB˜·2yŽðøgTgB,#ÎJ׊´$„¯Rá¥t…
©¤sLQ–0]1U¦œêL¡6᥯¸—ܧ×or÷M†uÕ_ä‰ø‚r…
vUöOÔ³$œéú/2ðïd•šÑç—Õyâý0²c„gÖ­ÐAuéàpiÂßeúÁýƒB*ß(«?ï÷pC'(Ðíe«®jþ’Óþ˜ÐN¾Ö¯ïÚýýjŸ
Ès>¶É QãZÎúß]ÿ~þýÎu“endstream
+endobj
+132 0 obj
+3180
+endobj
+138 0 obj
+<</Length 139 0 R/Filter /FlateDecode>>
+stream
+xœ­[K“Ü6’¾k³¡okGtsñ~ìM–µëŽ˜±¼vÏMªŠÝÅQ=Ú$KýûMÈXdU—<
+&A _~ùõÇ
«ø
ÿÒÿ«Ý«?^ýqÃÇ1üoµ»ùñáÕýÆݍ¯¼FÝ<<¾Š/ðnXe܍•¦bææa÷ê{.~xø'<¯lù¼q•UBÀ;ëWß¿ùùõ¯ojY)ËMúƒ¬Â×0Æ\»ÿ½ûu|ZùÊH™þðîÍÛߣRWÞ|þÍ»¿ÿý¿Ü¿yþd`*Ãñ‡ûw¿„Qá+i
…N£ï¿¿ÿõÍûâ²¹Ô7¦cœ‡uß        Ç*
sß      5ãóÿŸ´¾|ÐWB
+šò~ÏÀW´0<}·[9+™MC‡ãv=n؃õZçøÓÊs§pá͸—ÊIÅÐTëö¯«ãvüŽäwŸ㔰låðÛ«Ãó8(*©êK²•±^â§ë8Ľ
+_­Ÿëí¶Å/åÔt­½¼ôñz6M—ÞŽ<5ÔýÇÑáBÀþ¹OÃo[|\˜Šƒ£ðñÍh®*˜¢X^¼lºó;Þ»ñ}Ó}J¯‘ÙEçx啹Â9®r‚œ³Mä
 ™Å5|ŠãÞK5u˜åŠ©SÓ(A¦yîâ ¯¼3ø‰OíºI’Ò ÝcX…
a64Ýc½júÑ´¬‚}ãã&¹Ãjœbµm›qn*chïCíy(.-vkµšŒÔ·éAÏ%~'};¼lóƒÑnšçø)Œ®/½È^øNHAm§^ÿ:address@hidden)/)£s×ô}ý4þAŠÊ
+žÝ³«G‹¬ÏÕÌmܑۚO1ÏÀÂE
¡ÀvW„~ÊI̲z¿¦Pð3{ÏN=gÁ(ø¥ú8`í]ô0¬68Á1&S^n·_Ò”8Yue5¬ºƒ
Ù¯DÙàhÈþ«Yª+P–I[Ç!]bßѠ
œ&|žOxˆ{2áq9C\¡ÕÚaìc<qÎ$nî±n·Ç®©R½Zã¬÷9•ÐILæ±M½NՐŽŸßЇãÓÂsûâeÜ⪫ûM³¾Mñl˜å³ègÂáB?o۔§r
+Ƨèü¥šÝ¸?X¸¶ú*.ɵ/address@hidden@address@hidden|_‚݌¬;address@hidden
„Üø…¶'SP~ìßwÍ¿ÚÛøq       ÔL:~Šoƒ›ºC¢g].¼Xn Êc"uÍóñMY’…¢Úükhbž¶+ÈÆ
÷wC»‹ûÈœX-Èð~|âuÁӀ•+ƒŸ©Ÿ§Ô«´&kˆ.ntòæÑöP-¨Ô
õǃFPh4½§ÆT0-Ô7ï~ûq$÷RUÂSþ´1ÙX+ƒ–¿÷[_%.)Œ,FSžJ¦2KÞÏYòP'·ÐÁhüØö°JÁ 
):ÍÃ.h<1¡š¸Ÿoï¸KVМJØRHE´^`rÒ}Þ´«9›Û`qÈoC)>¤y5
ñ+8Ì%
!ƝŸÑ'c(ì€Ëîøå¥}ü‚ÅEÓhê=T‘ÛÇ>}˜° «¥×ŒxEžƒJ       û!>'u®Sÿ„ZÃ
+RÀ“8ü°‰q±c9ârÜCkÀL}¼€=‹ðÿØÔ}€£Tޝf§08‹8`öŒÉõõñ€Ž
ü‹öý¹± address@hidden  Xêþ°ïÿ{{9ƒÊ
‘_½o?¡'¤Å-åõS*?š*&Cžn#ÀzG¶Ë)ZGOá÷-RI+J¥UAêeþu}øÓ8~¢2.Šµ¿%Œ 
€8T³?Ÿ6ÉíЁ^¿QGM´[C§nÇø“†AoòâŽ%[Ø1`eŽ‘õ1ÕؤÎMEŸf}Ûöcôª÷–Š{³m7‡—FPðw6°`E
þB=¬»íÐÕ±Ý     B!†ÜïØŠs'ùŸ
ž
uK锫׆ `)%ßÇ)€Üèlê-nÚî      +‚6~Š‹i
 ó¡\ž©Ä¤r("!Ú¢yHXÊlfù‚|NÖ²–(DÝeâÎqk©÷xÿæÆ%L 
_ÅÔþ›K&¹~10TA*Šä`•ãßX.¨h`åŒO›ê`^Ko÷›C7Pj“ÈПŸcӝ¡fÔKÝF2     
4ÉÏ»oÉ°v«(&ûQð}¨“&7p¬,
9ð(wžš}ÓÕC¢¼5Z_éWúbTYËI÷öÜ7Ç(žª   õ&@¦øŒºbs5´
Ým.I_ùpĒé¤8íp`§/ÌÚmÄ°®u”VSÁº³™fiΙ.qdº‡”³>XR?ZJ÷í¨_ª±…
Z™V‰8ÖHvÊübã²:ì"úYó¤Ç.€Éªk‡vUo“û   áǞë˜#e»Q‹5%ÊÔ£B²oØ)2šÀ¨#ŠMç¹fR…
e©¯„(ômœßúHùMÐ'1Ó§Y­±J~G\õ-:QtœP3÷ýcÓ¥n݃û¨õBH2CÚ%‘Q†4Â,,䯠
}P<%©³J5K{º›U
L>%Ôjë§P‚‰
ë§Ä¾|ZÂݟäCá\äaw/7„։C÷w›ð_¨»„O—·!Ù7ØÆBßÔ·Oûö»Dñd`ö4ç¬åš¼}óö)¡°á\žÿX»{®WÃõcç

•bâ¤PÜÿú†ðR]K›nTÅ÷+҇&'Žw&address@hidden"WGh4îÏÇ(´ÀF4£„Uo›]ìL'‘Ó³©à=Àû\=¦Ç``næ&çh!›HÉr˜”•c.ÇMt2'š8
  åBU‚g½j\‚;’LÕÄV4ˆÚâà&~ÌMåŒNՀ][â1¯ÓF¡-ËzÇn—'™Sk€K^¹è·uóXc½TAÔã/[â(NH   
  (F²aZ¦ZÐÁ=Uø&šGzI
E¼5a˜¨„¦DHo‹¼ï¹R{J§výÔÕ»(
+çÉtù3ª$À
pŽÏ1_ ÃeS¨Ñ()Où
M5Â'ð†–¥]µ‡cŸ¬ü“ÅSÄò±GDòt60tG&Ô\§š6’à=§vv!ßH^ã!–Ì–r_*¬áøÞë`
ri€ë¶ŽÝ‡´address@hidden"a…Áqœ#XÏ"Sd#SÝ 
5fǛ"¾£÷îdP±¹%ûaŒ{ŸcüżR’!á(8ÑNT°lð$­¢ý®A¤T"
+yë²¼ŒŸÈBt;JNx uyJžÊ­ÑbR¨–â¿ÜÎâ—Iϳ•¤²Ð æd3Z
›®©1õœ>=94ïÊX÷Pös¬ŸA»è9 
àž,ð漝»Àqî÷¤~Ž­o2¦`:¡Vº©õ°‡k)sÌÿÔ>Y€Ëœ“Xr5Àc)",Ǒø|ÉÉAúÐT¡„e(åνÚòQ=e8VCº»äjò_ò5"aÜÓ³ˆÜw2ÜњR­kVMâ

ÐÙ*-J3Žª2!Db†}Êz›A¥NÀWvŠ'ãùÔ¬ú¶ML}0’ÄTÜ|¸FB›ÿ®ë‡4Ê­¯îžŽ©vháN20]Oyr8Œ÷Éì²bSóûÞÓ¦¢@"ð¢d¼¡h3®fA`Ԕ]È*þŽN_o³Š.0*ÃäbF^G÷œú:B!
+{FWZDN®§fHïsG™y9—BÕtæþ§>Ù2þôFK8›˜×Ÿc¥¯c!˃/JŒyÉÆ¡›cÔ¶&ÝFsOG‰lËù%†°ÝÞ}H™Ë

i¼M$ù¡#͕ùSK*±ìj0Z—ô33”!rµ1™[eói53à­Ì^ºÿ)¥‚Ï-ËMÈö!dº‚á”TS£MZ“7üùœ½Þ´ú’8,€)Ê­MÝ'Ãñ,ϤeÙ¢:½
+¡ΕõºötÞ'Ðeœ®g,¢e«~ÝŠÈS•—ëôHá/[½J!äó‚_à†ç^ïÓë:_Ké%VÈIº 
]ìÏ^*\Â:]l<ãÊ·?k䳳ܺ       sááA}B›ígœ
+JE×R‡¦`³Ëb"œê‘-"ˆph`p?›f•’ž…ý˜÷HµægÒh"ÓK¤S°9`~)W”ËÑ7«*à&     
*ݐҟ-ïð„À½MÅ䆭·¥HæÛ§N 
CYÜYhƒò™ÊaO7E¾6ø˜\"Œ?-·“5}•]¸ÎP½Hmºþ褢®ú,»Y§Ta–j+ ÖUÓ9    0Dˆy™2›ùà
á$/.ëG~.ZðŒå‡â"-Ëá֏ý“     úB8Á§uQU)Ä:ÈK›Ï-ëÕ
+XÎ8™¯¸È”«€3Ó*ˆÿÕhüD}û_wT:=r
+UœÄ|±øÀÌ3ýìš~€$Ò½5e*gõ)`LÄEÀàYÝÛ7ͺOöuæ&&9¿V
address@hidden(e\à¸ùu¾ address@hidden
ïÃN¯àµbÉéXåHwät ’|j¯çx)c˱EA­zKŽd¯ŠØžýOt0}¢+°¨\ÇÛx•M/••-·Ú]ÙYC¿ 
_ð¨/ø´¿ê¶?ù$zØÔØýxFFƒmH¯Oõ¢àå¬5»6´
+?}psQa²õý:±ÀOMXÂô +øÉyR*r¤•‡ 
Òß'r!!XVzþ¦n“¥!ŠTá1äc™¥µ™³¦ÓÔ=æÊK׿Th´æŒÂù8^ªïÒHWÉ|e(·áޑ>F7²¢µhº}³M„j%®K0D^Ãï0‘
 ½#~qw ®”éJ@>’Ÿ'r—E‹ï͍aÎÆ#³…0ŸHÁ×ÿÙ§Ý{Ë#›?qÿÓ-Õ]‹{½ÀöÃ1v&aõ¶?$Zõîô²Þ¤™
+—õÐTZåÃñ¥mºš–×LèV܎-D½EM~¸±äç>靀lÞÒB¿k¶ë¤a†9²Kš.RÏÙÍbߎ4ËǼÿ^»¶£‹ÂýVK.Z.äàygïÝ
ÓX•™¤³¥#èæwþ²ZLÏr5Ë¢E    AÖìÌÅI 
hy(¶ÓMŒÂ5YøyJØçÄɭ‰ÌÀ½ú¤DvJ¿Â•U3Gy½¼4•>*ä&žT™7c3— 
E%µî4¿&,Ì¥ôB/g³¶sEã¥3½"@ç^á–ñŽe¨tK"_'Ë7ðKœŽÚÖÉSé—DüâM½øcN^æ9e¯+þ×ç”äK9¥%åTØ5ñ†@,ËwŒæi•Ä&V¶õçcMòL(–óvÛ¬é—L\ðÈjrNÔýûîØìãUB»—æ¤ÆÊ
  ææ+ïã xmÑÌ.vu‹n×)E•›eñþó&¶e¡M¢Ž|<address@hidden:~Æ#m      
Î4¤e"Ø=½eñTg_ÖNK
úLƒz‹À©é¬—Nì|&P«Ã±ë£\ ¡Gvµ•=é=áxÚ­~H2W*ÏeÜüt£H¹¬ÞyUtÌqS€ÔOÅsÙñØ]-ä« 
ÇÞY¨)Ï7y%”µ-*EQ愯mB}âöR¯Èðgòa|×¢òT0¤%.ºN›öÙ»‘òLQŠÚZŸ;·Ñ_xˆ
_ÏR”è&“éã¾k¶m®½C³érì¬ë¡&:F穅Ê']Ö<çS·»gŒÜ<èz!tÓáŒÜ”øNMŸÈ?    
Ü;z“¯Âpߦ;2áBæ|þ-vtýD-¿–YˆonþïUø÷ÿ™sÏendstream
+endobj
+139 0 obj
+4595
+endobj
+142 0 obj
+<</Length 143 0 R/Filter /FlateDecode>>
+stream
+xœ­[Ks䶾oü#T¹Ä®’h¼ý¬¨*‡ÄVnºP3”DïÌP&gvWùõiènC=â¸|X…
!€~|ýõƒ¿_ˆJ^ˆø_þw³ÿðû‡ß/äô
ÿÙì/¾¿ùðí/Æ_ÔUí”37÷Ò$,rU­.¼v•p7û_ëJVßÜüöAÁÿé`ÕÍöÃ×?|÷Ï顨œ¬m~øÝ÷×ÿ¸¾¹þé×ø§o‘¡ÜA
…º
+>ä¥R§5¾¾ðU텔q͕¡òu}q¥à©›VÞ<¶ùup b­
•RÏslƏkoŒµÌ«ÆvøWIS9et~ÚÓ3Xéè*Ÿã#ÖÂçGÍ!>•ƒG·óOµ”øºc?=“•r7ÚÓ8]C©ÊHþùãÐ6Û鹯\mp÷i'SèÑiŸßj¥­ó³»´¬–¡¸Ë˜/(address@hidden;Ç|"¡,address@hidden/–u­
]õÐî²Ö$é}»ï‡çé1\A£}L&
¦mC&øè¤;<Ä?hUi/ô–À´Q(ÄëÇK|jEMòjóí‚x²Ok‡»~R«‚¥Ò๾jwÛüVRëÚý›øȃ™)å֌G°ñ\ÿx‰Gò$ðnLÆO4îsèY«Ú8|ëØgŀÎÓíŸò›uMÆÕÇä`2F’ڏ—iCåM
 ë8á†J«À’!ÊÊX¯mÒC©Á¼$®í»gÒ¢4Ù5„"!ÜuÙ5Øq@)Þ÷ÉÕUå…
g*TïW¡Öç*ØÁÓßZl³P,ju§]ŸLS[©ðœ+è“@
+Þjƒ'»/x©Ãâæ¡Ñ„¤ 
Àº'÷H›íYÈA¥©ýÂ6À—Ùƚw§÷ÙÚ¼P³Ûe}ö©ÿ´CûMEÒ£{ýŠhé­X»ðJ­ %œÞƞ% 
­[Úº|ùäý)iÌN
+ONÕ# ‚”÷]{‚x<¡öäÍí§t›Zjþy%Ò*‹»O ¸gªtñ*éÒÁ)AïW ¨NáÿFðŠY{½°±è7ï´fºbÍ…
Ü’íIˆ\ºÔQ´ZÂk:‚Û.t'פ£fL¯ô zÿò+ÚC;4Ç|R‚ÑJý   A2m®TmüÌh¢šÈhØ”#xè3¬Á…
=ž„¾¥xc)½?=<address@hidden
+      M/z›2d—°V£wýáá2û?Ë 
­„è†Ô:79ÌYÀ`‚à?à݃'ýh€"ð_uÖۡϛ{!Т>OZ\í+)address@hidden>address@hidden@"ýŒ¦¬ÅÌù
0u)ñˆÏI¾$L"ÂV?
IbÁkMÛf€ñRÑÊcÚÖxk™l%r
+¥"9Z8/%
+,ôšÎƒ
+„µŠÃåŠÒe­‰>‡n“%ˆ?¦ß
+-”Rç€÷´d{b÷+²96»LHƒá?¬,Îwì¯)!?s 
"RýxLx7ἘÉ+¸"°t©æ[AØÇ­Œ‰RÌ"ÊâêIlÑÇèà˜»%—É&Äv–tû,a„Œ!ѦÔ
H°g¿È§ÕPP»»Ož(mÍâ,ë{GŒ÷IaÌzIô}ŒÃøóM¿Ÿ"Žâlétè6³uâ§f8Ò©5°`"ÑÛ®1ËÁãAnÖåw¥¹#hE:Â[R´îR„¥¸?7Yä‰>jOøpj†dŠnãÉÛ6›"XÈ2¹iאŸIÖ­*ÆÕ¤˜Ì$"<53d°N£
 •1rtaæg
I•ƒÓ!ÿރÉãîݎ¼‹t„¼ ™Ý(address@hidden)§MÞÍ9*<blciÒ#
¨+cÿŠÍ* H%ÓlæŠCGl èýy×nڌ;†3äB_6Þæh*€ŸÛ3%OJxÊ!+B&I{ӎ …KÂ8².Η 
address@hidden
address@hidden
address@hidden  °·×<•PÖ/Œÿ̗Ì;}Y2ObE(GŠøÔmSg"lD‡öø×a“þfly1Š
Á¹åQc
Æ~:’ÿãêK*ðï3ì1ïNúöggA#rHJ°‹}•ud†‡û>?ŠÒ—Mb+N²Þž’aÙ 
(ì7wÝ®;véæKÑkÍwOÚՐÈšcçõý¹c¬ølmƒÈSFÊ¬¤wÿ/>1¼€7Ú4OéR“€á
address@hidden).³õ(IÌ~
þÆ7¢íZ±A^H.}eÀ™¡PW€jí2>address@hidden"=yp›s)ãô"•Ò±†GPzøô7æcjf´‘6$5¨˜áQÖµ†¥I71½ãT®Ùä/’~ŽÕÞXd\ÆÍʁ
 ?OT¹SkA¾xþ) *>:ͶmÊ°ZŠú¶ic3.1
È.œ­q‹m»ë>åÛ؂–-ÖyŒ“ŒxÎҋÙÉ7ÍØæ<kѬ€4·±x
‚vÉʾç„¢Ž2’X8W.‹úñ¥ÞÆdxçy~€¸­yWo#ÖY¸ÔÁ‰¬qdɛ‰wÖ/l)9‚OÇTbŠYK4ˆœjHJ¼Ê6ª!#†´úÞf»,±ÖE˜+òXˊü”˜'Ϋ)e]Ùz"address@hidden)2=öTÀŠ°)]LÙhëÇ$[ԄÖ/Fhî*È_ÎÐ<‡(`(J»"’"/RËÒöš}­pí?f_—y[¥ŠlÈ+RVõˆuÜ>ks¥:ÀEµœ—[^9{Q=åìæ}}¿yI½Ð»QgznMïÆ
…3}Æ0¾¦O£^Ö'°;¿¢Ï¢UÑQˆ„ÀMIè®Ë±àÐQ!÷˜Ê©Ako8p
+Gtf¢o¡ún‹E
+ïYM¹“gæ:ì•-ÓO]Ÿ(ü³æ•ÎáJYµ?ð$òaÜ3SŽ{·k÷xMͅ
ÃL4´õ†)IQåPt®-Ô!eö²š¼uõâõÆóë_±\`åï°\Þ´\ÔmÍ4ŸtDːn?w)m‰ˆ&s|¹|‹*5É}¥!ÕóÁ<ÑïÓë<ܦ~[ï‹q޽ӏÃY9ó+--nÉ€¡p·~æèÀb•þ4Üäþ¨]dýnrÎeB7³ß/Ïù™·a™ÍÃËkRLX¬¦Ž¼¶užÁ¸
…ßPõLR*=¶¬<address@hidden&»ÎéEß`Öé{j¨2퉀j•[…ç¥íØ;VEeû;w€w®ÔŽ
+®Ì9)˜:±"address@hidden
+Ê»þ.ÙÄ4U ÈPÆþ4lZìcÎ6ùÕSbŒÛq’çŠÑ•>[‚äêîËUi狪t&ê8ˆæSšé.—QˆØ·–D#s{ëJ•#
j&X²—èP5:·=× [¬+ƒ›Ybùª{i*²5»Ö¢4}ÆPKB»'6Á 
œU$4åÅ?ö¿^5Çc:9`4ìƒGú˜CV©æâU¾ÆMžÏÖ´_ÊsL0qxi‰ð±ÐÎK–‹RH>¼b–p8Û>7.c‡ŠÞ·f+õîñ©É83MtØØ0’ìùä°W:¦¢Udέ¾G[*ô‹l^Yªª:¯”A-õVÖbilúu,:Î܎M·³ËC*'L
 [tù胋€¤¶¾a›É>]l†¡áþ°ˆÓg؁˯b+«qÉNWÝÇÓ]!(address@hidden 
e&¶¶J’ÒĎ$îPÅt¦=;TÄt9`GšºÍݹ§õ'ô)address@hidden Á
+ÍW¼Ë'(*jrB§˜Ä7gc,±û¢Œlœ‡!Fpím/ÏF„"|‘Ç…
â¬÷ùĎk•MFÄ88æÈß¾Úµãóxl÷—Ùʌ!¬]¯omúÓÇ+§ÞŽ¾è`Âv² 
0è÷É×VŽ›¯ìÎLDÚ/M´ñ—Ë#2Ôey䚩å2˜`‚ÈñßOÃÏ Q’ÙdiñµoÒ,ä‚›m9z̲’I      ó¦{¢µ…
^w§ŽÊÊ/Û§|¥ È®¶Ý_be}º”¯·¿ßYv…»DhµåšÞ¤–^´§Ú6j%Žû¹¶
Vt ½RüæëØ푣Å£9™‚íéÅ QŒSr9†¡kÃÀ¡¶ %çnqt¤Ÿ- 
­;=!’”fÝ~M÷´†Ìáö6ãD2.TÚí_o¿Áˆè¤šEýWæk7vÇ~¾-j*O€Û-Ö[gG«µ—ì“¥êª(¿5'0y.rñèYîㄐŠYYʧ,Mž)ÊòžNs;4ˆޓK!>address@hidden
Nm:è6û¹‘z      Û±KIô¹K…â©$GÖÊð!9›D;Á„ìtÛÁmy'z 
AÐeBÐà¹õ‰©Ø—aq‚+åãxH¡ìX‚¡ôXÁ±9lЏâˆo»%ÿXÕ/Ö$Tœ0XùͦŽ¿Ê@¶’ 
ë×\‰ŒýRª]axfæôóùâÉÚ3<KǏÃišÞÊ̒3߂Cn†v›ŒŒ0œ‚tͼ’|‡<…«$wÚq
+ÙÇŠ)½¡é3mLÉ¿(Ìϛg¿‹ÄùzꈢïÜ2ÚØóŠu-
+ÊýÒéÊ`œZ©T5ô\-^µÖf§Ã²xfUlŒÑöП[É6+>nONwõµ%½÷ˆ§#Kí6¹G'#ü,'‚À"9²]"×`OY›UN’‡è*–¼1•¡¬ÄúBèpʀ[CZÁÍüašÄ_ºü¬€4ïuÆ)YrŒÜ•0š»+å¡7*‚5!TFZÌCç¼VÃ!Œ×•HÜH½
Yëå‘4&áÉ¿t"]ïåÖ2Ñ{qB Ç@)¸e¸‰#YUº¨&¬T1Vg¦^âœYϵáV÷Ê+ç
ižñ,Ò¢–çĽ8Á»GÉROlÌð­%éj¥BôV¯=Ö±™³§bUSNaʂ
Úeˆ#j®´KH±n1<ïò¢­¦,wYùüƒÊ¹ýúm˜Çarˆ5—!ŽGžiôŠ`cE„+å¤+\ÖÈWw^$4C×Üí°ïê•(×û¼k£|¯è/W#!
…
›úy¤¯Ÿô9mÉ2†~Ÿ}Ƹ"Å鐺+æXﳘG‰¬£vKÊ`òšqGp`㦯vŠáƒ¶CïJ_OÍ=a:(¤Šµ›¿¡tS”ª,fˆ\´‡Å
Q,¹¢«Õîî“÷†J8þÜ'Osè   
égÓÅkÎÆ?ÒçPåäAÊó§Ž<¥ט©û?$j×áÔû1yó²˜8`F¿^²«bÒâ|ꦖVŸi€æTgŠ¦~‘WZÅN¨&ã~Ë<c^ȕÅßòthœ¸6Y?«iŽPs¹¿qZõrÓÔB–Ä#./ÜÚ-½kY`]VëØ0¥Ê[Äu.´½`yˆMQI‹Œ
 a¿+ÌøõI°ù?uw9ÀÍùƆ¾>ÐÅyWãÍÐîûc›VÇÚ¡äπÞï:¢²ªø{Æ.g     
ÓGs²Ló§)À(k*î\Ó‘VÍbMš@'8Åg?Ý\üëCüï¿´ît­endstream
+endobj
+143 0 obj
+4565
+endobj
+146 0 obj
+<</Length 147 0 R/Filter /FlateDecode>>
+stream
+xœ¥[IsÜF–¾kü#x;B„‘2óèV;Â:´í‘97] "(¢U¬¢*Ñê_?/‘oI,,²{¬ƒ#@ 
—·|ï{KýyUWêªNÿðÿ»‡7¾ùóJMÏ軇«¿Ý¼ùñƒ
+W±ŠnìÕÍݛüºRM]5áʛ¦ª›«›‡7ß+ûÃÍ?á}ëË÷›Py«5|ssûæûw¿üôûÍÏҋÎTÖ«ÿ`ªôL9xV|öþWxõú÷ém«ÆüÃoï~þãôÔ¸*ú†Þ÷Û?þñ¿¿¾÷SúSK5Š¾¸yÿۯ驎•ñÚáӏ߿ÿýÝÇò±ç×¼6*TJ‡«kíáéôúÓПºiW9ÃÛîŽéY¬|mmÄg·Ó{ÊTFiºâizOéÊØÆ㳧é¨Ut¦¦£‡/Ó{¾²±¡“¸^Tµ¥}ÛÇöS¿ïO}7¾$jáÏ
mן¦OêªöNó'yg0tþOÓ·•wQÓ£éôpoeà<v·ÓÝuåƒWøôî8 
ތ¥7‡îá˜ådàþÚӁŽÓFJUÊñþÙíNã´¬©jՐ
ÚQD¥ŸU·ß‹˜ýìÛkclåju­ô⤚õ¿Ÿ4ªÚÔ|Ê]»'Kl¬zéè“Õ^ƒq§º†¯|Þîý]6
+ãowºÏVÑTVºÃØ
_QßÆÓÚ݀º‹u ¯wCמºérFW.zL›•Õx¥4/z eÕ
+kè;ì¦SXUiãÌBIf´a{8‰ò3¶ÅS;NªëÊM‹Ì繚Í{·ï»lqྍ£ë>þð–Çî.÷¨ÉÝ~íƒãEÉ›Ô–ø†ª×
Iõª‚?Mêø;*¶cƒêÑ|be
=|ÎBå
+gȺ¸EÑØ 
–rtU(Ôޏ(¯ZG_Hq²À—:*Úì†^ш›½p|Ç~<ì¿¡â­f?yþR&C–?™¡ùךÕîûÛõÑå’Ѿ|ÉIÓÚVAñ%Ûl×àáâ£ãýñ¼ÏR3z
BùâüCw:‡¬[WVÕ+ä՚M“œÑWʲ3>g¯ÙÍU‚”é¸ìæ7y­’¾_²z²#çèýiìöwR J.uÒTޓÑMÒI¡wæþà 
+þ{¥‡\™šMælÃýMàeï†ã)“M¤P|address@hidden      ISi2’—–žà|å$!‘Èf=Éu
;Ùƒ¬¦wj{Re¬YÃý|à¡=õù 2.F¶îOÞ>address@hidden
+—Qü_ ;04wµûl#¡jêF½z/address@hidden<Ý÷»µ¹ßge94ÿÿü»` 
Ms‘¤ð×>3CäPùЍcû9Q«+Ñ"T½
address@hidden&       
é^Â,ÉÜÊqèÅÛ#€dV'‘ÑÆEAê[jã=RÐÙ%h«ÍŠ¯X?ïµõùÖI7åö8Ñ=<address@hidden@F‹Žk†6ñFðgóJÃ
+        1ñr…
eæ/S$pœs|>žp§Y-Œã>·—Ît‰œª´7ß}Äg10‰—}àC~7ŒY@/ÆÏç‡læps§ÃÌ̛t%‰™VKb3|¢
\áÃïï2ÍèS‘ä‚Á%û”Åm뜒áìºþ+†íÚò52°$äaMú‹CÍ\¼StCF”B!Ñá¸vã'R¶©É_îQI…
nÁ}rv˜­¼çøaÁ׊ö8?¢³5>¬£–y½íN”\­''bûuÐ0Ð*HôC\ì6ciû~$«²Ê9#jãü\)CžDJüš«ëWO9ÁWÿñ(
+ vUS•¤ŸR\¸}F       §#³Ø´€_kkf¶“ª-Éëˁ®–»=f«zeX àÄ_07ƒÝC£I
(mðÎØЛ“˜eš-Š‰ŠÑˆWŒÈ}²µ²tÏïº=Ù¯š+&¥ÂµYBölŸºá¿G$Þ×%Ä<À­dDíéá)Ývxu
Š5,”Íá€÷5<;¤QlèɹB…ΑÜ7KóLZ]›'œ*D³d·’FœIƶ\œì,¡qai “óKµƒ—iV{OÑ¿ö
g˜d«¨™ÁlÜSDÖ¬ÉSûißU¨á 
x+1ïF»fyT]cY©ßPöÌêð‰*f©AôµHEbÌøa*nq|ÚÛ¢^AN‚EpÛýűŽ•‘%“tîí‚Nà­.,ÙC‹ê
address@hidden&7¡
Ùï]!†ÂžÇø\…(•ÁœñgÚA?tÝ­Ô„ûmÜñQ„«xŸ”Þ 
O‚ðæçÆcfž>´‡Ï9OÓHk¦â]‹5Ñ"÷ݝ+4œexMQÖ³Q)Œ<^r·=Qõh™ç<        ÿs…
BÞfÆ6¡¬¿ ò>ž1©ÑD.H}Aaƒ¦c¡Á–²»X&ÆtpÀW
ÙǏµ·¬ƒgî™m*xÃò̄6Õ
+¿Ê«Óz»ôg 
2™kds™;Õ0ñ>±YzóÏU5áÖµGÂFoYûÝáxþœ1ÆH§èï²½9Ç)ÁØ}å(Ï£°fۀcpN3~OÝÅa8Âh£ç€òόø±
…u÷]ÎVbl\Tã!‡X؎híC‡Ð
+Œðþ8fIjXÀzÀ‡`D‹ÄTW)ŒÍ¼ë¥Àì<address@hiddenaddress@hidden<RÒ`øΉY 
Æ`/address@hidden oG±1á   w¨`MÎÈƦAürn3ÁùñCªO\ 
V+!¾їŒ3Ó:Š;l‡‰·Œ°a™¦óÇe?(–¡d·k¼”ÅϔÙ8Çùñ¦+?¯m¬d‡3(þvr£Ë–œÐ‹Z¿’=Û&Z³ºú0žÄœ”¤¢”š'ù£•¦Xbæ*}Éßàñf<äè̍4øªÅ§";VSMkU.Lõ¾5ßOµ‚ï¿åÐÅ´˜«t‰9ò9Qל‚3K‘ä›êEÅF'lw¬ƒ»zfà
 
+͑8ƒ{*‡7j}EVb=Fñ›ñ
+#EÝ[ôZm8ÍÏ(A¦á#>æOƒ‰,Åv ”¸(ĚÈqˆ[%ÁS?–‹XöºÔŒ§ãùSF¹-o6   7
«ÜacÎ<ßc/F¦\¼„c³¥Ô?‡}ÉÞj±·× 
f5SNq‘.ÌÒ³F1¥Þ²™ýñð9ÓðѨVì»8k‘똚è5ҐT[äYÖ,µ´Ã9>¢OŽÒݝ÷Ø03éB—\m¦H« 
s,<FÅWxL( °;ìHNêX¦œ\Ë¡霜ÔÛ-u¤ÞâF¶<ÃÂo)0?õc.F]k7åós¡â.«µ]{øÏBò¯¢"6
ñenÓsRÿ¼ ÍšãyO][ÀÛÀ‹~LÑñ­/ò´q<?P¡©€„¥o,ÿ¼JA*>äóY#ç;address@hidden 
]²QaMUlóba|)ÚbP†2Î"¾ïn?þ€E½Å菞<+ÓdxyAL“¯ªÏrQ¦ÏÙ2¸4vˆ]Æ?ã¤/6 IåY
0Ü#­+óG»žf ›i”–xŸßT"ñëcxûoƒÞ&’–X¸ÓHG”2M†t“Ê~Îp™økŽˆuÑQÃÒ\
+\§î(ûwëòè¬r|address@hidden    "-qî– ‹L‰bdòób¡|Ñâ!ý¢     ùÓÝ     
³¢¶×’óÏ;ȱ{Ê ] [Þ›—x*?t·„gË6ÛfeðT4  
†´$ô'>·g†îƒ=HÀKù†Tç·Z¿¡ì—S™JœÎÉ˄û×&eu`fߚzÖLᲯèbbë_]–hºæ2å©è"¶[:UqÕ¬õð
      
-Mæx‰­#Æ«9ˆ<‘è™ËÖZú—,¸¤‰35ïŒN>È5‘O{j4¹ZÆ@&aÍÊ_r€\åÃå”àë²ûL¡”9V—-üÔÜw\Î`
+i5SHéžÏ²ÜËM’ÓÏ_‘Z8ÝڎŽf"address@hidden"Ì"Zb™/F´”å…
€£]×s´æüãïÇ?®ÛÓ)address@hidden,Ëû©i+®ûŒóÁLt2¤¸u§vÿ„ç‚Ð=kDÀÖNsyùAI
ñ‚ÔÝ~á°Ï%ŠâÿxÈcucZ˜§yË/cCJz-gEK7y ³sL MAçf%o
+
+À¤Â7Ÿ§Y¥œG´w°!S›fnmF        
CØaçn6¨ô©ÇÑ·)ŒÏzjoeK‘b³,address@hidden(»Ò‘æ0¹$s`Š6S9» 
r¨rgckf+«ÍGÅDcƒt„2¨4î2¾§ù¡›4:Þð¸Ö”` 
”H(ƒ^Ø-(ÈèºõîÃ0¢±5ž²¹ä¥‘£dùÚ}Š|¹÷’â¢R‹Ò,枝Q¦·ãÙâèµd¾wÇ^SBëʙ`¤#X·ìœ¦>ïšÕ´’GÄQ%S建„’¨g0œ*†ÁRŠÚ³|OF{A¬fk´x6ßM*««²ô쬇4q¸GQ+)îZÌÝÁҋ^ÝÖLݮŚçÔ¢-îþ<÷¢Ï5`OeL1îÔåo¦;6+EA°‰+Eäœ¤¬#¸¸0֞H;R&ŽX‰ƒU!KeʇáPxÉw“âʙ¯L¦Ô‘5·ãÒ½©‹ÆJ[lå/ŠçaQÍz{¢vM“¬#°z¥$"¾4
     k½dn=ýxmhdæõøØcáÃ0*&¹dx÷x Ñ»v, 
22´¿5õˆcÿˆ¦±¾J™lš0Ÿæ]ê¦J$ˆnUg¥Vj‚Ê$5fI£ªVãùÂÇÓxÚÇG45¯ÒÐŬ¹<address@hidden|&Óog„i!ô.fãÿý´Gk¶´[Ê°œ@,5d’â¹±ŽãD
        
‡Ó'5Š^˜YN­&XJWpR|address@hidden@»6¡,IP­pdA9!6¤þ‚¤^x̏ʼMr2&—:¬³A×TÏ(Æêg¶äêôãA“7NÈÀùñ•˜Í)address@hidden>pQÌ×KÁ}k„÷Ó/öäRàš
…"D¹ÚñËÝ_»î‘fuBàPÂu^ ÐåOþf&*eÞå/攦Ò1ýšcۖ+t™b(T~E%*=ž‡-ÁnudŠÊ"èá„ÙôÀ"{
¢u²0–ÃíxŸs
À1%‰rG²–Z     ¸íj‚Úɏû>÷_ù\êùå¶•‰±‘þû]ÿ˜-       ÐFZÜÉ
+in1”€ÿÆÙÿ.ÛDY¥ÖŽ?‚T³¨jM£:s¶Ð!с=¹%à¹Lç¦ë•,­%>×֏69«Øªí°^_!³ôõeþI…
ÌÙ÷H²‰¡)âýüª^%ÅB¥œ…”Ø1Êl“XñÔ­á¹ÁîR%?–å_”ZSۋÇî74O¨™"        
m³e•)Ó7™Ì’Ùî¿
+xipoÛvÊCÖ4áVP7©Žr”E/k‰ê$àa]/e®‰÷ÓæÜiK£`¹ûóÍÕÿ¼Iÿþ„°–âendstream
+endobj
+147 0 obj
+4629
+endobj
+153 0 obj
+<</Length 154 0 R/Filter /FlateDecode>>
+stream
+xœÝ[Ioäƾ+BðÅ6 ѵ/¹Ù±
H`ÇV€t¡[Ô43­¦¦ÉYÿ>¯Xõ^µzìÆ`“µ¼å{ß[ôá’Uü’…ÿÒ¿›Ç‹.ùø
ÿÙ<^~s{ñÕÏÊ^úÊaÔåíÃEü€ÃK¦òâÒJS1syûxñ…¬xõåí¿.üâÞº½¿øâ/_ÿ4>d•á^§‡_sóכۛï~   
 ?}õ3wåÂùÊY—^å:¾#yùε”²2Ò_^OÇ7:4›nßm·ï׶®2šû´ðí¶Áƒ        
mÓÃÍ®möá1÷•1Z¥ÇCxd+%5½ù~ߍïéJ;†ŸÇ}¹ª4s¿ûp[   
ã$=<4õ}x.ye­ÄCÝ|›°ŠèÆgõ~±¨t´hß>âS‹Goék#œ~c÷a[7¼r‚4xh®ÃC9¼
"¹æ"ʪiãvÄjðí&Š€UžÑ~õ~܌;XÖ£¬žÝUãכ¦ïã
+ Wãè9Þ×TZÑ}
4œÉ´–.>–sßЇúi¼­¬“<ýð{Õïš~4Zëxúé—î1·–VÚFi
+])®èluÿ>Y’•‚Voßm“,¥ò¥Á¼Öxâm·»Oï)ãQku48c9ó³m®%l/´&=´û‡.™,×ÝÔOõ¯í®·”`»Œ~z   
\¥9£ÓqQ      aìÂƸ:ÓÆÀõ©¯O»/Äò%åµd’¬(address@hidden(¿ÑtÌ®ŠPaý% 
‰eœø"à„Vq²¯d”óÍ臾âp!܏{IM Ð7ä°µ·2Ö)±0'ˆzîÓcnItÍom?ôWÉ*•w|&h0
+Aoƒs
hÎ+’·JðNŸÛݝK3\¶ðñDƒÏÑÁœ•tßîð¾JöÏ:Å*‹)õú·ÍǨzÏ%²9\¥Cò¥9Mn™Í  
address@hidden
+øqrUXM¨©µA¡¬ƒÛ©q²J‰…Ç°±p4È]È&Ú W>_7¡6ÜI*:Ãá¸OPV
gî>´ƒõ3£¯šó”0•i?ԇ¡¹Ú1¶²žƒv¬÷n¦dÎÎ0å«´+BÂqÀ‡–‚¡.€ÛZ®çº°nśøyºMÜë¥.œXх
×K]¼µ{¡cº˜¼zZvrHÞ|8¶R†¨”•!
address@hidden>|è      1 °_Ýê5¡ÞÓªr§ÇJd*€3‰íî‹úaHÆ 
!ŒËé‡æ)Á3’ØçÒ¹GÖ¡±\>Ô-‰å 
ö|÷e¥bÖB(¦÷lû¤Rë4‰±AÂ{¥†ÛÇvWÇóBøð֜0Þm0°Ð
N&™&ÉKÞ¿KüåÐÓ·ïöõéСI4^ ~ŸD®       
§Í1šNð}û۟Ç5Ajd·qIé‹`°I<n„¢ÝîÛM½Û½$pëQWx&çqMr)àžKxóŽ]
+² åz‰æÞKü ;.ãüó¡šH F”ìaŒÜtÿ÷)ÃcÎ㹓kĶÐÖ¸éá`D›‘KƒQ
+1èé\6ía<½ˆ 5
†ŽWÇðjBhF1Ÿyåûº“#¥v)1;’à:D)VL±}ˆ'” €yn3ikeÈ^7éÖ E©Ñs;lÉ·æpy
q¯
+O'
+ÿ)!…
ƒgD#“‚àŽw†œ8g™:wÇDÿCª.±-‚b—X¥×L’eeF\oémʸ‚%‘4qM¯›“%WÍÑwtn$NPuÇ»‰Ãb$Öú5Æ
+>?S7ÒÎÌ)h¼ë†¬­¦Œm•øe…¹Ìû    { I_FI©Þâ3¹YÃuÔ$Þ§HlƒáÝ     
ò€S–¢=}”rHX,|%”ÇÄÉÉC =<ÖÄ,!¦s‡;Ö¿FKâ³íŽÃòho‹õ•À4ê`ˆÍüËGçRÎ 
w‹ÓøŽ°¸@@·!˜¼ÞtpŒ”¥M:פcÁì¯CÅB„O¾¿ùçß¾Ž„w%å[?4‡&Å}O҃§Æ\
address@hidden&B•°RÎ%iˋ=õÍ1e¨Q刽é¢~,dD¸Í}“`ÒX*3 
E‚ÝmK’NÌnd¸(˜1æcF“ù>^ÈH©˜e?ÞSޖ“ìgÌÇ        
&æ­CڝË#Ç:\Ó§Ûz¹ÜÇü©(E{-A_áv(9W²œI.?ÔïÓyrTl"s0…
nbå#+D¿™;@îAä˜Êk¬”׊Ôw×%cLtT^Z»Í¡ä®]    ¸
0H(+”9'àʕHïάD«‰6&address@hidden>ÏtRÎÓ
8­Ï¥µ›o¯hUÂ˦Åà™¿ˆ5T »él†È!%¤(™<address@hidden:O! 
ÞS†»¸,êW›Œ;PÈ©UÉùيv6+zÓ=Ñù匩Â
¢È{€AN½ExÓ`:WΩ-r9úi‰Ì]ºæ„m¦Ø튚}·'ê›iU.-[wV¡rºæ&•%!‚9’ÆkÑ#´¤¤<address@hidden
 صuó’÷µd,V’«=o£Øƹ.Ž€ù¦¬T±ãºBÕ!ÖDròìñ—’¸Œ 
Ê̦;úæ*ÂeŠÔ&®}QOX‹ëŸ€È»Ð_‰xvN±Njl$g´úwCtZÓ29¯±¬#ñZ‰eµ˜ïsõµ¥º¡¤²ñ= <…
ö„ÀçáÆ’U`ŠX†Ý}‹Oc·P˹E}ˆ{L%‹Öz/Ã6W5¸%!
4ÒeSFå–T¨­·øˆþ`çAü±ÝøuŸŽªQ¼æ·§]ÝîãÍH]n)address@hidden&Fò\ɛǸ¢FûVuö¾[šy̐#å|_ä”bKA%WžÖ®·µ\Í49ýò±2‹¯L=¹ãÐèST÷-5´V
        ngë~VX_ê*›…Óú     MzIEQª¢?…\ÖÂÃØqà$ìd»€ÉJ›
ŽP\ 
rö<9Ô!—=/9,zÏEÐå>':É_Ƭ=)þø&Ø<°ñIΘ˿^å^߶Ý,address@hidden:S¿ëù&—¡ÀZvÑnÄIBÏÎ-KB$PŸí“q•Q
 ¥vB«Ý)‘ã»1o…
Ìø|žc84ŽM¿²e_iuévßmKŸ.3XÀý¶1‹SՂÒá&qF`Ìh«c‘¯‹y,ãh{úBI,Aå4Hß2ë\`X½_þ(address@hidden"qešjôÓ4͎LŽÏ¬àô‚À™Yp[²Ct´à'o13KYš%rì¼LÈ39‘9#»›äX*ÄHg‘Ää²Àë)VAúN¤X‚½•baó
…+à
"’Cùßd‡gs©ÿrè†qŠîN#À²6SXþ쐬êÿ“ "Ç|Vÿ‡ü1£q£q”‹†£"w*‹Ñ“å
‰*«VF%ŠÊñ-là&øùzë¦ÇgÆ-zÝÀ*r1ÿá8 ;     9       
§­FñÙefLƒÅR.¬1¯DnùÄR2p^©Äì\rljd¸LÊzC±å
+¦VÖ~î†qæ‚pC‡VÔIAÎb7Ñ     q«æ˜8Ý}}Ÿ‚µx¶ÂJ-+ûíUzÕf®ú˜Î   
yÏ,?Œ—œ"@dœ3ÃÚ¹BM{’ˆ3g4ÃN’­]p&address@hidden@ß 
Ãs`C”²/F1òöžLžTÐýy’à̚R¤”\°ÌqFÎ…®\¨k™ôDHñH¹UB--¡„øm¿ô…
‹‘xHÑ}‹DÖ;Š7ϘyKµ£ÉTHÑ{·~f~Íù„k‘híûâë錃íâÄ%íÃKNCµÕs"®Ö
+ÊÓü$6åÀa ä¦p˜.ÙA£9„œp¼(ϓRNdݒ¯gÝŜH}°ÎÛɜŽ·J?!Ä
+g&ÑÙÑàdèaÊËi7åfÌÝ<ËxMnëIÖ½×              
©ñe^§Näu¡}VÂhJ‘p<¥ê“plaÈiÜÚð­[Ϩ| ÓgdTw¹1V€Pi¨`“À¸d®i%&¥‚­ÐõŸò 
89ÿKôQô_¢  {ú“Þ^b«|*4|LI¦¾i6õ1z#tæøœŒëJeô¤mCµÈ͚›«óQ®(®aIœAݿ˵j5 
ät“oD/‚A(tßþ     `hŸ¼PäYÐØaêy¥ Uð·}ò”e67¡y¥nCéKä;áēÖ!¥, 
$¡«$,­Huå”30ËpéÖ$º£$ñ“󶲸øCÝÆ®õˆ¤›ù­ ýO®)
+j]ïú)dŽ(ÇÍ&eáZ,WÈRÒ²cŠ÷k¸7rR‘ÁÔ°äM¶*–-œäœ,çñó©‰Ð?_á!5[ò€¢Ä—zÓà0ƒ7+ó•|a*‰BÎÎà0é·
        ¾$ar<V˜Û       UŒý½Ì¦&RgŽ¤¾%Ë4ß&0¸œ´ãì[æX¿ea4¾qûˆ=Ié      
ûºÃPc«¸’SK)‡°(1øO‰I¤  ãÀ¿šK~ôO5Íô/N–ÓµZ)§Û\„}¬R
CŸ¹Ä€Ã–ó۟2±\ì¿63      
+ÉIú¢“Ù›ÖCÓ<
 3eœŸÖ((¹,N™M¨àÇö>U ‚âüI¦°ÎèïÚMóY
+ˆœÏÄHÖÊ<i‘,ÜÝ¡†ñ…
̆K>K<É忸À™?eÙb”h²îkݛ«(address@hidden"Ô¤Ü0rgôX`a‹ÁccH(4:™\
#èT)ŽOm}j§¡Èà°\öLî   ¢fKbûœ˼ïöù¯ÿä„ÀÌqÀtײ¢8”Ó
+/i…+rËx…‘À»˜}å        û³‹<ÑÊfÝjåþɊµ¿f£¿»½üûEøïßqGÈßendstream
+endobj
+154 0 obj
+4041
+endobj
+157 0 obj
+<</Length 158 0 R/Filter /FlateDecode>>
+stream
+xœ[KsÛȾ;[•¿ Üì*     Á¼grsWهÝu¼Ê͈‚L¬IBH{•_ŸžG÷
address@hidden/ýw³ñõÅ×+®á6û«Þ¾øûGf¯\å4×òêöáE¼]1]WÚ^¡«Z_Ýî_¼dúÕíïð{iÊßk[É9Üs{ÿâå›w¯?ܾýè¨D%
Óé¢òט‚kµM×Þÿ?½ù~-]¥…HøõÍÛß~óW…
ªœÑøû7¿þüó~yÿæµÿ“†Gi†wܾÿõ•»J®ÒÕO/ßxóéU4Û¸+O«ófßpÃ*Áíüø˜øm7+]%¹ré!û¶9„Ë\UÖ“.o{͂յ‘éÚ÷ðݕ5p-]j¿ùkð
+&$Û×á5¾À¢­ÇmsW-\åùj.ÊJs‹÷íð®Oõ× 2ÒIôú¡mï£í¢b²F;ÁvVÃgZ–®Ý…
(€6?1ø¹2ŝ›fhN»ðHS)øSúCwHoW
øöþ˜‚Îj_´éãiß>û?Ýpˆ°aW7àqãœ-¬3•Ö–á£Ò¥ÚpŽoÜ7‡ôtÈ(üÝSüsNॡûÓ°iƒ 
address@hidden,¹<eöî1…Ï»M²Xԕeä’wèLQËÿ;8/aíýñš­„“CÖ6ãSJe›—Y
+n³A—j¿íZÌ"çjÌöø…pwm¨»§,¥á 
n­þЦ0)ɇÍø%YÆjî(GúôeJK)õ¸|ÀãJ6¦ü6µ“è•Í®ké‘ZS\ÑýΩìÕU‹¾w»]z¹5»ªøvËóÛϗŒ4²Æ7oÛÝ}z3ä‰ô-ÌЭ¹Ô
…µ²H»\꜌‰Q>ÆøžÛt¿©¸Vú÷ÇxjS¡B<m]‹,+©)mÖ
        H¬Òè¿/ѾÜÐâ¶}Ĭ²Í莔½do3ô§Cð‡ü
+ýpJ¾aL;4øØíRZ'ìÂaª&l\ó}×bM¹š¬ÿô²‰àk¨&†Ð)ÎÉ9aóCÛæ¸M>‘Îaöêu?mšc×ļ€'&Uƒå¬aÆÐnÚ.‹³ªvèºöþÓ«k
+,µš„\©%¡—á¡6vFI
+çf×ÆËð&ˌ›Ý¯X¾ÿôˆ­Êßš‡cJ¡"û}›*Dº}۟“«4…
¹{À"3>9¢FRD/Õ¸†’Rdë}™“cœâîÑЩ¡”ÿ¼R  Ï(ÿúÝ®O.S–àû{tGt5w
Ù5)¡<v“¢]ŒUFÕ+ÎâÌå^Õìè~âIÍ    ãU%¹ ‹iVE‚3åq7¾Žy‚ãéŒ
7¨*Yl=<Á„RÕj‰«¡2désß]uË"kUUKŧ~g¾6çdžÃ;´±½ÀýÌP.ïÛql>‡ßœ¹À{j™:'þ˜ðи:3’îØEwÀK™³
… Û&bIJ–Ô%
ä/™÷õԎÇ*&Œõ€ è""gÔ]Êä³\ê9VvéØi²"©g4X/ŒZ}2.8      PX
?RÆIrÒ’ëØ&wXbLÙwJñô4ëæ®ÛE¤¦’µE³Ÿb/ÐGñR…PêȊw9|Äо/(q 
ëé¬Y~.„ÂÃ!0GøH1u—y
¤íí¿ £g†þ¾EÆaˆ`’Ïá´A÷ÔM&Ï)‹Á‰™’GTÊ)÷>address@hidden
address@hidden>wÁ?¾u÷íÒ&address@hidden    ú …”Øç4ø°ÈcŸŠ…ú×5ôó
+£xòP)ŽAü     Þñ4Û}HnÈIU¾ï>o±Ý‚1ã͏gý’‚dó´—zµ¢t;2üKɕžÀb
ÃRwR€ä”eǔŒÀÉðÚ}à}ì‡X¸¼(¿þ.ýšeHø~K 
èj[V^‡v×Æfà<ž†Cjû‡nšïÜ3ée¾+k3¼o‡ÝSšUíIsÀ§Àû{š”ÿSpE¨yHùøû¶ÛdÐFÓ¶éí"wîû§¸?Š<²^f
     *ƒÇUŁߖÞp-('VÙ±`ùäªG¨äœMAiÚ®çùì
+–A\XeÈ]ÿ„hk]¸ŽÚ½.Y„z‘›ÐªùŒBUŠÌÔìâSNc"¥Ì÷–²µøz5õёˆQ®Lã&3?!I¹ZyD 
¿U}-O¼¶Þ‘°Æ5›‘l˜ü!Ü:Y:_ړ_¨YKõ‘Š²ÖÅX¨`”ó_ÎcÔØ"˜AŒ0ü#Fš„¨xöLÿ‹10Àp˜¢äîG
+³„NÁá¬rŸ^%Ú;Óõ¼~&¡Rñ™ïÉÚ9]—XRO  ( address@hidden)+sÉÄwÀf­¤a‘
ؙˆrÜvyðÂjd~¶Æc+ñ/«—Ã1T$Q—‹²Ì
‡¸*­¦“êª<“…3eÕò•…€±‰ÄÈ"¤œv;’`žugœ¤k·P´€ä°K/óp™˜A€fe(ù¬ÌMV$
+5Ø<¾iۓ~#µåkï_ˆÆwõÙ†õ™ìNö¯fò´]Ìz,¬˜c‚òzá÷‚}$¡Ç¤ÈCR;
š+(m‡=Ž&ö1v^ 
¡1ø€í&ªÿ¢Kº:_èa+ç^;÷ÊÒl#NáBóy&¡ü¼”|Û¡{x"ƒÐ{wØñ3UB]S†ŸMB0´Èߝ%ò’Óªdl)\2}D]Y\ôIÿåôxp¦MžŒûÓçm‚4À®Èêן›îo&dèæ†F"V0è·DOsƒdCߟw¢L
 à‚ï`G/+—F`aHÍ"Íä–ø«‰%”ĦSî$}m&®00N\H2? ©^0×:ŸUL˜«±4¯GêêG¬šlGê
+e      ¨°½:C/Z3ÇR2Æ\ö‡=+yG$š/…¬çªnÈx9ÍD/³é­‚I2¥9Ý$„0^¼›ºœìôÇsdgéY€ƒ¬"žFÌ[ 
cõP&y{è‡=Íþ:÷\€P?û‘+Pˆ
+úeÉ }»YòÇmsèÆ}
+¿È'D$| ˜“ˤ†ô“C1-US{Z
+çR{hüg¤ZS0‡ä±·85
pYBU9šÝˆ ž©ÓùåŠ3´~Ÿ|b$‰ÙwÝ!Å͟ÔÙ,ÄÄt¶yäO:?
+#1‚»Ëó45©Þ 68¹ô4ÉË'Ài"Qzƀüö[òiá³6Vaðƒ]N>FRØ7í8fš˜¦ŽxU35%éqv˜`þ
!`—4‘™ôXÎt,áùÞ>ÍÖ^,#b|address@hidden,§äT¾ çgžbڕ¡læÝ*µ      ‘áó6柘
@Q(+¨³Çm"Àé0gm|B>-òh4]!b¦Ní…
)²Å›)Ia|aeX½h_„5;þÑjå™Í¡G®Ü<?²Ãö¡y«Ù—8U_hõÊσD~Ú²G®d'ò¶¤0Í]rJ1¸ô
¤+^ZœcR›B¼ 
O_§¬Ì</‹}ª.žCr´‘4w]¢`~´ô‘$ºA2²éhóL‘3•PÅ9fîÀë'3w>Ûp“F†¦M©hà•åõ›šçvžêÞÛ\÷‡ûÐ(CHø“Õ
 ˜Ü6>au°â{»TùVDˆS|–áºU™l FYp]9ˆ…S¥>l>ü«ûK;+Ü£*úíóBâô2$¨C‚Ò …
õf|·›œœÏê
address@hidden/gÄ2ëõÊÙ¨9-^XòZtÑ.=wyv0)…—=ƒ£„P8Y—^‘Üž[5+
+ښ<íψ>02‹y'@ebþî4ÜÔ)‡)õ?Q“к¶)4óF½Çˆ9ѝh$K¦-ç“2UgÆó„DØ    
|áÚnѺ$3 '5͌›%;·Û8¢Ð¶é¤"L>O‹©Pú¡û/å’“\)™òavŠjà­äÔÖGE
¾ËÀµ²GqzÌ«uÄY&xEJDÚ:PLΔtF²æð9ÉOÊS|address@hidden 
ɐ¢h;!´0„û±Wî½¼æV.âd†^hT¸}&ý™¡sÀ”d`;OÈaR†ý“ž
£œjf¢B:ƒš&u¹'S¬¹Ð™Éq8Å`,DÉfFÔ
Œ ƒš4/:¯äl,Z›FvYJ£#èïëûŽ“ýsñ°XE¹-—€g…—ó|VéOÿ“ËÃVÔ÷.íÖø:!
+óºsÜÎШ%
@ôh‘÷¡~D¼2U/¿ ´²z29þɇ|:/n„£éö>     v }T6`Pþè¾8á¡QÅɕ#uÖ¾—EOϸ£ý
+Óå㤄lmubÀ¡õcG“ŽådZ{‹À«Õ¢'@>/address@hidden
+§Î𰤐+ÉÊéÞjÇ4~ûFøÇÁD“ü}ÂX爖­-_fx)öÜ|tÉº²_Ñz/Ï;¬ëMó"î•ë«[’~lÁ‚ây36ziº¯¼Òk´kDµGOú®é¾énw>(ÚvwÂ}`
 ¼³m®<Tð¿Ò¬†vÓï‡ïS)¿ã)ò®ì^5Iä:²Î€Îù÷cÀˋ½ÑɱÍúžWÔMrW,.a­>$æ-*šûØ
àéÓ®‰\8…Pî"çy~¶ŒÛÊ-m/÷ŬÐÜÈ¡}Zü
'®ˆ-²,—“´s,à¾×Ž¸Tã8ÁçÐ0/±ÒËΦátH*¨rÎe‚’¤8NÞgB¯2g–ef3íÚÀS†|Ï 
®©!åևø…L‘r¶¡
PÆҗï‘Í™L¯wÇ’æ$XÇŽø¼ƒqHNf¬ž7g|ǶoL=]RˆµW
+]CúžÁ’DîpD”ô†<¦Q¿M~þ±á+׸„äþŸZ Ûp(       "ëóÖãX¡,áÁß¥žÕ 
Áʳ0Msƒy¡‡ã®ɂþá
+&tÌß4Ê*÷øLjý¬­0QÍ6¶BopYÙÊd‹¨ò¬©NøÄ'„_å㪼þÌL…
¬ÔQ'G†ç÷*žÅðü*}†ËcÈ4\¾Å®„‹Wõ2\A}v¸Â
+ðÊïñò#Ý3é”ñ|o°°áé²KRhüiæ(¥Ýßmê¼É3ö*M…
N#?Ïë€Ï£R2kdk’Åê>ɏ9²*æçpEýœä[ËóqÄ9™¨c!s®-ò®y&,ëˆ_·ça-QãØòžVÍg2Ãô_.ô§äz¦
+Äí¨   ™"Y‘Í€ò›å
ÑÜQFšÉ¿fš¬[ÚÓ"öeáøzrxÜɬ*ì’/•Íö#}uqò=èÜp©ó†Ë3ÝQžƒÊXî¹Y)¹´Y,þØ(¢’vieÐñoÄ:h`þØ6¨BOdӎ–ãßÞ^ýû
…ÿßÿ¤´šôendstream
+endobj
+158 0 obj
+4318
+endobj
+161 0 obj
+<</Length 162 0 R/Filter /FlateDecode>>
+stream
+xœí[KoǾóßÀ[l€÷û‘›-ˁQr0`
w‡âXûÒή$þûT÷tU÷<v¹RtðÁÐAÂh¦U_}õUuï‡kVñkþ¤¿ë«W®y|†-Ö×?Ý_ýðVÙk_y#Œº¾¼ê?à𒩼¸¶ÒTÌ\߯¯¾“¯¾¿ÿýJÀ?7ðÖýòê»W?¾‰Ye¸×éá?ÝýãîþîõÂýð–»rá|å¬K¯rÛ¿ãaR^y­ExçVJYé¯o
……
/ã›a~^V¼bRà\o›Ãq¿i7ïÂUqK«Ã^ö6=ZÔ»ú¡]µ‡8¬ÃY|û9½mµUéÑã~»O¥¨˜à§GíšýÇdþØìã›Á~
G<lÓ3%ό·XµÍ&h€?ž³æ­äª2΀¥dŒ/þÔ<n÷M\9«ÀR"
ð)šŒ,™ÄEÒ#‰³¿ë×(*í¾¶Ëá²bv¼^IgðÛÃSƒ?^§ÅU 
îÐދíz·j>ÇUºJ(address@hidden;address@hidden     
Eц&¬7[°âþ&®ËW‚)üŸUsH–ŽÌxìÒN*\X´‹${ËÚ¶…
y¹(O´F£n‡´'K9<Õñ¡à•2øÛÍ¢I&1ڊÒÒàN[Xzh5œHCã"ŸêŽ&FñhÄ|çÀÈ3¾ƒø 
ðæQ)¼0ŠazI6çÊáü-zÓ<’7Û¸zˆM­,ÚÔÝs²]Ï8ª®ñ†Ž
address@hidden°¯„-^`6/address@hidden  âƒÓíâñMÄ®+0Ù 
ê€+$çÎå+©iµw?'4*“1¾Á,àî
address@hidden&f“™`6Ë4“þ%¤ÏÆT»ð[ׇ¶OjZª½n›ƒøo{8ʾ٭úÈÖ·WòöÍ«¨Â²Ž3P¹ûï?_ÿ-±º—
+7ô÷&E#¬ƒ°Ú=m«%i‰Ky˜2{ƒLt4Y°ÉYx×5ÇeDpVÞæ<Üã»Âi–Mrœ±w–9˲)gé
óÝ~ÛGJ”C$!ÛUE¡Fžÿ¥ß‘9…
l1N-3øñf›ò¿ä„¤O7„.1qˆ‹Ñº·G$ðÌþOõt¸ùSQš6&í°»sIûP¿O‹qʦ`S8fŽFç2n’; 
w³Ü™Eáj›ä$Gùqn+ûð^õ
+âT5複
yÌÉ_°jàOG™x]÷Ñ“qFîÚõÔå¹S¤Ö(address@hidden(čV.úã8™<׿ì*é•"YC`aŽƒUQvygƚ(address@hidden,@˜Ò0fr„s†û&&%±±‰y&²Í
 Á-Y½Za&Õl’Ü’|P
+©ñy¨4>ؐ`Ú.û¥QÛʱû|v_±”m݁Ò_¡ŽažòF0,Ö©jÒô8#ÚgDUò]6PU—H"¢ò6`Ô{—ȱ[ìÛÈÄPŸqI¬Ùo&ÊŠî§Äî=NȀŸ’Er‘
 êzî’%”¤" îºãºI>address@hidden;F^0ÅËÈëÒ¨–‘^¨÷˜<ã$ޛ>a… +PÖ8¥KÀÙïeNé}
‡5p­âkãrkF¿~×|^4»^‚¼8p×áiÛa¡¢¥A{%á$8&address@hidden<Á`5´>dã@
+Œ»}³Øn–m¨ûõûˆB„CÝáPžSU
+2…6 i=ÈeÝx6Á
fKGi¡Û®›C»NA*ØðsK1€ÒJŒ` 
‚øX±€ˆßxxEðøÔ&‚Ѐf*6ëltùœëreð0¥æԕÐ0¨*à•ÒרUÄCê„]C¢®¼ùÂë¡Y$“IŠfÑ«¾gJAž!‰=€
 VˆÑé—w‚_§Ý# 7ÊAì‘Oε{À°^ˆQfÓ`2kß.ˆ+‚õ;)GþœiA¥ÿ.F¹ˆò¹ˆZoSmŠÏ‘·Š¶
+
+—$Ë.Y Ðú͞T6Ô+Bé,Á0K*{]oêwÉʏN̎•)¬›|Òb­   ՚ðšÊ…
Úl·å‰O;grÿŠVKh>¥ƒ¿²Þ«“€t1,©\z±}Å%®¢}!ݘ~lÈ×rŒ£™FKhñå.Ï¡ÈÆv
+$i*EÑptƒ˜µD÷ŸžÚÅt®'dò\ŸtLJH'õ        @ 
ç\pHj)0”Ƈs%€®w}-NBô“>Ùlši¿é숹®âló\?﨟€:GA„‘ƒÎA†    •¬7    
¢Òýº&AÕûÖIOª
+…(6G±¼lÿ²8®ú1EåŒ.àx¤X Ns†ìºJ±7”mNg“jy°«Çzêė…uÝïø¨z]÷8€f¨×&¥eâE 
oŒÐ//¡yѬ»ÃMR
JÊ}8â6t–‹õªÛ¦mHkqþýö!5— ¨âT‚Ö'‹ã¾©S2ædwQÉ      
Ìõ†ž15ô£+ˆƒŠH«fŠÈ²`¯÷‡vÑîúqA¸ƒe‡­<ˆ°#g™à[†JÑÜ4Ÿw)‘AâÇÇPC4ËeþÜf¸éÑ+
+ôRñ/„¹`¿&㖶[ˆ£¼]ah»GÎzj~ö૤Š ¸ÔÛ&ÝPzlQ²ƒ”ÅgkÐw‹v{ìnRn3ÊN[5Å
+#'ÃCYoÈðª!ååLäÆÉ]„SHG9G=ÕûuƒÒ
+ʉR*à
+â     –7¥ÆÓ 
—]€ž•Å¹DkœGrÓô嫹£+ÉcùA³ñ!»¼A耰Uä`AÝØ3Ia¼‰Pæ¦óì©(з4á¯Ôþñ,'_-¥B
   ©t<3°¨ù)address@hidden5«T:3¶ ôœLˆ
+3œi‘«¥Ç-ùÖ•B"N™A›ZŠkéÐË?g¬_Y¸,gGtˆ_æµëY/Ÿ¥èNõe <Oµä݁¸–6sê;Ǩå¡
¡
+[Àƹ8%¤£Ð
ôXdìلórìùâìõÏ£gNŽŠ÷²éí&7ö³¸—·c³ƒ§¹~ž³{8Nt~ 
¹¢Ä¥¤u®‰­sB5ä~4|‹>S’âœJh_å-|I×z¨fæL¸®ß6sŖ¿ÅáÞ¾y…
©ÈÅãÊa|†êl®º.°gêi¸âœ«;address@hiddenaþ%ˆ    
ºÊ„1kŒX¹’"þf¼°"_Òù’´Yk’6‰ýÀÒvŽý$³¤ Tœo=œ"ÀÀ(ú[‰Ü08Åû¡åÏp8NÞ¹ 
Üâ‡Âh–ø¹›¿-Iò’}ñÇ&"ä_½ú•¡”űÛã¾ëPCѧì¸3zyu¦¢L×6N¡ËX’Q_÷¸†üÊóyžCQ;address@hidden
+g˜sB_9Y4÷NjîÎcg&ŒG‰Ým"ªS,˜×í»§$)òiÂÌåœhÅÙhWíTƒ\°JO¼<cM/0RW1²ó)Y\n<Z"SÐE$¨Œõ{ó‚†M«¼bú}ó;6A$2?­ÊV׋ä,AAäÄ{Ff¿D™š
+1:½jŠ.ÛµÓCG”’Š4=Iฆú6p=¯-íw‰te«Õ#è1E$hÆ÷x
™¦i±÷86äYkÎÒãÐA'HvÐQ¸ÔT·BªJK1½oã«Á2í=>b›\}…M«—.œM
IMî©©P4¸´Ã£ª±³¾œ‘ˆÛÕê–7))0;<À7cëc ™—öL2–çräT;45 address@hidden 
address@hidden œqŽ›ç$§§à–*=Պšr÷((õmʙ¬<‰á 
ýqÇáz\Ñä+ºÄn6_‹9]iz˜QԈ]½Æ60ĂÉN̾).Í]¨l>öI
+\8v¶ÿ‘³Ï¶øz q&Aµè?osýy›ëv›° ì
+`¿”è/þô?Ó&ÏÚ#÷a™¸¨;”ø—æ•÷ÉÌð‰2`6áÌaARï~Û7¿-¶›Ão‹>¬ì5ßµO7o'zÀ†ëō̤7ò|òn©×fK¢‹Îâp"ºœAÒb綢å™Ãò‰`¸5Ì''‚­;ßpœ»2{1ÐæÜyh6é:”ÉW™÷Í¢éE*äk¦tÆà¬ÎÜJ?Uû¸\}_¼æ¯8½#V¡¾ý­q&2¾îùIëtÓwO+ïN¢¾oÁ„«8ÙQ³V
—±Îz
êÕOn¨*ÿV$Ûº\Ĺ;ø1‘Œ:η²pBx¸gÔ$¹¤Xø%ÁàÐ>ܟ鬀c¦*/^7tV|yúuª³¢ù<    ¸9ºB‡=
+n;ú)ZÂɨÔg·rö§%ºòù×G¸—pãR™‘—€HT¸™Rv;(ÝaŸ®æBr³ÞŸk!œî¿í¹ 
̚;èì¹m]œ½¬ÚÀv;¯ï¯ÿ}þüž`Hñendstream
+endobj
+162 0 obj
+3745
+endobj
+165 0 obj
+<</Length 166 0 R/Filter /FlateDecode>>
+stream
+xœÅZKo#Ǿòx´qÒïGn›]ÑÁkÇVàË^fÉÑrbŠÔÎPVüïSýªžG“ÉÖÍ4««¾úê«êþº"]÷_üwóxóõæëŠúgéŸÍãê÷7û‰š•­¬bJ¬înÂtE©”Yi®*¢V÷7ßPóíýà}¡‡ï+SiÁ|s¿½ùæý?ßýxÿÝOîEÉ+¡©Šà•{F%<#&>»û¯®ôo[)Îã~xÿÝÏ?»§\VV«ôþû¾ÿþßïÞ¿sR°”¢é‹û»>º§ÌV\3Ÿ~úæîÇ÷Ÿ¾
fk»Ò°¡Ô™½fšVœ™ülÆ¿î×µ㌦Nuÿ«7ÜT\0ŸnêC܍4"Y÷ÔýCZY£’?~k·MüžqÜxíéŠZÆDZòxèO]Ýú
…9¯¤¢i“ßnÅ¥4ɛ/»Æ¿ÈXE
.Ñ5õ©=|ñ+°J*ÎÿÞ`cŒáÆÚÃC؄ª´Ñ·û4ßn°”’Šh‹îšàk
+8›ŠJ1Ã'?=‰Ô•Vrµ¶€k»oºßü/¹5DZ£éž3)X÷»äkJ¤ZìXÃ%ú°í(çé²óLvÞ݇d„J\²©üý¹F?KaÓF_Úý>†I÷âÓãaÿ»
+æK‡¨ð60ˆ¸x«5S¬²L>0P“9:tÅÔ
Ž'õa߄ϓ¿»æôÜÜœµN¦´>¦²V`,ۇðŒ<ìØdp0%34M}iO»èm”¸´ÀëRþ¹»þƒWÕ(Ž'ô¹„9ŸB¸ÿã¶3Ž1«™E
+ò1¼–§ušm¢%Íè¿èÃ/“eõ~Œ¶YÁ?úøl=Ç_”¦"º~š=Ð5_Ÿa‘~ÔÁÄkЏ¬þÜîJ8…
•1¿‡•9;9c¾Ý¦x¬MÕGabDøkRÙ)å<wMD/7X”N»úŸ¿KúPå=ÇI%+·Ã[M(‚"0wí·(R<vhpÆ0p}ò
…ä&}¾;î·>vŒs$”{¨—Â詓5JÉÉtÄñ·ñ]I¸a8z†aÀž$*ýþì²1v!8 
WŽs`€a1žWj!RôÚǧh·"½xìN±2â)ôt;ç—ÏÁ2å™vS?÷M¤'(téy¢"*5#ZpÆ
address@hidden&²™dÉ®Ùo“4BÓºd@>Á°köMݧ¸ƒ2þ¶¦.“{¢pbZ²)¢‘ˆè
¬sáO,V›Ìë,ˌåå
l›¢N‡ègЬúÒOmàûÃ<«Kå#iD\N'Ð2ÃÆ;#;ÊU™Ï5›KrôS¤x§ÏÈHŸq0•Á‡²8SÀ"DóõùjœÂ*j÷ÑŖf"‰%^ÒLސõç}Ûï¿}ý!XÿO}ô”Ñr¿O4ÉX2öåP%˜Hüøç&×yä¨RÆïS±
 
+ÛK"NÄØoà&x/mé%Ö€"£åf©5ø’¢=j¸îj%È2AéX÷8Ɲ믢EÞlo,
}Ý(aýÆ$ø“#šÏ=¥z‰â]1A÷]no€ô´½±”±¥*Ü©irQÝ"¢W…øA齍  
!TVט¢P±9º˜¢vÐ[~œ^Zsëô\(Ö6f 
é:'¥JçR,\S€±Ø¶M„žÊàùÐü÷)òPFò{³95ÛШ¨ÆºXŬ5úk
+eŽp0¯hè€?&­ÈꞗœÍ%È·™æ“‹œ€˜“0xÛÄÈÁԕª´¥  Hלc­\ઠæä1ÀA[ŠmîK
+0§lZÁVCóŠ‰3ÁÄL9ÓÑ+Ÿq&=|‚Ë´Þ‡’ƒÛ¡p»
@“ÖbFNtJ•bÙÝZ³Dé±âXs‡b»X¹š®9l¼çu¥fÐÖD§iÁ³(address@hidden&9օ
=²Ñ&ç(address@hidden:•u-fëk=G›Rëâf/X^b‹ …%÷;…„ Žc-í…ýï©æÙü™ƒ/ 
bÿ¿–¶ÿ+)²UìçýïȬpÆa6ôj$Ç0dçÈ<,¨“úÌFôàƒ}°D¨D—š—W—êš«“rJuʥϩ1èÁàGsÖDÙ*8¡éQUö8¨UG߀^H„7xœŠ³›ú‡Ö`îqn²Ç‘r¥Dº‰¾¶†ÍÎ3¦¾_ZjìùÐB{ì}ǜ4F‘÷E€kk%.‘þȂі×L$¸ð2ژ×gü݇+'ç3<
úšRnæjê„J§S‰DÜÜQ¢jz_
+¸“¹kòô€˜„®ÌzôñJô„†²Œ(m¯ÉW’˜BÍxî£ê¾O¬ÅhÖ?-Ðú3%}šSùRª§|¨\u‹Ïý´UÚRŸ;f±ë¾{(­ì6+ŕ¡¢
    Ž-!˜þ6j¢r=*kÍ´by©¢ávYEpƒ*"‰T1¬.›¦ïc{11…
ªCæÃi—ÓYl¡*ï"ßJí(åö/€’A5¼L®m˜E€ÂÒtÖ¾¾mÏi®¤u“ÜèÊÁœ€d숰] ›0Œ“„Yœ$ 
md…
HƒüÌ"#ÚA7€¦X³¸ú„Í°’á(ِ'Qw‘¼£\Ln$>ÅnÌõ}‚:{pŠÔüû§o«˜°RȘw8¤’Y¼?>w›€Gð*èWtÔ5æ€mÊ9s0wT3Ç4ËýÜ´X/T‰á”
„ž<‹;3Yix‚­Hàø!^\!þÕECöÌFšþ4ãO©û¥õ丕y‚VãÀA©éTm¤…Ò9‹¶$§KÝ8©
‘“š:“ÖnP‡óŠB>»î„fjLÍ4åÉiväA;5Û©š³)»¸u°¨zm“ʪyÒ/nµ˜ 
BÐ|ð²É‰á<¸ó/ñŽœŸ-Aw 1b‘ì8¥
+Žƒúºã²ÌZà¸3ºH;I¯Ô›u‘`gu‘–‹³K¨&ºÈÜQãy¨8šeÀuµDuI-iRPK$W¯ÉlF7’a“¸N#â±Â4õr’5$^åΉR¢žSNÀ»—ãí§82*'
 ø‰rò‘³óáËb      8_.›¹Ü¬_—MʾV6åÑCTMÀˆP×4›‰Ew[aá®i7Œ»¨’23CÌæ1ú±kÊڅ
,³.¯A+ÉKJ­d›KÌt@<2­Ô/¾®]49£RˆÚ…R®äê»$¹lžÁ•i;͞+œ.΅
¬KH¦ËQå{ª»ä\Ã0žÇL;u¤—OË'address@hidden<j‘‹Âb 
×;ÂìRT‚òyPŒ1MÐ~Ë®õ`qF^e靟ŠdëЈ©vʓou‘T'm8`,šƒª€<DºÇñڛk÷ðx¤èåKÝýx‚Ò5›¦õa²")¤éç!Yäù·ßìyíÎ2ÔdÜ39n¤z)×·›´”U÷qæð¾ù-ÑaaMWïc
ф¤Y êxÖ+ Rù¬wǬŠçVÏ/address@hidden:uŒ
address@hidden;address@hidden)†Nö‘"™È%³ò&‘j›zàWÝ,oÜ\»gÞÜ3ª’¥«Ç/Yžr‰G}õ“;œèÚxOÈa¹¡vw4ªSÓ=ԛ¨ý¸£Ž¹ÜˆöGŽ,Þ_Jeý[B™/æž÷5ˆôÊæ¸ßûSĈ(­ðºÏ÷ªt&Èx%ÊߎEP¥{ˆfxÝ*xt0¾I“nw®Š†=líz¬˜¦Âñ›iºãï`U*\xI÷Òc½mª˜¶:'ý/RÈڜÿ8^‘ñ÷Ÿ™Ü»Aðü˜®ð*jæ]Ó5ÙÕžÿ—\­ÃYAŸ—È€qvæ|ÙØÊ]b
q±r³¨úãzS÷Í!ވ?6Â• k3ÕÓ®kêmt
+(™ñ=ÏBɃo±³>#68ÍgØÂ
F[E‹ÿJÌ»Î>kõ´=èÛùêšNš6ààG~½µKg"`wàñb!v7r©ðšÛ        
ÿìt3*irWùÑö‡¡+ùuèÔÚ9è
+^€.'؈,>address@hidden&ù%†MË,ùú§è¡ÚܜÒe_FõŽÞáƒ9ÑUÀ$ÇU|Èáe¤">´g¶ô“·¡lÈÁt7ilצ»•&_nv}z»yÞ×ÞlM8·7S'è€óÜ.ìd
:â"ˆW†}´ñþ ”ÅC´*2jƒ°‹aۅãž_{ªÎ“p¼„²`ÒW<}*1mºÈ>ºÏZ³x”yÓö‘æ8¼/QÛµñü…
q3¹±9Zžºçþ„#AZ8ª‘9Âå‘`iWçϏ,åx9apÊÐá kñ€¢t½at ›ï‘g#ùÄG 
ø/úh›ò][Ìwdy•ó0ºt¾èüë}&æÄÌý;ù‚=ü¾»_ýëÆý÷?W*2Ïendstream
+endobj
+166 0 obj
+3620
+endobj
+169 0 obj
+<</Length 170 0 R/Filter /FlateDecode>>
+stream
+xœµ[Yoä6~7ò#ü¶        0­ˆ§ÄÇ\address@hidden"YEJbwÛ{ 
I4jŠ,~õÕWÇ|¹­+q[ã?ñßËÍ͗›/·Â?£-7·?ÞÝ|ÿA7·®rVZ}{÷p~ 
à%[9yÛ([Õöönsó­ªDõÝÝï7þCoÝ­n¾ý釿ù‡ue…3ñá?¾ÿõýÝû_þôýÑæ_­«Ú¦¯
+‡ï,TÝVs·ÙÀ›þOÞ?„_«Ñþà·ÊHúÐÏ¥Q5¦uñ•ãþt8JKɶ
Ÿ£´R{Rš^y‡¯ÐÿGü¿ñn6çGo
Q)Íß÷¿ªœ1†­úå°êñ¹ª+)ZM¯î𙐿‰Ïºõ³¨«F+2Z‡à‰‚~ûràߝ½xr
¬iµ»òѕhœÎnàڜoÖù½Ò³Oԕ¼ú°ß÷ŸºýjÝü¬¬TüÉpcB;2Ïócçw½ìæÚۅ
á“Ýá3ÙWI__î¶s»a[¾ô·Ýc~a
+
+<e!L¥Û‹øTæ:>eÃø\í¢ÍWÓ7ûC´J-[Zj»óF
<´W/XU­åS¾Û¦2ÂY5Ax~žK7qúâ}X®1NÒ#÷¦N)úèf·÷OáNÀèéÓ°ŒP֍¤Í|~ñπzZ¶Rw?·ÜîT°Ò£ÿŠ€-êV1@"–àç
     KÇ=xêZ渷!`ۀ1Ãöµ ƒ=gþu÷8øå%ø‹mhƒá¬ctã.{ٝ}iwÀ8Nšæ
+>3þ|Ökz 
h8PxøØEÓ+Á¦ÿ¶Q«ZÊñ£}±ÄqÅì6ýg[pÁ[Y®‡>\C%î#‹&ÚݽÑ2÷üg\xÈ5uŸ<@d¶l€Ý@&Þ<V12Ǫ„¦?‡Ï[eZa·Ÿ—’?ßÿÑmžÖ½ß¬†MwNsæÊÆî×»ètÆÔ̶!ô
 ÓN?‡K1¢f?Š£0‘6ºOÚ´Ä̅
úí*àßB¼`ð™ÝáN¯õ·ï?€Ühj!‚ãÖàáSƒ2#’u¿Š˜ÖÌX?—Vƒ[MËF?<B¬Ô"³…
×$SաߍTc¥æ»Ü¿‹ñÀ¦x0ɹÒFø
¬ÊWv:œºõÚ(HžtßRx
+lÙhÇÛZ.û§HˆuuK׼잺ûa=‡x‡ªRÎÒZûÝ&z!ø€äM’" ã$…«µ‚ŽØ¸‡ÎHt
45C£Qc`¯À˜e‚û]4•k-íâ+¨­s©£}Ü(¥kZú…
‚”ã#žˆsïôÛ7KŠÀdOˆ4ûøÚXqåRÑGjË¡4\*~L'#x¤7 X™i„“‹–YnÙm#´Õíø¨´&? 
O7ºNæîã>UË¢´;Áãmä'§X0‡ew‚£/¤¶HÊ㻸fd+>ãS˜Ó,""…y
Vršœé#,ÝS˜ìԇ~IBioÑàcÑÔÖ2éDŠÂXWÓÂOÀOÑ¢MÃ1׈ß.€8ÀH3íÿðŸ™sÁnÓlÈ 
f¶\Ⱦ<d"þ§ s
“ÅË)¯†ƒ|¥Nèz¢ëœdÙI½Õ€04_äK€–UNMåΌß|,ªØ1¿yËÛ{¦ 
¨Ø˜‡øÁš¦H]8þ‘ǹ8\ß2ËÌ6‚‚-ùSqТ6)æ(<k®'address@hidden;îîpîƒ[ 
5ÊÑù¼R¥XZvD‚O͉û€· fPÀ ®^œ1BMÐör`}=¶×Ûp
^<ǵps\Cðñ¾¨ô’´»{LÛ£³œïÊØFUÂB³Œm\¨™2*VBøbh*r{ÓòA·>Å¥ 
¶Ô¸(2׳$µu-é{ïŽ\Ø*;¶Éü,##ݕuˆMC¯<ÇDŽqùã;ãMJYÚd+§›^nììⲬ€fs¬2¤‚/¹æµHo¡7?æ
 address@hidden@ªªêãwñÖEJK˜«êÄU›î3\væk%fÙ^¡Z^ÙºÅ.,        
²M¦ÑၔcJ¤¸»¿‰€ñ΅œ”êJ   "»fNÁ&„\:h‡tvt›°-Úêvw¬Jª}¼€!ôvyú¥º 
¬¹1ì¹¼€þªºKku—Ö^¯»hà‚7Ö0˜Ö]¼góyöýÓ:Ên°¯hÌ8.äCJs>T,ÿøðÍ>ó…
ó}wMŽj>QˆZÈgì\€È÷Ù|û}¸\4}ýkˆ`Ž%åú—ÚÌÛÕ°â´àJ(³Ú6Bì8l?qhã‚Àó#³çˆQè8Wguҋ¦>Û&Ïuâ-èHá`W1uDm¦åÛ#¸´˜‘Žœ©_E©±þÍYàû-³½I^ËP€X-8´t‡Ïc
SIzüûióU;N”ÃޘÿŽ½s¡ê>§¸¦ÐVÄ``í_o¾ý+*ç?÷§ÄÐ1E§F1:¿œúXdWÿ5L7±^?Or/q[Á4lü†Á́Z³”“Ã#—b®0ü—Èi‹d8®C‘’”
 Úi°Òà‰·3Y¥«6•-Ê'á ŽÞ$Ïx
D®Ùî§í**ÊØÐNµÈ¢T°\3»a­AûB‹!)û   A       
„¸ØôÀb¼I^Y(8ŽTg€@"™t=|™’AŒæåò»¬g;ÂúÎåz9z7óv*5;}×Öù/‘„      
M¿íû‡ßÀ’ÇßÀ'=6᪴‚{øH˜’âҖÆÕ®󆔦šy_+™†Ó­6éVÏ å
©ƒt¼ˆpL7æÆ[Zå¸Bå8µ5„‚¯Ã*r+0/æÃ"u\JH,·a¢ ÔÈ°œèPwG͓à1¸/address@hidden,3HA 
•)ag¤–)¥ÖÀÕÛ4¼k£XjÌ“à”…‚,j§÷X§àW,f<address@hidden|b*HE}´ï»uÈ 
bԂëšöUà’Näžñí¿±m]e\­RÃé´?ô¡äy®äìò/=%0™ÿöX˜Àöª_]Ù\¼•R…
`KÿŒAÊJ²EJyagÿý–UpC´Âïý2–,h”‰kz%¡J™é#906A›J@
ñž··í6ÑÌ~tò…k²Àn|M§Èè"¥f©ÔêRÅæø8l?G½Î,FÆôYJ–“<J%üŽ+d-gGáW¦öÈñ2žR»Ô 
í7‘Ö¬õ'Åߔƒ¥ÚÏ6>®™T„CÎ:)ð¼í֗ë.ì"R¦ÆîÞb4§V4\Ææf")address@hidden
+dZ°¬î
+%ßTUDä,g8¯‡?­œ¾JH¥0•ÌÒW[E 
5iFâ.,/©–§ÒÀGT–û~Ù_£©µÌSa;¹Ð©PòýòܟDZÄÃïžù¢¨Š|ùžÑMªSâ¹è6³ÊØh+È'†mÖ`V–~þ‚SB’!‰+“/*J侖˱±ù.\ÊÁßS–c^©ÔßÞß+ûJ¬`v¢-‹íBïzª7LÊøߤ7ú?†˜~¡(–|²,uù>ñÈàg%í
’e4#5¶Ã¸ºPx“:IMð¡… Á
ÑåÐ¥B¡PLt²Ù及¯oˆâpvð‘X|ÅM¹£Ü¬Œ‡-w”ïØúö\ëû#·ÌÒÜâµXeå¤óH£4ؐœJ4õ,]œ2T› 
æ°z¤˜ƒuD*dá‚i»;vQ»•26È —ÇÓ¾§K#o|ë&ïl¦[_HØmÚqèI·?ï[eyt±
„ƒJŠOÄd))÷¥KÁƒ+õÊdÉ{) 4×i;|‰u0ì ðDäý‰bšn¸ðF1PåÒ3 ‡¢Ì8ó,5
+²êî+S…}ù3KLr®ŸR§–϶ïcJZÖI>ÚèÙv~ÄjôÐÃhÏI]€Š×}LSXnÚo|x        
M»a|1ÊgmQèÕd |'/­9õEݼÁ
«4ބ¼Ú0r(;¸‚õZÌuÅ¼ÙÎËò¸¾‘… ô$à›º™¦ã˜vf:„
+žª²‚ž4.4úRl€ägÖfý“i¥âw.„áL±ÈY}îâ"ºyM,ųti¸7Àg:`-GUpÈB‘F±óÆÚ8j‹ZåÅ®+Åm™·¹x#-GûóuVQ_®×
   /¯æTY¡µŠ×Õ8š¸„6ÍwŽLµœ;µsØÅJ¨Ý÷Ö¶©ZQezf x‘­q¦èDd°l"€8.Ê©BN     
   eõÔ Yºu=K°Æbt³£.?¸GÍ®Yšš‰c i
+°(!ÿ«ê™Q¬fK%çUOJÁö¤…ÏèÃ4(2ŒN™Ç…Ü`žåBjàå«ðÊNf›öÃ8iF€êä>±c^z…
ÒuÍu¥œ(ßü×|RÎiI
ìÙ$óù$læÍRì0͚¥-¶®Ý}D¥L£©iÊl€à%€Ag^>–YÌÄÙ±kߚ     ZQñïL˜q_ñ2½àx`Ê÷Ê"_`?υ
r¬Î0‚ýCÉS€¤e6JæBÎË ô(ÓJˆ7ëd•ÄpÓr­·ë±ÂÂj 
é•f•öý†ÀZ;~›º8'ÉpXE¾«UR¨;œ':ößD«ÇÊû@(m&XN‹ÔA¦FFšzšÂǸ5;ŽÝJfÀ>‘dx}Œ#
+~Àk…I_vÜý¬Y£®á¾ÈÚÄIðe-ç¬Îªí¥:k©n{9³°©2~:ôÔñȲ!ŽƒsûdC—¯„¡
Ž¹™Õ”í¼>?Þû7W7¼×í.ãb
+¿²     ûÈËÂq.Ã+™$ÿxZˁp¸
+Ór“Ý+–›Bª!AE;ž!+2ÿŸB¾4±óò̜˜(üg @JŅ–ê¾Ùß™ZҕT?3Òî g   ÿ.÷LÖ 
Ç96VCÅ^>·…[‰שãßã%]“ÆêmžÞíÒÈâDƒù•€¸’Ý;6{JNӀŠÈCoæX­d#
+5Õô¸×ÂsimKÍ^©²²ò*CӐÿj•]àÄ`Øéà·sið›ÆF"¦”óޛ8“€ÀûpW´æ³ôìܕx‡©+BZs¡lÙÇðIåրYš”Ÿ«ÙbOàrÍÖºMàb͝m–ó5ØùyíðïOû¹X£ÒœVÄh鳕Ä4ÛðÛFd}ÿ8éoJÃmNVY›4J1KÅé#ýœÚڔÇj
ïâpÜëõÌxpáðr8ö³
+ÿº/Ç´÷iwÙ`KñoäËڗ2š(¤j§5«Ù¼ƒ”—‡Ø
+%Ø_înÿ~ƒÿübHIendstream
+endobj
+170 0 obj
+4287
+endobj
+173 0 obj
+<</Length 174 0 R/Filter /FlateDecode>>
+stream
+xœ­[I“ÛF²¾kü#:address@hidden'kɬ’-yÂ9Ð`¡*—/¿\ê÷ÖðþËÿ®¶o~óû
ÏðŸÕöæoþþž»ßx#Œºyx|“~Ào¸aq7Vš†™›‡í›oûÛÃÿÃûÊÖï×X%üæaýæÛ·?~÷óÃïËZ6Êr“ÿ 
›ðŒkxÆ\~vÿ¼z÷s|[ùÆH™ÿðîí¿üžJÝxkðý·ïþùÏýtÿö»ð'KŽ¿x¸÷Sx*|#­Ðùé‡oï~ûáoiÛÖßXXq¶}',o¤p7ð?p˜´ŸÇð¦mŒU—8<wq㲱ΩüpØm>ǧÎîy~úr_òS#éÃŒÓÃø%×8ˤ¹ô¥÷?¿ÇE*†ú#Š~,™ÍÚ}xæí¬Ág‡!=SÆqÔÏjH[T
+wÏbí½—6³j_ڏý¦?DÕðÆ(úS\^æ^â£Û¨V¦ó8v/IšpH0*Ôè¶ÛïÛ§øþPŒÐÜÜÁa¬÷.ïf3
wt”é£áB]R*÷Šá'»íK<w íΟ¡IjâÚy|ë_ûc»É¶
óÚÖç
Z)ï’Àú.êG©ÆIãQýf“O`,)÷u'8Œínÿ؍Ý:¾Î魞Øç
7÷Ҏxb¯ÄÄ
+9ü˜ÓÂ-º€ ŸÞ´ãS7&E€Skð‰"’Iù†sfñ7ÝØúawK–Bz=<ǧgúƒ&Õµ»u–†g×Ùc<½à¶ôtÁ†ñ·
0BØS+ù
+3«
address@hidden@ w
g:ÝzK÷ˆ‡gÓß»ÃqÜõ»§(Bø²dÃâf0<ªÍ1&š.m* 
€$•4y¹I€¸S¼V‚шøžk2¨XN¸÷ðŒ{—Ž|dµé»äµ÷ {ÜwúŽœ– ­ñÔo—¶l\Ê$«®ÿ?
+p¡4Ù"úƒt'°NÒˆDºá–|çq¶Ké„bß/íÏ5š;²ÚÝؓ3܏c÷Ԏë
€]Ž™R1ükÿˆŽåZo_8¢)Ìõ»u¿jdÃ4¹ÅcÛoŽcFQŠ“ñ¸È.“Á 
?¹?®V°—[²-²Æôa0ZëI²ä`xèán8E•?²ÀnðC]rw"ì–OÕ’V=ƒ…:R 
ê¯c÷øëjØ~]'í:Õ&ÑöcނäÐÃçE’€6´Í*æHæGŸLŽîU 
¯i¯w’Asœà|Îå͟²yIrΡs#‚iFfùËÒ
¸•e(ÞÛ¬9/Vô2¦íŒF}}ê×#€ù‚Åò¹ª,?ĒÝ*þ       ü¬‹¤=ìò $à¶ß-ŸG¸€éø±÷Kç      
Øȍ©½â„q«ÀŒ-L=ãI¿§F°PkL4\p²‘]`„×ȁ·P
7Ô"U·ï·/address@hidden@address@hidden&ÝïÇ>Çr!<­öZÂC¡SÞü‚XpU%å̆…Óæv 
ȊÁ¾E‘Øx&*ófðV‰
+þbTSÅS\p—€†Üã*ÂW’
+ñgPìKJ\eŸ¡”ë×X†Ñ8±%`؞>‰4LÁyKÛ™æ(íȅ
Ía’‰Wœ4‘ä„ïs§Æ©Á!¿Ô©ÈiO˜5çöL—sí£Жzô$«,¾»îÚý~ÈïrSî1TF¬"'address@hidden
 
2o²SÌqóv¬ŠvŸ#”2]¢J»Hâà×RqÜÏbx\ƒ€Ÿ»Í:Vj>ÁdиäÄÚýoù=Ȉí‡,%B"xy†pCbFÃr<=ë‚~ðÊú<Ťe]à†Á
 Ïå†Ü´Ú³1ÎÍöì Ÿ!óÏ벐©PÚ´ÙãÏácœô´Muëåè
+é4˜´ŠÑÕ$SüG·j©T!„
+îgÆÊ-UÎ^ù­é±eôÛI…¡ò[ÝhPì,LÃ
+‚^ƨÛB8Ÿµi]emÅç!‘”]U>ºò$Ðâó³”)OÊßS¥Èp)PT™!îïs2Zؽ•ŽëB}ˆTõ9E`!„>ͬAøIjS=q‰mÉ?²n!m1·òLύÑë²ä'
     À(‘=tãc»ên³s3'æ&x@   ”Ê…•‰¿ÒÂR—0vžúK6äJEïBÞw]·>=¦Z9ª¾e‘
      îõüJ2<address@hidden  Ô«¸øûEgƒHÝášP«b÷Ì,ؽe¯°ûºZ1và»ëlÞêRb
+å–Òã9ï‹`÷*.œS—ćÀ£p+Ïm1}EêI
+ÜÑOS\ a¾”a!Í;$GWà“ê‹
+ᑀ=Û؁§ù›qhò¯iðK©Á¸p§éè
address@hidden|".>/¬yš‰AN«æ¥-¤ä/‡%    
;tZ~”³ñÕd-Û6¹œ\—:ý²$÷’_u^Ž‡uÅtßaÕט‚„(PY=Ú)X 
Å}ZÐovEØTM¯„È6úâk“Êùï»ýqƒÖ;    áJ„Ò?êҖaoO¹4.ÃNXÒ4ø‚‚V bW
+Z¶`Až·êF<céPVÒŸ3±.¨°BéIŠx#ž2-.XόŸO3³àvý.–r£ =‘¥’Íç\ÌjŸ'…
;#‰Ÿu=ƹ;JòvRLY÷ë|2é])2ˆÒI$?‘¿á'Š““"RÕË°bnÒ¾QÒ®[Œj%Ÿ)yœV¦êq|A=Þ]WOü½¢Dî’Ùjtm*ûn³_ùKÛBŽ”«íæÏÜI`¨Ì#G-‚-"ü²*8ÍT¹ŒqÞàÊï–W1è>gl`9~b%Ô7.ïfv29äWØI€’%;ªCü+Wq•-ùçùºiàûòФÓ¦IZžsjˆR~zKù‘d'¹†m
 'tSSXw¡Œ‹Šã       
-IƳl’)ÆkØrÉYêb€å‚¬¿Ê“ú뗹µk¬&#;W7-LÊñIíPG2?—SñLÖ½Û:½Çü)¬9‹Q†d¸‚/ZœP!  
¾(˜‰³R/鬷š+ÞÍÔNmòN
+0r^cwÖ²°œÏ£FHðå’a^K‚Ï'î…6œÃÐœ=ñK žöšE¤tK‡šô̂¥/|address@hidden
rlQՐ†Ä¤ÑjÌu)¶%Ê;8lB¹À¥áDʓ¥OªŽÉJÁ©iZ$uÀDÛpQªv%å.”-–ŠÃ        
“’ßgìbðP^•Føšá_hêq¹ÚÛXó–ëÌEÈaí%kœ–‘2H>/óE©é‹Í›§¡Ýd        1B§ó¥¿¸µic 
Âhí¸©©5Îφ¦rŠ>Õ¿†m•õv‹Š€Ö\Ñ/uY̹ÁjŠu]
+º¥M’«iqó±ËDuçÃ>ËɗßϋڡN;c 
*ê–‹t€x`E:æ2ꟀŽçñéC§¢Þôt$"÷¶,/c#OîÍpl„‡™Ÿé¸PlšRj´Åš
+ô^•’©é—\ÕE[}‘Ú̦NÒOòÊ6×ÝcV¤¼ÔsR
+”L»dZê¹I\)ÃLª1™”>Vã¤aàyFjW囡ÍJù£¸¨†´Öë>¤RÉ]ùzÉfÂÈ]?è1ˆÚK’¥¡°ªÚHx•Ë#wçímˆ/ÁéÙI±P‡/JZÚK¿Ûº6g™¡‘Kçü‘ü-ԟOvŽ¯uŸÑ–a”n¤t§ô¾ú¬/›òvZ=
c2™Ê±Ò¾;.´X±ðQ‚j8T°LÏóø¾;ÄÛdQ¢Ÿ/¥o„Šµ9a/
++ba2ÍOh0EA©ÏÅa    
”Ž‰¹.AJø.d•ëMnSƒkòåw;kSè\éñĪ4Çâåd+V+éOe§LE[PLμÊë¦å³c5gç!–ð…
±9î)8åÞEü£6/$#y_œÇÔàk÷Ӂ¢5wYFL”*êiRoy¤‘î® Ï)<*KðXY5¯dÿ<lÖi4'0QSa
¢¡-ÃPú%FMIôe‰(qV"^¿B"·™tŠ¢Ù<F›9ªT—'îö¹^k«ÒœÙ‹+Ý&4GWyÆþ¹Éï§ççZ4 
g00ˆÇEÒ[±Œ¸ùø]§u§âÜ7YÝBßÉ_`+'
ÕX7¨Öƌ/p=5ãPuHŽ\”%à[›<n0
address@hidden/address@hidden àj&˜š:–aÞ×f¶£q††¼ó(œÛˆ£ÒäÕԘ”
À_©à`äÏÓ‡±£âÂ$Œ<ã^u›MŒ’ñóš…
)vº#ðˆ’,oÑ_|™ÉÁAyHΛÇMøq•„ÏuëÄ*9ÙÀ"«¼d¡yñF0m.53?¶«Snð[Ry=XŒTfÒ2ò|˜(mkÅq`v6ÄôhÑ"€¨Uܑ
˜—½Ýþ0
7ê„è¦ÒåSšlž`"4ÖŽÅ* WaŒìﻺxSêü™Ü…ÃÑ Ql 
¢NÀá$Q'ÄÍ_‡ºÈh=œ>+ý\W”³JN§¬¢ÏƚŽêÂ뙸ÀkBK[Ls‘‰ØXðµ±å`)
};uýã¼
aábo?´K3VKGÃ/›vU†ñɹyU΋Óú
.Oysõ©]4=×/€©pb¡>,\+ztý
+³Oñ
+X‘bóTŸ‡
+m¡º!IøëòD#(
ô,LåáêÂ۟¬«Å"
address@hidden  hÀ=„"E?÷֊­¢N#žŒÑ›^…ë`ß5ò/7«?ñú–ϺۯÆþc6cÇi_9M
Up1µßˆaóє8Ý"_§ÓñJªòçAJ        V§Ë„ÖjØ­6G§V.¾¡^Ú±}ۗç»   
=AϏ¥Ú#/Ô咰Ã01ޒëV¬lK,íü$ˆ‡
+ÁIŒÍ·~«IŒn¡þE¾3<ò4ƒ
+ª"
+ÓÙ´
+ð) ~Ù>KaiƒÓÙ ½‡EÂy'address@hidden@†ídaˇlØÎPѸѲ…
§t¥g+‰?ì»Õ‘*P¶Àâ0–EÉ5‡ÇíaJÂëRý 
KYw€MȽªjðÒ8DUmDQå‚]Ù¬â´Ë\ì˜ød¾$¶Ç¯ñò¤Êr’|¹.½¤u{ÀÙ¦É%Îë«n`„F}jDʗäIDÀ|ë"t–{5ûqfÊævºP6ŸO0;Y˜Ôb)}ÿ<Œ‡n•tS†À>address@hidden;¢V{QJty±ê¦U¾d("å÷t«Õ‚òK’îðª0LÉÆÕ”KZ­Æ‘Q斫ÒÕ+0dKÁõœ-󓓁/
…‹ä>à/âÝ1
+vxÑKHWf}ñ¾UÕþ¡F÷'Sƒ¡yæzÞ€ŽÉª¯H ç7̦.½U&–àô+ßü;× 
À”;¥u#Ä^Y/`ju#ƒT‡TT¡Ä‚*‚K”»ºXఎàzÛïúmâ¢w’¹t帠
à¹q°Î„`¬d?ñI¥’‰™tjJS‘3®v†(Nûl;ŒŒ•»”öµUzšÆ+#ä€KÝ×Ò˪V\
ãØ­»nŸPZ¨{ªm¿;address@hidden)/Wçœe¥R|Æ
¦Õ¾¼lú<s¥Ã5Y;·QU¢rnÖ^f®îË=jréϧJÌy#XP9æ7;,´‰’QѤ,¯°î㦋Rn*¸ñsC–á¶÷i¸Òì¿ÅŠ“W»²¡3à{K•^&ú
 Ë}´yªl˜
+­Ýì¼ä¦–IT͆,Ïo¼ÊŸrÍØÒýiǐ5‘½ÒÐq»/s
+ôðœÒpå.>9_UQÃZLÈmÔ5[ÂÅB8!´é‘zjE±žj†BfGã<]‹—x±É%ë9bè1å¢cönþ÷Møï?uøendstream
+endobj
+174 0 obj
+4926
+endobj
+177 0 obj
+<</Length 178 0 R/Filter /FlateDecode>>
+stream
+xœµ[YoäÆ~_øG(o6 Ñì‹Ýý¬‡$±ö…
š¡$fg†2ÉYYÿ>address@hidden(²:¾úê˜?®ÊB\•á¿ôïîøá\‰éþ³;^ýtûáÇß´½ò…
¯d¥¯nï?ļT^^YUeuu{üð½*DñÃí>Hø-*xëvÿáûŸ?þczX•ð&=üøÓ§¿}ºýôëïáO?þ&\¾ƒt¾pÖ¥W¥ïÜ(¥ŠJù«iáÍé/·áU¡Œ*Uz¹|a¼"=:ŸöM?ŒõiþfT¡]åÓߞÃ3!m%.ñ—ð¦”éÉøØL¯¹BW_{ê»±K·­}½ëÓ»UaÆ#´ÃôLÊk¼Ö¡n÷I.V{‹ç?Ó«dŠ¬ãת0ºÂmÚ1­(­‘´ËõôPFhtºö|—÷]{{õMêø¥¢ÄGC³;÷MԈ~o„Ì7ԒÔwwçaÚNÁvÞØ7
…|4¢´ÂM»«‰>&éÙÂU%ׄû+]Ùm3‘…Ìͤž'MQ‚iÑ)·(\P¶–tæéûÂ/édÃÐÞ&    +       
!s}è’jµ”(âç¾;=L¯–EéHDé`7
+ì_I–çE]:8ÂR—àîžt¹ïÒ3ëKž5¨_W94¡S7&address@hidden
hÐ|ےu?¶»ö)address@hidden"ºï‡Ž,Ôö<$G«¤c       address@hidden(ðò› 
n7Cú^¤E4!Íçï[°ãÉÁNœ$16ðø”lX8ýŠlºS²ÉÌ,È4h‹`ó´<í“e”‚6zUAht¥"ÙwŸ(address@hidden"k§oã’æÚè[àFª(37‚óÕ}ýôAÔh`‹ü:¹¨l)Q"ußvçéÜÒä‡È·kNáoѸà©âOš´ð¸ôp~xh†±Ù'±¯
  
½‰_HWÀ*à¸³Õå!L°ý±ëšw$Ì)+œ5Ž¢jþ|"g”ˆ„Í.ݺÜzÛSZÅç_SN}·Fž.ÊØBäÖ¹ØM°
+:híÕ¥ÞŽE
address@hidden@ôè4KDJA^¾ëŽO‡flʕNã‰í0^ÓÙáïRì‡eXÛ•Âь${ÄÈÑÒp„ŞKEÛÞºÖàԊEA)+Á‚¼_£(>ݯÏð²ÖMw^Çwí½
 ѾéF”µr    Ibô¨N’§ZO\     Ýo¯.ïyׇº=]'¿‘¤MPQÂmå(address@hidden;
€ù¨„‡Ôö0Ekår:$µÁ»ÒûÌ|Ž±HAJN`œLíÐ~‰âƒëª’«è•6&ëŸL׳xzBÅ9Ú¾©1K)(l¢ƒ—ÊjZ³!±8Í:JÖLÞëeÈ
+²6øpß»¾}ÛCƒªèÄ)address@hidden@tƒ¬è¦õ>âÔ1 address@hidden;tÅ»ø–‡¨LÐÛà 
’iCˆŠØ 
¢¤I–¬b"¬ËZá˜8·áÐMIœµ>Շ—!ڐViôeJԌôÎ/эt‹l³±­$üJ°½ÜÝD}YÒ»™¾W,ýÐÁÒoM½'¿Ù°G)9àÌ/£Øuv
 Ôûó!‘ó²p¥G       D">•‘pb*ÒÎycð=M”î÷úÚî>ÝQ*w|B§`Èíú1)BL§­ 
Û†”ÚžÀ&÷©Bô¥°Äîc¦Çä¢ÐAÐàneL¨»µ?_§›(ÂL᪐ÂáÃc—È
+‡Qì›.wH9¨2š‚JR‚hB½¤Œ¬ÕˆY8
+<Ö+±Ð$Ã$¬ç¸š³Š²ë¿   ÄáÓ¬
+q#*àHp“—‰> RC2‰+Mÿ5ùP1tÁ¢óâÉD»ðËß·ö
™´eV×F›YÕHBaddress@hidden)û w’ò€ìÌó¡ address@hidden'¨Ú7Ç«N¬Èâ‡çS"¢ÀLI
+ŸˆhòZHŸµÎ£éØ"*Áٝ &4>ö!'0"°’׈êenù×͸_AÎ¥ 
address@hidden)address@hidden@úÕؐë“õìê§!1W[.J3.>6‘·Â›TŸÃ´p¿$õÍ¡©‡f?y&äÉRӟ>†HïÉeRyáÊM=>¦À"address@hidden
+B¾­fX‹ÕÌW±Z²šj®ÃPúØö99§Ô›K¼©>]qÑsãül)²rœcn
|¤(íܧhRrvÕ"éBmÈ'óÈKN™WïðnÁÜ֚WÒ/èt
»6èœí˵Z•øÍ#[ó6Œñ¤FDf×address@hidden AÙÿc‚Tî%A7Àlƒ{address@hidden      
Пۘf/㸟¸ƒñäøÙ=E~ϛP€÷bÁÂÞº¯)„¥û¶Àœ÷m=6)ÖEE–pMÛzfhl–ËÞX++GXqɁ*`£^¡¶°qOƒV
address@hidden
+vä²¼2¥쐎Œ[±¿DÝÏR¢ëLƑhZ.¢í    
ù~iIבÔ;À^®‚TÂc)—™Á,'J&y`•¥/÷h~¶\)address@hidden(ê°FÕÀfUkò/½EÙڂQ-Ìë„Vseƒ€s¹D‚'æ`‰ñA"6wIi!!ªüZJçOۇ›
 ÷:9?ðóeDא&QØ®ÏzF]b*öùÂõ
ÍÐwÄÜB
+¿Á† ÌВ¡Ò\l±Íé+°oìëHj¨“¡°Q¿
u6ÃîÐ6èUE2nÑßPy1µ?ohª”R¹—#9œÒq/š·5\YDm€8*Oå24C°Èâ33¤XIÔ>•
VŒ=¸à«„Ô¢)çOõ°YÁ2&address@hidden/é\†«;ћW{ª(mÞ¸šecŶ¦Î(¿¤i‘5¢û®N3«ÿrag©¶NìÅò¿
 Ñ$À¦ï»>¼’ŠŸÏÔò\%ì_ÎÁ̹‘¾U/6Œ˜œÕӏÀ
+ê‡|‚{qÕÍgk¾_˪+P|þU]ÿyT¥ˆR™:´Êw1¦¼Úr‘솬M{«ÎúËÉ    
à0܊¯©CÈ]!ÌÜ'JNXŽ©{(’sµÉ²EYæ¹¼-ð3—×ÛH3õaÀ(address@hidden)c*9Îë`—¢ü7›1’KïÇúÑ*õÛ$\<Ƕ¸te,ք˜ž˜¼öÕ¤µ!xk†1lxæŒ)Ò»uþ³C3e3#¼ËF*&C[àåÔðÅSðšŽÄé(Öù!’”nQ¼,Cu
…§
+Öû46ý®"UVª0ÕršdZ—Ces¤‹‹°ñ‚ïPW6Lè(¬=ŠË¼£>
ÏI^YQ±é×Zìð"ÖÐE^Öd³;c[Cpõ9k([žŠ¤ÓR0r6ªe£—ŽˆC;\‘­/šê       [Éæ…
W2ÉxÞæ4Â[ð1qð—ðæ¯_“(\¥:¤gÇsêÞIJ™Y~¶„hšæz;¼}¾à 
3Ïú>ïp8¦®BβÕ­}Sïc10Ԋ0R£V»¬vÍê|£ÒfŨ&¶·Á¨²Ù£ËŒJéWÕ<®}þ!¼ÏclFyLÆ5d¤¸Œ'¬Ê.ÈÐ$¸øÕBùÎJѝ¹Œd˺
$±Œ2Za¸¬µ1Òµƒ¼
+¹伄WœhR—NØÆШà:TÀFH›/”æ)éTš¯r߄$W扯!°VÍâúRU¡P©ÔÂÌçÛÎùúû*óx®Ð[3ˎÁ{ªè"Teߨ¢û¬Š¾©
6ú’Áußc{bÂí²ü'YÇʇC
+FÖòÆH:5½ü,ñ›æ%ÊewnèƒÓÜ[Éó:ì…þm/ªf®Ùù‘CßWéN%YÊ*š©8‡Æ€¥Þ›ÿ„De•ÿ„bü*ÿ   
1¦äVְފäÒ}’ק_6s”HlÝkf4ã,¦
WÚdÑo¤(
~¢ø0¯à_»d–£iãzæ(Óđ
e“l^.OUò©ÊÔ~ÝHU€‘m¦*³q­©ÊlÍwSˆÎ)â/©âJyYÅqÏõ˜l¨§ñ²©.”ÈJ;address@hidden|j*´ò¼`T£ög9ÝEö›Ï˦j;ˆ‘y×=µ±Ð¬àŠ¸ÛpÞ
…°G-|€K¶)O™Òˬô•®—oü¹À!Ý8pøÕÿ`…z‘§Ym
£Øo{¨}ËCÅÖE„àÚæ}ô"ôÊZfÃñ6Ufƒ[¸P.¼Ä-ÔÄíæ×Æٸ8m§æ/7Øâ]ÀÆdá
G‹¾€ùïÈ͝âO†çD!°Ñ]CïbŸÎ
+ësÃ(Þ`#,†ÞÅ7ÂÂÔµ ã˜=TéN‰œ¢ëß7}sÚÅÑÂ0äÆ\–A3+Ê­| 
TÙp«‰¾[0l.Ñ15,}6qÔbÑpÓ*#¯\¿lO»Ãy?EàÜ¡ß(õÍ/,ø2·âOd©<ºP·§q}|·®C½ëm]‡Ÿ·|‹®¯£R
 þñÐOÒµ¶N½9©CsRÎj_¡¼Ã«}º§/I0›ì¥ Å{,G†Æ{¥Z ;H—Ü, 
ÏÍ£Ú0/ÝÌmºSÍÐѦÃdF£té}5¡kŽO<xOd|cÈt.‘€ï1­xA ÌJ-sU‘Ð|‹F×ÕÌ
+ÀÓû¼šù÷û¤!,ŸòܧZM˜ç±Î͂Ê|
â8ü‰,fÀÆc§¦á®ý¼ˆz’j;\‡vÄE°hTy˨ð)ŽBP44æKՄÌølj®¾[M%/‰#MM/^9PÝiv#rÃj‰¨A«ÙÝÖAúåü|òyjá‰ÊgõƎ\ºTëÌ64eˆß¼)
 4ë±N‡(
Áð0öçÝx†¸V$W¶<Éu*ÉS›£€QÀyáëÒÌjhøjþ]Ëëó½!MâùÞo®ÃºŠ‡^7)Ót‰5\šãßJ̄÷^«’N†.f…
7g€úæsÛãtRfƒ)ˆ£Ë—ü£96¹ŒPß7ÏL±xuh°„c™£ðíÂlý»¢Ó/+    
address@hidden&QI"Ám¦zìŽíÉ0 
Ž‘óiéÛfÎ4™|HÁ¹}¿9»‰9Sè™ZjOàL€ÔB8dY³8PšvJ¿ÉÁiaŸw…ëØ[þõöêŸÂÿ-
ý<endstream
+endobj
+178 0 obj
+4391
+endobj
+181 0 obj
+<</Length 182 0 R/Filter /FlateDecode>>
+stream
+xœµ[Isܸ¾»æG(§ÌTI
v¹9²«¢CƓ±R¹øBwS'½ÈÝ-«üï󰼐D/šLÊWQlxË÷¾·àëkøóÿÒÿ‹õ›¯o¾^ñð
ÿ[¬¯þvÿæ/¿òöÊ5Σ®îÞÄð+nXcÚ++MÃÌÕýú͏Bütÿ¼¯lù¾i«„€ßÜ/ßüxû÷·¿Ü¿ÿÕ¿¨e£,7é²ñϸ†g¬MÏî~†Wo~
       o+×)Ó>ܾÿøÑ?•ºqÖàû·þñý|wûÖÿÉÀR†ã/îï>üìŸ
+×H+tzúéÇ»_n?ý·-y¹íÉۆ‹öêFXxyìòáÒشƲ߆Mw¶›p*×pÎqG‡nÿŸ´úH(B5BHžÞzWÛ°Pëð+C¿oµçÚ¢tqƒ¬‘­Æ
.VC¶ÆA„F+ÜZm_¦qZküèm틜7LJ\åq»Z†      
ÐS(ØÎ?ùiÎÅD~ï}Ø<lÓÞ´jQl‹î)<„˜Ä‡Û]mË`2œé‰(g[6’D¾§ë8ß· 
98#CíÃÇn$X˜ÐòêÎN%ÌmӚë¤ß6­3(„m<ƒO1EËK¹ÆkÅðå}ƒg2¸î&>Sæ´À°Ž«XÕґö‡¸_зôî¢C½3CbüÒÒ
      „a¤†Ã>}ÊHú9iL4L“ÆîÞ5é÷®µ¸è»þ)=´JáöûÍrØ| 'ð2J6úÉøT/ÑD§Ê½‘`Ë1$ÿº~ 
ÆÈU®“Ÿjfó“6ÀÀq+Ý>address@hidden,¾û½b8ñ-Ž;ê‹þéÐ/ƒáq¿W‡š9õwŸ‡UÜp0zÿ{´]U|/¬;address@hidden
 
@~Nàûü”P?ñ9ŠGX'Ë€Wµƒ¸ÏÁÙFwÛ´¬j8™ÀF+˜œÉMd¹íú‡~×o}’³ËŠ^ÑY%38›~]‘7ZJr§]R!(ZN͇ÙÒ|®ÞZEO»Íe&address@hidden)hFI¸
 ^|ö´Û’|ɑý~£–ðê¦çYy\‘òŠð %Í²ïá±m4*»âðÃ"Ç\°Eò?'í·
+#­”Ãeš*+°?ˆr7à–RLHÐfs½~-)ªs}˜”y[å`ž\걁yXÎü    …êà{ä<ÿGn"d     
¸Uj¢ÀcU¦&Ã>íÚåý¢ßt»!`lŽümV¦(ÌeÃa¢ðún”MêÂ|“++FÎcŸ/kò²û~÷-=•6Gïðˆ{´&m,¾>»hçÒ{%½ƒªÌ
 `„²›Ñ%w0s¶€˜³%{       [ÒíI/ë6Ñ°bFPØw»Õ÷´
ÃZ`
+DRÃR3(„ðLv\+Î11\Ð*®·Ž¯Á)é«ÏûC
+)šG!)•Ö™Ó<v‡$WÈh‘Í2E|`5ʨ‰a+f9:o7© t…
Ãɜ#CŠh¥Övò½™“Ì)>qúî»ìôàÈ‹%#a®†oHk”Ãwû=&SRíº{¨íÃùÝ,^°¤Ò™]yŽI»º€…
'Ѐ=BCÙ&¾`µhÇ=2¬³|JœFªù,Eó’ÉClDpXp$N&UÃsª˜—–ì(·à€Ù—rÖ´\`³I蔭pNà{ºàœ˜dV¿ë¿>÷Ñê%ÈD|‰æç´$ž”ø-„ì¾ënÙ_§¨lŒ
 `ÚåW‰Xx!‡¡ºÖŽ…„7cJ·+ 
2ÓJ¢ôw]Ê\]ʜƒ®"e~è†Õ>Á”kÕ)Ïû>address@hidden,d{&4(Öl1uW< 
î;–ØùqW4ç]ѹ™+ŽP÷)åK²H‘Ó¨n·Œ¤7pE%Ú25FÊ#Y6Y°’—æ°À?ø,‡õÒ,‡5
o)‡Í~kÛ9­°E›<AŒ”]QŠc¤ÌcÂÔÙê0äA0S™ýᄃ­1CÛÝ&ðŠhc>address@hidden    
¦¥r¦-3˜O;±äèÂNe`<Ÿ+©Œgç܉)mg®SðþÓ<K3"+˜«Û2Ũ¦3Ç)–p¬Q¬"ã(pʘ
+N5>S%øJJ4À€|-å1ÑÑí7>±hG:@(é õú¼ê×)N¥°—¨™Ö‚7ŽÃó9'>–=
+'‹fø¡§Ãh<ð·(XîœÌšúNÆBÒZ¥t2Dg>±ÁÍN–„nñá²ÿ–¢vDÒûÕöiw
+Uðl™1ê梨+û܁Él|Ix1Ø,¼ª»u*—V
EŽûG £¢Ò=H´ð-Hòn åo_ÿ§ß3
¤BÙrX¦CƊgÃʒ¯dšœÐ
,¿)Éùäl–3âdŸ£^ÏQnÓæ`‹´d®0n*bRª¥,'61/ڃ1zdå€üSàU£ü©[÷ä]”T†uÿ§t(°aüÚš†±E%a¤j¨.Ÿy
)J–2Z·°Lzw·OiތÝX?)¸{sdSsôR£“Ll$ÇüÕ5µš’G¯Ê9Æy åòèŽDIXPñÙíó
+“(à£$˜uI8Ú¦ˆAX³)ԅ‘Ê’u¾Šf§Pçc•Â‡¹>Ë+q*¤ó(¾w5$W;.…
îэ¹\Ú7øR¨!]jǑ-x%dٖSÌ$T„Ü[KÅgÞY)w¬“9o<  Ѓ×_“À•`Óôir~ŸŒ*žÛš|±Aª  
     ?˜-äc“rü”$}˜Î¥cdm>7àh?èÈ:| ´*u‘t,i
+ÃsÒGôìIœ¯n¨9‰c¡m’¬gˆh4?t[Öª‡¶>\àòFñÍ7¶‘ÂÆE.½'¦çkfJ)}>AŽ-0     
32_ƒ`„vÈÑTÃrêU…À“¾³™ƒî&B®¯M¡CyÖ3M.}-ZÉXâÊڞ9{feJ\Gì(;Ž<       
«½˜LΩÚðVÂYÇú©}³PÏÀ”«¾68rŠIÕW©&—?‰‹M-L€[©ú'ઞù'8À² 
Qs,ɑ_|'>¹<YSã|7`ƍo¸Ý@@yÿ
#\ŽÅýû „;<w«Tpg“zRpÓnÔùIˆ~q)ˆEŸ¢ÄÄsV±èc‘É3Üæ×®s¹Ïå
address@hidden@`]kĘñ™îÂo¤ÀW
address@hidden
ßœïˆl}ç­;ÚҐ¡0w&ÓðFzºv'‚q§W~Øíº‡Ò<ÅJ<½ÈìMÁWš%ws?7é¢Ñj7/ªûÊμQ¦+<+¸ éLÒ:s…
õº_§£Wh/'-Wú¡Ãf±zÆ^´’À<Ù¼UÒà
YXxÖVfÌÀ0‘“ÐJ§¶‰c‹ù’Т)address@hidden
VSCå¹5zdbÓð<ªO´ЪgQ`TÕ^õa¦Bw.FG(óˆ<SIšWªI 
½[¦½C†S+ÊÁKê×Oغhüd×#„9ïK†“/uûÔâÚĉ/ª3?®“õ€Ln6Y`ÄéÉ°F—'address@hidden
®ŠÁú¸ÑËQ 
mOÑÃúÏqÏ\Æd€œ9”ß{ªóƒ\µµ£¼oRºRV±’aËB×T^-fŒÎ–Wõ|DhTØÊeH­¦eH?×bNVô^7¾ÒDÆh€0/Õ¶‰³v’X[CÙñbû¼ÛGw
-›<Ûó€tº•Ó©O.Þ„I¨q¼ŸâI%Ùm·ÚõÝ2üH>傋íӐ\ˆû1¢™ªÈ±òµ’#¾vÁO{¶O¡«3}_‚+û×
      
address@hidden,™«È×uh·D:)u‹–c¯šàf»[w+t¿¢UGƒ2žLƒ2õa®!ɃÍW§=ŠÐ×L{ø’„”Ò6›ö˜wy<êËÊ´‡Ñ¤B¹W¬¤]ôõX
Ø&(b}¬nÃó›u_3Ëj3JÔg<¬o<ɱ>Ç’ر”9/Áú¨õ½IŠrØdÀ—y’à(_4¿IvË|!»]õë4Ô´™Q
        åh›ƒ5Nä®á&address@hidden"Ähéx÷ñt:o[™<(æo/ i§G|Y.MŸðU‚}̈́/Ä\@
5¼”bh8É|ŗ\NØ#òËbžm4Ô¨lgC=²4°S'Yé8ù™Ö¹€|ËpÖqò‰Éَ“¯©àÖ«3„>²ls}`˒y»:<nŸ¿R’bv:îçÅCÌû”ã2AŽ{(k³$pmì*B%mêpDæ‡4Ú¡•]™Ãf•J½§£¹•M•zOH–x®rþå乊˜ESQœôuISüý_gˆÊ1ü3DÅ
Ó>CtXÑ#ywòM‚Lj%6æf-&îðÄ¥€˜•ò\(PƒÏÇEFÃǝª“Nêél’ÔŽ~V)ÈÓþpº<ítm<þð 
      address@hidden/KŸÌ{ý,û§Ÿšô5ÝRľËÓq$ÝjOw)¤-êÕXjc™       –hu
À§*"€ËєбQgF5ò“Ã`~F„†ÁöÅM°Ísµ†t­ûC9¤W:ý\f®žê» 
Pžëo±­ª$ÿ=iæÕãqðê”{e•žO´qn¢Å#ÁÍÑha¦5^¤ê'ptm}›4{r­œƒ W™Tkóý—§¹l÷ûáóŠfµò 
ÓÀïOŽÓœdrSaIǍ˜Ý1ˆÖA$å| ‘éú©‰Y=*V$ƒ
`XÒæJBæĒª%'Kõ¾‘&%añE4¹tŒÀÜ     
,wÛuÝÓý¸JÀqòôc³Í£H¯ÓÉh¨è‚ÕŸ÷xwn?9IùXÍsùœ’!Šk!HÊp.¼[?©œ[ÕØ\-8wâŸX²¶åì×'òÈÍ:Ìt‚ZâÑ뉴
¼6$ÒJ…
s"­Ü‰»”àDÜWÄ>w_P}RܬånšQ‡(ér`yUFíØٌ:O†_tkâmÕpG±ç,·¨!äÎøJ»®ÍÙIÝT
òµÏŽ·§x{ÒvÂ]ÒI÷°R¦’íé2ÕøâN*-«"ïóEW¬€¹Q
+€í[Ç©·¸ú˜'žµÌ÷eñ怟x!³ÉW,yN-¾`IX¶äµ/»mZ•ù‚0žÇo¬IYƒVÔ8Ó¾¨3ìߙy‡Rd†0i
+™JWèh{58¨¿ìCø9eë(Ɲ¨ÇB.ċÕ>?ãK§ñ2àƒ¯¼ ƒu)]`ìŽRHNÛÍaÕauÕwûTËõ—ÂéÒð 
å‹#£ÉørOZûþ5›È`™%ƒ]l×O«o—‚ÝçÞÝc,V÷™¶œË»ôóp£“
4)âÍ÷.vÛ]ì¿¿¿úçÿï¿Ì–Òendstream
+endobj
+182 0 obj
+4327
+endobj
+185 0 obj
+<</Length 186 0 R/Filter /FlateDecode>>
+stream
+xœ¥[Mä¸‘½÷ö7ÔÞl Jæ§H§Ýƺޝ)`/ªLU¥<™©IÙåþ÷ŠÁ 
%1³«g§=P+%2>^¼xAývÇ*~Çüü{wúðۇßîø|-þµ;Ý}|ü𧟔¹s•«E­îŸ?„p¸©®œ¸3²®X}÷xúðYñꏏÿü
 
à¯á®Çý‡?üùÇÿ™/²ªæNãÅ?~þÛçÇÏùÙÿӟ~â6ƒ°®²Æâ­B†{$ÏïyRVµtwÂÀÕùÎÇC‹¯W®6øóݱkÏóeQ#^žð¡‹­ÙJ:)iá¥÷šÊ8©â-÷þSIn,=Á*Æ]Üþ§îÜL]?/E»JÿqjÆ_K«ªÒVr¼ëSi5\Àƒ¬Ã[šó7*9™¿¸ž±¾àU.É&íPZW"šóçâ2À·&Þ±ïÚ¢SUe˜Š¯úØ>÷Ã|Ÿä•bze½)\U3q÷ÀÅ|ý،³Ç¸ƒ`ã1Šúó|7·ÞPqoýó|Wš9—;3h‚Ú¦¥Ž÷2L˜h꯳*&aßñ¡—ù¡ªâš©hî°^Ã#]4wwÆ·Ûä—ÛˬE¾Ìù"D”µ2újמ›¡ëGÿO
+.e\ÁÛ¡Û¡UêZÇ«ÉUœ;WÕ‡¶ÙÏû’º¢?4ó¯Äíêmž´
Qn²Üx
+wíÝÒ\gaóœ\·ëÃz„Pšo^"Rðµû
+]$‹Oýñy
+a)fÈñÉP\‘¡(Fàý‚â?_¹u<€‚%ÇÃc‡&`ñînD31£âµs?ºóËlѺRš¬?Íۅ
Ä|Œ)15s‚sYYg–F­M2ê#JðŠ9¹ŽQ»”è[¿}=ABU!óŒ»P4Œó*E
¶c•'28ås|Bm²ÜÍÖM–ð³£­Ñqûs(A68GÁØ_f?qíw-ú:ôOÇö4›  
rÌQ„WY€p¥²{›§cŒRå¤IÆÆGØË*dÅÀ®ymžºc7!´Ôʪ|ÉÒǦîúWt¬Â.ïÓÂ=­Ý
+…É)zY¼Çu´Å«O—¸XH³\샰€¶¾{€
+`“!ç´fˆ<Èd·\‹äiÍ!<œQà¼×cÿ<a 
rËãÚÞB2Z#Y¼ø_„D”‹ÿÝ㏍£Lüá_žÎQÅûSŠc'È./cUªaddress@hidden"ü¹(
address@hidden|ô        
«T3Ëm½ðÉ2G‹+{m†©Ûu¯ÀvhÓ18ಞBV2#âÅ˹ý×+¢N¸Øî¦aðܜò!ßÛ}È«y9Tª˜ƒà¼ê+>—Kí(Ò/ÇÀ-à÷Œ¢º9Ž=ÒiEӂµ¦¿^†W¼ÕèÌcû|9bÊûÌ
 ]–öwÏó3 ˜h•ÁÖùe¶›„e(–®7B<address@hidden
address@hidden@hj.2 ÂÌœ‹«Hô¥ÖD_^ 
Jg|›6šð«ÝãÛX[â:µ´7Ãþ¹?{´/x(^~Ã$ð‹dȑæeh^ã•j9£µž«™
+hñcÍÅÂϸ̈́[Å\…䧒=ˆ$!‘ä  ‰‹a–rôÐ
'„6Uþö™pY×ۄf•Õd§€ÖJú`Éò<ú7Ö<L5/address@hidden)dÕ:^ÄnÞdSÔáÚ·ôãY䢈~‰+Ï¥þdÄPžó5Ð8g7&address@hidden'¥šQ
+       3<®P/J*.¡úÂã´¢GŽ×düí©9€÷—œŠUÂJ~lÇnß"zJCÞÛÝeÀò® Â(/±¼3“ܾëÏ»v8v
+ÌRÂí[~Æ-ñ³Ò"#.‡Ü^F°>4bqҍã%¶‰µKî  address@hidden
/#kG(÷qK÷’EC»ñ¢3PŠdè^^|w‚a©¼–ÉžÖ'—zâLoj_^–¦Š|ßtd-îÈƋOÍýªRNö‹N!7µ›¡“$œëúsˆÛù¯y¨U[‚
¶#–à¼=âCöÝî.ÇÀ¯¡NÕbU»|Ck3ú?a¶AqV¤›4/MwÓu­‹QaÁNõ-oÝ        
Ë#‹\óÕÌ1¨øL7º¦%EUzEw¸L8£}]¤va
+©1§wáîc÷kx+ðeªØr§bõü=[”mæž'YeÎX^(½' n?—j)ô²&address@hidden)…
6ù-OÀ²>§àn¨åúþ«^Év˝z“j%”mäÝHyõ©ô ï%c£}ª¸nK¼ÿó3Y‚¯‰  
DÙ:address@hidden/Ëz"Ræú'ý©ÃkµðMÙvÀì劔<®—¯Äv¨
¼p°O›îŽGM”*ÙØþvi¡žÍkÑÐ#2ªÏøB镫Ô8¾¿?Å<°5O=v“4ÂÔ!zCX{Y,þl òÓi¤—q¢7¹B…
ŠáÛ{ï5¹tÅ5õ®¹ÓŠï{<!yZÃ=>ªø€s„[ç’YÎÍñë\à!»ÌOèn2–Áa     
¾ƒÙ#zB.ȍ»¸MîÂ>; µò=¥X©(}    f[ÈÇÈ}õl•1Ü¥ŒY¨Ðn¼X®ò Å0 
i’2¾IgÀj¥€ßBRl\Vi
address@hidden>¥5Ù$÷Ò«-v-ÎhHôTž#¸)£ÅºRͪ¡\ob)M7¤ˆk
+ª?—V1•IÄ      ¡ˆÎR³‚i“)¢S”mµf˞öoT¡Á†g֛{±¯ë
ö=³Q¤DˆÉ­uÀ&hVÉ-Ïł0ª„¡¬»œÚ!<XC¦>.ܚËïý8v³Šˆ½¬2TN±Ü÷BXØGÍ%›}…
›–Œ:‡G!iFðþÐqîôBŒA[2Âà.RK–Ô椸äº|aI%õ½´gАÔ:¦Ä—ؐAʉ4        
`(§ÆþmèÃÂ!;µ<†£t¶žÝ   ȧ$(3x‘I‹ø°ÏŸ»        Aïí€Y
ážz½(ÛµÒ®c(›eUXl1‹²      
¨t;Ìn“€fšðýãe"·­5`Ì:Ólº(address@hidden:dž×í0ô‘àSg"b3»ôÝEȧ"address@hidden
+ò’¯FËð]¡^Ԍ 
²4-·/address@hidden:°œYù®ºäŸ¢_º/øP+Ôd[9XV9Þa¬È&˙]¬ç2›(ÝÃ4²~’\)kÏýԅ
_€ã¥ÙTٜ£/M“€ËÈzm6¯¥>¶
93Mó.¯šM;›doLÅ<0Ó·§«…
òCò8€ƒuDb’X'Óyˆ7„3%×äÊßFšQœ¡h»ý4T­ÅN¨*~xj)×(mMÚ]¢Ä?[ c*yêER   tì= D+ 
†@(NÀ+9µ-­ùsoPÏ#³Î¢‰½Kóô«‘ïG~¥-{ejè©¥]L!Àèm’<3jq"»ýiŸi=°Å¢ÿD½Hš>¸¿¾7 
TÓ[•³¸ø7ºâ´   ùî!`±Gß˧Võž¸   ñá1{)õ®Ԝ—)–jæfԎî®×\˜Ôâ 8”‡°×K¡ÙÐ 
address@hidden/ÓQÂÏÖmR^ҔC3BԘ5>o·º(¬à›º¨ïÁ#[íÐ~u„º6¶UЖR¯»G§Ö†ÌúIƬ•J(Y³x¶ÈÜżÿÜà
 Ù†6œcÐ1·±it%:‚ÕIçüv 
Q˜H*CîÕ¯ø²fhNíÔ(‰×9š„jðt»Žþ*–5«HW¾#_„º/׋1ÕAÀ;M§*Òp“U¨<v—Œûj•Ý#Ó÷zÞ4¤`ö)¨‹cbmKcb—ÆÄqºê¬¦«Þ=©ö¹%þ$r³€MuB€¡}ö.tBA%w:«\+ZÈ=
 ½\iS297E7“LÞÇ\µ›pîj”©—ŽŸ½±ìØÛÔŽ·YŠÍeákk1<­å       
Ã8‚øþKvtSìÿŒ£dúk‚oª…
RßåƒQ¤3³±ßá¹ìTÒwyn<Ä„¼Ði’+ߪ×'/>0Ýô¸>Õ0zûHœ"„Ó±¹¿ñL4«Ùíù¨{ÎGö’\˜ÍÌ|ÁI®´T÷h
–:ËD~Y’(›cD:N,Ž—^æmƒj¾t©Ç»±þÌÂ`´dáҁÀ\ZK6ôM@     
CEP€«©h]kà2–UԆ–'r«ˆ–ŽšƒÿÔ[?ZãÏ$S¶•¥'”S¦ªÐÆV¹ä»ùXÄ
O<kº4xêZj›Å)bŸK‰1}o—=''Ñj
ýI      J$j‡<ÛÈÚ!ŒlžÎ3]e³>+è€ÍõhšXŠ¦‚X՞÷QõÈ´ïÈõi 
dv–+ž8×$Ô,A!¥ÂVR‡°‡ÚrˆË䅸ûa—k>š“!K5‰OF‘_!Fù¸‚µ;?p…
Š¿8®>`*¶csŠ‡ØI^ªæµÌ£r»(€J.      
¨‡þ¸'œXš¾]ɂù®xÓ5ñZ|‚¶AsiüW:ÏKêk¢×±âxIu}Œs>Ԑ2
`ßþËeïPk;©-ÐÊýÕä¥é—}X„U•ÈOuEÞY§ÉÉ×ÒƽË(T‚¡‘¯üÀ`ëG/Ùw‘¦íg9‰*ûÀv„B9Ï2…
ãxþ¬Œá›Ð,é¢þèDê+£
+LËeMÙùÙÓlÊíЍS–¸íÏÖÜÞüy-KBj…ÑR§£ôx Áã¯à·w>^^_ñ<Ç“EÃ
+ÚBG¿ÚóÊ´Ñ[ëQRþ<=¾qR;>*Ãóù$5•‹#B¶ŠJ2µËd
®‹ÆàWŒ!j±Pðü0ñ®+vXÓ1þ=Dš':ösüT6Gm8í=fž¯¹ŠP>ôûq­ö3Î>šÁ‘Â#v-jj¢‰l̳å"¨Â»=Òâ¾f‘TH½Knˆƒc
ÄBdƒcb Üè¥om¦‡|KÔòCB·îô
+e€,åõk’ZÒÑO£–g³ª?H¦–TÊÆ×HŒÕ¦vÕK¹ïEM*åÙyí3-©»I³£áSÖTd)ÍȊ¥tÏ_±CÞ²³Ì$Lz
…       á îܘϏúº]ä‡
+¸|¦´”‚chÿ‰'«„…
›ÓHq»Yt8¶µÒ®†“Ëû®çÂÜå0¾èrJMT‰±,G§f+4A֑¥†5ð8®ß!;#ð˜5ð̉c>w”$×Ú“©m)GÆtNÌ
+ƗÜ&†v)ÙbüøÙçû¾ÅNŠÂB‡
+‚rÁ°™¶AÃM»îÏ؆æB~Ó"…q6pÜ#©]Ep¹nm™²ö²ü/g'ÿK2xDnIzæ, E
‘5ÿ&ˆåÀ˜vftƒÝùڕØܵ;ƒÔoåíæ³ØÛòŒàq!_ÑÒ·!#‰.Zm·‘à§8à>„Iډ¤ÀçÔ5RÀý¡÷z
¨^ž›q˜)ÓŒ>Öðp°þvu¹èïaÖ^ø³öšzYא\D©.cê(WÃ^È8ʳˆŒ>êӗ%¾–þWÄ`VӔ¥ð­ 
Æ]i0+ŠK?AÚ¼ýÔút¥©ãП°´Õ·Ç®·iq6>ù…‡jÂDT˜œ[œ" 3N–dÐ#Ð
òƒòѵaµKÃê┫$±!•Ù|/ûُöc†âǂËê8ÌmÑ?þˆ$+}¹pkJì;E"ûו³|‹SÇÓø}R¿›¥ÛŠ›lK¹'Ò4¥C9’*ßSÑ©’ilÏM̤vr}[íÌN±tšèõØìZdÿ€Ê4’²ìÿ-Kždêkh‘¦[~V½:l¹ˆž‡¡ÂãÚ®5ûZxlÏå,XœM¸–&address@hidden:¶CiU¸uYùÀ^§r\šTcÄÌ>üËãÝÿ~ðþ
ʊ³¥endstream
+endobj
+186 0 obj
+4807
+endobj
+189 0 obj
+<</Length 190 0 R/Filter /FlateDecode>>
+stream
address@hidden<vÍN*‹¥b+¥d¦5š¯Ÿ<"@™UêÖé…
ûP,Dܸq#òóhäÀÿ¥ÿnv¯>¿ú|#óüŸÍîæç»Wÿõ‡t7¾ñêڛ»‡WñäìDÓ¹«»Ft7w»W?¨öÇ»Áû­-ßï\c[¥àoîî_ýðæן~¿ûå|Ñ覵²Kÿ
 |&
<.={û¼zû{x»õM§uú‡wo~ùóO|ªMãm—ßóîŸÿüŸßÞ¾ù     
ÿ©ƒOu2ÿÅÝÛw¿áSåm•IOßÿðö÷7ïŒÛ¶þÆÂׄ”¸í[åu£œ»¹Uð´¯ÿô±÷ñe)Dù¶2…
Sæ}Ô>(E£¥Î+oúð!Ù5¦móþ÷‡Sz(º.¦ßà3ÛÀŸ=ŽÃ_áͶñ^øôtH/ÚVäeâ*L'l›ž}==ŽûÁ¶±BççcXìcZ—ÚÎÛûðªn:E·øý7ú!ÜqÓj×æG_ã֕õ:¯û¯ó†·6›íá°Ý’÷'lzü%ŸR6°ó¼öé1¬~«œjxÚ­óÞ
…|:NñK¾q¾Õd…m:„v&?ì§ðLÂ3KK¿nœÕ´‹a»mҖ;-eö쇪ùÆø֙gܨÕäF§ã8L´aŸ-’ï\^ò<
ÉFV؅5‚á\v„©ß…§J5Êûlûãð0‡ý&ü}«é؛CtfÕhvæÄÊpß1Mg
ÝÊé1<°¹Ž–Lnvœ¿0ûm¼+x>5»«?~N®Àk}þB|ÂߎϿ×ké-­ý:Þ¤²ŽŒzس锇‡4V
+¾”Ça—Ï
+ã.ûF.é¸ö¼»é¼ÙCøKÁØïï     
3¼\Ü`A7x€§Ç)ÙÞhi^º‡üՇ~ܾN‹YGÐñÈQšu>žrœáRž¶°ß~­^ܦ¥ÛtBè˾õšV
+at›ŸÝ‚¯8w-˜\c$›¤zçÁ-Ⱦ÷‡x—R
+›/#E— ót     †ÖiîKe¾àH/ƒ›Û§€–Ž2[Äæù‰r
+Á<·J!¦‘‚am؜Rþ“Š
+óÙÄÏ)Švýv܌‡s8¼†È躌  ¨½tÃc¿ÿ¿àϏ  ED×Vp>ÿyÝM,dKO¹éŠ-»Ò=–dåV‹š…
,®šè-wÀC-òèÞ%ôtÞíúãø!¸Œh˜3䀳
\OþÂq˜ÎÛhH¸$MϧÄó¤¦Ø:þ-îUψ8m[;?ñ‚{IH£+ááëÚñ]'<Péè2H¾¥“|9bä˜ñyåûþÔ§”ßz›
2fˆ‡¼»Ìp'ŽŽ|xJc½È×H~ûàNp%hjˆ©
+ßy’kÅÅG¦×äÚ–Χ„^V¾×¾˜å§ô2ZFˌÆxà­É‡'ƒ¼ƒÂgˆ1)address@hidden/%}3.í 
ø2úSŠ7éˆV—¦È3©ƒuœZC©ÿÈt7Ýü,Ôoµ†%ZOY€vnÍêà
+ƒX€ª•'B̯›Cò*UÁæš-ÇÍÛ}ŠTé)eïic"Œª’M?
9·vœ¶«¸p%‚C´Q䢕«§›R†)·^0äì&½ì=ŽÙ¶ÐYZ)z\DÑ 
Ë\ºúDļ£xú+^¤ÐB­ò"¬dh³™œKBå鐸$²4Ê´×0"y   ·dÚã×|ë€uÒDs-_zÿÖ8|¢ÄNQ5Äpš 
     6;ä±DzÁm©²C}ÊüS       ?矰%¡W0‰¼3ÃpÌQ¤­¦Êèø:¹¡gŒãÂÌÐö¿ŒÛȍ5q\
+¦Ì»‚w“=®Bx[ڔ¡•¦aûB¦¨Úßçj¹¯\Ÿ«+3aQ&´2lzQ& UՕ2Ìëçxh(ˆ¨Ð› 
Üٜâù4Ä´kóÍõӔ±B1¿ÙŒý)iøvgTKƋ5È*ƒ6ÿu=c-9ïɏɷOã6³! ésSÁm…
Ñm-­å8aexÓR¹ÖCeð”Ž!â¸^¹€µË%`Q͈ÓQÑ÷þǦƼn=ToÆj UY›ÿÈIÊ(Ž) 
:©Üx:¹8Ò-½zÞe*kM>ìS…iÇ]öŠ(ÑaìîhàÃ\Ëæ0k$ŠïdLdV?=Ø¢,B4¾Fxñ‘…
”Ú2kø°2zU‡K.­>ÅïIÏìvžÒΝêÖÇi;:θÈùãV!5üšUÆý‡Ìg¹ŽÉØ
q«%P×(ʊ§þøOIYh[dkäTƒ^2—
îHS²uçY®ÊPIÝlÇ!Ke]GyåýÝC²Îo>¶÷±\êCFdð|address@hidden 
ØgŠT¹Ø2¡Ž‚Z€=mĪ¾ù:EzéÈ       Z+ioõjlûke¯íE7«•S.QZQ íƏtlò˜S¼)
¹F¿M(ۡؔCwâ#PQڇà—~öI.-àëSÎmÖÎäÁýšÈA–YŒt±ŸÏ*T¬fùäëtvõjPvKÏP
úˆÀ?íƒX’Õ0ó="ùEoRäÿŸ2(39IN³J&Pô)y=™(¬`×åœu„ 
°a÷ÐpüŽ|uÌò#Js¸Ñ(address@hidden:DŸ8V(8ÇÑÀFQ‰—÷Ïêyó¹¢LPR)ƒ]GåP5GÁ      
  µ$zÕSn…2V¹uøߌªmGòï°91•TL     ¢ƒ¤&ÏOM²§õ”ɦTLC5§X#ÎՓE2šmÈka¡E(—…D
7ºè”,V¢ù›R™<;Éä9o¼r]‰ÆTH_§JË^Âu§æº³F7ˆÌ¶öS<›ó¶?F£¸®v1ˆÃ¹àvé©l©i§~ú”°RÅjÃC¬ÜD)CjšÒ»Œ?Ér˜<¯j4@<†Ú˛žbØÁS×Ñ-'º(ÑÒmÜÓæ8ÄOs’˜Z{äìRÙ¹éD]E.)vµ(R)s‘ªX¯x÷<]a3<
+úã)ü‹UV.¯Y  address@hidden&HäGXMHü´~ëp²Þb,{À3.՘¡tßï?Ǥ7«3rQO        
Lqžl³Kû7,º÷\V;H꫆êtí}<EgYS!OxŠn½?=Ætª!ï)HéyaXUZ*{.)yš¡¿.w¥àgÉï1È0‰ÃpKçÓ¢kÚÕkN®»3?R´™Bß®‚2d¨2(#_
–VÌÒÃ×ÈNÚ¢ì~s»Ò`        Þê>address@hidden è¨') 
I¾–Š(ÝDÐ5rÐa-šˆOQÎ~ª­jñdÆzJCpsàuAD ͵„”ÜÏSÑ{iÛ%üÍ
address@hidden)‹¤‰€×­ÄSÔsWI¬ålWàZ¡"ÖkšÆTą|É}ñª'…:address@hidden
address@hidden [Eê™Q••jnÄë–¸à—´NgŸq֘4HIՖ¨TÚåÖµ¤­_µîëà&f¦wæzv– 
KÁͼÀ2(µy.’¾¬a¡&áçë]    a9Dyù³ÄTAcQ¡HˆÜD<*Ð17)ª 
VÈýHDa엺Ñð.ç¬Kæ”Nï:ºÄ/áá^÷?e–ØB™,™+Ie,lÞ›qÊ 2·«ÎÞâó5
_"‡Z$Œ8ä¨ÖûÏ!«Eá‡Í*Ž LÃåÞ¥Ü`
³ÈkpÁgz\Ä\¼0—/|ž{fjÝ3+¢Á—)ÙE‡y¹[ˆÆ address@hidden&j`×åKlóXÀH–//ä(ýÌ
A`mjWg
+µ‘ûô¥äwy° 
¸öüjŸ,@ñÆÕlÞY¡Ž–š§!OÍàА/g~Ž\F_Rž?¥š<ô·–”t¦Ïflyœªô·OØ|pQ¡c's‰ñ“«äR‘|o•RäÓðIúæ`ˆkK$j>¡9ˆ¦
   ׈¸XxJ‡iU;¿
TãُÔcÑ|שN‘^©ŠÉt«˜2>dmÎ:[¤Ê©äP17ô*=}KIOÑê»èFN3ŸÊxØ_£„Éެ؛Cò¢y=󱪃‡Éa¯yxP`%P.”`;!d
+¸Ómá$å*6]Ò
+Ö«c¡o |m<,Í"…ŒjJ>ñk®äÀI©ÝQk6X¥ÌsW|ã¥Ù&
ÿß_Û0ìÁ˜—á’i_2ۄÂÀ·Ï6¹b¶©A<+xŠ‰\Çbïè9×A‘åºë„‚\—‚‘&_
+á™áD©Á        ¢‘ò˪9IJP˜á,¤aÄÀŸ–
P"†£ØR2¬›§–"ª znLtžýx8ÑV¹j>Q5gæ#O:address@hidden;fÿnY®WbYñ¯Þ-"–nýp 
•ÜéR¯ÃBQ𱒐‡ºh·(address@hidden
põü~\Lin¥dJ|«,NF¨ÂúÍçóxdÕ³/VÛEu#ù  øœ
+óŒû̔m{u¥ËãÑÚ-H™Te»¥.˜áü,·^.5Þí3í*‚™+ÁKJ¿–7üÚáUák•—niZ†cUõ’
address@hidden'3=ÿžÈÁOfcš¢ý»(ÉeÜÏìv]hTœÞ¢¯y0’µ›é«»ZœÝYÕÃ/S'Sl³^D¶ÃN‘ùÆ[ÁIR–[jšJn¯ŠRMÌÿZ¢‡<‘c˜ñ?\¶˜zúNǟ·ß¯íü½åÖ+&-i©žXäÏç4«zh,Œ¹j¹,+Ýtôp’ZRöHRÉÓ£—•yNJ§a¥Î«àÎë7ÏNYü°økð¯
 ìÒϘȿ<·Ÿ6E
×v”΋!ÁN=;U™¡s…‡3[^nV%Gçá      µÔwÁ_م
4ԝNi¾Îç|­]©Ó¨Ë¬Ôi¬h»÷Ãt*ÚB¼Ñ0©‚0JiKËyÚ
+#´€CØLë
Ê¿ˆ1ºh­Ï?\Œq1Ei¥Mç^èÆó
Ìz$õ€7›Ï_F”¦Ñ&pÁ‚¹´s"ò«¤7“suŠf*…9½
address@hidden:±ÞÇA|e
#–Û:U|f9,„Ëw©§†}yð¾Ò˜¯¥çMŸ&q°{љ¥–í‹áQr)QL:/DÿRñœ…¥1^Ú¬À!:OIèÏCr  
‹cCÕ²E_Çq¿:N'Œ©§£k<±›R®°Üw¾8˂ú;)ɗX”ã_B°Rª‹ÑÖcÖ?´ßÅÇj¾PµÎVÍÑDȪ-QœÅâY“tqr¤#÷XC²êþ͍L¾º±0ÁÞn±]©Ð䫺
 ü­Cpæ„5šYÖüÅê¯<âÍÈâ¶ú

$À«<wûˆBíù[fu›ÚGܬh¨{2ân.}‹9¤‹Q„®hˆ]·V¥Örë.×ÅA ËAx™Ö[A
ì¥~ìÞQ&¦Ì°Õ`x¬“:¡-Ñó?üS®:±†‡å¯Þƒfɇ°ÜÂr"ó†-þÇïodŠr¸6-·    
/HðDwœIOr 
®Óåd‘]j.ü[ó"@O:æä÷É#DÑù§ßárS¾ü•Kñ{³Ã.U•aÎ[”Œ;Ý£Xvç?%Ë¿½ÀúŸ4ž‚nŽZÙ\ç!`‹5{(address@hidden
 —F¾ð—øš¸Òf;ôûDx‰ 
ç'ÊáÚͤñïG$洍&'¶wa­0¶ëÒE‘)³‚·â2ä—o˜ô3‹_înþûþïÿ¶Ë&endstream
+endobj
+190 0 obj
+4671
+endobj
+193 0 obj
+<</Length 194 0 R/Filter /FlateDecode>>
+stream
+xœ¥[KoÜF¾ùžÀbØïîÓ"v²X9ì::¨Jb<ŽIŽµú÷[ýªjr8#y×>Ø 
øè®úꫯªK_¯ëŠ]×þoúwótõõêë5×ò?›§ë÷·W?’æÚUNs-¯oï¯â
nҕã×FèªÖ×·OW?ŠŠU?ÝþuÅá?’i¸ëv{õã‡_þ.֕fN¥‹¿¼ÿøûÇۏ¿ýáôó'fË/pë*klº•+ύ¢ÒÂ]ßpw†ŸÜ>¶þGÌU¢V&ÝÞïw/é{FÖ"]»ýC¸,+'^m¦¸1Û"<+,nà×µ52x½³.ݲ鏻mx½ª$çy-Ó–ÂTÅ9K׺Ñ_²°A‰[œúp«j®ó³‡!^”×*/å[·mÓæ˜äy÷ÍnŒ—Y%`áùKûû~xj¦®ßû*^å,þ0¼½®”Â]Lў`
9Ûªw°Í–Ü4‡?‡öþÏM¿Ÿþl6›°Xd-ò«ÛCzµä5Zz͆7ÂêJy}Ãx¸ëÓ¿>D™J—7ÜìÄÑÍËÍɪ6ËÍ1"·ð5ØÈrô-|1¡ÂÌü«LÚ¹a˜_
 !¦fü’^¨
º÷ã¯ÉkFZž!yŸ–£jçN^),Ùv×µûi­•œoŽQxïr­bààDvA³ß¦W+éÌ¥{obÌq[iãÐ?íÐî7áQW
Žðßã®SÓíÛ!XÈU5Àuf¡åvàY«ÑbŸÖ¶c`-LgÏU1Œ8àDžÅjÊØß²¥M¾3®ËDÛlŸçn·Kb./$<ªªZԜã³ÝýK¢¹švŠ/'Ù©}Uý?ºYÁ÷Š›C7?6À¶b5òÆah¿uýqŒÔxÃx„ð+XÀÆ5
m3µ!èJ²¼Ø&ÚYÆÉÁZŠ¿L ž»é1ۑ}Ébg1ãìē(¼±æ#Œx)0â·í8Áª£=ÀKNåÝí¬®EU
+¡´š1,xÉ"°|…s:oòþÌ&¹©å¥73^qD—qÑ™RjŒ^̌¼r5fÆ»ˆpH
       
<g(!²Wš»]›ž­5b-å-ùó¤„ö¬,àÞZó%j‚µ¥†×ã®Ð/â¹¹›rVJÌ}寡¯†&Gw¸Žæˆ#¿¸qL&I£L}
…Jé䏜€Ã•–kBÐãç%Á}?!…:'ËPkB΄År‰¨zìÚÌRFr=wSB ysÞõ‚êF°J+\XaVf—fõ™¿ˆÛ¬_
˜õKÚؐãšþ¯Õ'°ig¼Ä·1ø*EØnקï
+’pϤà8D»-~Ý
Ú)B¨E3Ž¼Ûï’sàûtñ󏇸å$Fg?ŽÝ]"KЭ•Ãˆ¾hõ[¿è~±à=U#ï5`ìÇH“²1rɹdñù§*-ƒ¬È<y¿J!
 œúú…(’³1†Ç”tÍ
+ñ×Üu»nêbM™{?ôOÉABæu⦸®Œp³cÁ’dßfãE]ü8¨:‰±ß§1é_ø 
*›õ•æ—õÕy/½Kx“#ã¤Ìo)ü€Ë-ÞXðj­k2Õ1‰r :…
ß*íÁÕÜÅΕR†Zѳ]ô§B&›ƒäë†ûó>address@hidden
+ÞzØÀûn¼:—-CÚ¼ˆ—¸.æœÀ¥Ӟ€]ͼ
+$:¥âþôƱj‘ô$ìL¤‰¡O<$òBý
+)      ?6ÃSòP÷ÅÅc»»O)_*Š€žoŽ4   Wd”¨JøìK¼d}ç]|Ð…È9ü.T‘¤Lè÷cçJ&˜^ 
6ov»˜
+¡r†(‡mÞ8¨ºœ‹(øüy|ìÓ«´²·™n!¬*ýWmS;>G-Œ2¨ù֟ÏyÖjÊþ¼Î_úéo„7 
l1x‰åÛ"ÜQõF‡5¢^å Îú       
ëºÄtÈv<oø×5؇=!¸³Õ“Ðî6Úd%퐲S¼AB¯±rÏáÀGh’>ó‘äTâOhzÈçPd-Lo¡ät/²²ÔºS¬C’-«uИ•ì\Biv
 S®-0cAX#P¬¥&BŠˆüÃÚw=¯DKŠc¯à[Öaddress@hidden|¹µ–iÙA9åSÉ
+¸Íüaßì0¡¸¼ó¯Ç6gLØ}]Ï4eÞ%ü„S“$ÀPƒ¥:<‰2áHۯܵ¦2§ˆã¨ë€¹ʌüÍ¡éRރäM­6,²ŒCfÎúÔ35&address@hidden/Û÷áî
½ˆö%J}›n¥×R,cR(ÍAFjóP=-óPO4~    Tˆu†­5Djˆx      
¦Q~ˆ~Xù°Ôˈ}CßéD”:address@hidden'\ç×~I¹ïdï3…·Ú»m„Kºí´Ÿ²¤ãò]/ñ9àn¾l9-—      
¡*ß)+✣ :ÃD¼ÞØJP\ôÓ|ƒ»~Ÿ…/d$îË%¦†LU–˜À·Æ—®¾×諟¨$÷YŠ2µlł½Š²þî…
Η֚y‘Ô^›ÝË؍A‹     Ø&gE±9dh1ƒb,r›Ï¶…Ò>·F©óî٬<þŒo…
úƒú¤çÈôg‘2›q<>嚈L]«}‚!2&/sLůí’_Ùnº6‰Á•A^^k=6‰‹vŸo4)OÕþ¨ûOëũǗsñ5+NגÎc»;œ
       X)P&œXmOž}ï4I|G‡+í>ŽŽl
address@hidden:`DBÝZž.
+\Mô—¢|ž§       
âºbââ±Ú·3ír^¥¸B¥<5_’ŠžP÷ÅfánóY”ÌíƒäPžY‰µíÚ–’—³œG%~‘ãNÎÓBmH\•è%„,ð¹DzJm
ÍMF%‚…ºœ/address@hidden/œGDz‡Âß`©ü6¹<6].A ʗ½Ö5…
¿.W™ÓÇÖ›]±>5l[-¿ã!ÅÈ©¼”¢;+Îý`ä»$†ä\e„sm5;E*‡c«ÎxÚÄ0§!-ES7§9§¤è¹Š©O
†ýù¢vޅe:¥­Yr<'æêTæùm±Yíï£nnÿ%¥GÍÓÔ)Ú°ølQqç.(Â’c÷üRY$ÀXԋY
jßô¶â5p‡‹kæÍÄ.êÊSß2¨Ág\/­Ç)in³P*xÂSlõH؅¼T…¿7       
BN¢!¾t;µ`Øx—[¦½·$×å!ÇêQp»Eó3¢‚”DÁŒµ£Þ&ÎhPK»Ù
m³}I4‡4±r¶ý1<1µ%™\vÛä~ã9
address@hidden>+H†¥j<kú–ŽF8·”‘        €m<=ÉnPÓnÏ9ºhû¬UÇÓu­–+ó„Å 
»¿%aûÏ**iUÒÇ)]UÒ.šèžp½þÀ    
¸=–þ5ðB/.ÔIÇÙwºf¨~—Ä>Xš:ÆÉÝFg±zÄÔYû¡¦¼µÂTY|o86bò’9/Oxð•   
°¢Áè,tâþ©ð%9l2-äáÂC´ l¸ð³®—æͳ 
܊ىt*pz`G{Q¶õ¥4©¯m×Æö<99cà}ðnê¹ù]ºYLnk²£¨iö>†¦ÚlŽ‡t¢è¥!ÃЎPLæ™(¦é™Ž0z"¸g¶Kðð™È.§璍úf\¡F†‚"ŸPïc‹£Ë#4¡Ì‘ÚÍʜt컢uÑu[ó™ïº’4Ž™Ñ0hV&ÆÛ¡aý†E½á'6é
 µ-”£IÄØlÉf±#ÚNÔ<xÂõH걏A-<äSÓÍ0ÅΊNÁ€»Cê´tV!åBŒ 
è}kb·£ŽÚÀM”®¨¥î†¾És4!14û‡\ÄjVãÌ}‚¸£úìpÊ]qv G§ƒ®sEÿ˜
+wËbþ_®…
2R·N"«¶ÿiž»H—PþØ¢õønÖ.xeÉàf·ÒÇæÔ4õŒ÷-_VX*¼ñÌ`‡B–Ä8¿K-ðçPŸ3ê€äª¸èáÉ5\¥ÑËmÛLcÚDQÖ­6ã}M§)v‘ùkë
 É±^òß̗6¨à˜pú{QÚn«Œ3^gý²›ûãÃc²…
´Ít.ꜣ®ðç†)Õ?A©˜Çžœ(æ6=p¦UI‰'˜Èç¢'8ý`9f¨‡î[rÅ%…
S~6š4´°­2¦Ñà‚rÎRá[̒¶Ò–PvAxùñÓ1Âb.hè¢UCN¦Ò}ŸfÂÂ9:|xß7mT¥h”ÐQÇ:½iv1›„y$î³àˆBcfÔ6ïŠ<й2®H½ÙvÛ̱ÇÉÇvJ"‹Y9'¿
 „œÕüS;fó;1†q¡Ԇ]¶IBó     ÷å46Òxˆ€Úýœñgf
address@hidden)ù;º4_ü„§ç4â?åRO)ä     ü­#Oª7 2ú+Ç#+…
CÉé`ÛâLòÕñ:AãuÍ(Ø1O¸úÚW~ð0ÎÿÃÿýè—ðçUá~ÿ;address@hidden>½N"1g¾²9¯ÎiÙŠf¥6éLr&ã_r$šNjD—28O×
…=ÁV©•»ò·óã¼èÖ=UïøõKGݾ;Bóåk*¡BÐɜ„=káªòøù,Êh¯8ö²ÿÛ›¤eA¡p^òÿØ~=æ 
´':wHÌ0ka–åÑz÷°OYOÌz8.Èõ
+±/øçqÈ¿ÔÁÁ»}În–)ípßlR’ÜU6ióë÷-Îú¦¿p§U¢³E•¸icZ…
O×R‘`H)IH»~<address@hidden&>*ãϨoz·+ÎCqÒ#rs¡šOÞç%£ïB)&k¶<  „kz¥}UüjÀ…
0d4ÎDIn«i—&¬Á½Kïùí¿ÙÐÒç4¤ûw16 õÅ·¾Š ËO1!OîEқ—úó'÷YÃ؃ÚO 
'¿¿§ý/]àn2K{y%){­­gæ(ð¥§æÚãgqXÔ©³f1þ}Î
+ñýÛíõ¿¯üßÿõp¥endstream
+endobj
+194 0 obj
+4123
+endobj
+197 0 obj
+<</Length 198 0 R/Filter /FlateDecode>>
+stream
+xœ½[ÛnÜF}÷Ø_ÐÛڀÄôý’7Ç1/’Øk+oô
eM<CÊäŒmí×oõ¥ªÉ!5’½ÀÆIzÈfwÕ©S§ªÛŸÎXÅÏXø“ÿ½Ú=ùôäӏcø¯ÕîìçË'?¾åîÌWÞ£Î.¯Ÿ¤ø7¬2îÌJS1sv¹{òT˜g—ÁóʎŸ7®²Jxçrýäé‹_Ÿ¿¹|ù6<¨e¥,7ùY
…1®aŒ¹<öêxôâM|ZùÊH™xýâå»waTêÊ[ƒÏ¿xýûïþñêÅó𓁩Ç7._½þ#Œ
+_I+t½zúê͋«giÙÓm^Hî*.Üم°0š&¹Ù
address@hidden;‡+î›U³ù'ÐS-ØôñYV)ápÝuãÎÓ÷Э$‡òЪ¾­ßo¶›}4­shº»ô´’
¿³îòœÖ3\h3ä1­èÛm·Ï‹7¹ïÃ>ï]:ægûd†ö94}Ü%‡µZéOìò¶OKR•0?õy³Þ´Â8xÌÔøÙ“Ïي+úÜC6PÑh„óˆ¤ü?éß=
+ü§Ö„¨n\p‹©f¡ä*!,·^­šÛ´,Vya8}6†Æl¢
+8º€ address@hidden
+QI¦a«®šO‡¦]Å5ÀXQ$søSŽÜR£³4£€l»~Wo·wÙNÖè‰Q\%½7‹N$´ôCFÒêê6~°ª¤;`™¹9ì׈cnF¼6ˆ›ë¾Û%0„°8]„½ºôævÓ´ù;ÆhŠ¾á<ÃJsBú¡Ý6Fµw|á»lrç
      ™uHڛàÚ¬ãð¬ ißǝTÂz9£«¼gP#spÖpÆ|e¹R¸˜fµùa•yCKoǘLߖ
+/õißU9T=sø5â¿ՖO=
+`¶Œ<š7dµ8Ô 
l¤4Ś).¤šr/Ýp["¹>.D™`D/]¿4`hj}Øß<<Ó=&É¡#9þ:}"R4_ëÝí¶ÉAËìÄLƒ6[Q]“ûö¡°8WzÒ—(KvüœÇ
Ù1ÃZĈƒ›iFHÜÄ&§#tS/Dlúá+Ä|"UðÀ½Ç©"r      
óýaD3Š1´È—Ƚܒ‘÷Úü!Y"address@hidden(@†>±Ò»ý
¤ª*G Âퟘ4Xåaddress@hidden)9OXÖ-Ù£×m+­)»÷!6}r(8°*¸ð«ð‹ãéd
+1ЉPaÁ¬ß–½å˜°ÓV¦       ¶ÞöM½NppáD)ÚŒp€ê(Ú^µ”ðôÜíºƒ_ý:Ý;Mœ’^—/Ðþ½^e“Š 
ysŽq!¾|;'Á®ß撂ÿê闛ͪä`œ3Å*dA 
șö')ÓÔm½í>t‡8³Ý+ü,43ö(˜A9hüqÓÎ÷±ÏŒ;vtFv¨-™|ß|Ý'A
$®È±’'¤z0O€àå‰Ûzrêâ8ÄfußÚ4.©qÝ7M¢°'ãLQ4qQ. 
¡’IlÎ+„õ•.+:©í2|‰é¡Yú„S˜ÀhŽÖÉù$åï~“²øž;ŠD28à“´û$ô!b$…~Y´Èúe˜Q¨òem¤Ô8Ôù
+S­uèýª9ÏWŠ¼äÆU9|¹Â˜P+ÉRì|Lﳑônú¶Ù¢”6TnBnÝ¥„§ׄ‡G”
+>¶ËA
´O6rº”Špô´oVY © 
ÞÉäÝ{Lešló<;TYÈII|ñ琽hàÖʱ×bâPÖSDœtœV©C€Ñ]CÓ®m+M»}¿EÜêB-‘l°š¤Püˆ+ÕñÚdpý!
…•±|address@hidden'(Lßö¨(9Eä<ŸxXÊÇ}×㶁JYžq–µ¤|œÑ™á3æEûbEùh±8€öÏiž 
û(ñdÄX<eI       
ÁœIΩ’Å£öE<®7¾k³¹t=IFY®)M3qíæ`¤˜HPPãÆ~S?eÏrF¶zNÔ3ó)›Ž¤ç.qTHVTº
äMKx/ÒS˜…
+«Ì¬MRò£&ú*…!(˜Í°2öÿZŽÇ2Òð£ºÌ îi„íªÍG÷AÝz?’Š»*GÔA蜟Gô
¥„ô'Êk©ÕDk©s95,y ?ŁÈÈY¤tq×HSë"Nãà£5íöÐß渲Z⺡Áf.9ü
+èhL'Ü0ù Ë'‚%\¾ªÈ´¸èVÊ6›U½ßtm|C±J‡åXZçÍBI_p•z|ãêYzÇW¤Ù»ëA^Jµ›…
˜eäúDÄ`BšÒŒ³úýU¸æ’Ÿ—’ï]^­ò´¢¸ÿú°Í`bžiF(´‹f\7ÃæC[$ŒrÇê$^!Ñ4Å4÷M]¯š”f!÷pO[ÆÆ
…
.ƒhȄBÌ?b朒˜<&­I/hYï'address@hidden(–7·qíHï-Æ)‡§&qeCö%%æF|¡4ú–ÒÄR¥¾´aؼߢÈãE,s•Í8jz¾;$ۂº¡H\({t"address@hidden)Ëe*—™cÂC¯¯÷MŠ|È&ÌS~Ǘs(Äbː$Èۗã®Ä
îµ,ª^(COØ$;Ä(Âá4"*8Ä_‰#w”|»]“     ]âí nûœå…'TÌ
+ 3Ũ1Ò؀–]Ғ¼òv†LˆÐzRš4_7˜C!ï0ÊT_6©•J<aÍÄ*ð¶÷3Ñb¡
+ž‹¨‘Ô<þGYà7uN„eՉïÜÖ=¤€Ã¶ŽvR&´ÈÑÓ¿tï²¥í¨£»ß'na_’óÇDy±DÂ÷Ÿ5ÐÛP9Žˆ»K€¶Á:…
7çžœÂBñ³ŠšÉù)Uþ¸ôDŽ:ÇR«os~—ŒZ¤Ð\éûP%-9eáúý\óv¤G
+í8v ÃXŠÅBräU&È«TªÈÒ\ Ì…DØmÖ¨w‹˜œÖÚP<Zڗ›œ…QßÝhJ»3¥vg'8„œ. LÔé#­Ób 
?.@"²~|U(ä؏
÷B>¿ address@hidden@¥6#À"­øïKßóí©¥wIjX;Êðmóe>8Ò]ªòÒ•dT–‹ÊÁ‡²‰h’z¥Ýcš 
Å&\¬nˆá2[í¨m¶›Ý¦­÷
RÔdÇÚ^É.i79#…ïñá
+äÆ°ÉOˆÒ«m/RÞÑàwxýô…Ë*ë?Ÿ)
‰©S#æNšD0ÂmË^PøL–Æ5ž;?í†Õ­è„%BhÿQÀvm*Ñc’§&äu
Пçä¡8ú1ûÏRx"8UɱãA&address@hidden"ç(>o‡Jʕ–^§0‡šž{øP¹%Ý-
¼®FNÁ†Kˆ½Ò-Ø9$›?¢Òð¥h)address@hidden)Í~:˜`5Wñ$Ek–   F–Šûn×esh°1ñÃìù…q_
²Âà
+æ3äWø©ÐÒnëXÌXKl©ùÕ³ê"a:ÜÓ¼WÙo&address@hidden<I6 
=K'Â'y€xà~TƛþøàK|address@hidden&ŠÊÏ)Ìræé÷¨&<#%xÓm×ÙoJ¸ãΚ0 tÉ
!dk.æÞ8E>#ì 
#BÒ+Œ˜Î;C%#G¸Ë»Òå”O‰cwIøÿþEŠ€`s­Ü·G€º?©œüî0b–I'ƒÍ׋Z'H³?”-CN{L¶
²ß)’"ÓlÉÀ„³l²QÖ([21Ã'š’Z=`?D;^Ž·ÙÞS…
|¬¶ÀÀA8“)!°yf軣Å5Nµ$+añ~rª%Ui!÷u;\7}>h€íp{jÖ"'address@hidden@scÈ+P*ô>ãC_§Ó#¡Â$>ÎBõs¯w×
 )address@hidden<s‚Tn®Rtá:Ԇ‘­HžXٜa'KÅ9Ž¹¯:•¿D/\ÞC/ÂMèE"address@hidden  
 
iÇ~7ÇXµÀ1£Á8”a%›]á–“ƒRà&ë.ÑeƐËÆç~RÇþÚDò([xüÏvó5Û­ç¿t»zƒ”†ø±w9ü>±Ì<5¹¼9΍G‹phݵÿHU8T,TšOµªµÓ¼š~ÌZ¥¾Œ
˜r¯‹Âaddress@hidden:ÿËÆbÖQµ‘*`ÀrÑ­oðâXJ…åk®¡
FK¹##Š‰dÏKL7â}ÃÙõ¶ Ý( Ýõ)“YÚà·
+
+ù?     jwO óp  Û¯œ§TßÔñŠ(õmÏs"›9‚Sò+÷zFîé'Bòf³Å½§ËTÇ    Ɨ:´\ž‚m 
øˆF/і*i+x¦‹S6ùl RŽuȉ¡{Š°-÷û°aä9‰Sj´B½/@Œqºˆ»õî™‡Ö"5nº¹ìý’†À)´Ô]w 
address@hidden 1 :“õw¨n£K˜øû3¢övb ä³õoJ‰£Ù¾¹ÝÖ+ºª.öäˆ}²¾”>N<\ 
†«†Djכmóoø\°ýÕSüûÓHRŒ
+×·o^¤nÌØÖ>†­ P§ó¹#4Ÿ9YÇEHKÃòщaämasʈè8»€R(³–L
Œ&w×&v€_Ké»67ÂL¸DÕWi볿ïÁà    –‡ŠԍÝ
+q%ÕÒ!££cJDÖ±q×.¼b%1·X{yYjí²àÔnÕeÁ颻Ž²Âsœ%œvZº¡uj–¼'Ž²j¤ÊY‡¡ÜÇ
÷Ä©ŒÃ&F¨µ
+ÈSgR‚ñ¬›ÛD³ÆÛ®Z’€xŽ}+Y:ïÍ×xá-AG©p›—Ž6{º¬Yn<ÂZðè<õ΃d3F‰À$²]:ì£V/]///Ïþõ$üù/Y¥.endstream
+endobj
+198 0 obj
+4031
+endobj
+201 0 obj
+<</Length 202 0 R/Filter /FlateDecode>>
+stream
+xœ¥[KsäFr¾ûxEØz?|qÈZ¯Í[ZKÜØË\Àne?8zFü÷ÎzdV¦FáÐA ºP•ùå—_fÖ|¾a
¿aá¿üÿÍáÃçŸox|†ÿÛnþýáßQöÆ7Þ£nž>¤pxÉ4^ÜXifn>ÊF6ß?üóƒ
WÜÀ[Ûúùáþ¯÷?þþ¢|ãŒwù/÷?ÿôkxüç_¸«?!kù5aÃ;wRÊÆys',¼™ØuC¿è+þ 
M¹m”÷¸×ðH7V{ß?cÿ¸€µ•f2ÿa<Ò²ºqÞÑ
+ûvӍñmÖH‰_ëñc¢ÑÞùülÚ¥¸†3‡«þ×yØÆUMc•öô­ó°‰oKÞ(fu~¾9…
gp.¦¾»M«ª†k»úzÅãÛq“áÇÇ»át<ÇdPææõÍX:üíþo?ÆÀáœÄOöcچ²Ê:Z{<ºmôµ§h\ü1¦½¸FqÚË!<r
“Ϋüè<Nñ(¦ážñüðñÒEq5ÛH.%fè¢#¢)¥kœxfSôÓ.~]4ÜY4жÿ°Pt’„?HògÜø‚kŸ§¡ºç¾Óá`Ó¿ûó±Ëæ
 
à9ºßÚÃë¾Ëö´qœì‰¦óZÙ%0,D£KÒps§vêOÇì]i~öôWá0ž€Ôí»Íôéã§ïãQUãwsŒòÆȌζòŸ?ý=C”“Á#*8k”Ä·öýãÐoäi
+œ&E3bÔ2ÎC4ß  .æš¸?ä%™’cÛ‰Ou£Œçsÿ+©˜Y±–„—‰N*cˆ¬$X$X9Bû÷?Ü7Z9A 
ìhä±Sr; U  EŸÚ
]›‚Ù6¢¹&ÕxòY­óÛíkûØïû)‡½Q=û–b…kO֞NÙyà'>s6Æ·švÛd§jæñ´ÑÚwÂÙFx†`ö`5
+¹Å†§)ïÅj¹°ƒJ#;address@hidden/ù]#Ž÷͊°{LÏd…™lXðƒ|address@hidden)•
m^Úi=I`E/address@hidden: |
оôû€†D.<1ï5D0ªt2ð©’€/H'NÚVZ_|û[foiË'7Égax´]—ÝØQh¬Cÿ¼£dlqÝ)!WXíð¬ûnÊÀÓì‚%oŽ‚ô}‡sV
ó:œ²:address@hidden:}­ÂçÈc>ó¾äaÌñ ã$)œã“°¹:address@hidden&€yihÃE¼)s)Þ 
]2oC·éRڂ”à      
¡´,Ù+·4šk´«Œöšü[PÞÚÏ®©·ôÂØӐÈ5D™*=nûãsŒ84·‹ÓÝIP†IR+eûÜ¡¨“ž 
ð°KJ&Êz‹îúŠ”)‰¤OÃ˘ÃÏqŽÛû.ó
address@hidden;address@hidden@ðä¸i,¹‡œAåDdð¹í¥QZô»vF,]&…¯
™|­$&4!äï¹GeNY}Ý^™›eYòùÜ-jH§
+ºþË¨ìÈbÀ~iÛí3ȃö%ŖU‚€eäUáSƒ|ƒËfÄE+ HIˆëŸ§Ñ›fF]¬/
+ó¼$;2YïíØí³ÑEsL>.‰žÏçîÜå`6^£K÷ý¡Ÿ¤   KÞ=Šg[
address@hidden<,«°Ò/°Š[K¥
address@hidden(…+¤•R­»a€«ÒjS\/̘•Ò›¿=ˆÇc²;ƒ,“ª!´¢.‘Ü¢
+à¡þ~µ>¨‰}W(¨MzÅŠE­9ø‘OŸN(q™¡dSsT¼)±ž±øe‚´Q÷۔ÄY(7Œ.!¤Ôøéûõbˆò¯.†þ±k§ÌßRmìÚ×WJCTÌvÇ1ƒF–¢²B;8jC¼¡ÀBClö}2,address@hidden@ô2*k0¼uÞU’
¬hæä^Q°½îÚÜPàŽü)W4À_°y{ÝD!_Üæ˜P‚bâñ<%-$:÷s-ÕÇ     µ3À©ÔÍ×­8Ïí‘ô‰dìÜÅn 
j©ÿ"Þ ’Äê"^Ð" ÷osú2‚J¯Ïç~“%œ÷š—Dӡ摅
¦SòˆN&ô†Æ÷RT»o³õ`E¥f?ƒCH²´Ôÿa†*€µ7«Arï²7 address@hidden
+T0©›Âd±¯Æ¯ÒIËC)BqõNÝž«¢m|1a¿Dä{Åõð‚¹ˆà³öíÌA
‚Qq¼”)}¨ËJT£XÚ%[ïHS¤§1¥È;ÐߍqëߧX¸ÍJ̔–ꮣ€€§zaÜa_!r0ZÊ«Ç[¸ªnú
Ý?±A¡Ì      cSJÐà”sÚͦ{²´p„Üä+ÀŒÐs”\Šë¢2×Iy}…÷Xx^–šŒ
address@hidden(#P›vnÛœ­Y1óˆä®…r©méw¥¦ç¬s>RÐ3Í¥±Æ%¤Ô…€åŒhø…Ñ|¹«a”
+"cZQ§<ÊÇýe›p Y¢ „'/address@hidden)æPYj䂒ÆÚ0Â^—^ö?È
+R)‡ö%ã¯îï®äÃU±Ð
ÃùuÊ(TàŒ*ÈJs›<üÍ2¬¢ùÂéu%!¥k"QX2e;öY5€·ð©jœ[UZ4÷ka
Tf8ñþ/™™!Š(5¤³EááüBx¬ù?YNWšUð¬ê(Ä¢„Å~Ûa¦DÛýÓz͊ËÞè¬ÿS¨1+Ì{ߺîcÎ 
ax–ÄQ8k¨jBõ™š%ÇÄؘ1rýOUË(-´èáëwaÊaV£A)R6TƒÈůœùP¶§á<f`C]úeíø‚&^ 
†?ôK†IöÁlÆ÷m{ÌYՕA”=|Ø䐂ªO€³+Ì 
¸FzJÁÔ£óœ’ïé1„k‚fW€UàmAÈDÝp'CeTUwÝʋü)æ1ò…¦êðµ¦~sÞ·1
+•
+'ª-š\hqñýØM#ýÑDÔa(‡¦©zƒÆW-Wì
J`rÒ½(êb‡™zÄD›$©®UÌ!6KÅ<ïù‚Ñ !°d&­Æ™‘+g‰ß€“–nÍ¥£\µI4Áá»E
+sK²¶a~Á
+ñƒË¬=~ºù
°~È
~cØ8hœ°ég
\Øó)×ײцZ¿ç‘ZQÒ]=i0'[l5œ´´)†S»ÝäÒðb9—¿c„ìx_çݗ>ÊÈRt£ªÅ,'’“ÂZÛš/tÚéhW
±9aôWc²\‡ÿèâ$ºî¤Œ—    2¹R
5KGJsÆ 4©<JÑðXÚGXJ*ã
+¥m&áeimNi,™™½0ƒ3W\eŽåËdò&¯ÝLçvŸs‰ò”}·íÔ¦S7ܖJ¹úd…Ÿl
+A½     œ-‚)”2ÐRQ      Ú¬‰É¡!0P!oWí3ë.ÛgV}Cûl~¯áÊ,a›ƒ~Nõs¦Քôùt>nÂV“Ù "…
#•“”OÌVtì¬|address@hidden|‰Û~¼|J{´UizþÓ&k?ؤ)address@hidden
+Ò3þv×å…v« -“r"ð|]é:þ@>¹"pºÜÕ
+Iƒš©×h—‡&OÑ    ¹˜áPd»Vêì2‹ì8S¨ÁJ6sԭı­’:Ž|clRÁՍ80
+Cáö‡C·íÛ©KBNC”sÊÜMVaBs«L‘ò×´#58ŽA·9-.
c‹a¨çbÃ4¼½Ї³ÖÛb<Õ£O˜eœ›ª3O:Äò¥ï¾¢ß¥¥WW/Ü\foBSçw
÷=Þ²#eAÖlÖ..³º&!P3=œåÔ
MÌdõ8y•5ð±ï
+)b„ߞ貌óeŠÖºSJÅ¡ZÑÒ,
S       address@hidden&address@hidden:nj¤J¡2[æðkKRIU 
)·[¤&KÛÚQk„“ëWXm$†ÛmÒÕüª`{
+6ê/ö>óh2”Fe’},W¤»¾¡o7gËÂÙÝq<8±æV—¼“‡AfµÓ’‚›ÛìkŸÅŒƒ-}£ßkžª/address@hidden'É^÷(˜¤ó½{¿Ós"Š]{éå/
  
`³Ù-æMyqáÄ/ÏçBØÿéŠù°Çêe_n³b«Èٕ{k“ËÐ)Ô´Eºåjª{8.àþo?6Ä8ŒòÃ?vý/ÓZ'—Â$vÜ*¹RXñ‹ë»®^MP8qqaì²Cië{p)iK`~Êqo}Ҁª+™c‘ÍWŽ'ÜqQ¤k§¨W;
+È-TÔÏ-õ        Á§…{ûéÓ÷X5A$ù¹S„™rëÅþ\Õ]Ӂ
+†_‡®;¼æþf¡Ê(ÀZOôÂÍMMæ%é¿Dq¥"ÃuÅ|Ÿ,̨ 
¼¢2K‰ò­oµÀ”êÀ(Á.XωÙD3çaÍìlN¥^]Ÿ;Á[T¦’¸°ÂÞú„Œå¹©'ì÷è\%©§†˜²œæ[-ÞJB£‚µž1¾§ÊÅÛ¨7e¸&O?ÝAµÙåT¼”î\lXÏÒ]ÌMˤªÁ‚+Iõ²ÏêÉj¬ØVï.)íċ˺À§ÅvžVÔ$ÀXѲ]O
³X‚¯\…›MéñBW~ÁæwÂ"ÎS’5^Q<FÒi •JàP6*­åR’†DB¥ÿK};‡Æ¼#>3UžLÁÊX
M!d1Å¡'address@hidden<Ù„Qœ}Ij¥Ú£#|ØÓ|¼XM4¡¬LOÍ
€‰)#õ©n.—«¯9ýŠ4Uº–í4•Z½ˆ«—Ô¬é’ÒßC•Ž(yGl…B³´WÓ¿æÀY(cÍv‹ª£¨p
ƒ4$ýœÿI«¯¤æ>®¨þIÂ5ì娚—Fá
+8“k
êär‡©"#k|®Ë$yäL­kV.®ßŒÞž÷˜ßã
yôÈëП†ïíBa¶²¡ÇRdU¾HÈÀ§Km*ó¸ÍÒ<LN¹Z
+
&áåø™©¸«.]µ9` ÑY:address@hidden|D¶/—n«©N¼
+²Ö°[ó:ԏŒŽýéã¾Áü*åBNB`—æ\üÓ±<‹C}ÊUÚ׳>Åb08â5îªWYLJ±VâcÛMÝpèéØ¡•^.CåÞVuŸgÈË+¡ÝÂÕ¼dØdÿñpó¿Âÿ1NŒoendstream
+endobj
+202 0 obj
+4507
+endobj
+205 0 obj
+<</Length 206 0 R/Filter /FlateDecode>>
+stream
+xœ•VÉnãH½ó:¦vMíÅ:fŒC'™nÍ­/Š¬ÄØrG’øMò’eàƒŠÅz||$ë%£„etø…
ÿr3{™½dÌÙâ_¹ÉþÊgþ`Yb5×2˟fþ˘¦DCf„&TgùfvÅáKþ/address@hidden È`c
+m‚íö]çÎ[Z¢…î7?V¡ˆ5:ú/î¿ÿçîvq=|ÒJ³x"¿½¿¬Üa¸
+Ö_W·‹__<lc3ƒÑ(cì9·‚p€lÎѪûª<P#Cˆ½G˜µ"šªÁdˆ`’FS¿ªBzœCÄÔU­;Í$Ñ\FkÕvÎ(ˆ¥Òc[õíÁág˜e1ìÖ¹2B9°µY:+րêw4Û¾þ£,úzÛ¸,address@hidden

ΉQ/«u¸0RÄvÎAÀ¢Í-ªÃZpßj‡YFÆz>úbX#½w3ÔڈáÕɏ€)address@hidden'F‰‹Qîj†AAF¨uS¶UÑ9–
… 8œQ#õ¥óÃtFWES:OŽu0F¤ãEhÄ6Š)%r3šÊu]E`Z˘CÕ¨ 
zú¤,1L¦xkˆùOúR4髭ʪÞ-Ò¤— 
z‹ºÐljcù±`Ë7ў#^QbU¬ã7/²Nå{EÛÇKŤ}¾†öQԈ¤­By•0ö„e¥LíÓ×ë¨q Ί¨ 
ñø²«ºØ<›Xñù5
ïc&qTD¸œmvy„ü-µêLuJ&Õ-=QØJ,±R?yme˜¸T
address@hidden jÖ1à· uÒH±<Ñj•òw…
žëaa°lŽ²’Î|݄ŠI‘´S¬ûªmPû0æqèIm6JmS?¯‚|‘>͏N2¸4!|86ׅ
7);v×ózû臗Dª´Šúv×õ•›¸7ƒj$æh¸Jü™ªã‚’v,address@hidden
RåoÂÍFQÎì¸1»2ÌUnÓúYUËݺnžÃp–.øÝÖÛ¶îÃôFE¾‘B+b9Š°˜†Ahy’J¹m—]àOq#¿®êò\”+ÖbEùdv¡5Ð5åñ?ø±"&Õtq%Nì‚ðõiۆ˄TðÙ>˜ÛÝ×в¸q"µl¤AB¢r¢ãZs—
+Msãí6˜vÕ®óÂvKAŸ´n‰´w1)›úâͬ¼FcIÍ}œöT']} «ŠÇ((á,
 í“¿†šò÷…Í2¨š#zH#tZm¿pՙ$†|åSÈ<§ÇXš±ø†8iªØÀwð…
z©ñuqû6¬)†ƒžž®©¡.=ó¢víD»ív“ži‚¿èÍNsÝäÙß³á÷&‘ëoendstream
+endobj
+206 0 obj
+1119
+endobj
+209 0 obj
+<</Length 210 0 R/Filter /FlateDecode>>
+stream
+xœ­YÉnäH½»ç#òXØѱ/s뮞Cs˜éòÑU¦lk:·JÉ6ü÷ÃØ¡%ít¡áƒe(‚A>ò=R?V”°õéÿzwõãêNJ…
gùßz·úýöê×?•[qJ´æzu{_`°HÇWš;âØ]}úò؇öôùöWί§Þn®>Iÿè×?¹ZqIŒ5Ìïs“×Ü(VÝ>žÚfÓûµŒZ´K¯7û¨±Šç=oÃ:C˜,¯ëÿêãIÌ®q`°
'1ã3
+NRĦ³Ú¸RÈz%gDYeÒ~l¸´W„[š­ëÛÓs²E™F/0ÛY•ž½tÛmx
+[1žO‡ðL‚•NŸ»M0s"(ÏïÑff‰Vä;address@hidden<{gˆ   
ØRç®ÁãCØUP"%¯.<É5‘ÖˆqÂ:tRŒÚuØÄm­ž-WÔّ7BH"ap„¼iû!z"address@hidden;qׯûè+Ë;þ[^'‡3i²»ûíkŠ¡ÕŽ¯¬rÞªò.í˘‘bAÅèOÝs·mÚà
   á
ÃݛÍæÔöyw¡]6¦?6ë~FœÀîð}‰Uôšñi…a=”
+ªxAåÝgĥ°žZDº©Ùni©“<‡ô%ä!HÐ|V¼¸^›‚Ôdn5dñê|gœ‹‰·köÝñi›P'!¥‹!cOaÇ`3ëø¢÷¬{/>WDqÄéݧ§¾Û?¤¨rr8(OLÔp
+)ióªXœ¾öCÈl($Fëüãa»„GÆG;¾ÅüM¨Æk};FÀC0Þ?xŠgÐSëö&yÎP,¸ØR*h¤w€æ=#]I·þµÚ]x°j0?ևþî3É»
+©Ñ/address@hidden
d=´RI'§C˜K¾a%•à8Ä}"€¡ÃS±”*âÍï?õmzÝà&yé÷ļݓªÑ=Ӿʢ/§æâÂáÊ 
òO=æÌÇA=O¡1NTãÐø¾Iyi,Fø{Œ°VŽ
+80
+s‚½u“¥ÿuJiΑ•ú6g¿Ö¢<\ÝaŸÄ-†ˆ=_’ŒÂ²plÚDvZ™üº!‹üÌ© Ì+/3”Ù·(Ú³Ïû
ÉK/¢h`|ŠÎ8Ëƹ Ð~_­ZLShÓýҞÚàÁ       H‡C5J9„Û±ð·0DR;!>address@hidden
ª(í“Hd¿$‚ŸÄê¹N1Ö´âüS¬)Ìh&^ªk՘þÈèýzä¡°²Ç›;ÇXÞrß¾$>ä|úˆñ¼´Kúʥ̾Œ*gs8XZ\<̏_Ú
 Ù¾`a¶¶Ó—eƲë^{¤LUÜÙ’lãrÝy‹¢Tz“²zé†Çt/I]Ÿ•“¯%R¶8 
GjdkŽTЎL_?_‘(ώ!*ÉqñèB\(Ôù‹Íâüb³€™å¸xŸ2»Ú÷{”)F9lÚè?)–- ‹\‹AÎLd23¹ 
“C´„ô•téç‰<¿òŽ åÀ€…¡Pöå…àHeÂ9zºV™Þã׉ŸœaÅv1ûsv9+ç"address@hidden
57Ÿ?¿8Ш
+ÎC÷œ’µ”®6ç/4XÓ®Ž²híažû/û6‹.Z:address@hidden ” ¨B£…¡Œiõq§´4$á÷Ò>6©ð
+FߺC4ÍV‰\€*+‰—zh°²ÉñP6)L¬Ãš!—R&/î[•7]àë        
ç*|{h¥+9•øÅCÝBÉ4bBe´EÍîæN6óÔúJÙ
´¨(]
+GçgÛCêÂMùÂJ~Éí!÷ñ„^ÕÁ÷J¼ÔLMÁp¶Ä×v„]t˜ŒŽØ¶
¸"Z2¯»S%äKÃó]žâд¾(HXDaîýtˆŽÚ2ÏEŒñiGÅñ=¿(address@hidden>ÑtBEC”Ø©2*zؾ7Q°Ak‚‚gßìZ9H€›QlŠ`SfËXýúGTA´ŒÕäŸR(|’ŽÑfÁk#“ƒ±Á
 
¿I^“2±ÉÁ­"¾lûÈý1QuÖ„uÿX7¾Ê‹B.Ž©ÿ„~.ðê?ôHãï͜RãQXàT‡í&õ•~BÆÄ$,=Hq1Üì‚ÒJ5Y”ÆyÁýá”<È«dª“>XÝÝ/Oä8XAÝh&÷[ÎoΦÓHf®¹ÀxŽÙÙl“˜¶BTt»ã¶[wCgx‚[Ærd
 íulÔ_Kˆ‡ÃÆ'address@hidden        \‡í½o>c.ßp
ÐF•O}[‰—ÍYÓè      EÁZß4&Ì_Ú2vûûC¥€Yyrou‡¿e/™ªÅÊU.]WeAê 
‘,YPt<GÎÕWÝIfû©ŸÚó)cÔ<e,ðh9%ÊÉfWõ#ÚI*ÉÖ¢ôÿö´ÎXÂØ>f¾)MÍݐ
ÉyÁ1×s)u¬ê˜Åþh×tiX. ¡”u+T,t+
}ýÏt«À 
ä`W¡QÞá|
+ˆÉ™…ùPŸ€BéûDôS=?ÀŠ¨
+©çUè™Pø2–§œaԗϻTW˜ö2Ì|Döú²)ÄTžúo3ÙrqAöjۙìõðLöŽö]îP’ìõ%ώ™
+*‡¯c¢’$IùŽÚÑå¶ïrÁW+_íæÊ×Ù¹òõ¥|®|«•hP«\•<ø[2Ž¹ßögä-‚ù¤uÙù»Dî²# ×ÎEÏ
+ a]F2Kñ¨Ô, JœS³ZLÕì9   address@hidden)Êê})ë;pUf~C³ZÊBs)KùRWQ

address@hidden
j‡]‘eÒ9 `Åқ>:9V>tµ™æ$ÂùäÚ­Ó°R˜œI÷‡]û˜Ñ‹û¾T‹ŠtùÖ>çbp½¨H…¦éD{Šy&
89ƒcA«=¤+
address@hidden/&€¤°;¿î_·«ÿ^ù¿ÿD{m1endstream
+endobj
+210 0 obj
+2569
+endobj
+216 0 obj
+<</Length 217 0 R/Filter /FlateDecode>>
+stream
+xœ­\Éräƽö/ðf)‚„Q{ÕqlÉ¡     GØZè°º`ºÁixzáè¡è¯w֒Y…¥›œ­ƒ 
¨Ü^¾\àO7uÅnjÿOú÷æðæӛO7,\Ãm7¾󧟘½q•Ó\˛û‡7ñì†éºÒöÆ]ÕúæþðækQsÿ¸_šÉýZT’søÍýöÍ×ùþí÷ßýäoTpÝ0þ
 
+)¸VÛtíþûŸ¾{ûíÏáf^i¡ð)oÿþ­¿ÈUerx·¿¤+¡D-ð¾Ÿÿös<êÆTÎԌùCÝqãàôîþŽnþC¼Ó¸òFWqÁ¹*_¡*áDmÒ¥fø.+«ñÚ¶mÆ]8
 
¨4s,]>address@hidden(SńÖøÓÃé؍§¾ÝJQYËñöwþš­“ïwmÃY¥AvÝ*éÈáL¬2*K¼ñ×L¥µ(ÚÇt£‰j¼ø´ýÐÚ
 
••ã¥ý¥;®A~ð‘;6wÎÆßtã®?áàW\àÙ”šsô˜MۏMº×T¶vècwÒ1[9Ðeºú¸¢Ê¾Ãc»š¼n{ë¯ùCɳƒ¯îf1H¯ÉæNÄàa5¹ÁÐöŸ“Ëh^œ%½UÙQÂÓy¿
òñŠe“^v
+¡d¾Úì÷Q8Z 
¥=E¶FЍmx«+ãÈÑÇSºVk‹çîÛó€^#„QSՀ9ánn§æD€)¤æhÌwߦƒ)Gæ‰Þo!Êkƒ×žŸÒ)ã²t°—âò9^2Ì
 ¼«Š.ZëLvÑ¿ÁZ«¹Ï%É× NS$
+©uù^ãOBºüpJGæRá‹OÑ6²müei®a웱ýöÑdŒ5ÛnT¼®tmñz7ÒÑéZË     
D6€7ݶí›÷ûçh*œ&Fž­-gžŠm›ÉP¬Vtñ˜ Áî}^Ëòù†vsîã!9„  #ÿ}Ž
+'_§‡diæjyõ¡ÏÃØÂ3¨²þ¢?6ï»}7vmFWŽ:8tvÉ\.È£Š²|i´s‹Î$k¼kª‘•ª%©f›TcÍ2’\M‘ä£bˆ–€$È0§¸ëÄ20·¦Sìâ)”²„JeDŽ£â†ó&address@hidden>G°
 ¦e¼
address@hidden;³¤%…•jjr!ŠJx8õ›ö—oªõüÌ4ˆ
+/x}mzÞ!îÃ5ÔÛc0ÁŒ/O)L
+Ykr×Ë°ìÁ˜Æ,È4ð
+²a‡©ÒY~Š˜n… ×7ˆ×çzw€¸…
އô"¥^¼â˜‰¥ÜÝÄò8Ëð˜Û,'lë[ðç!™ÒÃÑZ%D¥ääãmʙ¢¶£Ç”då)ÝXšc³?%¬"‘±—BÃØ»|hÊ«ÿ=ÒE#³—ux'SL]5v;
‡TN×ñÐ!½PìüóØýZ%n)       =ލѐÊeöAHë$9A³âûÁµŠyHPá‰^+ …
hUNlx×g¼äÈQšn0Þ&Ò#Ä,cïÊ¾Æd3%>*b®««…*üpHîi¡îŸÓp¼
)}û™Ôb(address@hidden0Q^„Ì-Þ*()GGsTŒ‘©.Ò#>þ ¶G•hfÑ\§Ÿiˆ÷OÎIhLëŽK€
€‘ixlݱŒ >Rp>address@hidden|è¦ <>óÂ?'݉{— XøRI,~}©ôãù
+‡bžž\½¢ÌQN––Ø&dV˹‚X–äñÝ¥ á<address@hidden      
Õ#Vf‹E„×Ök¤}UR:©eµ[z·³äÝTXq`U­f®äŸhX(TVoc
àÀá©ÿ5nœ¢(;aª«µ!°ÿµ9<address@hidden/Ý
+³Ó¢&:.ÉÀù€ô„Q.Xó€aÊ:’1K¨šN’1+U\;w
U,XQ|iùæW˧MÆk));y97Ô»2Tèü#""address@hidden>¶š*×®îø€y©Îe80f¬ˆ˜­s©ÛŒé 
¦æs2>yiÓ.Òæî´ßä„äþÉ¿€ðZ¾`C…=J‹ÚlѲv5‰±ƒJ}o‡Os!<äHªÈoLVôÃN‘Å`K 
ÄÝo¢±Z³¥…$-î»C7^€Y±Ä™üB˜}‹Æ8¢˜Ï:MA¶×“eV(óN¾¢Ð     
{Éhœ}3€¨S=Ñ_Nîs¿dȃW“ÓõÓ«EUâ{SEUòÐöíqé”%"ãž`–±©VçNRgϗ˜!ã}Ž0áœsOƒbSÙ^ìD.ÛWXçjtEâ¡Š¡‰äîÏú–"ÏN‡\R/lØÇTÄ|–Z\«¤:kè\÷Éc§p+€GÌ'9
À†Èf{‘ùIJm˜Ù•÷.A™Ê)ð¡?%2¥¤¯f§: 
›8$T2€£”‡Ú§”â]MµázXZjý%Zúˆ&´Ä4ƤÜ{¾ã“±d›"‚݇69dÙòËlBÕóú,address@hidden(µŸŽíÊAQo¾É©ïRvªëÜ©®[%54›YA
…
¶¸$e^pµD„Lnö\÷)H™/‘¯9r£k¾Iåý¹ÛF`ÁX®y(1뜘WÛ}çã±õucÓw‘QßrŒXì°§’B×NÕ>/«}l‚¨RÇdáZPÝÚ
 ×äTs®grÌ+`
I7ÐåR¾ø¢ê·x¾©—ôxxet!ÅV3<7)address@hidden)³ƒ­”þP'cä8
+[´/Áôê;PQeµ˜u/»xìJzô¾Ì™}rn–Q DOü£g¿Ãî&S4mzlú±Ûœ÷MO‚Ô³ÁÀ´I¹oR½í;D™
AöPTD®EÆKnÊ5`Ø[ ºÑH»èÊŒhÁaGYÝxî1‹’‰oPÛ*’E=U˜æR 
7*Aû•7SÈa2'/ߺ–'qŒo†8NNqÇM]ù<0A¢íU¨:ÈÿÇäÚNJò¹x4ߎ“|†'å4
‰ª'þªŒFLæ*'address@hidden<rl©€ÖÄ&ÊÁŠð|8õmâ©ÀŸŠi.XÒªb7wP֛;÷ˆÉµÈˆ€íLWSbº×|ˆƒo„ÔÔ!£Ö}øT
©Ï‰+O'ÐP)êü¿%Ìç|1„tµKérG&zQvnËMõ}ƒ^ìNJT{¦Ò:ôñ(‡Î×ÇÈÑdŽ¬÷„#äXÿð¸Mç25™js:ÂDËHHBœgô®;!¸
…¯address@hidden'°&N³ÂýZӁ&͆á‡üüîßAþÜzà”e¦÷)%
+hˆLcà„{Qi±P%Ëê
Ão‡t3×fV³ƒÓəÁ!_ÏÃh¬$Fí|A‚˜T®2ߟS3·FRŠna:±MxȎ2Ý<áiW0OvDJ 
eN§·È:óük,address@hidden|(xfz·É•ÍihI+”¨³í•oÕ½hû”ê5#ÀÚTËÁñ]îHBÚDs¹sŸÀß÷)­[èÄ.-Í=äpvݲUŠpI;‰•wG0Y;(`LzN)µt¯–Ä{­Ôž‹ÔXS¿RØh;P!wš°#á[+óڑC¾²ó,0CضûÊWÁA6µôÐwÀmhœ{A›·
        
!”µ3ªs'ù5Ï~¿®°ø&P²°­D¤Ÿ0Û<ËÚ6ûX^hˆÃ•¹çjˆÈÅ)†£û[ž{+Fñôؤ,à‡¢ÈU2Í&CeD‡XY2JßXLÍC_S°I-RÂKx¡`n›U¼BÆ_
…w펹­©§"…ѲÝ8¤ä¡3?|Âl_h ÿx›,Õ`݈tKödÀˆ±õìLùá™ÞGnl”£’¨EnœŠ†aµ¯      
®=ïC›9yͦÍÀ%ìLèÆ|§BŽýiŸÂTY–gŸPÖÕTÌ<c\Ô䓘6=U›’²ÀIñÏÈUjV¶¾o““:CCÞæ¸M‘j*ÅF†ßò
+çb¾ßLe^ÃpE9d
h¡Qœæý27Î#Áxѧ>ÄHò¸AÔî¯Ñ¾`4jˆœ{
+Ï=ƒPJ“Ñü¤VüêX$•Q+€³.·¥ÑÒ:sžËîe}¶'address@hidden:—) ÝÈل¯l訟üè,H
address@hidden)Ûønϐ|t3©OÙ}ۀv¹õ+“•
+®—"Ù¶ò$"z-”óy­m,ºª–2Á…
üñ<é‚fXæŠ~’‚N«2¹{H°&Ÿ7Œ¦xBñi•êé&Üê%P„ø›«Œo²Ê8‹Ê]³|äçîtî)ø•š
Ñ?c’+9µÐàE¿åׯ¬!TΩ)ØBoÕ-ŽÖO͆¨¤ôeí`Væ|±N09¹oô‡9
+ë!ëÀO1s©Å)uzºTè‹äœ´/‡\jLTà' 
ãi„ÍHÿ[fÍ«£Ü¢wos´ˆdðÖ:µ¦ï—Ëì$±úeœÜ¢þM›·´§0Ù?^›     )  
×lÛÙíàb}™”¸ï6ØҚ´å%½nÀð£ÄÐ(çGøuuC££g|]1rÃùeÐî´VöÙVÊ¥°–“°—Vç/¹¸U½BÇV¶ª¹}åVµyIJ2œœ¬h±©ey±#7lü˜Î½«ýžÆ-™Ë/IF¨£ÎîÊNziT%Å¢L{Q¼§]{l±}U;ª\R>å6¬-âàÀÍý-3ul3¹6/+bW¡œ4éëq´øÇä܃ÊU‹¸?^ðˆ¤0¼/0/t^WZ
 וVñ^$tpÐÜHÖ¹c»í6i—Ã#‰bói _Š¹º‡"§µŠ%h]Ynw¡ËºÄE»:בs…
Á—1KAºXÚÈ|É:ÌbZçu˜ËÁåXp}ñÄï˜TK$¾–S&"v¸Bk¬çt
+˜EÉϋµUÏXÌd­Ø`‘¹   ³†ÂÜ/¬³¼vÕx»^¤ÞHš¾]-OŸGœ/Fܼ±X_R’ô³¾½ß\N<cU8=
V…“     ëªóŸÜ´˜£Yî¯¹ÿÊ'Þ[°¡2%×PÒ\
žY6}Ræc~»0ßúžO~¶Îyìnõ¿·,wôÅAÙ?
address@hidden&c¬<°ißý—Lp®Ì€“ŸùÅ‚ßÕã” 
<address@hidden/Ov›ðZٕ=›uŸ_óKþº|ˆ-aÍÿyÅc±kfÍl×l
+V_±tóUZþ‚°ÌŒµ£¬µöáZD¦À«üzm   
¸Ptð=]Ln&ª¢ñôË×4<+<ª§n]¨³¹'^_èÀ
+—ûÖT¡{©ùzÛrY"yޟɻ'þ¿|ƒ’äBk탧Ëüz¶0âlKê.oÛM7'ª’íkI0ó6©Þ×ç¥ê}‘(”{m 
è;EÅ'i}Gä¯Îu8—ñ¢ÐÏ/ohÄçªÂ½¯‡†ž´~Ž)™¤~gÎâ.çÒËûåNkîû˜i<ë©·¢LŠŸK†·SaÚ·ŸÎ]ÙÐí3û~—4ï{çE<Îñû;ÿY
Ë[1IIíÛÀeŽÊÄ_åm½§ÝiŸ'5DÇ¿çüB#°•8ú1â‹yJ=¶ýC³Á•
YŒ*×>‰^Ù¬ðùnLæòùŽ:address@hidden
`;ݬ€˜‘ÜoV–ÅÆÍ¿vôL–kÁɒ£õSÔYÃS£¨TÇ>4iËFšä?Ìd³î÷J댿bü.+ñºqó¬hñ™²ÿ"­èOŽ´³æ8Í/_’o^§‚Ê<8NèHå}¾ˆ\ÿD
…
=šÞÓôSƒ5ËèzKyíeOÝ£VL2àÅÁļ§ˆf,
?„K`ÀËí‚ÂhŸãKꢶmûMOxÈå×ÒN¸rd+ÖYg•Rg(©€\ÓGùÐü    
]T‘ñ‹OýCd¹vÖ9ˆ†‰ßÝæá%æ=ÆV¶Ì´\!Í
€Ž—5~½s_ŒmWßÕC.{ìèÿA™L£ÍüoÑη¹Ÿ"À#ƒ_S#lák¾œÆý’ª¹æÝÃ31³z~ZwjÛ¶ÿ#n×s•Ë
… `¡ZM60Ðö*¿ßt`ђçjÙ^y›¬m†´šë-”¹[0åw÷7?¾ñÿüó'U4endstream
+endobj
+217 0 obj
+5029
+endobj
+220 0 obj
+<</Length 221 0 R/Filter /FlateDecode>>
+stream
+xœµ[MsäFŽÝs¯„Žv„D3¿3=Þ¯Ž˜˜ñz51—¾°«(‰ëúr‘j¹÷×/À$‹%ifbÂGPYd&ðððdÿvSWê¦Æÿèÿ›ý‡ß>üv£Ægü¿Íþæ÷~üņ›T%¯½½¹ø
 `‘¯’¾  ÆWµ¿¹ßøÞVªúáþ?hS)«<¬ºß~øþ#>
+•JZYzôÓOþ˟î?ýé?ñO?þ¢âôý¦6•N†–•×„tªj¥p͝©cb¸¹Óðԏ+ïŸZ\ªB¥½ãÅG°¯”
¼=÷Ýñ0îÓVÖY^ú]»ÛŽ/ˆ•qô¬ëñ     <HÖ*z¦ì¸JÁ-¯ûÒ
ãCSÕÁðÖóG`apuàãè;Z7ÆñK›ó†×̑>uC»žÏm;CÁÆ¿©9äÝúÊÔà~=½lù¾½y#{óö?¾¾Ù;|>ÑUŠþæ.U6¤Ç¿çÈðð•2‘·ü‡vÓ<÷£ë
üÌ«Dȟ®RuäOïŽøÎì”æ}¿à#WÅPŽÒžÇŸÖ•Õ‰Òw¿ÓQœ3¡œ¯'ÔÔ:òÓ}þH4A
ñÜgCØ*XñÁá8Ð]ôŒ£/rIEË»nsÔÁÖü¾f·ªá(5¯û¿ö|$ZçزŸ¿Žôm€o±ù•>m}Róï¨dk^÷¸;~iÆOiXªÄ‡ÃÓ¹m¶Ù]>

ÂÜ]Ÿþ­§÷ƒ©Ù%Ûî_Ûs›cÂL±†ì{f+<œ£Uªœ5zá¾h”fKl¶DÔîr{€–‰`[Ÿ£ACÖ>,À‚&Š|öCö„5±¸qOÈuÊ¥W6ⶓe7ò3
%^a[%§_ùQ*«º]óe×Òil*šþWB_¤–3^šž™¨6Mì   address@hidden,…
-MX4}NVýËӆÊ¡—k_Ôuâì‹q•µu¤Å›;ðµ¶ã:à„SEîÔZ›·>¤‚wð¡køSa¼Ë£UAãéÊÂÕÓEÀAÒo”W^¦×^f!À1|fŸõãéîœÂ4u‡„›þIÐTðÚ·_
…c(R|@\[!¸þ[?´ûžXSM¨™ã z        ÏóóáÐi±öBB݁hÒ¹À›85ðÁ];~ÓÔU¬…
@)gh`‰zw€ÕÉ9š}K>MFÀótìŽ\UyÁ7â 
ÈçBÀÝ㡪¿a`òpåSOtbH:˜P,6£‘è¦4Âĝ$ƒ}¹¤‹o™PJF8ö°9Râu&fÌö…
cè…ul嵤°ìºqOÎ.”=IBðvæ 4f"óÚKŸO'z¨ƒ[²XʑìÄ   ˆ¨$<涠
+·•ï¸’¯ôo§Z/›¬ÖT (<Y 
)JU1ÇÌ=ç~#³¨M~é]ÐmV"㥣ŒÁšzºL\IK¼e—'ˆ)address@hidden        
;ãù1G+œÔ%6ÈáH2%$Éâœ(àKÆh†â†"5IùÔù(çÔ"gäLÙèááH¡çßlšSó¥ÛuC׎VtrŸø!¿ç΀!L™œÎ×
¼?[dAÙµV²k¹E’n í
+mP~î¤ø–“ ÊeH5ÌaF‰¹h™Iµ^¦ZøÈe%&ŒÆ¥î„ê¦^íˆTƒeð×
+&œ©/ê)<u
P&9žY=‚"H×yd3(Åö:ýpnN'bWTdÔ¹b‘O?ÿ”a˜‰bd Ì 
šÈAE¨¿ê3䤖vn‚PU_ÖøŒì1ØG5lsµ."äT—<ó˜ßl*¯,_Y–w³’O~üª¸i)fÜD.^R 
ìÅC“½Ÿ¿e˜PjBÂAô‘¿)„‘°vežow
ýÚª$¼ÅPð†œÁ9â3aQü:address@hidden(('֋•“?­ 
«ï;§Õª`óäPèÁä­Þ?e)ŠOj·”§ÓB¹ïö |GËBµ• „Êðp-qôDQƒõ(address@hidden
U”­¥Õ¿ºß¹{‘„
?ãs#Jžè僜8.Û®Ôiͼq¢]XÐSQäf6ˆb¨‡ÓB¸üšå¬oўˆ.ÀõþU{ô{*/5¨‰Z‡Ø‹y/ÕeÛôÜ7IÁ-‹©
 €$x+JTìð–GtÑ¡¥\Hò       Jrk#ÙA·ß·Ûü—s¬… ®ù7U&address@hidden   õB/Gʛ™ùg
+1Ôuœy¸-:lsn÷-3^-79v®ŸOyш™óØ2Ì7Yjø ›ö<4ž 
c”í›ß»=1k²Òß"‘˜0‹ÿHÙ{KQ1–t²%¯×Zx¥ÏÈi"æô4Õ¢rF4f†½Ó‚(¥k^PJ¼°VGïž[ƚ.œ\°¦Šö˜ÁÊ9uóæÍ5Y4P݄iQö‘)
+!+–˜¨&WjôhÔRÎA!åaý$lÉópñ<l÷ÌV¨MÑhêÓVÔОšMŽE¨Ðê¨'Òå\*¯°$g_z†cJRËZ3zÏÍq%¢ܾJNÆÊ)a;{ÑÇnnÖZ²Ý=ÇiÀÐ[ðáËÓqÇr!”¨ú{ú/address@hidden
+þ¶(‰™z§‚³É«'H&address@hidden<]Úb.#µðF…‘VJ¹¿ShlãKy$Û¬š`I
+Ô&#x¢©íéDíÝ´â¸%˜D§&å×ùXë·å#€É¿S>ê"›]/Օ"sn7{ízÕ§Ÿ™"cÂA/;
+³â¤;@µFM^֖Äj=³A͈5×qP6¨Ù/(address@hidden F]¼•¡B5¼VÅÅ`€áê2-‘-@        
&"…_0ÿ^Ö>ØçòiYbX³;˜7ä™G)¬®Ù’1§‰|͖”Lq]QK¿Ad9        
ë“]TŽËjyÔpZ½vL=9j€ñj-Ž–PêÀŒõ›]”ˆ®\qA›ñ  
ÐðJ„Ó¤7­Í²Ù8n^O6Ÿ=»Gze€“©r°SÂu-Þ¶°4_
EWRi§\ýjîšE,ÁJÙ*P8Ӝ×È!ÎRٌá¦d–›dæIÿYdÆÓ&´¼ë¬Åæ' 
=™•a“¬ŠÈ™ÄÉU‚`y<Á¨·‹Ré­Ö¹TµÔcçÖPRà?Ú[Êíª‹Ž‰Fý)Œ±ÝžÛ¾':_戧fâ!&address@hidden'TÂ2cXÐ}]J$W&address@hidden,ÄÜöóÌÍQªš—nx"†Ê5-;í+]éï΀¯(³îéq/[Ä
 ¢/'address@hidden;ÞU×sgêzîÌuÑ¢¢Ã÷TµüÏqÏù)ØÒÝ:Ì&
[ì<@r¡Á=üÉìº_ERË>VºÎýМ'bÈÖB®\‘áhU2\?¥ô®ž«€|x`i}ÁBñ‚…
œR+4„xGÂ3Ëbåçk™¹N ×?Ÿî„Åk§…Å×:VgF~˜Þ߸šÿ ´_r7nú‚+s Ý«un¼%î¯KóúËóÀîp‡O
9yҖþšwXÃ~ôÜÓ<9pÿŽÞ°!Îb1¸Kt•w¶|µÅúÅ]
+tC©v7P›}#gB蘓¤´Í†ö òV¤
º.N`뎞ÅF{víLå*äèæã)¬Óõ…"Cj‘#íA’Ay™•ËÜ¥G+½öµ×þÑVäLP”Ò= s©$‰¤ýêðCV /‚
+¯Že°0ò=fò
address@hidden;þE¤_Ì9VC]z.3_iX9ÉÒD«z~ëBzÁVíhŒ=jidäò8jùÜZ$a¢hëÎí–/<E떱‹ÝG9ñ¶ýòüø˜
d5¤éÅhÑ
IZÂ`윌öyåà<oçW‚°ÌÉ 
ÜBc¿1/”ΓƙvI{4KkÅte–b´„bÈûDZï?/»3°y”‘e”¢Êö½ùüe6(m°)address@hidden/SiÎJ)3B|a­{
   Òå½ý5Ӕq%>Z–ÔF”ý˟Édwe®Gq®x„ØRã
,‘n»LmcG¦‰/’¥—“ôÙ     ë‰þR>   
W»BAn9)$wÚIÀ®lôYZïP‚¿Ý¬øçͺ¶s›!3?Þ'ÑâëÛì¼Ø#"address@hidden({äõ×e¢Ñ,‹Ês¥sŸÎÇͪ¹^õyÃÜYéÖH[Œ¦ÿb0Lr%2‘¹Â™ËÕF–
 ¦^^4—    SޞàQCqUúS[L–8FòXÈ#µ59¹.Q¨[Ä=)`¯—MbL¤oJ¬&÷e±[c.
+ôÉûº-µC°/(A=tß$„ìe‰îæ]Žò)6zž;Î??)®Œ†TÛÏ¢y¼Äëq2hÞPÔMs ÖR
q&ù¶?>÷!ªd=…ž.Šáu‡}$Ø|¾K÷ْˆa#ä©è›u=·&9¯a¨&sÙӎ“`­½ô“…
î5^Ÿ+NÆËZ÷í†lœjyøÔ¤ö¤?´_Ü£Æ闑CŸÎ|«uz_ÜÌÚ”ZœƒéRÛۉœ+â^]åXô¾%î+ú½.3ºœr!ÙâÞkhüŽ0†7à¥QÏ¥6}ÍâHoÄGßòµãírŽ‹µöì&*6KÊ%9:öÛ´zݔ¨`.ۄ³Z_&ìqC„M-µ–\$ÿ„lœ5ÕpBY4îmޖSɗØì6¤—¼wì¥'VÅn<°µ“,Ú
 étÅw¦¶XÛ­èYƒ÷0..,Í*Áë­æ¡Û³ðJQâ…
¯>C..×]V¯§†oSãu™bhV~™;address@hidden&~*JóìJqEÓ!‡ùN/;^Þ^÷Ó~ô57\’/â`“]ŽØâÄ鳬
+BØh:>3ljgü†³
+`ýêÌ• 
+ìߋÊÌɀIø┒ï×EÃxBûŠhÐïÓh8‚ˆ¥PȽl?›.4ìl8ò™]ÀÅ"(¸        ¡âÅûÙ§
+‹‡2ÌØP¯
¶š‚Àrí;ŸqøŸ{~8ÊN˜K½½Jð¹fuåNÕËS{ÈjT´ò/Dÿ‚œž±'’Ê
address@hidden
+†¸o
+¤âlX`yEåO°}A¶ªß';address@hidden>ꖑäJÅW8ÇNneŒ[Æ»SqbÔ=;Â^'{áÔFïpBôïqBÒï
c˜•k…e¬v½Gê&}…Çó1_-B¤Ë}ají̖âcËU׿ßßü÷üïÿ…Ë4…endstream
+endobj
+221 0 obj
+4304
+endobj
+224 0 obj
+<</Length 225 0 R/Filter /FlateDecode>>
+stream
+xœµZKoÜȾ+ùBNÀâöû‘›“]ÀA6‹% _è%q=™äX«ŸjvU59¤F
+²Z²ºê«¯¾ªî¯—¢’—"ýÃÿ7»‹¯_/å¸Fÿmv—½¹øþ£—±ŠN9sysw‘ 
/¥•—^»J¸Ë›ÝÅwZýùæWxÞøÙóNWF)øÍÍíÅwûðþ—›?¦-¬{éð¦JkÒš¸vóáãï¸V•Ó–ÞòþçÒ¢²Uˆ6ÒÓiÉUÚj¡é¹ë\g›æ{¸ÒÒWÊÄË+åau|ö©ƗêÊ
+Of
Íh—¯‚ôÚ?vý0>*+mبǺkö㲩”ä‡Ç'á+ÒZÚ×P÷_ÆU%½’ü©zÀU-Ø/·ím…
féèy¯m«NyzC½ÝЋÚðžz\“"­C~NUÑ8kMÝ·Ûçñ­¡’.Ò³_Úí}àTœ|k\4apñ¸ïšû¶š®¹M½RV_IÅ;ï1t*xöÑá¾Owé/:V22Š£ñw•vÈ{ÒàVþøüӐ¤¥~%6£k¯¤8ñJºJ¡{›
m¦°Q aýIOÁ•>!Eªoºoè=íÉÔ¼S ð       ÁR 
sHÀ’È[jz|Î~n8ìqo¡:Dú-xâ±kÆgµ‹Øy‡c¯”#G{‚¹4>,°/
»¬ÞlÇìÊXyU¥Ýߏ«6Å>úû[°—…M9MNª÷¸w]Âùœ·d¥àyÊ'^±ŸI)§?4}¡ÈŒ*Ç è
+LÑÆ)$$商Ø(d¡‘ÀӼôë_ºBVKæýöŒ°4ҐF$XÇÀ£L‡ØX6ç1¡E5{6ƒbAUxR°RњWà)ÔëðÔ¶7ÂSØm0F°¨
        !ŸGj®¼Š–šLwFkM?í뻉XWð†³_!$ÊYòáomsûŽ©ëF½³Z`¬èOê€ÂÊ]©îb 
TîbQDÞüqƒ4ÜBxȸS>*;Y¢p)ÏÛþŒ¯Ó‚aÌ\/ª`É3·sd¿_ç€4“fq=$l(ÛĽkÁ¶·C6>F«È€mûwnM´Ó(Èe‰Rq¦
ìÌ®©·kPƒ8õëPSæ5¨½CŸÅ
Ñ|ˉdœ&×föN¤¥U©Í‡ãý.­À¹\^7õcý¹Ý¶C›ùÓÊJx.(K9t_pçP4Ob®¥d9ò9»7±™4LÛí¬-`…
ԁ­Ë‡hÊ*ÑçäSãŸî‚¡ª÷/=#ßߣä—ofdAœ`Cô‘bæ]¨:'*„÷—z,«–!‚©®êYa       
È¥ÏÛf7º0T 
(9~ƒ‚Þ#qhŊdv65f¸[{J37žO^k–É•Z¯'﹒¾†µãö‡p\«k«ÅvQrƒ2RBzÈE‚¡J²¡íþî1þKÂe‚Á•$±ì5‚€Õ»ä‡
     
ÙNØ-úÅwÁFà’3ii'qªIRË"~sÂÅÊNøl5xßÚۆHßzNv”¹I?¹SUìØ«/–"ÜT"7ÙrEzÀKzí5zZ'M­™»Û»¼xP/u•SoÂdZ[Ãdo¤JÊ¿ðUÓS}ÕÁ/å¼.òóåú¡Í*É·n¡Ü§ÜË(PÀ¦çȹ$ŒsŒ÷—„GªÛZ—Ž`M
ê‰+-ÜÈ·’œ°>ñäåÔµ8ã‹Ò ÍüÌi¢üáj-¼Ð‚½r 5}å€0g<¸9ìÔ¥Ô3DZo6Ç®A~v‚K\ñ 
„†<xxD¹1ícö„#¯æ¹                “Ê©šRS=address@hidden&öï)áK}H"Ö)g€¼â¬N} 
þX)­_víšPAAï,ô2P»ž:{*¯§´w¸FÝ]Hmʄò¹1†Ë`Mb¯ô>XJG
X_ôÌk5Ó»•šéßV34€ã5óDðÎ    ê‰Æ
àVÍ[ÝöTÉRk&§py± pEe‘u~®dáá3¦–´¼ök³hè½;•KI7³xd6õvéˆKÉìÍaO–¾jèäçdiÁ
+uŽÈµ¡
+ÞÑ>®Ëo¢biü¤—†¶9žÁGƗ·Ú¨h„1&˜=I]¨¾Qͧ=˺ðôÐnxsœÉ+e%©¢ù¶dÏì5?Ê°êÇE       
*ê7œjó9£O‹‚we”U¦xÂñ[Ë|śI·F3O¥
Åáß
MWœÒ')  †eˆ.yø< ãJV¦‘ÇUCP+ªÁÙ-T(!9û…͉5ÇÄ¢ðÖHµ#_éÀðÜ      
YŽi(ãB4óØ6?ŽIÇ¥=×Jd$B¯ÏÔârÀ!4‰!Ò£Ïù×Bց8ø„ß‚£g<õD‘µP‡'ÐÊЀUa‹H­©%
‘àyˆƒôQìÖ³Z»î¸ÓOeo®•FHpœãZš¶Éxéÿ8—‰½\%¡”"‰½ùtè÷­r_)’dFQàý3”úÜ\‚t(J     
ÄÎ#ǖIáaAJ¢Uóh>£Ú2”É-xž4+<†e:Ìž2Õ±SžxGj¤ðįÇ|1ï±j»2Û]µêÌ`',ÛʕÁŽo
+eš·½!”@)<¾8    e˜µ­³hÆÿ!š¾’+Ñ\™ÈÌGOP””bÒ³ºÊf­™¥Î<™2k$²É”ùzƒxÁ½æCs{Üb“±
CÙ2(j9·»Ïgç;
+åAÚ°zžM&È5ûz8v9r 
é½/³Òm½!ŽŸ1sQsŸAVùšƒfRÛ^Úî4á-ø¡þ•VJ¢ª~|address@hidden(@„å±)ÂdœéYãŠÐYŽ]fÓ4æ7–Þñž\\æ%|address@hidden@Y]šê=Ö/x1ó°†-þM?`žøB&›Ãvêv4Vªû;Bˆœ‘Ü÷¥Î¾ÛÕÚbÓa×Äú3&þ¤ÿ;©«‘
 ŠÎ©ªÍãS߃º+nw$ç'ǀ8ÓO3·x
+å(Ö§x¥y5“–lí`qx¶¼Í’[ƒDUÿ   4       E½–gl€rùÈ©iõΕz÷: µ/ƒC$ü¤+¹
+¥yåÀ¿|R­37¯O];8Ì6 
=äéxâ2N½fí:öfàÉY®ZvýÏ_°ÅIÕÉ5ÐjðyM‡‡³A'NVëSäÉqì›™'[4¼»rªÒ)‘ 
ïg½4,ý¹â‡öžŽ°Ee,“åc׺,HÔÖ³Å8ªÐQLïÐDœ™5eÛIÍE;æ÷ა3Ð˱<¨ñP$µ
+À
address@hidden&–û
address@hidden'´'eÒO):ªµ8ÈH"ËÌÏIóI™¶Ë-@)£%ÒGéÞç7Å´Uzß±êÉy|…
V¥åøB¶ëýJ|AùzFß_àYÐS´”'‘*&}
I“0ÈnÁž8M×¹6=ä€Lá|‡ð±ã»
–èhâähfEj¾¹Â×xSÀiÁkÏOèP-9xu¶=Z¥üËÛÉÁO^‡‘²ù§XIrr_·#ÊY«¬œoZË`
+Îé o¬Cw™Ôb,%ÚI'\iFò¼M^Ù4ûòùì¾ýVj×ÉÉ£LX`iHw5DAÁ=
Ã\¢;&ý      )A…B}y+ƒë®î*t%XÏ£0‘!]„ãDÎk‰”Œ™]™°ô…X¿pNÒûHŒ~ÀŽùJ0
+ð’ëc̘Ý7Í-ÍÃää̌v¡E8€ì dþå-ÈõjUê:ðSú%      
ËJ—™HHN©Ê8©â~E¹¨tþ&ÉÉ”É,™K«.÷¦î»Üq͘<X*'hŸ>MZšTv¸#OšçOX5‚
EÉ"ƒùŸÌ;|³-iͳ?htÎù§îûã/M‰tMŜ 
"1H-¬¹“äÙ8L¬<‘üÉ(ù“ýc&,½_IØÓZ©²ÑCý-]0eû«SÉ/ùsù¼o¶H#2ð¹þ'¦ß±{œQê{ŠdZÛËîÐãQ?g­¹ŸºcóéÏj

ÐêÜè­Ìi'Ò-buïxϏeZ™àBã̪sûD/.㡵ûQ$qµ8=GYÈCètÒC¹‹Ò5ø‘ÉE1ÐjxR:»PӁÍ䢙Èù­gWDS”Ê՚¿¬Q€J¶92WˆwX£áý¯Ýkû>'Ç0þxsù¯‹ôï?Ͳ;endstream
+endobj
+225 0 obj
+3284
+endobj
+228 0 obj
+<</Length 229 0 R/Filter /FlateDecode>>
+stream
+xœYÛnãÈ}7òzËqú~ÉÛì&@6ÀÉÀ›wZâXÜEIÙë¿O5»ªš’hÏ$˜‡ZÍ:uªýu#*¹éþ¿ëî¾Þ}ÝÈyþÛu›ïï>~¶q£Dåœr›û/wù
       
›\ÕÆ©PY³¹ïî~øéP?MÍð—ûßîbÚ/l¼ßßý`ÓÒÇÏÊn”©|ð2³¥=[k*7ïûO;Lçú8‡§ð€_š®^Óú–~تX
…­OõcÓ5§´AWiCNùfg7±Šà€™o–JVVÀÖU*Ÿqhæ¯cå½·øuמöi¬Ž&H\­ó¢
UP’;¶P‡JˆHÔs8Bå5´w¾ÉWΫH_÷ó6  ¾       
.·Y«-‡zx:æk4ì%C›?rØ¥¯L„4åÕ];f§låbÔ¸ºÏI+%ÙæÈÉÊ[ϧ%S        
0’¶õÝÓ|D/jK¶7‡æ´oOsv”µ•1n!ÆXõÓ!Û¦¸âȓ®>¡ÁÁEƒ‹ç55­M8{^‡„+«¯ç”ªœ
ˆþ<`n”²ïþåTÍÖA¶µ`òxßvxŒ†œÏü,Ã7RW2xŽÆ°†-©àfG±þ[;address@hidden<+…
¢Ó~̸‡
+ÕÁÑâ?ûÓ؟ÐÀ°‘jŠ&ÐTÙ7[*­$fÈáñˆŸ±œà2ÉAz€Öœµýy7µtÙ¥;[¯~!àŽîÂBs•³t×cŸ«V½&_û/ˆJi"
Q£¡xÝß?!j|äµf¨'Ä$Š1–_Ç©éæuUÃÀiçt¥hãé²±í°Ø/^ÐrV‚Ž®{ÊKÞFÅÕ;·jYÉxš9^Ïó/P,1—¯ÒïÜ5NõÔìÿŠ®¹À±éfœ®!º
…Ó0îœ
:¾ÎEtüs^‚ø*ZªÛcýpœ?×¢‚XFöe„‚Û5ã\^‰x#sþÏÄ)VZZc.P¶–«í%-õYÍ1î‡ý8û®ÀEÅim§Œÿ-[G™<áiÕÙoá$áá
+'™ 
P|IÉoý’j4‘êmêÑ[å±ow)U˜êˆy±h¸‚¢þØî^‘Ÿ¼'«¿`»€4)f¾‡©nO苁ÛwONÓü“Ngæ/½
(Á_;c;ó”+®„²¥Ä=·{*fؒ®Ùq3ã
+¶nÇ.‡zšï]v):ÖøBøMWaŠÉ/ý8å+A“]bþÇ_í¾s–{ÈðÂU·P²æ»¡¤+%Ö)G;¦œ\¯9$@<address@hidden
+)ÖãS=䰀ÿÚqG`çr1PXžkp
'í      ä´CX
+è¿`è5,Sûdgúׯùp0?z£¯ µðޅ‚ÀNâ€bE¼íÅ    
kü3´ýyDú±^’+«¬Û>ÇÔÇÉõ²ç»ã™”ŠŽ÷q¨Ÿù#¸C±€ÜÕÀDˆ/ЫÆ,¤Í$\,0öH[`?ñä~È|address@hidden>Ý÷)Ó&address@hidden@•4(GŸ9’c¥lA€²´kF$WÉ-Ò14™æÈxöàÔ49
©‘;֝\¼ Éé˜ÈD
hlZm&’¢XÊÈK;ÈŪ§Tt®8j9il(uþ¦—¹º`B1‚×b7Ä«+=€"¬Ô-d3pÝRUAóv´6ö]͍[úx~›  
 address@hidden/address@hidden"ðmìmµNgÑæÚ®©6ºHçO#¦Z6¹º[
,òV*<-Až¤ÖLi]ý؞š=á6z¶«`ɹï볐jŽ5ÃÛ/‚´KÀBX… 
:)ȂÛ汸þ;ú£÷·ý4õmôaÙdž;¡*¤~WºàÊr€)7ÿfAÜÖ94¡ÍÒà
+Ëù£Í垌Y |˜p<ƒ™IsÁO9yÂ[qΔQsցDë֎r²Uˆê¦|tX)i®*8Ï~*}C22m|b…
ÊÎ̒Ÿ*ɗyj„¶‘×™H¾2A#qP«ÄÄ¢áÏêÔ¢å2 
0Øjîþ”ÜT¥’Æ•üâ0ASióØì¢5ÿð§!+¢„e¹‘CÁ\Æðõ½àõ+Í¢³¡.¤5w—÷
+       ”¢¼¬À 
ÑÄâyàxì‘KK˜¹YHÔñ%27RÇ.””›\€û¹ÝÑÔ¢+¦úaœÀpfµ*ÉIºûXgˆÂÑü×ì¦Kèl|nI
Îé-‚À(f€S9_(EhWSÃ÷¸,júd<T ##ë­OÇ-Vw‹~¡Ùúóãdg¶¦CžŒ.ʾÛÇÆ6z¿…
Í0ûýM>6ºðñóZ¼^‘$Tä׬c›íž³_8sûÂ݁gcÚ     ±|ό\ÐåÑÚ+ù,œÞ•P’ºB=o±ûÿ
+Y^vý &~ø¡†9ÙZÏ    º˜Õ{l°¶Èª† ½w•³ñ)ƒ—Æðc 
vÂ\ÓþQ¬À*ºÁá¥=q·æ‚êOGšEâQ}uzÿ(̲Dêé=I—JÀª
‹ª½ OSÂø’Ô)âH‰uÚyq,(úÜMA(í Ò¨2 ˆ—"address@hidden >œ_ÑmWGç#D%ã
+5m¥Ôk4=5ÜÝ=£i‚~‚)†íž{ô¡>NT+Qz
º²<Æ%ŽS’Þ/ýeè;DPÉVWÿNs3èZ{™E¬Æm˾<Ìj¡üÈÎ7ßKŲ‰|9tÀV—ÇÍ¥õÚ6Gèl©óÕG˜“¹ñE{™ÓYBê¸ou=eÅíMX¶•‰qc\h½cS“{€ŒX$Ù;2G"PÞï4Ô¤æ1ìó8ÃQ=
 ™e%óö¬³®ÿ´b
+xþq¥ÒÓª¥£Žmf˜Á
Ç°!ž/•øë©ýãÊ]þ2ÓæšxÉÀ³+çUšï~Β†L@,ôœØë«.öI6»8ó„Y̶Có€~ìzÑjS-cÖÓÐ<S/+.æ²M„_^¨Pšõå\Œ8†7®¿5,»²ÎE˜µw;ˆu8QӇN"S_ր‚D»Ì€“¥ûÀÐQ‰íEsý4à¡FÃâlB€ùRù<$·2$X±:address@hidden
+endobj
+229 0 obj
+2505
+endobj
+232 0 obj
+<</Length 233 0 R/Filter /FlateDecode>>
+stream
+xœ­[[o丱γ³ÈoèÇXkx¿$O³É 
;@f“³pÎA€¼hºe·ânÉ+©íqŠb±HuËöl,°ÈU¬ËW_U±Ú°ŠoXøÿݯ~ºúiÃçgéŸíqóÝÍÕ»¹ÛøÊaÔææö*¾À7ܰʸ•¦bfss¼úµT¿¹ù¬W¶\ï]åŒðÎÍîê׿ÿþý_n>üjY)Ë
þAWá×ðŒ9|ö¿ç…ÜVšñ´ÃÍ_ßÿ)<•¼²Vz|úéç?ϋ¥¯¤ð
+ÿm~µ‚§•ïxïsKrýñç?ÜDù—ç½p¡åæZXx:¯þk×~  k…
¬¬â÷Ø×#ŠË•Nç÷ýüPUÂÐç+µHoOûzš÷d•w¤–ißÆMA‹Â[|º­;ü’2iëó¬ÔÊj/Ò£&<q¼”iÃ]ß5(:W2)¥ùÕ¶mæ=
…¯OïO‡çù;¼bBk|XÅM™õ&©ù»Ó,:÷w.=<öCü»| (»•1:>(ôÛù±#qZ;oÀM¥•K–úþ4ìÂÓk    
ë®Á-æS5c;4#ÚUxò–©Çc’öÚ]“Ôç}Öt{ûŒOÁòéý‡¶ÙÆ}ƒõ%=ïoѳ”ðþB\ÐB:Ùø<NÍqLT\¸¤Å§}»E’ÎöQ·ž{a
+Õ Á¤#_{8ÔÛfփdó&©¬íÈãÝ¥\’‘\÷Ñ[˜dÍÐ5úEág4.èÅÒù—âËRük)må “qº&J:G­íú       
[ÐY_raXc³Ãyгz¸I+1úDe™ÉAÕ<address@hidden;T§gæÃ
+v<address@hidden,èhÀ¼rn)
 ¯ý}h¾´ŸÛC;ÛB Y
+êYqªR…‡Ì¡o*¯ï‡þt7^A4dëO…       
ß|yH0o„'¿ì‰J±Âš3¥,°¯†3>íø-¢½q<á)‰'™,
¸DÀz 0µQûUm!êcÛå 
address@hidden/—\¥yÆ&ø^«§¨BX‡àµ*=;FocÒQ;ÍQÆä‚ðk—9ëÉuŽ8Äí…
tDVyl‡ét­<K;ÀëÙäÒUÊÙ$SįßΏUŽÀ¹ï#0êJ8+/´kÀKH¼     
³¬õ´E}8ôèN·õÔvw˜‹œfIë߀òRcbEcºÔXÄ%½Šâԁ7ЩŸÚißGܛÁŒœghîêa÷¯*”¬Œ´„žÛB,1£“b
     ¿5¤…Œß/…vR©óÖfCîÀ     D!"¢ªÉ!Ó¥md”ˆ›-šÄ3Òp;1ê    $Uń    
ºRteN°i_®iß±ÿ×m?9,Vô8ûÌi’s¢Özyî¶æ2‹Òw–E+´‡5äBÈ<ÔÀɓÍ ¶¸§˜¥x“œâ-§ 
΢GA¬l{ô(¦T’²Àí¬§ƒ7xî#ڏ)út“’º”ä·Q²ÒÀlSb‰É7¤iNýJžõ•™&¼„}`IcɒOí¸Ç”hå³CpIE8½ž)Kò|Rú‚Ïb&address@hidden(WJ_x‘0äE!¦øâ–|èuð,Þ'†¬†™Ê®3*ŒäIäÜÝØ~>
 æ#ûz0tfìÓçŽñø*3xÚ#ž5fÄÆ{
address@hidden'abÐclPgZ:s®3gHgí4â÷¥/address@hidden
+„=ð\’s
+«á’Ã=¶ý¡ž’dÞP
+Í62Âeq16„¡ón[¤E15Š…Õ¬?‹OÈðèüÂ2Ûá6E:Ï,§=4ÚÇJ¶ø¡Oš¤#w±Èšù9©Ç…
DFF[ÈГïåtɛ…ØK–XCˆ<ŸÈqIŽpØQ.ü²4Ô±zMr2,xû6՝Þò„G´
!s¾!åÙEõ}uNðLÁÐÇc=LñhâÃ(¢îͶ$³mÞýèÙÎî5 
u(ô-dMPõ†œ×JT|V$À’Nø§¦:¤(address@hidden"±ä
+O
q…ø–tº±½ëb¼‡Õæ•Õ+yn~¦6¡Ñã‰~Lí±÷õô
+JÀEÑ++Árћ8˜{’xÀ…¦fª—YtÈH¶ŽuۍÑG˜…
>êÀ™‰A-¥4ÕÀÏ);uœ䬲Ží”ˆ¦È2$}æf6÷q¶Í8b¤Nislêõûn.G4| 
½ÒVB[¤¨ô2镊âõ)QÞEU¹k  GìЧx†ß)z½õùÔer3Ú]$v'¨RØ۞†kÌL¡7"Ë̄_
9ÃØóVPšZAéÈÔ^^V­gêCn‹=Ǻ¾}Ù¯XȅKÉÜGÉ°lAâ]÷Pq9“Õ[2"¬Î…
©H™"ÆT?/¢Ï$m³&rM2+y-·ô‡Cƒý+Ð%÷ŽÜù¶÷À§…WM±¤YÚ) /:EEYZ”SuêIÎ¥=às.®°x
–t$í[ 4¶îMƒ£:åbBї9ÿi˜îyNò>˜€ýKøT$ÔA!–«!_tBRâŸêá1ŸÙ³üÈ·ûy  
ðR¡¥Bï/WôLA¯·‰y(Îµo›Gôe«ÈPÈɀÌèÂxk¹}Êݨ{ÒÏŽƒÇ%}×`#qVà†JÈW»}PÔ1"U1‹ÌªmúàSÛèú¼$½¯tÍúˆò31#_Yvh·ÏÈ
       ¤UdÔÞµ —Õú[…¬3TȦF$4ïͅGŸ•Ý;„&(ÑÏúé…
ë>£ß0Ë2%K_±o÷V+Œ«ˆ³ÿáÔ`BT‚hՔª$“iõC‡’v¨thqRÊ°{Bê-1éÜÙúEÅ©"i$>2pNZÕ0að>··°Æ<ÐL’'I#.Ž•c®©@
p÷zçoõ}û)K§)>¨?osM÷)°™íɘb›         
‰ÈEs(address@hidden"E‡jÀ“1ú½.ôqm¼}„¤ÉAhõ;›\獈b´AŸÒyw8•Z`àS´/„·²K>address@hidden
       sr'qovÒÃÔ(ót`,»ß¢“‚ﺥ
+tm¶wCƒ<T‘kŸ÷¹‘_$zW™L²¾94±mÎeKgÅÒcÄwàÐä÷©$T¤wá,W»+Û
ä¡Df˜-B“zE¥ç†&¹É:b€B²4,7|!p¢S¾|…
U„ÆÒÅXʼnr¬BO‘ǿ¦uyªiÛ·˜6TÑ>^Ûbٝö–ºÓ?oﮙðh:w¾WLÐ÷‡Ô0       
ÕH1d¸PäjâŠèÿ“>ìÀ8ulîG²ƒ€hÍvHLUeLÛ5-F,ç†X»¡MÌà'·G”Â2"Ü5Ü20*Zù¥Sj=ÓÏD_­^aÜE·ë
Πr#Tö(¡Qy¬S‘Æ\EšèE`ý[DU¥9bzØð3E£óXïR(U:address@hidden:maþyÞ
ÓG—ç44Gd—
+|%¥Ì³)Ý×çYÃý=“o¤b< ÄW”ü€âÅx³J~a5¦VÎL3JË/,¿Ð‡Èõ58HŒNü>µøt¦Øo(À½ 
`+™aa5N¡„f¹k»íڒ»9ʼè=
uþcØV˞¹Â¨su?݆Ì÷J†›â°'wMº| ÉÍß 
address@hidden,×ÖöRCŽÈÄ=º!3D0æË^æDNRzåí+{îêKK>Ç$
+ˆ¶è¤]Ú{C—›H.$yIö4H¥B_J/3ÉH™$Ck9+¾èY0éVx[÷q
?Ÿ£|`‚%H1‡zÀÔ°‘é_"¸á
ܵé´ïÇÔ«w^­|UÊ      >1vø<Rùù
+
]­ŠU}¥‹^ÓZ.½Ÿ]³­q 9k•*³»þw˜.™`ÛSÝb/j]®‰è"ÍvŅ
£œ°X†-`Ù€ïijQpOscZêsq¿â|address@hidden<Uœp€XŸ‚ý$#¦¶&Mê è<        
Ëáf‹©CðWœùÄõ¼6%ãº=u»:ÙDµäÓSäxaRäȦ¹ó0Ïý)address@hidden>¹
œÕk#|7&°ôü:„šÿøç.] 
–M¸öµ£èc?¦éÎ—¤Ö+<péŽà7ßô‹®¤¤&¬ýëEô%‡)ôÌó̪èÌãüâÔÐ0Vtó9¾¶›Ù!ω<³CP
6aª·nºb㯻¡bó]ñô¹¸¤¢¡vr4vZõßtÍ$Ïñh?0”Îudßá”5ðZjÊO)Ùhý³µöÒ`$\‘K·
¥Zž‚çE3¹í’ÇÇ"_‹,ϓÐø
m“ïb¤wŸÓ»9ß®ÍÅC$•—-ø¢°)F=P{Ð8獁÷Y©CÛíÔ6‘Šgكoö¹éDQ´Ð.Ëeu1Øʽ‡Ô…
ÕP2ÁëéÛ,&]%õ.$›&AÙ       ¾Ì…wmªìé—Æ,,æ_¾Õçë¹Ô}܂~š¡­+Œ
+¡¾Oü è$ü'ì8u8[éIøªQ…
]JA%CQǺˆ>Ý?̈́yuŸgäÃì>—-÷]Ò*“-Õ1ߢJ楬øo¬ª“ÓQ,NxAóäż\Y.¼J6떐.]°—9Ö.X€ËåÅa|}èË÷n?שùºfrF­/nr
…²¤¼Ds)AËù롾KYÆ©+p[Ÿh#øƒÙFè¶cêÐB"ƒÚ“®×¦Û[&ߖ\<œºÔ4æ‚);ñW        W  
  NŸ¯Û]Óˆäò݇иIQ       šgŒòûòš”ÊD}L}qÍÅk‡£Z]æ.
£© Yq)„FD3=âbqÍèy%ë!šlþâZÇüš
+f$FÙR;Ú«<´È¿_p+íÅ/%â‰}¸,–ÛyŽ 
Ñ2]Ëœ{èìÂ猘ñļ†‚‚K>Þ5¹ñ™.¼ˆâÂË«8VTÓ)cC6çm¨Å/îš*U¼±*]4s€¸ms9£¡RȓâWo͕úúfÂóÚ™]Š6b=Ž§#v¾<÷¢,KçhÅØÐÀg‰
   ¾pÍoŽ‡7›ÿ      
?5’¨Ë&ü–èjùðs"~OĝXpáIß}¼z÷ñÓfNÍÕ»ÿÛð«w߇ÿ}÷—ßÃ?ÿ°ùÅՇq¯õŸ-yuhH£(·dy¸nÃD‘›·„ÃðÄÐf€×ó°’¿HQTŒŽæâ„ꨧè‹ÎJ¶ôX%,Ýsa˜›‡i¡WyaSY‘5M¬[gÆFÆó0µè˜†:5wúWdLs“Éñ:?hϗ¡ÀrGXà¡ýgj5XCA¼‹ãÌø3®%
…P‡>address@hidden/"N‰Vž#±©§ÓnfÚPLl®æé^4ה}5ü÷ÿfÈ+ÿendstream
+endobj
+233 0 obj
+4389
+endobj
+236 0 obj
+<</Length 237 0 R/Filter /FlateDecode>>
+stream
+xœ­[K“ܶ¾«ü#ö§JK 
@º¤ì”¨ÊJ{íS.Üî-ÎpErvµùõiýg¸#)•òAUXÐèÇ×_wïòL]åá?üw³õñÕÇ+5¯Ñ?›ýÕ7¯¾ûÅTW>ó¥.ÍÕÍÝ«ø•™×WUQfyyu³õ­Ítöç›?^é"SF•ðÕÍöÕ·¿þøóOóªËŒ¦Å÷aÅfޛ‚–¾KU¦¼V—þöö«ßý¢\*‚.]æ<~TØø‰¡Tæ­Õá“ë¢(²Ò˜«k]Áç/m¦2>6*ËmqƒŸ›z8´‡ûY¤2SºÀ?Ü
ý>,:˵ÂÅwõf¾ÉœªHöݚ”×Êᆠ‚™¿ºÙ5á;å3klE‡ÔÇnç-ËÌxO[öwó·9(ÍÓU;´ŸPÁ…
S$æmÔee½v¸Ôlêý|–öY®rË›®:/kП&¦ÝÐïç;€1KŸ{þC”âwi±È+wAZԔrYarúõnö¥³Â²Wõ²mÆöþÐ
#̉G¥‡¹‹‡…%ðððÔk¥ãÏoÇfxœÕІ¼­ÙÎ;¸Pɨ'T˜rJV›¡A“åª$žÂ…
-X‚zÄëVyIkSÖ|TÑÙó8u¥k—òÂyú급¿¬”.«ôŽÔ)Öß7´ÏYŸ»úЎѝ
¬äýí%TʝڽÊ*ÃvÿÝ,/rM"6áé(tNçׇ-Ú\‰Î¯§©Ù?LQÉÆe¥ÓK…€
address@hidden'›™R“tý0áõÊR‹ìJù›Ž\µò|Úø<‚$ãëYŽ<³º ¿š‰<@®½bÔ~ø€¾–û’ô8N聸„](
address@hidden;:Paí|±M%Á‹ÁöËýEûÅ{ÏÈè      þýû·³< tÖQtŠ(^X        
ò†=°`ˆ¶ÓÐÖqŒõ¦Á+
+Ñ=HV°ïCŒg"}
+ ðŒ!V*K7뚻    u¯5ïPGµèB‘’לõ.•#í=œcç|address@hidden;Äâ
+œ—÷aוEµÐ&hÎT+!æݗ…
d/Ç!öÔN;<ÝæU¹¶)í°mÛh‹ë"Áš4À¶CKÑ¥I,‚a§r¾Eµ¨ŽItŪ?ôˆÎ…
ÊÍstøY^Ñõß¾ÿ+F†Í¿pی’“stÎ?~­Œå]×£ÚæU©ÜÖ׸‹²¸¼¥Å§×rÍ:ä4B«Su 
b’¸¬r#b7í(Å^9%+±rÁWKHӎ6ù÷Ð|jo»æ5ê†A|De*o86õmG—ÖåYk•}M€–$Ï&š¶òS´q_Gì
\ŽÕðPß#{
+Y^ß6›vlûÃøfŽ(ÇÙh³ µ(@Ëò)“6U`™s-܌SK$ᬅ
°Æd­`ÍP3Vù9‚ce™XÇÛ4­XÈ°ª"Gm'ötöÓ]M)Ҟœ”Ó]ÝŒw†>ü€1fAªœŸºf{Oö.sBÍ'ˆÝJŒ>áRÉñ¸"O×OŒ
address@hidden>address@hidden|ƒíi?pÇm†îž—œôÞNx]]qRßôÇn‹ùr½0k 
Šw}$‹r´gx9æ\üa÷žM%ðÐÇè„-n)Ê¥îÍ86#R>H˜õ-nYy¶~”¼ÊHˆ¨ÁÉGÏŽ¹T¢¨Œ¾ì\
address@hidden
+J%úòî8‡&#Ÿ,Ù.ëuÉëó³^ÉÞñˆܔtÑ¯1~4„ 
$–m»EñMÁ©L—³¡wõ—¥ì(ŽKŒ6í0õ@<'\ûˆ(¡u.üáü©ŽˆIÜY֙ÔC?š±œËæ¹ðîü¦{FÕš“b,
 êøÀ:4U°‡Í58.WŽiPú©§vkP±*ՙŒé½79¤Z€|F¥XöJ a
+€®(=   
ºm¦f3µQ^ò–¬4ÀÖ$'ûØ.€‹yu~1ø¹\lŽ)ܪ`“3_#¾]»yƬd˜ûÎ>}­<¨xÓ5\KÅnÊõˆöðÀ¨µYj(U%f&/jF,º¨Ã­°Ï:address@hidden
¯+ˆ›=oTåç™(Ñz©^ÒzUJý³Áã iÑuw͞z  
šïú™ˆ\Hqï[pØMÆLõRK~žW8üârzðU\#hr$_¨r³ØIkì«8štÆ{'°Ž9ûV’¡ûCD•¹÷Ã<4í€i5W-ªP—•R
…Þ5Oþ¼ímMŒ´
address@hidden()ÿâçà9iæ¡劣rƒI¤,Ė6!²Tÿs찐$ì[©b2tgØeÒ“.9T†Òv”ŠÎŠåZ+ÖmØ|‹ÂpæÕÊ¥›K{,åþەÅ$ÙÓEJj
…âô½G‚©,³¡Ïs%íÓ/¾°´(”x’tM™»5•{Vy{ØM…
Ùü¢“ÎËSB€™1TRî1aK:xë9Òeڎ¼Ò¡cO¼7¤öޗIhê¸0hÂ+1ٗq.KÀ}|’bWn~ÉX€?S:address@hidden"î7{oª3¯-„ð<tõ¹´ßc´b2
QM
+§^!\Y1šJŸ0
?Ør˜Iz¤ºHX·u×aŒ$¨0Õã‡-¨§±éîІPGøÄcbåw6VÒep¸âê:tÑ£G‡±R1+l1Vú)Jq*¥ëz¤»V1ßx’Ú.
+©K[ntþý8l‘?Òwïwm׏ýÌØÎÓ¼ñs¼ÁÉTJêÆ!8•úžú]^Ô"¡õDqrxzhîÈÖ-6=`¹pL¾»öB3à™MºÊâÌ¡»óšò¾;Év$Û½XËýΓðZk½›ZrGˆ}
 ~ÜÈI[…æPnymmãéÞk`Ài3ŽGû4ljÚSzô§‚t¨V¸Š+ì±Ù‡–zp¥U[‡a
ƒsŠˆX¡Ï¡Qߎ}wœb"address@hidden/è'ÝŽÄ£•xQ+ÝŽ–˜IJuª­—·
address@hidden@9-ñ¸ZÚ`ºFŒ,CX,:RÑ=æRæœ/$Mծݣ¡ˆlÊIcw²¥—²¼ù4«ú‘\§bþ
hü†©÷´™Ä*É~]Ï$BIŸ~™´Eû‡sÞÔsáEĶ”ļá&¨þ’<—vŒ·ý`¬2…
J½¸áš\†”6»|bîg4ƒÉB„§K;j4͏ÏÊzµRß­ò°Õ„˜o U̘¸ÛîzY¹T·\‡¸ï¤r¸²gåð읒KS 
‡T"2Œme‘¸-Ï¥$ÖúEç÷ÿšnOèþ&àºíi‚JN™
ÖHõ\à¿b&I®®L“«$¼R%や.û‚cK ·ÊO’㲧Ê#‡Ó¸òH’T×´çïïÞ½A    (¸*Ý1'“rFSÎt%Gðšó…
†Æ:ä(rŸK±ç       GM–“’=”â›VŸÚŽ]Š[0:address@hidden q"žI‚e"?˜Ëbÿ%zµN:v7¡
WD[˜Ÿp´ÉK–‚L¡NÖ§Ôx!ëÃÐßvÍ>VÚà‡~eÔgåÅÇå˜Q´‰ý'}Ø5Ïh¤tÒnÓ)´âÎ4ø"‹
S·³0H_òHóç_дEÎWúí5®Y«Ü%¥†µòºÉ%>á¢iÅõÓÜbú}ßEÙíãH9·HPRDŠme„·l멾Å
+pÐHÓuÛ`Zån1È^0cšãðBÒö1‰à×]}¸?â5áLë“3ÓwH:ÌAH/m¨–öђð£Jž·MԎ:address@hidden
ÄvN˜êV’3뇇®ÝÔd2|ɳ‡lc§a.dlþ’þµTc|¬2·§9vdZ/“'Jœ^Zo/ðó}³mç 
3&¼±*ÿ'Iß°’Š¹¸«W1¡•šÑJž~šqÂz˜Hq7   =kN__‡†¸Pùöºgô(ª“ÉéK<
¤É”`n¬MþDÈ\¼÷ÿՆŽó+ 5¥aÿŒÖöFÔqb 
mæìÊÐ7)A‰pR÷Ïl‰b‡·ˆ‹AÉmÛµ<address@hidden:L1øÑõÍòj¥'`Àº\ü¾Ä¢Î&_‡ˆÊÖpC”ÓG`!òR$9
     Ê+>     3·Š?G¬ó¤É¬hÃ|ôwI#/7N–W’ç¡öŒa%ԎV`eíх
„˜ögݲwyæD=öðökùns‘&ŽüæâSt
        ¼é‘´hé77#vo [TáÖü""ª‚è».¼<
+žŸ%ÐKæw¿"c™»ZtÜ{ŒUk¥OETö¬ËRÁ5ó0ÿ]þxÒÛ»ÈxB/‰{)ë*e’þ…
Ï[ÚÃ7‡v"„ròÊg5k¬æüÄ^¼é
+æ,³÷K‚%ïfV_Mςk¥a*ri^0ò³ßCsî@ 
èýPïÑ7ƒ?ïŠãX^ýâìéÖ©Æpæôq³‚\߇)E|‹˜žsÓä¥]jlþ–:)address@hidden
Â7LMõª²uRâŒñ,`\H>ŒÝbÓh¥âÄÂ14w÷«óRîô–Jª²µ«"address@hidden<hZVvêäit×ck¨
s¡¸ê*Ap½ŒÜ]1|rã7×ÕJÆp¦Oèß~–ÉLyq-Ð!aÑ£kïmõõ»<µ[äû9‘—ñ&Yˆâm~
ë*ÃÎ}éID˜ s³ÆXGÊO¹¯¿ì=pÌú¶kÇ]ô›CõM;<á`q
+U‹çëäø¾þÔîÛÿı´       
ÿÇK¾šb’ÇZǑˆRxa-÷ͦ¶š;¥uÉÜ¢”.gM¤LÞÞã“bôN—¤~sšúñØЋBSš“Nm`1Œ¸(*›¡­gOþñæê_¯Âÿ
š!endstream
+endobj
+237 0 obj
+4127
+endobj
+240 0 obj
+<</Length 241 0 R/Filter /FlateDecode>>
+stream
+xœ­[Y“ãƑ~Ÿðè7KÝ0ê.èmvcvWË«mÙÞ¿ It 
pFóïueÈb³¶æAh°Ž<¾üòÀ¯wuÅîj÷/þsx÷ë»_þ·9ÜýÇã»?ýÄì]S5šky÷øü.ü€Ý1]WÚÞ¡«Zß=Þ}#ô·¿ÀûÒäï7¶²šsøÍãöÝ7ÿù?ïÿòøá'÷¢•4LÇ?¨Ê=c
+žÕ6>ûë÷þEf*U³´ÂãÏïpO«ŒM|úñÃÇýË¢©od|üÿþ÷pPÃYzóýŸßÇß3ƒçúï?üù1œ}ß7àJÜ=pOýÛß~]YÕB¥Ã¶îüN1<êâ÷©T£tÚýë±ß´{ÿ¼®”">ÿyè{Ø÷Ÿü_de­MéºB
     a’\>~¼÷/‚µHwm÷û1ÊÐr”ë¦]úá%^X²:íÐÆé«{.몖&]ãßtՋ×·U­P’§9.ó§Ÿ`ÇL> 
ËeÚn~š>address@hidden|6Œ^Gaddress@hidden G+æ`³hÅã´í¼r¸®4Ãí—1¾ª¬NVØ›©kç.( 
†;±°ì:,šr{O~OÞTL46wxÑ(…
ò÷“ºi.å×TŠäçO‚^ösx¤MÍÑ;ú}û´÷‡®†È¯&*QãÕNs7Í÷ñ¤\áVÅ[y{W5¢I7
]°À3ŽxËzä6ùñϕïüÕé8OíæSô¾ üô‡y§®è$Ú-ŽsTŽná§
Ö°¯Ô>٩Ђç7cð_|´k§­¿ÐI¢Û~þtoϬ<—³’(ç¥;Q †£
¶SOjáÝÏS|°®„­“ÜðAÀSòÁ¦²u®Ø©{Š>+•NïM Ž¸™¡ƒè…_¢zËü`t+GYh…0yœÆAì– 
¦›“ôÒó(9КFÉÚOÑA­«Pa*ÁÔ4¾L°®w       †oÒ]&“
+-êtˆÂȽ€—£7½‚ë;%½òåµE}q4Ȑl~_´¤~NÖ%M:ûÔ=wÓÔy–!%À’DÚ9>+Hûd¨ù 
@ØBØÜü3k•$k¨Ò‰}&,¶P«&üC]‹?ŽÂZ80ª[¤“KCDáEƒ.
†Ô
+^Ã|š‚q¸³2Ĕm»´Ñ…˜1(Î!IØb_º—©_âҚÕ*·qëñ+il×
ˆ^ou ®’›ùÀàèArˆÃåÁNóÅȚ:Ýà) ªQ
·×ÍÛ!BB ôËvØF×hdƒÖq<î{DžF3U;íbt›Úa>¶S7lü¡üÔ ¾'Ó.„Jžº_O=˜fr+[£[½bb
âVŽdL}·D‹2æR윚Íiz즾iÁpÙŽ]֚`,u­Dr´t#C¼í`éC?øu$¨D[tä]¿‰Gրe) 
±àµÒ¢­²J        4¡6«3¦£+À„Æö%º<address@hidden(Pޣтw—˜ 
`èLDê>%ŸNé¦û±šÚ¢eÁX½Õ5)i‰ZnP`óxèèiZ÷yœ+89"•À£
fïøMZø8õcòeHŽ
"Ò×ðn<©Mº7°Zõ¨ÛMÂŒÝS·‰7®'0^-!€©Z%u:£¢8!à‡ŸP¡‡ý|T-»Ý¿¸Kì¼0$ä<yMr9iÈå¼Gb’Q۟qCÖà³àæ
…C
+4ƒ¥BZ€þrt1óTæVàîL³&790àÌäKti+Ê{þ:ۉ+%f ð´ÝϨIÄ?ç…ÇÏÓxHÑ©U`$ðž¢öÑZ¼Éh 
ۀ]|÷?Ñô|i»]P!Ao×^úâç{N(H8ó4p‡ê”ç•¢D°_¾AóÍà{›­ƒQ“­‡Œ¬òÄtÃíԆ8Á
UÐg%Í)¼};DÓÍòÔrìžâ³ó²M$ЕIÊÛuÞI¸0°Ø2âËã.¸–?
+bÛÍýË1X.9•XDm·átMG‡6%]÷—(1úÊÈ(¤`‡ï¢Ã×L§¿ËŽ¼1±ª5âoñ 
˜³6ݺÏý&á·e\¼¶}®GK‹é:{Mz‡}X¸Q«sFEEŒŽø-”vÉ~Òö§!¥Êblû’(¯I‹¼½5—7¿Ux8Ù×h
VYbÝ)ý[§N1-S£—÷ɀyš3iÂÏ     ÿ†®{Ò«À5¢sp!ôáȶAš€¬F 
»ß°fÑ"6ãiŸ¢žœ’L›ÄëÆWÐ'
=GëvµOZ&úV]qÄÓñóû²Á ù¯ÓåjI
+Ö=Ü#
§ñÏ$V 
†¬Ò؋òNæ*Ëy9h`¯±µ‰ãuyñ2”W›jo|¢ù'eh~^q©ô¢¨~óŒx‘Oöü´Ã¦ó¯KViRF*ìåQbú1jŸQ*:ÄÝ
 ªÞ¦$ÏQ•«{'Ñe&i.L25©RÔÃd9nüž`éËR±Ä·éžOѳ%x¼ÁËæ (®|…
Äµ:××/¨^±ªk­ËraoGÁp“*Å:¢Oïg¿uó ãþv÷›æ{Ä·Wºª)¯Ž9G8±^ÓI 
CœRr'D4$ÐÏíiŸÜÆÑ{â*`«K?/ýƯïŠqF_db¾¡Äã‚ŪÄC|%Ùú/Ý]Q¨Jht»ö  
a¯“+€³ËjWÊe«:Pü© °Ï
++à€¤±/ý~ÕÓ``¹–é{WY­%:ªt(address@hidden|)
+©Ã¼    ûSyCüy?D=       ….Ñn·½[8–ö]¾­ÈçhK; 
B#j¤$Qæjè‰!b];2(DÒÅhîÚ%Æ3M},address@hidden
EQ/gŸáÞ+䧆‰Çs8±¹ÇèÓáxµ¬¿ìš¸T’²&Œ™Œbf¤8,Ml3N]²Æš
+YHSž•=Àö,•9V‘˜ë‹H,ä›j½Þ!3x9µS›ú+Vb=}ébëž6yº€ÝÖdþÛ®Ýîû¡eä˜NüàyÚÜ}ûG·_Cd8ÒüsŽæó3AÀ±
+âeOÃ6(        Þ&ŠÔ§ö”j)‰ªëµà㰋J#ÅÕ\'6ú‡’,=ýëǏ^WµqTÁÈ;…È`Ú%†ðfŽfLî» 
ßÚ±#*ÏEúÆ\?³Ë×Z˜–Z˜ö­-LàÚonaBÚRla®Zp”ÉbËҕ<Tm.W¹,»;X#ãÈòUK‰{Ÿ0ˆ)òÒýþä"l     
  U
)I½JÄbœáT‰&aXÉ$²ßó˜ä¹rÁÔôñ   
K°ó¦Ú©S–+(1Ǻº©¨üÛjÒÐÜÀÕê‹ÿ1XIƒ¢€+OË}¾&YFØ­j
¥HûÒh¬ÂžåÎçMQ”îsM—Ôr4JºÂ"Ë®눍è‰Xbp±;“;ÀýÔ0 ä}é?£Ã$‰Åê’ɸº§îX™
+è6ÃÇԖV¶Ü–ÖÔz¾²ûg•AéÊíhsԁ¤œi?F“㕱„«éM%1„(
+–;h.ö#%»ÝLnÍÌ+í¼RJ°¤H
+lE²Tñ š*ÎK4Ã5^‰Û§PîK¤aMy8¢6á¿£Âo,&tÅæW¡?w›qH
+%
+À}-ÙÃî~NÖŸo`å­niD‰€å™       
=ÕRàY㙉û¶¬É•Ÿ/ÊoH!žuH’UÜG¤ÒJM÷R£j‰¬H8R³&Ey‡°Üz½ØaE'.‰6(DëÑu(]üÐÕT¡†"Hâ˜æĸ­V7£AƒnP(ïƒ\ï1<’B)2‚>™‘!á/£Ã˜•÷¨lxþFl<՟՟¨(›å¥¿k>@e£&ãѧßE
 GÀpïì<›IŽÙ¡Ö»ÁÖS¦n9MC¤w–Jåûý)5T]©Ï®zuHÕ9×Å<!‡ 
ËÞº.Àè–ÚÉ4ÈkÔŽY»o1E¯åJˆ‰€*kTh,¿/–Ù«æ·í5šœ%öR,³Íݐš5Æ狙        
xW¹B?JJ`DTnM[سi‹Ð-‘Ö5èmÞ-ùqèðzâ߆aÙÌÊ<î?'à5ú¬¤—£Ø•i›U¦Å]ñî
address@hidden@ÖñeÒFJe§dE
qÝëI³Ó
+q¿BÝÚ¬]lÆÃqß-] —ªöE;address@hidden ‹xÜE»„4ã}d/ÚuŽÎW¨F9>¦m`!6
á –¥±H8Að…Ýp*dúd^1ñzè9Ÿq—¡ù˜ØXLU¸q<P¬¸ÑbPK
+`ږ}¹ƒ›§é˜øég^ˆË—ùEh»g™Š/ZeéqÄF]WÇ¢SÊ×<W¸žŸŒAò,¡=-˜ÐꦔЮRJ‹•¢êÈ­|[ËR¾]̔†™òÃ¦‹ìȬ<Z¨pœk‚»™ó¨Ý¸ê
 
åß"úŸ§tn×Bʇu,„+‚ŸÈþ¥*ÀRç%JޜÓ4ᆊî“Z§ÍPÄGf|F‚Ò¡®ô„æþ©ß÷ɵjp<6સÀuáF`Ð
 θ>ÖûöKPâKKä#“¨#F¥éLXúRXìRX`É®°¬sK"ýUízoA'åòF&address@hidden
address@hidden,¤‚Z_Qéð­?g @‘)¬ã’n\3âH¹—£‚z°(address@hidden
gý¦ù&±üºµOëŸ_Øro)ûx|ÀH¥9áK7ÑÇ+ÒM­K&UD\)qâ®<ßRDƒ7è]äzw=VúN‚¨uÝ;®p±Oº\뱑O‘ÍZ‡R±8Øo݀3ïOñÈÀ×õZË×M֕ñüåÇÿûþï~®zÊ
…ÄuŸ"֙ª&£ºÖ®uD¾"A‘s¤T“ ¥<ã>Ñ>Ž’ø×K8Ò!Æ­ŽâºMŽ/ 
)’:;aôAC·ý.^ÑÁÚt`-Åüg
+ÔY¹,E³Æ8+•eԑÖ:j¥X^¦®]ð3ˆLâ¥ë
Ý°SˆpqÅ!ݧ64êWZ-™««C 
¼R¤qßHL‡JYÅÛåY¶Lã¹ËH[Ÿæ‚Í1—\áKêžšÛZµeíÞlËÆh›üþ(+š` 
JÆGE“D\‘FHÇ|FÆPG穝Ãp–k#Q]}ߥ‚t6)ÑíqИѬ$–^u~—ÔøТ8éÄhå:–‹¬eH¹:'¶÷¹ßÒÄp&“”jÛR½#·XE©[±e͗|ò‘fó)¾âQ¶§
å<š>ê~KsØ®ÒA'OɝW“ä+’„¶š±Â\{6›Ü>
hnî«I…%$÷ÉԜZþYå¿ÂµÁ‰ÌE¨fôÊjé|hÙ^€YÎÁ¥Ó›ðÞÙ÷~ íšÉ‚Y(ËoVMב˜l„;µ 
c$NÆ[Ç2—˜OñîÏ)Ùì‡mOŸ Jô=OC‰èfßÆØ$Ãù
ì¼pšyÀO_܎a¯>…ßFÞþ^6
™»Î     
address@hidden&ç•ã¾2ëåãd6”}Å㫵ÆÚÞ+ˆàç(4[Åú×æ|Œ§YçZÈ*{ÝoÇ(address@hidden;ÛÅ
-{Aºù£ÃH©æ·ïŸq>‡ éI\ôÚ˜›²¼L²K8ûðšüðx÷¿ïÜ¿Ðÿendstream
+endobj
+241 0 obj
+4691
+endobj
+244 0 obj
+<</Length 245 0 R/Filter /FlateDecode>>
+stream
+xœ½[KoÜȾ+A~ƒŽ6bÑý~ìÍìnöxcy¾Ð#Jb<3”IŽeþñ©fwU7g8£ÙÝ 
address@hidden|õUUÏçKVñKþ¦W›‹ÏŸ/ù4†ÿ¬6—ß__¼~§ì¥¯¼F]^ß^Ä8L2•—VšŠ™ËëÍÅ]Éêåõ.„¬¸âf]ß\¼øþíÛë÷×ïÞüþëõ;îÊÅ$g•ò>M•6Î1J*#œ+)ee¿¼¾œfÂVa*ìm³¸S7íÎ*Æ=îލÃØ×K{_iøZ0
    ëšJ¸iú?ï›í´ˆ¯4“¸ðx߄AnaÐÉ4ø—]3M…Æ+
cݏÃ4î`QëÒøîáUZÂH'Ò`½^OƒpWÏT|¸ŸÆXe½Ã[<
íªžæ‚ó¸À¦ÙtýÓ$        £ÝÚ!­¡¤Â±æKó•2—wõ•åÂÐ]wpª§tç5Î)n‡Û¦o¦K+[ 
address@hidden  z¼ââ¼ÛÁüÅÛ©,Ë¡é¿$aJ‹bkúiˆWÒ9Æ>†!]      ëñ¤ÓjtÀān™ 
Ýö]ŒFX²¤tIž/yä$“p°QEª~†lŽà8oÄ!­&iÔ$<îò¯aµ8±k'ÕqY1Ë8~ý*žÚI-ôÁõ¸¢ë=«¥”p%˜´ò¤Ë³õðØ&C‹’¸ðªÛ&ã·J’úg½ðlè'²òœü¤»M
       Cò»oûPß5Cfž$›¤ÍƒóžÜkxÆfS-˜€©
+,ñJ¸cêÆþJ7
+6$|³^w        ›·$Æzl£$•«¸Ó¸Ê/éÒZ<\·nWOñhœW`yñhÜÁš> 
,hOVñiU^1IæôÓ®˜Æe¥¥'[n".„³1ƒ³Œ.¹ÐxܾÞDK_1G3ë-b)“%üÃWi.L“ßœZõã…
䕶ãEˆVaòuTœààÉ$®gŒDk–p      ‚…
K°„üaSGƒ‚#HEöƒÑô4T†‹Öѧyø“=gÕ<ŒI2Üh=s‰×駱lQ9A.r7iõ¥CH#¹=*GÀŒ4´µ¿`=„¥
 R x)™ç·ËYE°æþ?
¡îX¶ƒº»íúM³1gì«{‚öL¾´}qi¶•ävùTóUÆûz53’0VîÚ/IÓNàXƒ(
ŽF´>%å;N3—"ö9¸•S–p>)ä
j‘AÞ°–›‡â"Jm"address@hidden>вŽlÿ¾ëÇd½Z²”M·Ãpé       æ£3«‰8-Ây»iª„šäý”$
;9R‰pDÃ©d9œ‡Ç›)\*
Aåt»1Á€ƒ‘¨†í»ØmHÝôñÇÃàmh-ÈÌ½%I`Á[³      ˆ=¨–ãda²RلWq        
ƒuj·‘B„ò°á­€ÀçèÝ|]¥Ý`UI`¢
+‘zAT 
ÿ¿Õü<$'Ÿ3‡gàbM&ÍYJWnïố’_ˆJûƒPXĖB=„LjêQؚ¶¥7÷„R&£Ô±É÷í*©Ò^v¼/nqÕ¥B”'¿éHê"«uÛl·Ž¹NÀN!ëñ¾KçÍðŒuҐÌ®rãä
 :À;t¾©WtTÀ}4Êàܼ`óíd2B8ýáF¶OÂOaßZ‹ûՉî€øpræ_À[S^±n7íX¥-½—û
€Nü¿ØÇ5BæÀ¼©“‚‹ìá)‘‚´û¾ù¼k†H44;address@hidden(2
+P—d0†bG:9“štG$G„r‚~ÖÝÇCßJð<ó”rAæ+ö"<E°7›ƒb¶+¯ôsNo¡yÎ<7x1G
a5P“•ô͸뷉Ó9o!{È'!rž)address@hidden'ݲ_¸ì^´UbÀ–ø¶o°BaË
+dóá% ˜,§È¸ç„)ÔO29ÏDÈTޞE„æšX¢¥Î½ZйËXBüØ­űvk
âœeÊ€·†¸í0ì"‚×;M(J^2È؎‰¸I¯   šë_AE^æŠA³ívw÷iei¥.î‡ÎfìAR¢¨¸¤LqšÉ—
"ý¡É̆?¦P2«;|j·wt5F!~ìú$wÂ$'x3¤8º ¹»5ÙÞý«C›)ñ©%¼˜]!+؊®x 
Ý6UêlJ§^.¬ä”³Èzûf“P.+¹Æî¶^›×דV4P-oðò7õX'Q.âháe2pu\jU“X4
æÈ­)…Ë~xYeÀDÏyŸ-HŠ9‘–ϳåßÖí¹C®-FË|ž K¢ñ¼dw¦2™‹$„ܟB
+ 5C·%!³P! ˆp.L~ŽÁÅdy¡žšá‚<address@hidden     ‚z­(íxVèeºoúîá!!·uŠЛo       
¶BùÃR½`xL‡ö™Œ×qHV‹0™Ÿ˜
+ßxäݘ¬DvXËt†jÝCJ’­2”5-%ɸp;·‹PÉvq,ô»i9dÔa\TË,÷‰'A`ätÿ§o©0æè3›ï›Õº‹ˆ…
{U)‡­s½_u|¦Ï/äëEÊ
+‚ÏQV,Ÿû\>ÿ[76ÉJÁ~h(/yÎáÅÙL"Tdëq“RM®ïÝt´)5ÅdK4ƒ¯­ò¡>m1É(ŠÉsBŸJ’
+ÚÛ*
+²ú½Ž-¸òÉ”±bVK¼Jx
+lK•)1C{CÍ Lèì\‹—¥ýù¸eäbS„ü.Ñ¥4ÕÈF: áײ¸
+€nÁVü^Êò+ĵPǛªpÂèÐÿyýNÎ[§`8Žêù?Å)ó
+h4{®,ëÜRù0>Ç£\®ŸÆ…
+Š=ušt1âc^Ze>凣w"¹M£lpI¤;^éUŠþŠ“ëŸu§c§ñ9ÉlLWŠí±±*1U“÷½&84!^“/Þ´ÃØnWX€h®œ%Êqv–‡b&)E÷”o’å
…
k™sbž”oÑRLî(–ԛeZäk'’C±œxñÒ=ã§ÞKê:oê›&®bOFû±(TµÏýQ¤a²(ϖŽ(y®rãhÖ·Xƒ”Aòíó&e(
      ïÆæqß ‚ø%¤:»Ê),°éfsHڎW!ŠŠ&é©Òž(J{ÇXå
)¸<µ9Æx)address@hidden@}‰=„†ú&!°Úl`ÝøÂ+‚ë`CD;EÍJ¬ü²Ì½€ÉÔëÕn°"¦è[Xº0~ιæ¶;6ý9„Ö¢RhÀp¾Ä4«˜REub“ä¹è<‰ˆg<²'+U,§ÇÔùˆOQBï㰝oÄ<I_PýªÃ½èEgĚńÉ$»'ô]&Ny8¦A}Tî]Õ}s»Ã6›ÓÒÈqt®jE„NùÈ3Ed1·p&%y÷º†äNÈÜȪÚ#¡Ñ£H:‹adª©zQ˜ýjݐqiÖðý<address@hidden
address@hidden&óÙE¯ÛUŒ¸­&‚ao“9ÃüžY‡œ{‘‰Ìn\T¡àÖn¿
+5%¡üŒ¾q½,ŠPÆ{ª*ïs=˖çl¨Ë¨%¦5¶0„ ¤ylꅎ¶ ÷˨·ßûžª!„0›u·ú´d5 
i©ù^’ÊC‡I¢]2Š"£ùåíûŸÿEĈŠtC³š/¿Õë,kÃëŽ"£Ãª‘â.°mRWŸƒèow¹¢û
+ùnî¾vÓ*;;Ö&|ÎóŸ¾}ŒI9°Ç©ÔDúY(ŀaÙóúeeP]|âw¤U?ъÆ´#œdI 
+~bÞzlÖÍ×É´‡Páøú‰†¥Öë+)2ÅYs`©
™ZDî3B/5ÜÃ٨ñM¨T”ùNdÄW(±cú
ägÓÿ¾ƒxßôùeËå·M»në>Ñ*.)Ø>¶ãt7pï(ƒøÇ_ß'H²9xâ²ð¶“:iCƒw•Ž¨°¸‹¹SlÏ/3[8HÝ·c
EƒÐru¿8LY^jJ Ò.W0AÚ¶TC¢"address@hidden       
address@hidden
+       
¤"Nx™ëG¡N‰¹Sä´ÿC&T¸¨ÕÄ7ˆ1õÆnÚ?Ü®RÓ]x¸SEÍ5¼‡Šù>"I‚ASï¡hðdm¥xs˜k+’òk°,čbN¦‰‰ç½ŸqϳQ4&ꓨÏßÛÈ
î»ßÈä þó_„†ÀBàŽo#LQmB;âžìè_Ó"À&address@hidden)ë"J+ù       ÈX9õ^[iv¼lj&›Ú
Æ y®HÈýM”ýD¦͖V=^êH¢`ž¢e =¤¶¦Ä’mó˜ Ïä&address@hidden
ÖõªÁlŒiêäÕpvÿ address@hidden
+¶)ˆ&\V¾Ê</+ˆßŒ4°‚—cx
ÏrM.ñt[¬As&O    ¬éU‚n°ºôµÏ­¢Ýì+¼¥ ó:¤¶´cegªo>&OQY¹I?®xÎÁY“Ÿ„lã¥ë 
ª|øÂ1ÆÀû¼ËBɪ;ønÝ`EUäÔ«YŽʝì̆':óÎìw    §bՔÎí¾­ìrÛ.gXþyÁsÇÐj~
ŒQ¹ýõt’ Iyâ³3{S~á˜ÌN{fËg]·7é”æBËþºÜÃ¥Èì°GYÃTî   
¯fKºC¨ã<]`È=†ÜO)™*˜K•´¢ö!èÝ°ûÓ*=gK5Úóù¢ºxNt¬…
óÐ7ð‹ÇžOQàëúÄO¦ßí˜Â½6I¾ÖQdžT‘5ÐM~Æ8ê)öµäôE²TPÆÓF0sõøT¨ˆ×EÃC¼[.Ÿøžlx™iÂe¾àѧdáUK.Õ«UªÀ€YÉ|ž
:œŒb]fú%ÕSyþ3Ï».½G¿Œ²Ù
ˆE£Ù(ÉÚ48GQi#×Vœj&¤OØ
+Çb˜[×eÇÎíu?jZ~µ‘OE½;&ðo™ï‘KóR6       
EQn)ï¦s*»18©â׀~iVS¾ˆd”À4‹BLøÄLÇÃÓpÆR•’2Ùwþ€…
Ï~LEwÿáúòïáï~ɚ†endstream
+endobj
+245 0 obj
+4116
+endobj
+248 0 obj
+<</Length 249 0 R/Filter /FlateDecode>>
+stream
+xœ½[ےÛÆÍóƱo±«´æŽIžäD«ÊŠg“TªôÐI¬ÐÒþ}z0ÓÝ   
^d9–ª´ªYÓӗӧ{šnóLÜæáoúYmo>Ü|¸ãþ¨¶·ßÞß<ÿI·>óVZ}{ÿî&address@hidden
+›g¶¸uÊf¹½½ßÞ|­ŠoîÿÏk7}ÞYa¥„Ïܯn¾þów/~¼ùSxШL;aÓ/Lքµ¼Hkÿz5>(\fro¸ÿç‹ïê™sʧÕ×/_ÿ0>¬|¦¤×iù?ãçAP'>ùâo/Òç
…#¹þúòõË¿ÝGùç罓piÔít°:>]vuL('yž‡U©2'µI«ïºr[÷ã†2SNâz³ß 3©
+<Ä°Æ×ZY¨´Ø?õC½_ 2czqÛ%¹׆²ß?…
(2gíÙwõ¶lvÍî!üJ»,Ï¥ˆ'`:¡P—‹‡ÞµCzRJ\[µÝ¶Ü%‰sO½ùf´ñ
+ËFßށMÃ/~ØǓøÌZƒY5?‹*S¹Çź{¨wÕ(†Ò™^–ÛQERÂ;Pà½þǸ¦AC_ь¶ð™Ú¹´¶m‡¸<jœÁs”C½WE¦¹ÔÛÑw3é<*ò)¬€j].nAzRø¦
kE–+ÖtUM;êJú,9ŠÙ¾Kžk´Ç—~µ©“Å¥’s÷ˆ‘X(<T¹[%ËhëqqUÿÜDýÝ)ÎHOVXuIã.Ïפñ>íYHzuò]‘yÞw¿Ûw«?Ž¢å™Ò=a¿Û4ï“fMQ
 ë¨aÔٝÀ¬èâvÉÅ
k5f3½¬18k¡ìÆ|抍ÁŒ%Wüuqà€ƒØÙÉ 
8XAdEµÓ×]RŽ×$ôcYÕYŠ)É`¸N(¢omêõ²zª²J1fCE®"@(address@hidden/ÎÈ}Ï6Èr§‚&@»(Ñr!ŒVO½Ù4€M)±H/ÐøÃæ)y„È)Nœ(ìO'b‡š,ö¸N°à|Fxꛪ܌§w!÷á¶õ¶íÆ÷*À€ÂáQÁ½Ðs•cÇÍbòóÛÁñ
qH~Âù,lŽš¥óCŠÎä˜3è€ڋ]²§ð
+·zùi¨»]ÎèÌæb&ည„þ1ê¡°ü’vÓTOI±ÖÄþ#C‚!'ÇXNá     ™þ“    
›"'zpiPªÝ‘]öÛäÎÆçܹK8Up‚N—„?ìË®D¸/4e¥¡¦Tc
+
+¯wD™ƒ(PNO—QuFÀÜ.a”8"”Ýa^”±oÀí™)­S,í)8)VUÝ÷é–wÚ´“ҖлOÞ*¼FM!ap *"
5¸É]ÊJ.8Û¶Ù%Íx8Y~1€„9
+ p~}åÅr     
y)€’µ!ZIÊ=ÕiyItyÌžÿìkʽgg™È©\å‘#f¶ä^Y’žË"ª;HV¸Õý:ÚÀPAZÓ|L­é‰
µ¡¤³­Ë]ŸR§î˜}Žadþëf‡árœAÚ]Äê1)¡U-0ÎO'É›¡¯7cˆ¯©’øØaddress@hidden
+*Èç‘鈤ÖUÒÚdq]îš~Ûÿi„c€2)ؐâ<'Ï8F.ò8EN.°ª«Ñ¦=â|nѨÈf,”Ož#xS? 
_ÖÀ'address@hidden  
k)ÈãU!í#9vÎÂ폲{kæÜ4KÎf™¿IùD†ê]pûˆä)ºÚnHr³Þ!µ2Æxþ8è—
+¼%'}b$×I”wà0šN¹Öíþauš›˜i†²Ù´]ÔyÀ}\Á2°‡Š!eu(QÒþ1
+ã<ô«*‘Eë©¡J`È°vNåòË锲ˠCýBU;¢J½Ñd-È¥5§ÜÓ
ÄïSR„¬ˆú!Cs1+BB#
UÑT«P¥¹°Ïg¥ZÚÏhڏK¢œ‹È*ú×ÈÔ%N
õؤžƒÚ”pàÏSbbwLøÐ\—ÂK‡[.–-—~Ý~‡ø”](address@hidden@RO}ý{<z5Û¦êÚ÷É#5»$•z“½ùfÜ
 Êľ2áq)Ç\Š}Ú/²>¯:Sê¼þ!
+Píp)FæXVr훷ͦÒÁ ŒÅÔ¬³ºh£×Åé` ~ QÀ£%3ë6%iØÅ{¨‡‘I‘¹ã“ ³I
+ü˜–=µ¾6-çöâ
ç¬u|ÌCÆpǪ֙fUgèøÞr¡
82rüm™¼+GŸ»þ¤<Z^(ª´ªý†r0&ÅaÜ'-9'‚÷QžË…wû]…Ù 8à$¶PË°÷INâؼ€àΤ&aýhès
±ö=vPIÊùÔ.U†A%Z„OÀ
ç%;db†Ý`ÕPÅ£-uY8#yÎ3ÙCFOÜ}Ø·P4ÅD
ô¾ address@hidden>¡èEÀ[µ¯)=(îèMPZiÂåp™ñ†äé1Ù-—Ô‡­ÑðŠà/™jw6ïªÊdI…å    
̕Շ=ðCôx8U»ßDÍ
+–r…©Dpw­ovÆ£~€ÀÊ¢˜&´–˜¯T-–úS
ù²ùBM‰òNH퇼óóHÀ©Êã 8ª<address@hidden;Q؀‘$aq? DW)¡,ÓIrkHÞÏÐñ ¡×`.…
WgÙ›¢XYÀ”®.1ãsx2i·xmPL˲¤ÏáËq.8Λçm̦àcàb*‡E-™Ã “‚% 
address@hidden'éê1)ÂQ€ÖP쪦ŽñzÃç¹óäÃmæwå~ƒ½J¯8EL=ÎÛkÓ9wn/¥s—+¦§K̔‹Á‹¼šAiWå¤ÝÂ556Ž´çr9ªÅD}§3ž›
 `xµï{*:uNސcGóN„æƒ
+‘f!®¦˜××`tb—` address@hidden        
ͱ—h!þ~]vTl›,HOÅöþ÷‰ÎƒKIsÔ4|ï5ì÷ûij\!øvhU¢ÂÒ8}±=
€7=¥`ž½J(¾q:©.2Œ3Ǭ|’d¾¼³lòãÎòDI§Lx‡iÃå3¾46–Ÿ%Ã2s¹Èê¾\z§¿´/®í¼/>Júf܈ 
(2LŠR҂œ-Pµ›:IIFi¾·[=“Ôê    w¨Ô¤ù¸®±HéÕ=D~¥¤Ä¾Ô¸ÍêÆ´:k£$w… 
ueáØ¡‚³Þ4ÍÛ
’        “d÷$ˆ†=͵ªyêàJ"ò^ øBrƒYMh‚„_ðîĹßé|UoÐd 
L‡Æžt&;Ëõ§¡C&tG®ÎûAòrÄÖ²‚‰Ç_i(ì¸|²^M¾»Ç>rhºäç¢#~T*æû»fjê6¾G$È÷+'``ä;l|
…9€å&—ײ
address@hidden"¼Šãׂbð³PLA”ß\6º™ÔdõPá_´:$~ÇLfnõÜ[]—¬0 
çv/Y]Ê]áÅ)Â<È1ÅYìFqsî9§ð†“®‡µDiû*j \ÈàÇ×u
+űïK2ðý‘R“û#ºþœ$…ªÊ:*'nÆ°>U;M.~hödÂR™¶Š´>ÌSzóõ»„iÒöí'
+AJ/;¼˜Ü¡¬›¡®†}W#×ÎÇ.÷½êX‚$WۉuÙI梒Kd
+4Pä
+ï矝2¶37Æܝªù (Ç9²hàH…¼8páF3à§À§î emÃKð|YG4„(˜vƒIê**OW Ï0
¾o_¸®B-ýcgý‘ëúzë2É0iOþuK™u¡òYºl¿®KH6*4ï‰
+GžuŽ>6UÍé}4¹±881«RܕùBõª*eÆ'ÝZÔƾ0ë£',‘«6þÔ;&Úv‡{Z®Öªv»]'`Ëà2 
¤cºl=²xâ1].8˜'üX`EE‡Äb5}˜fBíp?4ÿÉþï²_AõzÜì¤   
Q&ã³7nàÂ_F·î•öLÔ4{Ç%iý©J2„Ùb{¬½É 
֗WDvAMª80q¦`6R²f4›é>¼—gÜ¡“üñSŒ€/õK¼ʶKþ‰øïxÏ¡Ù 
¹•>찋TsÖ+ùU³¦Ê¶|Ÿ|_iÊâQ‡óå\ëkbˆŒ¶'e-wªè}¡õH°8™…;»ýÅöS¡§Ü§¥ 
üѳ~\Òu¸§S֜Wá³ä ^­Ya€Í¡ÀnÝÉ^WÓ\fá^±ìÒ£Š/\ËøN7™lûªëq5·“nUb[ .C
Zz6ÔÒ³Ë:‰;     Ás o˾I/°X™/–5š3Â/jØB6v×ù»çä~†|àã…
¥(Ü÷Œöî¸)5IïZ´Ì,d>"ÖŠùÛvÀž‚-ˆOóÓ4dSÕ«}ºÍ“‹T V%w{s¤3.·Ü 
?e£Òî§áÏ–Õú—^ìŒCíwXއž&°‡¸ÞEÈ}yû÷›·*~æ¸ÿm­      ߗ      
~Vۛo_Ý<õúvèöõÍóߊ›ç߅¾ýñÏðãÕ_nwóòÕøžÏùZŽaÖ¶âdüVÎI À:µ·§„T¡`ü
„T°„7KùP§dÒXê7É„iÚ©LË.صìÁfo¾n÷ˆ1“Þõ1KˆS6çT҅
éÓÿû9졝Ÿ³|<%“¶ê7‘I‡6^qÞkOš#V)wÁóA‰Ô|ã™Ô|8˜q€$IwŸxÿ«TK÷ûŠH¡
        
ñ¸­&P'™FsVšm͂P#yHèä1¶†ÈŠ¢!Ÿ™4-=h€Žíj€võ°ïð[†[&%fe!Ì%u&¸‚Œ©:5xz,iÔ'äq­g=)éI!›E‚e&sÅ4é$ŒÇvPd‡weƒLLò=f&Å(îßöõ‡}ìZhHÝ%¯2“¡‚`œ”Þ!þ‰oùö)q´ÜN¦×037Îo½­"vÅzÚ«sšk`½\i¼ÑûÉEÀBº§.º$ÊUø®§ÀÅþ3ˆb2\·m;݊˜6èjCóÌB•º+3×J»ºã}†$Օª›Ë½Ô)w4*8†ìôˑY²^.Hû˜È%ÁÄb/jÛ
؎,address@hidden&uøƯÌÉIOz:Š
ΝS‰ð¡™¿1âÊMÐz2¢”˳ƒÍîØ÷†gIFë̱»¸Ïàx~q‚ÒÍU·öcNÿù£}£endstream
+endobj
+249 0 obj
+4311
+endobj
+252 0 obj
+<</Length 253 0 R/Filter /FlateDecode>>
+stream
+xœ½[ÉrÜF3ç'úf9‚„j_|“mEŒcÏÈû¢ØIؽPZ´üõ“…ªÌ*t£yÂG
address@hidden||†?–ëÅ··W¯ß+»ð•7¨ÅíÃUü/™Ê‹…
•¦bfq»¾z¥+]}}û땐WÜÀ[·÷W¯¾ûñ‡Ûñ©«¬ñéá›w?¼}ÿSxüú=wåòÂñÊ
+›Þ“>¼s#¥¬Œt‹aáÍñ7/íj~Ç}e,ÇuïÂ#]Yí…KšÇv3~ŸWNH•žÖ«Õvüs
OÉÖe=´›Çð\²Êx&Òóu³ÞvŸÇ羒ÂâÚõr¹íîӟ(
–H~5Äå%8Çàn†§f|›pN¦‡÷M¿ìÚ»ôQÇ5þ¢¹_V×
|î¶qað±á_]nWUÞ#Z÷Ãv¿'Tå%½;<ÕCtªÐ°´_Üp±gd]»i‡zt´0•f¸»»Ý?›n|ê+&4>.‚½8“ðÈUÒKiŠµõªý#n[™Jq&iÝá‰2˚w/w]×ĀÛJ[M¾à
  üÏSˆpkª\ò³©±Ýôc˜àu§1“^žÚUsà 
d8òSròã®îêMòœS44qßAeè£]½nâ7EŸ8𳫼>ïgõƒÚ7CڜeŠO“UTBP²þÑtۘTBAy7& 
>9·¨ª¿ÿ|hÒvÕ.?S+²ªû”b)->ŒÆy/š¿Æ9¯íú¸#€#ÜO×|Ü5}JsØs€°ü˜&W”8ýSÝÅH^iIHqñrM¸J嚨ûì[úÖèo‘c·›Ö3uâoçìéûö.&!ØntF¹Í}*G%<~¨¾ÿ5¹
ðFä:¯ô
address@hidden<Á»cn óŠùà]S‰½j°sÎ-üSÎՊœ»®e-ÃàŽ)b$;W|h{7Ôí&Áì*$
–áv‘f“èy„)Î`a‡ë~îÛeÂÀãgš
+$Œ£¢9]šQ-¤m   ØD¹u薮âbØKKO{^Qyù
+„3>‡
® 
~¿¯+©9‡n
Ñ%ó»í¸ƒ··‹ÿѐ‘aܨÊ- ãY¨Ð…á΅
ŸÀE¾}wõúÝ¿C·k®^ÿ²àW¯ÿþïÛÿ|?Þ}¿øÇÕÛwã:ó„eÊ(ˆ°hè):|¦‚ü„%õîµ&ÄZ³Ò:vó—[      
  
ü‡)Ušù!{Î(¯|µ¿Ü(address@hidden)address@hidden@ÀòNNòt]?1J2'ÿŽ€<áÑéâ=ýáëØV©Ü^_àŠúB×
»1—UL3³8|É(jm;§Hì£~~N4N;‡O}!á¢Ä#4Dâ‘]S#÷rÜ!;̽“ê/];`äÖ: 
éûÄêx&QyLéJâZ rԁ0
+Ã.EhAÉM¢:>address@hidden"RbO{7¤þ¬‹SxŽôhÀ”¢…l‹Ê:Aä-“™éñv.y&º`7Š  
Ï"7´û]“¸³ »ç>“ƒbesÐ
wë´=¨yÂBlàЃÑÄíCò–gžDIÝÿÖ'address@hidden:А9Üå/O
address@hidden
ªÕ+wêk˺o®SNú¬Üó»ÒýÿôÈ°éQ!€sF•†i¦Ðe»M‚S(—4sZ—J—çîA”ä9;¤„Å“Ùs—i#¤úŒ6Jå
+z‹Í–«  ªgR®ÉÇ"Ï
2ÆAbä–ÛÑ4®¡h–8Ÿ÷¹`ón­¢#ww¡À¸-Ñh›nqúœlö‚D)‰eHüaׂ’“[AøÉßÜ_¬š¦EÁV+/address@hidden<EÁÖ]“ä”56Ú-»<ˆöýÏ
 KŸk‡þðá¦ù}@¶´µIwsy²—³§Ä
ìJˆŸPižxÚT¡Û!¸Ò³C4ÑlZšæ \‘ ¼â´¨”(¹bÜaزîw°ãØ: 
address@hidden,pL#^¬ÞŽäï5ÆÞPåÆÀh=7grÔ+êv•£uä³-Øß½´}$¯ß7‚õ¥2"address@hidden;
  ]td!Ê7â¦5槲Xo7à4hË1႒"Nù[t0Ô§äµM³ºN êE~Üùø؄EžN¦9t“ùÌS·Ý=>¥ˆ
+Í0ùŸ[D]HNúd‚:C,˜<¬p°+žûz¨Ó¥¥´§TӚR­ù}™ä¨nÁÚÇĖÀ¥ž¦"sT±G‡>7¬_i¯
~ÿ%<\ג¦¹M,ŸÐˆ™´ç›Ä'•¢ƒ,ZР
Lêv™£–‡m‘ôÅМÒ]ãÃOí}â›PŠ»év÷§¸"+e¹ñÉ/O˜{)çÔK»p¶è~X„SP£«‚Þ)ˆ)a,address@hidden/address@hidden|address@hidden@Md
+ËÞ!rïãýUòy6Yê
iæõ†"¨O•.*©÷+ë¢ÒyôåÁqԹ谻C&.9Rêëd—É”z½í*!†&`)‡R,'$¨^…é[:MР
$3^/·k<L°Ò U•›õ®O°Ĭ,ý„)—‰Þ‘6‡¸°€ÏòMŸ Ç+K¾CÀ0†zÐÓ5¡,鑹¾4‚+0~NÃÜ9Lèvt#
º÷¹k×õÐ~J•Î3ÏhÚ<}ØvĊ”&òšÎâ2ÿø”Ní€)IÅfû-/úµ#Ûª!3³Áq„gÑ»Ø}´Îƒü»~»ÚÅѬì”Â}lšP
 ±¢aí¼™Ïߤ
+AâðŒ~—fý4Oãó®•É»ž):TŒAŸÞJÊ ¤X=ã‰# À(    .<v⌠„¼çù¼÷º²÷Öí¦]#Škšp$M    
£©RgÏBBëÆyŽÎõvÒ!Æ^à_L" address@hidden'3ƒö¹“º]Ÿey‘…3Û}pEÌã•p|Ïj]œ{’`!ydlPs¢
+°_òäbXV(=׏tz”~‘O‰~n9™NG9Øî!K­ß?ô4k…ºÍ0      
-dÖÐÕË!É&ÍC4Ù¯8‘R‚Uð‹£|;u›à:›M±‰]ï
³—ÎîÅ
øòåñYzû&Œb-wÜ2d)@=J€
+SÌš‚s—P‹;address@hidden"<&“@:˜üu 
address@hidden(CÚÂ×ï!áA1žý*̚Om¼ýÎLå˜/|<ž«ì]b1áŒv†E£©²[D9îfyÐÄ¥3_1631£tunbV¥°0Aù&address@hidden@¦æ
      
address@hidden&±s`9ãxl–àÞÞ_RbLJõ´ëq"K)RÚ!´ÍÁ!áÒ¸}J'‘u÷f;PÁ=Øÿ!´Âä$)Œ*£qŒ
 ³ûçºÚånUwÉ'œ{}Y€ÇKSbf«<‡òClcw랣-I8É騒™Ž¿ºae’Ÿž‰žãz17ƝŒ?OÖ|¦ÞÔñl&   
   ³„.óbòˆ2R’Ê;C³ÀՏË*oÀ2’¹ãÉ¡Ì…Ò"пP‰o'׃¤s<X:SBVh¾ãBà;N3ñ»:8+
Ì"!á^’O~Ã~]”Š¥îûfMmžÞ½[áѓVþÏ¡†ðãßÿû
2¸¬Ù¡³oj$µ9șÕð<º˜v™)Ð}z\G'+ðœ§uãm®_GE€&??—˜?ÞÊãՉÃUÐyì 
tÁCbõŸ£ˆíúägÉÕáäЙÉm$¼Šnõ”mëf™Üêóõš§zÓöëÄ|&NÈU‚˜»p˜ÚK0<I2š*ëÍjxÂ9xV9‹ËOZf¹8qÐ2û„T*ßh[֛ÄàY.ü©âŠ\µ<ë®Ú6÷שIÁób¨Úv)ߥ£+~_\ða|–Cp|œÍ.¹tTZ¾Ú>ׯhÆkiB75>#š¨Í‹ñø}é}qWãý†‚®×Ñ[´§Mó’°ß„
e{ÙúE˜U¶þ0d ôF1ìµ²XÜË®©š+ZîtŠ°Ã+,Ãs_Sá|žØy­¯Ç) !ŒxëY•{ Z¥ŒÌ 
òSQ€áÞÐÙg㵫píÝwÙ­³¦¥ñ±W
+òñuf‡"ˆ|»z¬Ê|ˆñÓ8J>6ùºÃÏä¢sÇn9S£       $õºÔŠ‹ëˆ)±öL¾[تò¥ä3²’»9
+ʨ¡Î /ØB9‡Û6nÏÌZ§Œ–ù™´
‘™$MÐM&G͔§¨Ÿ¸šù€9ržm=!ÀHWjY(ˆ§‡B›³x5™j¿>¬¼Úà(]çñÌéjo¥Èqw(œÆ¦OLb‹„ˆS/[rkˆ]À,„;Bv¨-ñ›t6<žsë3Òcv˜V”‡
ÇD—°Øp­ƒXì‰{ßxùBx›)A‚nX#_M+Îõ>{gk:Oþ¥e™ÒMÓÅŔ¹ËÓ¡æk‰ÍÔRqð(MäZM­Rç]©¹4±á‹.ÏO'ygN’€G>SŒR!ß)£F!ͤ
 ú§m7¤Ø‚*£‚XƒìLIÃ%‘¢™«wsÄzhÓö'-öëåC•ö¯%íÿ0ô¢»´Ó¸#¿sC¾£¸n̜
̉¸ÄÒo€€„»‡ñßÖH…Y¾E¤Û3k¬·³Iªsý¶x¨Äù4r ƋÕ 
lNn9•—È0#:''ëGX"ÝχÛùåË¥ëhÄWxŒæi^1w“ß„<ÿ{üÇ1€,"ó±àÙÞ§-Q© 
|@utȏ›Èy!á­ÛÛaÐôÃ#6c±ˆ}Ð
+÷…ü$lá°óKÂærØN´N[•ã.IõÇtÖd¥†ôY´—,è0Êrɦ,!bˆœL#Ollôÿx}8ü÷?  Oãendstream
+endobj
+253 0 obj
+3993
+endobj
+256 0 obj
+<</Length 257 0 R/Filter /FlateDecode>>
+stream
+xœ½[ßoäƑ¾gÅÄà^b—ý»;÷$ûöq.q”Øj†Zñ<3Ԓ­÷¿¿jvuusÈ¡´ðaÀP²ººê«¯¾j~ڔ۔þ?üw{¸útõiÃÆkñŸíaóýýÕ»Ÿ˜Ý¸Âi®åæþñ*ü€m˜.m7Fè¢Ô›ûÃÕ·²üîþà~iòû-¬æ~s¿»úö‡?ÝþõþýOþF%
+i˜Æ?¨Â_c
+®•¯ý×Ýx#3…*Y|Âý?nÿì¯
+V#^ýñýÿ9Þ,\!¸“xù¿Ç߃¡†³xçí_nñ÷̐]|ÿãû¿Üû§ë½á°®Ä憸VÑÉ0¡ðCÕë®Çg[KF´Çý•³‚óRàÕ§v¿Ã«RÓ½/M7œª=>D«Òà»êP÷£“„*4#ËÿùTÆp[ˆRÄۇ§z´P’ÛøÊ-š-#Etò~ÎD¡$Ý9ôè8)h7ÚÇèLíâµÊ_/(Æ&†Ž™BŸXu5n°N“AÏM=zA”g:îÑÐúk7BÈB1¹¹Í÷—ªíÜþŸ›ãGô£äÝ~h»úz¼®áƒ×-.}^õ}¸
+ûÌ8ÙÖTC&xQ–´æ‡1x£—êÁ_³EÉ-ÝöÙ_҅S‚Œªë6\ëÙFKîßUÃèYÎî£8šÛž~®5ýüký4^…
3eŒåê¸C8éæ1¦òéÅHºB©q¯ò0pÂD{›ùÀ9Jþ¡ù¦îÐ
+«E\pne֝a
+&_     ì115Œ‘ÑâfŒmÈp%M|ê¡
+ïãòÄèÂÊipãâû¿„í×¢äkf>?agãÒ¿ôÍ6ä»Ïîâõ¡íÆç
+[Hkâªúº{Á''¯Ö]›Fh›ñɧðàÀ‚‡*iË(çªþçˆGŠÐ²ªnè¯Ñ   
ښ!̀k)Š6nöû6t±Úï[Ì|ËiÇ·ÕPãÛJ'RØa„;FÞ›¡AÁsK©ß¼éÁü, 
à!t_¿ÄŒb֐/ÃËü­Œv8ÀoÆÕ$D!ó…%TËÑ«t°¾ 
ÓR•£0»Ÿŗg¡jÀûœq×áfåàÚ,ÔLàí€>“j”QÕ¡=Q8ª!À¸6JE«íÁtíÜRL:address@hidden
+—ðøùyëè«„ƒ›Åly¥þe[n8·,SÍHÞ±zÑ;BwŽ3‹O‡XUB×ü#Žq«¦ä+ɁOUWEÿ[i-ÐzÈ'ÙRɇÍ5ó’ï|èŸÃót¥)«
 t5VØsF„$Ä÷GŒ
2_ˆiƒÕ/Í
tkðÕX€žÐ</¹ëÐCX²TQ
—°Bá“Áp
+Û%:¤|address@hidden address@hidden
™WӞ±¥´vi»39{e—³’¶a%€t„¡O-•)òAÛ/address@hidden
•‹çê#Ò1U(A~:ªg\®"¦‰›E7m—ð.0‰–åŸÙ#œig‡§jÜo^B"P-„aÛÄÍ.Múuð´Ì 
0๧!¥^åח‰$¦7TrF3ÆE¬¬œ²¾ÿŒ‹w%‘¬à#¨(Üs©¶i`þvR©Ð+°ñr{®7Uñe‡ªûqÐ2¥f‹[|®’x}ÎJ+V—ðLϤÜâqS‘»ÀPb™hDG•MÕIŒ‘šÇ­z
      »\£Ú+¦sΝ­ï²ßÁ>›÷k¶¨<g°#ã;c°”*OFH†g¤éˆQ"%¾!x¨ú#RùJ£ø6$THB',çP
+é®á)Ð^Ø~•ý›“âz´‹
wÕü‘sʜ#²Vú¼Ã™¼g‚©ŒJà=®rÜ""õ/ÕáyN/¡<–šRÊCړk]ÊDEœ¶º9T”â6œ%‚„€è2Z7ôž9–K}²Tó|²)Ÿи&®²3
 ‚”0—Mò¸‰^2‰†R³Å]XO¾Ã¿ïÑn¥5ݺÛuuß#‡‰ÄÁúçj!É*N›ØvXS¤NmEäLQʅ
„àP%nPPLÕTºöÍc
õ'Ta¨U‰ÇDAƒ9Iôá¸m»®ÞR.¡¼¦|¹Ð¥H½ÐS{
+š
xHr*WûûPp ϔ†I‹£Í™Œaddress@hidden',xB(
+©eÉýË
address@hidden@ÇJBœuù„C‡½$3AÍO„˜),Š˜é%„º?Îò        ª=UO[ñ>ÉP¸É$
+¶k~Wwu®˜ *:ÄJ‘ü<E'aÑ)“o>D|ò¢/í’ԅ]šð…‰°¨ÇrÊ9aÛ¯\À«’Š”Ô:Žkúð]J¸õV¹Tòªª†K
+³(hjØ!Ú"address@hidden"Ä}!%¤z㊖µ¿ÿÑ1s$€xh,!CËR¿UŠÐt–èb½fF“      IJ
î%˜ƒýI07®Zm§H^XOWàñ^”Tد(&¢âg:—É:”í¾AýÒêŒ3)•xҌ 
Ì­<qM’ƒðP’øäŸ%Ɓ³Ô>w-^䚠òò¿GßJfV^~¨·øW­ªŽMˆ±¥S0·˜€Ê&h
$ÂM¥àN­¸$ÁÁ%ôÇ67"address@hidden(ð39d+º·ÃRØ\®ÊF b›™ì•½?_ý¸øX “Eâ
Ñópk+¡È        •˜â7‘»BÙô"q×µâ—{0<’b€k9`=
J½o¢{¤XßÙÀ̅ïðò-M>KZKµ¬±…
Ðô—.fɉÀ³f‰¤Ðõ‹·¢†·rE·B¦=ìëC‘¤sdx–ž6d6µM9<ãI€üâ–œ§‚ŠUè»86cn¡wÊ´›0‚5ß$eq×ÔÑL’²³q¸ôF1»ööK!qýFë±u]TéĬ±°faŠsÙ
…ßcWõ×ÃæE|áå"¾pFø’‰ÇŠ–ÓŸvÐ҇
+'¡n'ºkz”-<´%.l<¦³^o;êöQ çJD/¢|g…Ó4…zYi…óÉ”üIXSIqæœâ‚zmd˜}³mÚS¨ž¡
ñÉýê-K1‘§úê˜uëy×þŒ”)—Q1Lˆ¹¾Ä.d!£µV±ã‰Ð÷í!-mbÈ8‚Ë%§<XR…
Žk#S#­\(ª¾mŠ€g¾JÂøéc‹±¡µ_é],C#Àß!‡,K“T£Cœ‚AñIz÷)Rñ•æKӌ|ú¹Êh&*PKQCžÜvU?‚4çдӰ9qõӑn
 Ï4[[zjsì  ×÷Ê|žø<
)address@hidden:~$yÈ&)þ:õ¨B¹&c1³b¢mCQrI7YhH"x¢Ôpº8øì“KK‘0֞º-ªPà2E
Æþg#è     Ø?UûGŒ}a)ÐéÔ°»s7NÄëEQt-´¦"yïÃ$å.Y¹mãdé‰Í!ÊÃ&‰6-´H1à 
•âŒåLù]ŒB—„£þK?Ô8–jé(“>Çۓ7ª5qÆWú"Aá°Ý¦É©áY£,ö%Y]'u·àÈQÞL5<5+_i&Rםfø¥’¢È2¾E¦#&Ý©Ç
     
DiÉÄe˜Ohy†^‹cÅàØ+ÓÔáÜÆIl˜œ6Kex8i¾Ö_>cjŒúÈ´f–ÆP}»‰Ác¨ÀâlÁnÏr}$½r®€†±–˜L6‹Õüü|ÅÛûÎ|ô~¬ë5_‰\̚ô]]E½A'8JÎ:žÊ¡þ-gA[Ùëí5ú
…
¥Ž6¦½Šªè¬R’›´{ó7­8û«OTø^ìø˜”óªP&8ûµ³|-ç³|Ï@(t³!þ$"OÃ%Re¡šžœ&6®Q»PQ¸Èk{šR$öé„B¸ïôÚDÉIçì†Ô_‘ªgûŒõ!öa¡£ob]ͺK™UúÈÎX¢Ô¨œ€©*
û¾9’ŽÄüÑ
+¶'ÈêèH¦ÝyAš˜ûÚ¡ˆDEÄ$¶u¡A?ۊ0›ÃW•œ 
ç|£i(ÚÐã.ŠzpM#ßÃLb~ëêp2vZ¦ŠMyîälÜl 
ʼÖ0^#éòüÞ›~Ž/ÏN²Œ§4{¬Â¥[|(i·ËÄõSR2ƒ¨E‚xQ#ÛáIõj%B"#t)Ùî¢Po?}LgE‹ü¤ªØn0‘T¬é¹L½D‘OÇT”sEÁ߬NF
 ¢ìˆd¾Y—
tjwÇ:ê8åÉä¤c~”,èüðá›ýþ_±X3[Î       B\+»ðÄ–vañ¿þ4–²«§±&gúŒ 
œìj4ÊR%#YÕãŽöÍÿ7ôb™
µSnˆÇ½d~~²ÚG‡;ó*¢Ôä”ÀC’Âþ$QêR„œE©`fGƵ^82îÊ7FKQÓÕéC§éPâLڋ'address@hidden
    £â牰öûI6z…C¥^ëé‚F'ý|‹¯KnWYè2%Íb%¤Ù*OBÍåq±Ÿ÷Ñ´
Û!à{ЫÎʲ(g²¾gzI^*©YïKG[×Þ£QyM¤r¢Ìi»¨ÌÙ¤Ì]dææuf¾Ò 
2~9ƒdžA¯L
address@hidden|ÂßÓ¹¯.¯âæzQ–:ãy.ÇVëüºØ_æyq÷NÇúwõ[ÈîüÉèá±×µ|ýHrF
¸"f´o^p/”¤ƒ7uÛi8úkbAF6_qÊÞ-ž²0}Û)û >ÑçHOQÁciÜôÿh’&H•ÔaQŠð$;”¢YN]’Qö
5ÍËO}Lv&icZ&ÙÛ:ç?&pbN¬2;g5—gõx?µ[’Q\ÂúÂʋ¹å5¦Šì0 
0¾_‚twê"°x¹ó\¦À"'Çôc­³žçЅgàxv …:M6—ë&½cvL@     
ʦ̆°ýDùÚça—zñ(‹ûtPç8¾<…òZý‚®”›°ZÁP“¼>LÁtÒ6û!*rÊ,¢–ö,WæE0iñc‘ñ¸Ã¾P¦#
+¸‰*«S›—h„[ʊ¯Wï'MÄÒÏÛ¥sµÐ˜œŽ!{ƳÅê,âò•bgÂrU)+KG¥à™ø¢ìäÏò;ž'7€3Ç-ö7܂ùW+=îäpš?{’7nÑìÿhŽÙ!3“x÷uð[i\:Óq¬Ô³
+5yÙT„E¦S%áQ¦Ó>address@hiddenG¨…¯Æ.×ïINŒõ›ä‡—¦¢¡¡Å¹þÁ#€ñ袞÷í"›ÿꃟù
address@hidden'‡‰Àï~råÆÚ/þC]¦l౪ñvU)7s<Èýk¶ÏcrÔ49T©Ü%ei,Îtzë.’h'iCêî¹í»Ÿ
 ýÉ¿!f^ņô¼ñ§ºÂë¼Hû±,åA4Äë|KÇÐÎ?PöÃҒøý˜}ñüU_G®œÕÎ!îò.“ÕÖ 
GêkRg5¢ô4xcep¶€]/address@hidden ‘õ_®wõîîÇ
address@hidden/><address@hidden/kdÂo`¬‚ž;H*îâW Sýëë—&L©~‹¥   
ã'â•pY±?œWàÿû_*Q™endstream
+endobj
+257 0 obj
+4587
+endobj
+260 0 obj
+<</Length 261 0 R/Filter /FlateDecode>>
+stream
+xœ½[YsÛFγ*?‚o›T‰ðœ˜™¼9Ž«¢*çX[{<ø¦ ‘TҊÿýö\Ý<œDŠ«â
+Îôôñõ×=ßg¬â3æÿ¤¿ˋß/~Ÿñð,ÿµXξ¿¾xñV™™«\-j5»¾½ˆ?àðR]913²®X=»^^|£+]}{ý¿!+®x
o]ß\|óꗟ¯ÃS[™Ú¥‡/¯~~ýöüâ-·åòÂòÊ“ÞSÜ¿3—RVµ´³¹0ðf\ÁÿÎá±àéåÅzªÊ(x9>Ü4ݪíýó×׳Âe<Ü\UvƵSUmg†Yíÿ5|uñâê§Ù¦ß¶/þ3ã/~ôÿúþ×Wð×Õ³¯.^_
…u¦u5>êªw~зWÕÆÿ¡µÎ*é†Ë 
½¬W:=¼]ѹ×q~ÖÜßçcj¦ò¯WqE&­ËÏ6í*­¨••ùáçËZnV7ÁBà
Êå‡Ûþ!=5Zf¯‡6Ê)T¥
address@hidden;=v›»dyÎL¾³ÞÜÅÕ¥©¬Õ¸éð[t]¿|z|×m¥jôÉ¡¹ãŽ²R¡Ã¯–çÐæË&©‡–Ÿ}Žª°’åÃA”¬Ã{º²W\4›6­(œÄ(ë›e;¤ýùùã]·k€Újõp—,Á¨öí*Ŋ¨1V6I½âO£z›`Ž!ü?
      
f*^Oª1xž<mÐD‰A½"cH81¼ê8G«Ñ›¼R\£nכæ>™à•ŸT[„ˆ<Bd9šíP%O‘µËϯï¢kA"µA»í#Ô6êŽÌ$ÚòC£nÔƟ
+¾Š?Mùdƒ{dKxî Ðæ€tÖ¦CômS·ˆD      
¶Û¼¹øæ¸~·úøí?.`¯ì¯ÖÙ¼LJ=²Â0•Ä”ªن!ýՕԒÉÒP/’O(^Rò|L¾Vú"ÞÀ¬Œ· 
#4ÁXÙÄ5D[h¿X´ÃàÀ‘Éÿ¤=áG‹0˜XÖ·9K—}´Ù;:ì1OFÓ>•F‹J¾L>&´t{ÒuN´¤ó
+ðwÔ…9Ã¥#Œ¨Y%pÉ?uß6ý}(p4]‹¼ÿetÃ]åï6ÉÞÀÆ(address@hidden 
¸/³õžX^ð±oV        ۄçaYã·¯óþ·ÛÈ7À:^}”'F~¤,ùQÞ
d3{ÖõÙÖ²XF|éª}»\G0—”É仔€Ïà~}2º'4–Ù#FO¤  
address@hidden@‘\’$0üGbgðžÈΊ)address@hidden'¯”9è”2>ÅĬj
”Í`u[[´î]³Iy™žTØÆ)´ÍTDÄ|address@hidden)$µy·ûnÙ¥„)X2ôõÈ¢ÁÉèå°'¬c’ðïëÛŦ[¯‚p
+»âYYï¿Yµ]Fí¹dÀÙàw%Ê%G®Á(<Žx 
¿ÔڔzŠ‘õ‘ÜtÀk'½DœäßFR´Mº›Hâ{«T‘ø˜C2q“½Á8ô†óAM¤ðË%âjR"n͔—pÆv™æh¯bîzÿm•¡H³lùwÝjÑ&胣ûäè9dšì˜Ž£ý:­\èëSwÓ¦dÍÒÍ㊐ĭ‘‰/address@hidden@nƒ²j7.j|eÌ1|>n›~ŽvÐƔ¡“²Øˆ6m›¶ÓYB
÷k7…l±3#ÏEûc—Šq¨g ‘ï¤gFYq»HoBµ7ª%<Œ;address@hidden        
L•ÂäÇußw_/’»stœíý&W%5՘‹dNOl´Ë¶ÿ˜3:0^dK·ñ<œ[¢©ôà¾èÂly×<<$Û[,–ÚÕÉLþýÍ6Q0M24™ñQÿ᧗
     rÁ YGb%sCƒeś
LàÃö±ÚˤO€sw&ꀸ„:ElŠ-äPÚÖ¤šýøùSÔdHVÛìEý3U¯6ºû.§r…
¸ò9þÜ9¶_š†Â€ùmô2¨(æ3QZŽZý£Á¢ŒïÐ']„hßþ¾mS½
å…´hæUàúß^Ü7Ý2½-
±+슀Y´g×%
+íÆ'wŸÑK-$+÷Q§®¿<3Ÿ›m †¸¢vÍð˜"Aɶˆ
\‘Á„þš±[¶XÝHiòϗÍ*ñxÐ#D"address@hidden<Âq
¢Ý^Ɏí·^ìyöðeñ’~½LüCªüâT‘ö(„—K¶ñSŒGåΰi±eÜ*À4ú^å¼ó–W¹PçN)mˆÐ’O¤Ú|™¹¢è¢°ç¦Î?_4ØöM~³CÁBå¨
 {È-4ãp»ÏCN0à–akm   å\ýêA…kKQÐ,5Zfˆf…rÏ4eÞÀ.±V0¦€¿.ö³!ïJäŒMŸKs΂ü
+²6j•
+Uÿ×qÔÖÈíÿœ® È€âD룎k̽<Њ…e[ʊÖp<êÙ»LáÿýQÆ"êŽ;‰Éø·ýl2!É5ƒˆ
¦¯9®¹ÅʱYæ0ðéFe©ñ|ÌGس5Å€hJ×\áɉ‹Ä”cŎt¦Ï`“çóۃ½v:dû„W¢“ŽÚC‚ühM1Šž  
:ÖI,ŠÚ+[¥ÇUJ¿šjã—Ñ ~äœSUÄÄæØz
—˜T½ùò]x®‹áϊQ/úh÷‡îBŒXI€›y,íÛÙ1düSy,^
+œ’rÊf²Þoé     
1Ñ|+÷¢»£¯h.<¯õØ©9"_´È^‡|L5n›’KiaŽºIºO”T]ÂæE#®¸|ò"ӝÇ}3ä[
F7²‹æ8.°yÅ쎅
É—v”¸6ò°;Ö;›nß3Fò†»tGãK0—ý¯°Å‚¶%ä5sæ¹ÇÙ-ö¶OÀM¦¬\#_9‚7PÝ 
ÚÞԈt'.ü|öÇܽÎ,ü™0(¯ƒ[]!^&w7·sø™M±Õ¯O€îà¸JøvüNhR
ۙåȁ.:ËËCR'½tO.¥…"ѪRÌ/â\„XzzaÁW|ùX
+à.ñ0¥UvÏ÷¹xªËYŽ/?™ä¡Ò|ò“I‰
îzK]t™ÈۀµNî4–|$cù˜ï('Žª˜Ÿ§?ªbÚß"žŒ¾Å£ÿôå"sûË¥ËdòÚY¼éÜî#ҟpenYpe(ï¼áŸÎ•áô
+´ÈåiÁó$ÒÂÔ}NsȀB3õ,¢kY       
V—¢÷-•ªxOþþ[ÿìÅÛZ—«Ì¹׶Z?¶‰úÕt5>%¯DÂø1—™´~ðíï8çXB„F        
&‚Êö‚Ï¢¬2\QKá6žrGWxl‘3ƒÔÔ'=|©

address@hidden(‰“ã 
cëŽÃ°;´Íì#ðµßR,*ðÕº_¦Ö3x–Æþ4³!ôGɝ]T±÷kš>¨Õ(Øã9¡¢ƒ[ÔëûÉ)’y~mžæI|ñ‘¸äD¥6$
      address@hidden"Á¿ét´ˆ 
ëúŸ°°ë°L£ÿîúÍ6©Î͵Ša(?þ%¨¡w€š¹Jz>ìX¦p¬1Y#n½É-V(ÉlѵËܺoÌNÈ©ÐäJàü6$9j¿
Sså﻽;ˆ0þw.±¬tŸ˜ØÁ6•ªËü%ÝyÄ.Z>¹”8…R¥˜ŠØ…H|ja=±cP³žœäT
+l¯6…íù²ø<Húâào߅J
+t’í    _í°=address@hidden)ZÒæéqÎÐPŽæçÌñ`Äõ¨4    Pû”êÀ èeÄQ+     
n§6>s“÷}óq8ÈÀ!0TGŸJà'‚ã5Cîe8M·Ç“= ¯û4ŽÁ ‹ãzCQÁlÚÝดsÔoê¾Nèeh¡§        
Äß4†=–ã£
…¬«ö1‰*-:ŕƒV«VYÕÔ²¿ºÒ²WY25°™ب/˜Ö¸•áUÎ91ƒsNû@(
address@hidden
ç"address@hidden&R†í‡Á_ë†÷•oU…
LÜlôÍÊNKµP?à`©È­wùjÊDþŽ‘™ì*|Ÿo”ŽnùÈÑ3ÏåJIfóΞZtPîsŒ®|ÄýNÍDµ—ŸU,1GŒ“{^–n’ñŽOÑ]Ĉÿ9#Š{´-ŽÓyðFxÊƾP&S×OQ¹½Ùö«ø¶Äãl
«{5’ð, 9Ϗ¯0C‰ñU¥ðÏÈÚ½ºEéôxø`.=¶£µÓàÎDZ‚нùœÌŒÅkÛ·«<: ýì^
ç´LÝêOm³Ñ7<Ál—ÉùÕh¼Wä>¯_ÿ÷êÝõ”nüí¦âãY¡p!²g¦jÊ&
+ÒºÆÆwHAÎo܅;܅Mø]¾Ì÷1å(tü¨L‚1I·­ØÝu
+z}ûݔn†Ã1ÿô©Z&, à‚:[:T‚CEþ·|´#
+Rgéño.IcyùæÍ/¯Ê%øóÈ%|WØÉõëË·×W/ßL:S
vÂZsÒ-jÿBãÕckÏŸüˆ–C¾çg«*Ôg‘Kú¹)
+¹Þýó_/ßý8©ùpi[
+»¿ô;ª{i­y÷’Îë^­{¨ žE.z7u!×ëÿ^¿}9‰mþ“<æRùÆ¢AÄʄqg3V)‰Œí8
IÇüy«Ÿ†ü'$þ܀.ç؃×Ï$—ñ“¦ë
address@hidden>Mô·6´QîþÏENuq÷é&oÅŒhja(Æòp‹Õ|'Íû9ïÉQ/address@hidden'Xq1q¼âú€MG5ݧ›ü8Ý!wVÝ¥Xã]
address@hiddenñ\Ríô*¤#Á¯œ4}‚0¥¶Lwýìª>`Y{ªzÄ/ú™ØC0h
+]ñ=^nÜ4ûWpVbû’š¯ãÏKjpvîہܰ¿éRí0ÁsP¼Ã>ùRíÃ{Á<óqŸ,ؑ´æ9ßIkccÑ¢
address@hidden
+endobj
+261 0 obj
+4325
+endobj
+264 0 obj
+<</Length 265 0 R/Filter /FlateDecode>>
+stream
+xœ½\YG’Þç†÷iƀXÊû˜·¶Õ³nÀyäözÐK‰¬î昗‹¤dýû‰¨ÌŒÌj¹      
P*VÆ_éßG¬â#†âߓÅÕïW¿x÷,ý5YŒ¾»»zýž»‘¯¼Fîî¯ÂøˆV7²ÒŤîWUâÛ»Áûʖï{W9#üænzõ×ï¸þéîæ=¾¨e¥,7ñt
…ϸ†gÌÅgÿ{Û½Èm¥O_¸ûåúG|*ye­ôñéۛ·ïº—¥¯¤ð*>address@hidden<address@hidden'ˆ…
I½­–›î㪲~þáól>ï^‡Ï÷õlþ
+Ÿ
+VyçϓÕnŸ
+#Ñ[|dX­ý±~ì[YíEú`~ꬔ‰ÐMÓ}›J+EGŽd%™±ñÃG 
address@hidden;!+PƒñF£aƒK|w{õúöíhÛ׿ŽøÕëð?ßýô=üuûfô_W7·Ý—†ý¦O
ùÓ•4ÏçC¿¹þñÇwߤKðËÐ%À˜¹]?ÿó—ëŸò 
0oéxÒôlÌÄIeý^³‰EÛå3“m'hšIž^»oëE§p8Ç-3m–1xON·}Ó3“`‘ä0õ¼mêé—è‹ä]msß´ÍrÒt$+°LM›
 aº¤¤sR  ön-ùÊcGß"M¥…
"û4k·»º³pP"—Ì°ßÙsWíŸð[))e"mÚ®Öëè^Ö©ôã&HXT^sLì³í&ú»É>;Y%G¶J¦Ã·Qì 
_ååñ×Y)\ÏW›mçœBTÆPÄøe3[>DÞá|úÂc° 
‹;"ëC[?D‰(CJNfy¶°i½|hÚÕ®û'Ò¾2ڂ&8j»Ï¶Él5¬n4“mr3{HaÙ*X[uqŽ4p~¢u™¾ç(
m›vÌ†qÒÖl    ßÌ6 âÉ,ؤ1 NR]øà½ó}ã7.ë£ÞüößݐŽ9O¼]Gû2 
'ò×¾•BíY醬W$qlW»ù4X<F   žCêayŠ"áÔJk DaÉy£¹‚abå>¤
8Ȓ#Æc„õé­/Á"8$¾'˜âk(˜î`¡û‘Èç,6mR^GŸ²¤%ÈëN­·™Ï?ÖóÙd¶‡(ã <’$« åë᪅
¤žˆ=š ”ÄÎf3hã/•”ãW‚s*ÀG§3”²"ÌB>p®$ìæÿîÞ_¢6 f 
˜+BE’¢ržB†´ŒqLecmþضu´Åt/Gl"¢ÔÙiuŒšÌ2^-º;‰}úÑþ 
à$Ú~¿úÛϳM÷%!vh7ê»r‘õcŒåÖ»ôé/›Ù$F,”#%§E³XµÉ๰ŽäØ~JQ)£ò™‡xÁ—SÐ(P 
¥/address@hidden;BµIÀ#!<ìê¶N!Ê)address@hidden     e%31   x±Šà%AL]tæÓ(,Hž…
èxÝáÐ̵”‰àÝ&ò"ʈ·ȳébhÝD‡0Šx­?Γr¤’ª¯ð(CŠx„0ޅ€¢‡¹Î
+ª§ÓH)Hœ• 
Ëb=oþ˜un¬Ä!>@r:‘¶U~?Ÿ§eg4,úÎU_溌/ëv¸Yü‘DἊڔŒPÕ]8ð„tÚÒ«ÏÄ_`á/bGbîtàPÙ<z¡ÌZ
+e³ö˜UéÝÝrÚ|“ª±1‡™C¤Ã9±F~“³)address@hidden'¡z4å0–3˜Æ°¶ÒÝáì?!ƒ
÷LȬŽu     ¬3[¬R5ÁzqˆJÉ/address@hidden>Ÿa 6^‰—gX: 
XEœ0¢#ô¿Šδì×,¥2ƒBݯÍ%,e%ù>¯cát(¢ïf[·ÛW1¨A†•OyӜx[í¶1ä[Õ/address@hidden>|B‚kðÆ"”ÅÜÑ%ÒxÝ>ì!UHHeÂÑ÷©=ÃË>Ö1¢KNÅÿ§ó!¡PW´
     †¥}Ñ;$3¯[»ÄÆ¢©—1°C$fꔪ¸2¹ø_x
+LyùD{øü5‹°{…ˆ´6Äiþ$³.DÀÕóq<§ûÑ¡_%     âç°±
Ö_‡á0¿§®‰‚tՐüá;PÇ&;;Z£j€ZX
+¾4“š©J
address@hidden|address@hidden/öDҎ4³XSs¬n›ˆ´õ'ƒ^ÀûM&ÌYʒ:"Ï–ˆ4yfהt¢Ë3Œ?%aG¼‹É­ÿ¯w_»„=Ba]Yxt¶ø¡:½a¯Á‡õyŽ2–ŠU¾_ó¶ÍfMÍ*ž'ÛÙ'BڄĚХèÚå2=L‡÷NÒh­NÂb_B5‹¯¾­×ëˆ0ê˜Ð×[*Ÿ’¬!»Yªþkî“Ý/¥†»_EÚë~åhžÌ%Lx¤Ë”†!FÛôöö±ÞÆNŠvÙì„”žÓtb‘%3HX¹®'%­ÖÄb1ží¦Õ/àéJç†ùo±Ý§2‘8l޸ތÄW¢˜‘<®Ú-u
EÔEîýsé©IH8-±!Щ;3[4‹
5%H`ËU*oòïˆp»—¡d1¹,È
êi,êiÒ)#ìS-`78ÏS獉•:›c‰Ë’²úc‡u AÝÑed×ò<ðY,šé°Zðm 
(Í͜D3˜wF҉9•‡؜iç_’³x( H'ìj'AöÞkÁ㓽m`šç.éóª_t%c·°ã4içp§œõI¿áEå|jxb 
´è<Àš°}~œM’7(LŸÏŸÔ›Ôê,h¨Ÿx2ʸ=v°ãó¢ŒË®ydôà}n³>G=¨Ø<Ž 
f®Î]õóÚÍmS¯£3åöÃs„³®‚EŽ%Çá»,Ý}»êªÃn 
±ÔC¢m3Nµf×½þKŒ,address@hidden@ŒfÈBpÝé,pØiÁejÉ 
-ÈŒü4ÐI‚~‚$~27øã^PϾ$7¢c0ÄW)Aä°]ÌF 
ó}KEÿ¼‰Ï8sôÙbIÃð‹OZsÏwí¹"address@hiddencªÌ
œ.>©.ò%š~KÞƞH ?íûº˜¢Î͟P „ç€w`ã%
Þ!)ʚ‹Õ¾5
+Dc     
&ÏtÏíÃð§#”V3(D¹\‰Õ)fä´l>GWäì|WdªŸ"ÃdOb`ˆ¯7d¤Äûf7‰|‚‡$>¾JÐ*·^ËÁšsôûE2ƒÜ;ÜmR#Sdюĺˆáë¶YC±Û©Cäb†ˆ./N5›mýq>Ût²|Î9
…Ì:address@hidden@Òö1:¶ty„Ò&d²3Ó柅Ȉv;`2CŒÆÅ×sXB›¯âP<Ç{
îs‹Œ¡‰ÙrµßñŽî±•vµÚæa¶ÙF)`šòßÐp1jxÓás…
µ9Á°à’HƒÇè(f&5¹‰¦÷ƒÀÇØtÝ蛲éû¦žŽÓr­êI]–ý 
àåeÒ#Ié0æ4ÅzSÚLíŽxé奴I‚Kzš^¯§¯?·³ÐU˜ôÌ‘Æ/YK›‹©/address@hidden
+EÒ µ8â?Ç¥&›Ä*mzàÎ&Õnͧ˜|Q
üú!–sô„Ïëøë¢</©ƒN´.-¹'d,™g!Ïî“K¸\Š
Xevc>¯¨Fd*±Ô쥨EÝþq¯ðäT´­YT€“X­÷òó—½Ü¾J      [I
+L»    IAJÇܦBdF‰¼6i=jœ'±Ë        
øê#Ž6:+À-XÊQêèºüÔÁ†¥n4僴TŽ«?EÂçªÈw”-Uzv¿j'     é‰Êh¹gÿ½…
Àcò-·[&Ißð‡oÃW'ÏÞ=tùÕ£i4L❦E›
ƒç4ËN)þ°Ì©‘„7å|1~»Xj¢¼oÙÞ®Tï¼½v“ñ$ó’‚*(_qp=üô†pHÿ‹/`+tËÙ¹.¦¯Ç0NV^œJÀŒ®
 ó?ZÀàØ:~qb-^‹%±±jÄ®ˆ!§=¼%ò5{:l›¾4_R_J°•“{P)ɧ{ØE?oÏBs       
address@hidden"Ä+^րqŸ·;‡'æCßóU„øFS    
úL>Y!½ÞNnb{8ïtü}^?¤šOd´y¤Óªr%àÌ_£ÕIÔ9;Œ…2Ç       
¢ÆEa²ŸV©®`¹Õ¼ºï`æÞ,Iáõ‡äÐǧ¸Cß2_rS“’´81…Mñ·×?&K@"T 
Ôm(Ézsý&µoœ;™cÉv^
ɾå=)ç¸Üm×Ixymwßël¹{lÆ_€,s¢Y¿¾¿½»|W?¹íøU#f)/address@hidden院W‡\ 
Ëu-°’¬¿¿{ÿýÍAÂ4¿a¯|xwžMàÙÄàŽÔwÂ|‡ƒ©æ;뺩À͌?%»¿n*¤NÙí˜]†¶ýòd¼Å
ó’¬ãv!ä…ÄÏdIØa»ðxƒ=ÙEq™ÓÉ\¦Ç«8ø=y5ÃBH/ÛJûqu+:j­
^.ÃV[ndÏ^ñK˜£ô¦Â½ª3ÍQqÓ¥8àlfÿ­ݍ¨ç›U,¯¡r§õˆf;¼ì‚ký¸ˆsªP*¿Y¥MZˆd"·©?íóìšnR1K;5ש‹•{5qÛÂwÊÞ-'ƒ¡xYKëôÃ_SÓã¾s1Ɲ&5n
¤cnù¬òü‘Ð
+ö%Òï`çkÍõ¶Ž­ BtÅ\7÷}bëXsÎNô%_Å͈áá è],º6JS×fл—«v3»Ð‡dêôśømæŸ^7.ñi.… 
ü9Ký:›ßD‚n¾ëËÓ<Ûo4é>
Ëu]Umc©ø”9§rñDՏS‘|m£ ï‹°ÓJ©úOÿk‘õÿó,Z?þß)T^¸ŠîÜO¦¹…
*ª«áY^Уô^ôFŽ֋ùÆj±ˆ‹W¾’yOþȖVЮé.Q&§]+\ §åžÉn»!»¡»wQ7c)!LõoM¬Û´H%ͬ>ͦt=
jÂ=çy>Ö6Ó]dßørߐç2ögqäˆS\GðeHˆÅ}ÃÝ"ÊWkw,m¦:Õä9ÞШª]Z®rï)®ºÄƒþ
j–.éendstream
+endobj
+265 0 obj
+4331
+endobj
+268 0 obj
+<</Length 269 0 R/Filter /FlateDecode>>
+stream
+xœÍ\Yo#ÇγÁG0[Ý]}úÍ^oÙµ³‡lhj´ËX"µ$åµþ}ªúšÞ¤2ƒ`Кã«ê:¾ª®Ñ—gbÄé_ú9}¼úrõe$ÂZþ1}ýx{uýAّgÞH£F·÷WñæåȂa܌n¯¾ÑL³ooÿs%
    %
^u{wõ͛Ÿß߆UǬñiñ‡›÷o?üƒ–¯?W?^:Á¬´é:tÍ8ÞìÝh,-^~Ó,—‹%ýòííèï"æ±bn$4XÆÝÈr§™q$ݏ7W×7ïFëåssuýϑ¸ºþ+ý÷ã/oðÇÍO£?]½½
    ÏÙ­‚.Æ¢m˜ÒôT#i`M€­u–ôéqHk%“€tœTÊébN˜„bVK8דټ٧P)…
$Œ}c•h:¸Xc]6“u³–æ–¹`i`ÚÔ*ü:address@hidden/æä¯Ç×ãà|VTxùX:ÅÅh,dX½_N÷Y€Ð–“‚Œ7ý:‘áŒkKï)Nô<O[-
ˆ,AÐâ-uZK6!,ç^lR9ËTÿ’J-˜V• 
¼eÂk~Fâ5pHKÍä·}Àƒw;O‹|ÙÜ%K&address@hidden'øµî¹=-Ÿø 
ç¾Ab>ñ˜OZ”åܶg¬R*ܲÆz8Ÿ |Ò;,­`ë~¹xLÔ      œÚJ'‚™]’Nü ¦
+Y²Å
¦HqF:Áh±•NPmêÀ'Œc¦°š)Ì‚6í¨0WøàÅÈè†>s…µŠÞÔ¬Õ DCW‹ç崉KƊÑF²Äk³Ä‡R 
äï[,‰1Ð{8&Öz²ŒIPjԂ„M©pÏwQ€ló;y(Ó:„¤e¾9gZƒìäÙL𖞊ŽŽ¢Û#
+=+×*!Mˆ«=CWB3Y?”j¥Ç£™¹V"³ëÓKS®%…UÊU” 
Ùú˜ÀúFé$sJÕ0/ɶʤ¾ÁJ©œì€=œn†Øj‰[Í]G‰Ÿ–“õç¨0 á9&µ90Ú¼¦„ÓV
!hÏlW¸dÈñå10£¿j¸X%Øóõ l
address@hiddenœ–uµŒ”ªg±$ÆXKIâ 
XÿúwÞr_Zgý*Šª˜Ñ2‹ÚÖ£ö5YŸ8ľ"3Âxl_Ïʒà‰7ö]qd,BÔÐäÉëÈmª§Œ£ûy?£¥Blz¾Y<%&Äráe6ÿV
sÆgãýi²ž„U|$µxâêM¦a-Z„´2!²6crFÅ-Ïk?§°¨˜W…
«.î“Õ`¬ÉÒ¼YÌ·1FSZíjø*dA¼ðěuҏYñªø¦*™™–´ö² 
^­f¿>4Ù·¨®ˆâ°0)ÿ´mð/±yã5Ͼr—´8œ+UšR;¹ë"awҜP¬­R¥Ê~RIë¡       ZH“§§´ã
+U"\~&´ä×Þ¹|Œ©Ê0¢4¥R¼ÃÊ£­2¾<7«õ,VÈÔy<™ß¥=Êç÷=¯
´\Õiá“!ªü¦Çæqúô²kç±Ò3RdÙY”T‚7ù֛ûÒ7Ô²HÍwÄRU\vdÝL“HʔŠàó|†R岒œ±6)z›²¾ÈÓÜ¥j»2q¢
  M²|m;ð€yÞ4  ™¬^ÒC¹+ι#\3C+ñ¢hä%Æ9Ýî}²0¬†]ka…
b!¿n£üÃâÓl:y¢£+:]Yþ,Z]ùúÅ%pÕú
Ær‘Á'address@hidden>O–ÉÚ£r›?šéóz’âŽBOuÅ!“×"hÅkèIÑÎð­¼
R³_—“åKú…ÓÅ0ÖÍk–,åÄ
ÎÿC    ‹EÛ÷“ÇYQŸô%,rڑ²áýó|JîlAd:0YæP¢|éÎï°ÐßãZGÑêdöµA}
[:9_?ϦIÆè²    э¬ð¥7ž,7‰ñKµ-ÛJ­mLh’å
+^DÞy›l¼Z•+×9¿¸v_w)l1oÒ>8Öf‚#Ô 
¯Ei7˜Ò¿iÍdAAæûølŽÚQ.ËæôjYy2šÞ«eå)¹ÕE]"ˁjÙùAPbµÌ1&U0/©–#³ï¬”š4ŒØý¤¤bsöÆ=’g/
 
ð܆hÜ·¤ÀqQº#Ö³ZN¿KñA+Øèbà¶'Õe`µ"Çé]&ëB[&QõºQ¦½5ˆ§âkÔ8Ûí˜z€q°Ëj»¬pOûõ`Íïy(°”ýú»ÇÊó“r¼³
  –rF©
ïÕ~—œå .´,>„ä¾…’Æ0:
8.Ô>address@hidden>œ|T’:“èÖ+©Û‚®†Å‚—5>e°AŒ}¶ÍÒ`ƒ2«ž}‡Î‘z©AŠæF¬ˆQ:d0@,Î<dPŠ›^1'Ú¤¨pÞwÂs€6òsß(ɾ)—µ0/¡MÜ¡R3H
…:`÷Ѧs4
+Á©ÐÂ(7µ8WÓÉz¨jóíAÿ,address@hiddenëpãŽØu!t˜ø&¡ë
òބÓØÞeò‹kؒIw÷:%Ü v¥0åxÕ±ÿšÐa¡…UÐ&¡ë\Bè\>SÒõ‰¼@:fè=
«%t¨q¹IèN¶,©i¬¡¤¦êMl 
Õµ¬x„c‘:´G8IžÐÁÕûI]¡:+ðõÁn,j´ŸÄßxt™žeôR±ªCHWfSQÜ2®FZ“šw"Àg6‡0´yBß3Ë
      Cf¦.…áÄQŠÀâ{Gé$Ãä_üh”"dؾÁÒ(G–Ó{Ë1ƒl½TˆYN…óS;YA
+/ýªkeì«HNìœô-
3
+«Ž˜uÕµ²n»kåO›áSÜ9’¥o™TÅö»e29‘ÆT„AƒÍH'.±Ÿû¥¢µ9Û¯ãk´Sôž
¿NFš8åæ¼®•%‰oÉþEÃÈÄÈZ´ZYpš¹
> „{‚Pû€*¥‡0,@Ãä,Ð}½¬Lr^x
+ÉÁºÀ!‚’}cۀâç4òìÆXÉò÷Ýxâ4n›ê`<ôöÜ~î£ìtb:È­»¸ŸÓ;ÊÔÏ©`^ÞÏélîçtÀ^ÐÏégêçT8«~Î.`Ö̑#uŒ²¥`4ýe¶)ØkûL4ù=€h`ŠGü­ê3Á;ù3
+%m˜Sí[&gü–Lcéi|ǺYX Lƒ `:Žcèž# ç‰*ï)˜©û³<k<à5LÇâ»oѤÆÌ    
¢-‘c[é¶Ììh>þ4
+FŸ´  S4G„Úek‡h™Ñÿûo1P}ÐØÊ(jçœÍžMw$õ² 
;‹Â׳õ4³µ8kV†¡S¶2¢‰Œ¾3ÊzžíL]–ŒnôeòùnQLۉÉU*fèã÷´6_dÒM¶œ'ïf«<’¬m¾»”BºõÃv<LÊ2ôU
     ˜j¿xûþç·ïoÃĝF‡ "Åÿ_D#€j«¿OãÒ[âÒ|¿«½y6ŸÐ¼_™x{Êüîí»$²7m]%ÐƖÉëe³~^Λ» 
!ŒÌ–Á¤›v2´dç4ÒÜԎ;E„ö„É*¹u˜b-¡­0Ît‡šóµÐîý]šî£Ë,ãzöç˜ZÆÁ¦;ߋN'eˆ™Æ:Ͷ
+E«ÂR€ Áò”瀽n瀳†‚‚°ˆe#ãv]À˜V»ÞÆW'‘âXÅP6‚`²æ™"address@hidden(î`eì†
ÊR—YP/ÙøàŸN_
+×<ü­©.æ(
¶s¨¿åO 
4B,óšÇ¾DÀšÑšRØçw‰)¼Ï/³ù<ÛKú3ùïšÇEœÖú»¢û/³ù]{÷e€õ§fòð°HÍQ¡Ê¸é4p+¼zÇ;™CõŽM±]¬€°´ÜùßúÔ=SéÖLôºýîp:&lßçù&ÔUøž|ä‘?º¨èßÜõæžendstream
+endobj
+269 0 obj
+3222
+endobj
+272 0 obj
+<</Length 273 0 R/Filter /FlateDecode>>
+stream
+xœ[[oÝȑÞgmß äihöÝí6=ÞDÀ8ñÎh7 
úJb|n&y¬¿Õìªê&address@hidden,ÄyþâÏÕöìëÙ×s1>£«íù»›³7¿wî_ÉJŸßܝÅĹ¨Ê¢rçVUEYßlÏ~ÐúǛÀûÚæï{W¸JJøæf}öÃû?_}ºùðKxѨB[Qá/Lž
 ÏJ‡Ïþ÷z|QØ”‚V¸ùŸ«ŸÃS%
+k•Ç§?|üëø²ò…
’^ã㿏ßÃA­ôæÕ_®ð{aù\úðñÃ_nâù=\OÞÎ)áÒ¨óKiáVxXSÈð²E©¤¡¥÷ãvbi»oíî><•¾¨TIçú©ê¸ÙT¸—Î6l¥Šð
 {Sš¢Ôžvzl7ÚË
+ÂçQ¬…5^’›ðÈÁ!•¢o·ñ”
+¾,ù”ñËR•,‘f¯HIu·?îÆçJ¥¡ÄçǞnYpÚiµßkèÂjE'êv×tý¨ne]ÒéjúU׎wP²pÚÚçïð°GÅ*Á2}d]Ó±†ø–,tUÑb]SðT8Ú»Ž·qV•§W»vhÆs^*á`‘óK°ÂÑÃêPF•´WÝA[Õ¾¢c^þçøL€P<mõ_¿¢¡+sòšr>Iã[»jPB
+:Ôºk¿áF iº;    . ¥¢3ý¼ÇuMÉÂ\f[¯X#_HyàQ%_hÛl÷ÝêZ—–Þ÷±`<¾¢Ýß×㪢‘ZV¬…
'Áv½áU…
u=Ð}=»eÛ³ú4mÕn¸®õ–³ï†z4+ð¡$ë:˂۲¥=ÔªZ8šÕ¦mv¬lCwz<“5Œ?ë=š¯òleÃCƒâw•cåo6{Ôª“i§zh£(0Tp-|~·ïðeÏ®’–
…ë/¨üܱ
+ÚÕé
Â#пõ2[õ       EU
+Gç:address@hidden|·êä`2Ý·o:2Be3Äk§Ø\÷d\°€,Íwl\E©ÂKÆÄx–Ü}  
ìêÍݸ¨L3’-}ý¬¼eïäwۛƢX6õ04Ýj¼ô¯ðv× ŠW¦bû&›žm~·ª¯÷UBœÇˆ8>GœèÉÖA'}ŠH 
æÊ~Å(ee§v­à[¾d×ôûc‡ˆ![±tèÝàó‚5ò…½[”²¨ÜÛÇÃþÔö«cõ
+Nak»­oñqÉj‹¦¾´É6lšîrwÜ­Ø¥ÀÒ
#¼¾)ÐÒeÅaâ—Oï)vVs™+¡“Ÿï4)íöø-œD9“ÝA(Œ‡ú¾Á­+¡ý|­xŸ»ú¸šõ[”±PÕ  
ÒHË©Ñ\ad¯(œ›‡0Éñâ®ÛoñVŸ‚Uf¥wédLŸn“‘;««¹í(address@hidden/°&J,Á3Ñú~¼pÞqÄRxD¹ãt~*P.
¼H>š6     ï~Ŧ’›Ö}òIz¯k¾Û®YG§Ò€ÎøÜ©>^}
+¿úpsþßÀÔU¤è—Bªpº
+TÜÀ½!L2ÿîúìÍõÇó¡;6goþv.ÎÞü9üóîÓ{øqýÓù¿}¸×ùMŒßYÀJ    
û”ê‘ò¿ÿ맿#\;ÁÈÔW0À»˜e 
´º,êÝQЭ’)n“¼I^Ǟâ’O˜Ú£%‚¹Júv‰ÆÆ·œUŒhõ†°E&FάØÞbÝþ.²`0       ­˜¨û+äeþÑ
é_û¡>\9>gƒÈÂäQÝ‚ªžà
address@hidden(ˏ•Z’{þnÓPö̍"yx¤y·Õ~{Ø4C³c†Ù     û}×ê;Äãh       
¶Åª½ýÉdtñ§w´†Á·V·?þ‘§ÐéÛÈ2Øýâ[]`ªs!B˜äv<address@hidden@d¯–œ¾’§ëÛu?¤œÍ—œdìšfÝãA}3Fôڒ¡÷a¿!܇,åâ²0Dª`‹S,ƒE
…X 2ñÌA÷iº]ñД%ß#õéWD
address@hidden(þ¹ÒäJËùU?ì;b:‘Í[Ø­Ý}aé“ö™¸œ¤¼šS¾uNûAv]™tˆg¤PæÏzO       
v‘„*Þ°°”¼ï¾ô·?bÖç:ª,íK¦,kÂr¦|"ð›ý  |address@hidden/l[r¯‡„
+ŒÝ@'(-€j9Ë6IîŒ=Dj†±¬J¿ø¾šÊºÛ#ÌëN¿TCAüI½—żuÝT𥞇*¶·0¡}”É%PêBg¥":eä
k$é‰æí¢/ÉPš#ßÓvìÑ4}âµYž
+ÉGò›äa€7´rßìŌf1Ó¹¬H’Z:WO&ïKGҋÄ1°äõwMݑˆJ—È'û²®Ä<Ë
vÅsÜ­›nóDV    GÉ      ÇçMâgã[!hpÂò…£·4‚u°mïðŠó…TkŒ?YP%6±ÃdrÃv¶d¤ڔtþ¥ 
ÛP06œ"Æœ|ǔʹ”[Ï¢’»&81­šQÌó—4}ûCSÜsþfü,Ǘ– 
ËpU2Ր_ªšÌKroçÃË<ï]¹œfݑú¥ðbf/ª(‰„çÍ/°J¨eÝ 
ÆP—¼„´UÆÂ.0|<2’VÒ Äf¥­2d€_Ëó+Å hÆ2x^­VMß7}<Ƭº,t¨1ŠPʎtˆõÉò   |ÝS§
U†ÄV/]40—!có‡MH­Öd    š}6¢…
"'k5ç†k€)¢Š”,ÖÙÕÕ7Id*ñ—˜—Ö&address@hidden,@µšÚpà¤UªÄõrÍ©*fÄ(&w(B£ýœ.U
 ÀT±{ê‡f[ 
hLåH4ה÷WŠ§uŒ)‚2G¨ýn¿i,<jȇR*ñ%]•_·k6èϦ,‘j)ñ±‰s-«¸¡0™`‚ò`ü^½^sŽ€¨çWŽ´gÐƸÁõõEé0kº3€r̤RH-b“
 Ȳz4¯Se•.ê‡vPÉçx¶¨O!SJÉõ·-&g&p>;[H¶ç#h
ZdՖf¨)I¯´†¹HVG)å<ɘ¬¼˜kFC#Ԛ+Á\`'UÔÑü!ÿœï¾Û"îjŽºhî;±¹Àà)address@hidden:ŽÐ
 ¿hÍÑÿ0ÖmcN„S:΄?×=[WeÜIžaÍIcÀ$ñ‹#jªnVäpO”®–’+bÈ(­Q,.¾ªL5¾,««
ÀÀÔdõÙBèºÌtrfTë˜éVN¾X‚îYœ-ç(ŀFMÌЋ¾­wõ=FXW2÷x–€äì>ܞïó­í†c,'¬Û
        mµ’ñ,¡Zk¸0¨kJ ¼Ð³ý±c'å ²núö~kŸpgkýŒ 
&Ê<ŠP)L˜Wú_}ß~ÞÄdxÖr*Þ,â(Eø¥C釵!S^Ôì؎xÍ៸ê$$(<y™®Ì
address@hidden>°/Ã!'ϸ¨ˆ¹?…k™r&À#'Àsx`ûeªóԷؐQFrìŸ4è*7· b¥±
+)øå1íäeÊ6[˜m‡°è5dtöi+èq—DÄ·^w€¡bÌ÷ë5 ã 
É:*Òmè¸õ¹”(ò؎àòV1€z§Zh6ŸP¥ù„®î°Þb×N“6žÏ±«|n!>š†É±Ìs×}è 
y~‹0/²šÚÚ½ªn0åEu«Ï´CQ}ºb[ÜÖhßÙèÅS´o•PŒÈv¨WùÐdC‡dÒJ°gN`<µÁS—o‡e‰ 
3ϊ'ëÞÞfžú:©Òö‹ù: M%ƒÛЅéÛu”0`Îlt¤{‘’’gRºµ\",6lyªÎRÏrkºírÁÔ<7Ŋ   
_13¸Â  9@(¹Ãkي×l»Û††&|i8l×»¶'ƒ{½dû\ ª’1=çIa0"«eÑ‰zM"´G­Ë{M7¨ø™ùl‡cw 
address@hidden:¦ÐY“vIZ›¡=lˆzûHí)RWò¥;`b¤“eÞ£ÉË0ÇÀl‡¨›âèúõ¢¿aО¿î«·Û˜ªþÒY›á/gT>‘¨¥†O¢ð6q£¾ÞR
Ú¤Ì>TN.!½àâÓsœrVRú7JHR´WyÙn›×¿];öÆ‚‹›×µ5rn&ù-_V}hØeq®ǦÀ$ʲ"‰ß<r§Î±'¾"“ºêS|K­t9#ڑo“ƒ÷Ë~!‹2µzúU¼vÃS?͖â¯àRÁÒÄÊóäÊMð"+›is:ž•ª|=¶MµHïR5í÷+9²
ãRYa![u€k蒫><Q¦¾ašNÊ&(,v\gÀyp
+•Ú0YðR…
›d¹Íb*rwìÂÁNGåȹ_8¹‘Y½j‡[ëT>Z·ä{J$66$q¤²û©E-¤9í–Z>ÌŒTì3"¤ÎΓï'address@hidden
     ¥{§—קÍQçŸq?šg
™Çü«ÓÅÔ3ìîXiºh¤Óù©Cƒ<M[®öÇ
•\lHxž‘„–U"ÆëæôÛ¬W›åEpƒ(¾iiØÓ¤I†ØC
Ãœ'address@hidden)ƒP•Ýrp§å²ÔPÊy¦ß_K½iÆVÎD°4¡˜ÐÌ8å^QélÌüåH
„/Eâ(„}¤a:tNDVɓ÷¤ÊÃLl>1™±ÈÏ!>5¦•M÷ë±éi¼plœ
+›0_K‚(õz¿XdÕ=š‡'X
+8æRÆöH>b¬OÌㅩ¢®NåSŒ‹‰ÝĊ´~ՊP1Þñ²K³•™g»JΡtr€— {ÒBÿM.9šcVy(jw…
qˆ2Ô;-››wææNkߓñ“ˆ°cPƒeqþ9F¾
ՁWÒU,äN“¹Þ0“&"address@hidden>akÙ0=+"bËYU>DÄTdÎɅ
ÿ#qâŠ>u”'ˆT¦´¤þÜ&<ÖܒE*bÄÂ|²HƒNËãG›M{±8O›(×ìRZ¸nVíš!Qqàbwš´sï:B0-Æ%œ¥³-5»šóIxjH¥|Íè:J
      ³TâN‹“9Ñ/R¤bÖZAð±YÆÐõn‰n˜‘
K5ÁŠLîÐ?ºäŸ°í3_>hļMòÿ,x¡ýëTT̹mæ/&Ý6-åjՆ)ú³U87QëóÌe6’Hýr•ê¦©o7ó¾‘ʯü¬ÆIßð÷ÿ6g)îendstream
+endobj
+273 0 obj
+4362
+endobj
+276 0 obj
+<</Length 277 0 R/Filter /FlateDecode>>
+stream
+xœ¥[Kä¸‘¾÷ì(address@hidden> 
RRd<¾øâÁßîD%ïDü—þ¿9¼ûíÝowrz†ÿÛîþxÿî÷¿ªà”3w÷ïæHxÉUAÝyí*áîîï¾·•«~¸ÿû;¥+i¤ƒ·î·ï¾ÿÓOñ™4•®­Âgþåþ;>Öq
ƒ¯~¼ÿë¯?O}å}z8ýÜW2(iðçúùãǟ?Æ?üþWY练—*éuzÑØøέuekw÷AyxsúKÿ*ÿK/ÿǾvê+¡®Ð
Ó3Qiêôìôœžù pKí±ÝNg7•RÝ燢R.àÓ·¥®„øí—y;Ú
+Qß6ûîŸÓŽ´ª„°øóq׌Ӣª2Š¤<œÓ»ÊVu¨ñécßÚ!­áµ²éù±-íöxš–õ$¬ùÙC|b+oƒÂãOß©á‘Ö¸§ç}³™WÔ¾ïðXÝqZPU6ԁößÎJQ¡rFÞ}jz¾i6I.Îz|y~ž­®miӜ‡6}ßä²j_’¬¼¯ñô_»ý~Z6D«zó
 2;(|e›L\(Ç<7->•ô4)¾âkR~w8´Û®Ûý´1öožvÛ
›¦ß¶ÛɍL¨TmÑÀîw³)NÎEß óÔðݟQÂà‘5      øô8½+£-®”6¯\MV»Ù´Ãü10IG6ö܌cÛg{
+•1ôÉÒ҇YzB×ÏpޏÝtüéx€ÞáÚÍóó¾Û4cw:Óé-œ^I§ogýªìË Ò&{ß–Lîå9mE¨€
+Ÿ]žyCFPÚò.Ù+¬hI#þXZ–ñªוÓBÖoØR]I|€UëzzþԀ*úÙ¸Œ£¨Qh³·Ã·díPÞE¨*ÃR_åÙè 
JÚuðœE<address@hidden,´¥Y
+OUÚ°ñ6c“ÔkZµCé        MøÙÐÀaÐ[B¥¯ñIt-È'yÀ‰$ÿ%T¢×f¤¶¢ˆ†—al³
+"ÐxrÚ§¼Ï‡y
@k4~<¡ÒÇ3h®ÛÌÖh+ÖCxÑ<µï0yðùãi:¾t•sd¥ÿhÏûùm›3¤…
n¤ÍQ=·m?Œ2ÓέTòB"¶&‰l»ïÀÂTˆÚ†¿d¨cò_^WO;ÛׄåBëÜ 
íØ|ˆ6ñ¯î8IÌùª¶¥¸M>Ç³a bZCˆ¹íúv3žú®þ•^𦂽›•¦]DsYãläðéð?Q4Wë°ïC†ÔA    
 B
Â[™™É~8¥(/5£? 
ŒZø¿™ì­¯9Œ“ëŽÝ¦Äm“Qç3ïÿ°o¿$8T´±O«8_„r'n€ò¯†š!9g]<z3ۃÍÓ¶ýÒÍæ¤a뼑mß}!íhÌ¿DáM:y
 £‰_çࢆ¡à
address@hidden(2húÜg¦a-M£‹Ò4õ…4g×U`0†øc5c-ˆÂ²y5ûqw:?íÚ;A 
ðª1¹Œý“-Fñ}ú“©A)„›CûÛyv×)†R,»fÿ>address@hidden/HÞ¨•G¹S
Žq•Ñ±úŒv¤›íQ’a5¡;èPº‹~:ÌÇG‚ðjœøJ…Ó*£+—}î»CÓ¿Ì"address@hidden< 
a).n¹‡`q‚%»ªu·ºj¨®êùNÌR’³XbӇæ/2ªø9ñuâo-2xkÉàÇ]ŽœJHÁ\nˆAcÓì1žjŠ¾èO·4@
“€#ÅÙuºò¥áû¸Ž®ÍÚ%“" _ºÓqÖº–´´‘6¦¿|
î6iyF®jšcô,È~­!ÁˆÛýcúu¨jd†¸qåÙ"ÛL§¾M|¯–”î»C7¦oJ¥qÕ9P€»Háô…Ä„ªÕ…
ýN;ˆïöû†Öî2æ“çcwŒ™7h)kÊH)ž•r³ÁíÐ^—)ZI(YIæsŒå¦DA',ËÜ«¸©O?T      ù…
£Çå\ðÖdh¶#Èj/…äTÉG`çéÔ.Ù­®jEø–• 2WqêÂU Üâ¡þòk:¿fùß÷¤JªöÀNÆ´¢ $1E 
`ëšJJãŒN’°(‚˜Å¿O[uŽÈa4Q
+4À§+m“„f8!ßµ)address@hidden,øšÐs&ÆKJó•B¬6BýZ2ód­ÉŒ@<=buQ4Šuâ-Å4'[äÃÀ½ÅEPù±Íç´¬fú–ö*%ïu€p8¦<°›e¸m7Ý+
       ºá/L«“Ȳ$÷tÓ&Õ¾âAŽBéé¬ð*ä]¸µ]y¤»öÛé#B eÛ ¡9Gœ¬+A+PÆDB`óž¢zé÷;…
¦£7ݾãr Jöc…¸à5Æ9ÿ¦ž<ˆWSœHÙ-*ÄBFCyh°"櫠ɈNÇ˽n6Ž,}’ÕüA£-!Éõ:
P‡UÂå£L£ÒË:7“' +hnñœJwǧ‰ˆÙJۋÚV‘df¤ address@hidden    
ù,LyYßÝò~#9Ë:÷À¾$sDc¨X&9MKÖ£(address@hidden,4ŽNJrUþB®‹ï žYÝ
+Ï挅
ô£Î¶ŠQDC惞2ûS¬eâ®b-óyŒâHÆ#!¾ôX5%ז”Ä£1ó÷ÉÒ¯U°j3‡·ªÖ>Ö؁o§ö–À—bîä&û—STð«×÷z3HÎ?ÕAPP„Ïl“Z»F:ò”¡¼\þôtĸ%9¹/ÑI,£(Éfÿ5A–7´f–ƒ¡,_0Ž
­›ôä¡ÔAè[:x¬È‰uó9Áœ5 <+”ÂÂÊÞtTµIÿ0b–á­§—ÉW43Ö¡9 å î"ݬä“}FJì)ą
CIªÙ¡d3œÌ”7IþÐÁþ‘ªXnÍ¡A\\TNG$e*0)ês
„àáøC"Ñ#®õ¾¦4'Öý$u>
address@hidden&·Ù%u¶Àž¹³UÚ÷Ô¨H_'£ROÚ'8W¢Ök¥?qØï…rŽ]Óc³‚ØTR%‡dëq\
+šZ¢‰°XυÒTz®«À¥çÔSœâ           y“ú, xA]á:!…1ÙÑ{È¢±õ"5ý~á¤6ãæ枂{ǯ 
ù˜4§uXµ£$SÀ‚àOý¸K?•â¢€´£Ív›address@hidden)n9£ŸŽi 
ÑäuýÓwÑQêR‚ßR§3ð4Îd^¯&˹Ív¶(‘ý2åŠ
RëyH  ò3_Saìïçs@:.„·—{*ó&\RjVÄ0öÀxŸ¸ä(Zu¼Be¼!ÛÎI⊑áô<ÆòO*¤¹
"k`Õך+m¼$4™%L‰—RË!kÄ®I’%Ê_
+üsþŒÈ¨O        
address@hidden/²Y[oYª§ç!ZpG«`+§Ù»¦ªÖ:ç^€ÒŽš&h;,ØFqº€oþ½Òo¬è‘Ó>ö'address@hidden;BFíJ׃õiá85À¹
+Ÿ×©Eq6‘& ñ̚(¶ÜHßP¢šùH¹Eí©&3:ËÕ°Ò¢‡f^ 2%™#>Œ-J.ü¼æ<address@hidden
ÊdúïÛPIPßâÖQ¹\É7ÄÒ$NYÒ\±°HQû­¤*        
)«âfX—±¥«ñ&U8ޜ.9Oéè}âÞRw’ú)՜@&HÄ0Wø#ã5ûÎ
Û`u‚rÂhèœÀfkŒUe>)Žd噩œfu¦-Ã:J­šrQù<XSR4C…
sbåÑÓD­—tî6(ÇýÑE«ó˜Ñ䎔„ýW×ãû•júÌæ
ës¡
" ¨å•ìk%2%"ç; ÃfšbX\cjå.U”UÅ©È[û|Ê­Z¬ÍËBa%ˆ[š`“giç–ùײt°ïL
³´²T#ɦeåÐg}DAó
Ñ®Á¹HÐ$)ãÕq5ƒÀO2ø=%)AÆBú,µÉNç±JŸMK*D“æ>ýq'*°j•¸&ê,·³â٘i’(address@hidden
      ml䚄4ßµ›ñÇd8ž“úR]‚ÍA֗åOøA=oÆsŸ&lDœkÅ«
6‘Bl播²bÊoð?a~j#ųˆ´‚K¥›¶x®;À¡@>Ÿ%́âÎgð
»Þ€“ª”åz_³g»³óüʍÉèT¹>ý€uÇàÄrÓSo›f²9U~øúœªÍŠ¾e„†.M%32a=ҍþòn
+;address@hidden<address@hidden<VM1ñÓ÷”,
+žNøÖ º¬ÔÍYÖ?<aèÓ´Ãc¼zŒkÒnŒíÂßd\÷ŒSGs…gIRóô„…
30y'q÷þ/œ'›b›€6҄[Lƒ¨î°§,xNç3`ǹùÐmíâ‡ówm?¤®7hÙÓ"'ìzŸvïåc]jh[SÎz5«/’1¬Ð¶—¥dl9XY,Ï
 ­& Ø*¯º…ˆy"~íŠSæÖTí´Y´}…½GødÛÌrzÉìß\ŽØ.~ž    
+ü‘=Uܧýö"DðpÆ¡¬Ór\æ×æV¤_cEº 
address@hidden'¤š€WlÒ%ԏƒrUb–öÄãl¡&²óÿù,%Ìâ¤V„t{¼²a
+ÓK¸¢R™‘%ÍJ¹
+˜ùL.”ËÑïº=ÆB=#oÒffÝÕñ6qý|ªQ¯©'ØñÔe|妹"¶ó¹ÑÛÄ>ö‰;JUri.Ó½²
Ì^là²`rSŸÏd‚Ií±Ž®¹ñ[ŸÉVßLxLj  bÙøŒm
IÝü‰QöÅ9ÁâƐà-WêÿãÉfš¸»¹á̘žUދ)ÐWjó¦üÉz¨¿}[YÛÒ¾ymiY¡†PKÕí¼ÓµiöÑ
+áYcy¼¬ô¥'Ät#ƒ+iK.j–Èà&5q¬Œ(èîµQ¨Å8{>fl¸±^¼Ð•Û·cû¾íž×~'ãeœlš¬Çz°
+—Ý~§ÖÝ~§Ë~”
ÐL¾ð‡ô1aèC±7Yq˜d³Q¦R³#^´Z†¶=àÜ5_ [-‚›k·¥ŪÕK²6¯kj|ÀáXŽ·>™       ç—w%Ï 
2
+ÙÜÈép $ÀjÅ}‘¯œ«|address@hidden
Iß2ƒ¹tQ2ÁæràÁòû(E°¸»¹˜Ǿ¼É²w:¨äþm±Vž½ytìí>,
+>™ùP)|¦nyÐW&n8¦‚PójPz˜xä”uRŸb燓>»¶¤(     ²$oˆs¿äwW&­%ó·ò
ÙCô~»™ùJlS¿¹O¾®¨„PÚ¦v3€Í¢ÒK³¾žï2\g©Y¡
r¶¡ƒ=næû®*ThyðüQÇÛä\Q¡Û!5(†oÍwؒõKÍü<>‚Ô[æwïØ&WÃÎ"ö<.Zn)]^ÁþØ©,ª¡¢ÎDxŸº‚¢Ñx©
 ß'“ž
+ú&Ǿ™8éØñ¢öì,”7:±±k•E'/';'ÝԁSBç×uûåHãó®ÛŸ†Ó3ÞsÒ4}T(›ú´=%ñyQp0dž¹TÒ¦ 
ˆ¸`Õnö¾˜  
ÿ‰ÄM‡‹xûè…x‘UÚomàìRñyºOK–®ndª0Ån1ΒJI&†¢õm‹ŸXð—ˆqJÌ)²GÏ}Å®AæijÓυ
,*ݺ­yÀå¡Á,7k~¾xzÇÌjm-‹Mç°É霍âAåþ¹I¨Ȉ?¡R¼A6þFà‰DçµæSXÅÔiªäνâN‹iíÂmÉÇsOÓ|±ŸÝ>=ìÛÃ̊Aí<TZ
…æ—à„–˜qébêâr–uČ٧¸6M§§qPà`΄µþÿÍ¥·gu³E‰Lðű3^Üô<R8vûDN
+êE»:ÁrW§tÕñùÜ?ѕ$`…aæL›¥–;;JÑ¢÷;âQŠSÝôÌËU¾‡™C«\d¾\dõ[wƒ.9EñJh¼e‘
F…Ë7÷Y-‹ª'Rß·H×Ö~¾¿ûÛ»øïÿc—ȶendstream
+endobj
+277 0 obj
+5028
+endobj
+280 0 obj
+<</Length 281 0 R/Filter /FlateDecode>>
+stream
+xœ­[[sÜ:r~÷ž¡·x+Wț³ÑnNU|Î欒MªüBÏPƚ™œ±ãüúm€ènð2¹*åWA$ôåë¯/óåFTòFÄùÿÍþ͗7_ndZÃÿ6û›¾ó‡ß¤¿
  U¨Umnîތ/ÈY‹ªö7Nו¨oî÷oޚú÷÷ÿÏW>|åk¥àû훷ü×÷¹¿û->hueœ¬ólפ…
5áóÚþœ”®²Bâ÷ÿñþß⪖•s:äÕw~MëPiL^þïô>Ô)‰O¾ÿå}~_::ןï>Üýr?žzß[7PVßÜ*«ééÓ®ÍÊë¼Å§t©ÊÙ
 
ðíéÔöqYéÊ[Gxè›};Ð%”Íë§cÚUURÔ·øÚmNïÒuå´Ä¯a“6•ÆàƒÇ¾žó¤6x†ãaÛÓT¥]À#?ï²È`
  uó}è6ÍSÚÃU°³ºroÝSzZúʑÞÇS>0H6¯õmóôô=ojS/ˆ2.Ýjí«`ìÍ-l;ž 
m·é}SðÎçÃò§n<“®„3K)Ö,Åm”yZ×"^—Öûîk~lMlT°”`åÐ<
IJ€h¤÷ÏC¾¬Å{u§´$M%­0$—‡¶o›Q¸¦.ÿFFbj2¾†tQ;É­ÀGƒ&¸ßáNá®çá]ö¿`ÉFò¶· 
™ª–,õöwíæ4ÊBG QÚa¼ ­T¨qùø%$M˜Æ'öMŸNlŒAÝmšMÖ]mn±Ëö«Àöy|óôxì»ÓnŸ$ç¥Ô
£wxmh“nÿœÏá-¶ÛlT`+Ñó'F©D²\_é ”~é^lP*ËUƒú‡!‹ÝW´vË¿JÁ 
†Íx:i¼Åµ]»o«|_“xÿåxþô4<˜¡£“üÀ×öãDŽöMê”EQ;!§B\x¶ùkj’ò`IJÜíëø¢Ð‚0û؁žª³„$8µ*a¶
²‚{ß܈>&p£´¯„]«þ8Þnã•÷ó;‚º|À³w‡ì"6Ì],Ïú§n”& ¶       Íï¯ß‡S»_
1҂©›Ûˆ7£¢ÿ6šª¶ÒMäˆjµÆ-wMÆ9-Å‚ÊoÖZkB¨þñ<¹í²ÒšO„œ´ãñUÚȱ’?rÚ5É”ªTðÐM¦òŽ¾ñéé˜MÍZ2–Íøa
   –Bø<ÊHE—­4º09&‘Wƒ
XŽc“Üm4NP$~Æàz?=Q¸ÖYÄ­ŽÇ¯AìS3zHƒaddress@hidden fµÐ¥P P–BiOM‡Ä 
žìò¸´ËoyÉè9VºˆQúUڜ`NA3¼V—~ì?')Ý*
ôE Æ¡r,lóƾ·P–´+ʐ¦ˆõÙt- ˆäˆuj1zO$¤ýßSß ™S÷(ˆ”ª©f`óÂs<³,
±«µ'»SŽ»B[ï!›È£9l‘­x²f»²Ákf“켎)IûÔ=v9‚€%«H6
+ŠVD#çdWF:8wõ‹h³ƒ×âÛ4°'EÒ{Œ\v$@&ÁEHeÇg¼š!Ñ|gËSJ–»GÖ   $j¦Apí–
<)%_ŽME<śÍñ°<$8á!ç>Æo<ÐÇ·Ûæ„æ>ÿm×m²Ô5™ÆnTøˆ7¬¾lDX³Å}¶ÇÐQC*±â‘Á^ÃWȦŠX{n³Y+b‰ÇC¦M
+ÒâÑÙ\§P*9ࣞd)÷svCçI0cä‹2šr‘}“׳•ï8Å2‹qDŸŠÚå=knÂҏß^$1t 
¿J‹ºÒu(™ßßð~ÐR/‰¿b‡¹šÂٚ‚ß¾Ý{t†šcÍÐöHMµ[¤:,Q®·ÄÛ³¯ýs–#£/â7&¨'>e‡ŸØøçwy+È<JÛ$´`΀w§hTrš!Ã3ä/}JόFÒ!cúݍ°/*/縧ì0â&%GÄëzâ
[
+c¯`cn†ÏC6fa‰8={
+4vzbï$…‚áüihOp¥#Ȥ4
(m‘†íÙºª¼¦jzýç‡,ٚÁaåD'¸†oMÜe7Ƭ?ü¦'õ"ÀÃbûóøȬ%côÁƒ=ž›¾Aßðǧ\
address@hidden|cû.›©±”×3Uêµ
+kxkÖ‚Êp!bqÂóÑV(Gß~9·c‚˜ƒºD»3†âZsç¸*×I!d]®Xä*õԍÙ1x菣Çè˜A/`X{’r´ú*;—Ô·¼œÙÉ"³ëÛM¦Zð¶gúúÏo۟]d÷
  A’’¤DHP«à×ö 
8‰X>$ªôº预É)Ÿôrö*s_(&DJ~µ˜Æ^$)¹È¢¢¿àc‡ì]A_0€½ûåœÙSädVŸGJ™’:àÇ·]•.‘­»v{¬YS-pÈ~i-
…¤Ã1Jsð‚€„UiÜÔ?€À™Ê*UzÓж|ˆ¢t±ÏÔȨ¹Rƒ0w‚L£yF²â"5Ž¦k(c­åýÓiw<?î²é  
áfñJ­GÍEʕÜÿJ‡ÄÐ_þJ²µÌSº®RӒ{–oàAázœú`ùžd²s!cá
+«š¦h!®PDەk¶HŸ
+æµFE÷mŽ„5œQ1KlN       ¥1äÅ«¥
+–Dñàþj'}{r±)=ʸºý¾Ýv¹Fß±ÍIâïF
+­eà„(ž¶ÁöH[’pˆIÔ°C!
+M–2÷mt§±Ðܺ–f&µ±zÅÑlÀ”DX½&`%&Ä}œKE+²ó¬ÕÈLókS(3¸d 
rF.RN›zY„ƒ”“ŠEïšÉü1¢UÚ"‘  g¯5–¼6s:¸lðvRÍM¬šò]jp$±«2¹$,N»œH†@ 
|̦ɬ?¢¥ÔIíl“     N™¼¥>FŽQdŽ
…m9«% ]øz%!ãeJ[)¾ˆË‘
g‚š8Âî1ígùϤÀ³Vÿ:?a;Crõìu®{ÀÆ$^¬Ñk¥¯¯Ù踉1—‰¢ûÔÚ¼°ßc›]
+­T«õ¤ ixmø^g(ûnŒV1qwpô1Hn,.
§ƒÓ„íuL„ðK±Ù´y}Ô:Aþ*A¯ò¢PäIX¥×>1Ñð Áa`,ˆÔÅÒz]BݾÝd·ì»æÐ
X7£$„F²#œa:z™”Üd>#(9I®üÜ#+R5øklýSú0(/)SÇÊIÌqg<D5¸
»†Ár×°oOçþ+9ð1-fž1¡O«uîé³³Šoµ€Cö†u¤EW€O8ÍqØÚ9ƒ’×úÌa=–9Že¤ßÀõ–ZŒoõ+
+§“Ï7h¬´áøp"wõüZÉØ
address@hidden")ÍqÀ›æiÙXÏ6rf(©ìÅDts:Õf]Ž€E°6̉.±}ÑòZ[¸jQ~5«
ÒW–ýÊ   address@hidden ÜØvæ鱙êܲ~Ÿ/e™dÔn$'â&¨åJÑFÄ 
°¨É{6­ÕºúZ—³?e׺/K»Œæ»0ËX7K³Lה±ùðrÉ
address@hidden"€do—E…×7¸Èò½Üfv±×Ïjz`‘A”åU<.(†É 
±±9ktÑú×Àj‚¼«uS\£º)à-çŽ}Ĭg⠙ONS¾ÁêNjá“ÇŒÁ    
k«¦¬„vŒ¤æõÝ/¿Þý×Ï]zƒX©Ð$³U­C½
'EP»B9+pftʔË2eF;ÁIa9©!Åj^Œ´³CárQdÂoýÐÄJžEã²rßî)ù\v?Ç
õŒmS՜6~|ÛVUöSöŒš/address@hidden       Þ}6\ 
ÔAPuéºÉu§é¡K½·$dUdœ¬‹Uî>ä)„Ô8&ð`uàh½cÕ9 
rkR8LJ»k®i¬§*A÷0ª&¯çáy2¶µ^,öX±Rì±N~dú'B
+W
+ÚVçÒÀ­_k¥ÀÙ%ÏÓq&¸©|š$̺䠹ði8)×C6ùº&o< 
,*k\H4Z-$Ã÷Ôå¯L.™èàä`<‘(äI2°À       
°C9ŽfÈ#h݂D,͌Ð%¸!ˆüC[£'address@hidden:ɛ&s2ãÔ;â’e¶.»ZÇHL‡&ä–rh¨x¬=O·<7\¿Ä
žGié
address@hidden;æv§t”
+d÷˜GB‚\ÅJ×mÀÙ7Þ¦¨JbMòsOwÁ¹ D8)ÓÁp&æk"èhà’ÌÁ÷4ÇÁ™*  
ËKgj!¢-ϙÁä˜ûæù¹(È·`°©ÅÐ[jjMï74Ä 
?sóܸîƒä,ÖÎ8çâá(ZÖ¶ÅqF^í~j{úÁO­ðVù¯.j
+êt/àí}†ÿÚÎ+D`¾÷Óv€œ      Ɏ…þ 
Í\ÚÖ,¤§a¨PG4»†ïÈUšÇÚ,%ŸÎø¼pjÎR'Š,ÌÖz2ÛUÓ:PA“ʾ8ì/5£bsSaþûˆ.^Ðëg‚Â">~áÆÀ•ŽØçYLq+/#/)í™Ê-4&ý’FT
+&address@hidden>w}nÖøh*“f‹
+!Ä–]
+‹´Á€¾0£–0²TW3[AÛ²T!ÂáwIT1$E¥JéõÒ!õ&P/address@hidden@“;‘GdÒ$Ë:d扑9¢BãE3«É­Ô$ˆŽ­`º^¢ºáQr¸4»õˆê´ù§&¹7¢CSöë¨÷
 õòšaö²ñ'‚;OŸÆ+1{„N}¯’ƒ?ÄáxY`ÔÆ*É­qšf½µ«P†ºl¡
U¥Â”åe,ӌekÇJj­ÆÌK‘1{óŠ}‘¸E—âŸúIBù֊rnp§·xlO¤çêˇ[êˆW1^•Ä`ß
CNAâH×ôÿ„<cuÌä
+ßgš˜&ó †i2Æ7Ñn<®×LÈÈ 
¨šv×"ŒÝC‹C6ÈétLˆúJœ+—aFðïäÐDt™B$Èèþ/§’o˜ä—¼b7órɨc±z<ÿÂñ
+.D8œµð€ÍÚYB˜£BýWŒyyðÔmã°R•-Ï1ŒÞó:xK «]À9—<m>™  B½rüÉ{øÕ$M˜F 
’¦Ç!1¢éc¾9½{Áé^Íì–÷8þ.Oï¥IØy9þ:|address@hidden:2ŠÓAÆU¬×礣𼖱œ~–‡ô(92]'X‹þôd3!\£ævê祛º“Ÿÿ–-V™¹“õƒÊ†ôQ**'àܼô#Ú}¿“e<»ÂñÓÀ„º,[2
…ô;ËùgöRÈÖœ  Œ3—òGL5
ÿfdB¬^ÎúÚ%|A8ã¯é´ˆƒTNÁ$8ÎvL“à„Kw÷7ÿþ&þû;|¿endstream
+endobj
+281 0 obj
+4456
+endobj
+284 0 obj
+<</Length 285 0 R/Filter /FlateDecode>>
+stream
+xœ½[mÜ¶îçCÄ~kød¾¿´Ÿòb 
ÔHju?ÈZݝšÝÕYÒú⟡H©]Þî¹õb„֒Ùgfž™a>®HEWÄýþl¶/>®è¼ÿh¶«ï®/^½ze+«˜«ë›ÿ
+©Ê²•æª"ju½½øFVºzqýßÆ+*¨‚¯®×ß\ÿøz^•¡V†Å7¯ßüôÖ-s[qfEXþ—[¢¤RšÑ°ôóO¿ú~^
>åñÓw¯çßSSI£xXü§_|õ–š…ÈZTÊÚð‘Ðþ· 
••’¹o.9ç•ÔtuÉ4ürþRVªbóÑ´"œE`›ùF´2̘°x×ínçU[e£ôW»YHVQb£S;ÜÔM;address@hidden)ãõw׆Ӹ:ìq4¥­‰Šþ<vM½™¿53`¿¾m·ýð9([%ÛáÓ¼‹®¸Žjm‡
 0&Þ÷¡ÛÌÛRÇÅ]×ý¼$*-Iüq½;^ÛßÏk²â%1ã†Dñ(ÏäwðïY»%[1N£F?uÍÔmçÛÐJr…
œêñ×ùî¬bÑ3´÷í8Ûã.Àó½ÁìD³«KÀ‚ñŸo!+¦ÑdûmMJ×>ø¯´´Ì,• 2¨¼þ&address@hidden
"&`í©˜Ð•!%LÀۓ0úQx­m¤"šDeÏûÁv°bQÂ4"bºëÆ'cÑÒSžPÉú»p#Nñ×Ù!ñ3ÀCëm   
‘Çj¶d^ÏýÀ§‰<¿§µ$N=ö»3°þ|},{7…=—íoøB±¨Ž¶™Æ`8atûpuMðêCÛ´Ýl
+&+"ðü֋J ZáÏ=ÀdŠ!:ãú
Ďï3ôÛË­§NBÇ|På|èÀÌ;oЁR4÷°Ú¨%¥ñã]?ÌjdO¨Â²í÷»W)·+ܒw”2ê¶ähsFÒÑ)ÞNj€ÈàÏñãEd¡ú8²Ì¤IÞýfLî²ë§—Sg°0/ªJ
+ŒI™b`)Ðxý1Íy<£þ°‰wŠŸ‚ÖØzw±è.ѼNôÀÙ-;ؙW<í\WLŒ¬²„ÄmÇ©Úo•²E󥦍xçcl 
ҊSÀpš9†‹,address@hidden)address@hidden'o÷õPGAЏëSÛ®ñÒ¨`ox¯"•»ö·c3%͹o 
z#%z…³™1KÁÿ«f܅ö0՛‡clÎqV,E~ñyaddress@hidden:𛎜Â1`‡%U2çüGä˜¹é
£‰ÒMDPhÜt‘†DŠÛàè
+Ò°Ž;ïÇÈt¸8N9Å;2ýµ.     ‡ðL’·>Á[+yË%¨€¹Âàb›ô•Ä'/
+áÉûnã¿D
address@hidden)Wu%Ò*Tu¢$38.1—uC;í‡ÝcrY#<address@hidden z&Šó>fоqÕ¯9æd°Ü
,‚dÉ¢‰Y…Tà“Ñ,Óû›M´ 
â†æ¦ý߸¸ee.nUÆÅ}ž†˜Á”FQRµ((b¬oÛ°‰áæ¡(ú”c9C>“LŸ®é±ÖKátzŒ¼†&~
+dz].l”St²¤<›Ò­ÿA¤V©Õö؂{Ÿçà*,Õ!çB=ÒþïŒkOòN¾ÏAW$åþ/"ò¬DóSvù:H:UéSr”:ÂƄ¡N“šQ·)@r¤zu(xòzÇÁÃùVbq¶_Ïe\е(`
    ®       #´"ò)address@hidden@7”ƒ‰â(…âx+Ç6­¸DC¤ÆÈ5ÏDÅ¿¹šHv˜ïžtY   
     ¬shëP€€°œ¿$ÐiWš—Þb\Z,address@hidden
+<òäAC´é     
H[ô›³JSÅ>Ý(-+B³Å†•×áR¹±DG¡Nø­t•lÜ/µT„BcyŸƒbž¦öÉýæsP>d)½ÄšÐV¥Šoœ˜óßpð>ʏQȓ+4›®Ý
…£”<Èäü3WŠñ’)XJR§£¶ø(»LŠRE¼àû1øÿ«·\äÆaB!YR<ˆÿ9™r5¶Y  ë
+©¯A¦–‚ ɳ ‘PpäÝÀñ6m=¶JÆ\›T=¿dJMEu&YÒö!5„
+M1LæuLæ,ÕRëvl†nvmôŒ¦æÜ:T4Uõ‡cïéICÉ·•ô⒜P~ À Pp’K€5ñx‚„3±ƒxpˆ 
p“Rö
+®Ée„ðÏAHÈ/XEnº&†
3~ù.„
¸¹M|address@hidden
䚩ýSpTmò^íËûӇ¾¯À{ŸÈðîþè×»ö¶Ÿ:Ƚ³
$ÉÙ|Ú4iª°m×Ý~{9µÃ¼½‚4úë#L·öí;address@hidden't·ó×t5˜ÁTø…
¦/µªÇ»0™»"^&¤¿E§¼„þhD›ê¦        
address@hidden/¥ÉÃõ‰¡„‰ÏP¿å†4k]^-ªvËC‰Orº«)address@hidden'ÒÓ°ODÝwCìnpž¹3vXÂñ¬cz|
address@hidden/éρ4˜£6úr‡‡àx– ï­ï´U¤•sÚêààf©€kúí¶›â 
T‚‹¥Ç8A³8QTÙÿߦÍØ*öYjË?!NB]¨Ïè)>ÑHñ‡v½oÚõ#™ÀK 
Þ¼„ÄŒ£sœ©ßiƒ•Ëí¨­ê©N¹N,mëˆ*:ù»‡à,4M©¼mŸ¸^é,'ÿݾ3ØéŒgÓ´,u
address@hidden:ÈbácBÑ·m]ðEw-£|e{;address@hidden'%՘䊅îÒ'¿þŠÅ}Ýmâ˜nn‡g£Ça
+m¸>çd ñ*°;#Ù²w°ÔK"Q4‘¨u€¦ËíMÖŲ¤*xA;Œ<t§Å·÷CÛt½oØè
É;]å   
address@hidden@Š¡¼hb¦ãŽÃLE³X2½¤iŠÝV¾Xw{“e+””ùäÍ~ƒœU¨âqxÓ§¡âçŽç‹G®ç»B»9fŽ
 ÓI†?oÚ÷/address@hidden>“â(>KiÅÌYª÷/#B/ÉÅ5•F#%7ƙ~6â~[,6oÊô$”þ„,Gx‚áʅ
‡5☄Jt¸Ô!ÚAˆó(ÿT):ÅþàbÂYzŽ±ŸöƒwàÚÐC:»lò7ÁîqÞþtk:ZlÝûR¼1NOÃu~ýA8M¨1ÁqYYñ¢×ß5˜ú
 
é-Íéw®öY¾ðDÓÎAT>ki‡Á[¶4‰’¾ÎfÐʞqB&•+á˜JøwSô¥4Fz|Ž§µ{ðüRQYäbž¤•2½ÁÈægŒŸ)ƒk(<address@hidden(–Ô³;«X%–
Ïi1ÙÍñ€ëÜ.BqZûÒb÷´«}$ˆ
+Ÿeýû?þ(“½#xÜIJ§d~3îô=#ÂçןÎq/tf%wëѓ…K÷[ºIkE-Ÿ/Jò“îŸõ<OWä’dïŒÆn=cÅ̀f…
)šõ}dQîµ8=`Y)ïÜøfTaÛó·.{t‘3gµÀ Üc/y²–½¿?Ç9
8°0Xû,æ0Ùú#Š©B¬²xУ⋧©þáé‘üC|úÄæ°'
+nŸˆÄ¦¿E©ôÍÛô÷]ç÷
+§}¬dñù±{èx؋pF>ûøнšH
(¢v`Kf(~»æàÝ®n†~DIö`‹÷-£ö>|ÈSO‚º4®%§'xz¡3Õ]O¦¥ðFH…á‰!eå
«hbé¹]\ï·d몪x‡ù;Å8—j$pjÜ8”¶6/®‹d¶ðª6‘4ÈQVŸ¢¸#’ëì     
_ám‘ü­†Þó»MÔ®</\KoZJ%ʘÎæK¥ù7±åñ]Þø¬Ç0®JÊÅÄz„é‚žÙá¼S¥ñÁóü*=øw•‘tsP¡²”ø›{z}|“âö
+Ô]ãGg‹ðD#ç¯ñw(ö_±FK.z>gV÷ÏïÞçDendstream
+endobj
+285 0 obj
+3582
+endobj
+288 0 obj
+<</Length 289 0 R/Filter /FlateDecode>>
+stream
+xœ½[ێÜF’Ýç†?¢ÞFÔóÆdúe 
{´;ƯÝ;Æz¡ªØÝ\WK$KmýýD^""Yd—ÌB€P,2q✑éO›²›ÒÿIo7Ÿn>mD¸†m›ïïnÞü"ê+\%+½¹»¿‰?Q•EUo¬ªŠ²ÚÜn^éúÛ»ÿƒûµÍïwuQWRÂoîv7¯~øë۟ïÞýâo4ªÐVTéLá¯
    ×Ê:]ûÇûp£°…)>address@hidden
H×Ƨ´ZWÖ¸®æô:=SÚòê‹Ö®iÿc|óØŸÓ¯y9퐖#ÊÚ¤káyUáŒ*ñýy¿[UEAnöû>%¯–”Ðm3Åï…±
+ÚÄÀ   
péð߆.ÝX¦ÿ§p§(”£äMÝ¡Ý)ñM¸v«”.Œ¬6·–°ÜSüþªPü²~l錻L‡©)ýqÛb’Å>address@hidden)leñrÒä
+])Œi|µ+¬`ÔLgxû—„°Ú¼wh÷m3†×)address@hidden
+¥ƒIP¤<ԛ»¿Ý¼úÏoÿtcŠJqT©Hà5ªÆO84ágª(address@hidden"šÚøC!qŒñ„T•Åû¦
+匩çŸ|õµbM(pŒ‚îphwÔB̑ˆ     ‚C‘R*‡+§¶Ù½N\¦
‡÷KBc%xâÉYBøïñãKU
+úøÆH1côÇTµ‚Á•$ý)‰Ý±ÙN]$¤WU.*гQ
+ß¾ïÆ)e»â´e¡4qÄSw|HeJ•ÑÛÐ~LU®M%æ 5¢”ÿÊc›øsi•‚¯¼ÄQðÅâ݂Ñ=´Û+W`?S IG‘
+Ѕ:K]ú©ààoSô5Ѓ"  
ß9ˆ4Q7ÝÓkLü}%^"ñ¹Uz[IH¨(êúÙ¹ïæ<BO7ÅڑÊHü¨nÄkÚâë>çñ1²«ÇOmì<¢~¹/) 
ø-s͈_ uQ9¢Çµ¬¾'ÅÅêJºIºÐYâ^Çh(çª(êl…ý)Ýg¹ìÛ¡™ºþÖ©.Ë˒±TõÈa 
·%^¿·HlªFp>ý±?¾-b^KYèÒ
+¿Œ¥úk‡ºUÁ7g˜aIb¯0¬d†}ŽM}-2›â¥RÕäÎû©;íÛd·ªªÂ{âbÄR\2kÔ >    ËüÜ
^ú³aýŽj#€þ5¾“0A¼ ™c(dNç•œ}ÜE ߂N{™#*D4¾ùEéÜ'‡ˆ’(è¢ñînóß`«¡tpÍ·P8 
PÈY%´ó¼÷÷ïoÞ¼ÿq3
çöæÍoqóæ¯þ?ßÿüüõþ/›ÿ¸y÷><iÝ ÏBÝÀ„ôï)L0èÀ9SÓ#G­®Mj\ý¿{mRn…
ÎÖÖ§Ç(>ë³dòÿaa5ð#d‘¶k¦f­/Š´’˜ö¹“•Èô*¹OÐGåð*®Q1j    
ˆkµÒcx½\0¤pãï‡öœü¯*Á—/ºâ¢;
тΠ    (÷ Ä.É4À»l.1À‚çn¾
+enÁ¶)$•mn)À$ñÖ÷L‚Ê"C„~aLf¤"5¿úCŠ˜ÕúJhº#ª¾VxãiåÆ’ö­H$¥Kù~?‘uËÌÈ¢(¡«&;Ô°±Žtª¦ˆuXªPRçaôˆ1ÄPD†šm‹íFí{FF—º
 @Êº ûóqëµ($Ri+ò¦÷è‰ku   °™YÉæ¸k\éc'땒tt-èÐ<iR
+ÎYkÆm5ä        ¦$÷1>‚Œîˆãé     ‡öÐDÐ
+ê’`ÅRj·­fjù„ñµÔù$W¹ž:÷Sü6åÑ-‘ç?¼:§´æ²rW£¸‚°~ßmÙÖS^Ž       
\`Á–cöÄìs5}î‹ßôÌ0 address@hidden'tÆ$cK’à_Ûý}Š•°¤Ø?'±5†Cý€°˜ºXø ©…
Ÿº„;ߎ))wÈÍ~€V  ÓMÚÛþqÚ{™‹MÔ¼n¹×օ
,ùIdʌ%S6ÂWܞš$è:-Á»”rI,ºkïð<address@hidden     í»tħ¡OÄ4‹7îЕ( 
™,[F¶OÝô˜f¨ZàF²`<F|€¨â•ó°CJ±Ä]©š­÷òÝf‹™0Dh‘·kë$Ï|r
+²IÛšú¢u1‚í]֚ލí”òdKMÁMÒL#|ކDYJ‘¹ýðª+â4Â?¸¦àgdcJ¦¯I’>e·÷E²  
y0r>)ˆƒ¨`Ë%ŸçYþ>o2cÞ}MñxÝ`¥M6ò£hz`]FÓó×
+U¸šÇƒÈà:K–f·Ú»­éÆS³q
+æšQE&tÖvuqÚÑâM&´Ž3ÛqÜ%jö6)rè•0r‡ætJ¡áِ1,5°eÓ|h½T4&xz충4¡áÐ9BÃÐ˱VE½ÐKA¹õÃ4‚§tó~Ã)"address@hidden)(0T’PŒJ²í|address@hidden,x[5#LøeR‰ZT]ÞT­O%¨gð³à.r1é™N“ÖwGo™ˆÓ
ԁ!U¤‡W\§=%¦œùŠà­6^ōÚ4tÑ¡B­è’2˜zSi•Z–„ÕDáBA"ü,×ROÜH™½Bs   Ì«
+©-!ôʔ`æ z±S´VFRßìÑà—ìHž‘éèj@)”2¸š‚Ÿ|
+ÒP`PY2ﯣc“
+„–C3 3€Ò`°5N×óåª0#瞭!{¡;4dM„$QýÂü
›ÆÖOÑ$#¯Cð‰bÞ÷é:¸j}¤ñHN)ìÊ÷‘±›P`}MÁ>¥ôe#ïqjœLHáåó)â§ô³ü”·  
address@hidden
+ÇDÐóDy‡Ñ4¢~háf„(»£™êS—š 
<àê9€ñ„.¾Ç~àÙ`uµ—ëúTXš%`7¦´8GK³Uð©Ù¾MwÀÍ,€›¨Ÿ«Óàä
Ú»mœAº×55Êx¿"‡<Öì’ām¨ôb˜©xO
+·Ï äëÙö>@F*VÔC¦ëUËO       
©K¦n®iÄíêxÖ0¹Ô°SñôIX]ŽèÚj•í<-QÔDT[`ښÂAÄ®5õþ’…
¢Q´[Ö|LÌEÎ}þZX££K^Uq‘}e¤Yú.—f;Wª¢H‹çE¿á6" §T\„Ø㕄HpWÔÈz·Òm°LM×Þç 
`õõlO;Yk‰&m‹{ÚB/çÙ^ÈóѯòèïR¯âm”–úÊA‚ôÕ´'H‰rõ^
­½z6ЂRŸuHF¯tH¥$º¾¦¸AŽ.ÁX!†©)address@hidden) 
x,]ġݦGºÒd(address@hidden"xùޖs"5TB^“ßíÜ'ÜIC(}87C‘#Ö
+D©o)ÄRúA·5ܟóÔÚü‡e¡}'"=‡S"
khß%´òçÝtŽ!;ZŽô<5hîŽ3|þ”ó)á[r?Öãþ_&address@hidden)î
Ä®N®ðFÿ¸rãëϘ4þ±Â÷›[ÀOƒk
address@hidden;o={$ä•.y·¬E™MÒ*„œ6ù^v `h?»h|àCA½gvÝÏÓÙÿÞ7Ý@@"#Ùú3fF(ž
+ÆäGR²¼£dÍz¸š‡˜d?û7ü¥nî©f½1<šÍ~‚mšÏäœÏ°dSÂR%W°¤ê
K16¶ÔTÑ«üf¶‘˺©*ª›ñ|Z«»]ÍlÊ¿ï>
4~QT½w”–Ý
+'Ji™JÛtÒ¾:address@hidden     
½Ž)¹B”;9ïSI$¢ñ“HCw"³Ÿ$©’ŽµÛ¤¢¦‡ÍežiçAgr—R
address@hidden;HÜw)ðÒÏ rÀgc˜Ùf¤zq˜º$ÕjvZ£ýcJ¡‘†;gòí–åw!ǂGÅW
BÆ[Ï[!‘Y¡§.9!PbÇâ8hþ–µ-ÀŒŠD<NúÒIGRü̇`ç-6(Àh¢¼°^áÌX%xêgG³ùô¸¤¾¶¯„ÇoÀÊ-ú¹,u3,ÝÜJÍûÏñX3ò°M·ÇÞ„¾ê¢Mõ.ùõcà`³£#UÍé´ïXÛ
¬[89ËGš<’³âÃ/7<^š4gôfš})nB—RÕÜ[dJê÷dþ”·ÚP¥Ködm[Dù3<<ÎO;,aAZû3їl™aȶGò†Kƒš©Õ¾™¦|w€
 ròOþ.ѱ²|0jØ[·Á¯*îʏW›‚ú«p›
I½àê1âh½H²Ü<3~«Jò­Ï­–Æa•%Òú˜vzfþò™·™VyѨeÌNJą
ØæèoR“6±¨`ª”!6óéW¤§øîü)Kä÷Çt|address@hidden<ʐsySLuÖ;address@hidden)address@hidden|ïÝAIUyÀ}›ÎGÇîáØ}³mp+Jքù¿ÿ[Úx?Po5UñIßçv£ïû˜gà8Ú¾é'€(¤&ï=ñ‘XŠã
„©
!쥍ôó:鲓9Só{1×ÆÙ®æJ¯ü¡Äyàޝ‹—fÓ¦ˉD~z`VÒåEI'.“ÜíV¦ÁØ#+æwf†Ö 
6Ûm·‹A‡œ¹†Œ¯ü_¾ø¨`n+,ϛ³eEÃ\Þ)õ[Zãç²f‘xBÒïÇïRj°tG
+Úb;uVó«G¿ KãmJχ¥y»™ÔÖÚÌ÷´mœH_¸µ  
?dZÒ/­Êè–Jf°ùL™%ÆHYYœ‚ƒv^ó¨Ê§tç¾ÿ—ôZ(ÏcS bR{KÛòÒ®Z’5h†ëhÏ››Ú)!m¿ 
fx¸µ6qŸ
address@hidden¢7¾õEý{?Â&¹9v§ó>ÅÔ@)W42Ü6§æc·ï&hXãcì¸âJ§9Tɲ–  
‡b9¾Jx½€ð´âüš¸ã}IÜe8ïw]ÜkvB.TÌt¹–+êŽ~ú?ÿ¥.bendstream
+endobj
+289 0 obj
+4275
+endobj
+292 0 obj
+<</Length 293 0 R/Filter /FlateDecode>>
+stream
+xœ½ZÛrÜÆÍ3˱o±«Dhî¿ÙŽí°Êv™N¢<€» 
‰ho°¢è¯Ofºg°‹%%—-»ÊrAØAO_NŸ>3o¬âþM.7o/Þ.øø
ÿXn___¼|¥ìÂWÞ£×·ñ^2•+MÅÌâzsñ¹®|õÅõÿ.„¬¸âÞº^]|þË·?|7>u•øðçðÞ÷J⣯Â#[q/¸J¾¿úéûðôå+îJ„q•óé%åÃ+—RÊÊ(µ¸^ÿæÃ}Ó᧹éË]xæ+˔ÂEVMxÆeŬ°ø^½ÂzNºô°^÷»ãšÖ4øîý¸&g•ä

­ÀGZ2™5ï⧕¡m7ݸWMÜÔoƇ®’*ÿ¸ŸñJ:§ÉÆõz|,xå8ùdØ¥W½#ÁãCSYç$ý~_ß´ëv%m¥˜Ã>†G®–q\vÝÞtu÷H.%Ó*Ü*„(=º¾o{ô“°7ÖÔÛ>Æ

áÊ,.¹HæÕ£‚Ñ”<Ùh­Èè}×n’£ÉßÞ×w)à¦2œÑGãN˜tcs致.³ô^ˆíøÄÉäûú4´ïbú2Ééˬ¤ÐÖñ‘õœsʽ}Š¶UrâiÈ2ξ·»MµÎûì‹~üŠP•—ÆQ®ì÷íönôªR•ÐÐnSpM™Ñ}Êôb;«z¨o꾩bd˜€ÓS‰Ë&
…F3ù´?tûôÔjI†÷”e–â’v2·ÜMª.¨fŒìgÛz’†ç`å°ÂË9¬1¿ÀGÌ*tFJ|Q     
A‰%Ÿj¨&ʬ‡ôc%åS×$‹¬¥œ¨·+Láñ;ýn݉¡ÝGï}hÞcXI¢ŸkvüóK)|e˜§šÖ…
5³uás¾“³Êq71³­öÂM3ۙݣ÷<#̂4L‘—Œ|Ò¬ª´S&îô«>ՀŸõ‡eÊKc,address@hidden    
×F|›‚òº©ã§!˜P’9–]S¯ÒŽ¤¤ÍS6Â"Ò¢ço»ÝsÔá–>‹f…
¤×äù¾éÞ%ïI‹o6]Ž‡$cS†;h“Í®º6ö°€ÿŒÚyñßAÖoêM½<Å7€iÔ¨Ñôî‹0°«¢Û€Ã)Ò5uuzóA9·µv³_?¦¦û
…ô»„(A#¿ØÞmÛÏP¬Ô ‡¸’†p¥1êjDü§ZE·®÷   )¸=E
+gfÂˆS¤¹AHq»ëRÀ-ÓOý¼„ 
ˆ¢#˜È¨æsÌHÖG¥Õþ§2‘ºÚ¦Ä÷Z£e0jIÛ]BÃy‘R_s”û™2™LEr3.§ås™IJ <ç  Ð¢
‡¾¹=¬SRz¦O@@ç‚ÿ86áy.¨:~ØjÎñ­¾YîbÌ$°,O½-$t³ibÊr¨**Ô¡ÚÝøz‡•BçžU”{éƒF{¹=l—ø{é!ù
ý~‹äÄ       ]VPNL©Nó÷vÿ‡ûv™²Õ/ßG›½÷DãçhÂn?´›ö·fô2IЈ9k{x5¡¡Ï"½d      
2°ôÙ³°kW}Â6 ZéO˜'5Ð8JÌñÖxœ\ðušXšn¨#ë(“¡Ú¨¨"wo›X´/_c+&*   
ÀÿóÃÅç?ÖÛú.Øñ×æ8…Ûý±à™ÇÙ%¾z 
6wò¾‚ÌÍPßiŸí®ÛÀFÇ,R°š)ü§3ˆ¿Öwm±ŠŸxJVêÈS°c5ceGqµÍ&"òɤÉ+æ®T¥"a’Ìþu»nߤOævÔDdâEù¶Œ.·ó_·íû
 7¬#Z†½Œ…j<Jc€|address@hidden
+ƒÕbWï¿LVHFQj·ðz$!¶Ø òa)FsÖÕëÍ.’͵¥º©×§í~¦pqR)êû        
dk°¨Œ(‘ø®Ç¬)’ä1!‡¢U³9öH¡>›#º2Šr¤`—¹?¤0A•1Ï©$ë>͛ÐN8mdÙÖC“2JäÁjf˜ìš»
æ&·ì‡v¸'address@hidden  w!,œ7£ÆΖ÷‘©ªåDU£Q¡JežSÛþM$
+z*>-¸„y:‚ÏM ëei`¯¹"› ÷¤Ûmêaˆƒîê”?ÉLFã%ðõÑRÐ:;]Wû½m0ìBdlcł²dðÉW†
šë‹dVw’4ŠEh2
+~,#n$
+Βãù¦TÆ·õa= –ãG^Œ‰ýЮ×i‡–ÈÊM‡Ý²Õ[¬KYè sc·Ñ4=ÐÆMvƺþ­¥xrKLÔ2xH
+^H¯j¬ªÏ£ìq›‡f|[ã>sÂ3jÛzMƒ¸ÈcÙ¦Þ¶ûÃ:Õ½†ý9šÎf*ËBjœ     ¬ØUÛ5Ë!z
+¶Îq·DrIÛI؟è9ócµlVðœMU-uèvåà<é±q=U
}ƒÕ_¨c†!S“¤sì<©sN¥£¦ÒH•€Îg1çê¨E(:d¸%."M¨\eñç„1ÚÑÓ6S㎘>ËPÔC°×H‚¤Ì“à=êVð¤üMÉ1esBDàQ&‡3'߸m*iÄq–uV¤¥‰³oÌ¥Ê0ûØ6'ßRÀ4‘‘‚ò©©k6ç"address@hidden(d@|¸%(¨h=W(È´/¦Î‰:œœÌ<g¤§I¼´ÌJmJ!¯™qs艦ˆI­
 
address@hidden>]¦Ê|H™ÚäžQ'#ß$¹U–bÚ\dúÔjTÁïf~v+ofP¸Û6ëûB‡³¥(a˘æWPð#·;™Ýž8õ(™üNÆT?¥ÅBPâX˜¨cKMÔO:
…KLH—PÖ;«Gc;ü’Ú,©Û˜&:4¸)ÒðBSêþMB.æÉS÷uO^Ñèh(Mû.-ÊT¦2«äÀN|ú¨s†S¢R È¢ 
¦M×Ø2΋—/0Ùԑâd€ބ4й(§'C'Œ[yè<address@hidden;5|™¸ì$} 
Náòéä¬3=uWÓ}†93;ú     
u;ðëgÕí©Š¦÷‡MRñ/¡=Bì4µŽ|address@hidden(¡$'ß5àò?_Î-&%¡eþ”
+™<â=ç\¨¯¦rê*D›…
”IÅ1F—Uq¯J‹\Ì9ûnGvQÅ,›U}mŸ´àÐçÞ¢\žç-:X(X,@¹1NòìùóÇéIï,‰*Hyq>:ÇÁHñU0<f›PÈ;«žlä£Ny”¶¡áëØX—X,`¹!ôÏ,ֈ“MxF›1'5hñúD“œ¼yrB?+€k€çZyÎ0;£gCÀœn¥¤Ñi™UÐiÙrÒßïk"'9=r&C™ü®M¢ðN˜bÏotÓ,É«:«àÛ¶G)Š;‚›'E]g³¨{æL·'CÝ<ITHÅ,`g±ÉÏ}9«Šsݬ"XWÜѼnûû„h>URäD)0”<address@hidden<address@hidden
  Wt–û]ã9òW¯V]ÓGy
+x«£ ôûzÙ$)ϳE`W®…~^1xŒ­D´1ÜWÉûLR¿j}
+ŒâRÐêÿj»áé²
+÷$ºñ»Øòa‚¡ÖÖ՛f^*ç*˜Ù‰T i¿nÞãgãû”
a­/S7Rž ¯Ç#!eévÈhÙ1
+N„ÑùÔ¡©»¸l3K·ìH¡9ûiz–‚óhxÊDi        
¼²üﳸz~âSH1GÒl‘{åüm„<+7$Áû|address@hidden&ñ\!tMjÍ0È*oŽ¹I˜„r¯!„ûjä<b‚9ŽfþÐ1‡{D™‘%‚uº™„fCÀŠä+(
¬g¾Ø}³¾MkpGôY¦/Ÿ%‹á82³áeèÍMTÆ(tbPáÕ"èÙ6“™UÛ£¡Šƒ¬v¨“ ?ÊtY. I¹˜ukdá…
J÷ˆ©“ïT­wwmšvG­‡œ¤ÏŀlNý¤P–­;R–§Š«Ý5{((N¾„€Ž…
{)Ða˜».!mx¼žØt]L„o¯ÿ¼x»ñÖ奪܂kp 
ԛ0!.ÜÏüúêâåՏ‹¡;4/ÿ½à/ÿþóõÏßÀW[üåâÛ«qùKœS¢Kœ:P 
ð˜MÇKœIeãEÍí7笴Æëþt+mx¨J3»&0ÜæŒa‚yPþÏ6L„óW1ñ_qïEç–úÁG…
2ýœca=û)„úÄþgHŌ±’™O’«A‡VZ>“¬OØÿ§{|E2\¤–p6*ÒAcþu€«b²QÂõ³ÂÕæO‘ìjœ"øÄÿÿùoD7§sg`”åõ³L,address@hidden<åa×i˜0ÎÓ|Qܐð™U~µz—À×{N4ƒÈLÁ€•&BÂåñ^¸)GòÜ/Ð//NŠ
  |-­z—,8áu‚ïK^×¼J…]Lè<áø®àŒÔ¸…o9„K•$¯UwU¢ò0<û)Qî×õMâ÷šéÉ°w3CMl²     
  ™Ïón“” ÃeÒ`Ñé2h¿Æ]j¼ð]Ì¿“ë·‰ÌJ?w0ìó€6×~’­^QQ„ÿÏ+endstream
+endobj
+293 0 obj
+3636
+endobj
+296 0 obj
+<</Length 297 0 R/Filter /FlateDecode>>
+stream
+xœMŽ»Â0E÷|…Dz˜8ïŒE€DËC‰¹ˆ©Cÿ¡    )B®t|®å        $È<5‡QLb*l‰a„
‹õ•DŒN9üß9‰.€×¥EcåŠß³oü¿§ÔÜá§h¶ûöÌéšE«Ñxrua13²3“¡²û¡ˆäÑJZ.ð­=fª      
½×±Ò.u§"ëˆZESñ£ôçG½¢Ålû¶öÉÿþÚ¥.õœyb¸ˆ<+>xendstream
+endobj
+297 0 obj
+179
+endobj
+300 0 obj
+<</Length 301 0 R/Filter /FlateDecode>>
+stream
+xœYMoä6½;û#ú8l†ß¹y'‹ÅN6q€=ÌEî–ÝÊÈ-ZmgþýEVQݒÛÎbÐɪzõêUõ×gbÅã¿üÿúñâëÅו×ð¿õãêï·?üjÂJrf­´«Ûû‹ô€M–¹²Ò±
 
W·>n«§¡î¿¿ýã"ÄýÜÃÆÛÍÅ—~øUš•ÔÌy'â9W¸çʦä¸ñv[Ç­Æ2olþø—O¿Ýüw<address@hidden,address@hidden&®Âãƒg¤Õî;¸p\6Ì(0
 
-WqÉ1c„§(ŌSøÞë_nÆÏ9SôС¯LZ‹×ùM–iIûähøZZ\¼Ç¤G†;føîM}_ځrŒºèvÛ$ƒØInMkI¥žÑ<>µõc½‹т9-1ZC½ÉUœÛìRHÀÛ>[u¥d`V
+rþùïßÇ7€µÁä½és<±mîúª­SÀÂñ/Ûf#h­Ñyu‹&é‹ÑXMDWƒÇŠ«ÁÓÏÍ:íV–¹`ð]O}
+—†^Ÿ›Mò$†àŸg!p)address@hidden@address@hidden
·VᖞiAáf)±­_uJ[9&¶0žYÀʕ?ØDAL`ü8LJ^àþ›F2é)®C³®†¦Û-²†‡y¸胹䲏ÕSu×ó4    
    address@hidden:ZDD
+ôÏC—ÍV\"stšB&›ô¡rî%.E~®
Bè)ÜÓ*Èl£/lóФ(CV,ë„T«”BUkȈ”<address@hidden bÝmˆð‚›€2æ&KPæÑǖ lþ-g7Ìâá
Åãs_ÿÙܵõåh’7¾‡m9¤±ò¸‘™`¬x=5~3šœ7$
+3yYgËõ®î›5Ë4«,ðs—c$%åÈÒíÏ9æV¡u™mqÜ£kß5b%ÓıC_mš˜Uێn„¬2ÜáGH @ 
ðY,£FïOÐӕ:Ö)§ WVžîéZb]ÚÚ6û„‚Ääxëç×1\:ôÓÇ}þ¾”my
EÀ–&(öõ~¹kMôôړ—N9Z¨žÊæú’ÓڔzV§P™ (.k3ˆôàdÒ»hw’ÈÇ5}¨ö_09¥mØíšÝCN
ð
©ñÒÛ|òbIDK뺪TÀ•f\Ó^R u‰æÞü”Ñ%%¡k]írp¸¥ 
ñ÷änÀZFˆUäÛè,(ÚQm«1ŽReŠ9Û*GÙÝ×Õ¦‚ì     
RLK<ú¾ëó‹ƒ.AØ¹àšš‹^„PP"J¥·AÖjáNÏàprq£èÐ=×í°í‰;address@hidden|](f¬Ok ü•
ÏœNàñÉQë\&
+ÕÑOYeQ,:2‘&ˆNÛ}—=ÍeÓ«Âd?ß»xp«îó!ÌÑRÄÊÍOÉo>²šPÊyqq¬ìÛô™ÊŸÔPS|Ìq(ƒX3¸¥vf"ðà
 "ð*RCQ’“pŠ!(ŒBš7aRMJOUÀUø£›–´ÔiÎù;šŒ=JE=&ÆËCzR¼¨°ÁÁ’
+Û;øAkFªxk¶ö¥«€×åӋZ8ì3åÂjð´<M–‹)Te´èfȲŠèûÕîb& ª€èQhQ7K9y™…
)=éÆs½ÒT`.+Ø}J±˜§‚ »nªLàÂ(zŽtUè,address@hidden ‘¨ùh.IV($Öә|*Y“Ä­%‰µ 
”ŸÓÐ+U‰ªi±|(@¢Sy
й‹úîð”å…¡²”€U¿´ñ˜µ±ÚQÖn»v“î;½ V|êDòþ°Æa‰¦¶XÛÃñ¬âJrWÔ    
address@hidden:n§X~-=ëìA®}9v_·÷üÆKyæèNîsöè 1
+¯µ¶—ŲRJzC­K†Éà 
ö=]Ž®¦u—oÇ<†üž'Δ!EÝ¢ú*AÃ^ÛÃ]P¦lÿé>address@hidden&Ÿa2kEɌ±‘ 
ðöÏÔA)Jz8"Iü{cçnŸhˆ}•hù´<,–·jPrü)KŠœO,I‚ŸN“Æ—Å!aä
address@hidden/”2…
¢Ô¬—&ëGÈyê”îßpnøÅS>íֈð9)address@hidden)Õ£’,¤(¡¥8;Lz%‚—TZ½ü?>ϗN˜86c¿ìºœ!ÆÓÔé
…
hp>v<֚KtñÈuÛÔ؋M*þp™"Œ‘ób©Ë<¢p½Ò\/ʀ®Ì؇4‘G*yY^^*¹m³É|¯$ƒŒÄûî=rÔ8O/äþ”ë/‘ó
 χ‚Šº?ÌòŒ*âLޜŠ«U|ø;©b‚”7t]L6÷צL]J²é˜páÃoOù-\–IvrNÓûN҆R勒ü1{LE…
L‚9PÖX¹^£&
ÓaôiŸxêTðdú÷!uFJ:
+=Wº¯2šŒÙ‘‚üä'c9KÉY°‚—>²¦ŒDî¡Ø’|NuO溠
Y»‡M¶äҒë!åÌ©4"Ítº™/›`õ¬ŽC£2rZ$˜’÷Š/jW&Úõröý™ž"êÆ 
©Ýv‡v“µ).XRAéí.½}“ýW;ÿÅˆü©äâ½
+gòóÆP†¯ÍzE¥Þ
+q2µ(ó/‚ÊDÍB-•þ=$–±í=ŸÀâPJ”i××C“Z6HFÏi„>åÅáçÒ,¯ü––hmŠ-`üÙ.¨”%åýQ’z0¢ÃRH°•ì
+j‹<‘rÁŒ¿îüãvõŸ‹øïñõb4endstream
+endobj
+301 0 obj
+2444
+endobj
+304 0 obj
+<</Length 305 0 R/Filter /FlateDecode>>
+stream
+xœ¥ZKsÛF¾+‚ǤJBæý؛7ñV\µ•dv«|¡(ÈB–"d”×ÿ>=¯ž0¤horH~|ýõ×=ø´!
Ý÷oüïîéêÓÕ§
õ×ÒvO›¿ß^ýøžšm¬bJln®Âè†*Ò(³Ñ\5DmnŸ®¾—ì‡Û?á~¡g÷ÚÆà7·÷Wßÿô˛ßoß¾w7JÞMUüƒjÜ5*á1ñÚí/oÝE&C­Œÿíwÿv—¹hå4]~ûþß~}óÏw·ÿ
     VÌ­¾a
+þÏêÍ
ÓpÕÿä8¶ƒ>m„âñ9Ûý7Ä6JÁíáâÇ¡?>û[M£d2ùÝÏ£7šñ†›ôû7/address@hidden| 
--K·ù×À=’ód>8z
%L§ˆ=ôC¹4)¸ÛãôØü½jÒ½S·ÛN]ïÿ        
·L&ߞÃ»zÙl¨±›ÊÂÖ¦õc;^GCé¥wÇä˜Ð"e·=ċ\`N»K8çéyÓq8‡!ÚL¥'v‡t«±Éú©ÙâB¥hµßµ»©óiäâ¢|€‡æ7åüi‚ù‹F2mӕ/áÅZ’dDÙÿPƒ}Ç~éÞkuBIÿà淚$Ö"Lý5ÞQ$ñˆ
 ÚmŸ·wݾó1æºĘҮÎ
XÁ1qÛ   Œ1‰¯#
§øºè• g˜<µMx(hÕ
¼Ïýñ×ö³·Ž5ZÏm–Dò¥Í]ë,!AXŒÒ\€Œ²vC»"4 address@hidden)ša&üÝ8u‡1pT        
address@hiddení§c;FDŽhK†ÜDèvHaÖ&ó¶        ÞðOb¢ãÝØNc$[H]‡‹
+qδã!²Ð.FÏ!
 ɐ®þþì 
qëQp¾än‘ÄÛ¼_¢ÑàXrõ%\Rš0ô>Pô‡B2       
\3,‰j>qéÒféƒ4£ÏC‹•åæñÒÝGR:5Ô¬‘u¢|}IEd½KÑäTæXÄwRY#ˆÚÃOȸ·OèKí]gYtÎסAzEÁC9qb¸Zo¥N¤Tݝ’ä뻟£¥žä¹Žy*59‡DVF£ŸÃ]7
ÛÁ‡E'Q–|8Dr#.²zoÈ|²¡¿‹ï+¢õ'kŒ/4VåÔ$ªc¬Bu¼Œ©†HqžL-™䓩1]~ýô¸š › ÆKÙĝGN6_Ò 
›~OuG°CmÇñ9ƚgRí‡)J)KŠ¾>§ö¥PS²ÉZ*JKì0Ïø*¨&¶x‘yC텰¶Niw¢­œ\ÐTôɦbÕ:Ô 
T±©`­½ªKˆ6hbËÊ&ðzušÂªzíF¤R,address@hidden;þ7"CÙ¬ƒÈ`n4 
5ÌκsÀ郖;ۄe„Ïýi0ô5$Tc ,¶ ,xn 
íðcÂ52àú†ÂØa/±Ö¬$›#¥ÔçuynH–çè–èÖ®ÇÈV\ã<ðÌmóey&|û>™k°°?ø¡ÁÂüÿ#üZq©sµF})
];»}צªT
+]š®#œ—g?ç
+BñýSLô%­1}_Õïûh„¶¹åëĦ¡ÍõËþûnºõÙyø잞÷íSpÆf˜†Òo¦DºR^ ÉC¡
>÷>
+pÝHlºÏ"ŸF
+¸’«,*»Ì¢P•,ò¬àf5€Ý¹®×¸K‰q^°à7Oƒ8ü2hCvüÃ!ç%<dv–vèOê\*UG+)×Im
+NA )hݓiªÎxá.n³"/D
(‚éË,{K“ÛŸØ
ŠÇê(zÁÌ/0      
address@hidden(ɨš®*tìÅd[,X(Äävÿ¹AVQ¡_ƈy6ô®D̘Ö,óÏjàƒ¬aÎKEP•k¯Ö‘ï»ïÚ!€<¥Ü,ØDJ‰ÛרÃÔ
+Ó41ûZûõ’By‘ΝN׸
+ì_Wgà:îÛaÿ%NÖâUÈ£Ùã5ÉaO
jj…9gĸ}jÃ.
+àœ×wc±Ê´†j¤Öl^vë\…ØY”<n×<ý‡;­ kþ,
uhI6'¢tɋµ%‰“‹Å°S-äìê-7²LÅÖí„>ù¸¾²ªêÁÕ!
++
+¡.Aè/K0QgÀì“b°äò€‡$r–Qï+ôšäØ•ôë]ZÕÌU
×'³òš¶Pâ+´E¹F;¹AœíÚ2*¥¡eã$gÉÆ)4)™Ÿäð³u]^Œ‚h44J
Âq”}ƒS¿2¤Ò 2±h©³‹ 
ó’.i7H°¢Øø¦M[tbà=\/Už—ÈÝoŽ1ÜCë]¿c;e67n§¦ànïê<.œ˜)„άJ¢Äωñ6R‹T˜ènÛýCÄ
Í£&E"¹0M)address@hidden
œÒkØ›Æ>JyWëX.Ÿ;¹õ&fF‰`ªÏ¶ú]¿ÿ[ÈÂbuÀ,uÌ:[€ðí÷S™Õé_»ó¬ÐØüýA®UIØ0;{r[²œÄŸjo¤nàé)y½EÅr½ÅKÇ>åD¯ÒœrÊ|FíÉ
+E¡2åœdàUºèu1órö¤düªp¸cRE‘¶Î`njß2ƒoªÉ…
g8Ô7±‰Æ4ŽôÅÂg»-ÙI(©é"On!+gÙu#J/̇+ا^O‡;y{-óµRªºÙ/¿9ªÔ¢ê0žM°ÁJ‹Ê®ÕJ¬“N´ùP¶\~ð,Aÿ"ÂìHH0NðáôÅÚlnù*¥RP]±¦­R]]X¾ö6á֜ÈÔ×!j”æ
m]/ᅩ¾Ë'bã˜(™åýò®ƒŽ!òNñÊÙIQÕãêJ§5â„0õi€¬zæ=Õ¢qà/_§¡è8qkwCEp¹:ÕA.–-þÕWP¡+JÐ妩»ØrÔ·ò¯ãŽÛ¯¡îY*NRwå.ÛÌÖi8¦s½%¥‡Ï–ç¨Kvpò”
 ü:µ‹‰g¶Üms$–ôéݝ§Wp_Iž¥ƒ¼«$ù¤zJ[EãÇãn׶÷×ñ9¨µV:]aÆÉ°ðƈzXVÈ£™€qKCØùc˅
HÁP1\â®zfY}æ©äÅ܁Ȳs÷”¤Aþ֐„J›,FÕÍ-òÇ©ÕÖn»_ÀÈÆÀGÄE¸Éòá’=5‹“       
w§ÐëxÚb¼Ûüå[¯+F³,ëžqX‘[|z1a¦ûôÂ_uó8i1ϓ<5t‡‡éÒv¤g(9鿃AzλÆ2‰í×å^ŽÅ„âX¼öÈ©œŠGÌ
 GBj­ûر²ÛÿûR„ÔKXZÖ'ُU¾Ë å®'Mã‚bɸÈƓg¢ÜJ&üŸiû§¦ù³/ìZ|“ì×î 
üÙÎZdÏøÅYÕò£†3Ã?Rãÿ»wÉ0¸yŸ
Œáۊc\½úï¥Ó§¾
+Š;%¥«f»öÂb·âtÏJV,0;address@hidden  
+'œœà÷$×A¬AÒírë'JnÈ(r‘˜íC% BSt,PÿE"%Ê"­WK"^²VÆ    h°L8Tâoƒ7î_BËÐÔ2Ü
+dz[¨„¬Ûvi֐Ú,„!Ëo§>,Än˜„nDA›Á$¤Hܔ3ܶ)›1õÛDNÜMÂf)þü¹ŸZBQ”r     
Šþ,ùRß¹ó‹9Rs+U%s«kDþ>všWVŠÁ[³<[¨(uBH-qM;3Ë®
{Fßp$,ë{sç¬Rˆ8ˆ»Í…ƒ&vþ-Bà1æ>ÜÀ»SSÏ¥8ÌÝ?¿×qq1¹Á¤HáY”$‚s X     
wfoW'<ÐK*؝x¡v_.¬¾…p£J¡¬º±¶Í%í(”ÆÄ坔ºðDÇuý‹cæ]`óÓ¿`×ù`/ßzÃLFb6
+V¶‰Õ^î&AïßÛÛÍ¿®Ü¿H·õ¾endstream
+endobj
+305 0 obj
+3181
+endobj
+308 0 obj
+<</Length 309 0 R/Filter /FlateDecode>>
+stream
+xœµ[Ërä¶ÝËþíâTh¼K{ì*kO2‘wÞPÝԈN«[C²G™¿ÏqqAìVËIʋ©‚ØxÜ×9çþ|Í*~ÍÂøïæéêóÕçk>Ž¥6O×?Þ]}ÿQÙk_y#Œº¾{¸Š?à𑩼¸¶ÒTÌ\ß=]}g*^ýõî+!+®¸¯î¶Wßý†lŽà
+‡~»ûåç_ïnߏ2¬rÞiüÓÝí‡_Ãè÷¹›®*”¨¤ø•–á›)x¥à§7—ã_ä¸.*˙Ks>6ã¶X¥™¶8xì›någ»fÓ´_Æa]1¥ÓzM?ÎÊaÚégåp4åòÏ»¯ø{nmZì¡;<¡e4Såß”ª°o1a}×íQ
   Æ<~gù‚›‘6Íßt£-nk€‹n`†0~;àa¬<ïeO´†¦ÝoǓƒ}µrvr–›œ<l5Î"]ŘI³
í¦ÚCü‹­„ÓŠ~óùØôãv¤®
address@hidden@ÔX–6ñ.®7i¹—Çv3.ç+c裃<ü֋4Ôƀa•_¦±ýMŒÚ8ځ?Ä8>ÂMæóþ…
?g†’¦ÙRd‹dÚhT°“’ó°â¶HvÚÔÏõ}»kt‚b.mk
Wp¥¦ƒ¯Ï°k£s˳»i&|‰C^KÊ«zç‘<ï3™HkÊTô;„¦"¿¿XÍä’C\¹45F8³P„?wqnÈ£Ó
_ÚmLmH'ãí,ÔÀSª²F§žë¾Æϳ¯º­ÎòÛ[sF{«{t-ÔԙÉ$D™¬î>Ÿš”HZЁ‡˜é܄‡L‡8
Ãêt1/jEÅð-iSçÓÈUÞç4ÚàI óL»¨7›æ9‚ܾ=ž“ü¬Ù”ƒ‹Í®B¢ˆ"Áu%¬7”·)œLƉ³…
CiÊmºöÛ&UKAð7<Ö¢É£Ó9i¬u„seuþ]”áa÷ÊP0¶OÏ»£A…
Œ¡‰,ÜÓaeˆÒ313ÿŸ†$æ^ƒ$Ìoé(„¢)|处­Ý±ú˜Ù¢šõöaåc&.*Wð¡Õ:mt{Àba=%á½´ÏýaÀe
YúdQA{G»¬cE„†Í\TPtåÄ
+Š°Œ¾¦:êÝ?¡2gÔ
Ãeît©€ÁHý¿pú;4øgŽ1…Ór¡à5N¨0%x¹3Ûß*²ÿ¦é{,ß¼rŒ
ÿ¸–™%X®ï—þD£¨ê\¥™_Úh! ¦ˆ%Q¥žPא~9YIi-ѯ_X”…Ä+’»ü’cYv   
address@hidden|—!¡x™²²`í%+3V¶¨žOx½¨b§[ÛǗXÞ
à¡å®Ý?Ïé"c
Þ¥ù?À{‰3U*:gV%ÉÇ¿¿ÇՉK%LðZÙ´x»        Ϥógðè
‡kZ‘V=¬UmóJ±òêæ±SóŒ¬X€ï€»Tè}š¾Ìã
É39o²rêB„â™ä¼ª
+…Y¨B Ä™ÀœN,jßÀéór9ÿBÜf['O酈,×{ÅS 
xÍS#`Ljh«Ôî|&éñÛ÷¸gÀ9¡+êüP÷cp‚öfžÈÇíOXˁЦÈÞ/Ž<²sx?§°A›dü¿)°"“29ÅséC8),q9¤##³Ú‹dófwØêÊë
 „…PtdŽ5!©Œe“ëlŸæ›f3Ä ÆmH94‰ïJ¹ÒQ9’¼nóY?u‡c<address@hidden WÐýŠsê
hCBRYÎY….d6õÄ{ö”÷/ý¦:N¦ÎÛ0w¯ùµŠ‘…ÜV p!ÒndÌ;>address@hidden 
„EÊH%´è†!Ÿyb»«ïw
r'address@hidden
+xÏ&)—fat²¯/
®xš¾M=•Ñ%VO;gÁ³ï0æ¼Ê–Ü'DŽs‹»çľ˜ôíނ⯟¹t¸'wõ‡ãn›>6¢´ã˜Úԛ¹?VT‚br¯½’•o„v¡1|
 
ƒ¼›Ö…„ÑD#ÀôÒ®vC7ȸ³NC;J.Îø×8d¹', ¦Á”O¶ÉZZ¹ôÛ¨+ƒœg¶d
R'ff¾ÐÈ0¹óÚ<!A´ä”!)UÉÅΰ•ÒÎǘDÑu)n±ß¡yNôԛ>S 
”>ð¥OÓl›¸PºLèʎ)ä“'çIÂ$Ċro:C½Ý6I¿øŒÂ1͂€±jÖ;î\Dþ=€þÁjlÕRqFvÆ}vrÓõJ°¤õ[±ý„TÎQLMQl-צŒv
 
yˆµÆBÀ®*TÂñ‚!ǜ¹àÐpIO¯”S¯Ð[QMü·*K‰ÎA¢.è\T…±¦AT;ãçõ«˜ó,_   
H.É°ÄW‚*—çVÊ|ŏj]’ a%MèžEšt™µèkí)[³®ÊU§”“DyzÑH
´lÒ^<ϯ?˯×ôåê”}ýÔ`>8î¨õ±Ò¸þ/wDŒ_˜9㏂}Ò>húÐEöä#œ#ÊÕÀÌ[/­B²ê™<«ð7<ú{¼ûêʧïñè6_­­]’$9ÉÕ˜b×7€§)~ªÝN^¸=ÕÛÄ´#ø;Ñ3öP—=ãò6ðkªõœz/{LS°&£Ò
…®
address@hidden&ˆ
òM$ÆH$iÒ¾°U&5çÄ}šŒLpb*Þrÿs¦ï‰ˆ›f˜´!­³ËJ0éÙàþʶzõž«ÛyÁ\J¨öƯKïrƒ|
pÛosè*66·æÙÌý¢íQpÞÜ7—ÚÃ_R•R–Í҈:ÂÓÉá”ùJ(_ËdêzÌu÷]cóûìõ—¡pþ¡'Ì]8KOC<address@hidden
      Ê߸R¹¬(Íá¹¥~¶Ê×ÙD(• By€­%8>_́½úw˜+ÞÚ4E"y°at&y–ÉË*³      ÍE0…
xsòç¤b3    ;%ÝSGSs/ˆÂ§û€ñ”ñb&mkcí¶IûÎOòù&â!.¬ÜQö€ÀoR%²VÂ
©fdÎóå<r擛ÚŽ]Ÿä4c”™õ}؇&"$Œ$ì7ÝqÓÖ;address@hidden
+A?Ñ«jÿ„g:tiÇ;|$VráŬ“¬“Jä†öÃÓd­+ƒ¼Œ¢$      C2遅¼¼É=Ub€       
©;
+ÎØ´¨•[}¿V÷Êõ-ºsÖxÓ%Rż!økŸÒ½T†Ö‚cuVÈÌkøؓë6l¢#ÓèÇt©É„=»Y"address@hidden
+.?     ÈjDÌYíÓO‚(Oi*Õ&address@hidden
+¯Òσèíq%&2­ÒËTmÝªh‹•D…à›ƒ^¡4󋳠¨´?€ú/¿ /iW'‹Oß$Ñ
š™B1n˜óI¢¬4!N5‘s¨\ÒêÌ&0ršZ™¿O(ˆ1YE­Àƅ
QÑ>=㶤WÄ&ú¡é~ÿëºÞæ>4&ìToÛKõö¹ˆ°ÕüˆáÁ]ÞuÖnÅçPÖxn¶Š¼ ÅÀߥ
}¡° V±Q“"ýö›¾ÐùUÕo=Ջñ¾Ùæ, ¯V„|¯Sk›Ÿ²Ñ…
?÷ù¿ïh‘ŸÒb¦;E$¿äKiá¬[*da.ºœ/’Lè»g+ô}:g*ºá5iVÝ÷ýÐA™™ì‚4˜Š¼Ã=®Éó5áÍfx‡1ëòý1•!‰>lÛošƒ”½tl–gV¥Ä¦kJ
™­ÞP<<«áã˵ÊÆ°ø”!èú
b6äsc§ŽŽgR«Aå3VÐü4¤ˆY•±#}M¬¡‰‡Z•{M¹ùB&¯öºULg«„‹}ÈCë|”û¥í›ÑCJ—#™fp¹S9:øžÑ
ÎÀò®Ãeºž”÷ÀÒÚý§qñÐ+Yt{
+P™€½àö¯Y¯¬¾+9éú`¼¤ŽÏ…íßÐÄ
+4¶÷é+ÒàÌ%Ò²Ç:>A
lQ܋§—?'Kâ'ĝÌâ'æ²¨õ·á±ßóÝÚÌçñKhfêù»üÆü       ˉT4.¼›¦â$ 
³‚íë6ÝOI§Ï‘ 
v1²cؓMº'ªûd©\^?NBòœ8/æ⸼bX¹¿Øà5ihڒSñÖLe™/î¤:°ï«»¾\€¬^vQ¢CFëñÿ(.È
+¼€×ôª+5c¹ýùîúWá¿ÿëhÔàendstream
+endobj
+309 0 obj
+3466
+endobj
+312 0 obj
+<</Length 313 0 R/Filter /FlateDecode>>
+stream
+xœ•ZKsÛF¾+ù¼m¶JDæý8fcïFµÎÆkk«v     
KX“„B€–ýïӃ™î€¥T®ŒÀ™~~ýuÏü¾b_±ð_úw³¿úýê÷×ðŸÍ~õ·Û«?p·ò•7¨Õí§«ø¾â†UÆ­¬43«ÛýÕZýõöÿ𽲓ﯜð›ÛíÕ?ÿòÓûÛ·‡ZVÊr“þ`ª°Æ5¬1—Öny
…ª÷:-¾ÿíãÍòT•â’ãòÛû×Oïnnÿ¥€¿R¬…
ÿóvµVǟ|húÓnˆ_OuT¢’ÂáÖ·Í(«¤Ó6-nvmsEö•1Z¥å´œ˜ÀVÌjíÑK'r^1)q—‡º·¶•-T‡%W 
  Ë9ZóÐ<-HV?Öwí®E‘¶RÌ¡A¿Å-¤g•êñCÁ+eÈíx>ȧ•E¹ëÓðU 2Ç=‡vSÍv<L€B¸þÔãÇìc
×$͘prªÆZ
+S      Ø`
+†õæ»f3´_Æ­C°¡yš¨†‘RbTœúæ˜Nc÷­[2GóÜ»Óc҂K”ëæM? 
Ð'¹Ðñ¼’ŠÌ}I*HK‡s6tzæDWYFNì=Ds…ÄPä´Œ«8#    ^°€ÕRÚ¹xåÕÌ`YVa³
à4[Ø I À´iñӱۏ_ÊJ35•â\M‚ØV\‘ì!^–BÒY0æ_aNG’9c<‡Ô׆ã©¢ã~ü
+©mçcÂsp¥òï¬R¥7§þøåtÜ&õ¸R¸owHîôš¡}­7ˆP†cö<address@hidden@%·íwÍ1%”­ǃF=!m¥&w?»¡K›ºìÝM·»N¶áqõ額’H<e¦’Z%Å$wRáAûîؤ4RÜ:gÿ¸k¾èÒ¦)¼FœòÓm×¹Š”¯}%µOûå´;address@hidden(õx¸‡¿ãRUÜ{9Ë;&3/úf\TÚëCòŒg
+ÿÐ
iQ2ƒ»›zÛî¾%œ’–’ô.
+å¹S¼
+BŸ+Æs"ôiW†5xFU°8F9æ{>º¯1å,Mq>address@hidden(öLNê`(©9•öMß×÷MªA†Ì€öZÙ”pfÁ¬²4«£E^S÷è
  Â{<§Ý6x íÛï›m‚&¨ipœTFD.b“`“„Q‰þˆQzàDóþØ%CqEcº¢¢œ”úµ>€öQ
ð¯ô˜R’)¯¹Í|Hš2Wæ¨1Ä•?÷Í"ªËʊW¢:ˆM¨%‰
õâŒà ¢(p&„ÿ9´_“õá2‹”jå8š)@‡´œäÚǐ›zKÔ8
.«$žÖ’¼Â:?‹é€­s‚Šˆ†¦ˆî¿õC³¯’[£Ïo†¤™äDÞÚݎ*µ‡e,Õõ®ïÄXÒ£îûö¹˜Ó\—¹P>sÄ÷7o-°,Î.8ˌ¥àŽ
 +£É2ˆ”>;&e*ìèø9ŒxäSÌ!¯3L'VÐmîCB
+)address@hidden(r[_ØLδ·q„š°†pJ7¥º…T]Ä€ŽiñtHxmŽ 
PÈv3¾>ÂYƉiMûëDç¬1DØSuåÑßE©b¨Žæ—¡$S8m÷í¡í‡c=tÑ$&address@hidden)õîŒíR
+a
+ãĄ];V ´h:•  
\€Gg^†G€dóJx´‘LB®é³ºj=ž‡;|i<eå~,ãƊAl0¢t/6‰˜4Ê[4μÜ,ˆõ'ìQd!¥€;.eÈk÷MÊAh‘W!ÝnKäÕ<±
 'œ£ú¤iŸºã¾ÚH›t address@hidden:€ªç¹}
+       ›
+7vÖ¬A¾*±¯…h…³¥$goRÛ¢Ê"6
9Êsâ>>Ó6        é*míyß|+>…
h6g?Ý´aÊó¹£'ÌLë«Œ€”C½÷íýñAb飁¡Êz1*HGCŸ£sÂZ1=³-8'Gì¡NGÂÀJí]½ÁAPɺDQ#â\²ÚP7•
+¶ÃmëX"%4(×÷Ç[°0nú˜uÂ¥n×n¾¥˜
+{6¢X°2°à.*Òë}¬Ué)¯¼Ò³‰Ä¹ãÕr=s¼5/:>¡g+ÈÈÐڏAè_`\C»éW<‘D&ÉRGlï.~¹¨wy[cgÌ´›PœÐš{Q
 øEF       x?o1, %ݱ¹‡ª
tóùWðlè¡Ý?rœ027‚gBðÅr´§Ž8E`QôàÒ¼pR1¬SâEž5þBCàԋ_%äaÞQ²§<t…
þù²_¢ö€£¤æåú
+Á«I“hâû8pƒdpbÖc—‡,"ó„l(¾hw-Ï=2Æ-“d¡e *’ê´æy˜ÛLØ[³<¦)ʅ
Ò¹åÀ9Ñ8ÀFh¢å3aÿÜÓ¯     
b€ëø8fK5·ËJà¶ja¸‚>7ˆo%M㒑`$‘ÅÎþuMüý    ¹Ù^'ºË\î;´2³Eý=âØxBý8ä
+Ö§ÙÙçW6
Ï%ꨭdE•bržg~ñ³0³ªÈµ!address@hidden,¤K0µ˜Ž±4˜ÊWº
+ªýt¦½Í¿åÓߊ¢)Àð(Jj„$D\&ÈK|r™G՛!Íp}ÎΖ©¸¶â,­‹“.¤ $V()“Ž2²õ0@       …
2m#gÒa/€Å€]7çÔb&address@hidden:2—;²:†¢*®žb¸T©ÂY©g×qސí„&¶?Ö}t´ŽÄÎO=rhp&>X:Œ,Q7„Fõ1Id]
¶Iy”WÙɇJ‰Ü³@>rU 
©ƒ;address@hidden"/Òý‘ȵ‰*½_jTœ™ÕœkÊQ²z½ÙtÇ-¢ÐN-Ïú(7é~Ï7§ñ6Ãpšnâx0+_(l›~slGoA+æ8Et4ÅØQgÔâ‹ÌT¬ÏYKø\Ë|(+`h¢j)W᯹{L³`ˆ6kiØùœDö¹³ý©'Š•û°Xë̆“ßÂUñuҌu
 ÝJÉâVª B¾èùx[ ãŒqX
ñE#w±¬°àŸ2Xçç÷ŽP$3‰Ò¦ÈYK0+‡[ÐÒ³º}ÿ/±ÙÖ%œ$,JH‚„vcÊbÃeÃdF¥á”‰p#˜œƒ¤XzÂìݝjò¹0Ä=¾´[
+Gžì»=ÎÛ
w¯µ9Ø‚‘p£a„É/AIFU#Ý%Âo]žL†ŽÐH.K€È^T¶™2ä;q¨z·ëZJuiŽ»”ÓK¨RTàE³ß%wçaźфçÓháË=OhÜÍ\KëIËÇ
…ŠÒ§   4ã´ZÊyÊ<#<@0 Œ\/ŋ‚Þ'address@hidden
+—–þ¥5?TìŽÉúÌÐ0ºùZ‡¹ÃˆRJTÆéóV¥øÒ(‚ÐÌGÑÀØåBTTyn_9–ò;åX*e±/®aüwêO¨£õˆÀ  
ÿ“á,ʚ%W‘·¥:address@hidden:2#Ù€MÚÁ…c÷„žjÖoÔЅ
„PgÓÛ6⃃ëùäl|address@hidden@l²Ë…æø6Õ¨…jŽû¶ïSùVªb̞%èëff“#¶(F¸­S1;Ý
½œ6(Ù·Çđ —ÂÃdNúü¥¡oôÍ3cPnÃ5ÜBËÊó졨ê A4Ù¨iùPŸä|ª5~EÌH¨™Ôòn›
©>“µ2¿Œé›Ý¸;5†²ùù‡  
„wjzbŸÈó|address@hidden@address@hidden)¶ùT§g}±‘¥w)ÏeiÆ?nOÝ'vàåó‡Å7
?c-’»öîX¿%“ê|Œ…?Ðzí9–—×¢ôÔ²_˜<JÅ;address@hidden ôV…
ýw'¼ÞöžîV)Éx%ò[Ÿæ+ô.!‹ûåq‚Äk—ㄏeÙvùŽé¡>lwyV”s
address@hidden/<”Ÿc¦Hòäó÷å¡xYèm¡¥Üzþ:q:ð\®h†·Sê÷ê—tüáa.Ë$qéçýùÏé_3i™foSë}³ÆM•
nâs¡d&µx=½˜ÃãôîëÙQêÂëÅW_ö=wI<SáííêßWá¿?xTº¼endstream
+endobj
+313 0 obj
+3505
+endobj
+316 0 obj
+<</Length 317 0 R/Filter /FlateDecode>>
+stream
+xœ­[ێܸ}7‚|à O»À´Â«H>n’ÍÆÈÞ²žò0@ ÷h<Š»¥^Ií±ÿ>E‘U¤.Ýc'Á>,@«y©:uêT‘óÛ
+ø
óÿÅÿ~{õÛ
ŸÆðûã͟î^ýñen\áJQª›»ÇWá>*'nŒ,VÞÜ_}U¢øúî߯„,¸â%|u÷ð꫟ñc\Ž™8ôӟ¿}óƏúߺÒÆá¾ùñ›i”ÜG¿ûö‡o¼óãü
…Û|'B¸BàµŸwc
+gçþ“d¶0ÚÞ쌖ӗwOuœ
ö}Ëm!•ÆmŸún¿5£`…ŽÇ¯†ºÿ0O¥P2ŽÖý4ÆàÈNDZ}ÕNƒe¡„ÂM·ÝYYâÊOÝáau…
±Í0†]s]¨Ò*\¾y×V‡Éæº`ºT´Ø©zÛš1š³Tô“O~ÈÂ8‰S7ãPo§iTÁÃo«aZ’ÒCû1W(£,ží<ÔӎÁ6¢¤MŒ]üµ(-Úë!Œ‰ÂpBC3f'lYhånv~nçìâÔBX4os<êc=ýL‚=šs¬Æ¦k£9—¸BƒU¥¦U¨ödOŽÛ{ºŽ+YÁ;seΓaÃÑü3hÙÓŸëB[òù؟‡iX€±_ùœ3:ýX
ï§i…—†QšöÝ4€Ø¼ãÔ`u^؅
Ñ_Bï9‰CSȗ`ZKKþ錰6ÖÐ>žš!ŽjeɒCÀc)address@hidden>PÉhCÝ>„`p£NÐ>ÐV)Öûz_7¢“€¶fÁ´¤œÂ±î1ŒÊ¥žŸÀ!6ÂèÑdá‹!¨"õÞ±ŒÉ`žú]76ÕXGå.;n[ûÍàà[?¶ä–ø©CJ
+»ëÆaì«Ó´`Ìr  address@hidden  »—’ö†Žff†&È":}öxîaÅà, 
+mu>"Œa
+íú1fnÉÒoñxVéùJV:¹®u˜ôR€|覜EÎ¥t0ÅÈGwÀ‰6üà›ÃÐÝFH       nÜË{ËçÒÞ 
q(öY)Ê9ÊF˜¢<ݬR”*Œ¢h¬?0;.ӌm¤{&    
U”ʬÏZ”Ê€Á¢+xæ¦}ìbÐDҞNCœA[F3ts–‹Ïˆ„é̚3.`œ¸crq^ÃÓZ, 
Ç4ˆ#ENjw†˜î‹Bóy\)€±\ӚH² …ç<©†âùi؂õèÇºj‡˜8K‘f5Rî ÚòZc²’Z¤r乡 
P¸¸¾Ú×qNHŠö²)ê1þ˜9‡K?û!]X#)‘×5’%„ž;ãÐaÜódÎ÷ѐ?ã¸Úù5‚2¥[ר-Í¥|HVéëê!✌ë½þKš¿}ì»cL\ɥě-÷sü=Ø5¡:€
        K:å
+g˜Ïâ
k?“3òL—2eY:<HµÿíÜôÑÌ;¡=ÍèyÛÈçDpT±Ee™Ó‰(¢ªÇ®±ÎJmWFÍòþöR[žÚÊäÛRâ,address@hidden
 E8
´ø²l    µ–óXÃü­‹¸L]™-úîoQ$'´Ì¤ùDt²dŒOÿökÛ|¼<'ÊÌÜÄ
¥[qC&óªÃ3š»T3b-¤…ÀÍ~B1gœ2ùgsô­X°2yÿù)°Ä:Ÿ1}'address@hidden
¾y5ãŧúÒ*xÉ0­V`өހâ®Ço¥´3”“§Hw5$ƒ C<LÕ5¢ú’B3…äI¡¥J 
LLé£&Óö¹LzîBLH[®Ô‡.–Iù>éC™j¿ÓFÒ†J‘"âaÖ¤ú·X߁»„ěîXÇD‘nfP›V”Ž”M-ý
 q|f&address@hidden'address@hidden
Õ»P–€Þ3‰m±è¹Ô-àq;£åhDZy§ÊIî{óú»¿¿þþûMkKæ³ýLccZð†h«?VÞV“¡íôPƒÖê¢oTªh#   
  ¢³«hñÊt£:‡|ÅçUØÆ?ìcoÂ'i™ú{¬Ú¡°éByŒ[MŽÀ 
+“u«Ã¡ˆ!ë4C¡ô›š<Gëj<„I–¶œ—æ;      ~/áëàñsA²šúX”Үʛ¹—ç?LJeÑõ©Ë؊ûH$…
¨àò
BíÁ`0ô"­Nm=<¢òͬr•Y›ŠgTÆç)Î÷‰8)ç.ê<gÈâÔ.Ÿ‰ä‚)·Iú?QIi>Õ䀎!4>$$0‚é¡y7‘5œjŒT¹R06o,åñfpT¯5±tgàÁäëþ1fܝôúĀ¹‡´Ûìã
    üžÂ,Òk™pÚEz–©cüŒÁæíáSà*&5†»süLIêXRÏѦ`8Vms:bÇDóB—KÑ
FwÉu‹šOÐ$š¾kõ`Þä·X¥h§)L?„QF:¢ê›
+RĀD*–
+z¾>sÐçñi3ÀH%ÃK€…
XöÉqƎAàN]ZÒ‘ÛጔƒúsÛ"%ßlÉÓ.¶ŽYJ±õ¸¿ÿ:r¹c7ÜP–§hë5Tž;Ïm!*ý́ˆ„’µ¨S/Ål
+GKÝ>address@hidden&yî›q¬Ûm{ˆBÚۃ)²‡üoíQ¬÷[Á: address@hidden&l 
5§fµî5ÂîN$çYâkjÜ{>c:¥Í ž}0è/3ùC×֑‚lIh=tHeÌ$š?>ÅO•›—>`>£í•¸ É2Ý8ü7ÀÓW?%®¦ 
˜rÄy·[ö-_¶, 
Áåèá8Íúa͚u¨"å:I§ý„¹Dy)‰ÉSž0‰‡ŠÔ«JÚå7‘qÁɁ·<„™5ó}›ìØÖS5èï4JBÔ)H±IQ
´‡4S8dp\¨9BꌨtWÀ²¯ 
G™]&üî{PBÈqÀþn^ë\ÙïÊ”ºXtåwRøòFää;öU;<Ö=öJ´öeþ²ý4³~5IáËN‰tï/¦e¦Š6•¯cL{SO“-´Še¤UêØRQ%•Ou;PóÊy
+õ"fMEuÞkÔ±,õì¿W¡§àŠ¬éßµmšQt¤³Ú¬M3µÔ†˜t˜r[‚à
+Iz<!®•†ÇúØõŸ¢ú.SwùÚªÓ
+
+jº„›Ts•šDÈò3†/‰õ÷[1ÖÖØ3ŠºvÉešœñ’G'K¥ˆþrmQÖ
+ßJÌ"1Sn;psF¨‰öc<T…‰J¡t       ñâÂI¸<U‘É%'&ß"œ
ùÙEåÆSµq‰Õ­ï\É볍u" ¹&address@hidden|‘|a›œØ®ñ       \ address@hidden
I{/âdÌö»ÓÔ¡ Hæ:U®dFWj¥8µèmNu9òoçñïcl
'Å*UÑûæw{ĹLÝcÂ9äÞ/À9€d笜ãÜLæ[ö}üÃ
I¤{ŸÄpS‡RIûÌM&ÆrkÊ-äê©+pÿõô½§û·g췘Ìú#šZ“H   $µÍï÷çÃì
+nåyŠÝ¨XN}u­anùBç¨Y)W(@dÚn‚‹·ªZ·’Dj%
õþ܇£L_s“#Ó³
+#»î»vô,ª ×K‚ÎõT˼®Ã‰þéÍëNÃÀM©áùþ]_‡87ldñnDúšjñN
address@hidden) <Ç *©+S½]kÑî¼î«aPø$*èÎ,6N0=™’Z×Êp–ùn
Q¨ˆ4µ:‡¬o–Ú)àØe
address@hidden<address@hidden<yUE×΅®ñUI‡¡®ƒƒÁk‚ øPµïê¾;±DZ\¶;(‘Je ñ¥÷ô‹ŸZl 
Mñ±ïÎáÂXC     ‘.Qš…w‰9ðvsê“ðAV¦†ÍF¯;B5
+ÎÒR†Â›ÐÖjÙÈV>ÈsPíª¹öÚ
'ímŒZÉXvÓÒFuitÞ!œ–§.UQÚ絫›:VïIŸ×áøÚ©ô2,{́Ÿ…
ƒ¿ڜß7D˜.ÜÍòb]H¶‘Œ&´Ö÷õiŒ‘È¥NB óî)ò¥–|}{–=éh»þ»}‚ÄÒDJþ
½Xûæç×(bé5^{²tí–GNºÓ=ÓUƒ”™çèŽ,{ôÜì;¹DÁÈÀªÓû‹p‡ú¥–Ê3$)v2IàÑ5¿-Åúš33Þw?þnÒ%ןs©whÞöUÜS€Â×ҌdQþч.̓Äéú7IÏHDó›7¡V­uÛê¦[¤›n|óâ›Ñõ⣀ûþ쌿'x›RÎÑ#•œJŸî±ˆäm‰ÍÿËõ¬6yˆžÔq»zR—¿ÃÀ¢kºÝ¢Ãý™¶.žH€:U×ûØ6ñOo`êh£¬A•1*O½Ï­
ýï”cÅ$u´¹N0&ØM;ÊÏxùnXºR>6ƒÝ  ÃÁA:s1jÑ©%ùLªÀÇiÈ 
“ý&¤]ëdð”ô¶­zKJ‡ëk€ÀþhZü.]$‡Híß{HÌlœLýÆõ¢ìf0^BŠÞÐóWlI5Í$|,%T¶Ô=Ø:`ëˆÙ3Ù&Èø^²ÍÒGfHuëÛjién?ñ“SK~òš›êSìQƒ

eš€žH9ßÜq—Qˆj#th—Û³§LÁjPÐ*4dÒOMÈa‹éª\ړ/ðôÈ%ù”¨[Ç9WhÛHÍõëÄ\á¦%Ðãkïjj€ûÔõÜDIï¥吭kñ~¤ý€TP&»Ú#ïo6ÞÝ*Ai•P/õ¤ßé¬sñ:Š•>address@hidden<o.™ñµ>œÔQãyëá5m$dºCFÎ}á„æâ‘›5á§?†
 ªG,ÕŸ×X›O[óG´õcëMXŽéR¬ì›Éº„p\ªËŸƒù4O9KfáŸs¥¶á蛄ñ;%address@hidden   
     %.:à’}ŒåՑT¸" ¦MBÂJP#¦Bi:CóPã…
º6/¡Æ‚ãI$ÞúNB²\ÚTú”ƒ6ý݁”—¤$kíûæ4v=Z*d+2K×ãžäâBÔK²þe‚Ê%~¬4cWÙ{U¼„ÂùóÍ§k±o>½û
 ¾¹—jç‰+bˆO˜…ø_ÒB”4M¿©}…_¦×:ÝÐ|ü×pªžÛtG8„N’š!¡/ õ¸”"If™µÌ2Áø‡º‘Ä…
¿Ü¤Ç8o
¸áIó?”Ù4žì¿=ìEÉ;{lOèßcPZ'UvYÈÚ¹j˶Kîk虂o5SÌ\•Bé}Í\+iTþ7¯í³Jì2˜mÆÉǪÇÇaV¤~gÜR›†ž|iEv½¿HOÓS‰-U!HÁîûÌß%R5Ðn{TJú«¸ÏóÞn1-gOšûõžC÷pJt´¾‰Õðzöp86,ý­&Íks5ÚB)¾ðÀøÒ)¦?˜(­œ?"ÍoäA;f·¹»µ/‹«œ»ðâû&þôÐueW„¯RAy¹*ô/7ÓâùŸ°XHÞDëUÿ5û«ª1H›oïnþñÊÿ÷’+¸åendstream
+endobj
+317 0 obj
+4431
+endobj
+323 0 obj
+<</Length 324 0 R/Filter /FlateDecode>>
+stream
+xœ[MoÜ8½û#Œ=ͶFü&™E`±³;ãÃ.‹Ò-ǚt«;’:ÿû-Šd%Ñmg1‡`dY$«^½zU,¹©+vSûÿâ¿»ã›/o¾Ü°ùYúgw¼ùùþÍO¿1{ã*§¹–7÷oÂ/°¦ëJÛ#tUë›ûã›”þñþx_šÅû’U–søûý›þöËÛÝ¿ûÍ¿¨D%
ÓñºòϘ‚gµÏîyçrYYæT|ø¯_ÿÿXÈJ2ÁÒãw¿ýþë?ßþãýýÃ.–»¾ãþϙ›;nàiøüc;´ó¶ª•L[lÂCØ
+¬š¶×ÆÓüÔU̘´hw<ÚcÛûŸÀ1äéý©™ºS?®—ñùéã85»C;Æ_J¸ø£Ç®ß·Cך$*%tÚÒô¶¤+É­ˆ‡ö2¶h+<̯֕’Î]ûýöÏnœârމV2Üüøyvǝà¼ÒRÜÜ1>ÿä×þðD.IŸ?̦#ŠÚ$ìšC´¢©éÏCÛìç³øwøòl*f+©Eòþ±é»óåÐLóÞ¯˜6ru
 S        ‹úÚ
Ó%,+`Û¬6éKíñ4ÌûàŒÚÐ
+ç3`¼-¸0"¡¬é÷ÑÝ`FC«FÀ(ð©NŸéÆ`+0¢©9ÚªñO]Åch§)ÚÄɵ¿x%ä«ê}ˆ0MiG’Õäïf^       
¼§$KÛlÆheS+j€µ¨˜Õéŏ³Á+£Oglƌ"½õ9¼{ÄènÏSt‹#·Œ§cû-YN±J
+üji¡)[—ž}ótåB·íñ$š­0a+VãâSwaddress@hidden 
address@hidden>address@hidden(:Ú}:ù§¸9`}—±H…
~躁3TÅk⌈0ˆß6žCp&erJÛ|Nà12½£ˆÒnØlaf—bŸ»Êª:address@hidden
ŸYÀÖÓ|L¬RóÕpéÇhfmzwIîP¹¬¸åihú±óyâρn¹h]ÜyÚÖû=ŧqõ–ý²¯íÛ]7Ɯ#ð²…
OÖÉ'éÙ±ÙÄè
+̇P,x¯9̟d2q¦;xâKû|J«©Ò³d€HYÀ”tCÔs8=ßà]ՈwŸš¢38ã        
|ߺé1d}!ó¬ï³—Fmÿlw%mߪmúÔmikœÚ†¨¨‘“v§óÖOáŠÕ|E5Dš²Ã¾»!Ɯ2H9¥×äćátŒ™—€`»Ë0~©£
™Î?`…'CkrX
+­‰.7ärZÉê#9»ðPW¯C-÷¸ÂMk iâ£x  
‚)(À&˜xÇÓáâÃç6X¸Ö4™óv‘Ÿ›(address@hidden"Ҙ­…
ÚR–ސƒÓ2#Æ!¦¿/address@hiddenaddress@hidden<]¦˜¸,JMþøäM
öAÜFã
+BÌS8¦r5î}ל›Ýˆ(ä-Ðå
5C×G,(‡$7¶Ãפ¾(‘µÃý)Çã6!½v·˜EÐ6!¦:5ÏÒ^ؘxAãxß®uÈV¶ÒaK0õ§èE6èۘÀ€ãîá4Dqf×Á»Œ¯¨à!75[Âùü¹‰$ð2¤kÐq®¾öÄ4œâ)¥E#EŽqàAdó¾Å)/½?g5MÍ>ÙøœÃaÌÒ7ˬòF»˜&Œ½Zú­Á.
ÒZ)BÁm‘Íe%ÊU6ÇïW‰ô
+î·PÊÝF‚U¬Üa,Õ%±ÂòÙF,A±Þ]¨EøK»®—DêMwQ3cqEë1g°œÑø¥á³Ô85n"•UjA‰«ß²Ò”}{i#*¥Y˯ǩ
 …nc0'Ò!Ú¯!˜¡¢ÃÜo?Ø=     g…
{Á«òõC‚ÑK#ÓHŒ˜$óT¦jT$Õk_8F/36Y/address@hidden>E3ÐßüAž      ¥0É| 
Š»X ‡Sè–ƒ+iÒ)û$Åÿ‡çH‡™r|~¬3aP’Ý}A‰ítú¿ÎÈS`÷ôî¥Çµ-VšÝ!±”º†­yAW”•Ÿ 
†-4¡
+PÂÖâI/I³       
ÚÖBÝeîAÈ£.7ˆLäºüïÁ»Z(“°ˆ¯PT—.%:ø€\­éëW\süÔQNT˜(ÏçC·›»I)D³’ë¢4{©ÚP(œÒÔ/’Ë5†PjøjcÝ6XÐsmøE'ö§>Uä`&¶ü]0t:address@hidden/6â/‡v|§ö]å
 ¨§D÷Kʬœ‹ôåB=T"«á6‚Es»nÄyFEsãfi’Db“[Ê
+Ò$Ô%Ñ/ØÎgV]©Â[s^Žuð£4bé! [n¡‹      å‹fõuèCÈî/address@hidden/Hb}:œuò
+¤ŠËH^k—Ê    
+UÂû)òs™à-¤ErJÊúZ
+ RKÄœJFj&J쨮$?© 馰8äÔ£¯Þy³ÛÅ^ÜüQMŠ`©û \ß¾-NãJS»EåKEà3‘ë{…H4Åt0\Æ    
`E _”¨&†1ê¤d"¬‰!'É-<³MzxVQóIŽÊ¥ df[ìfÝåe”«ÊqŒò€E¦
öeÞ~V-=5ëºZ0Œ†Rƒ¦P»òt©;3´!õA|he1ó§Ä_ì#ýÉ·´úóIÀdI`w
+à†€A)p*è•v€Ì÷5z¨–˜Û[4ÏëB‹ùß^‡–ZW}`åù$Ôh²];ŽÍÐÃCPy/Ù<¨f´Gz’º¾Ú,gO
¸SX÷íìëeJ.ÅoA2Îk,ûßúXÃ"õ*ålÃ[e‰¹IàryýùRÌs‡1ñyÇ,Xòí5|ËÿUf†ÑÕ`0 
Ԑ_‹I(4SG^
+³j9*ÆPðö³¯fØ­GG.ɅO–Ë­¦ëãVíùÔDŽl騞.|uqz!PŸœ·F»X‘ûÚbgåÜ|
+ ¼B9i]ŽW:žÖx¼cìÐCµ&I:¥ ±Ú®ú&…9“¯+‘wIƒ,$TIÜ<address@hidden 
+ùn;åtv©Ê5Jâ¯Ý>address@hidden:›õŠ4­•é†: 
ßmZ+õø¤oüá{©Ã¨Hãfìˆ-Þ>:ÁS°D'çDââ¾4¼ó5]ø     -m]Q»°_?¥G!j¼&Çô9]´˜;ȅ
öC;»1ÝIYÕµÙÞwgñÈí·t4Yì[²rúœÒŽf×Ò'Uµ k—{‹žÎǘ 
¬KŽÀɾ€³œ¦-Ý=R˜Iõº0›{ëL¿‡ÅÌaï=fnî`1Á¿Û°a•]Æ?«z“™Aúâ`
Ï¡¶¡+͉je](9y%~àk­ˆ¡¹Ù%É[ºa˜}|cÅ'>MŠFšM7pÉëÅT¿ïR}"n¶Tm?Çß©Ù+5êÂBò=óàL 
NH$)ÊRáô1ÆAVDÿÑî¦*r–¡~Á‡T°z†¢ÖtÒt‚áÅx3Ž—cìîsË!E\6"        
ÍÅ[¼uûBýŒ§Kh8¹s½)9ý¼F
address@hidden:gs#ò=¼ŸRwNB¦É”¼;7ó­WÊrÕј
+F ”èxM’$†´6T#eYmÑ|address@hidden/eæDeƒ¾åDÕGæ Z 
T7}6à¤L$ôš‰˜Ù-ÃeÅ곁¼éDÕHO/jcÁÚ8)
+jVS’dt÷mè¢ò
jU]°ì>9«~ d!—˜…䞯|address@hidden'j3
+–<í9ÎVzÖ¤SÔ/address@hidden;ŠC?
+€—ØEq3û-BܘuÂJÂPfh¿\p`ÃyµŒQv8⼧’˜útúÔ&}äaVNXíùN8Ê«\
address@hidden&5M¢|†˜c§B¹_ìd|oÈE¬BÜ×ZåXU×(JW”®»ÔïU
+CqÙ0nÝ°ÙÐQ˜P      
4ZfG»&address@hidden>PdRšKA뛝#þmÈï4æ§pÒ[ñ¡¹BýÁj±ã“›† x ÚÒÌ&¸¿¤ 
;o‡$¾ÇóR<Ïjó$sÏë×VQKúdâuô       
(ÁÀ{¾®XjÏïm²Ä—äËÝÉ÷Ø#&ÁIL†³_&ìٞ®s*Ԇþê+ß÷éò۹͓¿|Ăy܏?ÐÌV˜·Â 
Ã׋pòwÖ§:Æ7Á*œã¨§·Jjñl†D«±Y ÖÇБœÚœ‹M0‹›H
?ƒê*
z§FC÷©#à/˜Ði¢ÛOÍHªõ¯ÛV‘44ÏgUóµˆrٽΗã9Iu×ôc1ÚÂ2~œ¶4g”
ŠÌ      â#     ;Þ,Êæáh®„#ø¡~V4p[“ï^É¥Ç4õ›ã¸ãoÝU“  
i¸]Ð-5Þ5û¦;ŠeÒ‚zýÅā¥ƒ%äíe¥‰ÉÇöpŽ`f®P¹iàüp·)¨Â*ê'ý1Œ™*Í!fzì%2W¥‰·¬S[
        8ÙäAÌHRÐ,Ž’h^ ¹l•Eti…Ñ#tîõbI¸ºp¿     ÂLö' M½¦ `›Ô˜å HQ†ƒÑ}n ‘Ä 
~dþ»•Û¸ ¢nÜÇKê.X#IDàÄ8§âû±‰ç¾:address@hidden"ðÆ\ò8œúÓe
—Lþf–#ãÔ²pÔx"ÅQ“èm¨Y/–š¢ÏŽŽÎ“~¨jH«ú?ˆA­Jwñ¾ï„o‡Qv°·õC¼ËnEÔÖmQ[#ƒ„±£ 
èVº‘,ß±º6¥­Q.â{wóï7þ¿ÿ1-1§endstream
+endobj
+324 0 obj
+4018
+endobj
+327 0 obj
+<</Length 328 0 R/Filter /FlateDecode>>
+stream
+xœµZKoÜȾþºÅ44ûÝ}t6B²‡Ýl¼
+ƒ/ԈÒ0žjIŽï¯Oõ£ªùš‘làƒVw³_U}U=¿]—».ý¿ôÿöpõÛÕo×,¬áÛÃõŸï®>~–æÚNs-¯ï¯â›táøµº(õõÝáê½.xñáîßW\L2
»î®ÞÿòÙ¯1Q¸Ò¤¥¿ÿpûë¯~՟uÚ¦åŸ>ýü)¬²‚ÎÓê_oºýùίüÌìXÎ]Áñ°2~ËFpVHc¯7ÜÀÆð„b¼0¬ÄÝw»:HZš+k»oêcØë
+­•L˃_2…`Jáñm÷ÙBj‹Ã.žæÜ«Šê÷õñ!¯²´Ú
address@hidden(ñC§xiYgñøНú¡7Y(!Þp|l»C54m8¥dÁœ#QÚ¤2çÚdñÂ"hb­H‹Çúei‡¡ê¿FGªÂ6³ÙF”`bÅ®7ŒÏî`rrGXeàaŽj?µÁ˜LýÆÍ8•$Ø9_ü©OhRŠì6캺z
 ä¼øÇ¿$smM]{Hõ(šK`²iÞíëþ;Ø>l—ª’Ðóåý³_t…
r?Öö}s¿ÿ¤»«¿øܵ$†B·~k¢S7Ü©‚»Ñš÷Á›7       
wÚBº2»4{Íb_>Ü$“GT”°UI—µbL:üÔ©OH²Bâ•_Q#U(K1ý‚€tñ0|Ù5Û¥”»¨£5Ž›5¯jE^m†%¥Qø¡~מö´7‡ä¾–„UÉåˀYUf#À—°ÂÚ9œ9#8¿4û}ʆ¡,DŽq!5‰âpPÀ˜1š>ÙB”ä†yd°=Eöi?4þo߂N®°%ý©Žèn‚
 ÚÔ7I&    ,address@hidden BÔÑù[6£µ:Qº 
PŽšmP<ˆ,ÁÇ>address@hidden"åƒlBÔ‚Oäv«
ªCÙÆ»}–m‚™ŒÑc˜QÎIA«­FܟYBò‰,`¡¸Zz‡‘wªí¶~R(ðRÓzÚEÛQJ]¨Ï 
þ™©áveɎ‡êkZ²D‹E!¯CÝÂ}Ÿ     e”=£À¢¢ÔN••$‹¶i#ä­Q9ɤºL
+hMèsëÕÿ˜ê[©Õ,$4¤ãyH„<¹‰²f€ÃP6*ÿàÉ\þ«H)¤`¸r¨û¾z
+Hë&GjÌ¡ Ô#¦dk$•”m´5„>q„µ³Còdò]r“aùh8     
÷;(X³beÂB܌ܦ¤½hÇ6fgŸ›\‰:ÿ´7£%ì&p+9«I‡ªtªëÖ{’ÈîýP
uAY§Äþ-*Ê/ˆH–“&¥k“—¹ 
)©ð¤*n”#‚ZÇǍ(äC{¬)=vál¼©Ô’8dŸ$”BZRQ<9—*ÄÊÞ(b=ÔÝ¡9"address@hidden"í‹ñ’µ¸%0€•f`P€qß,
\—ì,address@hidden(“Ê-eÏÎÀñÀ÷(ƒÈü0ù
+•^áên‘‹"=ûÏèɗlÆ
Æ짘hPðY;Ã\ng†]5¤$¥,iqh1M§‚o’l7Q;address@hidden(´ 
Ó;address@hidden>ƒ÷’G+VÒwWå>Ÿ]¡ðŽB£¯»oˆ]2xÝ¥JÎñ>ö}¨NE'j 
˜-/i^EA™ÊÅ{ÛV],‡Ü[ÞÍ(address@hidden"7Ø
+­¤òVÝvÍ3q,`—º$Ãó†ÃÀÃp/£ŽZ0æ2èGDó©>Ö]šZX'k<ÔU‘2¢Í‘:address@hidden
+$-8"@–òÏCýœjP¦¬5Q™¼¯Â,˜Í¿OäNB<RטòAè«æäPÕv8Em½órä7ÞI)address@hidden>address@hidden>ÐÓ
address@hidden|ª²ÑÐ\K(¸OM>0¥Aí~ß.9ßKs|J87#Ï.šÆ(¤1t†8NÕ÷iîáõdaä4|™.ü•o¦n2%Îä
+×rL1úÈsÕ%*   8f™´EBÅF#£/xA˜“R'SHíÀ7¤"€7Ǥ¬bv.Çbý©AšÉ˜È,¾¯±,=ÉÝ×í·t/ 
1WwX³¡rÕ$ÉÀ™`n=ñWhÁ‰y¬DÍ¡Ú&IUIÄr×$Îã{lª5/Ñ`Ð(ŽÚî!¦Rf¡ŠCùÊ©”adÈÉ`rÂñÕS4Ìñ
R—ŽsOV6 ¬”“šÞu©k«4BjO]Z5RŠóêL#hx€Yºáзk‚ûËséºY»Ïÿë¿=ï£R‹?HŠ^?Ÿ<¬ 
¨¤Ú²°Êßà_¨ÒO]uH¹Ó2‚Ò®®b› |çH¼gßnÏç<ǀ~‰,øHÐ7¿×«_7>ú¯{è      
!ž3cºµžû˜Ì5Q)ȓ2—ÌF}J«’“¼©§†rbÝ2˘        
3"ácô­¨p‘Ø.´[x`U‹C]Sð·0n/ÊÑ`†6ïê=v‰ÐßAqá3e¹—±Ä½Þ\Àï›c³#Ô\î(猖0÷H%Aò
z¬«áóÁAûê©_…Šßçǘ¨$A¹Î#†ûfØ ™¼S,ñÖæøà§l19I^«¢ÁÑùá¬vçálrôgå
+dFs¾×H‚ô/(çH‚„<#      
áuDæ¬ûT¡Èä]ôIi)ü䏏DÌ!"&ÝÓÚËÈÅ÷’E0’%Ï}óëÍYùn¨€ª%SV£g¶ƒ+ž‘áòìpb4¡€Òœ©Ôk5ÙåšÛãÆ<¦N%q‰§OÇMŠÀ`™'w¬cåÖ3<0êF1x¶}{¡ÏS&g/O˜“-
 [Æ;VS}rœ'>†¸ïÙ&>E+ô`à?`},DSÆO$!¨v”˜¿“‰h~¹Å÷‡ÐÝñ<address@hidden)'G¯#S.ò+= 
\ é<ÂX½!ã¼´ÝPiôØ2YºÅ×-$W'4%;ý?|\‚S”iÜV8(†žÉ\ÈAó‰ó¢‚ÂñÑkÆøQɺåS¡ÍO…
TŽŒœç¸…¦“ ÍšÎ征$Í×_4p¬à{]Iz×ÝM’Ps»¬ñZ»åìh$Ò:sاBé$
/Bó?Ên¡ÂòÉëµ›(ÇÐÀ_8+fzs™Î.8¨)Ãò¢4#þ”€ê‡œ¶VX÷Ô=¶‘ŒÌ»JµN}uûwƒÙ[„UI½ïùw—é
 ÷¹k¾5ûú       ¹FûG JÛ¹       ŒÊü Ù÷ø€*„]dsÈþ™t 
áð?vȁœª¥ïb©Z¶Ç8"¿)3Á<S/£>jÔO7ô¤ìœ¼ù‡©¥%9ø
wNò™¥²3âšVæû—‡¹`.@&.áô‚jú´÷Ïþ¦Di­AQnbê7^gޅWºn2c(ØË×݉õÀ´µt™žu      
¤<ÏöÚ¾J¸ìðæØMšbAIµò•1hOà§Ùc…¯µ£Ÿ¬¼B´qi<I€¬8t)address@hidden
+endobj
+328 0 obj
+2845
+endobj
+331 0 obj
+<</Length 332 0 R/Filter /FlateDecode>>
+stream
+xœ­ZێÛF}Ÿ
öæ-0C³ïÝûæ$Þµç²ÉØüBK´Åµ$*$5öì×o5»»ª)r4Ê&˜‡Zd_ªN:UÍ߮˂]—þ/þ_í®~»ú획céßjwýíÝÕó_˜½v
…Ó\Ëë»WávÍtYh{m„.J}}·»z¦ì7wÿç¥™</Ya9‡wîÖWϾ{õâ绗¿ø•(¤a:þ 
?ÆŒ•6ŽÝ½zé¹,,s*þüÓ¯¯ÿ凅,$,
¿üåן~|ñæõÝ¿Ã.¦»¾åÊ֘ë[n`t|ÅáI!'ûå…a¸…Ãæ¡ßÕ;ÿ ?Ãý®Úýеۅ
ªÃ¸é²°ª4qðõ÷‹›b%œA«ë[fŠR†3oêôºVéõaÓÕÕz<4¬å„›LËÀ>ÚrÜñ8VÆÙ´§‡¾YUã^áôÚºô,œ¬íÆyma¥I§îëî~œÅÂÈ8Xw7q5Íqµj?n‹¹BkGÛ­ãÛª´"n[?f‹R”†lµ^·\²3‡j?Œc
–vnºÊÌ“U3ÿÍ!ayQ–Þú`T›¼7R$k$?3[(ËùyćI´H£w›¦£
+Ð=ÅlÍYœvUí㬬ÄÁ÷cdF9ž†ÆS¡”ÉÀǾ^ÏWÚh$p|zrWí«ã§‚«éÂå¶z9¼\F'ä 
£˜Ìlr+JØoéÀà<üPõŸFÞú ã›,Ŧû#±ÙU7óÑ\“…
rÕìën´=/¸à'Ž»,˜NÆn½Uù$˜YÁ9ó2ÆpÜÒI~‚[8z8Fˆ*„ÄùÐvqÐÉS/address@hidden)e2ͺ¾I8a\<u€fÿ‰YÙïƒ
ÉÍ6¼«†¦Ý+Ür­ÀH:ÆEU†&"ÒÁŒ2÷m`(QÒq%b(cq°…¹»ˆ`¸à€m¸zÂ6EŠ_²
Æ¿€½Qü?éò’¡ËÆ܋a|8ÄT¨¬M§$Àp×hŸD³Dó üàBQø¡}ÐÓªõº«û>2Fi‘      úCµJÁã
ÞêSfžNìƒ=ƒe`íqè›uacéÅóV«áðàý“ðе»j7"B‚74²!•ˆbcó4ß
+p%MyÜ'n47bê!^8òPœ”—žz.c
+7Oül,ñs8Ѹ
+¦ú0DÁ1EJ×Í +âilSõ)­[•ö“%H͘L"ÁJ¥^
+[”pΞØÕsUöÕv–)2}åÍÐGkˆ®äýÑkˆKCŸ÷‘ßEÅ<„¡˜ÔÄ•½uÝCfˆ–ñi
€*u)æö`Ä#gû&Ê5Nr
´Õ˜ »zµ­š]­ØYŠ¾o:D;gcNÊÂŒ¤VZg¹šŒGa ÉrOj`ÖE
 -j€„<´¤r‡z0<àju<4u€R…Çi&`í,™ðݳÚ®Ž׌hîs9gWï¾      
ÉJ𒐚ÉZƒ)œúVÏå
F‹¬gJ´ëÛ}ó%œ-M:Í÷í®
+D«=M#¤~m1a¡¸Ÿ‚)Ls~Š
4‘lQ‡ ˜k
+íá&Ǫ%Xåõ>F‹ËSlÜ…PyuìÖI·q•¶Ó¦(
+ƒí‡j_ñ¾¹‰ë®3þí(è´üçpD§¾]aLkc1…
2òÚÇmû¹Û"2ïB\2ãŒ¡·Ñº%T*qõR[ÒBÕ9(EC\H ?Òà=$¤`:àd¯è"OF(Ü
+î$1¾ÖˆÀTªi}
address@hidden
¨‹ø     FúÇ£Æx+CŠ×æY_OÖg–Îß&­ address@hidden£•
ìžÒÄç&address@hidden|XÆTØ3¨«ãy€Gʼn ò`0öDH€'address@hidden`„Ôyƒä„¸[’«
+S,± 
¹®ÐEV]sÂOÎ:3]ßC^º‰lËȈ¾3ð7dw›µ!ª÷Í6p±0°6Z.æBk(>>ý¢Ÿ†‚°y>Ï¢jó§DCäv†¬z.ìýshÓ}]¯ûHƒ–—'ÑådIÑ°ZՇ!ºJKÍN-ل¸‚
+Q3E—/        ]]µï›¡ˆ–·ˈ·=
address@hidden)¥ã~.
+†îØÇG݂Âý×ô7˜¢iªöø1$`N'Tz|±f6@   ÑÔGd:ªz«p-Ҍ—‰ijšgÈۀm€`“öÐ9Ø1oV
Êã«aãûCHâ=é”d†n!2Z¼ž—(œc¼$ªõD¤—\’!–wQnþ‘%Aý¼"…þY¢Øû°W©…Æó§¾ 
£vDb(*²$4á Ø?/Sú^Èi¦œJõs™Ò÷­š™9ëˑ™UyRÈ-ôê´hžK²äOµI·‘7w‘zwl9±q1ﴍÊ
ë‹}„VgÕ_ šÜGUş1T×,UðØ®ÐÛžu#7€ÄÈBÖµ$Ò7í6UŸZ# 
ÞÿRsöàÐaëj¨¢%¸2Y—ìÿ§h(address@hidden@!¬‘¿‚¢jg_FõF}}²¨vÔtlÛ$Càäæ       
¸dpÃjÞë\”i$7æÀÅP~ˆˆäʞœ°2˚ÒmJ¿ÊêS¡Þ5Ð€½”0¼‰H!‡ªé’;UÔ$üOc¶’n<‚ 
qèªÕЬB³*Jn‘$Ú}ÊÝYëÿ|d©ä7  
o£ßb¹‘¥LÚÁ&øC1Ç3$t¹3G´1ß·A_ÿºJu¶ñ©â”Z³®Ða™oÅdÌiókòè„]ç›ÄÀí>-ñ‰Ù…
J֝Z:F÷)hŒQ\1qfAÒäþ
+Så0´P|C¶Ä"Û6†J§Ô€ÅœÅŨ/à³¾Bxƾ€PXAü¾üæ §”ë
+ˆ$çGo®bëÍ+…¨û¦Š|àd¦b6Ðt[ðÕ¶îúÛXP1
+¬¡ÝÕ1ǛÓî*YžLãvnZE2ç|¢æTÒ'3€n4îR3” 
3Ì`ápâ8&©ËM¥YÀ$‹ÙçØS‚†t'•<©çâ:÷p³ßÔ]3TûU¸OõªdžŽþ&҂R²­%!Y©¼Ø,Ä)Ú͇`*Hýh•
…$õՇ¬5»€Ma‹/ïêúÃèB…›m,.e³îßXqÞÇ,Çérm!±ŒÉz[Q]Lݵ,·/^ð      Œ`¥ó
}RáÍÄ8Âû«®"©ÈّUýž˜À;
+~°¼£+ÇP€ƒõ˜Ã9RÓÄwÊqp…ü—„t•ˆºfç2WX‰a¦2
+3Uêbû6:Fþù~›Ž§úméã
'mz2Ãlz®kwsƒ‚ù÷(address@hidden        Ž”/.ÓÔ»d>ë¨6$£Ð.Ôüyx€€…°µ§NîTµO[ýû…
œ.ÊÆ^§²866aJÉèZaÝtõ*d HøĊ01+M<¿¢RhNæ¢"µAØOÛïàY¨1„.q³"§k>np”’º
+yë)dfEߌêLA–n~Jß&ãÍO¶ 
Ê"><3k’N>ÌH‰Êe‰ªêv»zèÒՊìr>«í&(AGKºÌœ¶2Í{t\`/‰ìŒe™²zQòÀ쀒5W(gpíf%¸» 
5•BHaÓµÒsxåþT_ÈÑ9éåä÷Cõ(îóVèbþXµý`oéõ¥.n¬*aÌo(~{¢—ÈCK×d녠
Géõ5¶5±‘}¼P‡oa¸ÿ¦¬œÕÜùÅXÒ¿§‚Hg÷êU¥Îq[%uômÞ¡k߃‹û˜éFñ¬©¿(address@hidden&Á¯AB
… í´]·g»z°ýxë˜Æ©
FŸßROÿøñmœEâQ¿CGaç¦yßUñ>rU&ÔPRÙ×_Ë7Ç«!¹Hðy¢6`      
Ur[ÿ¼O÷׺Ā¼´°xžÈÕ3ǬýÉüç8’¢(Â>ê?L´!œ•R:-÷D‡OŸÛh¬>„¯O'ùš?•|Âb°¡4Äqã—=ñQGÉ3ҙp™ºz"å({aÊÉZŠÄ"û8ӊ¢Ï%|GèëT(1­QÎ|YmQ0C’eØӍêøI
….åcÀa0Ë(Pÿ¤-œR í~'W÷YmÈõ—¦Ò¿¯öß\={iãë±5ؐÌ•}cšîD@/8º9
Í®ùïø}J?^Šií­›PðzˆÛ+éξߤˆu|—[address@hidden     
âÏLT÷éÙc³ˆ’SWâwê„WÐh‹°ô¼-åkíñ7À.Ùs„R_ðInÎ\5¶=¼úÜÅ2~8l&ÂÊL¾xê7U—7oäEp;EH»9C¡£µÆBJN.¸~ÙÓ¢çqîµåèԗw×ÿ¼òÿÁˆ
…Âendstream
+endobj
+332 0 obj
+3551
+endobj
+335 0 obj
+<</Length 336 0 R/Filter /FlateDecode>>
+stream
+xœµ[ےÛÆÍóƕoà£]%B˜ûŒÛ±ªìıåʋ^°$V‹ˆ$(\IŸÌtÏà²Ü•Ê)address@hidden;Þ¼¿y¿aã3ü³;n¾{}óò7i6®pšk¹y}w¾Àà%]8¾1B¥Þ¼>Þ|­Y|óú¿7\L2
o½Þß|address@hidden
“…
šûw¶Bˆm¹/Ž/Â,þM˜Ö”¥ÁIšó8³,œ,E|X÷kÓn5+´d0¤òëϾÍT!”˜~›ñBY«â³ª«Ç‡¦ÐÌá›ãùPë“ÿD²ÂHŽŸ
õ~|ݬ´8î¥oNoÄÌ[ä\âT}»{WçªéÞ|ý曵hQpÉm|ÿ…l뙆ûj­{Mu¬«Ó¸5Á
+xŠö¯ÂvÁu–¸œNÕ1ìAJði‰óËG†!´âñi{矁˼ÁÀ,X÷Só1:ǔÇþ¾=VÍh3a
+ëîã÷v\GYWÊøl7® `N|흤ŠR”§¯‡>À¯,4§_ß׫Æ.gÚä|whwÕaÍʲ,¸"0÷u÷ 
.¯mÁŒHHùÐÆᘃeã
+ûËùWh”`h¶nôÓÞKŽ|×ôñû®t¸ÎÛ°knšñ“bçJΞÆcDÞVp]p½-,ÚÚ`‚ljɤþ‘W‘,p¬Æ¡ag>C³ë#Öy2~{Š
 Êœ9Üc1IAя^wð]ÍÍgzÀh­$>oYúzW¿¿Ô=De<
«ZP²‘w\    V       &y5„!”#~°FõÄÀ—ZCKoO}³¯»;€
E>àZ[tÙ¥¯#±’LÚßWq`!$¾|¬m7ú¸±$ºk»hlQ*;3¶ôØD 
«aY°®©«K#Kµ$ˆiéhÔjhÚS6ÏÉeß]†è[®]،åsm¹l3µÙÂÆ9;aX€Œ%N8µC܅
‘÷[ËËrš~Í;4ž+i¼6bC¨R˜|8ϟœœ}hÃ3+W9(,XÒï¶w]]ÇÄÇϹk£¯œ„CL,NªERFµ<[‚¤=·DDèl†û„Njt÷wa(¹\C¾—œ²pWWÛ>øGû„$fþ9í#Y-ñçÎ`$Åà‡®`†".Þiƒ6X
      ·có7Ó
a:åÑímà
address@hiddenWßÈ·’æD=>#!b!j4!¶½
/j€':ç¡i/}LÒ2eÿÀ^°kepHÌæ`:áqÈ·—Ã>address@hidden,ºn)Ò ‡½«€&»o#ùXVâ*P*óJV5R 
än.•|̒ö8µÝ±:>EW:>ÜS¾#è" !)ƒöȸzúšGmRISV‡¬¹–H#Àw9…žGŒ>: 
ð†$ڌ²²Œ#Þn#»–œò°Ê•à¾*â‹_¿¯bøY²Q~C›’Çã,ytמÊ&e‰w]{DM"Éæ>I;BàÊäicBR‚ñ:çg
 (4©¾ÛË_ë(Üôë(w`%'address@hidden    ùÄ™ÅV€$ Z›¤ 
NÑڗÓ(address@hidden;E“iA)¤ÚuÀ:qÜJRàû}W‡„’¤PêÏÕ.„˜—m’”DJž;RÒ:|…” 
(L£B®Ö%ôÕ)F/$c>address@hidden
+æ(Æ'=}³üŠ:Ð RÜCÿ‚„†ÓE/ƒø‘SÔM´þ4´}­©       
}¤õ%ÔÉ£(öYrÐ=„ˡƢʍ¸¸»t™Ì¦]
aïJ)‹Žó4FAP.CѤP*ºÞ:Ê&Õ€ÒǕoqJ»‘IǤào½üq±¦^KàÃ%   
fHL[ÜÀ«Qü-ªu%<address@hidden"PqIZå«Ù*gfU¡¸_%Ø:ò²ŽæT]þtéPÃeäyü
+…¨žÅ™%ÄV·Í¡ÁJ^ÒÖcégA%4÷ÁÉõ@ &¤A¶íˆ‘ù±½œ"address@hidden
#Áhf–a!§iMLÕ¾:$0%Ÿ¨¦û˜Q”%&-½áž‡*Oç•ëC³4´Y:ÊâU°7Œñùº·‡&ԒlE•JÌ# 
I‰LC°¾(vTÁÖÝ0rqÍKÊ:¿_vqíœRé=ºÉñ…
ùFë-”DÆO˜2˼²Ñ`*Ø1˃x4±2tÕ©?T(!l¹¾|§&ML¾(½Ö'0˜Á?IQ¡¯ãÿü#¾h‰)©vQÊԧ»)•ëfs{]–¨»ŠT
+åŒÈ^ŠBnna)ËI9
+[R‚€ŠŠ/'ÉÍÕehÙv¨X5DŸ"address@hidden>ÉäFt8߶K]šä«¢%d/%$×d‘*¼sUÌÅÑl §…
K Œ–ñB€’J_¾Cˆ U#åšô6›S›p€ÃîC¤xÉÎø´ØãE«kž^Ÿg-¤Sdƒ)Šo+ó?ÖGf]³ª 
ãlê—hãò*2Wæ¸oȄÆQSgL¥³Ð?íQå§û/iìI¾z;.CرÃ5Wè°A3`g7kÂÅFbNJmx”ÏÓ 
%«0!â,5pÎ+_§.&È}ÜíOÜ;8(ž“qó'˲ђ±Ï¤“å®»>Ôuc‹É¥~mÐGa¡’ÖÛIA¶ëVz•-Á9eÞ}.M$¨(address@hidden|SHQê
+”á3|ò{û+( HÅðÛl‘‹Œ#ÖÚÙȲ±ÿŸãg§•ŽH‘ $Y¡<AY”!ϏVJé 
J—äÔ¢•Y2e¼4—J%"úÒKíTW´$¥”vóê®’•†T´³T•ö»±Ò’Ùï¡lÄÔRÔ¯¼ovKŔu"a
V»öéSÑ器>0z.cSTžÅ
+ßX1>є«“IɗÒ'£ˆŸÃAèxB*.ÕL¦“§góÖIs\jÔKt,address@hidden:¹*!Îy:\LáÇõs²±ñh6v¼L=þ]½
address@hidden
qΚ|j7žzãŠÞEzôÕíñÔ4oéH8OS†¿IûÇs0Ÿ\¨Ë9ŠõXúƒ?5$§RÊ
+ÂP&´Ó>š˜¤Á]ŒáÁZ(:¡¸t¾à=¶]`=å?ÕÔW¢T2&ZßÛ'W 
}±DåõnWŸ‡`NX†vr¶²Šíª\Ȅâ\¯¤l±«Î©•0Í=;a²œ(„Í$ûre†jNýf)ݵ݇h:'¨½QuØI©ãÒÄS'¨©³²&£¡9Ö{þ
 ™°·G8Ïîcԟ¢šãnq§dRǯ      ´¡FŒ(“J¡«Ó‘§(+%
+02–:üЀm`Ç[À5i^…
Rÿ¨†¬w“ÎÒºööS2½ÔŒ"¼?NreÖléÛÃÒ¦¡x‰CÀpŠÏU¤·§»öpÀj#k/|H]rWŠ+Åfàh#Å÷é[Jy.U¬˜iŠP
        
&%„®SJ&|Þ.•a{‰ÁÎýãJÚËú„×/§èÔïî±Õ,`gŽN<­°k˜l¦ÏO°#è$MZK¥YŠäéxæʍ–>Ž¥ü¬B˜ä«ê‚U‹W
 ”Í}s.¶þ>÷gÑÆO³^–$鮕?¿g©£îêžÚÿN“€§…
Ã"çý¶?¯ùÎpÛ%»Úfþr§òtĞU¬àÒ`Jìßzñ3­qƒ~9   
ŒË6x̜k¬kª«¦Lgüd3™í؆©ç(Êx|?™lªK˜ address@hidden"Ô|aí/0=¯ý¢ÜJóæ›P      
©"ûø–¦|N)?-‘öá"د7ÿ¾y¿áëVvU˜ñx㐁ü}ÒÝñæ»W7/_ý²¤Xß¼üφݼüÉÿ÷ݯ‡?¯¾ßüåæ‡Wã8ë—b§gAx)֟®¥`šBwb×»—ó‹èF—Ê÷?Ë°y<*¤”œ]ÄéêáÒ!óùv³È.¾|}NvY18Sþî\‹ÿ«Á™’¾eéç‰ϒ›/”ˆO¢P„pUéBåêNŸ‘,
 €\LÅÙõLáï4¥ÖԀ…˜(A5YÇcÀ/b~”a¼coÆ address@hidden
ω8!,âÕDßî6)SQ¶S–ÍØtÚ}>5 QÃYµMGÕ!.òvó®= 
‰&–ΗT+ýY%Í2ýɽø7A±ú룒Wڌ_u¡ÐQEÞ¸½À|yÇ¢Iº]ð®¹4ÔD¬ÂdrÕ/"Mf56áS€05©ÿw¢“P¦6óŽù
 \Ë/DyV?›ÅÝ_¯ÏŸEq#LÁ*d=òÙhi}Œ*)*%§Ÿw* 
_\9Y¹R+CA\>Z+§Äý´jÌñCŠ[RÜõG<'Lí}uz[nj¹¸·ÌùxD÷–SÏx<z¥¹ú°7§d"Å°$áҍ®Úa}Ãe?$¶ÃRGëU¼Hk³Ë_éF˜KW®õPLZÿx=&AZZ:address@hidden"ð©oÌhß*ë2éHJ
….ߔK»0‰’Hø®úwqåÎÒE¸}]Q«]:Ú;”óÍW)0¡À”‹Úހ\ê
+oùVÓ"å­/Æs?Oõà]‡Vé–Ä®"Ó¤Ãï²®ÛÊís5kú¬CaË
Ä.ÔH“kbkþ`:Lx<¥øäöŒçü]—¸5•nV»÷ˆaº)•Ýð¥ßý¸t
Ö<¹kŽU&ЇZZÑò¥}E±°âäncºÃùznÅÉ®±â‹ˆo¦r£ 
êKN¡*<Ò麔ÙqO"w·}lÿl½¨5€ºñ"äøÙÕëٌ)
+€Çîlz›îlV·Lçùq#ž—A"¥óg¯õ    ;¥’×^~Þä       «úI+£æë´åÉéª^Š'Ÿˆ
Òk¾Hm»x6òÉú{¨þî!6ìèGB¢¤Ö8˜1•(î|ŠÌ՞âÅWîó¶òû‹T^é¦f‹Gý£p£_íÄ) 
‘“Ž†¿fæ¨GW…G-ÊNÇ<ð]K¾Cô1sédvoì‘ß`Œ½±pñÿþ^œÃendstream
+endobj
+336 0 obj
+4314
+endobj
+339 0 obj
+<</Length 340 0 R/Filter /FlateDecode>>
+stream
+xœ[moä6’þ>—aì—M[ËwŠÁ!ÀÜn€`/ÉMŒÃ-0ÀBÓ-»µÓÝêHj;¾_E‘U¤^Üíò!€F-«žzê©"ýÛ
+ø
óÿÅÿoï~{÷Û
Ÿáÿ6‡›ÿ¸÷—O¼¼q…
3¨›û‡wáü†V˜òÆJS0ssx÷­aßÝÿÞWvò¾âE)üæ~ûîÛ¿~xÿËýŸü‹ZÊrÿÁþ×ðŒ•ñÙý‡ýC¡Š’;þòó¯ÿÇ?–ªP\r|üã§_þéýß?Þÿ#Xaݍ-œeœ{+î„Ò×öæNÀS3þä¿G+
+#Ç«®©Ž£!e¡­Uññà0M—hÿ~|LrÜÜý®ÚÂ*;÷u¿(•”ñé®êã~¥2¸‡¡Ÿ_M‰ÏªÍo禿+\a¥Àïq1U¸²$C«þk\LáâÓæøÐFØ°¸×MuŠ&address@hidden)léDZgt>ľÀø͝ƒï;W†]ŒQ(«UinbéFxŸ[ûy©0u›=ŒŽµ
…”Â.vkívß”2í¡ýz?+xÁ£z¬šãfa
+i)â–æã†9ìS˜¥»3†]WWÛøYøÂÏþm|WÚ|·éi)%eF_Üj†!©†2ïã–Û!„«cn®kø̾M{:address@hidden'DÁ­]ÛÆ`~’-B–‘§ÛUîùÎÙQ=¶Ãí’.Ã÷
address@hidden@address@hidden'ßj†q®?aúXz±>öÍÁÙÐÞÐ(ÅЯíøkWp;#þ©†&‚Jú¢|@HFÖ>‡bUZàeüÀSp–ã’€[w·1T¶yLÓ²`NMÓ4A³AÊ]#(Û_I4ô+KÕ²z¬±é”>ÁÚ1In9ÿûj[:üfÂ
+Վƒ¾~nŽ1¬ŒBl´Ë埏1RÆr½Øf´¡®ê°^+gqõMÕ×cLî8Ð8åæ 
P–ÿ?É&¶J³&\IT±Ù7±.Hbe^ÿäŠÂP÷ÃeIߍ&‰Bf>œÄ©/ÁƒL:address@hidden"fUû6‚Yó,?ïšÍÒm»°A‘r¾ñ–•ÝcDKÅx»BÚI®Xâ’z›~«¦¿U²¤,Xñvr‰LEøµÍ“²!=<`©b‚ÊÅ7û}Œ’ÓI`8LBi¤[ëÝ΃¥Ö^Xjb=ڙ´!ϵáŸPA[–n{Ð|ËyD?þ
address@hidden
+=Ü3zœ¡Èªð“:“·rЂSR'€êuÁ¼ˆs +rUHÖXó#†ZؗvÒÂÛºº6Jáø@Ò9‰¯öç
©’:õ:ÃmqŠõõtÖR£ýI’¹Ô¬{ù…
t!2ždÄ7ûºé‡zTÞ¨›ñ?ïêØé((T´.*'ž)address@hidden/³,™6í94&àJÉÄ%Y(Vd¥»«ƒ       
  .¡†»ÒM¢address@hidden&&ù@«Fë a’’åPWÇþû¸ÆI‹¡»AÚ'\…
ÌéÏʱ–KÃÀÇ׎~QP¨“zMÁƒ$+Éá“Éäôªs)m¶íŠ¦é‘òTšº4YWìþå“/°YŸ>êñÏÿüéçûOïú5¼;mé%ðVCŸ¿+‚9"|&†²Ôô´
…ƒ&;¦¦ŸV˜”šË2ÚrsFøŧ€$IIìÓí°_³ cÊ¡£ÂæöµŽ)S]›öpI*e‘PF*eáÁ;<ª 
Ùî|ÿ&ÿ~¨ºÍ¹ÿ!¦s%~ç#҄©)yBO°$ÊrXKhړ7·uäã…GÇ$Û__wBÙQŽŒ¬;Ä\ÐɛÛ6Š 
ÔĈ¬É'›Uó—ûîKLw¬4kÞj½¯Ï‘#'†ö5š­¾ÁɪbœzÜ8™Øl#älJމ©ÊJ¸¿ûaù:t‹çîØ/c5ɧéwŽí¶ŽuX¥žÕá‹a<®lø•8fîÉâXw]
+óôm ‰g^ÙÄíÒÏúÓÒGi•Ão       ¡ý¨Ð¼Õ§®ý²emâõ¾Ý?…
êqg}'¡ø۝۬8œ~ºËa8_êå³ÕÄkOCs8B*ÿOóD>ÖÕþ‡eŒv‡Cè–ðñ›~õ늭ûê›ØŽO1s>Öž_JéØÀ1à}7Ž1¤vî¾ÔÕXúîðñ4J¯låC{ÂÖtòü¥=GU5
+n{üóCCw¬cû0I‹öˆ(è³È«ûX…öjÔ_c±]½?­ ·4ùƗ—e(·-ºdòû(”'¯ΛÝ
+]¯¼4Hx6ÞM,Úx8ÇÉNHâÒ½
–ïI‰g1ËT[fa³b᪏mw¨ö˵²9C–oWáöé
+ÅeFfʙ"ƒô!}{¬€­0ORå~å¯à«k6_—v­»iÍ¡ 
yåµjö+Ũ=œöõP#"ôoöÍœÃwðÜìWÖɔGƒÕ¤©V>address@hidden
“çã¶îö/1˔¡Š¸-jëÉÁݝ€n^
+†Ð3r°˜ùñëf8ÄB#%M›Çþµ‰bˆ×•$‰Çٞ“çvçj…2ô?È5(`-GÊÒ%Âþ¸¡SÁ
ÛJ!'c]XíÈu¨ÂJš7žVÞOý‚˜Bãvá÷,kÊC£í
+)Kíx$³oî›0Îç4fj×r^Á¬æ<õòÍ6š»<x`˜h‚ªás¿×›µ(dèÆÛ°áҦáÊÆ‚’
+S3ìÚóø€—\VáÔHršv½`åeb"øè³z2õã|­§=3G«èˆ‡vf¾ã 
address@hidden(+KÝó¹ËúmMâÝSõ¥Ù7CÄ¥æ…ãóQŒ?£3ž~¨º!¬|'=È­ÊgÂþtÏûêˆL-”(qà
¶:Fû̕#¸Ï™”C‘)¡þž&9}LCžN.#Ùòqøðl—ñ{Ž¯É4…ÛáÄ>address@hidden')pN#Š  
®âˆÂ9—Ûâ©ä…Ñ2~#7ÙrÉM¼‘›˜|…
›táí¶ñ•æ¼¦xaU:®Ç؈t¿aՌæÐ$ÁÀDË8û]õ5~›:aiL§¤B¢×.Ò4a½ìGPã€Èz!hüAòÓ+©Ž•>»ÀsÝϜLÖÔ±Ê,³¥Ël‘O¬ÐWT´l9Á40—–l2ïT
…uœO˜Ëù,šKãÈÑgd¢aN~¸hæÛÑÊ\+<~.&eÊ/JdXe~…câÞKYq{ 
ìbvÌ¡¨Sâuõxq$Є]Sà-öôCœmªÌ4ÙÎbŠ%Ý/Y]Æ3Wܜe)³ÔUœR!ég‚¹x¼E÷ûÆ7G«ÄÜé€uÅíÌ,okêݯ;½|ÕéJ%¶KçqÒÓ`´BÒäI›C·Š›i®8ƒxLºýHšt"ŠP¯ÚÌJ­“"Kþ
>êû(8DZ}:XŠ©y¡™º²p×|*
+¡Ä´Ž¢0à+DmÓéRn#xߑÛj¨>‡ƒ$g³3-Ÿ¨–!ÅJb²,Ñqîâó’HþÈa%b`¼”Ó9³WZe½é6Ð(F,ò÷ît:YiPÀÀ»Ö’àôc𡗄¾m‹¸\EÃ%dgÉ´ÞXc¿ã™*]x½Š7tæÚÂ_õJëçðnxPÅù"address@hidden
    t8e:‰½žï4uš))½aŸíÂà`³0d[+Ý2Ý2'MÒ7]ìý
jGNûj*'ج´I•³ÁcU®hÓû 
‡‘$n¿öq±2ý<“IÄô¥Áó—”Àùq÷l*Å·E*k/’‚†`¡_ŸšvO¼*ÙR7ð˜Îré\®
address@hidden>ͤ‘˜Šƒš¨]ÑСyā”$…µÖÇÄY°}1;õô6ë‘ 
!‘fTìÒñlµêîM÷S$.îØLô鬟ìÛýÙ7è}<rìÆÃM†|É1ÿX3öÿ ö
+%“´î§šhC÷8
+ä9t1[(½¨‚މù`A¦Á‡s‡§ 
Ùx¼Åû:ÖQõøÏjù&kwՔÈx~í/0Rµ°;ʓ‰Äèø;uۛs×´ç>ævv›øÓ/½
ûœ¶áãMQjéš}ýÏ.øjXs‹ñM2}46ãÒ9“N¼/t79cUØ û{Tyžû%[¾„UXžPgª¹ŽeD…
h•*uÇ鎂˜Î与hâX?Ç[¥ÍuTŠÑ„á£GÒ;!^™yÇáïB¤‚_ꈦ³k–‘:2ÜÄã±'5=ـÀ¥\]iÛü[ºü¢UB/”´ulEMf_‰®Ê`Æ;address@hidden&’¯3üx¢ÒÐ
…†Ä×Ãg5…fô’tO€iÉÌKÄ_£JdÝCE¤!)¤ïc)Îâºìš(P%tÃ8ÞUTh¢¢‡µ¤‡ÄÑþ&w^%
+<|Ÿþm„‚ŠM–¯ېn$d¦”Kšý\Êp+%.»õŒKZØ“Ž°K)“Ô>…
+H#ÃÐõħf[ãMt#H^s^:¯íÌ_™c4Ø        
g’ù¿ßPã­QN•Ï˜×tKé|ÜДªûüZü¨M'z<~ÖsÉ(,address@hidden"oÏNÇ#-
+ϓ%­ŸÝ¾=.||Ž´§ü¨Î¼9J›®nSIÓi8qêj¼¤í$]Æ{£|;Ý»Ö       
ªuÿLf:G«‘QÍ>tí!¾è¦×Ùç™Nü¯BD‹ìÂ9¤u×qâü!ÄC}!$±Øòs-f'™~Ì®’܈   
àK˜/‰y¾(q=_øõ|™´…
MwØ7ǯ«®€î+eËÐUÇšŠxqd*4ÙԄ^Ê™åKØ»w¨¢[®–Фu6]Û£¢$ÿö!/®dLñtsŽŽË˜ 
ғ­J²çåÓ< ¦®Îµa»»…Æΐ
+NXöç*i’Å»*ˆr5´Rç‰ëCñ}µNâQä      ábýé¾âí)I1MÇèO‚]&;«‹²Åwbf*X¡?#o 
“dä—3^vrqñ۟s\=;ô÷¢“=땢JÐðz™“®bŽYøãýͽóÿý’7«¤endstream
+endobj
+340 0 obj
+4289
+endobj
+343 0 obj
+<</Length 344 0 R/Filter /FlateDecode>>
+stream
address@hidden/b`³ÈÚºØ=CI\ϐ2ɑVÿ>Õ¯êæC#m8dwuÕW_}U­ï—¤¢—Äý‹ÿïŽß/¾_Rÿ,ý·;^þxsñá³Ð—¶²Š)qys{>
 
ð’ª,»Ô\UD]Þ/Þ«JV?Üü~ÁxEUðÖÍþâýOŸ~þøå__n>þã‹ûñÃgjÊå8%•Ä—uï\sÎ+%Íå5Óð¦ÿå¯îx—ZFãËï†ã¡í¾¹À+‹?´£{f+¡
…6ñYíéJ[JÓ÷ûº»k†þäß`=•ñ—é¾íîÂYl¥…
HæýØìêÓØø5¼o~àRU)ex²ïЌÏãÔýú²b„$kžÚÃÁ`*.Ó"wí£Æ*ƒgl‚ÙDsžŒèzÿ¯Àu"¸Û·»zjû.îe™IK´·Ñ§`1ç—×”-L
M~¨‡Æ/ÁDÅ(>žÜ#xQKiçVð(Z±o¢ýÒ2vŸB,œ3¹wh¦ÓÐy·C 
åt8.…N=a'0HÉäƒÇvß콝€>FÓ»_Ý#p´¶Éòçà?K        º´Ææp*       
¢¦ü>ž©ôù؛쎴{¾®üsS1^25l¯áø)Ðý8¶_Þ
+N+cIZùÔ¡ÿpÝi8\ö!\àF.%†Áä÷Æ¡I®Ðg     Æ
pêÄHeð<ÇöîÞ?¤v]+stoûáOhôS´àxnëó(2p,ý:Š8ì‚(šú£”~›¹¨¨æÉE辐ì1›¾yj§ûëàsð•v.‡}LßÉMu|5Yåè"º•žâ)GxÊ¥«9ú|•ò¢Mým</7Ö"n=#]QÁ˜©*Àñ©‹‰14‹Èç
       ÁßOCJÈ&{·Ã„„†é£À*M0
+?‹«¸5Z¬öVì:„ãf:ÜÕ]›&Ü 
6&D`òK½Û5SÌ&A{#dE(bá<#e†ç®~¨34(ÐO¯í¡Ú&Ѓ“"‘t‘°d&è-ÐÜב†#
¥Ð…¡ßŒ%&8u^KJŽ(ŠÃó±š*úA3“üpVýð[Tdâì‚û¡ï§ßÞÿöÃVõ†J£âãöÔíR
ⶒZa}£Y
+°Š/address@hidden,X   }¬.LJCs
Ñà+Åhrš3bÓ7OqQÆ8úp·Ïá‘à9NW!•)$-~8ÆńÂg]ª^„ã¦CS‡ê>âXªØ<¦¢¼Ęr{S)address@hidden(-b¨Ċah?VS·IU%Ѳ”žBazþÙa³¥[8òÃ8v*¨íFÈÑ]ÌQ¡+#2{¥`Ûìøm
+âJae¸,"address@hidden^r¿¡îßo9Ý×þs9BhyÈXÇ®9±•"s
+ÄÕWH 
±JœLi²ä—æ1Vc2ÍT<>^EŒQiQÓ®k[T¯ªP¯õaìãi´Öôåo·²uC©Ô!5¨¤”!®w§PTA½>l’"‰›aŒ|JNIô.’0[‘ð’.]Ps‘»msS²"K²<Ó¡îÆC*/keÁuCÁÂ5ùîæ>¤=ÄW=Í^•!¼¨D›X;address@hidden,ä0då]¸¦’YlEk¿>'T‚´[ÛÅæ“Ïvœ"š€˜\¶Y&ëŠ
 a9fwÿíôðFVÖ)8)%7¹Ú&¥ Rr†Fכe4Í]¦c,œr3*Ó%PÏ07&| 
¾}’=”Û3~Ë¡+`yds+ƒ€“%nc×M[¶³Îkú2#Ï r¢~A€àT€ÿy ¸ 
8Z»î"SiErÝËí$Ôb;+/¸áµ"ë6Í­bA¨ ƒ®‘À ­ð™Êì‡ðçP_þ) 
籧«Oà‰.’˜¢èž¢Í󕐨jOÃC„®–è‚~lØaOn):ô—±ƒÊçé*>+øÍ9Á¹Œ˜Ï      
Æ):4Á:×5Í>d²‚Ò›;ÙÔç¿`öõ]×즄Ý|â)Òá|e\Bæ&eó]ó”
+QNõó0g¯¶®UÜÇR„ù/ýp¬qî‘ÔU€Œ,address@hidden,͊ 
uŽ„f]LÅȲXÍNäg4þ]éF4i‰ùåšY°¤¨»™’”ʈºOR 
ÃАr§¿×2y³‹¥d³‹eFÑÅAfmóëmÑ$«ŠÄX”3j¹à!Ôþä‹yÙiQÉ9Z2iÑ5i€ÍŸ 
-ßÖ1JKh¿B]?ÎEÂ՗4þ”²BHcä 
N°Õ÷-CLðÍ1/DŽçq0ôNfÜԙ«´F’s¾N¡ïo‡þÂÔrîåÉd$v)ª6¬¥h‚,ZŸÙ¬k{aC‚Sápn`¾îÎ0żŒÉ*8JÑ)DŠ«b6yå˜üd¬@<address@hidden&}èz1zp6ŠÁ«#áƒi„‹Ë¿qŒ“7Gƒƒï¡Y})è†;åÛ¦œ¦orJ‰üönˆôF*Øþa+,2Â
û*‚•Lµìm
address@hidden|»Š\q®ì:½e÷§ÀmŠg±ËrÅmC3띃Ø­>ül*p‹ rs˜fL‚…
çÁàƤâu=J‹«$`Dq¾ë?3mÝþ`sÊp~œcfHÑ×É­Aÿ”°sß"lãS‘G`Oii  ì 
_>D•ÍX?¹Nöá!BWJ,¶DÍ[”¥`òU|ŸÛœ³¹‹Ü8ÔéREº”ÅùÌ=
++¨Ì9ãiBeÉxì(²aÚv`G½xà··¼Sî#FÁÆóì€ÌT¼‘GÉÛîÝmh1Evµ *nVÑ\ C+†º©Œ¿A     
Î.&+‚å±DV¦JâÓw4é]ªÍR»Í.Âü$*䶟/¡ {NAËÊ­G`«H› 
¾ÎÀ·¸†&•!ëBSÌÌҝµ¹ï^¿õœd_.¾IgÌ¶5AKå.‹®7Þ{­ßzN‹F¼¢²ì²HÅiš«GÅMw 
AŸ‹¯^+§ÊEÝh~Y¹œ²Ç‡‘뮈B*TèÇå¹Ã:7’6zÕ"¹    îßüñphwíÔLàh 
øã]:ˆÉ••`t¥$£,+þjª9;깩æ5ԐJ*Sé,(Óm5ÈV$‡r쳒(~.¸’(·lrșàëͱÕå¿HPU\’åÑW3ʜ½Å
…%¹ý‹mˆ`…"Mê`£'µ{Òcý-b±¸ÆoRÉ=^Ý!‹®
address@hidden@¦on‘[®4ÐJtžkåS…V½ŠFöÆ;0ºXÎØScQ%ØØäë9ƒaôvš>¾0aiþß 
öá3°T6àkê3“:H]fB¿%f…ηO2×DÓìÜÕ
céÑ]œ¦+&PôÅÏãã}*%FdþªÝE­‡°ÈvÐÁ6Q°)—ÅT–a‡¯Û».®"²Ìì3èȲH8é‰K|úçß0иU_£±îøwMºmà¹5ˆi¤—‡ûSŠ
+T¤¬‚Ø0Â%ùåµSBJiáÝÒm¥Vp @®ˆ¤­åùö´BD/þr î
+#â-“‚^Ç¿—p?5F®1lޛÏÍÚ7ÍCÄ+Á‡ñŽ¤7³éYۍù‹„š_Äû™°É¯†g†k!—Tj¥©˜Žl’‡€Ž&ié‘,Èçe?ì'è’ûdNôL¡¸?Ìâ#˜Q
 ž¬ T0ö‡ÇhÅÉbÎ$­(1xô™ùñæò×÷ïßëZendstream
+endobj
+344 0 obj
+3058
+endobj
+347 0 obj
+<</Length 348 0 R/Filter /FlateDecode>>
+stream
+xœUË1‚@àý~EG\êõî(LjæHŒ tÐã`ÂÀÿ_¤z¦ÃK¾÷º‚E«—s^ÌjV ¯í1/ps)B5; /ó{  
¶È*Ïhd1»ƒ¼·}¨þö0:·ýÈÓç¶$:,address@hidden'-“ÀÍè}v¡2Qendstream
+endobj
+348 0 obj
+158
+endobj
+351 0 obj
+<</Length 352 0 R/Filter /FlateDecode>>
+stream
address@hidden
+ãý‰vŽëº¸QÞtÿÈDÉ8(­¨¿g•|V‚eÁñ«}:ïvm·›¨.
address@hidden<ðÛOå€Z©R÷>ˆP†ðh³c°QL‹hëú)"£m<Þèd*4Zûaöt¸’š“(‚?8GŒg?g
address@hidden"KšjŒd%)~ša¸¤ðöpÜۃíü § 8ËÞÞ¤€(!’†Ê›40E]Þ_É
+ø˜d‰}ÛÍ®µÉÚaå­+d
+šr«·­66f‘P™Ü«®t
 1ÿE·~Ý\×9•û>ñ#*Ù6Õ~ÿ!9MJ Ýkd2íê§kfµuÈ9sí­‰ø ç!Z¸Ž1,uºQ¤ÂLqX5ˆ:WµÛِt
+߁PœAUhª9Á·0B O<6v
+å*õÛ¹P(Ý ¬ÜÕZÏPM;.”åU¹ù¥Ü¾°!(‘ÜÚßSNË#ð'address@hidden,address@hidden
+Ýj–çcj[ÕY"¦þŽ• À‘'ÂUö 4Q9GS;FÕ¸¡WA\rìº;¨eÎÊs5/j•þ'µfA­ 
×j]ºÝ/íwÙ+–Ÿ‡±éÏû¤Š°œ—¥áîŸãŠ5$۷ϑ¬š—ì]l;’{³l· 
Ìeo¹}q½·ûãÂsÒE?¤y_Îvô5Â\׍®^n7ºWƒ‰þäÛºüQøï/_•Ã
endstream
+endobj
+352 0 obj
+738
+endobj
+355 0 obj
+<</Length 356 0 R/Filter /FlateDecode>>
+stream
+xœM‹±Â0Dw…Dz˜8Mt¤•ù‚VHòÿ           ÝpÒ»w
1š–­—
+ò‡ýjÉ8)ìg8Ò(Vê¾FCÐ÷BFP3tâvúª¾óÿ¾e&¶~t…
îx>Ü4ÎMzrže<5ÆCe&lì§GJ—kjST¼CËdé'°endstream
+endobj
+356 0 obj
+136
+endobj
+359 0 obj
+<</Length 360 0 R/Filter /FlateDecode>>
+stream
+xœ¥VKSG¾+‡ü…Í
W™ñLÏÛ·ØÄ×$ T.¾,«GZÁî
+¿OÏSIĪQ½=ýøúëÇCC  
khøË¿Ýfö0{hX”•ŸnÓ|šÏ>\KÛ%JjæËYzÀPIM¤iæ›ÙÅçU{?¹áÝüÛÌ}jPq¾˜]˜ úp
²A´Ñ,ع,:—R©¢â•{ôËŒ1*¸ücJA$§"KÝ0&ÃÌ4–XŒODÃLH"address@hidden/]†…
Y´¦eÉ*fÊ$ᢈnº˜<Ñaddress@hidden
+"¨ 4±’7—=B*+aѪ"šÒâíÚ=ìüà6    >#0’ñTÊEíëz!“@@s‰TÒÉôÇ
+‹ÿJÆà
˜‡åvØ´}ç>ÆBIB¡Vêæ>ãºòʹ„úE–˜|       m‹l“c¦¶
+·ÃÔÆ$Æ¡ø™~:‘¥¤DY"  ÍÿÈ2ø½õk?Eð‘B•žcÞ€-²/‰³ŠK]ŒíÆ=ÅÈ
Q²²{;ü•ÑàZJ«ín½È쑂ª<¥À”¿õ>õãIJڸÿƒrbWëS҄j)KøíÐeLWJ¯ü„½»ÜɊ"9Ñü%ú†„íÏëqÑ
…áèòòÑµ·k—yk¨(äô}¦‡â¦úNÍ
z_~;0fu0vÏ1n¼TDȹ…cBáuÃ?úaÛç»­N¬#ø<ùiµm•#ý:N&address@hidden        
…:tb ‚0ËkuWm—Á=d2ôu.‘¿¬Ýß~O[K¨…Àóq?•íÏsô93×åÅCÚ„r
+P‘÷    
b´.j(GNÌ0øØØÂ`œç˶s'š¦^ϛíûýˆ{§;GQ?›vé¦Ì©M×QÓ£dºÈk6t‘û5{¸h–­_cûÅR⯍ùjZ(õ‚OÑ%|?ŽÕ$¡/%çÅb;֑¦
+7¾÷HåèÆ`#êJðgÄo“çŠU5\œßm7•EÏ̶ïSTZîé¹G3ãø^䙁1ìÅ܋p¸-+œq)+²>
âƒFâpâ*P͛|ĸl‚YÌ.ë,€Ë
+îÑYÜ%†9:eêÛ.?žàîK¦ãnþ^Â}ڍùÁS│u¢ƒðØ ”Ÿ;cöç#–D]lg:—x>I}vŸ…
jfïW¯#~¨µø—s<þ„ª\ÿzq¿ÞÝùrx2Ã|xÔ´wøæ}Š_¼ˆÁb¬xËׇ 
.gL    ¸·#‚[ì÷ Iå„÷š ¯ûŠïÓªgÌÖ.Y¸”’ 
+OÒN_ßÅmÌq9PñžKÓOÉðá—yóû,üý+äýendstream
+endobj
+360 0 obj
+1140
+endobj
+363 0 obj
+<</Length 364 0 R/Filter /FlateDecode>>
+stream
+xœ­ZMoãF½{÷Gø6        sØßÝÇÙÌ,b ›dÇF,ráH´ÅŒ$jH)Ž÷×o5»ªš”hÉ  
s€¦º««^½zUÍ/×e!®Ëøÿ_l®¾\}¹Ã3úo±¹þÇýÕۏÂ_‡"XiõõýÃUú¸¶,¬¿vÊ¥½¾ß\}eí×÷¿ÁûÚMÞ÷¶RÂoî—W_}ûÝ»Ÿî?|Œ/Uh',þÁñ™0ð¬ôøìý‡Ÿo¿ýŸkYøR
+zþñöçïÒnŒE0FÆÝndp°·»¾‘ñ\ZbXE¥’Wù¾vԅ
0Š¬xŽlá„Óô¨î†×l!|©ñYû€Æ*ch¹ýªŽ¥*¤qôâ²k~ǧÊ+^±O¦O{#tYÀÙ£åRoÞãš&m­YÿÞ,ÒóP8ÔÑ^~nµžš/à™'SºjS?ÅçJÖäcuŸqRXzyÑnû¦ß&C¬•dÏ´Ûõà/)
+mK5õ
¸Z†0õ
8ÑyvúÏ\aLé(address@hidden>ÀºN'•€,Å/address@hidden     
address@hidden:9H+¥èäÃ=¼%Çg³[7‹jŸ67p*£Éñý"½}G­êMB),Gù¡íØ'address@hidden"·ïÚõÂà£á~ÕôüԑÍé
 WhG»}Jçw&HZ³^T‡~°U•Eœ͞~nøÝ~ÕÖË8EéÄEÞ¿¸x‚š9wwúVÛ÷ͧ5Ù`ƒÒÇašÃÚ¯ªŽ\[‚& 
      ÛƒTzþK]<&ÚóEÈ®¤Xh-™¶­›Çƒ‹Í›9W{ ÂrÞPȾ;t˂"i™³_ô:{·:@ºnñe+8ÀcM
+½šÎ€Jф#͉¼l·uN bJ´X:æ­çôk#2Á7Û~_­×Íöq m8²)        Q˜Ò    ÙïM·?TCú+ 
à“×Q¢)™Qš-=ž’§®†ì
+8ÒÑÃUÚÞªìñïÞáAϛ9̌ç­<ö<0»ÊQº`®ò¯epðz(¤y}ߐÂ%oî3`­Ÿõ§PýÙ#ᙎïZtžÉæ5û7=‚˜¢}!í
 tå´Ë¹ü„¡ÚÁ¤¸EŠš°yEÓT¸²ö¹ß×<¬Íà÷–3éì¹hauœn…
óÎëx¹&+ÇlðDÏg­?"ƒ©Õ
+ÀõÓ’Á€é˜4%³Á"address@hidden>ùŸ©°*F±èêG;u—Ê©†Ý• 
U«1JËõ=¦VzÈ]Š\ªS-nW*“ÕZҎ¹¢Îɞ%âÜ;馈¶g¶æ"
¸VÐîY%B=´ý\r"ƒ!dI¦*¨´íÎAqÌVõM,?Y—‚BHµß+ͤÚGT>ã!œ—ôœª=a¸„s2Î_k 
’ѳó³^
%ëÕ¾Þ.Q:*K(ÉÊÛ÷\®=W©Ç*1|YX6˗0BpX+¤:©AaЪIG߀:xf‘ùyKø{i…§->Fæ3
)4ô¤K7ä¯o4#"6IIaÔ$½[.;ėÐÍzkWðÒâG}L€Š/Aƒ™÷„7±›…¸ñYˆ¯ŸNÕe•¢é€ã  
¬Ïé·z&0µYÖXæ$'wgü¨%i:ĖÏáiO7Bç‚psìÜww\ñý4çɈ>g֛£¡n±âz˼U¹Ò܏u-Šr]ð6ïò>·?}‹ö¯¦Ù¼(F¡Ü+a+cïË`«·í!ÉN1Tá£Ò¶f"Z29eÆíÛyøف—Ý1þÔ)address@hidden)•C,xôû:(.Ð3‘ÞÿëÝ,r¡)bï2Bîí¦•œk_¶}Ø`œäFaUí‘a¤#åÕÍ(/ªPHÃwKžÕŠµlþl1¡¨Ê²<×Iíí”PJÏõÚI
address@hidden@8Þԛ¶K<'Y!íªÇ:1ÑÐȱ"ûg²Ôª<1IˆÚt‘øG….mKžÎœÑè*.ÿ¯S
oǎ†[ìEE>9ӗÍ4ó &—¸ –Üg‰ëYð!`#,ãbßUÛþŠ¶‡OnüñÜbCžäº¾þ5ÀI°{Ûõ2‰R • 
ØCÐÏ.Ÿ0}‚cÿf”êlͺùL2Ló–xhëØnïÞaWÄ™Ëef;ô®“&,¢)Y†mÛ=†Á2M¼lPØí(É… 
Q‡š5ö܃®‡>9±ÂݾI”    YíÕÈ0­øŒ³7`ÁÄD±ÓF3uXüµ~Áa>³àËaˆMkÆ^_w
‚ßÆ)Ö¹f¬ÃÖ±Œ `!ƒÄg“œÐ?ݽ•¸&ì~zª’ýy¦
+>Âj§-KÀ ˆeZgåX¶Âd‡QÃX}õÕ/Í~õõ›hZVG
©Ì|4ø.N9†,1©3‘׌0…YfÇñÝ06ÖÍ?Ñø…ÜøåtpåE²‰address@hidden
address@hidden<sáY$tôâUí´ž¯O±Áš«ri¡¾=¶âGŠÛ°]³ÝÖ4àŒ-Œœ4tíiԞ’nèé¨ç¾} 
’ˆ’lxÛ(VO»4[ƹŸ‘p>̌€˜O"0Õ*¾ÙaéežžÖ[Êt™ÃÓvùMÚ¥«5Þ«ƒh#§¨—£j³¬öGÆIÞþíC×n0eæ_ìμË2ú/f¸”y¶¸?uöªBƒF%N²F¡d߸,®÷u*7Sò™e¤éd&\žÌ`tBž.æuæuGwŠ1ÎWÐâ3î^ÒÄQKFùì>gR«ÝeàD&ʃ<՜qàËÑÂûüQ/address@hidden;:ßíãϵ:ÂÈÂMW'4ÄþÝóuËKT¶Ó¡‘ꟆP;–”
ãÒÃxˆà‘ÿ“„XJbq¥‚æ=õÞÂ)ZˆYJöztŽ-v·.!µøþ 
×Wžµ‚ü»Ì<jšì,ïWåA‰2ð6œïC½=¹uq|>ÁÒìb‰r2[þr¨{.t*°œ[ÿJ6s‚SA9ÝJb.\Ôß*“gÖ×yx¶l€‰÷8¸f†Ž(ÖxÏóž%%¦`¹A<
äl˜·õ<address@hidden|GÂA       address@hidden  
+á„;    
îhBÕBçËù_¡ˆ¶q<0„URs³{֘)ëò<E҉ÀŠ:s¦¶œ³g?‘È×+ߐˆÊØ9‰ÐÉms¨#wôdš]æû•Yßý½ëi‚¢r±9ãׯw€ÀWúDa„|?
       address@hidden"pcJ¸x!ÃÜÈÒ2ªY»Z·PÕ:¤8Š›ŽéóüÛi.
+tÐȧb[jÖ*uÊŨµòwÉ´`Éw?´]œùQ°€ÅhíÔ÷€
+V|¸%S_Ò
­ˆ³0î‰ñdf¼™[[ô&1tà{¬ÜäˆËMÎQ/¿#¼k! ˆU!ò8è°c­Ë\rèi€Ë;“\ÅÁÑ£kìÅìÜ©>Ý    
úìÑíˆÅ“|ݳž;4kãŠÐ˜¯3yB›L㏒OF!‡
Z`£vÎsÄy‡£í
+h˜ÛaÍ-7,yþc
·b]Mã¬aVË£éÙq÷3þäEF;ƆD´>r<pšøä¨?gðKß¼¾ЧY>né/|4´:šyOÔ/Ê(Ió
K×+n#cèN'í&=´¯>c”3™âOÅè"s64ô*î‡ô݊€æúäC.§ÿÅq|üä‹kMã'764‡2¡¡²+Μµ    
H55ÒC<
·yΗ:ó:t­è裳-ݵîçï¨ÝåÏ
+D%ô©ä™_ò§0*ßQíuîÔ^•Éj"½)œÏÀKa0¥™=…
û«§`½¿6“’ùÏ}‹6žäÎݽŽ¦1͈+ìñè{<÷Aæ†Ty8F)b¤ñ«„÷×ÿ¾Šÿþa²Eqendstream
+endobj
+364 0 obj
+3275
+endobj
+367 0 obj
+<</Length 368 0 R/Filter /FlateDecode>>
+stream
+xœZßoÛF¾g_ûôÖ°Öûûǽ]šj ÚĽ{É-ÑITI:†ÿû›åîÌRc;‡
°¦–;3ß|óÍ,ÿZp&<þ—ÿ]í.þºøk!Æ5ügµ[¼»¹¸ú¨Ý"°`¥Õ‹›»‹ôYäÂ)˸]Üì.Þx¦Øۛ?/¤bBOݬ/Þ¼ûãS^T^‡¼øþãõ>|ÿpõQøéþÒ;&>h]z&À+ÆÈøÌR)Ŭ¶‹¥tðËñIÏ$Óña-WÒä
~ÛÄ5a™âמúfUmã:Þ\þW,sÂi<|Ýõýø fŠ¼ºmïqx™•¸¾®¿6«z\æ,„ pã¦~œ3u)…
cLZJÉL2ãf3n 
9óÖ¸³‡iãu׌‡†m`KM‡×À]Þ£mw]µK‡PpbÃñÙ¶û’7ðÆâÏÍv4N¦„Ä'÷Û§ñd\ÉñíßÓÛ`Õ9Ž¨â’gÎúù!Ł3¼=‹C
£òs£Â<Î address@hidden>¡K8^üÃm\5pÞ =:1.ýF)7µ
+Â7±jèê.Á´qÅÃh­ÔLig¬Jh2ÌrŠW5®        address@hidden;øÑk4³ŽK:w×´9;îŠòè6-z‚ 
ç
õj\„$µ´ÃfßÆ\ª{–ÂÂ9³Î–íóOœzz´:Ù$#¶5e
¦P°ÚVí×9Á„øè¾Ú5ûûÌR|Ûa]ßôC½Ï‰
j&q"Se#«ìM%(í悖rF¥1C›íÚºã`AÕ3#”*!h¶ÉL0ǹ’Ãã†FEGÚCFš¶øâö.¿Xð‘MOÉ£LLÁ¼ÿö¡Ú÷Ûjh»ÏoÙeCh
 ¿o~IDmÞþxÂÓ7Àø­™.¸»k;âCëé,u¬4
¹{º:ó,GDøa|‰V%pýcŽ‘³ûzŸ<띡dê®Z
Mò¤–GºÐKN{     DDi™UMS&Uÿ%ó†RT?úºC:WîŒÍ
§dþü¦f÷TkÁuÈD7B……ú^¨“½‡MWWk¤)íóÖúËzX±Ïoçý.ƒ†SČÌú×úý·TˆMД
+m¢
+<¦§‚QTênWí«ûzWá19Ny8¤Ã1Däe›”„à2Æw±„Ä'%¡28Î1ïÞe¦ƒœP$Þg¯¸µŽNÑÏV{ô&A-!)address@hidden|6|‘R)|)IEÌ-éÒÕ=æ¸(•{ß7·Ûō£ê•Y€å‰u’[Çg3Ҝ`;îK؞5
 °®ò凮Í|$­ÁHmÖuƙðô¦j¥k.ê’Ë­=VK™¬À;€£)YWB€™(ɍ„+%íÖ
,RÒ¯×X™L0ž¬‰Ä°B/Y-h‡\¸#0îjàKT8Îá¾!Nñüì^‡‡(I       ›¬.\ԓg…
ebçl©öÝeØsqöør_ˆz»móI•æ…S]…²A’TÛ#öÿœe
p5„j)}ôk)address@hidden@_ÎAýà!‰„Ð×È´Æ"7Í*ãßZzª_Qº‚uò¯RŒ÷íË©÷‡CÎg¢í†Ãʼnµ÷àóËL€²(T'°‘tô°UN#w,5š¶hî²Æx]АÊ.Ð4""(O¸&rNF‡™×ì¡ðMJª,\òÚ(¥´‘ÎPSu4šp;·[÷”ÝœÇcNúÁ¤§ˆ3x>œ24¹|ÂÙ¢ˆÁÇM:?h(9C£RÎШ1¯­ŽŸÔð5ðžqäë~¨:0€Q9–2xŸ
ö¤”H¡p¸—c$¶Ýÿ8úRÙhó*<ž«P§]{›9Ä      
汊HöX2«Ï”9“¡ýãÞÕmêk—ÒCGâ)¥â{¤;è»s镽H÷¨«²è³tâ¾Ý¥äÕk¨3¤ýpÿÐU˜ÈPјu5T¹DÊàЃw]»CIXzËt47)(?l³HÖ|šÇ)ÀLd]h3¸
+ÅlÉÕSÒa*ydq|ªíŠÇ$Û_Ú¿ñØ£ûWŠRÐËÇh±”SÁÙ×õ:¥"„ÎÃá¡|.ùg§6-–)ÇÐC+s8 
âtœ€˜oDÅFáLQYUûœZ*ÿí·ævÍ»‚–û쐢¤kìÕTI(¢d`êg»û‡¬wDŽ.¼œÞäC¤Hý_„çf / 
šXåÈpAMėܦCBXCÎ&-¤i!B5$ÊÕU®˜vð‡<ÁÆ('Né/æk¡¿6ç£+ç¯{$‡øä¾ÞC§6$‡j(ŠTn®ºz7nhA€–onÒ±Eªû½â2Çlræۇ
  _Ñ 'ãg  address@hidden  kB¡t$ï¼
+'6*¥ÿ¡¯±ó/-öPo·}^…`ŸPèØ<Áê9v1¬Taaddress@hidden;˜EúÕð黈z§IÔoªŒ€
ÉD‘c„)‘?¿©óø¶u-ùôÓ§kߜµò6Ðg+ÿS²geй‘…
Û¦FœȈ!,>‘rGã`É_œ~'å#â¾úH²—Ùº(SBt¿‹ŒüÊþjR™úMûFm …
'TŒB+{^?B*Qø„È¡k2]Ǜê~Š—ƜËV rA¿ö–`bL™â¥²ê€CÂyŽ©Ó]A…
ìïKs,èAUéÿKÐÑ(CqJê|ЮX<Œz|„¬G“×®‡´©ŸL×J¤ )‘ª¶}›ýË
©©çgAgòÝBüýë†ٳ¨-e%˵ās%p“á\à4œ«rÑÐQ­R‹YÇIJ•ú=NÂ&ýÍ)é€l/uó®½Ì/±eàÔ#ÏM6¢‰‡椼sæâ{ëdçCӉ$8âU®‹ÒÛR«£Ì´nF‰˜î”©Æ1¸7y–=²"
…|Æ|çÏEwœ¸º£¡¢Šc 
+>âuDj*FE¦dyA¼;èó_„Õ'÷ÓpZ]çœ?¹˜Z¯»§1¤Æiã±Ü=™¾ÐÞÊÏûWþȳ»Èá™qQÛljâSv·+cÙëð{<ØïÙ`ÐøûÔéLï¡vY;ɑÎ_\ºÔ
 É)mwŽË÷¿ŽWh¾½¤JgKú¾ÞfC¤¥û€÷?&4.-¡     
IÁé™+۔Öc%"`¾~ŸÇ(qxHc”m[åÎjŽQ¤£¾q‘¯†8Ñ଩úgwRa«'CB‘ŽR°Ù#PJ‚¦)q÷
•ÅâýwŽÉŒ§a<ñ0T/>3#†ã*{:#>švNgÄÎÇÛQ)x}LÐÕHJ¦éÐV
+w._'5½ÈŠ^++¤—I/õ“ŽiU®ÿª<ØOÚYûáh&ñüÔ7~*p¬†ã½ùÜlZLnz£ˆ(wd6±åf{ÅöÙû÷Mµ½Ë|¢údèsԜd™Îëùâë'ªâH39ù¢fbŒªÌ!¨ÿâ¼ÿ=j·¦ý¯õ“þ·ÁQ/ÛìÑ,ž™=µÛ™ÑŽ^§:µÞ¯ñŠ<]*Ø$¬”Çu¿ÌÌÜ¡nOú|©ÇQ7–è€8Y0sAW5C>p°q¤"q`£#
…æµ®>ä/N¢î:í]¤¡—ÅÞå2o¬ŠBüãÓ»ËÌØ`n}ýáÇqRVQ!ˆ©ô°¤FîßÍm‡Ã
hZ©³IEâ’1–{&h‘4ó¦TÙR€¤^É\Îs/¢é%ijËd9FýªÅ—Þ       
Ý944O‘ç“AÔ.JCºès¥êBw²ƒØ¥ÛN°2zçÀ–°;^BúÓï#¡|xS‚å 
ûRyRN}¸Yü¿JSЇÄ×ñÅžŠ_žA¦À¿>€~óñãµw×W׿.†î¡¾¸úïB\\ýÿ÷àŸë÷‹¿]|¸N{Í~áoE¡¤»8Àš~â&Ư˄áÇOÜòP¨?^p
 xâ°XJLë<w³JR»kî7H”üX;FÖ+²Û¤E‚ð4ò¨S   ¡ùÑP7ö~’vßæ·JMt—ï̵*xX§‹à     
y€›ê2ӏóÄ¿iN¹$ £O
+Ž±ÆßO¢T&ñóø±I™”0‡ê¬ƒ.s‹”$¢÷X«T ª¿o±¦Èؗ’ªÛ 
íŠÓW(|&ºÌ53äjŁGõ1¹çF“Èê¡;Î'ÈjèfŒX,£ÞˆíE¦ç?ú$qS¼%TÈócÎÈ~ ¦ 
ÏjÔ¬‹½„F½76qü^Â¡€­PN¼Ì#áûeO×쎚¨G4³¸ø™H€
+â'B$Ž´|™×Ù¨m§“á#_LÛ4F4ÿût­/+endstream
+endobj
+368 0 obj
+3485
+endobj
+371 0 obj
+<</Length 372 0 R/Filter /FlateDecode>>
+stream
+xœ½XËn·Ýò³K
X4ߏ»³%Ñ*÷*BVÚ´fZš¾™é÷tÛðߧØd{^²±Jl²XuêÔ)~Zp&<þäÿ—Û«OWŸb²áËíâãýÕû;á+­^Ü?]¥ÄBXά_8e·‹ûíÕÖ¿½ÿ?¬×î`½·LJ
  ßܯ®~øñ×ÿ½¿¹‹bÚ      ›ÿàY´   6î³í§›?n¼‰v-™çR ýîö›»ßÓi‡Þ]K§˜n¿€uZÞ
뺏‹Á$…Æ—Õ¾ÞOfpP{ôpUn–éÊÀVÚä?tíä¡f!pm°ódôLi¯²ñqœ¾£Öf£–
+/ø8Ł9$š¦ý<óN)t´Z‚?ûz5‚®´:ü^º€–¯Ñ˜%ZÛzÛõ“]GÖùÃmÓM=†ãÝ­kŋ˯…
|ù41;address@hidden:J£cVRW}ó9[\èHB’,xO—[wãfJ’Œ—ôîú.CFZƒÙüܬê^ΜÞmµÛåØipöÇDµ«Ó{Œíl½‘
¦éØfÛÉy¥™„í”l“”Åù.Û·xõ
+A(~ºÜ45"ØZCM6gL8( éðÈáUñ”Lpr      kŃOÌçzÈ_MH­–×9–î    
U‰¸M›¸3Ž¤qøÁ€·UÚº“ìKKٟU
¸!©júª}®3™(uT2i_Ü"Ã86hÊåfÓe¢SšÈïK4Y(address@hidden,—Rž.•KRè•VµZõLu¥Êí~¿F¬
+¦Aõ%0X¨qCEXÀî9ù:0Hñ¹âÐicªcçùÂi  ŽAÀ¿lÚ4}•2)=ӂ"ü.љ2öeÝ,O¯µNÕ Bî 
µ‘‚4´ï"y;ºÿ.§ÛQ)Õí*\‚ÕKŠÞ;ÜÓÈ#¸
+à%ëO2~-ƒdښ9ìÏSÙ¼$µ¦,PK“9 ïyKc™©UPšÐ‘âù[»3:tÒk`¾}¾wàÖ¿tànS
O]¿Íl($߅Nòf™w–!ºöP5›}Æ0Ù=%TCmW`"‹
¾qÊBŸDD*Ä8.ÀΚh‚Åߝ“+ð«){Wïú&¡ùqï­Tàœc.   ™Ÿb­2Ô,Ç>Š 
ª:÷¬9òÙGn='"”¾LͪTã6ÕÐrÀeã‰ÙˆB̛ÔW€}}aßý¸Ûe«3ªp'address@hidden;ä䬌*í·y^ga
 4îÛ›…Ñ.k6¨U跚¾•ÐØ
+)address@hidden)!{º:å®ê©{™`)Hc
@y¦PÔjì3º¡2…~I‡v(ö
+<»4ØLt(P[SpV¤¬ë6Ñ0UA
*<Ër 1A!ïPʁ }]84P]ÑÙØ-€
+lAÍ¥¬MM—>ÞtÕª^±:.ގ˜t_a:ì؏J©kë|©À        â¤sNœ ÿ\·u_
È?ÐG€ß9õ—^£
¥~ª%º%-î³Æ&d à¡NÒ±õèàÍ*Šê©÷hçïÍ0mn„À}ÀeäÈA*Cw 'í‰ 
³L×÷)z®w›ñ¹i³À˜5mÕVÏuŸ4MiXõi¿±C‚¯,RÅm®™E:;ƒ68ç,  
¬DV‘&Éٌ4Xü¸òwä®Ì¨ÍS;„Ýݙ†fö¸Icº.”ûuV‘0¬<f§àxN|¯¨žF̬4sD^‰°‚
address@hidden'^¬ëU¼J›è?´b¢Ø]ìœ>ÎòæÅ“v‡ö`ËÀ宁íH„òX€#‰Íø.gã;¨žoŠ>address@hidden<¹ã¾åB*þbšÅ–qôFÌMóg†óìÑâÌÅíïrԃ§8^ïÃÛԖ䚐vFÜäNš³Œ¦ßLš-IÊÀ÷
PÐÆ!‚_`6ˆ´q]ûý]ܜىˆ‘–}?.OIpå‡b’;
+÷+R¤¡68ÕQ×n¾f
+‚ÝØ°|‰_‘ÏË®}ó<ö´—#…
Á¿æ:v4©^擬‚£Aàát¬<)‡ý²ovÎ,@0^ÌK¹–ìámÒǁ/âãŠ12=çiƒê5Ìà"i`NLLрi°È».OùdžÞ+mxÄóα¸ˆ³
‘âý“×E!ã;      ôXzÞS
†ÓÙéá'0)‹Éþė#êt¨ÆáV婐X“—l”ùƒ—±.!&ŽB²ôÎþ뎘Š`Ñ5ÈÙܑFÏâVÌÄ-½0n‹(ÂÀ©Óuæí
(·lwÄÇDìù1•Í­ðšqøý(»ò4»¿De”`­!ž*üãˆ/¸¾<Ýü„      µ±“Éod4Š(„YFÛáåʓh 
½ÿOÞäpރ‘ÆN˜% 
èxÂô+Æ=è„Í>L8G•ý0vP€–°~—daü¢ãÒ8äP©®±žŽ'ÓrUÿ͹d?>êBk£àŸƒß¸‘ªÏæÛÆçÙàó­Nóý$²®ûçR-#ÁÉyªo[˜ž›ÄL
 ¼Ð˜ð§¾ÛžOöuTÛ
+þ½lÏ0'Y°i w¥wâ½À
+ñv÷ºœ3ËÎÿ· û m넭›ûÅÿ®âÏ_üó<Eendstream
+endobj
+372 0 obj
+2166
+endobj
+375 0 obj
+<</Length 376 0 R/Filter /FlateDecode>>
+stream
+xœ½ZMsGÍY•ªü…=B•5žï.)l\‰àrᲖ¬`IFòëófvfveie‰°.ª05Œ·ßt¿î~=»Ÿ
+JXAýŸøs<||*XXK?ÆÓâärp|!MáˆÓ\Ëâòý þ†Mš8^¡   
ÕÅåtðÄIž^þ=à‚0É4v]^ž¼8{;:=óë’K9K룷gúÿ8¾`¶m‚kC´qq£võ«Œ8¥¸ß3BÍE1ä¿vZ"ˆ
–¡‚«ø€W§£ø8k'Ÿ—aM#­H“/qHÒÖj±
ãqN¤6°Ï‰¶açhvS-&«ðd¸ÅÂñïóé³øê֞Ãq&C.     —a÷/Û
⟊±ê·jSãhIiµ~.†Ý4{0«Ürû\CF)ÑtÍþË»°[¥(Ë»ËÕd>[n?#‚;wè!¦e0tvY¼ùDͺ¡$¶`ØE¬-4Ì{ü<
ŽGçÅjñ¹ÿU°Áñïþ¯“W§ø1zQü48…çl'ñ:ŽLb%  
óf81ÃÓédŽ»ªaFDŠPSíd\,ý’%Ü4'JT£ÄY‘Üòü",*B•M;ßσû™"<õü|ôr;I˜RD       ]
}`ùó¯r,îÝ¿ÊÁ¿688º—…¡rýÌîç^«·¸—Ëv¸wtÜå]a‰¾î]ƒÅû÷®Aa­Kð´ªË
jsÔ=ª{a{¾øÖÅ_ŽÒãôð¢*¯»],Åٕþg¯.60à       
<—*D(ã˜Ï¦ÞAYD’¹6*{Äô‘àGZ†ø+J„ÈM!ùї/•âê[Rì֚ï E*J(VY—ùa²\åÖx?ÜΠ
7"address@hidden;øŠÞYuÆ[ªàÚÐöûŒ·!Š{;píƒñ¶¾¦?(‹³ÓµnÎr¸³yh6.¯Â1Ðé 
ÜÌ^ñFMÜ7Þ¾¾›қ!“úîOp,¼âRꂤáNû4¢¦YÓÎh·’›™-É­r—-gQÖ9–×êX£knÄ~±Ö¾·Ú,÷Émé„ê·]Ö¹
;idÙmå¼iÐ[˜v–òvncÆÚÈmΛÜNá6î…[áUž{¤¶“cï©
3˜FƒcÇóÙÏ:K9!Þ}£²€ceVŠ÷¯!ÜHªsHî=å\v$¢1’ïEÎ|address@hidden@ξaY
íp~Ö.’õ½ò€*"4?åíí<N–ç{¡q'3üõB Š^•ž' övˆ¸ž–Â^ÖÝ oLÆ 9«&
UïÒ´%)ŠKœÍgñNGr—¢ÿoµ®æAäPßŪo¤HÜù6™}x÷´ÑLéÝÑ*#)T¡È#_9         
¸Ä’§Í<b¬ÖÔ$‹Ÿ—Uyuže]Ə7Ia|•©©õâüùvúSeu
ß/ªÎj$mØ%e¶_¹ÉBîía$­¡oPÆw>Ö…¦Ãr˜2GHªïñõ&AYq™È<Láƒ9ÏÖ2ã 
bíÆ!=eã¨b÷/ß$¬ò…
tÝÅ>zèåÅÝ¢º+ŒÓþFÄÂúKÙ~õ¥OAØA|bœ5¡)÷ÊAÓb\lòBçYìpÖÙîvã£*7¾«r¼É¤u磂¦œ¾z«“.Õ¬qü]Lì*Kª›êv2«–qîeÂÙ
¦Ø¬ÁA”D+‰u)6iMáÊf1_Ò$ÖòÛ¬»w²:€Ú_¼ô«­w°ãoɬcÂùâÚ;(É&address@hidden"LŽàõd9.×±0H&Øc´;„1šm0¦}5Úf
Öi¶·Fi÷ ·Ðkœxµö}LHó$ì•´ùÒëÏPãAÞ¼/\uu.ôî¾Á
+a\¶Àn¿l?H?u„ÿëMýjϟH«4âÝÔÎÇSŸúXKÓRö;}ˆǨ|
|îˆQŽ'ëÕ*VRn3«¿ú%
;‚¦rWÕ˜ANnjù3„"%ŒúA!Ħ¾Ž¸ÞÔ«×՗ɸê`:address@hidden&°J™HàFp¤àåFn‘º‚‚¸Pv±÷ûf”U'address@hidden
   Öè6¨iyw‡Ñ!ÎŒÙèwOž½ˆS…¢ 
fþŒ!:ÅÙ5‹«›šÚp°Î¯üG‘™Z»´ñu\’‚&sÓr5Ž7DfÚx¡q/pó+×ÆNëӂÑ—-ȁ¥Ú¨’åeFMíY€ÑKÇ`ü‡/5C¨fëÏ_„&ú3‰ÌRŒZÜÿØE"cÍG!ËÚؽ¯m—‘
+²Ãz
ü¿öµÍém¹\Vˎš®      ą
+͈½³"8ƜÈbÿ¦\”ãUµ¨/Ëžšo¶.oê¢ÂÃ;©û16¾*$,WHí(q
+Muޞ+
ãi÷·ºªèfÀ(ëê.àÒ®³Ôþ•Í1ø:K¬Sùqõ 
'k‘'Ù%kòf6ù'ªRÞÜêÔÅE›5—_&‹ùlZÿ²Bñæø¤k¶eÄ¿å;¬L]E‰³ö…Ж(}ÌuÃÿùéOnñendstream
+endobj
+376 0 obj
+2029
+endobj
+379 0 obj
+<</Length 380 0 R/Filter /FlateDecode>>
+stream
+xœ½XKO#GÎÙ9ä/̑•â¦ß½í.$XI”
X›—ÁnìÉâ3Eäק¦_¶ñ؋%!aT®îz}õU5F$ÃýOøœ­F£ÇŒ8Yü˜­²ÓÑù5љAFRɳéýÈ 
‘I)&–Ùt5:SøÝôÐçjG_KD)…3ÓùèìÓՇÏÓËë^Q0Ä‘áz 
Ã:È..¿L>]örN‘Æ”DùõäËåõ·F°Ù67¦š!¬U6¦
+¤Nÿ§ ¹ü)‰~-Gˆ*¤[åe/„kTŸ—åºkß÷r†ÁU]ýÍ>ß9m†¨`Q»ÊëùÏN
q°ëÅ«ªk¬“3P'*æ!41ˆ#õêˆÖùÌe”#ÅYtó«3œ*b[§F£^Ô<­;L        
2LÆÃK;wªiO—á8C‚똺§^$Á†£¨ª¿
S°Ì]pZ¿6¸YQϺ™fa!Ék]WäM]'BX—û:_Ù»îG[ßµO»µik›¯ŠráºZ’¾Ê»yQ
ÛXÝûf¶¾sû¶¶ª‡b‹ižÚæ­ubŽÛ·­ê|a}jDE¼­ófT¦{VvUÕÏÞ
address@hidden@ŽÑóUd
+LÁ“Ø1…sD -tìñ¹ýVÌlRG7x{v5¹¸}羀)]ÏËy CHt¼]ÚD7*òʬ*!_v(«c
+t­yŸ~8âûl¹ˆ”N4öü…p‡4j×h*¡SmùÐÎYì̼ŽÚؘô¬.Úb–?8uŽ$O\x_¹þ )S
+¬é„(ƒ³”ç^·2m¢»­­óY[T¾,Ðà$©?,pNÖvBIØ{nZ»r”<address@hidden/žH%*ªwu»4ybçºBû×3~
 S O¶¬º—ocO&ò¾ó6•0iìX»1ŒE[ÃºÈRkUó& §2ê6®}
ŒlIÓ+›à>åØáõ¾‡UÓw!JˆF°T£*œgXFC‹â›‚bö!D­X:zoí|ìËPè»9–ånpè¡p)¥&öÏï•Ë10<ô†
šè£    =-‘÷´,fA_ÊÔKï3&¥*¢\"¢ÊڇB°Šì&ìpù²¥$˜
+C†& ú&2ƒbDݛvØNZ(ÀE)³©×—¡ÜÀ
+Zˆ#öm
+£û;¡0$Žõ¢„^ÏŠý,æÀgˆnažôÍý=ÌÕnaލS;GƒDn€­)l»DÎö‰üW[ÚÚיuêT¿ÇفK´ÆñÀEíñ
+ùšMUì»L$ADªmþsÜë¼'®æýà%ˆ†ûU–¸WoK}æ#ÿˆäç{ŸGlœú·¶ëP~ $#7ûÓ÷ 
‰yÉÜ°MÓ-æ>°CÁÍ©ëŒÿº
(×"address@hidden"SúŠÀü5˜ïVäÐh—§okÞŒ^…É‘‚l)
address@hidden  '
+(:-ßðà6c¸—gãršýïbæÄcŽtF‰Ðý×õô 
<?NFç“?²¶îìèüίú_?‚ÉEöÃèrâî9å}MÝcŀ„èØEýxÈ)ÖâÿÁ)X҈æÛN
Ì|kãîF49‚Žc™hÉ
W½ÖH»„§I#Œ%yV²Y6ÖuµÎỸÀ*í”>Ñ;–ƒô´Hã¹­†çÃ0]¸x1wøþܙÜ|7l¤;#§œ$R#Ò?¹¶&ɤ\Âèj>“À
      <ΓûºZ
ϒ±{"ƒâiÃdkJ‚%™–ó͐„=P’"       Cڝš”|_<èX
+>ˆmnºõ:.K$-×UÝúµ¨^f¯©ýø ïBí.§¯
ïð?r‚SJ¥ nÏÖ
õO¶á÷.pó‰dt¹õÔpFÛ¬ý`Ûm€Û³U^”ϱ<°°ïe–ds{×-ñ%¯úGHÌ캫}À{‘6NØæmã#v,ÔÿüÆÊ´áendstream
+endobj
+380 0 obj
+1595
+endobj
+383 0 obj
+<</Length 384 0 R/Filter /FlateDecode>>
+stream
+xœ•XKsÛ6¾ûÒ¿ 
[“™ÁûÑ[n›™vÚ&žöâ-ÁkŠTH*®ÿ}—vIÙrñÁØ]|ûí·‹|Xq&V|ú)¿7û‹V"­á¯Í~õÃÕÅë·Ú­VZ½ºº½Èl²,ȕS–q»ºÚ_¼ðÌ°—Wÿ^Hńv]m/^¼»|;-
+øê­*‹¿ùñ2mõL†Oï¼|ûnZ}ýVøeRÆa)ïr"ï   
™`Á9íY+¥˜•~µ–N¦žif¦ÍZ0®¤)þüñM‰GKYÖ~ŠëMÎy_ÛÀ´Ñ,ÃõuÚþ¦ÝžÓ~ÅÅÐmßí¿+fx8±#!Z×àМvsÎ!üi„ÀÈ~‰-¸ÚOƚ“ˆÓ²dR‡ë}ý1A&¸q5öÓÚÌB
&…às"Ž‡CBC2%:íú1nÓ2\YhÌÚ6£ôÌý 
Ú¿0þ×»iº­bÆp1ÝV3”¬ßMKÀÁ¥8&û°~%4SÚf6ȸ׋ÖL2˜‚¡ãay{DÑæŒQ‹i;¼¼"‡³ÜP*èÕZ
  address@hidden  #KƇbd—1‚=/xsL¨‰ pq‹q
|èŠÀµ¤õÖ®Âã†dA5-Aÿh_»mâë>ÞÆ>¶Pg˜ô­]±î-‘ò~—y
TµÖèÓ[$z¬Û!ö#˜ß'+’¢‘é& ŠS1g÷‰>h!¦mPÈv^jó’’"address@hidden
address@hidden;:´Ï(råz<c±£•o±þ¹ClÆê®T¥§+T•P
+éQ}wèëjÌ%U`8FXmƺ˶÷À1;address@hidden:˜§ÆŠ¦«¶uû>ƒ<dAFH ɚ 
yŽÖ+$S\á^ÈÒKpNË9æ.×8Ĭ,5¶™ÖPÛTMSTÒ¨–Tã 
ÚR|û\ã9œµð¼™®ä™}Äå‰9Ÿ1–x8Á[™ÖÁh‡d¨š¡CR
+'ñêÄZ…6ÊÑä¶Ëê5MZvöü”µ
+h¡Q*|&9,K„
+Šâ8(Jj•PT€^Cud=ýãC9Äæc݇æ!Ejë%:{•5A:ü£`¡5‰Ò
.œ³Â-ÀUÐ?feicÜ4÷p´3tûœ:O-ZíÇre˜^0¶\á“ìpª£ø_ܔq 
°3æûj,¹0Ž”c(-ìZ5+G?2XÎ}¥Àæ4¢öp“PÆyLoŠú6Ðܯ'îsžYYß9¡¦9ÑIÉ$µšû¶H†uÝ_þös©=-MXRÿ¨“ºÔã
 ‘N!P#•OéOYÑA¶œ'’Uçç75uZ½œßÊéTÏÔ󫌋TÔֆTv(3–PT”¥`ê0'㲞Ìg…*N†“Þ
@Ĉï“zOXne⋃g–â€Ýºœ\ÎÀ"ë-fE„E A»ÚÕHn+I&†2
+å
r’$ºÞš¸ÏíDOŒ£þ]Ú*`(ˆ¯7ÕPð1Ðd¼]xédŸC;’ýY…
´}ªBjîŽÛy85•ás-‚fºÌm_íã}Ñ1k¨Ô»þ®Ёbx¾¥Mxî—㮏Š£sÄÛ
,OÍòUNªynzæÈ66q>å+ŽVÄޒp•ÞÓ
+Œ1R¢3PÐðÄ5]󋁚Æ&
+žL±¹%¥ð¶Ý<w‘³¡ývœk|žú…Ž0Œ•`½$´m!]˜ƒªÚ★kyôЊZè¯Ç>·uÍü,[›®7×zÎCqRb
address@hidden'"æ÷Ó}=î
+ðÅ>aü¢ïRÌfš¥1¾áacáqÆ=%í¾nšÒp¼¢§XîšÎé—v•y’®n†q
+;7y
Ë
,HG<zÈ·~ôl+ýèIʝ‡"É'„òPä2Cÿ)„„=³Ë#aëR9à•§•ÁÛ~r^<;ÏG–«0¿v`è-û¤¥™ác½Ï<Œaègé1ú5ã±î^ÏÕo4LSô>‡¥>›
+Éc9óœÀ¹Î‚_(8èÆ#Ù¸~ùL¨V€ÊC¤û‡wYŸ2­<ÓÞyŠc¯_”ÜjM9ÙT‹×7T{×d?«æU±,"|ؑHP»x€&R5Ÿºá+¯SãS•ÏÓÕáimÀÀ5œwë4˜û:address@hidden
+endobj
+384 0 obj
+1822
+endobj
+387 0 obj
+<</Length 388 0 R/Filter /FlateDecode>>
+stream
+xœµZ[oÛVÞgïÃþíS[ 
¢Ïý’·ÔuQ-š8Þ.È#ÑITHÊNú°¿}çÜ搒,;Ù]¨êð\f¾ùæ›9ü4!÷_ü;ß\|ºø4¡þYú3ßL~¼½¸¼¡fb«˜“Û»‹ðPE
+e&š«‚¨Éíæâ{Í~¸ýㅍ7ª`ŒÁ;·‹‹ï¯~yõúöúÆ
”¼šªøƒ)Ü3*á1ñÙO×Ì®®ÝsÁ
+CMÏof\ß¼
«YØ-¬”Ì­6eVÃÚz2eîoœZ<æ–GZÎdœöïaŒ¶xUJÝ]p¦%Liaü(gr*LÁ,J
+7sžL‰‚ɸ‘nX‚[kÝdÂÿc0áØʦ`f2UwÞ>`s-’}J÷ÈFSšìÛ}éúj3W[o6
¦Ÿú¶\û9lÁ      Ú}v“æU6Ù÷ÍtÝ,ë¹û‹Âž~èªöÞ«hVmŸQaÒb³Þ?£·è¶v¿õ‡`¬ÐÆØø´ö;¥¬ 
Ÿõ«*N  address@hidden)ç² pBƒ¿švQµ~4à™Š´ç¾‰»c
@ž½÷è-´´,­ïׁÝZΓaËõº‰æÍýàÁ6%'iCá<”D³´D[µÍ¾¯·KT^PiÍ9‡EcŽ™½¾òn™RÉ
+Âàœ²0"ütg V&•ÁV"â+±¥ˆLN™Ýªlù8čåâŒéú€bÂžñ”•¢Ö(„ã}4 
çË0WÒ¦×Õ}=¯º~K€T•=ŒX㱶¬Å§é]ô¨a<¹
+±g¬MeÝ}A4É4)°ñ&«²ÞFKÈK¹]œz¹£°£‰o ½ÑU÷Á®àdÚI)9nõ˜·M_߅
­šBk¡³Yê‚`wÑ,À}„ê4°ö ³.ª¹ƒŒC”>dc8Ç5Œâm×!MHŒ»6úÆjNs”…p`0Z@ 
âáçp&Å¥NÆkÚl©4æ    žf¢°1¸¨ú²^wê`l‹àL¸ 
ŠâŽÃRL#0û~÷òò²éŠz{Wôû颭ºEµ-Õe°¼Æb°½”
+þíBR.þ´jV›¸GJLòå¾_]îÚ—ͦZ–¤ØuÅòÏ` A)ìп¤$4‡T_7ÛîeÌTĎ<dHçÓ¦Œû·S)
þ)s¢*û¾ôáàÞbjd ëÛÉP#<Ȑ)¤      
£°U‡;÷ˏ³‹ËÙo“¾ÝW—ÿœÐ‹Ë_Üÿ~|}f?Mþrq=óó|ªa`o)µ[§Ì˚ºý£ž¡Tx‚‹Z‹ð8w 3
+ms¼½‰¤©1=ìWmU.Ž¡…qL‰ÄkÎÂü©à:râŽoJ€‚-ˆy®úç‘%Å>îEHÛ %"·ÊÿϋºP‚»u 
ù~ÏèìÅ»¶ÙĕßèF0&$m.TT¿-4( )¨ržÔ¯òk«B’ÐrSu;
òH¤:ýò[¹-—Õ&d[#`Ã2¸?)¸©ÍÎ nÍҒõ©n¤¯ã1˜iùM|$)JǤ¾u”> ³é¦ҞS3 !9ÎÊ
+iQú½‰„Ö‰§ß—
+%tPƒ¸T 
Ô諶Ýïüiˆ$)ÒÎîS¢ÐéHÕ¼oBö;„"$lÈØÚï4lô-Я÷·,,A¥wõúVÛ4mÙÎ#¸¨FM±ª{XnùÁïL:Ü&,½û¾Z¢4AÞVæã̄¨,f¯8{÷CÆR©´è¼L
+KLًº…E×^ +‚‘òa¿ÙÅãO#5AN0ê(RhŽ”`w 
n¬:¶;‡˜°¨‘²º¡fhø(Œ$ùEµ‹–ÐHSÕv"KæB²9¡zsJòtú
+Ãj{”Þ÷L§8Ù)k(`G…p»
+ÒÚQËÂ*ÉmÁÅ(2a
+UöeWÏ¡ù/ 
›;àÂ#&/!ùó\ÍÞ^Eì0†îבgxæ¸Y*¶€£˜BõñdªfÇ=8!ÉónQvÈ¦°Vh,:R€¹XBecÓÖzã
ïôÆz7óÛ¢J_ýù³0`F#ÒD¿o#®¤%ÃXŠKrMÙ£|>£F.7»uõ"²Š1ò0sgô}¨|'ú\UÔõq%Ø(}
+¬¾èUNªåj⿀l$Y€a:dä¦
+yÆPBšpU/Wq󮇍ÜÕ'zÒh&dÀÀ 
Ä)R‰‘ó·#Ù¾ÞŽ”`"åÑ>ÆM·\I•tËåJ›^`Aºk›e[n6åûu+
+
4¦%‚û·&œkr^½Iq!Î0Qù¸‰Y‰B™…vŒ|V‰7,'›myÇ
+aR&²¥  wÕC<address@hidden,®
+¨(ґæÍv3cÛæÅÂä3lo 
 £ÚÁÛØ€ñšœŒÀ[ðº&ˆÙwR7yî(Ê…”JÃ`9SKӃNH»©ËiœL8 
y%‚4¿©ÊØ-Q¡õagÌ'Š§³““fXC{aÂbx›†«f¿NâhP¯'Ý
+`’¸ƒÏJò¸eÝõUÌÇ®;ä°™cb‹:•wÜâ#òà8Çôƒ™°mÖñŒ`8EìQïcP3Ø¯ÚM½­"²Ad…
ìÏÙÞÒGlor§!÷0 ՙÍ>address@hidden address@hidden
"8uŠ3È;_’ïI\=Ìr:¹¯“–sòãRÛƒC\vlîžu/·)­å8/ûh1ˆ¦òPë”רE7Èn#̞ÏnŽ

³8ýª`(çó¦M†y2QŸJ¥Q/ëÝ(address@hidden,$†ÑòT±Jpß¡Æü÷qÛ¤ô-ÑFëj¹HÕªtÙÙ:V«‡Uƒ
+1, oW  ž’k(çr[2lÊG&0‹¦‚P4XÀFXV
Å9•Ã:7K\=ªc×fG¿h¶è²ÜÅÛ`m;œp\
œŽMع^õÕ.ªxp‡Eø¹n£¤qíBšÙ„î&Ï£“8mÿL&aêڙ9{—ï£ù͕fßc¢>Ԗ<€kuûù¼êº»ýy½îJñA~W»¾Üβ%àe›N‚Ê÷Àì0͍68{{ÓEWj’Cøì™
;{æṎ$¿v€ÏìnMÀõ
+ecÛ P2çŽâé ʤ®ÞÏA}
address@hidden  ¼iXÇ[_-á†Ö)Øæä¾­—Ë*Þ+ 
×®´nóÊ#}Ia›|Èx§ØYÎu¼rY{RGÆS%ÏD⁈´ù~ü»e–$£m«°ßÀʼú¼[×ó:ÕO„~##%BruO>x
 M%¶þÍÖĕ%„͍…Øß
+m:ÂaÙG§qq¢=¼ó—wQY{HÈq(áhšui<Mû¯p$ÐN4‡VB]nn¤˜«_QR~ØGò#Nª~#óGfAjòI7ÑÛJé|-’²¡:o“¡:ÀÎÎHHþl©
¢]îJ>ñïY˂âäÈF¿Æ‘Òµ—±\Çü¥ðåq4¹íçD“»<{v4,Éфqãºã7Qq¨´Ð¼)–Â,address@hidden
å.Pì:×QíQä)©sLÍa鮲å"`Bsã®ýN„
Wõ¼°Ñàtn–FBÉÎ5x<w¬sçgPE£µ;ŚÒݯ d‰Õ²™vôB¹Š‰˜~Tº†=EŽé|ÌñæïX 
Œ8eíq7ì\ŸWeÙ·¬¶þN4Êm؍B‡Ÿº!oëÝ*}—\ËŹɉwS~D•;}!ܙνž“
­çž ¹Ææö·¬ðT2Õ        
ÝxbÔc­9_)+ü$(address@hidden&µs¥ºÎMüq©®9róC½^Ç=ÈÃø>address@hidden>ߨªÊ»ˆsˆ†%XŽSrìVÛEµx£Ÿì-V­æ}øB‚»/ø°s–󴆬0‡pM0çÚUÐȌ©³ÒA©‘¼tæëB#€ƒ
 Bò
=m_ác¥×ìíèü½Á+pö*zÀø鿍®ŠÜóÜÅ€d™xd×F4®Ǝâ)!œú
Äõ!ôtA‹ÝS…V쭁Þ$
++ùç}DvꋝMÙ}D>ÑÝ~…w
+ñÞàþrÞý÷þdÛendstream
+endobj
+388 0 obj
+3366
+endobj
+394 0 obj
+<</Length 395 0 R/Filter /FlateDecode>>
+stream
+xœµZKsÛF¾kó#x[»Ê‚çý8:.ï–k“ø¥Ü|AHHš$h”¢¿=˜™ž9¢(gR50=Ý_ýu¿/HEÄýÿ_n.¾_|_Ði-þo¹Yü|uñú³Ð[YŔX\]_ø(<¤*Ëš«Š¨ÅÕæâ
…©Tõòê¿ŒWTPO]­.^|~÷åÃïŸÝº 
ðªÃúÛwnêŠ)-ÂÚ¯o~{ãV9­¨f,¬þûݯï~»rë¯?S“Û©H|Ysÿ§ù#—œóJ¾¸dVý6ûõØîÖÍd”ª”02|£Ýº5[1.kcÓ÷ûÝ8=
Ûqÿ°ì¦§©ª´‘ñXcß­×M?”̽¤”Uš8[¤ó{þK·™ì€mXüÊð0ŒÍfúˆó¯áћ·õ´%©8Ń߹%        
–tÙôIU8|<ÚÆ-xÊØøbæN*ÆÔÜ
ó‡378jüptƒ¨´à¦àÎÀÂξ
'ÐÖĵe=,ëU3¡‡ÛJi´ä궝¾Á;BÓøäã7®»>˜Á1œÍŸõ&ð’])e—Ô;~¼m0z†'C|4À<Ãùx%8ú|
+ŠÂaéãÛWÓs>ãxÛôþƒ¦TÄð<G¬Ûoòœ`ëŠZŽ0a1~haÒN†•87Т"address@hidden
|f’\k¤X½ôq‚L œ¥8ù
¦/ÙJ«@ &}eÛ,ÇfR›J0v“ñ°©P˜¬%
¼ÿ¼h‰/ŠKš˜ÜÅsìZ$k0°×á]K¬=µïOý0&±3œ^ÅdT¼÷cØMpv˜-¹£êõд*‰yµì6¿d!Ø`f0*…
иÈÐʘéÛ`­h
address@hidden"ò=,µ´hÃ0¶ëõñf{Ÿ°°axº!’ª¨5
+¿PoWu¿
+µHE-†oˆä‹]¨f’ 1wÛf‚ÄGl
1Æñ1ì—!£•BùOçªý»¬‚‚¡PûǨ„‚–¾ìwˆ-ä<ŸS\ .aʼÿ0=
+Á"ú°X=Ž#ۄ£m°ÊJ‰O.†–1q#eRW”Ëà,address@hidden
*=&7=Þ.&(˜Å0­Žt²ßîÛMÝ?„j_æèñ§xTVì<­B†‘Báq8-‡=€9Š-ÎÐïÑ‰„ë"!ÖÅx<€Áð
Ýõp#
Á
+敄•œGX:address@hidden)1D‚Q=¦'ã>—Dp“Äò·m|ø!³)”¦yøÁ)address@hidden       
ÑÜb9ð˜Ä«Œð§šp„F45’€Ä¬
$À´eúlHÌXþK<o&°¾eÛûÝA'1!£íOž<|]>gÖÇë¾ÛD€
address@hidden/ïWo;ز™,ÏVÕ$âY$ñ*JüΣéø§<Çÿst¥Ãiҕx\›DÔM{
JŽð*Ï$iÏ#Ó¦o¢re4.½ýO`&›ŽídI½EM§Ù‘÷
;address@hidden)hßÕ݌ö»PÌ \¨3b1ĦÅ|þM÷‡¸Þn
+5˜yJÊTįë媭äØ)!¡}L¨P
öÝصhKÓo–      (~²F¼î£©ÆJێ{Ïó  ŒÈL(|¸ëWA·Cи sÇSدPo³÷‹èBé 
ú”Kót±fN<address@hidden ‰ØâŠlyu–p³r—JŽoÉ|àxÈ)>÷°r„f:"
+5¡áÿ7Møx1¡Ž(P7Cú¯‘R¡›dø‡!ðòˆ¥25¸î"ù)ò-¤5I«c6:¢Ò9kÖ¡ý˜eÔª¹k—Íø›¤š±ÚíMˆ+aâPỳ>ÔØ®XŽíJÑ5UUF+
…m•Z‹¨address@hidden;¶M°Î$1Ãë›àXô4†"á‰)Xпˆð´‹?‚r
¥1W:address@hidden     ›Í‚t÷) 
"o¶T³Ü89¢¸äŽÒiêN¥1KιO-<Ñ4‚âï²¼Ù/Ð×ë(záŒ8°˜b<¾â«ß
+0Ya8Y<ß>Câ™Ûu”7R—&IJêQ§YÍ)/pK¸c÷`¹–œàã2ui¨¢ž¡èoVÍjbRÑlh¾|¦“ÄÃs€âçt8Åø–†ÇÞN7hŒGé¹`±¦I£äXr³QhT¬Õ},address@hidden
     P1Jô’(|·K¿Ä[ýÐvÛ¯/« &@ȇ¿üË?¬x*qûމÉMç}ɬ£4•W¦bQ9F°Åü V7IÀU¸ç“
‘~q  
é•äÛ³¥Ú%5€î\®›þFÍPl¢åf.N>þ)N>‡ýnZâ\ÌÂ*åøl˜Îq›&¿Ã.‚<mÔ,۟–XÖ1K\bë.
¶îmÛ/« ÂÓѪŸ÷ã«ÀöJT
+Æe`a¨8˜mðºÊ¢^uÈ¥XÉ"‘€*r‰:#8>®S]ÿ
3ü ž„!öC›.±˜ªa[RÆð§Y+.}{4Ðđ0˜`Ÿaddress@hidden:      
‹(«y>jm†ègAՏî–ì-ŒÙ0W³9“z‰WN°>ˆÚÄúyÌôõERÂiê‚M=|ûúrò|address@hidden:Àͼ¸»‹¢Þå9ìl~Ä
 ÐÙ¼
+•€k…èhÿ¾âõ%D©Âõ¥M²äíÇßC2icÚ è2Ð
+à`v³iVm=6kåŠqܹϕÊر‰1‚8Ç"address@hiddenqbn­9’ñ2
›í*Þ3‚ÄQ³:ºn†ÔMâ÷‹ã®Šj%¥&²Ð¥þ8cÖ¬?&xç}HøÓ÷n¿^§)/Ÿ×0©ÒH/›`ºÌ죵<î]Ù0¯‚ß³zP¬Ð§j!M92ÞBˆã1´öiï„ð¦ëþç9Hf:T8Þ:n£‹8ìŸ
   œ1
+ÉPp\‡Ì~I·:ÏäÌHðÐìº6ÿQáƤ7Án»¾ÐÒiH²°CÖ”Ç Ì‘…bÏ'address@hidden/pJyTj
+û­Wséð¸–L*†]³'¯PÊÒ/;þuw³*«î9K®Fà|äˆq]DÎVñ¥R
+‡pÄå¯
ôEWÇ3W¿ck%Ã˸ؑ“¤fv·è?쫆vY{_+'Q£³6hÀL¥'ìêïrxœ¥f?¶}²24kû"¶³«¸»v®      
ݯªèAñg9÷!ò!¡Ç¿Íà©¢}øwæä¸ôÑ4!ñóÀ Y¸ÂV}¸%qä‰×a¡¢:´ °®ûzÓܲS©pIÄ銬^¯#n
£Yv‡Åìh¹_mª[ÙMÃéT±°?\]‘bp‘)¸›zfø[MQ㨋¿š9ԞéPw·ð<‡r;¿ 
‹šŒ0Ãýî¬`dl±;address@hidden(éĜQf£è#ƽ$¼Î59Uÿž‚‡º¯4VÛÔ»],?ﮟ.Ü¿ÿ›rþ9endstream
+endobj
+395 0 obj
+2977
+endobj
+398 0 obj
+<</Length 399 0 R/Filter /FlateDecode>>
+stream
+xœXKsÛ6¾{ò#tLf"ïGoNâL}è4u<9ùBK´ÍF’¶›ß°XRýhÆͬA`±û}ßîâǂ3±àñWÛ£G?"ÙÊÏj»øp~ôۙð‹À‚•V/ߎòb!,gÖ/œ²ŒÛÅùöè­ÓïÎÿõÚí­÷–I)á›óõÑۏ9?9‹bÚ
    ‹ÿð,ڄ÷hûtòíôãI´kÉ<—¢ØÏN¿œ}ͧB3¥­Œ§-epp¶[,eüÅ­]\
+Ž:Îîñ¡6É¡øÐýÐU··Íî:ï½ó¥$Wio'Ó'ç7uò–qSö^×÷Í*Ùe€…A{×ܧՎÁ–­u—l‚qé
Ú®ºj[?$¯³†—µm÷=-Gœ-‹šÍ&Y=S¦ú2…˜9d  gòÈ1%”*ŸöCÕ
õ:¤˜äFí.9ÿ3Z<ãŠËñšéXͬ”ÕûdãÌŠõÃM³Â(YkÊ]nò†p„,î4}´À€ö³*ù:‹‹)„–£¸¢õ&m©
 
ýN˜ÅRädc-ÓJè’Ö#^WåžÕn×ÔÃrº+ß+wø¹¶ôùÅۚ]'address@hidden|¹ÆíæîºÙ¥°pðìÛjW]×ÝÅ»D
 
†1%”UWãõ¬!Ì÷CÛaxžÜÎ{*ñ”Û`„´gάbÂў71Èr}Æ(-gq¡¦¸X*嘷r#˜÷qîÕË8`¨âQý/{
…8ҊïäK82bTœy¨³¬äPÆLV Á5s^/–
+À!‹1‘Ž–+‚{Ù5Š‡tÓ Hˆmˆä^JͤN?gÇ­2t—6K      ˆ¥´êéµåÊBЗûÒÚ́Ÿû·ÏQ
+0P‚€” v·I•’M,¼©P&” 
q»ÏnMù[çC„QÊ=}nwÙת¥p®¸Ø^!†ƒÅö<-#»ºZÿD:address@hidden/Û+íÊÝú6«˜”–²Úî0‚f¼/òd(ƒGz³©ûŸýPobÀ%K±»ÛõLk‰—ÏåÇO’¼ªvÈÇ©Bÿãƒr
…HÜpóªÈ4Eîªk·¸àeÌJ?â 
[¯›þ;ûrM·:½BˆhEÚ°ËEtÛ[cÿ¿c(address@hidden;Š-|‹æ–rXBfAHg”?vú±ò§]P–êô܉%ë±dPJY¿Ûuußn‚ö‡¼F±Q㍟OEÄ'Iru]5;¬Ã±6šHDz¶}BDG÷(ùU©ï#ñcs
    _j7bšˆO:ø¦ëĎÐÔ&
      q$÷U® QbÄAÔ!ïrðå½t³°²…­b>ßÍm+øKÛⵄ¦Nqݎý­ë)á´ ´CåPÜÙ€…ñlHø€2Î
UÅ,¦ÀÐ:EZ5’ZŒHüՒ#ÇÒxÛµ§‰:«ºïçkn•4±ë߯¹ò°æ~¡€Ç™BöÿÙsP|½b^‡ií=¦ 
fƍcËn‰&ZjÐ2N´¼vq“S^GUü…
1ÁpJꦭÖ>¥™¢d`Ôo9­â0•äÆæÊëâúépxàEÄÐFL&›'+MÌ­~îü§´¡4ãj"#a‚'œh¼G£ 
_I£à_C#I\ÖU›¾Ž:8Ò¡v›]ôÈþ*
R Œ‡–Ž Ï
Ü÷=*œ—|¿Üìljz©áláí暔)éU{Åñò®ÇÎŽs/$)úh0Œ[áÅb   
,0e0÷XV&address@hidden'¨Ózn¸èZ¸=mçÊñÒúØN{8S”G        9sæÓ9u‚SñžÍÆ3P_ZhÒ 
;ž¯fο=ìªAœYjoñô%tBÇÇ   ­TúžÙ³é+Œ#8<Þ 
™kÈ/3³\­©Òd!Açé֌¿0ÝcAãV”ã.Èȃ¦''ð"ÉKh,Š?쌫v­P=o¨
š´oëÞáÞ_Wõ®êš¶Ÿ­cem
®Õe—¹ÙñtQ°ÙãŽbrrÂk<u™!qF÷cã3Oî#å'•î´ÌP*зU†©›´G}âbrGÆ>³Øcÿ€™ãdVž"€ŠãSÄølԌÏf
address@hidden<+ÐãžÚÂôkæ¼,§àhuºìà§êûB-Ób.ˆÐ§r
+b53;v ›M{(«¥[—–¼»–j̅+7ùÜ\ßu%e:ÊGЊ‹w¿GûÉùâï£ø÷C D9endstream
+endobj
+399 0 obj
+1850
+endobj
+402 0 obj
+<</Length 403 0 R/Filter /FlateDecode>>
+stream
+xœµZKÜ6¾÷¯Ð-v€aX|3·Äö²Il°‡M“éžLï¶Üv§m'ÿ>ÅW‘-id#Á‡q—ŠÅ¯øÕK÷gÐñð/ÿ½í7ï7ï;ˆ²òç¶ï¾¿Þ|óZÙÎ3o„QÝõÝ&-T2̋ÎJøé®ûÍÇ<{zý¿
ÔºÞnž¼yöâÇï^¿üéM¸ôÍkp­1        œiȚV•×Ý«Í+„Üj&:Å
eªëËo©ð÷a£”÷¿³þas¿ùO÷v#™µ^uŸ÷·À¬î¤3h
+:¥%ÓÂu‚+ΜëN»Í›…öÆ­<“Ðik-ÓmÄq˜D-Éq!Z       €dÆã*/˜…
V'ۉ~}=tLHáw´®'W«¥¥<§s€¬ŸC?ö™ü¹ûºú²”ÍûżœÅEÛÆ+¦‚*1*Ñ%Þ0LP(±È¹¼ÐIv¦y$Öòº¾2K––æqˆ¬ŸE?ö¹øÓò¸”Íåx”^æ]YERãÈ)Üo%ÿ'M}Eg6¥ø.òуfJ¬™dýú±ÏÓù¸ÍyÄb¶ÍÇ*)q$’̵‘%µ“L¶ÑWufó±°FùHÌ®–Cdý,ú±ÏSù¸”Íy,ÝPà`\Û6cœ,šº^%¥¡™»PIf>ÓÓ²¦;;address@hidden)address@hidden
+—1¹B5iÙVSîX[HP*€4*ÙÊgji^×ÔR²´Z-mü{ýÈcrg²”>Îä
+*"Iٞ«*ÈÓA&•yKÝ$©´®ÆáY?‡~äñ$‡™\¾ª'Ö6ÝP«oï{I®ÿÊh*D«“ì̷ò®öÃji­†Øzø0ú±Ïş©ŽøX›Ë·ÄIhÿ\ÏIn
jҙã±ÔφÇ\cWäq€¬ŸE?öy’Ç…
l.ß•6ØsEÓ•–œIßÔôF’ÒJ‡ÇZ­N²3ß˺Ú«¥µ:cëáÃèÇ>¦Zãcm.ß+¢*)û—ºÞJR3¨¨«Î,¥ŠTiWãqˆ¬ŸE?öyŠÇ¥l.Ç£
+=—ÛN6ã07+С+çßú-¬LõB°:챡“
ҙâÖ)‰EܪXâ:Ô¤å9"ë'яºÓR¸É–Çά¤O·>*Üá(M’C•H#Ós#%4Æ"ÂKá5áÚ!I˺ÌYßXJ¼®ÀâY?‰~ìáП²¹
 
R%ÎŠÔ«Aá{H`C=pQ€u‘£Y‡:J²ҙËÅòº¦±´Ò³F²=–äUË3=DßOz8:„¡Ë-Ñ™\>_+Ï%Î*Ñ$¡ýKtVÐdg–i8ïÕ0M#]Ø£±=–¬Æô}?éáø†>Oåôcm®é™ŠÆðŠ^hJ\ʤš4^zt“ËÏ(åú8«4|z¡ôß'!qÆúµãÝv#•¶ZèÐ\€ã¦T'Tx¨\–$U<ŜÙ×Æ0K¾ž¥1PJlu¦
%—i|¡¦‘ä1H‚cV]è$;Üpg¿Êºf0$K«
†‡£û\ü™
i3„.xg™—Äu‰¡ÞŃ÷¶í[,’Ð;+ðàQ½XϜm^t•Ù7`Þ'¶oþŠ£ë½ùëg°ü|í·ˆÁH2`’Ói‰3¸É„.:address@hidden:Ó]/¯ƒxš¥ª¥x^+ÄÊY?‰~äàН‹hYÆäýDïîxˆ»Ò<è—ÍNcÅ‚‹#ïô?l>œ;&q\æÂc¸šŽEŽxØwj}nG‹’Ú͐Rl5UœÂ¹î˜×Õi]óX`(›~x0Üqº“çtf¤`ȒCž
+ÕIªÏ%9Ÿ-Ç=T»Ž$MâçÁ¤"(’ŠÝL›ÿŠ¬yÁÐj[9Mš"[Þ£
^ù†U~ßÆu‡[ŽÖÛÜ­/™vñ7ˆß·!2k„02~»&â•ðôY:Ñ]…
ã°VÆK2^âX«p~ƒ(3!KƯ²èJ†ÇœØã5¯íp?Ξ~…âŸîá¦J |•‡ “‹ÛÄÐØ {…
;ˈúbK7Qf/³~ørÀ`ȅk á´­ôY`‘N¸¤/.¥ïÓÎO8á$Â:_J熡É"¿ùøŠçW
îíö.î‚wÌ#™ºÿpÚÆ2TïÑZˆúëõñxî¾ÿðGën8±ç§ýÇÝ)âÂ趘Hí>??{YUMÅtŒ–+¼W^¦˜xùüÅ¥VLfÑL{6?¾|v©TöŠE0íøÿ#D
p吞ï>Þ)r/<Þ*D¨!‚ñÚ§ãé¼;âàÝý_ô»>Dyå˜×.Ñ·ûó,â
+̍·)aÉvûétóî]„E_l>”`—ß|> •Ü‡·1!½þµÿýÃi©
+÷:address@hidden/Hßî>e=Ïh&ú洍bûaËÊ⛴æ‹_Bo»û¸¿r
å|A°¤b¸kE¶»óîö¼‹A„eHpY´yr“Gsc       Û9
+qpQ®hF\K㰜EÇÓÿ£‰$¼E~yqa׬©ò[䣚þ™Ç¡ˆÓ©œïwÙb³3Æj4‡1bdqétLnbY÷ñœ²sÔð”½.ÅÒo9?Î{²¨o1X£Ô¢a¼ÍKÒ݉U"¯.„`±Up
…Úú¸ÂÛZCgüeŠ¼£Äٿݟ÷7ç]428?<C58ááx³Ý¿ý=j#        ˆÃ»lÜïç,ÜO'¢hC[ñ 
‘S•B.R¸;žr(c³m•ôœxâáQ×åR&ùÁšï´_mþ—V­endstream
+endobj
+403 0 obj
+2248
+endobj
+408 0 obj
+<</Length 409 0 R/Filter /FlateDecode>>
+stream
+xœÅYËnÛXÝý¬ 
;ïǪ‘Ž=AÆc4²ð†–(‰c‰rH:ÿýÔ}Õ%%ZV’nLgÑÀ5É[S§N•¾ÌHAgÄý‹ÿŸoϾœ}™Q–þ7ßÎ~»=û冚™-¬bJÌn—gá:£ŠÊÌ4WQ³ÛíÙ¹VïnÿÏ=zÞ¨‚1ïÜ.ÎÎ?üãý§Û«÷
 ä…ÐTÅ?˜ÂQ     gÄij˫?®?\¹sÁ
+CMç7×\Ýü;Ü6¶î‚Y°à‚i8õÓðiVhŠŸ¾]WîÑ‚©ãá§×ñPnãáoO?o™N‡—mýÕÔ̪ô~ÕƋ„22ž-ª¾š÷þ\JÈdAéŽlAÝñh]¶‹g™*¬ÆËÊÖÛJuÁ¤UøݯõܟsZay<address@hidden'>iYò½ªšøIk’C›]¹¨Ñ!°2yÿ^'œ
 ˆª>Å0|ÿº÷g¤°²ªšª-ûÊÛ%8ܦÓãe°Î(ºZ7]ÕúÏ8ðp“"U}
¡Š§×ƒ 
Å0ýþM]P+1ÉãȋaäMa‘¯“õDËäfW5‹.ÂÁ(–¬éw1ô,_½kDŒ³1]~w^n6¿Þ½óIaVJSÌJ[­ê®¯Úr!
++)?æZH-åFb›"h«’»±Ö –`­ÕMáƦÁœe‰ Ö
+«5€)ÚúøUUHñ]™‚™Z—ÍbṔ„¬fcTV©é£Í®ÇÃtvçLå×螬¬°ZóÜ/à3P—
ž6E`6v”ÙhŽöMŒ41Ó§—    &“7§’cÈm5¯Â³
\ˆäP€à¤5f?àÔ÷åOž¥LFvõª)7>address@hidden,8bÝÅ3í%Ú¸jK´Ò€›]W¶/!‰\Ðf˜Ä~]ဪ÷<6Ž¶øۙáÀ™¡›Ó2á
¸ÙÁ;´!œDxg£ ïb$2ڂk<AŽçS”{x
+pO$iþv3銘"Jxº,ú‡°ºl&address@hidden)'ŒÛ>­Ò\ðþ/eì|K:aó´
+üåZ•âɏeS®Bô-æóîüÓïïޅ
*f0m¨¯bà§Ë8\Í¡'äZ]ÍÉäÕ¤0zïjÿh¨¬>º‡TéV#B/CýA"•Ä²(Q£N‰¡Š*×¾c£ûèRà2&ਢ 
.U)Ð÷u«¢`¹8ìFíñ‰W¾šðÒTÏÑQ™ù0¨§ 
Ƥ&address@hidden>]$ëf£±Ø–ÛêËSÕõñZ!™½]Œq¦×ÿö,Za ÒâéO@/ ¶= 
ªøØ¢"ÌÍϑ_éÍj¼ñò©fC_3èþcpŽ˜¦–]ßõmùø¿"($&O?•ù#ÏuäȊÍ=ܱ_Òæ6sß8Ê"·áûd1jí—p=ӄ¦ú¬û®Ú,‹¤!þáTû³Ü¸ˆU™©´lçñj$±u¬,address@hidden<À­Ú§û¨i
 VØP5Ba#šáQh~²‘ŒÔɌ ź¨ù¸æy`ªÂÌåۜ8
–b
+JîÃJÍM•f`&6ªìIt8š%tQËtxw~¿ÙÅOpƒññø€–
+ę<~ˆPʳˆ„r±h!>qPpgÃ|¨£ùðÔY<»òõöÁÛ©yJ*Þ
ãáØL¼ÂÃoàuPj0Å[|4¸âg`q"/Ã$K&xÙ¨1Äçà–îš—H7VàäµlwÛ
+Æ°4FJKŒÿ€•-?
Ç 
øŒÕ{ýx4N¶–ëË+L[fÖWDd,PnÊGÝQOâý²ò©ÄЬ«yt+ON‘ñ½\ÆÔËXmW±ç•›sÑ+—¼Ür¶§çá,–
+<ºK²Tàòɺ€ÌáÜfJ˜;’rì˨Š%.Îîq“#mˆu€XÙm·Ðˆ~öAq  ¤ûx¹“pébr¹ý 
G‡ãX‰šI`ƒjt‚ó4væ'x‚ÚÙOØø®º{ˆè2ªbD7æ݌4\30ô[`>4·­ú§¶I‹9Aùñð”}™
+€ÂÔ`
+·¿Å…0dªIS sóS }æПU•nüüùs¤5\½ÔIv†|±­Wk
²S¨JóNdj£ž‚V—›e»kVið·9׿Á8bý}ø9QgûTå½d/£R£åuÜ0ºQ[éáÈb·Yʓ¤ª
ã<É´Á•jÐ$ƒ™f¾kn‘¬ú²n"³¸Q…TqQ6ïà6/(RȾiÌWôè.1ž%Ö{ÿ›Œ
1s¡qXj˦[ºí_Jö`ŒˆÉS5ìUjTÐÖè`,ù¦Bú>žQ#åØHã4…1ëQ¢tÂöcú›˜ûÿë
(3:âCÊ&¼yß=DB$TŸ2"
]œçÐ+ú$y¹b㷇SÚä<%¤Œ       ·òÝc™ælªÀ§áö’òÈ.0 Ú$.0&ù®í«MRº›ÐL£ 
0ñã[wî9›bÂç7¬f­~ww>F~ðc‡†¦‚±áŠŒ
ÿ[¡êì0Yò¯(ª?Ûl¡Üºrp5a÷§ß?F§
6P\ÿÒ,÷~%çó:&ênBS(ÚËUµ,Ÿ6¾™
+^(Žípøƒ‚"Ç
lZf¹ñúp9ÎsãÏqÑù7Ë7˜FçeÚ8‚&ÿa€Xfäݠ֜^ß´ÍI9'"Mêx¼9ðê:Ô4Ì]Dc_› «ö©‰‚™K\Iä®Ì    
våýŸµÈ?Õåï+|Fc€”ûYYŽ¦"L
+u°tÝÅOZºmË8ɳ۶ÚîâFÀÅc6œÝ†ElþtÆ}\ǪÑù§Ü—n–‰NJLÚw8 A£‘q=Û  
Þ2Bæ-å«T4°Ä]†–8Ht)žn;2‡M餦ÅSl0J5dh6%{•ÛÕ§ÏlËÇTgŒü 
jÜoú“K+AN]Zi2½´™Z'ÞÅn #³†\QÞ뾉C(KŽÊÚýÊv ¬ý‡÷zÝà.§Ã 
ã5—}Ô¯ngÿ:sÿþéþ\úendstream
+endobj
+409 0 obj
+2464
+endobj
+412 0 obj
+<</Length 413 0 R/Filter /FlateDecode>>
+stream
+xœµYKsG¾«ò#öTi˜ž÷ä TQ•à* ÅZÛJ´heøûùæ¹»Ò"’Š°–zgzºûûú1ë
gÔðð›ÿ^w‹‹
EYùsÝ5Ï®Oß(Ûxæ0ª¹ºY¤
„E†yÑXi7ÍU·xä˜g¯þZÉH‘Áª«õâÑÛç?þòÛW¿¾
ž¾!7V&‰3My¥µaɏWÍëÅk˜CÜZfKŽ3Ñtå»â*|ß.”òsßóúíân!¹ÁGÝC–Y       
U¢-¬PX%Ik&ÍXÂñÉZH¼cNŽ×d=Q·Qp|ÐÔ
’ºJjÍó‘Ž3-Ǻ˚zþÝâݓæ~¡˜
+¦~FÄ7؈8›º/zâ™ñ#Mo/µw8<ydYwÎúSŸ«?7OF¾\JéÜ=†¥;Ý)àU;¼”ª»‹¡ 4        &ä(PURO
+ŸHL$^0K#«ëšóü"/5svD0¡9T¹oH°cÓºsæŸ:=O°K)
H’4¨iÀWpÑhƒz-Á
Ô½}{±x±Ä$DLé ÃHÉô Ù"äŒ-˜
+O¡o=uÍ<Ôy£öä˜Vñ¸¬*øyyœíêfm?õï؛    ΗR:ÆY¯új42Ã)A]Òáh
ig™Ô—¤ƒ°*qlj<2Øq–Z%ۑ»)DXg˜ALÛ()zʚY:ԍٱn¤*°Ï‹Ì?2­›3ÆÅc‡¦™!¥cF(      
x?ˈsk.T 
<Z¤’r˜^$U"D`8üˆ>ª‘„¼ÒÌkH`¤Éš¤gÜgʾn$)«JuKRMé®kÊùól+AË»ÚyUߪό\<cþ©ÓÅ¡Ù>ó•¶ãҝÅîñ¢^JÕå™2$å´2ߍ$y*¬Ö
¡+ãüàí 
)«Ê6’äÑn¤»®üŸÂóÌ=7åߎ»Ç–ug­?õyDÑ~!¥q?‚¥;Ý)à£äº”ªhVFJbTk³Ðš÷©6ÿŽ‹¨RN7¡hݼ¯ŸÖ¦®(]ày§î®dŠÊ"%QÔÜ°ÈJÔcÞã~;q×è:U#‡O¦‘„qåïßÈtb)˜\À•d>ÝP˜Ã\®àov»Cóì¡i4ãÐ#–nèð!ܱ_ì7ŸÚ}xLPIØ>yÚÞ¬¶‡ðX‡H`Ššìþí§ŸÓVɸ5G[?­Â³¥ýíc
        w¹4yãóWé!\­ÅŸu2:>•ÌR5y:µX¡Ñ.-gÎH—^/|h¯7«m2™KEÁa `…›¼,›Çªyõ<‹º­
5K4}†ûðp½¾™¼Žø:ÓGoG¤Œ"2/7·û6h#¹.é¥Øõ}tùç0$éË䏑ڊ,Úå0ß³ìp5Ï]Þ·Ÿã[ŽAC»Š2á¡ûÁb£T––`CæŠ=Z‹ÂOõ‚

V“ReY„bÓ·ëè§gÜ©òèÃöávså¨q¢ZÛ­îW·éHCÄâ羚úm1x»[­³r˜ç¥Ïòïöý¥÷Kžˆ½Ö1W­dٶėÇ)ŠéoÛO9jÂ[C‘˜
…*$N–þV]QH{\;²üçäJ?÷¢kIp³4҃÷Œa2¯_·ûÃ*GN1á¬ù
+z}¦8VüØ2¤\ê!ðGa(y¼Û´ùÀ+ö}{ß·9
+†L9è°l-çÜEžP¨Ì¼¬ûTR“‹âfÔæ๔úß²       äÐBÙS6!­OØÔG2 Ök]”]¥T!•€bq   
ˆõPõB„½¥¯Ÿ’)‹&
+}ÿñhjóÇãL~m­¬qés¬-×æ8€ÜÔþ™‚eQyÝ4XVË
+çªOÐ)Æö¥0\<sÄõ¾]ڜˆ²b²Jñ²&x©#¡dèÙÀK>É2ǗBK\Rª¢ôRØ" •¯
+!q×(祄y¬WÅùQ£uèšðÛÍßy±V^O#%½”fêêÖýnߥ¬؊j>|)XáĔKÁSQ#3e:ë,‹ÈÍV><µò}Þl·¹%„2–=Ùö»J`t«!Âׇj!§Ê
<
ÍâC9
SÙºô&0™—H–¾âƕzàƒvó|8MÄ<Ì;Êúé»»¶´â•ÒÉtÚÉþˉ9œÊñ)¯– E¸ò‘Û”¢_S¹ù†:M 
ⴀ¢AيȾ½Ýô‡\oC¾kéêò¾ÝÆñA(dOM²œ ²0Ǟ[&n¼HÝ 
]º*üȼ*õZsÚÿ5Ÿ‹ä'address@hidden&hJÇlEc­±AÏXg¶Ê0œW²æµ˜ô|-ýæöô~Úµ}c¢KwV¯Ë7û]—ÿ³¤ë¶Ýá߬ۚɵ—ìnêãýI”IUç󈡦J€Š
}mÖì‚îOî5ɹpK5ߟòhùzñÄ°ëêendstream
+endobj
+413 0 obj
+1873
+endobj
+5 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/ExtGState 14 0 R
+/Font 15 0 R
+>>
+/Contents 6 0 R
+>>
+endobj
+19 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 22 0 R
+>>
+/Contents 20 0 R
+>>
+endobj
+26 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 41 0 R
+>>
+/Contents 27 0 R
+>>
+endobj
+42 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 48 0 R
+>>
+/Contents 43 0 R
+>>
+endobj
+49 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 52 0 R
+>>
+/Contents 50 0 R
+>>
+endobj
+53 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 56 0 R
+>>
+/Contents 54 0 R
+>>
+endobj
+60 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 69 0 R
+>>
+/Contents 61 0 R
+>>
+endobj
+70 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 73 0 R
+>>
+/Contents 71 0 R
+>>
+endobj
+74 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 80 0 R
+>>
+/Contents 75 0 R
+>>
+endobj
+81 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 84 0 R
+>>
+/Contents 82 0 R
+>>
+endobj
+85 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 91 0 R
+>>
+/Contents 86 0 R
+>>
+endobj
+92 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 110 0 R
+>>
+/Contents 93 0 R
+>>
+endobj
+111 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 117 0 R
+>>
+/Contents 112 0 R
+>>
+endobj
+118 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 121 0 R
+>>
+/Contents 119 0 R
+>>
+endobj
+122 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 125 0 R
+>>
+/Contents 123 0 R
+>>
+endobj
+126 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 129 0 R
+>>
+/Contents 127 0 R
+>>
+endobj
+130 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 136 0 R
+>>
+/Contents 131 0 R
+>>
+endobj
+137 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 140 0 R
+>>
+/Contents 138 0 R
+>>
+endobj
+141 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 144 0 R
+>>
+/Contents 142 0 R
+>>
+endobj
+145 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 151 0 R
+>>
+/Contents 146 0 R
+>>
+endobj
+152 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 155 0 R
+>>
+/Contents 153 0 R
+>>
+endobj
+156 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 159 0 R
+>>
+/Contents 157 0 R
+>>
+endobj
+160 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 163 0 R
+>>
+/Contents 161 0 R
+>>
+endobj
+164 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 167 0 R
+>>
+/Contents 165 0 R
+>>
+endobj
+168 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 171 0 R
+>>
+/Contents 169 0 R
+>>
+endobj
+172 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 175 0 R
+>>
+/Contents 173 0 R
+>>
+endobj
+176 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 179 0 R
+>>
+/Contents 177 0 R
+>>
+endobj
+180 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 183 0 R
+>>
+/Contents 181 0 R
+>>
+endobj
+184 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 187 0 R
+>>
+/Contents 185 0 R
+>>
+endobj
+188 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 191 0 R
+>>
+/Contents 189 0 R
+>>
+endobj
+192 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 195 0 R
+>>
+/Contents 193 0 R
+>>
+endobj
+196 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 199 0 R
+>>
+/Contents 197 0 R
+>>
+endobj
+200 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 203 0 R
+>>
+/Contents 201 0 R
+>>
+endobj
+204 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 207 0 R
+>>
+/Contents 205 0 R
+>>
+endobj
+208 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 214 0 R
+>>
+/Contents 209 0 R
+>>
+endobj
+215 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 218 0 R
+>>
+/Contents 216 0 R
+>>
+endobj
+219 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 222 0 R
+>>
+/Contents 220 0 R
+>>
+endobj
+223 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 226 0 R
+>>
+/Contents 224 0 R
+>>
+endobj
+227 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 230 0 R
+>>
+/Contents 228 0 R
+>>
+endobj
+231 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 234 0 R
+>>
+/Contents 232 0 R
+>>
+endobj
+235 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 238 0 R
+>>
+/Contents 236 0 R
+>>
+endobj
+239 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 242 0 R
+>>
+/Contents 240 0 R
+>>
+endobj
+243 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 246 0 R
+>>
+/Contents 244 0 R
+>>
+endobj
+247 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 250 0 R
+>>
+/Contents 248 0 R
+>>
+endobj
+251 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 254 0 R
+>>
+/Contents 252 0 R
+>>
+endobj
+255 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 258 0 R
+>>
+/Contents 256 0 R
+>>
+endobj
+259 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 262 0 R
+>>
+/Contents 260 0 R
+>>
+endobj
+263 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 266 0 R
+>>
+/Contents 264 0 R
+>>
+endobj
+267 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 270 0 R
+>>
+/Contents 268 0 R
+>>
+endobj
+271 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 274 0 R
+>>
+/Contents 272 0 R
+>>
+endobj
+275 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 278 0 R
+>>
+/Contents 276 0 R
+>>
+endobj
+279 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 282 0 R
+>>
+/Contents 280 0 R
+>>
+endobj
+283 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 286 0 R
+>>
+/Contents 284 0 R
+>>
+endobj
+287 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 290 0 R
+>>
+/Contents 288 0 R
+>>
+endobj
+291 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 294 0 R
+>>
+/Contents 292 0 R
+>>
+endobj
+295 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 298 0 R
+>>
+/Contents 296 0 R
+>>
+endobj
+299 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 302 0 R
+>>
+/Contents 300 0 R
+>>
+endobj
+303 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 306 0 R
+>>
+/Contents 304 0 R
+>>
+endobj
+307 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 310 0 R
+>>
+/Contents 308 0 R
+>>
+endobj
+311 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 314 0 R
+>>
+/Contents 312 0 R
+>>
+endobj
+315 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 321 0 R
+>>
+/Contents 316 0 R
+>>
+endobj
+322 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 325 0 R
+>>
+/Contents 323 0 R
+>>
+endobj
+326 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 329 0 R
+>>
+/Contents 327 0 R
+>>
+endobj
+330 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 333 0 R
+>>
+/Contents 331 0 R
+>>
+endobj
+334 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 337 0 R
+>>
+/Contents 335 0 R
+>>
+endobj
+338 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 341 0 R
+>>
+/Contents 339 0 R
+>>
+endobj
+342 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 345 0 R
+>>
+/Contents 343 0 R
+>>
+endobj
+346 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 349 0 R
+>>
+/Contents 347 0 R
+>>
+endobj
+350 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 353 0 R
+>>
+/Contents 351 0 R
+>>
+endobj
+354 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 357 0 R
+>>
+/Contents 355 0 R
+>>
+endobj
+358 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 361 0 R
+>>
+/Contents 359 0 R
+>>
+endobj
+362 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 365 0 R
+>>
+/Contents 363 0 R
+>>
+endobj
+366 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 369 0 R
+>>
+/Contents 367 0 R
+>>
+endobj
+370 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 373 0 R
+>>
+/Contents 371 0 R
+>>
+endobj
+374 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 377 0 R
+>>
+/Contents 375 0 R
+>>
+endobj
+378 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 381 0 R
+>>
+/Contents 379 0 R
+>>
+endobj
+382 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 385 0 R
+>>
+/Contents 383 0 R
+>>
+endobj
+386 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /ImageB /Text]
+/Font 392 0 R
+>>
+/Contents 387 0 R
+>>
+endobj
+393 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 396 0 R
+>>
+/Contents 394 0 R
+>>
+endobj
+397 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 400 0 R
+>>
+/Contents 398 0 R
+>>
+endobj
+401 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 406 0 R
+>>
+/Contents 402 0 R
+>>
+endobj
+407 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 410 0 R
+>>
+/Contents 408 0 R
+>>
+endobj
+411 0 obj
+<</Type/Page/MediaBox [0 0 612 792]
+/Rotate 0/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 414 0 R
+>>
+/Contents 412 0 R
+>>
+endobj
+3 0 obj
+<< /Type /Pages /Kids [
+5 0 R
+19 0 R
+26 0 R
+42 0 R
+49 0 R
+53 0 R
+60 0 R
+70 0 R
+74 0 R
+81 0 R
+85 0 R
+92 0 R
+111 0 R
+118 0 R
+122 0 R
+126 0 R
+130 0 R
+137 0 R
+141 0 R
+145 0 R
+152 0 R
+156 0 R
+160 0 R
+164 0 R
+168 0 R
+172 0 R
+176 0 R
+180 0 R
+184 0 R
+188 0 R
+192 0 R
+196 0 R
+200 0 R
+204 0 R
+208 0 R
+215 0 R
+219 0 R
+223 0 R
+227 0 R
+231 0 R
+235 0 R
+239 0 R
+243 0 R
+247 0 R
+251 0 R
+255 0 R
+259 0 R
+263 0 R
+267 0 R
+271 0 R
+275 0 R
+279 0 R
+283 0 R
+287 0 R
+291 0 R
+295 0 R
+299 0 R
+303 0 R
+307 0 R
+311 0 R
+315 0 R
+322 0 R
+326 0 R
+330 0 R
+334 0 R
+338 0 R
+342 0 R
+346 0 R
+350 0 R
+354 0 R
+358 0 R
+362 0 R
+366 0 R
+370 0 R
+374 0 R
+378 0 R
+382 0 R
+386 0 R
+393 0 R
+397 0 R
+401 0 R
+407 0 R
+411 0 R
+] /Count 83
+>>
+endobj
+1 0 obj
+<</Type /Catalog /Pages 3 0 R
+>>
+endobj
+4 0 obj
+<</Type/ExtGState/Name/R4/TR/Identity>>
+endobj
+14 0 obj
+<</R4
+4 0 R>>
+endobj
+15 0 obj
+<</R13
+13 0 R/R10
+10 0 R>>
+endobj
+22 0 obj
+<</R18
+18 0 R>>
+endobj
+41 0 obj
+<</R40
+40 0 R/R37
+37 0 R/R34
+34 0 R/R31
+31 0 R/R25
+25 0 R/R18
+18 0 R>>
+endobj
+48 0 obj
+<</R47
+47 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+52 0 obj
+<</R47
+47 0 R/R40
+40 0 R/R37
+37 0 R/R18
+18 0 R>>
+endobj
+56 0 obj
+<</R47
+47 0 R/R18
+18 0 R>>
+endobj
+69 0 obj
+<</R68
+68 0 R/R65
+65 0 R/R59
+59 0 R/R25
+25 0 R/R18
+18 0 R>>
+endobj
+73 0 obj
+<</R65
+65 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+80 0 obj
+<</R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+84 0 obj
+<</R47
+47 0 R/R18
+18 0 R>>
+endobj
+91 0 obj
+<</R90
+90 0 R/R68
+68 0 R/R59
+59 0 R/R40
+40 0 R/R37
+37 0 R/R34
+34 0 R/R25
+25 0 R/R18
+18 0 R>>
+endobj
+110 0 obj
+<</R103
+103 0 R/R100
+100 0 R/R97
+97 0 R/R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R40
+40 0 R/R37
+37 0 R/R34
+34 0 R/R109
+109 0 R/R106
+106 0 R/R18
+18 0 R>>
+endobj
+117 0 obj
+<</R103
+103 0 R/R100
+100 0 R/R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R40
+40 0 R/R37
+37 0 R/R34
+34 0 R/R116
+116 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+121 0 obj
+<</R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R40
+40 0 R/R37
+37 0 R/R34
+34 0 R/R109
+109 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+125 0 obj
+<</R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R40
+40 0 R/R37
+37 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+129 0 obj
+<</R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+136 0 obj
+<</R79
+79 0 R/R59
+59 0 R/R135
+135 0 R/R25
+25 0 R/R18
+18 0 R>>
+endobj
+140 0 obj
+<</R79
+79 0 R/R47
+47 0 R/R135
+135 0 R/R18
+18 0 R>>
+endobj
+144 0 obj
+<</R79
+79 0 R/R68
+68 0 R/R65
+65 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+151 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R47
+47 0 R/R150
+150 0 R/R34
+34 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+155 0 obj
+<</R79
+79 0 R/R47
+47 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+159 0 obj
+<</R79
+79 0 R/R47
+47 0 R/R31
+31 0 R/R109
+109 0 R/R18
+18 0 R>>
+endobj
+163 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+167 0 obj
+<</R100
+100 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R109
+109 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+171 0 obj
+<</R100
+100 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+175 0 obj
+<</R100
+100 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+179 0 obj
+<</R100
+100 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+183 0 obj
+<</R100
+100 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+187 0 obj
+<</R100
+100 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+191 0 obj
+<</R100
+100 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+195 0 obj
+<</R100
+100 0 R/R90
+90 0 R/R79
+79 0 R/R65
+65 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+199 0 obj
+<</R79
+79 0 R/R68
+68 0 R/R65
+65 0 R/R47
+47 0 R/R135
+135 0 R/R34
+34 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+203 0 obj
+<</R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+207 0 obj
+<</R79
+79 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+214 0 obj
+<</R79
+79 0 R/R59
+59 0 R/R213
+213 0 R/R34
+34 0 R/R31
+31 0 R/R25
+25 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+218 0 obj
+<</R79
+79 0 R/R47
+47 0 R/R34
+34 0 R/R135
+135 0 R/R31
+31 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+222 0 obj
+<</R103
+103 0 R/R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R34
+34 0 R/R135
+135 0 R/R18
+18 0 R>>
+endobj
+226 0 obj
+<</R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+230 0 obj
+<</R68
+68 0 R/R65
+65 0 R/R59
+59 0 R/R25
+25 0 R/R18
+18 0 R>>
+endobj
+234 0 obj
+<</R103
+103 0 R/R90
+90 0 R/R79
+79 0 R/R47
+47 0 R/R40
+40 0 R/R18
+18 0 R>>
+endobj
+238 0 obj
+<</R90
+90 0 R/R68
+68 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+242 0 obj
+<</R47
+47 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+246 0 obj
+<</R90
+90 0 R/R68
+68 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+250 0 obj
+<</R90
+90 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+254 0 obj
+<</R68
+68 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+258 0 obj
+<</R90
+90 0 R/R47
+47 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+262 0 obj
+<</R65
+65 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R31
+31 0 R/R109
+109 0 R/R18
+18 0 R>>
+endobj
+266 0 obj
+<</R47
+47 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+270 0 obj
+<</R65
+65 0 R/R47
+47 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+274 0 obj
+<</R90
+90 0 R/R68
+68 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+278 0 obj
+<</R47
+47 0 R/R18
+18 0 R>>
+endobj
+282 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+286 0 obj
+<</R90
+90 0 R/R68
+68 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+290 0 obj
+<</R90
+90 0 R/R68
+68 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+294 0 obj
+<</R90
+90 0 R/R47
+47 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+298 0 obj
+<</R47
+47 0 R/R18
+18 0 R>>
+endobj
+302 0 obj
+<</R68
+68 0 R/R59
+59 0 R/R34
+34 0 R/R31
+31 0 R/R25
+25 0 R/R18
+18 0 R>>
+endobj
+306 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+310 0 obj
+<</R100
+100 0 R/R79
+79 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+314 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R37
+37 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+321 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R320
+320 0 R/R47
+47 0 R/R34
+34 0 R/R106
+106 0 R/R18
+18 0 R>>
+endobj
+325 0 obj
+<</R47
+47 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+329 0 obj
+<</R79
+79 0 R/R47
+47 0 R/R34
+34 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+333 0 obj
+<</R68
+68 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+337 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+341 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R/R106
+106 0 R>>
+endobj
+345 0 obj
+<</R79
+79 0 R/R47
+47 0 R/R34
+34 0 R/R18
+18 0 R>>
+endobj
+349 0 obj
+<</R47
+47 0 R/R18
+18 0 R>>
+endobj
+353 0 obj
+<</R59
+59 0 R/R25
+25 0 R/R18
+18 0 R>>
+endobj
+357 0 obj
+<</R47
+47 0 R/R18
+18 0 R>>
+endobj
+361 0 obj
+<</R68
+68 0 R/R59
+59 0 R/R40
+40 0 R/R37
+37 0 R/R109
+109 0 R/R25
+25 0 R/R18
+18 0 R>>
+endobj
+365 0 obj
+<</R90
+90 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+369 0 obj
+<</R103
+103 0 R/R90
+90 0 R/R79
+79 0 R/R68
+68 0 R/R47
+47 0 R/R40
+40 0 R/R109
+109 0 R/R18
+18 0 R>>
+endobj
+373 0 obj
+<</R90
+90 0 R/R47
+47 0 R/R109
+109 0 R/R18
+18 0 R>>
+endobj
+377 0 obj
+<</R90
+90 0 R/R68
+68 0 R/R47
+47 0 R/R109
+109 0 R/R18
+18 0 R>>
+endobj
+381 0 obj
+<</R90
+90 0 R/R47
+47 0 R/R109
+109 0 R/R18
+18 0 R>>
+endobj
+385 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R68
+68 0 R/R65
+65 0 R/R47
+47 0 R/R109
+109 0 R/R18
+18 0 R>>
+endobj
+392 0 obj
+<</R90
+90 0 R/R79
+79 0 R/R68
+68 0 R/R391
+391 0 R/R47
+47 0 R/R40
+40 0 R/R37
+37 0 R/R31
+31 0 R/R109
+109 0 R/R18
+18 0 R>>
+endobj
+396 0 obj
+<</R90
+90 0 R/R47
+47 0 R/R31
+31 0 R/R18
+18 0 R>>
+endobj
+400 0 obj
+<</R90
+90 0 R/R68
+68 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+406 0 obj
+<</R405
+405 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+410 0 obj
+<</R47
+47 0 R/R18
+18 0 R>>
+endobj
+414 0 obj
+<</R90
+90 0 R/R405
+405 0 R/R47
+47 0 R/R18
+18 0 R>>
+endobj
+9 0 obj
+<</Type/FontDescriptor/FontName/PUMPYN+CMR17/FontBBox[11 -204 796 699]/Flags 4
+/Ascent 699
+/CapHeight 699
+/Descent -204
+/ItalicAngle 0
+/StemV 119
+/MissingWidth 301
+/CharSet(/four/G/H/L/M/N/P/U/c/d/e/g/h/i/k/l/n/o/r/t/u)
+/FontFile3 8 0 R>>
+endobj
+8 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 415 0 R>>stream
+xœ­•{T×ÇgXÙ;Š_c4š™µÕQA«G£IôŸ(E4*>€u(°,.„‡<w~»¼XÇ(A       ¨       
⋔XDÚ£I£6Fk«mÓ;›KkÓòWÏïœ9gæÜ;¿ûûþ¾¿Ïe™A.
˲ÃüÖûúmZ3ÍÛ×Ö<ç2U&º(¯«ŠI£É±ÖõèÄ!©£°a$öy{`T,ë³j³·>ÚfÔ¸{{hf͟?O³8R®
ŽÒøÃt‘ÁFú¡Y§×†ëŒ&OÍ∍¿sÇn¿n·.&N·ãyRo}dt¬Q£ñÕïÐÅD1
ïŽÒҗ5:¿˜Ð°eÆðå±»ÖGÌa˜ÌZf    ãÉø1K/Ƈ™Å¬c–3+wf=³’ñ`60«™¹Œ/Ã3cim
b62Ýì›ì—).ûUU)ªƒV»Nrµ«g«?P_A¿AŸqzîþà_6>cgÜ1ü™Ë¢tƒìp“Ù[—UÊqœÏ›ÔiîId
address@hiddenmKÁ „¢áÏØ}¥Yє±W:ðŽ•2_àÛSï!Ñ&
address@hidden"©Gº¬ÌU‚ÕX[A¦Ñ5fNF«²r‹8}w¾û‹ë…
+’6ÐJš·x{tšW]½ngᾦÂOñ_ù=„é«ÓJ
+êrŽ^]vvá¤Y´¶ñßÏ|ŠGÔcTœ+大KRR–hXàܪ…ØO¿~®óøń€*úg•¿óB¢JEú­
+ë^|F©d‰ŽŒ1¨{E(F1°åmz¼jkÔÒhjçñކSµ¢rƂpò?Gæ¦Z3
+a|!Xósm8Õ1vœ¥çku¯zè õ,ÔÑ8}R 
MTŽ¡¶bèd2Ł$e$’ˆž;ãh¹ŸÛSÒìʜ2g±u—TŠ7ÞÉã1ž!,a=§ÒG=˜†YÌ>x„G  d      
address@hidden/ eå…
\ZÜ÷™dyõ×ãoZ/ä‰ï!<¬ÐUF~{óO‹ÊhCÏU"MÑÆøðÈðÌà¢~YŠ×ፘÛ'Ÿl2„V‹%q
&šÓ¥Åï'¹_«Tá`Çl>½X²Ð]d´¡BÝaddress@hidden
r*Då3T§n       
22šƒ!†F0f¾[bÄ-ê÷Rl)^ò\ßtjã‘8™ÏÍ+ظ§ëïõ¤yoWÈ؇Ó~ÀƒZ8àL–.™“³„ØeáïCÕD·F´C'œâ,¥|address@hidden
+oÆ×y<Gùï¿~øÐë.yU$}þê2Tgí€zP×o3®áqj°æ5Oèþ¦ÅoÍܾœwÎEˆ¦éÅ<¶ctE…
ßÄ)ü£÷oHÙĦvW¤–î«*8txWeø¢‹ÃRE      ³jÂý×)=I'¯Ú{=êL“÷š‘•ã­­÷˱¾‹…
æ¢jØyºY…Ux9_‘xäƒfྼÒuGNkŽ¬}tÂV
¹yÙYÒÞ,ØÃ%í-)-´•T$Vî҆%ôBäÁPÛ.àÞYæû–ÿ‘P[ªFѓ      
›®!îý¤-lâ¼nÀjìòçöx"q‡…Æ°d
+yq‡à(AUE÷]"?0SYIwïaâãéc¶(“¿óS}:Î՗×U•‰µå6Úî6Vƒg€Ï†©âK 
szÿç,›¯]±3Y0V·~™zþo0s¹áݽGƉ²â!³pSYzYå`q 
,'¯‹w·y=DƒÞµè,œá#ôkJ¨¸2voÄdòîU¼ŸÆ‚/þ„]o{±B°&ƒ¹¸b°ÚEœŠì’%#K’’Ó…
íó6w­m\ãÉ"âE¦‘Œ§“xÉW_Ö]¨ËCééÜäY,öV¢Ìd<¿’ý¶vž¦¸óX#
ö5©Í“ÃfÍ5s{¾%
(È Ìu6\¼.\0­C>Ñ[ƒ£´•†?cµ#¨°nMøõÛԔ*ì¥ôðU¦
+cl‚ÉkO¨®ª°Wd0ù5åÌùŸùïc:è5p¢wÔýÌù¢¢F}ÔÀÝ2nq^e¸Þf…ï¥'Š2o p‹€
/Ý[$›´ãl4ÀŠ‡×àvR3Њ~€¾Þç |Jù‰ž+Ѽmï-žŸþÉßFd˜ÓHÍp,ZŽ XA²¾$©Öp
¾#×
+pO5vëÇ*þщª{Ÿ<qҲ鹒ûq9/Y3ó!¬WWTxátcžl¡Ç¡t¢·Çfiœž’)ÚYà~ɖrññ     
address@hidden/¸*IèzÙI×֗½ì‚º?oØÔ°ùÈÆñûL¶!‰3™²“ûd‡&address@hidden<ymÎÜé·lÑ»NguÁQN7`?F#2³o`½Ç?”è|{~ÝK,address@hidden
        address@hidden
4ÎÂaú‹´Ôlk?•§ …ç{x’†ï)s,*#Uû°¾PM‚Š<¤ÃM2Ȥ:¸Ì6thGÉÐaóoFù¦
+endstream
+endobj
+415 0 obj
+2090
+endobj
+17 0 obj
+<</Type/FontDescriptor/FontName/YZVPJL+CMR10/FontBBox[-40 -250 1009 750]/Flags 
4
+/Ascent 750
+/CapHeight 750
+/Descent -250
+/ItalicAngle 0
+/StemV 151
+/MissingWidth 333
+/CharSet(/ff/fi/fl/ffi/exclam/quotedblright/quoteright/parenleft/parenright/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/questiondown/question/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/tilde/dieresis)
+/FontFile3 16 0 R>>
+endobj
+16 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 416 0 R>>stream
address@hidden #Z轓„€Ð        ŘjÜîM¸Ûr‘UŽ$÷^$¹[6¶Á˜z 
/@H„ڗðî˜ë—üw,C’ÿåå½õ¾ÏZËkIžÑ½÷œ½÷ÙçŒET÷n”H$ê½eëƵ+V_´zýÔ)ÂCùÁ"~H7þ
±'6¼P¶§Ø4
÷Ԗ_ÚöE“ûQb‘hÉÊ­‹BBcÂwøúE³hìЩsçÎêä¾ÃÓ=xèj÷H?ï 
÷Hò&p¨cˆçïȘIC‡®îˆºÞ;Â;|§·W碋B‚Bå‘ÞáCW‡xy‡S”bÓ*‡˜`ÏÍ«ƆxmyQ¨÷Ö5‹Ã|Ö¾î»nI„ßú¥‘;—Éý7,ßà´"*Ð}ãÊè
 M3‡o›5¾×ì    ÃzoŸ31nî¤wߚüö”©ÓF':O3Æؤø×úØ4‰z6SA-TðnÑk§¨TŠšH
§¶Rk¨ÅÔ\j5‚ÚF­¥Þ£Þ¢&S#©uÔêmj
+õ&address@hidden('j5ƒKm¤VR3©qÔ&j5‹Om¦VS©ÙÔjõ>µˆšC
 ¢¨w¨T/*ˆ²£zSݨ`ê]ʞêC…Pƒ¨¾T5˜êG
¡úS¶””b¨$jõ:ՃJ±TO²Q¨§è5j3ÉESÛ©»¢¨nânžâ±â“Ýw/·éfc
”ÒýèB3™Æzä÷øµg`Ï[¯­ê5­×ÃޛúÐ}ô}Wõý¶ßŒ~ý—öÿÚv¡mô
iˆôÁëÊ×ÿÁº8`À'ÝìúÙ]¶/4tÐWƒ5Cz;¤í
ñ»8)çÈÊfʜd·ehh¯¡eCs;¬uxßá0üʈE#t#>¹jäã7—¼ùѨ££ö:?Z?Fý«hµÓÚ>í6`AžFž³ˆžÝGwªÄüu”φKo&àþx10s%ΚìF_Oo¸F‹ÄW=<À恟
  ¬¤¯ê¾²ŽJÚW£x—‹äË$}ÚSÈ·n±ðˍ"hwóÃÛW±é…
šì8ˆµ2={v|c³Ù3ÞIËÒº}úf°À1Mƒ–±Ð[«ª
º<^v
´A 9Ž'êTz%¨ìƒ!”¤›
—`7샃Ú6
address@hidden>E6øš
address@hidden'ÂZ;,FfUž&2ì«[ œ³ÐaÚåšXO]žÜð”C‘×!²KOLðW&Ê7„,Y     é      
Ñe–Œ3”0ÕÑ%‘QòÄ —6ß#çöž:Uɑ]7LoÓ&7Û^;·ê"ò¾8Pڈº¡',6Ñ.
+XFؤ;ª¯j‘]BD–)à€­¢ºüáùsùNë9œð/®ÜDΠ­g#
wÁ؜Pêo\ÁÙ-d5#½ò3‡)léK9i[e}~;®¨BZªDpmz$F˜Àz¨•AÈ„•EÕVKë?¿ç]Ü2¦p?üú÷cƒ5
 ^yyÉ NѨ”.xҊ$`6N߇f¢Ù7ێçžÓú6É:QÐ."±o_/æG‘/Fo íæ†]
÷uöÚKë¬        OØžFt«Ö,'±KÖhÒX‚çÙa9ié9$P`.ݧ#ÇóS/o„Õ:’ƒrú$”§•‡ 
UØb‡çàô„¨ í£ÀžDצo„8        ÍjrÛv]l
”A®!#;
G>vhNÕ«*PÛC’<address@hidden
+U[¨¢I(wfî´0}~çZLփ<«å+oˆ‘²},›bV“Ý2x^`¥ÄJ5
+Î#;Sr˜,Þ‡5MBJF¡߬£‘òÝ23SòÀ>
9ùHÛÞÛN×qYÒÅI‹áSØC^ƒ²íú]M~³Œ¯¤›õùW¹Jž'        
ЦÅàŽ3vJ§œÖž]0£=Ûg·Ðé'Ÿ”ò(œïÆ"-ݨÏ>Ä¡~’'M³6®Ü:‹eSØ'åÏÃç̽É7ñ®£Û«ÝWÒҟ_xˆÙ?¸ÿ?÷æ~Å²Õø:‹û[UU£µô÷m“–-Þ4wd€
 
ŠÝ,¾‡˜Ä¿Éææƒ2˜ÂTˆáð‰Ï´©’dýXނºƒ$ÜÐÑ;EH·OÈ&ÄB·$¥hM¸$÷ÜéŠӞ’>¼ZQÅO1¨¬¿%æ?‹^ý÷ÆýÇaQ&ö§ñ¨êýÃwHÊá0ì̺«)ô`ø~8Í$„'*÷×<dj
…ý°O^íVíër|ÁIî*wq
ÞŒ•Š
+³¼·7#Ÿ6[²Vù…Òx¾ßIv9FçÛXè÷R³ËøŸh<òmp -=ÜìVí4÷>³XúÝ$9`WC•
™ºcwšÈŠF´ÍEî.à[±;l¯úì…ý™º&ËîÆÐmñ—üX‰æUЕ»bþïüm¶åìG
‚Nj<µ¡òëôa‚Ní-‰ŽR(UJž‹Mx9ú -<ÓÞT•q€¨”/aˆ¸Ãv;aHý)ä(JþÆoz)ђfÃåN 
]îäG$ý®:o9ѯöA>·VŒâÛ§±)Z]4ÉÊ»u’b0j‹µj¢™Žò¿D|)™®Óf(ù        Oìr“tÚl`Š 
»\ƦkàÐ3²Y?íV?øÃV½Ÿp¶gà*ë˜O“Ì\žsGniŸH´ãZ/nŸØ>-…l…JI©ÜŸæÍGƃ=^ƒgâéØ
{¢Yx*zÍþÉ“ى
+P&ke©xÄйXÌûxó.tC›vE¢ûSð(£LŸê"`JÀ`’Yр7ZÐ3oß^e{í"*¹5Pz-Bغ£‡ëŽsåìtlƒ{¿7ÛÁÓÛ¸7T–`™
Ý3ãڜ¾$ø~í§ï‹¤ã¾ÇÝ繻ʣdÒ'ºÀs9[é*ëð{)Ü»tÇôÕPG­1³Jü;address@hidden;=!Øg&$¿ý<ѨÏ$.ÏKÕ§§h”©™ßÈ©

[À³>²%è¸ÍŒÎÄf¡±·«vó,öŽê9$vñ¿ðò:1¿¿}›ON’Í”(address@hidden'´ÍF6õ7Ðr®©’ûœ¦-¤ÚÇf‚‰ãÝ
    o„·©X=¯&™CŠ®¸Ç™~òêö9UBæ\Ÿ‰Û½Ñ#¹áñ$A+ðR<ÏÀØMÂSдGӑ‡ïà¯ÙñxÐר 
QŸÞº‡F,ƹ¸¿1{²°aüµ¢˜wyéSqSû|öOœG7  zqh
Z‹ÖãÁh*ž/ïÿc(ku0»­ŠøTò1\”]¼omîLâa°8zïÖ¨ÐõëFuj‚`¬(WeD¡„è|¿³,^úWÉãOÉiï)6Ò'µ‰çÞŒ™áãðÜÿÉ(Ä\Ú»¯Î,address@hidden
 &D‘˜êÌÂ÷ï“$¾véÖç_µÍØ((êT«=° 
·sÌ¢ëÝ£%üHI,¸b$_ðÁ~C1¤sIª˜Dg"K¢jꊍ•->ߛµq‡éw¯ã«/÷ºGwH_­pZ   
×wÒBQ!­B»«Ñ9!ªèÈ31ŠBY4O‚z!êÆÓïÆ|ßáç¿+/å£Éð9)•»áhú­N©Q)‹*¬1¾/AÓaØVg 
¦aúo‹± Æ]‚ÏÜZ%nÚé3Ãñ¤È…xA}W‰1> Ÿä̒U¡²pÉLEà8n*J“X‹+A¡fC      
address@hidden&‘òuÿËl=hõœZ•aLˆ)Þ\VUÐÐXç¶Ðw™['½ŠºÑXö›ä›þ:˜¼{T õ§oW ¨°…cQ_ …
_4(ý;
+GØð´¢F×P\%Ë)¨¨m挎ÕćËR“"C<“Ãî address@hidden
r`&-Yò®«Ù»j§,1>Æüi;z[¢Öĸ'³èû
¨êùÓÑkM        G7×rk×ÁûÄ*ºAš. c§ *J’â_ÙQKŽ?¸»e¿Aö‘ä.ê3o+³ro|v±
+õ5óu„áO        MÐþ§b¾8›E=ßA¯ÏüÛ]Ðx<­°4eåÖqÅŠ&?æÇrd4ò)ÚT¢ÓJ'÷ 
7p†ð]ç¼9—u2âîWÅ2¨
½ñè     address@hidden&ç±;¢T$›Sי÷œ0»¯Ë§;ӏ 
ïìDކ*4BhrÚßa;þ3v´¯‘º¸vVFz6ɐö.ýmÞKLÎNöÏÍDY]˜ì%Aã 
ʱs“xZ"ßf~V¹-TD~€âȯÒûÈmdͪ›q°ˆÙìç9o¶ï©;ќºP›‘
L"¤ÅÈ°iù™:]y9§×ƒ¾¬|¿û­‰ˆ/}ðoŸªO*ù7xå¸ç0Ò«ŽùË
+OjªÞ{u˜¨çt)¹+L!d–Ë~ …R™®¤DN­JNQ©½k= 
address@hidden;"æ·£Lö÷ýÃlp]çËhÑ’ß¡ŽÒÿ«v…ìâΐP¹™$ê¸#fö.Ò"›ùϾ­(E‘è9‹
+h¨ }€!O_F` 
î*ü撈·ðÙÓDöIåµ³pùKnãÑþ۟ˆÖ=O—h¡,Zzђbü›vìö%Fk¬Ï½Þ{}O*끹Vz³6ò‰HI#0]ì[!õhÂãįìbÎomÜP.´ý¿’bDáþM‹-)}³î4^òÁ9¶PÞê™L.äËÐBzOFæ'Äûøh7h‚Hû3|address@hidden(|d+ié!ÜKSBVà­M~eK㙿?œŠG¹ßÛ”LÿÞ48CìÐûxž†ÝI}A·þÊWÕíŠJÚ×
+b)FQˆÍ1Šî\DƒªÄÈA(+#,xZ.ÑÎ
:VÅÈïà:÷}œÔ|¹öòyîTøÚ!ÈÛg<,%Í«ˆØDTõ~nÛöü=b—£÷ø÷Y<T€Å'¹J"–æ—ÉnНÐW£ÛdMörUæ™ô‡
~7Ûn
+       ”‡†…
šÃ,µU¦†®¾˜X¾)µ¶Pv}z~#Éýô#oÇâ×-«‹½NÀiûK'Î^Co›ñ—,N§e~âÑöÎp¤iµIiœßú 
:½ÓH8ij§›s|áµPY¾êhÒ¥XFú¸&­>­ÖÇ–G|'³xË¢ÙÁó3oä֝PŸ×6kóRAý’Î|ÌÖéó³9Ð
Ç-;ÎûÞ'|ìñÕw¨ÛÓå7g­=.ú؂vuÎOŽÝóíülWÃ&ñS;®Ãü~T‚ñ1”Hÿå5ÿ®Ø¢bt
ÿõ5¿kplÚl¯Y'
ÑüàëìT|Õݐˆh<ú·b·„ž±méÂÙªCÇ8t§ë/address@hidden
address@hidden x|HLn¼š+(ÅPÚ%eæÊôH(
ãŠ3ŒEPÃTÇCBb¢Â6}rꋏÏ?ä¤퓺×ETGDWFÔÕUV
+«½ÁÜ\rhAʹrˆ}˜Ô>address@hidden<I
+ˆdHaddress@hidden(IQYF>‘¤rR¹ Ø¿Ï´ªø␭u_ŒäBN
ù×¹j!_ïlyÁ;ùª¦¯ºò¥V¼Ã…       ¹¸N2±®wæ"Œ~GmÍ1–
+?HðÜ  b~ºËæV”î» {5‹Š€íúX¡jÑæGB4¤hT*ś8ÇwG
ÊB"ïzûê=PFÄ#H먉ümu2”…h$FvY  úôB(„ŒÜŒ¼.;K‚Gס0¢îĨ•°Z}z ãò™¼œsGÛô&aÁêD!
òj}‚°‡rmž!*!)5
Ã}ìøHúOµ¿‘8¢:¨‡Vm«æ¥ö?£ÏŸ¼:¬Íbì£cUÑäªZÝGzÔA¶N¸Êäà}\h{      
åvR§Ý"ŒãX<|ÜÛœqÏ*´žãûÿ–ô¦ñ0Ä`‚菑¤”3!Zt…
n„Bé«Ý¦Ù~°MïûªÇ$q}­›O£îüN’ԍ½+F'ÑvòǍʥpڗ;VP_Ýb
‘ïHpu¸¼æþW.}‘/Óå<ìbøµôÞ"8G¾ßUã­u&
÷tð&k¦¿ƒD?™µ]é ¿¢ûlÙKa“j9I·‚ÁE-l©YkŽ!IOœ‚síÆ UVèékö€‘,¬Ý¬‰€ 
¶f»J4y‰™Êü ìè™8Ýn2¦C——×[Ñ¡‚:address@hidden      
†Tú¬Ì¢P³Ý¸%C!|d_+b¬ß.²Âå½öì¿Hûq}T‘–¿åUɦ6æX
+0Õ<øÀlW·=B³/^©(S 
»_²ž51-º!û0ܑ^®Tø«drș&õwo‹×ž-%ۀ™»Äyy1¶º¶ÌX]Þ¸]'«i:œßÌáS^Ód>¤d+6«ßS¯
+Z°#|¸2o=      ?wá`ë¡r.
ÍaGÓípÙêÑtädÛ-47‹`fj&¤b›¸]Äßd‹Zjê>ÕuMWÂHh»¦+Ç´¦0ˆ„TµR£Ä+;vÚaG^¯,ê¤^Ý)¨ê°,!0ÜnV<}"Œ½Q|Ç»ìèLu!”‚>3³ˆ±ºå®ž•T
…‘ül-C99ǏÞƟaêB`_X;¬ãϬHH¸äd·ø˜ºü¿¬‹hÄ nh96e¥ä&B’}éí…9§0<o‚ݝsNÚ  
vfíÿM*l¬C"Ilýî݇+«-Í{‹      Á
+Óuk£>Q8ºI““qdˉéÊÕóìæý"L¢²ì¡¸8×Øy½v¹&address@hidden@þP­·èª‰8´i*,É
i…PæºÆ³ŸÕyå(ölÉQÆ~¤¤Ä‡
+“Úz݇z3é¾÷hë­'ˆÑGÖ     
wæ¡­wÖ¼¦ÿ«éúÿv/øèXï„{ù.¯fò_ü3ykÍVù‘CÉkPù­ÒÃhߛE—þ 
Á«h.§¨æ#,nÛòùà—ó§±ßcÉ<7ç˜8™—°Èƒ&(Õå—ìùðdN%€æ°JïjÃzð͚`—ÞþN¤²2¢%ÁDJC‰fwñ™~]´y!~1ŒÐ¦ìÔ¾¼=ÂP2H¨%z+­´ù›ÖèO
+–RJh3®ÃÃÏ൚,¢aõ§¡º“6K;1ì¦÷î8&(ð5¿g‡ex&¯Ð´Ù`øWé>ȹ£ÝΐbH.ÂÈìŒB4—Ï´CoudY?´·~Ê’×¢nß¡Uf4ð–-|¿Í‚¢ï“fœwBÛYôÚܧ˜ÚæççË¡M´Q٘F„õ½ô°0K™¦Õ€:]•²5j1çÛ³M©
h€I†Ô8>address@hidden  
ÛNR¼þxìGr4âSK«*+c«üüҶϼ8Ž”æÇo‘TM^fBž‹¾3£f1šÈßeÏDpó‹    
+
address@hidden;Ì\¼'¸VƛKês÷œqý`~Æ,“I_`#b?Fâoþ‡Ü'ö-/õÙ¼-ŠC¯á/ØUtFYs¾"¸»ÖðôAÉAXmáÊ|`3iµ¶Á–Xß
 5ۉyìÕ9&t 4ŠÐ…V1?Ų¨ARTFc4$Èpj”AyTD'p¸7Ò ÑEdZ†È;address@hidden 
öºEš£ƒÙ‰2\ñW5ÓØ6%NK~À^CГŒôî‰l$ßßmý¸¾99ÒÈyh”!ÇøW'–WT”Ô´¡Ía~m3qXò‡Yݟ­€®væÀÄrµ€œ¹×#1Ê?gs
…’ob°J‚û€¦PU΄Kü±1ƒÜs…
ÙY×H¡g§D÷Éý§âÁþXo$»<ò¸£4œ4œÌ9‘QQtwÿÇ]µ;u‚ñ‚Ä¥%¬N§MXò¾«³L©$'Tu§àúuDŸØëùk%Y9y/ÛÃç7L|¼QÏÅhCûD¶1´,,,4ƟÛÓ±M¯K-û<0dêJ™=x
+ûg~ÿeRÊ¨èL‰/IÈ^Jòבâ¡}•6Ò*ÐêTú€"Ò0ñÈq„ì?‹3òµ°ØŸ¤îñ—?Ï­”Z.E—
a“_ªdþÀ•'„+ÓÛSXü†ç“_&ŒóDoH:address@hidden'm—¯œß´h½×¶5~œ9žý¬åð1¸À<švjÊè·&Åè]ڜ¹ü¤–ð*Ò¬Þ_<ÓqÌ
 a?.ûÙ|sëï͊Þm\´).oe+3ڝ­=ôA`mô¡ xŸqX°iîÌEß:ÝpþÎ!!«Ö¢5§‰¹-£:´†=ËÖ      
 HB9ÂÓ:•˜W¡ÖÜ¡’[)Þüèv?R øŠGÈë —bt™
 
qâˆíëbô»B¹ý9u¥–ˆby\PŠ×²wH©éC¬wa82cúÓi¶Æ¸¸q.‘î°€Áý¿‹ºŸÝÛvº‚ÃýÞeã`;ž‹i#pNÀ!SK͑Ý
…M¤-kÜQêR±
+¶3svŒ›þ
+IVÿ3”ˆ®Î¹CzÏO¢KƤõ¼Uÿ|EÕ׏J1JB'XmAŠÐÉ'2FG“:‡©‘ÓcâüC`5³¾aôüÞñ¯vEE
+-hDyxs´Ù!v+03áÔá³ùÅÅ&Ù¹ûُàKFúVôîŸn¡s(¤k›|Ÿ¾_û“Ž–Wcƒé…
#¡?P̯hwf3‰û=“Ÿ’«HP%'«9ü?¿,LO$'ÐØ+rSò‹2òò
Üïùù—«FwˆYÒËÍ[鐖ú›Úöbê4Ÿ;½$m¦t:.[—¯ÏÉæv»ÎN9·Ä¼ºÂÂWé_ù}¾ýÛ¹%î°†yL
+X’>ކS÷Îß÷֕(!_šöÓp1ó\g°/¾ÂzÁÚª˜ogà|çáBΉrôÚ¹UÐbÊÇä9Â|XE¬ìRÅÊø     
address@hidden
 §ªó[„R
+WÑÏ?ÿ@,ËÏÈõ¡˜ü…l¸$=(Í59>-u9é:¼Lòüš‚¸3'à©=’Lý
+÷Á6“§9CiSÁÞê˜j¿T
hÕ\Å''ZNópß[sßÞòΆÕ2¼û+„g×ö<-±æãUñ#ÿ²rà³Ç„©wIŸÐ>…
Õz;»F†çÅr¡%1Ù±ÄEË7;–ÄÛévÚ_QŸ\ÊÕĕ¥•_n>address@hidden|£’•JN«Š£¢Œ†ìÏÎ},+J‡ÉNÏHW̙{®©tÙ×TVS-Xˆÿæ¶Ný¸Lº‘¨ç
AÝgýˆÞ~4ÿá#…
ö¡ŸÙ›5§/ˆÜœþáøQó×Ì÷7G×YŒæº#ÎÏY_(lfïIùÔ$ͺ0WYжêpmª6B“©Ú4-$3Ò…
"J¹ý’›-KÇâ!K‚]Ý”~ä'kJ·˜a7Ój
ŽHpòx9¡>þxsÕµ&Î:ü|I¸Óbt§±ÛbKqd€Öšhán´õEý»Î¨2(“§.ÅÒµÜfÜ-   
‹‰uŸ—{ŸÄ6gpß»+ò€ÉÊ0dˬ:$”<tñ᧤å}d"2ôä–U†ô, Û'—›ªkŒ¦fhcN{^Åc1µzéŠ    
address@hidden;g_]¬î=¥¥-£ùm„[Yq)jaŒŒÏtì°AU°Z‚Ô|›?„-$±kC®)Pï
Èf
ê;ó“d`”*•’èTyŒì»1§ðtÀހçûàŸ¶M´"]™¡ÊÊ{ð)’~ÄEÝ
+nwböÂS<}üTŒ\ù_Ùʨê 
¹<$Ä,address@hidden&`f¦þ3À|þÍcVbFŸ³È†~r³í“õÑÀÅ©£„1›R^“¢N$
ƒiú·ÖµÓ‰>jì²=]fô¨‚ÿé?v£^ê­ªTئ²—Þ¦´âGÿ{3:}½g|
ÙänÜÌD܃8Óÿ0¾ÿÖS-ï²TOïíù¨²)address@hidden>¤ìÌ7ãšRœ/Á´¥çÅ׸žÝg{õ0çöêuÑØ«7Eý?þ
+endstream
+endobj
+416 0 obj
+8354
+endobj
+12 0 obj
+<</Type/FontDescriptor/FontName/NWGIQD+CMR12/FontBBox[18 -205 852 714]/Flags 4
+/Ascent 714
+/CapHeight 714
+/Descent -205
+/ItalicAngle 0
+/StemV 127
+/MissingWidth 326
+/CharSet(/zero/two/three/A/B/M/a/c/g/i/k/m/n/r/s/t/u)
+/FontFile3 11 0 R>>
+endobj
+11 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 417 0 R>>stream
+xœµUyPwîa`ºUÔÕ¤W4l7nj³^¨ –†ˆ 
address@hidden<ÞT¿íž^[<ºûú/]6öÉyÇ8Ú0¿áØБç#ÁvÇ'ݝ‰D3p:rþÆçñ6l
+r—H“eёQr§yî󝖺º®rr‹É¢ÃCÅN¾¡ò(Ql¨œûˆqÚ*      ɓ;¹ÅÄ8ùˆwòŋd    
¢ˆñ¤î’X©B.’9ùJ"D21†a3ÜÄá¾BYd¼<Z±?4vɲåö[l3æ-ÆÞǶb±mXæýóÁ„˜6{{›ÉՃáð¦ò¢mllRlñûlãlOØÙÛI³F|~ð!¾|ÃÛ&öÆfÈv¬(ÄÊx˜x̬2çHn”«Î>ÀŠF_:(Ã$q›4„¿¤ÓAÔAÔäV<T+3s_
 Ë/íD³P¾à»4?
rA=;6d”·èîq!up,cG¼!”íkd*ID°ìØT‡ù¬Œ£‰7؏ÂûùÌ”CÂs¨“7Š[wDùd&š¿XÇt;1~£(+ˆf«ðàtðæ’Ôèz¸Vèy‹kSœ¤‘þÃÀù˗Ëý(6í¿Dîhê‰ioxmv«*‘õaO%Qðýƒi{!,^ŸRe1–Y¯Òµš´ø}v&ûî«ùÈ9Ô#ûââ,PghÔijZá„ßên´­n?Ór.5ÂBO{ÃW­ü¬#vVÞË*F›RF‘YF
ȁ`Å&Á­<Õ^zT‹Ka×¢qŒÝã”u¿Å¸NÕÒL‡Gÿ>ùPz^f     
Ì.æ(/(G9#Ó´£w{Õ*w*Q,address@hidden
ìMéð&]á        
+Í|×¼"Àk»˧ç±OÈ=¹…M4²¢Íø«3«Ö­ös›ÏÂKížh÷•ïñѤ$¿i{v·HšCTf΁ƒ %Ėô
+“©´¶^Z²RìœtÒ ¾€óÚ_§;õP7'ÊænKó¢HʆšQÀ¹Gf¤3óŽ 
÷ÖÓ|4y‘§bÚà0O¯ß¸[›Ù²¿‘nm;ùphìÍUåd« P–¤Uò+
ʺ¨íûS•T¬%ªTÄҍžëüí-É ÓR“Å[ŽÉŠ²wÿqw$l'6¼ðGÓє×Ýwª³.nn kvÀ
+ðƒ,H6ªJ2Œ`}¾¤Œx­"—Ã÷´ëki£µ¾ÄÄWð<ÂR¤t’8V•D-‹È…ÂÓŠt­-5teY1ü     
ˆ!d}º~—óX•.ù*³ÒÀƒ“(ù$=`֐ÈWe&)2²¨˜ê˜‚ýœÎ¦FzmK‡¨–(ºQr4«3ã\z©º:ѐZª        
"Û¹ÜkgËw
+*ÇZ6÷P¨H‡ìdšuē!»$_«5ë©üBЕW´ìê=?œí½×³¯1£˜Žlx‰-–AÑ`î|Šx‹ct”6³ò€8
ù†‰¶«*™9Väbâ
÷#ÇJ>ZË|@¢¹Vv.òQ4F.\¢&‡Ùœåߖw_iº|‹º 
؆»‹C#<Ṟân™>‰‡hCï|Ã量„Ì(Y“`‘Ä)¤±UIU
†šJŠ¥X?RŒ_->È   
address@hidden'¾2Øãc×ìSÝúgçŽ)pÔËhv¾Y¿¯*®=ísŽ’F8jµZ*Z€“Žè;+î™YxšFÌXۋcÀ(¾mx2
 Í*-ä]é)*è;¡5k9\‰¹qqrçºz͑
address@hidden&&k(–³;&géŸç`ÔüËò깧ê~¶Á¿âWÏ_Xc›Ä³Ë
+ÓAI$+³¸àjÝind:@cÁRˆI;ñvjT&”b¬~ØgâÁMÖ?XÉg~L$çšm{Z£ƒËöáêà-6*-Uz}U{$¤Ò–ã]†6
 :/Š–Òá8»[½~¬#Ö~-»tíd[—‘:´«!²soÙ}ú¼b+Aw9å}šœ/ÜÖ܅
к#Í:®Í|ç?þÅJkÊHè¿mÝ| By7 
Òçÿ¶!þ—]Â1˜`™cÛ$Eƒ|fú‚„¡ì‘ƒaCî•A°<Ä{]$>*_`1XP(löh]?Ù³ÖÞæ;ºo¡—`CØÛä~ð6$!^z
rƒÿnW\Ô_ÿ¼¡Z Wn\QêkÁ6Âút¿$ÖÆ')
+&pûÛÄíxö
ñ´–TÔ)™ÛT²2ü9}¬¯ ÖréjM·¯œÎŸ…×—Üe        –ðœ·"ðä™kÊ뒌’Œ\Ш)㍞Î~ 
†Ïz8¯róßD³Ál‚]<ÃÃ'J®}ò-ú]šúìz¯ö
+|ÎG>ˆ%S49È Tù` 
:Ã-Ÿ,dgyFítµ\ӍÙV4Ö“$>N)ZöDˆ8þêÙ÷_»ÝZ¨§WŸÿþLÜsí]ð{7?axCf¹¹ª¼¾1¾LqpTˍœcMý©ó“Ô[Å!tìžhµTCLK0¬7³5åHR"`CãÖÉýS¨É¶«Lö“LÅööýöS1ìŸ{àƬ
+endstream
+endobj
+417 0 obj
+2168
+endobj
+24 0 obj
+<</Type/FontDescriptor/FontName/TUQKKG+CMBX12/FontBBox[12 -251 1139 750]/Flags 
4
+/Ascent 750
+/CapHeight 750
+/Descent -251
+/ItalicAngle 0
+/StemV 170
+/MissingWidth 375
+/CharSet(/parenleft/parenright/hyphen/B/C/D/I/M/O/P/S/T/V/X/a/b/c/d/e/g/h/i/k/l/m/n/o/p/r/s/t/u/v/y)
+/FontFile3 23 0 R>>
+endobj
+23 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 418 0 R>>stream
address@hidden&ˆÊSIV‚`ÂCŒEb‹V©¶vFmÅ©:3Wm[‡N‡Ö^ýtÌ¦Ÿw°iï÷ÝûÝo'$Ùg¯µë÷[ë£p`d2™ëÚuÁ+Wúyz.
›=GúÆC|U&ŽuÇÉͤt¬"՞ïxzìˆË£°ú7¸~ÎÉÈe2߀pïĤÌMLlšûTïiî³.ôr_²3:E³-"Á=0"-6zgDýï’¸M–ùºû’øx÷5Ò©îk¢S£S´ÑQCa½w&¥§E§¸&FE§$0
3>3a[XàÒÄ(ï¤èÕ>A)1©±išôµËµqñëwFΘ:a62«f!ó:3      
b–1™`Ɨ™ÅLbf3!Œ?³–YάcV0ó˜õÌ0¯1¡LÈ,e¼˜UŒ7ãÊ81ÎÌŠ£`tÌ·²Ù3ƒÃcùjyÂ[Ñé(8–:þ]¹XYÅFq—̝qrpjqúÞy¥³Ñù›aºaç\Þp©>xÝðN×ߺ¦‹Ã\Ÿ;÷0d“U¼f“Êäâ>q_v¸ôÀUàl¬F_
‘zXcâÔ¬±²uºBƒN Nd?ù-¶:^´)Sõ~   ÉtÓU&åd%å¸i·Äù.ƒbȁÜ2“±Õ
œ5Õ²3>U«Ùt&â£{ïß:S§rµ;‚Mt¶ÊzQ†[¤ŽáeþëÈsÄÁ;0ö-Ê€J²hŸ£šýc9D   䆯šm0}
+Çèº    
zÎæ‹™;=WOZR«Hó¯7°®¢®°]ÝNoé‚~è,cщ7çBÞƒ!§HU°+É&pÄpú;—8G—_Ö½AÐé²÷B
+qbw“¥ãP÷=–­#¾ËGX2öë™8g·!W®r}.Ö»ÓÛôÛdâѝÇE¨­<Tj²–¸-)…
àŽÚ”iúßQÀâa¤H¨šá´æÉ$l™†QŽŸÙ”1úw
L…
$º£ŸÅr•l&–ü.Vç–BóJ.I­l0Ý¥wlƒ¿A½%›a`F_̃þ¤ÄqZyÜô:à8<Üáɺ>Wxz¼5”âÓnñ‰„D+¾Ä“ñí|K>hÁhÔO>QBºÁ\œ©Ï0d—&Åúë
 ¢ÿ9ˆh+Ñ"µ$¡Ô`„zN¼hd±iàÙþܲ¼p«²Êý±Õî0Æ8Ðï¡V6›žÀ        
address@hidden(l°á{Vl iáüŽ•Ÿ²/åi&ôq1ŒÅ…w¿üç×zÉð
+'6»Ý\Ÿ×2OE֑ylÀåìcË¢
address@hidden|ÃYtª!̖Í„(Ûçä2”¯Xi`F¹ØŒ‰<¾:address@hidden&£ûfàlôzð-ŽR   
æÉˀN÷ºá½Úv¡þô;Glð´'Õ$ÖÅ@(„s€ò€—h\h¥'ãºóƒ‡—Q&ã#é
+/h»…M¯ÝÚâK96~ò\âN&|;Ý.v×ZO    ¡,ú–9ÚØÀ8%ˆ"KdùˆUaÙ1t÷HÀ—>¦Ñë;„¶K—Ë 
ÎdZ·J¨MÏerlZ‡+,)     ØC4vÉíyöy|”¤«Þò9ë߸„–tyL"ÛI$N£$ÓSŠ°èŠÎ5…
ƽyykòÉt‡Ά0÷Hȕ؎¸‹€*ø¦êf÷¥«·Už…Û€Ã#Z‰)¿ÌÀ5€©Q w&ëm8É*      
K’oEß&ž¼/®U6¥ŸIù8÷ì3œŒª×¿$¯…eÄm.°dɏr8ðKµúŠüɳ=Õ§€»v9ˆŒ!“¼ÃVªÕõÝñRe«z
+Û1¤ß*b~Ÿ\Ãd¾¡šZnoî"ºBSàf͟DF÷dzÐ=ßyZSµ
+÷tمBòŠåÚpºc’_½$´(LÆS–öÚão×ÛàTã address@hiddenºL¢Ë=0FEÈ'ü
+h‹þ üfÑ?è¥þPòyçõ37>mºaddress@hidden/)ÞŸ„‰/‰c©:~RÀB×âTªŒ¨%Óq   
HÐ÷£y±_cÀ
address@hidden N{Cc7Ånöß1{ðX¦ —j«ª{OÆnzlÁy|S‰¿ûêþcd¦ß'…
éC±”-¦gÐN×3h‘ÄÊâ+b?3a¡ßrð"3"`Òõ¹ìjVҋÎýä1rrŒÂtÞZŽsÑI••[°2¹Hëî¦&kMçùÐcá¿×øFdÑf.W’¿læ·ií[(64Þ<vH§dóqœÓwû8fŸÁ=L}ZvOŽ/ã
+þlò%¨¢¼R]üˍó  
í9•BKuciIW¤+†lN{x×Ñ£‡k-™Ç#ԑÚL­*²1ª"Œ–[µöÍeñ•‘]a÷®ÌXˆuÃv˞ÔÂÀ4XÃ]óÇ|ãó÷oܒbV
…7®„¹[¡È¨.Ïé€Z8`¬:xˆÃaeü<è}÷]è}ð|7oßyÂ%Îß¼‘L       
;&æRÇÕ+PEù*;ÛÃоàÞ*ƒë¸çº\..æk¡|o¡ò÷ªŠu¹EºÄêíeTê;address@hidden"ka)address@hidden@XvT•›
 ºNu´öØ÷á¸]ÄߘÑíl²5ãˆyBS¶®råÁÕá,wíK° ¼lYŠIeÌ> ‰Ø%
ÂóWj\¿Á“7ú씪öòçšýðÿ5‚ŸËºÛ/kÃÅu²»4Öð.9ƈ“xœh#1$Bi˜>uªŽÛq—´±÷Ò>½uæÒ-UOD(»|gBüjø¤ÎXق\†Z<ÿN¤Ô“cª]Îwîh‹ŠŒ×DG·i:OYÛ:Uć,§½÷òÏXÖÍ4«ƒ,é,´;æØììi<ěåX.ðSëuŸÂaî¼õrÿƒMd´EU¢Cí¬0ˆ•jW
 
3äå«ÔS,N½F»ë„ų‰Ì¿}Óá,áBè±Â'iÒÍúzí¡ì–DãÔÚßÅ\"´âä}*Ã(Éø¡~ACõ3+*UVjjúpó½l©gÎúøéÓ>$²&ah°p?ŸŠ«~œ*aìâ-«½UÜtQ
…ÿd‰ïOÊÊc§|’ð¬ñܵ©Œo(qÉOFAk!w9IëþÅžÄ1r{”}!ÿýeÉsìRV 
ìÀ}œÜ݁/ˆ§ZyÇô˜ï?ÀŸáŎxŠ_Üaéϼ*ˆ×%õ‚:§{*èixÌ>address@hidden †:Tô…
šm§¦¤‹®GÐ.'¥#ùÐ"‹ÈSã´OtåË«J\‘,hŒ^ÿsÚ\_T`CQždA+   
'address@hidden:n(eÍ¿l~~5÷ÑÊã¨ÿ2W¬è7›¬Ï€í!6hËuûŠ‹õz¬ 
“E5ûkH„j†Þx…­6Wª?‚Ãɬ1åûhÊ./address@hidden
õ§¥ä0þ>í+ٌó¤9(ÇHI¶j¼À÷-ý#ñ!ÎE^Ç3›[[,µGvTY+iã®wF/¶±d™»•Èg!—Ñû—s]gê„í 
þNu^i9õÔf  F¨†ŽÈ.ñ3¼2ã6FZßý;2mßìasó-öa6™=ÖÎðe‡J+oWcSÆë½au·>C ÖÃI8–[”5†D
Ēx1Ïñ+›2Nï   ÑGÝ­ä²Øòý°ŠŒ
+CµT­J¨°HC«u’ÿ
+¶½åöû´-õE] ŠÉ›üâö¨öÜ÷«Z       ž¨
çþdw/\9YŸ¾èìQÿëöç6¯÷       ”OÔ/*ö][S[S[]w~ýÅÜÓÒ¤zú9NÂq3’qA›vÅE
+ûÃù·Ï^8ÒE    ä¥å[`Mêv!>|S^øÁö³Yõœ«8}úhi{äx
}ø>Ò3óE%¥–­­“u>Îd¥`Úu„(P¡F^Îá|ªCG³Ùh„RΜEùzÐ&«ÈDÂú‘ 
address@hidden'ÜÑtEÛo³ðoçãÒ>9ÞEà‹~d<rÉõzÈ®(rŠA_›) 
‚(lĤ׆d>QǜƒŠ¹3ì¯0å¨
+'"{ý9׳}©™”WàÖ:%Ù\ÎڜQ6Lå¬ðªsq:Qá₲—áFW†ùoÓ2Ê8
+endstream
+endobj
+418 0 obj
+3331
+endobj
+33 0 obj
+<</Type/FontDescriptor/FontName/DHQKWA+CMTT10/FontBBox[-4 -229 525 694]/Flags 4
+/Ascent 694
+/CapHeight 694
+/Descent -229
+/ItalicAngle 0
+/StemV 78
+/MissingWidth 525
+/CharSet(/percent/parenleft/parenright/comma/hyphen/period/slash/zero/two/three/four/equal/A/B/C/D/E/F/G/H/I/K/L/M/N/O/P/Q/R/S/T/U/W/X/underscore/a/b/c/d/e/f/g/h/i/k/l/m/n/o/p/r/s/t/u/v/w/x/y/z)
+/FontFile3 32 0 R>>
+endobj
+32 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 419 0 R>>stream
+xœX   X“WÖþbȗÏ?õÿ>¦­[µÖ}Ôj+îR±*(®  ûö°¯¹ì ;address@hidden
£Á˜Õë·|ìê0s•“‹ËÜ9†oìõ“úÉÃôÿ%ÌÄ1zõ+GQóäIs¬àÑ8±„¹c)address@hidden;ØCJAöΡ^þÞҘÙöAAö[
¿ˆ°ßêá-‰ôÞoÜuUhp˜Lê-±w
+Ýï-    
¡(ꃍ1!^;œVƆîß´*Ìû“Õ>›×H|·¬ðÛºNêï¼^æ²!2p[TÇÇÑÁž®³Þ›íþþœ)Ëç͟¾`E½G½Eí¢>¡VSK¨ÙÔÛÔnj3µ†zŸz‡ÚB­¥æPS¨uÔ\j*åL­§æQÓ(j5ŸšNm£©Ô
j;µz—r¥6R‹¨”µ’šEí¤6Q«¨ÅÔhjeI­ 
ÆRã(šâ(kj<5œb©Ô2Oʂël\Æk®^°°·ð²è­¥§ÓÉt¯x±¸FüÍ|;ü̈Ý#®ŽôùçQ     £…
£÷>7ÆgÌS˝–',ÿgìޱǭ÷µÕD«ë™ÖÇÆïÿ%ëÇÖ±]ìã 
#&¬œo3ÅÆÇ憭‡ía;ÖÎK¯£W#­^®|­ƒtÖêÏ°tEjn   Gñ<^DÇE  
àTÉ·÷É}L#ý(úPQI+ß+V"•¿ŠŠäÖâtq¿½_´ »'@ú!èô÷ؔ#òœ ‚âPŠ7ݧ²•#)JÏNJOOF        
Lp#ªæ^Ð5õdË(äË×ý"‚EtÝÛ"ß(²U=ªá_ÐՍ¨¹<address@hidden'CñˆÁ«ôìŸðW"lK“-q´VX+¨~(address@hidden(8¨UñzöOðII²Sе)ª´ÚِfÛðÚò![hx¿ÊOFÙHa‡²%K$!.¾Ùñ
+”SPŒÊ™†˜IXlL¸Ça¯ŽgŸmi>×ï=tk]´Vtࢳ±þ–êdz­¨Ò‹[IÇIˆéFTÁ†»ÝM#˜OW[$ä¶þìÙí#ç/T„~Âá¨ýâþuM†u‹§Ÿï8¹l½›t´aßt-|­
 Dô
+õ> `5!(=.9;*KOˆÞ〘E«nüõ¬Ä0Iu¥ð9~µòzÄÔ«ªö¼ÜðŠOðäùxÔSÀ
+øë懠QªwÂ)øoD 
©éÊÆt¼mŒmªãWã©ÂT‘²µ4KŒSádª‘ıŽ†QX†ípµHfŠî/F3HÊ?†í?ãí"©ìõ)ÃRÚÒ·uЬ\脆N!œÔ‹ØDߔôFA'Ÿ™eÙ
…Éõ$GŒ³ñD*ÔÊ÷ÉŁ‘ïo8òúðqéÞ«Ø%?¡XZî]V˜Z–V†ÊQEqqE^á(,»Àäô…
Óoü±\ܪðЙöD™ò”pÆxÂH-¸i­®ë ^·›Ü»L‚qôµS€gà†wùwhØÊ^UŸúu3=›îc!‡#i¹!J
œM}rÚúe˜*4ˆºzïêv_[ZËoÀe,¶†HàèÍ+Ývíß¼€D› JÇuBý6xŪ”9y¨š9,CÑ~B¤¦ð{ÅÑHv¸
©”\#äŠñ5Ü¥ÈB±vþjTËé-iu!R¢J撸©I.GFqÞX-6GU±ïAÄ£Ù?cl1{:‡­œÃ`؏?‡=ðBÖÁéΓ¿^»vóÖUÇ9³V8ðý&\´p]"­±SHb¿c}‘ü×CW5p†#9ï¦/¤[Òø¿ž&óh뎃žUû&aÁÌY؏}ô'šjx´X-vv[üáêOnöþtãڍ«Î.Üh¯uB$ÁÊVý-6ñP|^b֙˜
 ¡O.1~5å¿DšCÃƾ¬r¿*E#²k.Ë;ÂëÄC+þ`‚pC_¨Â€Ï$­¾¸?H×»„úhý]¶
+5Çd$§epٙ(;address@hidden(%¥HQH6Ÿ6ci„'bæ,üޅííúbïÒ
+>/67®1†ë3„K´ð¾! FŽ1Äó,…jöò¥Wn_Z¹`æÇ5Ëý¾?Ëá©Ç=N¦´"Ok°œ÷·?ìv‹  
ò筟Ì®ð~-Ô}šÅH´“»`<address@hidden<œ9
[â1ϧ¶g5¸'&5+:address@hidden"óƒK,œˆÔ`'ì†Oâª0p‚ê&8ÁaO\ÌÎGUâ¹Äóè!úu£ë¥§Ë/·”ÝGwP[J¥KÙ²Ó&ä„V'mKrœ‡˜!<\ÑANØ¥vÀËJ^Ý'—ÑC#ð¤Áæ{°‡
…°`!¼‹íx,î;Ãêå?‰AÔIè‹Á÷/…Cyã´xK÷ô¡
+IՁ1fudÌúîW¨™Ë,Ùߦ¬«Òt}€â>øpïnû4#¡ôwO5ñ$ԛxoêïmÔB–VpSÙ¤6/…
l£ÓóèɇGXÌc©éçÍ}ò`3oX“±`Z/·ø•þéäÚíÛ÷­I 
l4.ӂ»ÖŠ·Ñ}¦ÛC€ôÛS-kfCÏ–ø!ZX‹•bë>ØŵFêZîÉÀtœ'‡mÀ²·ÓC|Ó#îÏé¾áfç¤Íª$ŒÖÁڇ6֟6±?\þ
  Fs9ÕQ
ˆQ+«š”‰'ïø8f£o­;l4…‡™÷î^jA…Ée,ì—1]àðå]°·Ë
+]Š6T䣗¶Ü²±þGÈa5»Íã̅/Oúüâ‰=Û·º»»òsýؼì#ÒÄ<î¹Õۜr0VëÊêóËs
+ÃêÒ ¦º®ì`]t˶¤]
+ÿ½|\©_í^ļ·zÅ¢}ՕѼ5¦’âRdÁ‘_…¤$ÑÁ
­CIÌ—›`<ŒÙý =æ܎&.¡ÈC=1kèT”€RsãQ:J¬HªP(Q.ÊÏ­È?ÀÀH|…
¶â䩚’ÖV%ßPU‚zÓ"´Ð}žiý<À«þaž;`ž­¬Fµ…QŸ&©ùÔò˜Ãiå§jjÚJî^D_¡ÓÌ﫼å”r…      
  
¦åf'–¢*BQãaHÏEQšä‹)çÑutu¢¯œ-ÿB­|Œz‘&¶Ô±dqkÂÞQrYü)•Šœ(Ä$Ñò‘“•—1"†?ÁmL&ÂG
 aa2ýFàL†È{pƙàx¨O`ðÙ¦ls¥K•Ù5Q¤µ±~硘•æGåI
+Bòו¡£LckˏßV‡çq9±¹±-œªè:"Sž–͹«ÜQ4‰ÂÒ%¾ï¿Œ},筟t¤~“°}¢OÀœ=Î¥w%\FMfi8b
address@hidden
address@hidden;æMr‹~|jóî]n[æð«hp      
dÿÔ^«EǙï>ºGpxy}#Urh#ÍÊ$ÐÖçîÒµ¨µ†ª#‘y 
G\X¬‰;Œ˜+õ:ÒJ*[²+øÔlŸØPtúÂTœRÇ%”ªä¥Fò‡ùZ8ՏáÆ~ãÍÖ×õ’Â#M©}‚NÄ»ölGÌҏ€‚iðÞ7¿ÛvEŠ©j>7¶0±qà.ï¿ÌȌ$ÿxί٫҃\æ¨wð$¼oüÛÁÈ/O4×)yŠ2BЈ›ëÚ¿+0^óJ%*_lFå‹ïÓCü·d‰½¿ÇYôÌë¾=·ïì­A*¿Ed,§pÚJ|f>DŸ7
Չ{ϬÀæÙZrO [?‘5òØ[fÌ/ÂÝx´¶Ïš˜ì-Úú¹>ÛB#S‡†Êd¡¡j™F£Vk¸ÁÚi…
®AÕ5ïkãÐÄjÒ¿B×}›—…îÊoòâ<š2O(jՊšÀÔbÛ~ت+ZK¸cÁÚ¸«¶Ì­ï{¯úžH,ç=…
-¯a¬Ÿ/­ñ(ónCgìÎwœ½     #*ß*äòd¥éÊÁhÛS'address@hidden
Ø
ûÛë³ÿ"#ÁGš©º×féA!Ú=ԙEÃo­lN 
+Õ Æ\‡Âý7èPҔÍ]š¸jå î÷Y‹K虺ˆžãÇhÚM"”àÚN¶Uç݀ín’Q£¯4iô`×'w›qø?Lg´
3ÍRfu¨>9¦ÌÆGÌÖQC™ŸÃrH}Ø¿i›±ßÁ¸#Ò¼¹Sn¦AŒŸ”ù+‘
+ÙÕ¢:TzˆI#µ‚^"ď6K‹ÚÌN1ÛìuÆ‹ð,¼4ÆÅÑ´GŸ|—Ùµšñþ®{ô7·I­|ßøVЏ‰&óAâܨ ’
CÂÕ<x×dÖL–àhû
®®Û?ÿ?4‹‰™7­ú™Æ–ßöìác°4\t¦
+t address@hidden
+:³1átâñ˜+Y¥~(™Ôš$YVšæ2£H+ë
+çEƇ)Šú¹
+5ó]¸7_šÙCy%5چïs*òÔL]àڎ‡ç§–ÅÖ 
2ԎòªòÕ&ÍöCä«ƙgVW&l°fãûf7;a([æjŸº¶}½àD2&R?¬•UUAŒFmlƒ=’òRyßÜöüξ)he°*®¾RSҞáâœenEN9*A̟?ZÍ[ŸÁk²°åΙ×^q|ÑÞ]Ôr†K"Âïb$E‘ûc|cÝP*bœ<íø®¦ä›!®
„ßX˜.¢O
!#Ù:ßp5Æ"ˆ}q­jÕâÊÁR8Íxo†îº_ꍞÑCkd`G?á`óDC½øã<éÊøìüÌBEîšÉ-û°,a†é¢cf/e£FM¼Ãԏž‹"Ô?3xÈc4ŒÀÓñX¼Päeú†>1ñ߁e/¶
…>†¹¡=¼Ì¥ó—0Òðgèÿú)lvsŠAL 
ÑMú”ÇÝbßȁ-¾7º‰|yX'¶îè=~æx]E¬#‡åâèAqçµEÿvI†X‰€ž왰?”‹?Z€Q°<BÆñ£èoû
¶ýKõ¶,8¾AòÒQ(’TdegÝáqœ4­“~׳â=âß5¹d§TÑÁdž»Qõ¡$ÅK¶Ì¬tÐîø»ÔMi®ŠP;~uìR¦ÔIQ
+ÉÃ(”LòpޓáDò(jÓ.ºêíÍ_—¯KƒJøúVŸ²À¯ždœ]    
R¢ʼ¢‹Œäc¾ÛE““]$iDEd¾´1Fµ#`œàÅU!´å±ñN{â3“³b2P_[Ýúâ"Óî?êî%
ô>(9TX”“[dðêoÇæõK ž-kCmm~(‘Ç7éD?äç׆ÊúS„˜&!Üífۃ½%AA>Íá­GZZFf
ژõ/M,V½’*ɪYB½Û+K¶¨*¡b¦&¾:J–ŸÎáoÿ¹6-NPª]Le¬R]TY^8$B…î(á×C¿i
+ØàaØbZÿ[Ǧ¤)Ï`"(ù‘&~¹#‰Åt˜ªûùvύxžîˆG,ï?D7¼Õ
YÝðv·uvwþJ>BýªWãØü¹¨¨ÿ<iщnüçšÌäì
”f]W[_TSšÏÁƒ_ØÛ>—wîôÙìàоùܹöË·¹«ÙÄè¦S§j›ÊÊjÃÜݣÈóÛôwÙ»û;wïòÞ²bùQç³G.Ý1®Ôœ:^Ó\^^ìéšh8¸Þ¸o
 ‹PïÏزC$‚>„|H-û"„—x[ÑNf±ýN 
3íÝF#5õB¥NøÕ%6%5=ÉÕpðØØc7ôBÑ¡N¡/ŸÿéÎÉcW:O_Eß00jê<X¶d‘&©ZUW­)Ë(O)â*OŸiù1÷¿Þ;Í®-\x£¤Îí2¼D¢ÞOz!LçEï©^ÙÎO5_¢‹Ìí•_a1µf÷ڀ¹Ò`¬"address@hidden@Ó×ÏùºÇû
…ÉøÀpI¶oöÖÌx„Bë¿Š/wšþùüú-›œ7Îñú°ôL8_PPTˆ”L}´R"•ÅÎ{º…”x›ŸÜÜsyC³KT¯"¬
¢o‹*ÓòcÊðØ¿ì;èÙàaâ_«J‹òQ%Sœ¡Áû°-.Á#OÏmÛÉ]Xyǹ1Êâ1MiõÉTÿ¬Sx²Ø””M( 
$­…ƒL9™iÃõ¦Ôuê®i´^҇Ҋý¹P:e(¢H»×Ç° 
"üB<tfp%Åó%\fŒÜûÈïÜöžˆ‘¤G¥Æ—¦dñ°*ñBÒ÷LóÁ<ž4'>95Å3©…Q
aØB   7&©T¥Ø¹„Æ1EbíÝHn„ELè¨áÚQ£t£FSÔÿwÒ{‹
+endstream
+endobj
+419 0 obj
+5069
+endobj
+30 0 obj
+<</Type/FontDescriptor/FontName/DELQUB+CMBX10/FontBBox[13 -250 1051 750]/Flags 
4
+/Ascent 750
+/CapHeight 750
+/Descent -250
+/ItalicAngle 0
+/StemV 157
+/MissingWidth 383
+/CharSet(/parenleft/parenright/comma/hyphen/slash/one/two/three/four/five/six/seven/eight/nine/A/B/C/D/E/F/I/L/M/O/P/Q/R/S/T/V/X/a/b/c/d/e/f/g/h/i/k/l/m/n/o/p/r/s/t/u/v/w/x/y)
+/FontFile3 29 0 R>>
+endobj
+29 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 420 0 R>>stream
+xœ…X   
XS׶>1rÎÑ**ñ¨MpBQ©8ÕÚ:¢à„*¢„¢Ì³“¬$̓Ì¢L™#Žu¬­W­Ïê­m¯C[mµµ½zW覷o´Ã»}ï}ù
 agïµÿõ¯µþÿˆ˜þý‘Hd¾ÔÉeý&Ç)KV;ºOw0}bc%2Žîg|address@hidden
·ÀÛÃ0hNʈE"g%¡añAQ6“–ØÙLŸ;wŽÍâ]þAÛ}BlVûDúïò‰¢ì´Ùº=È?*þ-›Å;wÚ¸š¾iãêéãï×wê’Ð]aÑQþ6«Cýü#B†yÛeq|address@hidden
ÑWÄÇîôq‹Ûå;ûí9Sß±Ÿ;múŒ™“fÙ1Œ=3–Ùʬe–2s™·˜qÌ:ƉϬgœf³Œ™ÎØ2˜åÌ
f"³‘YÁÌd61+™YŒ3›™Ìlf\wf5ãÈÌa¶0k˜%̃±b3֌93’ÊX0f83€˜Ì
+ Ã1«˜s"G‘¾ŸE¿b/ñ½þo÷o7›kvÎV°=œ/w•·ãÕ|Ž˜ü†ýåƒ\e
úfpÁàó5æéæ/†duê?ô§aîÃ^XdK†IŽ
_4¼qø3!\P6båˆ,K3Ëj+3+/«“¿Š7­3ÿµ_sm9Œ"dp,^2ˆ»-ñ° gSœÈ²øñÆG8ÊÀnSl…
m`þ:^ŽLÏ#Âȍ78ó_ÅþaÐÖ`\Y&‚îÃbcH÷,AQ     
+RöÇMÏ÷V©{”)address@hidden'q°–³—ˆ­ÙTºL÷-´A3<„Fºl2GžƒdI­‰ciè^Ï×¹ÞxÁ 
äÄFqU¨Ëº
+tÏHÕ.uD€—6FÃË9m$ª$©Õ2Â5‘`¥ÙY»C5]­¦!zi}颫®íåí¼l)Xï•&E—“^Y|}ä¡ 
А8?wƒï¥;®œ?,address@hidden:>qŠ›«{¸TrŽ,J1“sW²ÀOF®PŒE¿ŽKm6i¦wŽŽ8LŒ=Æ)BünU
$óÛã×֕·Þ'|æz²l1½$O¬ŸLÅ·ðí£Ègî…
¤xµj_š4ÜÅ#Îx"œØùà‹•ÊÙë4š¨Ý­bcœqŒ€ó0<¯P£iÔYÒeB
ðG
¬r+xƒ,€J®„^£Q¡V¥¥ª”ÄŠ,±"ãp‹ÙÖW9¼`;address@hidden"%ɉ*U°Ò:V£Ž>DζêºhžÃЛèO÷ÌÓh32µ:address@hidden
+ˆka¢ê%¢ÕêPe¤REÓÍG˜¸užžØ
+§¡…îAMÐÄkCtj
TðFƒ†Ãªžg9±ùiy`]ÙÓs°ÎH¬4½¬gõºÇÐB_Oz#&
address@hidden"‚§XÎt†r£CÅZY–xÇ'ZJŒXk|CÀb\É=/™ç¹Àcõd²    
2¥]‚;ü7³>#³¥=ν%ÆJ^˜ªÌÅw¿|address@hidden@ƒw½lŸd8/57~B™"Ñ÷2%‡‹Ç1DÀ‘Óž“9ä‡
     Ě}8ßÃyžã)É&.‘2:àTqƒ¬ôXky…¦uwE`yl~†H^q>U¿Ë`ëqý9Ó ´"d,% 
Ægaõ~8.3¾àˆÓïüÝÌIºŽoٜ¹c±;“Œ!VßLÅI—Oªª•måpU¦Y…
/address@hidden|²Jµ?EºbÝê“ËK–ÑÄk‰=±#>Äé;jq-šáäÊökö%C‚Z¶ŸŒ$ƒ×ØÂ|˜shóeùùÄÛð| 
CæÏ?úøAÞiŠ|»°‚HtqU%ðÕmµ¬âfÀ1z£èÜöfZú½?Kqn)¹aø¹¥MaasËéÌ
+à¯}°†X1N›Wî•ÃY/™¢4PÊ_§I¤…¿†klOj'ÿøÊÐÚá   ¿Èmg|”Lòm×ï0úËz4ÿ³oÐX†
§]]êñݾt§|+6úÒlWäÂáÚÔ[[NÊÞ×»•8SHgÍO†‘‘?LÆÙ8£íeqI¤%¨Òv§Êb<\ƒWÒcÔh}JVß_{\ÓZ^_Ýܜph‰¥&Єü¶ûÿP´v³Í½È/F{qw3~#àN2R;‚Ä™DÞ'Ûцv€XL@)address@hidden
+×C›W4­J_ËÀéÀg/G§èM`:/ü9óÛdm´Ä‰bœØ-úæηàdšÐF&address@hidden,*{        
´m¹á‹¸.§F÷ìeðQ¢[°—Dz™»×˜¶mó
£Õù“Ãô·œ€Ì#b)yŠ
‚³œmÔth;¡‰gªîYørŽâàç,öû4§*#TYÒ=Š”8ˆã½㪏֕·´tÌ·#Œ1“Ú.’ß6E‹‘Ïé)Ù-ØÕÛF“ÑtÂÖ¡½é¤V<'
 K3΂°ß¤we=³_ÏUڟžÑžØÏ ©·ÃÐóiz»2»p‹“aᒥ°€L11òŸ:zP£sÏôñÙtŒôŽñh"
AVÓôNÅÆsìw¹Þ‹el³‹“½'K7b.Neq6T;‘Á¼Ý‰©f¿ˆLQ|A£è¶ cVt·(ƒî^€ã6ž3‘ý%š[ÒuvEf   
w£
+͐ªÕñ»!„÷­‹=r¤®¼ù̦#›¶oq‰’J:Ќ#ïþa–Qÿ       _Ú­ˆ§§~wSQ-ðÄ        
ŸÅðÐé¾¥ä_
+ÌFWa&\ëè€kÂr//X>SF̓„ÎÈSª*Z8ãÏݽaˆ¨ßS$;ZT®ÍÓ¨ÒTɐÊGÇWW—ªLhôÜ#Wn“Æçû”/¦HŒß8ßÉ·Ì·.J˜ºb`OúÖæ`^ÒÍìS:ƸŒt?·åèt÷⍣).on¨YS
 <!M³-KÑ%›~03›¿B6  8€­E3X෉Œ ƒ¶vv^ú
+e}õBÜÐþhóWz£ÚT5qˆ)J|çjNñÿQAޔ*¶¸§¢^“Ý,­!feóÿc#ü[6”ÄïQíÛ¯–¥ú¯V'@ì¿‹<É®Ȑ‹Jœ
+wé|üöØÍÓßÝ?Øgán쉷›–ëfÃ::!ˆÝ”Ñõg–ïî䑪QhÓdè”*D(v¥…¿q]þá#¥õ5
+—2¯>9h"p¥+^ñjšߤԲêž'ôüøš%”«Ï¡ºè] ÝDÖQXy’û.ç7¦¥P¦mÁ
+´11­rÁA2€2ëBQFªÞ8ªÎZ}nb"ýe"V„÷³V恁¿òJo7…l̐jöhÒʁ?•²Ï8S»? 
‚8?ixA`ævàwZã–ÛËÂÊd́M©wöò’GúÔÛû֍\4
¢Ç„ßjK”¦¦Á^à#!5JFD\$—diá`¹”Žüƒ:mgði(¾ß´m‹m¬‘ù    
Μ_À¿–z¯†Þë†ß«÷^Ɉßõ›ûzÿh©³’§='ÿBñýߒÒÇKÁ(ô¬Õcm_ÿÀdœlƒö_Ÿ´”ìF=þ"`-äp¶vþš
ð™+Ã)1òGO}óÏI¿/É:iÏÐßZŠž¶:ÕiKé-XËINRúÒäÕÕB8Â
+Øz#¨=úÊ:’þUðUQUŽ1ê¤}jYš<$z¬…ä›i­ª¼”ëꌽ76Öz™úéé9×éúՀËDŸShĸˤm
”Éä¬zâÖI“”|Àçä0gó úæ§çoIÏÈݹeÁ‘¡ëáj%Õ¢…ágzõô#t°¨E2Ф*c”ÑM Ž&</þÖBj5]ÚV8
+§TzŠæjNò<×xMhhðñôönlkÕ7´¿,T/ü»Í:=Ÿâõ§:,%·Œ¶Æ™P»=gC\¶n«¹òÃgσÈèJiz$¨^
Wõ2-E­NRH½¶­ï\™ãA…ÅÔ%SÆ®¬÷,–umm؏¢H^òøa\±²"æàž*Ú%xpçqÉÔ2´K‘ªK 
#ú5éVö’.G«Íʖvv~¼õqjXãÜ+höÅïÞs(•½VXg(¯]EŸ¼Š2®üD˜Ï¡S¦™ë•Y’#5
+«~o®¸¹înŽ”Ug¥øäOÿÙËÙ܋þ¾ú¸Û)5ïn¡\¾{ADÁÞO‹:…VtT÷á—Ùl
Ú6ÍrïáxàïôÜ%örö¬Ž¶ã‹ôEßΚ¨co¼û)‡ã 
÷½\ÂöÕr˨×BœÅ±bl¥ƒY“°£mÓìÀ×dYÊDVεP&vÒ׳^ñMX®ÏÌ(7¥ºÎxªÏËe¦÷y¹UȽ\éeŠÔiI2jrtÔËUÿ¥—[Ò3(?¢
+Àºru¹å|ß!}s3÷§ñ}üòGGáHevfYaƒOƒO½ONbQ,(ùäxØ'•sGµ4 ‡uƒŠ7$pÞ LßWDæc€Žx^˜—“u
¬
\˜2‚Nˆ0X©2ÅX   :ev
+YO쬌žÃ=')W©Æ8¦1hõpNôؙëS¶¯è.wGS2
+Ò³/šˆ¢n6’î.×F›vÏéR+”ÊTµR6–äëÍ>0°Áêͪ]à>ÚÝtÍE®|¨@
Lë摍Vc1Ï´ÌWå«ö…°MÔ»
í{f%¤'Uu¤çf¿Ä|«—$ÿOŸñ¯«Óø蜈ö?1Fu¯þt-Z”uÔ֛4K§ªá՝úM3;f²¸ö(Úë©]°‡á,SãŒ1¼#ìÏJO°eùp¨r쓭ÑÐ|UòÌ=Zú±s%æf¾ö¶Gi‰i¥5™uš|ào7ú,”qÃR%ÉJ&FNÁ¡ñ×?3´´VHpº0•›2m_„ûöÆvÚ8gžÔIûümJy7kø¼¸;address@hidden&^=$Èiö„.RNéu¾szí7ùE”ŸžRÖE4ð¼Cä%ò%1~j*pDAafÖ&¢ª6«Ó(™·hCM©,„|Uþþ©
 :p`Ž½•rfÍ6\í¢
+†`JætÑMŽ6CbI&&ÄmATBiOSVVÁU™Úd™ã225 Éʖ=Eö##Ìüälµæ²¶ê 
CUO×,5QìÔ¦u|báÓ÷c)éú_ŸZ<èºÒP»à¯ŸZü¿ò¹ŸÜ[Æ;lÞâ.}<Mç³ÀÕ+؅
—Üû‹g¯Ìe¹ñÍ?ÍÙ^c•€;ŒìüS-=5pE¥Å%E¥¼¤-%»kÓ£Qh÷S¯‹²B&8n     
‰”e*´Ó¹Ã'Žœ£bÑÈ`'9l÷“…øz*‚Á        üÎ&4ÉPEÛe:cÇë¿Â¡”©#ß9C½ÅX*A…è) 
7ï1™â¦–Kъ«IËS5Ðíl¿A³ª,U^¢’VšBæí–ê
Á­4<'Y§Ö(ßŠÝ2ÒÁÑnRQ MÏΒï<›K§ë#˜ùžLò³#L$ƒ"]2ÎûHõÚ#‡ …
?ã}0rÏæä5oß}‡â¬g_¡¹´7<üI‡V§ÑIq
³Áі’tÁo…R-oË:xÈpV™
address@hidden|ìâƒ*C?TÝtÅçÃ1d4™;›dH%?üœ÷Zœ
?¼Aï!ûîs‰6¶·Èàè
°ÐGö‚|(l†°ã)E»ëà”ð8ì¬áÜ·°h¢-,¶í§Ü˜‰ÃòËD(˜ž»t¹y …Fžx³Q@&fìMIWç¨ry9H²è`Éý´ 
 ]›—yŠé™óÙø踘øè)¤ÿ2
+È$ÞéÈ,2d|,íäà„îD–!çZùÅƖW݇¸•ãbt Bz¾w”       
)D´Ò-&>5M©¤r?)/)ûà‹û(û[Ðùõž;½·ö?UWV¬Óõg¼Gq»¿é6ßÞtߤ3=Œ‘ÂîœÐbhào|•ÕüåIße[ö…
HÛ#„úÚv¸ÀÿèÐAX"sš7e[‰ËÝmRÉ£9ïos]<’FƝ^{Ö½‡Ø™9†­5R²p™Ðo;·³=âX
xðsìw»Ú¹žº{÷L[c™IÞ$nZ‡ŽOiøÄx“Îœ§äÂd®7¶r֥Ǘ¦ÄŽ¶¡
r-¾iâÝH</Dsà˜¼nOP‚Ÿ·—3ÄC€vWY¾îX!tð
Q5~~‘áþËN¹RË4§‰94±×óI;é]2’H¿_„C
Y7š¤Dì+L…Û?<ƒÏþu±Ò-)]–¿ÖCï>aŽ        #¢+ÿyCm[®b£¶{‘™ 
áËvçíIÛ»7UÚ3äßo¥%B*¨­c‹…
å3M_¤c!ÕÐN‰0ß㿺ÅBä†+T°?YºÀu<5X|¬¼Œ-‚sš‹¥|O!‘ɹvÝKêºàeŸe°1ôêçqL“éÙÎxtF©˜–^5±ÊØäU{÷+RÁnjß&²†ã§Û:ê‘ýòª¾å‘÷_d

l¿zúº{Õ5Wœ<íS´']zäPSžøûË9û/sZ*#žÄg_"‹±ÖñÆÅ}ØS?ŽfÇ?Á7›LðÛÓÔÊhu½Iß©O§ýç¾®—ß:÷ù;¯Ðsޘ¿ê=ïÚ°¦Žªºc6åÐHkÚ³kÿB·jÇ>5±—*óU©Ôiê$µ*‰2SÒ£ˆÏ
…i;K
’»&Œߜ~ÔCVŸSUEë½#¸v›O`˜ûô§k)§–Ýúáës!÷©8•ö    k¢-ÿٕ¦å©Ø8„D!‡W^öÁááOün9…
Ó)Åj4Áç%éR|ÞOˆ—2-Š¸À ÃêI?Ã;îëå¥Àgçêò2”é 
‘õ¦E£S™¶à0ª$è,xn\ÂSÃdã\ö°*#4F­Þ“(%?ö¬0“c‘þr®I÷uï“ù¯žÌKÓï:XüÐìO£ÓS1~:¦wö“±9‡kqÀ§$)i
 *Þ-C2¼8™d‹;™Núñž=TÎ¥ñŠ\evqë±â):à´Jt—¼¹"¯Û1dæ W9K<address@hidden
+endstream
+endobj
+420 0 obj
+5663
+endobj
+36 0 obj
+<</Type/FontDescriptor/FontName/OWMPRA+CMMI10/FontBBox[13 -22 804 716]/Flags 4
+/Ascent 716
+/CapHeight 716
+/Descent -22
+/ItalicAngle 0
+/StemV 120
+/MissingWidth 333
+/CharSet(/sigma/omega/period/A/C/D/E/G/R/S/T/c/n/o/t/u)
+/FontFile3 35 0 R>>
+endobj
+35 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 421 0 R>>stream
+xœVktežih.V£TؙR•S«Ö\•J¥B­´¶)
´I›¤÷¤¹4×y'·æÖ´iBzoJo‚X±`¡*w½.袇ƒ×EYýÒý8²ëñ×î9{æ×̜y¿÷yÞçyÞ!‰Y    
I’I[òsr·®Yž“³)ãÁø&¶˜Œ-IˆýAÐZ==>]˜8°dîÞ[‘â´õf´j‘H’ë7¿X(ΖUÖË%»Ê”)iÙ÷¦dde=œ²¦B,—ISrŠ”eâŠ"%Sž’'+–ˆ•õ÷§¬)/OÙÿB‘²U¬ËkÄ%3ÇfË**«•byJŽ¬D,—*$»*Šdâ]E¡]°FZ,Ë^»nëe^õs.^J!Y‚H%¶k‰\ânâb‘I¤ۈ?ۉ?7“,
     Ä-<:address@hidden;Ðâçà¢(äÚjx        
訊|K­ZµZ?شúNYºù~ûtД-ýæ™éDk
ÜfƒQGáºë›Dètq_LLº‘ðüÊQm$–!х©¶Ó‚¯Nˆ,address@hidden
¸"®ˆ³Ót÷sŽ¶èÄåo÷”îÎفok,dôJVZê¥á²Cߌ¢en¯,:°¨Ltí†Ýy;€j0x;»=]žšx
%À$õAáþìŒO+hÓ;¯D êJtõu.˜)address@hidden,Ú¦|&é9zô m
}µ?BÂ_‘ôŠ –[ j5¨Õ*k(E‡6ÔßÛµÿðK£kñbœŒïÂK3Ž¯º†îúâ'¿ËØb4Y­ÍFzU&AÔæÊÃSÂß
½ËD'<C0Ö¨¤ø³¾×ÎÐğ4ôAL‚zD×Ö½—ïä¯TœšöÁº+(-F4ZFã0nîŒ~z¸ƒG˜·>™lëêøÀ‹[JjSÅO1eÏ>')¾n©ñÜêètz”ä.¦¹é§Evk‹Þ²Z-½îq}
 à#,€d¬ÀÕ¸
+«pš‹I”~éãýoL0W./ƒòêÀÊÃh¶Òz©ríúg×çmnÈ*céÛèÁɽhÅ?ÑæäùoÞú¨N<Ž©b:FçG+Ø:œtÒ
ÁÊo÷BtšŒ’ӏ\ ÌOEºkó*~ZZ¨Óx Ä /„¨„Í.$CKW YøþZX7ó:ÜÚÁ²~¦Ý검̬Ţ¡.°"Ï°Í~¨Ÿ…
ÿ¸¸/ÚQ‹YiéªÕøf p¢P
V0r:΁ì`svÄ   ¹”¡åí2Eû†Èéç‘ZdsÚ[ÀFqàÕè­F£•~
+§•nÄ«ùËþK3¨gÑ÷Â/¡Fn¡‚±šXX(“Ãèq۝mz5%ºLN_Lc¡kV×+*]8…ŒžaÎñ:$£¥B”4 
ÍR€Õ\ɀ‘5ðn0Ù
ç
+Ùè0Zcï5’¯Û„µqòöA½¬¦z/ºÞ3C_òïôÅڅ
Àq-íq€hSJu„‡8AoGoi>ºrÇBUl^ìß"W—ݲ{¸Au    
MÒ¸¾¤„©ªÚ¾'ƒÇ;KˆÄM¢«4ï\¥þžqßAã1a­~¦ 
[¬A¦Ãêa¡iføÎëC‹~f½~&,úÎñiÃôÁy/Iw<,ôPW*ƒ—Íɹ˜÷QGâÂq4Ox¹#¯LÕ\nT2™¾j)L 
ùÐúåðՀ_¬Þj0XiùšÂ%P»
‘W£®#ŽAÆà»À'£•^­àÖ'ˆê(RGc÷üŸÏD<­x}ÜÓ6¼íí{ä=¥^ 
œ6;ÇØlÞ1çÞÐ'‹AgÐôs¶IŽrú¸P‹ÉѬ̵€’)address@hidden<`7D¸~°v2=§…§E¯}YW*à       
øvmPËS'Qzԋ²þ…ngŽžùîä÷ÿÓ$¤dI%ŸÉQ”&œ Wbw‹¾†½¿¦m=“)A©Î0¸¨ 
ÆÛ`‘±ezºg&¦Ç5R§qC˜ùJ˜GÍ
POmýa2Í`Ö³­‰.¼k»BT®u_—­Åä.Aœ¡åÃáÁ>-<‡TçÓÉ¿±gbYµ†~qkÕ¡üî§xòâùx6¾éщ‚#*ægÙ¨þ˜
+²’3²Òï}"hA—³‹sќƒãx'y
œÉdååA›Íy¸Ž7‡Ñiv99.à§O|öŒú8o‚%h.ŸgÎJ†TFÙ©r<ÔYíÚåÕÛ*=’~˜ 
þöù—ß^<Yˆgí1׃‘fAï÷rö ƒ§*a•rb&,?;í› 
ßù^®:ÃÐÙÙ>address@hidden;q¶f;k.^ù$PùºñÑwú>ë9ËøœQã{F_¸¯ߣŸÙ¶v'Ý}ilt
(O;»G¡•ULiZMì î;address@hidden<«^°'ó"h 
¯¿-TËê¶àµ‹X«‰§ø†oñrÎv}=ÐӁҀzUØæf#ÿ`ax‹Fõ¥m
+$ï2òBñ«·Ï½¼Cû¹>à/¶úaÀÊ»Õwk3TɛÀVÅHíÍvhœŽ¶øŠM-€ŸHøI€ž›õ+º¤R…
B*íRô÷wuõÇ!®¬àW=úå8 ӂX[lŽ¨u†ºjxýâ:!^Ž8ÏË<±îò¯Ó¿      Ý„7Ë_g°
ÿ"ÚQ<òá€ÿÂð    æµ³S! ¾po*©6Kò<S’»­ªä×}&Uæj?D¿„IDò³hí
+^y6Uptlÿ±®…Ðr¢Î—‚Q.¯ªnr=Íôànû¨¦V¬Àw¦êeÐYOkڛC|ò¡îò…ÆÇ 
•ò|j­^ßØL[Mš†|k=ð)´ó™‚FÞ9›ªøhôâ¡olübtÆƂÌ=jºô!6ôÔʁœß{óCƒtRudzu÷ú|­B\䛝ûá<zÃóçt»æÏ'ˆÿöÎ;[
+endstream
+endobj
+421 0 obj
+2459
+endobj
+46 0 obj
+<</Type/FontDescriptor/FontName/STLLYA+CMSL10/FontBBox[17 -250 1123 750]/Flags 
4
+/Ascent 750
+/CapHeight 750
+/Descent -250
+/ItalicAngle 0
+/StemV 168
+/MissingWidth 333
+/CharSet(/parenleft/parenright/hyphen/period/one/two/three/four/five/six/seven/eight/nine/A/B/C/D/E/F/G/H/I/K/L/M/N/O/P/R/S/T/U/V/W/X/Y)
+/FontFile3 45 0 R>>
+endobj
+45 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 422 0 R>>stream
+xœµXyT绞˜f7\S“Ö&Ø«ui-¸Õ½Š¸÷ZAHØdÍ:“wVÂ"TŠŠk­UëÖíâ®uiýÕjk·oÒ/÷ô~!jýÛûëé÷äð93ùž÷}ž÷yŸõB'J$y
…,
+\î÷ºÿ¼À‘¾îo¼…
—E€NÂ+ârlù95Çé¤>¨ª7ZڍìE‰E¢YïúÇ'¤%ƬVyõæ=r„qÞ~q‘‰1á¼ç…
«¢#ãÂUäŸXïøˆ˜HUڛÞ~±±ÞÝw$y/ŒLŠLLŽ\ã9Õ?>.A­ŠLôž¿&2qEQƒý–Í›¾|¾ÐŒà™³Î™³hîâ%KǾ5nüˆ
      address@hidden
¥ÆPè±Ôpê-jõ5žz‘êOÉ(9åE½Dõ¤úP}©~TJJu¥“VP)µ¨³èn§íâiâë/$KúJR$?Ó9eë™Œ.#»ü«ë±n3»µtŸÙ}o×/WOSϽԽl½öžÞ»¦¢O[ߞ}
}¿þC4oq°—S§È!á®Ø)AÅÒD:Sëp7<˜Ét|*TYÀlÙ¢¼'ì°:̛€¼‘¶:Ö²>°äk`*¬µ˜´l¦IÃTÑç‹tÉ:NcÒ*G»ì†õ\öD«i.הÃå2ÂVÚË©ZîæVŠÀ9K,;çJÙ
+SÞ&È£Q»       ŸtýK¦Þ8<wUñï›[ Îsõ&[ƒL³ ¯µÌ›ë”•{j•Õ3èmxÏò`åë 
QáÓd¹»a/´™Z9¾ÐRÊ0›hàŠô; ؤ'ðe      
V{uÔï,Q‹R4½[^Ùrà“2MáÜ:GÀJˆ°7ʀåM\«Î’ZÈ6è5¹øU<EöZ¨+3˜åPZ_¾—·:dkYX 
ȯ1›4’–)£ÏB‰®<½Œke8CØÒMÈ=•6ó­æР…%•ªù˜Ø¾hsš…
¢d¨3βe&9ä$¦†š<¿Údù‚º
Θöpæ"¾Ø\ĤÓA‘ŸÑÀxý!.tT=©ï÷`1úÙ9Dj¨6ñ  
ÀàIô_Ð6ÎÅ“´¡ƒŸ‚jâPv8Ã9L6‡,i|o.äˆ%<^ùo‘%ۜ[
ò"°ZÐ/N/Ow}þŒ}Cl³å3Øò=ð        
ìbŸ‘LfÙìÞF~ë®Ð`mÌ+¾r;Q–O¦“À9)ø¬ë¤ÌëN-&ª9oG{"aÿ#1îœ*5Ė’ö”™äv¶Œ5tà'ª““Øì8C*)`ˆ•
   /Óhýúèîäcc
+•?VÜÿî2ק~‚½8·K[‘Ùº/8rԝþ¾ìíµføâ.J<ߑþ©þ6T+AóèÇå£"|¦ûà”Ï       
'^ì\*ܐ¶<fÛã¦>address@hidden,0oä       ‚¦²ŒÔLMŽN£ÄQ؎_D{õ›Á
+¼¼þ Ô)¬ŽhÖ"Aóø(3¹þ2·Ä 
7ð}Y¦—‘îÃe³êTƒÚëÜ5iï!ŸÐ̒ÓâÉ褘Õæì<¨‚²4ÉJˆÿÜn1zèô‘j·˜xa}âSÖ·ÑmPn,f}]­2c¢6l0ü
㷅R«Îšk1ÈÑ1×ÍüLž+y    address@hidden|GZ ·è,Çr
+ÎÄ8nñ<™V&¯Ë=¾°2ˆ _ÃñRœ†wGc¿jwúPyïZÉ#à™"o`µ áº¸M~3‚‚–-L_
+ÌHÜý8š[
+hÒ7¨—òà¹;'¾u?),֚ÈõJ>·ldp Ïâ—.§z©ëœãkEð£°ñ¡ØY#
“¢Ù¸ê}q^DþTxêŠ{¡1(-C+PšÂ¥p
–™xùìÌG#Ú¥üôñ×M§¹ñcž>1     ÷öQŸ´z3:á;9rœ}¾£aÿDˍBˆ 
hôÔû*ñ¼ÙR|™ïéï,Â>éF<address@hidden>“¢I4z    
õûuºîw¿¬Ä?ÿ•5<ïè†Ø&˗ÄvÈL_$*ü‹™¾-4?Åõ5}õT”L6&w2yüœh_Bæú˜S´c'êx±3 
cý,Á~+ã‘䪟¿UHnӟ4d/Ia3Øte-½m•$ҙ¯Ç'f4݂
ÖF«í™ãÞ4RlÇ¢,H3e“+‘Zâ:EPKìôÙ]2§QŽrmÿ_+ê7.þT/‚뀵¹q
£FtYz“>א½4MgӞá›²Ñ˜qt+*xz6CL±6l`¤þytÛ:ÚÝËËnÜw`·{¢×ӓ³ìVRv™›³[Ôvè;:êè#D<€û÷U
     Ùè¾ô¡ý×óðsoX; ÀçÜÇüߔy|CþÌ8ž§‹ 
é»u¦‘|´0ä*õ‘œ61c/­o¿]ûx³Õ˜¯Í5é²YEÖҘ˜`ÂØ÷¿ªá«¡FI¶VMbSjmteR3t³‹Hƒ¶äUñE•yòBs#ÙßÌ¿cÙÄ܃%¸Êtƒ=FŒB¥¶&«õxÄô·Ú´â!‡dXÉngtÐËujŽMãr•Æm›«Z0-Ú˜¸ÇI4ÛhÚר›òô­o÷ß
 ƒÎ|<ˆ¹ª3Ÿ“ùO†¼
ÕÈ:ÇdÊÎQNmYÑær¼¯ÂËq
+ž¤d¶'ݼºóH³²XÝQLn‹¥Ì=¹¯[|‰uù֋nµ£üv±pë‰{éM\ŽFº0¹ñ½Ý¤Ù¸‡÷«¸›ÚÞ¦tDÕé¯%_M–Ý˜7ҙÉs|ßxmÌaDoÎÛ
+%Šb[rL†tVƒC9
Ùî¬\o1äó|Q¢í¤]µoåoDUý£^¨k%w$²M·{}AЖÈ"YŠu]¡Î¼®4v'a.µ_ºÄ‡¦L7•À&E.hK,VÞlQx2×iÚéYÎ0áW©gß2î}ÍNs¯Ÿ5àÿ×I.§IðQ2^ÿJ®y–ôßÝôÏÌb*—
 #tÞúnò¬px©ËW,䑺<š+4×ÃV"€.ÍéC¸$v#Ä
+÷ "z!VKjé½È§h[ l¦*Îʒ%ªõ¸n•Ì°žÍL$QkÞµ À·ÁcxŸ%‰PI¿µ©ÀÎCž¹˜`ÅHx 
ljÑUáÒ[sÉM`j:address@hidden:}î$'uèeπ^†&–/ 2*Ú_WPåÙÀ„I"¿þÑö¯ÅÎÂ%鳝É­4ŀ
+Ìqÿ¾sà‡I$¡Š'address@hidden"address@hidden,4'¹CÐÑҍ鹧ÍPâ-®do$q“ò䍧¡¶#ÍpCXKÌ*÷åŸj
+W#©ë7Y^Š…Ýe`Î+,{²¢Ÿf›½ba0^Š"Ñԋ'óÕ<á'%©[¾“–ëãdüӆ´Ìl­^é¢ðÑcè‹ÿ77 
™HŽ:‘t_fÕØ2![
+©
+CìVs3T€¼¯‡}\«Ins¬„|âA¹×/ˆOU=éàï©âßµÂ5iIMÕÞ˼'ÊG²KH
address@hidden:¢*
«3hpª+Bö¶Îƒ…$ʝg`›Â£œhv&©-Vñanë<     
ÅlÁ¦<mÉАŸ4èsp¸k4¹5•Ä83Xÿíç`3ä‡>pý$3g˜µ›ÉÖ"k²VÙUXRygåž//U×£NQ 
õ¿QLžò£äb”"œ–îÊÞÆUºóם{¥…:žã80j”ËRVê֐Ãm¡•ÙVŽ8 
8-—¹–u¢‘![œÏ›òM­G¶æ€#bfŠwŽ
+Pn|oEÔbXA;s®X¹B“˜÷˚ª*³íë@@ƨӳ¿Eý”ˆvÈàkC—…¦­Rv ^µßüvIz—‘… 
F·¤Åç·ÜûèB}ÓáçIÞk,[ËòèÙ¤ŠKªÈ°[¹OCªCð`<OÄG^oÄýüÔáª>Tž=Sþ%œd>÷gÜ}ÖÊ%«UŠ3øŠ4bEÝ·ø©±]YÖÔòÙd–¾³Z•
…{nRês¢¦M†ŽžU   ç.•n   ¡bá+âcù¶|¨d°ŽÆ}øÍÊDz6^MŒ«á›B¾Ä\mÙ

¤“aôªå~£V.ð[?_úFæhÈeÒ6'×ï·µØóå·#ÿk÷=¤8{’R7AuûÄȈîJ£ÒñÀw÷e|o-øžlæêzmù®Š\›ª\“¿»‰ÁcæÚ´ƒã°x˜ïÈ²Ð÷ãÈ{‹4¾jM}jitmâVhaN_<address@hidden&,”V§Ÿ
¯I¯OnTÁ
+fòè¹oN9úٗ§/address@hidden'D€êŨqR¼•Î] A[é”ÍßÞ¬Պ7QÞ%±0}*Í
Êõޜu+V„B,‘IªÃBX6S»­rÇvUQzÖjý‚éí©ÇnÝ<þÍÇʨ§

‡ƒ8ÿÊÜ÷ŝ±ïüVÌ ¾ç>P§À¯øIƒöÙQ†úÔR–T·œþ˜Þ}g“q¤:X©
+œáNê")±š_Eð›½wJژXš“§*W5lwÔíTÀdûìrì#¼¡ëba°³¯Ô\HY˜ÍÈVÌI{’e†uc\2C,—5˜ØC¹M’“¼nÿé÷qô”œgُp
     ýòˏÑÕ_Ѫ{b!M'™Ó¥d¦F“ÁÄÂ*6‚Då´Û•_lÝuìÀ©sð
ƒÄ£ŽŽÀ&â>s#šÅ

5»¶¥•ÇëÉC•Q±ãÜÇ»Nó厐ÙÓ×MÄýpw%^‡Wææ² S.töñ£Aը돧kE÷FýÈãÂ>tOZ     
õP³a«:?Ö3CWà⧔œMPìÓíh‚f¦:£&:me®/ù)…$¿\\znL…
yí:ôŽ1gÞ91÷öœZ’´£¥bGíÞÈR<q%¯
˜}MI!I¹s"–(#—Esal*©PÏéM¬ôLn>address@hidden)
Š#'ÁÜ¢±Í“vø
,Ɩ—gëèµ½äÂÝS¸H,¨œÞOÙ$!MŸc2eæ(\Ý]+59ldȉbªì·9.y“>˜TBèËGnB[á(É
+O^ƤÒó³mö¼²{æåî×ChÐE:ÏÕE‚9úߊAÕ¤šï„^RØo¼w=òñì39Àè
¬ŽØP¾VyqÜ6Ü     address@hidden
+nB:@^Œ—ÚîœjÇÛÊцb¯.éìèz¥›¢ëã*»w±vïNQÿ…O
+endstream
+endobj
+422 0 obj
+4319
+endobj
+39 0 obj
+<</Type/FontDescriptor/FontName/DTIQHQ+CMR7/FontBBox[52 -20 516 664]/Flags 4
+/Ascent 664
+/CapHeight 664
+/Descent -20
+/ItalicAngle 0
+/StemV 77
+/MissingWidth 384
+/CharSet(/zero/one)
+/FontFile3 38 0 R>>
+endobj
+38 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 423 0 R>>stream
+xœcd`ab`ddäq   ñôÔvö
2ñå~H3þaú!˼¿ünjŸ:¬ë¾ÿún"ø]Ÿÿ»¶3#£›W¤s~AeQfzF‰‚†³¦‚¡¥¥¹‚cnjQfrbž‚obIFjnb   
“£œŸœ™ZR©§à˜“£ÒQ¬”ZœZT–š²Ñ9?· ´$µHÁ7?%µ(ÉÀAAd{éáÿŒ
¯ðýg²,<P¾ü'ÇrÆîgß×=cþ1ãûeÑîïLu·b/æìôÝlÝÍñ»¦û÷Rgçîßó¿×|¯éþ>ÿ²üïšß§Ec»ý–•ß­=Ö}·ûj÷•îë³-¸uzÁ–îƒÝû³æÎíqî6évìv¬ó)7p/Mîæ€ØÖ½þǒõÛç3~W½ÃüýñOÑe=ùrÞ>]IÝé싻ÏvZÎñg{Vwº\j:Ûܞïü}ºWuêXØű>•]½{Æy¾òù?íçÿ^2ë{ÞT¶ß‰ÓØ×sÝâ–ãb1ŸÏù|2Ï­Ù<¼
␦!
+endstream
+endobj
+423 0 obj
+406
+endobj
+64 0 obj
+<</Type/FontDescriptor/FontName/JGQOFO+CMTI10/FontBBox[-25 -205 1124 
716]/Flags 4
+/Ascent 716
+/CapHeight 716
+/Descent -205
+/ItalicAngle 0
+/StemV 168
+/MissingWidth 357
+/CharSet(/fl/quoteright/comma/period/A/D/R/S/T/V/W/a/b/c/d/e/f/g/h/i/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y)
+/FontFile3 63 0 R>>
+endobj
+63 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 424 0 R>>stream
+xœ­X{xSežN
address@hidden@@Är+¥KïmzIÓô–6M›4÷ó;IsiÒ6½%mÓKz¡¥-”[[Är–‚¢Ž 
‚¬º£;³»#º_êé<ì—EGŸgufžóä4çûÎwÞßû¾¿÷W.gò$—Ë
Ùºygè+¡Omؾgˊ偿Ì÷Ïãúäÿž”ùÎ?ä{ôafò<ˆ"g 
39<.÷•×öoȐäKEIÉÙóoX2Å/¬ž¿>=A*Š‹Ïß“œ“¿¤Íߝ'JÈÎ_6}ZÚü]Yów%d%Hsâ'žº!#]’“
 ¿=#>A*æp”¯ÏÇeÄK6f&J“²’we‹vçìÉMÍK‹Ù+K
zú²EÜ.¾u'’ÊÙÈÙÁÙÄÙÉy…
ó¯œ]œÍœÝœW9{8[8+9aœ­œg9{9ÏqÂ9¯qöq¶s^æ¬æDp^çlà<ϙŽ·˜Á!81œ)œFnؤàI©“Îð
+&/Ÿ\ÔÆßÈ?3%zÊuÂœü§ŒS÷O›2íÒô!óBnÏŸñå̬WÎZ<«o¶kö‡]}èŽ`å]nÂÙå!w'ýGØð¡HŸÿÕ:.ŒNç¡=(address@hidden/éƒ6C+–
+¨uªAÍPZ&É>(³”—U×÷5ö5ôHÆw²/åeG+‹AV\æ®3t“pÈЄµj*Ô 
7ؽF*z”O{h³„rÐk´J"å        êÙAl?ä.÷s‡q
Ý8æñ/¬SzfUÝŸw™3û[4ê$°/¬?Ä~E·…
aCù,åMPE¸åÎüâxíîð^ћw¾øú¿É?ûIÆj²€YèT»òÒ5bµ‘|™=4û?Ś¸Ðó¢JŽ¶Ÿoÿ¼q„²»-•PKœJñE/KfkU°T0¦ÊRÒîkúj§Ó™¥’(â©ÌM™ë!œxvX|ú˜¯¡¢‚Äh>³úŠÒã_êᢡ35çy¨mX<V·ÅS1LuKeCÿûqÔ•»ý
 ;UG‰%KlN:ñÇ´ÄâPƒ¦Œ…zR-‘,Ù     D.íªltxí
TÝP/š
ÃÄÇ{<‘/ì•‘š“¢ÖhH‚¼lyº,®h‰‰3Ysµö¤/ˆ•rƒL/§Ö±CF-­ƒPi/¬+¯¶ÕÚÈ´Òƒº¯÷{¸pÅÜâù7û§"´‹÷’;åõM
žî“Ñ]Ûؙ¬€]À>±øì–G}òß.‹Ú©ÖÓ´JM®_úŒ¾ˆ0iÿðPÓ7ÞÔ¡K§:ûÁ ýFW,Ëx÷QÉ*øåWy~+ò    
address@hidden"’µ²u‚øDß»§¼ˆ×všê:¢õ0'›îˆÎY˜J‰÷싊„ï‹û¸0ÂóŸ]!`Ì&;˜ˆ2­YmPÑ´\¬.¦•4ȄJTž0iTCÐäN¶¨Ð'iŠ!Ëc`ŸfŸXulÓû‡ŽºOöPÎÈ®ÜNèw£ËWÓ]>Œ÷”¥˜¦s´¤b·ì5™ÐTi—µÚÑ
 P§½¾fÔg[OùPpMÕxþØ©^°C=]“á;Ä ­7jï›ÝëCOCâ_™÷9ûÞBmˆ§‰¬Egk‚k¦Ú 
ÀKhł+WbXV›·´Š:„ž°4Æ‚qÑT´-ùßГ¡‘ÑI"1U<U.ý¤Ð‚\“AÍØ;.\ˆ~Ç®Ô      
;U¼*–FoÚÄNÕ-»9(5A‰­ÁE¼‚tÝ<¤FrA+\6Ÿ¨½Þ—ÀFK<¼mûøì¦'V}õËÙª|çp·£ßÖDY=‚#èù¯Í
 zê%¢ÇØ …
+Ճo”ëãŽÂCë® Ô"­z3r%v’2¨¢Ð9>address@hidden:mL;ât=Š³C̆®ZDEîÚ³ˆ…
ü40Û¬fc
¼ØýZ8Tâî©MeRr†œ,nÉìÜď™ÒÛåmj¦òÖ2÷’2šÖo£‰"|Ž«ÁÖÖi†vªû]ÛOkg3Yð#¨ô7柛ñÔÞðË|hé‡n|ЛèÂMjõ/|̯vŒ;jµ–_ùž¹ÆuÕÞå:„·r+äé:Eä95ªªÆƺÎ#±õ±K¤ìÃ"
™ËN
+ÚÀ.ÃE]à¿<address@hidden)X 
êÉJC*舢2™·ÆWyxp«3啤ˆ9©Š¯Mù;«ÕÖb7œƒRþ‡/=þÑ3nJFæÌþ}1$È]]¡ÍÍ  
ãÄA!AHœuör7T%µ™ùiŠø¸®ü›ß|ðoԒˆëßZê”
+ÝUq¶Z¬'gÕ¢4GÏc'³SØÅìc«Žo~àHoy9u   U
+¢Ø­êÔ××îa˜ñç‰Vì>N5ž>ڏê\Ùj5…
±©¸Íé­hÙÈ)÷Ã3hÖ[<ÿÃþ)‚T½Z*Bi-h¨ö–9{xûTøï.)šµäQU¿
+ˆTɚ…
9;-rrÀ}˜‹µE¹ÙQ¯'½ƒžìF!Çn¯­‰-#3¬Iv8B4¸Gn4u©âäßØ"rŒ÷¡3¿ÁÙÅc·i#]F¡²¬°Ö]Qí4“¥®6ô°­y¢—•bL5mumGÞ¾úÏèe¯&'§§ºç‡’èN#C4è›åq;>Ÿ3;Ã6&°µÚM6|µA-ÿ
KµúeaaTº8"Ä|ªÀýãÐÈm¸F\ÿýöA’­þg`çõL˜ŠpüG'˜»ñ„:½\=[ žh 
o'ØËJÁTZ‰ë]„8üÙý}ƒò
+C‰b7¥< W€ŒX>õ훭ßÚmFkQ­+6»ÓSӀH74µyÍ
f/e®·7œIîÛWPòk«‡pi„>´¡ŽÛ|address@hidden(address@hidden
ªlÍԄL0BøѬþ3ÇߌùxÎl?º‰ü¨DbÉS¸DjÓä­h¯è¢<o¹ñåhÁ¬©%ÞLhL\*b—èvïÇ‘.;K)ÖÈ(ešR¬Î.J)Ɨ"A
…ˆoˆü²=YJÎþFçÏ4æÙ¹’¼iº²®¹¶å^fÊñ.oæ¢GÐÁÞè£kL)c…
RÂDÛU:šV–Q»ã/odòp»žÁrñgJ¸gﰄ²<Z—þ¤bî`¡ÝPïT8s ‰X¾vÑ3ëÖºSoi2;I01&L|g   h‹W
gŒڀíDkÑ[mŒÉa'åÞ6GEWØÅÂA Ð,ÄC Y-šÞÌ6Jê+6?Ý,³¤•éL"WAôÿá³[_6o^ŸIkô9$­
+Àâ43Õ¥7š{nî»8­òüÿ<ÉÊàøIü8~öëòÁXR$”eˆÓñfСŽÖÖ²&숶öWE—  jLºÈ
address@hidden<WW4~³§ÿÒR0›I“‰aÞãè±f7ÑÁ¯Çy_c,1j)ö‘±Ž’äÕJ,É     –—ƒe`ÈÔ œ6
QVuNR…|9¤™a֕B%˜%ƳIíkç+Ï àÏx~•š ³Ø'ΖfgÙ4V
ِiNÅΔq€-e§„)Oµ·Ýnz—´TY]¿é´Uy¡p€X~Q|½týÕ{/:|T1a´ÏÞú‡Œ¶ÕÖ\f"ÐÁ.ÝÅ\Ø)
è
+œš4¸]l8.í:êi¯u’žîÊó˜I÷«Z´O¶óGb¬¯«·53Êâ*`dSÓkeõ•nw“oðìác§°qڔ
£Ñ%ƒz¼%{škº½ùQ{£câDä®-ryrv©I’{ˆ¾w¾âÌ­óhÆt&zI É sAA(Ӟ߻  Þ«8í}Ï÷1i«µüZ
#ØG!$ ²‹¼Ymý†jhƒÎŠÖWbä,address@hidden
ÎýÆÂ<8†³—.
+…{%žè®kj¬ «;+/address@hidden:address@hidden;Üuêö)EGÃcŒ´‹kbÂÏq>æÃ
+_ÄÍñz.w:»ÌvÆ        ¸p&c™2Kb)™)f1Z¬w¥ì4UE7h Š”yz
Û7–7wŸßÔ:Ä8*
K       †Ä8$"H6§5/address@hidden)S‘9ç"íR …±s²ÇyL•…
jútðp-µÙqYő%‰”2–Ö+ߐoÍ]Š(
+*[íeà"¼¹Ö"©47%¾/û؉öîÖj²n×I¥ˆ¯Ð#u÷À•ë(address@hidden@ƒ}…ØXBme+~6q÷ 
g'Ö¶èïQ7wÖØqð`:©¾^¡™"zãŸôïï'췐äòoÒâ1Š6¨b!A¸ºoó54£'Ñ¢À¨š 
ÊM‘†±4ÅýþѲÎħl
`rÕµôtwtÿÒ8Š+ðŧ·îqù»Å¼ï”þ˂Ž
U'JLi8Åٙ˜d*æ$™sRYFÛ¨jºC‹Ç€b]‰VÉZÇçæø•43ú¡ÚZ{‰!ì¸Éà‰O›o€D*°'address@hidden&
+ÚM7^f„?(âg«1 ý Îb¨æ±¿2¹&½„.0[ì.Ô쇹ž1#m5±âÀQóý¸æFë¾åö Eº…¿‹Øv 
®“ô„Á¬±Õ h:šÚ®ð¦ÆI“Å©õ*w]•³ÔHۆ¯ŒO‹×ƃæÒëu­ù'ã†Œ®‘Ò    ““…ü\ 
i­¬$y.ÍÝ_-u¦š%À®Ù¢TöebëýØy¿‰½[ò†ò
e”PuÃWÿ̀x _ÖñY?z-h"/ kA(address@hidden  Êßv}âê­¬ìÃðôC£,SS”ƒ³w` 
­«®pXH†Ínš€
¾åâòômGîÎHMIOɬ)ðvøÚ[ɉ;üÔ=`ƒxè/þ;ehÂÆ-aE÷‘­E3ÑT<Ïéú¢¿G¶º¦Ìá 
Cr<£¿÷°MN”eâ³1Î)¾F¦’L^]7-ØS6m‡óO,8
+endstream
+endobj
+424 0 obj
+4288
+endobj
+58 0 obj
+<</Type/FontDescriptor/FontName/EFTSJA+CMBX12~3a/FontBBox[12 -251 1139 
750]/Flags 4
+/Ascent 750
+/CapHeight 750
+/Descent -251
+/ItalicAngle 0
+/StemV 170
+/MissingWidth 375
+/CharSet(/one/two/three/four/five/six/seven/eight/C/a/e/h/p/r/t)
+/FontFile3 57 0 R>>
+endobj
+57 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 425 0 R>>stream
+xœe”{PSWÀïå&¹WDPëmeԛP¥âźֵ›ÑMµI0"ò҈bå!á#*ÈCò£Q$AÄ,]Ÿj­²­¸Öé::S_wëw™ã¬{qkggwÎ_çÌ9ß÷ý~s¾¦dMÓ#>Õ|¦]2E½<4*hæÞYúÁC?q
address@hidden'©‚æÏV…$Mq1ú$Õr}Êc¢>EÚ$¨´É1qÆs 
*$!AµjðÅÕ*ã£i—qÓ2«“·íL1šT˓7MIEù¨·M[RôsæÏš9k6EM VRJK…
Q«©Pê}êj4åK¤Þ£FQ<5\â¡dT>%Ò1t—ÇDD'Ì~'K“y¨üœb¥Â&õ~ÃLÍ¢2ÝY‹KëÐà¦ýÄ"3=0›·ÁÂ'jm璆ð%ûH
 ñ'›‰'‘IhA
²èžÕyEÙِU¨Ì!S        KaÖÚk[ÎÄ   (À³ªÛç{¯÷½(ë„>Àaúãd±5§*€³µAé= 
'kÜèï?pÒ7‘Æbôbð™Âkð3EãÎvÓeàpÜ«ûø
+ɘˆ¨Ôøe7KBöÉuìÕؤ|}X£cmÖï IZ·Áfá4bº³çh+p__Š £‰¿:*\§«?Ÿ 
ô~ãAÿ©'ωÚfü£Cöœnj…Ûy[14ÏíÛp^©wi¬ŽÌ˜ëOFÕË8§œûµº*òÒöæ)·/
Û-Ýð/Ä1½Êf™µ­¨µÎYsâT½^A)ñ*ZËy¿¡¯ïÙnÑÓAßüÇKä܄;yG    
ÎÂ!ž¬Ü40sGZc££º­+²)úã8~PˆŒ‚ÌûŽ|û–®Obk†{Ð`áܳYIÛÛ¸¸ºë­µH3b^â6\ 
­[œ8ç™â¿-ýå-¹5Ç"ÕßsýtݎE±ÿÿVbpeQyN‘uã¢Zúž”k˜‹ÁXÑŸÇ 
address@hidden@@·õiaýþ–òݝöÞ;B>’
KLJXßØIú‡¨<ì8{P:address@hidden<BªåÙ¡Áì3¥o~öŽÀiŽ_P^QKww`2Žf0P<ʟÜg‡*h€¯à›¶–šîsR”CP‘YhýÙ†ôuYZXÑåë«s­Öà2!;MIÚÙݐU[f-*;,TT:Û÷¦}¬†ñÄgó²Ê¯â”=GÎÖ;·Û7'n5¯Ÿ}7‡bàӇ8½çýDÆÅDï‹×)ߕ†Äq=›œ’cñ=Cñ_<\9pµéb½««õkI
…³ ÁdÌOO†m\¬=åÄ1Guûå˜+’dáBR¹Hfãèg? 
address@hidden)‡>=ݗžÃ‚‰°`ü;9ub%zJ^¤ôžŒèŸð¥e`Gb¹@&Ê´šZÊ-eœ^±•€Ü¥¸¿­./-¾/iç0LA8â·7=!"‚p9A°Ž[Ò‡+””GŽJíÞ8­e×ú¸wÌâC
   ·/÷3â0QÆÿùXïiø{9½ÐÄwñ¢É«í+îlˆ|ín
Dr„}¡ÅÑðS?rHÏ9Õ$%/address@hidden; 
Š[°À¤Ðöܽ}®£Óþ²Ô?ÜíñD”3ø|€å›-/„„v·[W£8=Ågp¯ë‰RǺ¬ÿ„óÒú\RgqìoaЯ£o×àìôÅňVŒçõŠ‚]¹ÙûrB†4'¦+Μxôתrdîßè‚'zªnIsI>9|êw†­ÅY×áJ¨K8(œíè9X'}¥öOÔר
:%I$©Ù9`³oš8}g¯yêGårÒ-èËяÁJü‘GŒÞ~„Úvàd´Ò]ZÕǹ¶¤fƒ>)I?ýÅjôÁùw½¸`ú™L··_¹
+w¹>õ5¢$²ùXۚ~¬ùTM‡-ûäúÁÕvŠ{šÄÄü
ñåö¸í£%³0µ0ߒW¹Ï¥CíïVQá—JZ;üS⟺'‹!ŠÆƒ&³22òôõ
+¹O¡ul³õ98á$<»¤u2Kh1™'·°Þ™¡¤¤?¯U
%¬Û顂§,¸ÖkÈÉR//¤m^ʼ¼)êß쁰ð
+endstream
+endobj
+425 0 obj
+1801
+endobj
+78 0 obj
+<</Type/FontDescriptor/FontName/FZFOTB+CMR8/FontBBox[-36 -250 1070 750]/Flags 4
+/Ascent 750
+/CapHeight 750
+/Descent -250
+/ItalicAngle 0
+/StemV 160
+/MissingWidth 354
+/CharSet(/ff/fi/fl/ffi/exclam/quotedblright/quoteright/parenleft/parenright/comma/hyphen/period/zero/one/two/three/four/five/six/seven/eight/nine/colon/question/A/B/C/D/E/F/G/H/I/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/quotedblleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z)
+/FontFile3 77 0 R>>
+endobj
+77 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 426 0 R>>stream
+xœ­yTT×öþGæÞØÑÜÆÜ£±D%»¨Ø)R¥÷Žô63{½w†q@,¢Ø5jŒšDc‹‰æ™5E͹¼Ã[ùŸ; 
IÞËË{ï¿~뺄Yœsï¹{ß·¿½GDõïG‰D¢AË—¯Û¼øí%k6Î>[ñ¯‹øÑýø7Ä»°ú狀R͚GkοnŽ2‡¢)Ã(±H´|Õö%Á!±a¾»|"¬&,™h5}îÜ÷¬z
…ùz¸Y­q‹ðñ
+t‹ 
¬6{øzEÄNµZ`µQØnµÑ+Ü+,ÊËSxæ’àÀÈ¯0«5Áž^aA•¼Ê~QlÇ¶5‹ã‚=·¯]âµni¨÷úea»6,÷Ù¸"Âw“]¤ßæ•Qþ[¢ÜbÝ·Î3{Ð{“­ϙ2wê¼iÓgŒwš9Áö݉‡ôo
ØK¶PAûD)j
+5†r¤ÖQK©¹ÔTêMjµžZFÍ£Þ¡ÆR¨åÔ4jµ‘ZAM§Þ¢6QvÔ
j<µ™ZIͤ&P[¨UÔ»ÔDʁZMÍ¢&Q[){j6µZC-¦Þ£¶Sk©%Ôê5*šIRÔ`ªDYRC¨QÔPêuʜN 
ʗz•z…²¢Xj€h9Ôj’Š&ÇúR(zÐo©˜×ö£tÿ/̾͜“HîӞôƚWú½âûʍ+4
Lôî 
šÁk_’5tìP¿¡'†ùš3æ®æLJOž4üç9¯š½zð՟ØöÁk†‘N#¯[äZγ¬e3êÖë_OxýÂh÷ÑOÞ0{CõFˏ9®M:Yê'ýÌÊÙê
 õk¹õÃ1†7¹Oªòk¿BFþFяÅü¯¨ˆ
$½¹Å«™*q–ç4IùZºŠq{ŒÙbp;Ãl5ãWMßT%{K»Ëioyò.ҏ?$ò«øõWÁˆ¶ù¥•"~~—›Y$ˋƒX¥e&àðîû)!Q;address@hidden
   Ú$ȹeàVæüè{jœ‚ÓdÛY²%Ž¶‡”¼¤=
address@hidden(‚ûb~ú‚­;ӒoT’§øÈäàFnéAä%èyq<address@hidden"=3É
+gZ`•¤—€
+4–µe5g¤]d;!¢`øŽC±¼ÌÍÀ·p±\¶˜°øBæ¨j
+ ÑG•DFG$¸ò>ùàÈ/ùŽœf­]‰ò0½èÆ
xCÌÇ¡Óì—^'ÇLpYžÄ)¾—àqÉf~ô•ÜtG).¥]’`5yÕCê6¨'ñh…CBtV'A»­¤Ÿß9zþ|address@hidden
+ãxij h8²nF
+A–ž©H‘qéQÁ6ãY3㚀Æ^?y-ïÄ6K_fZo˿ʒ¿:w|xSY–B· nTX+ĬM^     
"KKOÅð¶F[dš¬lÐZV” QžCÒ²ÖB"l ;Êè $µ"9a½^³œVېXúÑÍê3PPç…
wÝ¡J3@>¨!¿°MAÈ'ä%ˆÊ,!1&ÞCAßšNÐÃIhÖBB^t=C^áғ–^ü7ñ'îŠQN×6­R¡ÛøUKzžF‡ÂŽ·H
 ÛÕ #W´Žè¤¼žV*‘¶g'j’‹Á²´…ÚB”Û%¶P*̺/¼d‡ä69Åyr©à6ÙI/´HùrºEUp“«6â÷%! 
—¥ÇâÝÝZÔü82™é¼5‘ãÝC_>é²eÿ„v“%ˆ{ò·ï>_p›K‘¨æâGp…
y0þÅa|™Eét“*ç0‡¤’§íÖ¯X·K¤X„°&†£JäJ?>ó¾Í<»eãzžÑ‹€·ó3y+6'O¥‚\¦4   â9ü­$ 
  Ï73H²ŸU7£þÀ 
‰ê*—Cªe\”q虤m1¤`&Æ%á(address@hidden"ó±ˆÂØb,¦°96ÿe"z±/ž 
s'áÍìpÓE6‡”%)Üéš[+;à8
+«ñ©wSnp–ovñp‰u¦‡q)z^ªG^m£š®‰Ñ]!x½ÛEûìsªÜJNeŽÅ“0‹‡þ0
?wTßl”ÚÓhr¾™‘^‘–sTÊÿDÛv_f‰zeíŽöpwgð¨
o       ٟy”ÀàlÞÁšæږvý18G·2¿çú恸‹ãï°%Սm÷ñ       
address@hidden>'address@hidden/address@hidden ŠÁ,ðæ>l  ²x>ìÃÖûPh”¢môïOC 
¾²IŒ²º¦±ÉÅ
+e4yûù~zI9äB¥\'S* †é.ùK¨çÐü²î§yI*Y>X–A~¹”o§upäG“L:A(¹œÀExµaG¨´Û–œ 
߯.-QÆ®ñD‹Ÿñ9Mâ®­]óØRÈOLW(S¹m‹ví_yôm°ÄÎØÏ"ÿ» 
ùxrE6¨²DCò!/>Y–™¢¦á©xØk`fãÇ‘U#»¾{„;¼P'U¦)Ӌ)ƒœ
+i°ƒ½­çGÝ5<£R<‹í‘ѹtǶci{vG ~OÞÌßúöܐ²u›ô'
+rü‰6ÃMÚíõ§"kËײ5:[.sóÒlB%zɜy>Î%þÒ¤2PBÓ§¿:4DŽ÷œ+b~:Ša«³¡æãl‡MKԐEÔx"»#:©ÑÈò“åéré®I³d±àÎU‡“Ì62J›‡¬îÕ¶z4ØZ!€mž÷N܉!¸YÏÄ]9è!‹œñL4‡P;žŽçb'¼½‡§¡È½‹f
 ¿ÀwXrjëo¥¡·îüŒ(4æ=B·<væAÜߖ¾tø?Šÿ¹ô“ ;4MBkÐüz¯â1ÿàzt…
ßÓ+;´ä\òoÛþ¡-X#lƒ‰ö‹|ÜW{Î0qU¨Õ}™"qÚC*d8¿†
–x¿ëwbG“=†9î'ÐÔüçñh觇4ÖJñÒ¿ª~‹Qñ±;Ô{­Ãn_`æÛ? ¯(¹þùíϏÌÛ,ˆÜR½ 
ý"#’ëEw¯}ÿµmâÇ°hEf’¯Ž¶·•æe)4\ljf$2¡1ºúò
+Ý!·‡…3¶Xq¸ÿ\¿»øÚËSìWŸ‚Z8Gx‰œ"š^,/Ø+àð“<G´§B‰n<“€_bÑ*    
ŠÞ~þÄú+í÷›ò?úr©àÞoC†ŠYTÙØgdXäâ
+¸¶ýíigŒ¨q/±tÈÛ î²3¹ºP<)j¶#œŸØcëPécúiqà»Rª¼›8›„’%=       #Aó 
j]9Å$A(Ú¬û«¾ó•ô%ÿG¢è¢Ša÷H©6эkHL8fOŸõ½*#+%
"address@hidden:¬öBmv^N^kØþÌZ`ž^»zk_ܞp´¸ÐXuT™%Ë̄x&¶(±¼¸,¯¦,±É5nG–›3VîYǣÅËßwÒùTEK#ÃÒü‰ÐºWTÇmMp÷gfÉϛ2GýŽÝ>éßêWÆ­78ÂD`r~a§Â÷Õ-Z]I¥´¬F_XÌ·ðv¤wfènr£`ÿôX`:ðB¶„ù[8Oo{ødUé¹»ÒÒb‡gW
ÈLÏîìG4W.ý(æ;rهÍhbÙ1ÿBcô.žö4ió\Õ¸òÙßóL‡^=“Å  IŠät…
4c­c˜'ñ·¡µþ×ìWÊZ\ö
ƒ2õ·HŒhĽS±¹'¦ÞYÇy>ÜQDرÝËÓ9&'^“.Eó´¬ïîÀ¬0`¶¦*Ò×4ì;Z»kC‰†Öaë        ¸ÚŒè   
address@hidden)˜Õƒ¹ÙIþ¹©HՋ9K z*ìËðH‚9¬ÚQÃH 
_'‚“(ý¤ñüSÕȔA|<'address@hidden|^†&¾ ¨À… Û*ÀvÇö– µLz 
°&ërRGêÍXÁx†:¿óVЭ‰\V‘‚tL<¤ÅHñ0:RŠ²•ÊŠrN«-(ÒjÛÝ;ä:¡$´]ûèHÐÇx`µ4Mµ)?rœªàÓXÝúꯝ¬â”i9²`J+6&ƒ/؍òø37ùÇr
+ôHÒSULï.ú¿2ùâÁ¥W£ôéFtD:ŒÃ‰ÂœöCãȉ|ú–½Uùý¸Ï<Å#>Ç9|û߈ÌYç~'2èh¸ä:½sÒü‰GYö°³Õû÷éÌ`¾¨¼Û˜
Eñ       
€.ÓÞ'2˜¸ýŒÃ±hDú™”«¸_ƒéRâ«P¶tʂZužrTó5²<‹çï2U™Eé¤z¡x#/address@hidden;axKÑL§Nò–®¦!Ü‚¶o’ÌqØîªBµhõه?
 þ‹ñÜ:©2E™ñÒ
+ $ú÷^cçᕭÓIAqÂÆB°9Èóæýšs¤åÁM~ùÀB€wQùÌiĬ6¢9•¢¯o 
Ñ1Z+”ˆ‰F<ÙHÓÜ'O•1Á_c_ù:öðå|ƝØB/ðö²ƒû¥¤ù;Ì$h‘£­|7ÛQïáïÓ¥k®jÐqx^Kìé‡yDË~ÄÓPBZ
 YÈùª,í~)OÑ=ˆ#eR£.¢'Å('Ö¦Äéœg.Ÿ½øZTƒg{i9U²2½¨§Ä
+‘H“Ë’Ó9ŸMÛO­.ÙL"1pæôq¶‡Ü*b¤{wÓv?ºDfôÉO®óGf¹Ãâ)¤¸HN i§ 
÷Ixɟ­&þä*Uù9œ&[“§o½¸ézâ„?æ_>ý嫍ÆÕö5‰èœ„!ºþPpÄOÙÞ¦G2›ØÛuäúÃHÇáë(ŽþË5ÿ©N¢tüõš¾FaèKÚ¢¯øÅ}]ÂbzÖVû
…³²urèOè{d3¤x½¦¢wíý4OË)çIÐľŽ=§{̅
0ø¸'address@hidden,OPK:$ë­å»#5ÚD.[UUz¦>¦28,2.`Ûéàw.}øˆãã{-5Õ/address@hidden&]Y1z¿¦M
address@hidden"K™aLwí        or^~’5¢à¹È/úMA›ù2j °J“§j {É
jŠñû=ZœX§í1ƒ/ŠQ
+Iß>uþm®Ö(™OR³Œ\r˜ORSKßV§x      
©ñ’¥Øpá~’;$ì“KwÈ£ÂiYþ>içK©âGEü:ô9[{º©¨åålÆRI ôÍò¼HˆƒyfV*é
µxªÍ(‚lPYÖí%m¦‘ÞIºŽ˜ß†3çA›Qâ‹&á§9»³I?P9¹ÚÂ^›)¼C›‰ƒ'Q{ïÊGÇ[µuJK#.K 
Ïu„¥«ŠÜ¥B¡I„ˆŠŽKËÀc1cÁ‡ÐªÞûÕ'¡ŒÈÚqØߧɏé+'Õ ó)±,‰*..Ž®
+…ÝL\Œ,É$ãídË>²ÉDi7ˆÕìêèí      £‡,ᇖ\cûZ+ pý]k…
ŸÐxô¸9ã¶à!´šãýº¼Bã7Ñ0+4zŽú£7¸õd¡kú‚%֨휐?rƒàOéß;¼    %
p’,Cž>«,Æ"]f¨Ac©Û£¬%Çó”9@
address@hidden  ¨P¡É* +ë÷A¹)[.$[±¤0ÍÞ:!?« 
ÂÏ-²w«SKI`4Ú¢¨ÉânÒ&j’ËÀ²4ùš¦OI{3¸©kûorrڔ““¿ËIïäAÂêu¤»‹‚n\#þe:Æ>™Ü9mÎ"ÿ•U±:}Ee}íî²H-×RwH
…?}Ús®4€Þ address@hidden|”7.àl±“æ†zlum>òх+hš–ëÍpUGÂý6‡­ÿ袒D#dš        
ĀsOvÛj#CÒ²Ìd)vìŽÁ^¼6+_®!1l8u$†BzÞa›°ü¨†R/¤îF¹1¹²(unvñoˆEè<JdõÍ
MFcs³î¢dOrȄõ=T«k’ 
3“’ìYØ<J*±–“]R'¬÷m‚dSêLI¾JÅñµMnÍîMn»wø„{»ÛÊɟZÔ9Ĥ³®=BUÉ9äPå…
Åjm]c}£®¡ÞOï_ïWAšié     áŒNàEYw…]k 
Ejx¸°ox$üwUoõ¹Ï,zÇÙ>(ž‹ýtcå*˜ÎËC˜ÿušzûèÅKÛ6ÿ£õ߯ü§á銚„®èŸÐúÞ{¡Ö·Ãë
+X¾Aû±qÜ'U¯fI0T%å
-U킼T–…ûÀbˆ€¥»œv¹8%úxԅîOªè8ô_ü€ý݅¿Í·Öיøì/ó…Ó%Œè“
¡!™ ÏL”â™Ýî؆#tVÚÒpz¶
¼HaÂã  (•Äç%–¯'v[‘•
+<±{©ÙoÚ§²4œ0í›õÇ}gÉy!ïî_,´ BîbÈÎÓ¡¥|®Zڝ£IÖ$•šè§5Á•04ªñùS´\Ø{…
•¢“¤5'åƊ?ÇeHiœÅ¿•¤«3årÈL•zîvNÚBìXP˜¢•“ã1‰+Ňi"W¥¹jM®–+,address@hidden(:Ö?eçô[ÓH«dþâ±ÐŒ½÷3°Ý)Þ׫WHxË4žÔõ'z´B/F–üc&îrvu#¦
äLj^†¶øÞm4à\øQ'¿È°ÀÀªÐæú¼‚ìly¼öß.}ÞRÿùÃ:<FšGbÄ¡/Yø"çÚÞóÇ^$JwXVãã"Ïò…
d&°&®¶¼¡`ß.G§c)¶Æ8×¢áv/:ÔÎØßÔ
+_1h䄇X¼d§³c‡Xüë~-»õíò+°yzòúÍÎÆPŸ
+®Ê›hÄ6r¹Fï
+uöùm¸Ú39òX'ÌNP(Ñãøål²‚àJA. 
.¿†D’§ß¶\hlL©ãäžiîþºøê⦼ƒ'¶™=¿æ(L¡ûýÓå_Å]Cé֜$7)®ø«u¼ˆî
Yî.z푘Wó/ؼ‚ÓjçH @¦ÚªQäÉJ™‰/ÞE“ª¤àjqnö3âµä#‹9,Á“Ãñ
°±LçŽh/äŽÐ€ÆÖ¢G/õÖ"ìP…|G °®„%‚<×v©LFXaJkѷРSÑÇwøE†   
i­..T«_¶H|§Š®‘_ÄȵkÛTå/SÅB×Ò=ŸüÌ,ËbPf+K™ýxÛRìPfh¬«5p¿O†üe*ø0"6Y
 Pf©,ýŠ\…6‰Ø§Á¸ßïп^;щèonµßÙ[š%+àR3a7U¦¨žõ2]nÏ 
³btýƒ=]¥n1ßM:9ÕzÖâ)ÞE¾uA\Y”F~ÁÛ²61¸Û#úô‹}[ã˸¸R…rÖI¿óˆ
*o€fæâÕŸÜúÐaÙÇõAœíV#G’eeÉ¥©Çýa³`ގ¹3lÏßýìô¹«{„x»OªB«/‘P7‹QZÍ^ÂÍ«úŽhx|WϏ&Ç|„´ß‹ùÑè‹e˜qÛµUmáÚ4j#ä3eá±AÉ^+N»?Do
 ×Ðh䇊0}c,`ý‰ÙÇSÙ'‡ÚÕrxÔ
+Ö‚ª"["Zà©hç µþ`ÝÞ=•pVª3«•ïC4c³sòŒßðÐ…S¦4ûF†MBS5iú– ¯¾eüÀ]‡¯õÿ“½¦×Ôw
0
¡kˆùô)¿$_òûÐõoóª7ÎS‚w-–O€­°Rý֑ù‡]9AÎ~¿¤ói˧êp‰ÁøëËK£ž'ŸG¤(]…
NUýt+¿šàj\å´ÂÍ°VEžž´)jÌò?èÕu‚Ð=Æ6ÂHém1ºÜeÎÖ˕!œ»‡Cødá{àz‚®³õLw>í-KšÌùøIªïC;¹¾‚ƒu>ôdYaK¯øïöÃó'F<G߉Q3Úɖ–´K‹/œ9w
+¾aÐÀñ7±9d3m†ãþôâ*CɾãÛ!‰k¸v¹î(0ß±yïÍŶx,ÅÃñkIÂw…
a–¼TҀV˜HdÑiۓb2Òl!ž°f¹¤'ö¼eן®oüäþe½ 
©[L¸ÞS/6òÑ,<Ù{¸­U«%>ZÅä¥fg&̶ÁÖ×:v«ë£t>!©É¦zño—jkŒºØ¯ž¥/}<lßÏgu¢ÆŸû31ÊF_±·;7ŒÁæK½6/¬<á#Ý[WcÜQãç1ù§5H‚,¿}øÃ+oŒ«–Þ֟»w˜;Óϼi5oƒ­w]¼ÎPYÝÐâ_©äZOÝT—£»‘6vY[B¼40
 B¾6+F‘¦€D&!ôd=ƒ¬®úû&òƗÄè>V³¹…P¨Q(‹¤ø
Äú¢µ€Þt
D¯;\\¤T‚–Ñfå¤ÄoߖšF„­‚±àA€#a;4úmAs_tÞ3É&ºðè<ó£Ë†ŸˆµÒ  
Ñ<{õZgiA[#\dN{ÜÁ³1³Ên¥ËÞ̂šÚRCAV“‹Š«jîÔ]$o¦²wwˆ‰Þ½[:address@hidden  
)þ´ÛÃÌ5Ï!N^ÀEôŒΐ«gäA/´H¿xa´¦òfl·Ρÿ+dO‚u©Yø.IÖ Ž§}LŠ,=3ä…IRd…
-÷àՀ§>€âÑۜÉÓ!“ÉT§ç—vËËåÐ(d¥Gv€    Üó¿tâÕáñפ>C¬ÁF<õ—|Ýy¨M]™Åö=‡÷ÎÄ 
?Îoÿzu0ãñˆíØìÿ§€üÉPŸTgByüÕþ+yû ¾M‘E’.2MY“"K"F&ƒûÓ}þÿwn#ÌTåº^û
‡ëòTçµÒXgÃJ`&aö¿waÿgþ¤ûA’ðÖO¿i¹Øؘ[K™îQ˜PšN´ˆBÌ»m֕ à|   v+ n
äô¯rÐ+zí A7J
¦¨ÿ5ԃÎ
+endstream
+endobj
+426 0 obj
+7286
+endobj
+67 0 obj
+<</Type/FontDescriptor/FontName/CCLNAG+CMBX12~43/FontBBox[12 -251 1139 
750]/Flags 4
+/Ascent 750
+/CapHeight 750
+/Descent -251
+/ItalicAngle 0
+/StemV 170
+/MissingWidth 375
+/CharSet(/fi/period/zero/one/two/three/four/five/six/seven/eight/nine/A/B/C/D/F/G/I/L/M/N/O/P/R/S/T/U/W/a/b/c/d/e/f/g/h/i/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y)
+/FontFile3 66 0 R>>
+endobj
+66 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 427 0 R>>stream
+xœXy\W¶®¶¡«DpM©$±wÜ׸$1FQ\Q\Qqid“EÙ±YºO7Øì;Í"²´"
+[5j¢Ñh\f5úԌ3Ñh¢£§È%“w«Ñ$/ɼ÷~ó»Ýtש{Oóï|§dŒUF&address@hidden<d¼m֞d}èm{uo¼Ù·õÀwz2r™Ìy±»Sð¶¨P?ßpG§¦OŸê0+Ð;Ôo³Gƒ‹G¸¯w
 
G8ýà°"x³ŸwxÔX‡YË¥;–{‡y‡Fx{užì¸m{¸w¨ƒK°—whÃ$¼³xVTÐf—ÙÁ^Kœ¶y/²Å5ÔÇ9Ìwù¼p¿ÛW.ˆð_à±#ÐÓí)¶S§M;~ÂÄI“e
L Ìa1똥Ìf,3˜qeæ2ã˜!Ì2ƙÏe–3ó˜     Ì
+f>3œYÉ,`&1ŽÌ*f!3™YͼÌdܘÅÌf
ãÂÌfÖ2K'fӗéG7îÏØ3o2=˜^Lo¦óÃ3Sh+jø‘l–loÛ.F9'÷–ß°
+²úÁÚÓú¢b†"[ñëÎ6q=¸/»NìzÃf¦Í×Ý¢»´µµ=hÇÚ­²ËµÃî™=ìz4ô¸ßÓ£çË^†^?öÞÝgTŸ}oŒz£„øþxßa}ûÞïÓï¢Ø­ûÏ]*¿cÀ,>6Ë^`y;‡¼‡BíM&’ùÀ9ˆÑÞ¬X§™«aé9ՋŽÇUâ¶ûÏòe0ãx³¸°L&nlŸÎ«K4»Ã
 4)ê(¢ëxÙ_
šà´Ð´TØ\”J±Gj ®A…
†3³ÛÁ‚sÓ³A¯ÏhþýѨ8OÆ[Q)êõ¡êᨢ†£YrOŒæ‘#MÖ$VA_ÖƐõ&ñ3³P&w‰=xCAFÖ 
»úiRÁ¶–SYÝQˆKKKÖ¦)IW²›¼µÖ§ÌŠ0Í<† p…jtE—Ž¡)ñ±A)ñöýçB*ÄC‚A¯«ÍƒFÎf
‹ð[ßâqîöÉë-eB÷vk9“ì2Êp£äÃ^<ËëyœtqrñýÐOÐb™±ËZÅ~š       
^JrÅYÅVè¯Â^º:ßýXdn¶]8`›)ê?°ÝÅ´ä±_}J[œ‡6rÑ»òy    ­ÕƧêÛ揎
}ø¬ûa¿Ì³š­V«Ñ*ÓÒâb ”óØ·³Êؘô6a
«ˆó\–¼ýí8ŽêËºÿl5jà‡¯ppT|.S‹}x¢÷'“ ì‰Íû%l×jCR£4‘Ú(àÂUŠ
+ý—w¿²¸ÎJ1KÊÐꠜOéX¬êx¹;ÁX
öÅ`Èٝ‹µí]úë$)ªõÏa]Ï¡šÞ<P|üÂLüØH‚¤Ž¢Kù±‘¢ë#VHðìÿ…o˶Ïæ_!p
‹Óo=xôí´ËÄ.[‰Cª÷ކ£Üé7Éd¬"y¬Àì3㌵s½œHW%A¾æñ#tg±k1a6.ö{—°J
+¥‰     ñ›&KŒóÐV.Vc0o{B&©““¾¤ßÃ18§Þ{‚½¢'ËxÒ°ëí£ðQiƒ²üÐá3|
ۊƒË|À
address@hidden  >•á&6²ÛK7Õ8Ó6‰8ÁO¦ ý©£¥¦ƒJ7
ÖfÖE
•¢ÈYÇ7¼Ç’5q>Ôº'`Ÿ‹ôôòFeÝ鳆
+h‚–(Ó&)jÁå¿f2ù¨ÍíSøÄ\­.’Þò$ÑĊ»:þž¯Óæƒ}%*”â-Êuº=%ú2]    
pfE¸f-¦`xÂi1U°Õ ‡Ê´šT¶sS$®Àěѭ
ÑSªÚ¢®YޞØ>™¯€ôí‡N+ŽÍ¯œE¡¶‹Œ%CÉâ‰#ÈÔ 3²ØmŠ“u1‰‰ 
U&‘Ñ„w›aRɊó¾þ§ø®ðÚÑÓn<Í97í<jÉ}R6äQA_©¤¹ 
«Í8Ô$U“T³šiÜOFñθRQµ½%ôp8àå×8…±È[®k"ý7+O°dÖ/5ܑõûu›øÇڊ÷ÙYWҟuZ³H¥*? 
!K¶¤-¹WÔààJz(×`_a€ªZõ
G•Í+ò—Ñ̌Ÿ2”ô&ÏÆã(uøEqa
$GkÓ⒕!D¸S‹¡Z|ë´²ÆJߤ;hl(­ß_n†—Mluk¥´/~¸;¾±½gƒ%°q ¼½ÿΣ/p    
%adN|ˆ:¸.ˆ>é —ø…°¸Îûc÷k)ÿ 
õIú¦Ï[®\­:·àœªfãey.0¦­uõ[©šÒy缆öߦ•ÙøkeNgq%:Ҋ݊d4ö 
®JâúS?ž¶“‘ì=¸âwÀ­Æ³tH×7ßõ¾æo mk¡õ_²ôºdÄbq5¿E±zšoëºú!ÂàwÈ 
2øéìßؚuü-¤?áÎÁR7{ß5n+p‹–žÅ·pØ_Žžýòð»hjdnm´ñáf
3É®?€œÅ¡<*̤Û3Åó‹E¦\½Vcb“vB·¹>jOyCaK“OóœñDîM8aè,Õuò£åÜôÔ®Jzîd 
ìŒú2ݽ°Û,address@hidden;C¦¨Ñ¿„º^BÄ…
,¾)>æqLŸ·¦’qJ¢Ä6Úödb·½ê:ϟI>{ávޔ‰“°«› Þ      
Qœ§igU•©¸©Õm¯ûû~α´ÉdÚïÑï}–hl¨Ç‰oÔcÜ>ÜÆ°†Ûrì‹ùc!§¡–‡pê¯WZƒâs”5E•Åú´ÚÙ㸈‚{ö”+£ê=TžQ‚g¥WöŠZaåsr<›ý”;wDù‚¨*¶£Ã’]Âa9çúÙ|\ŒïÞ9yãþ²šÐ<Á½rL¢êa¤èT™ñP
+YºÂÜ|»øÉpùȸ|ï8oØΓ•§‰;address@hidden(ÏØ´Ïà;Ðh?´DpÚ৏Oì±æû(kÓle3Öz(fïÚ4JXIó5X“
 
jv±ãš¥èkc(Ÿ;address@hidden;{n¯KQV§˜’3àPÒ¡Pðà>address@hidden)앇öÇBL‘%JÏ}~†U9‹r—æÂ1î³`D¹an¨^ÐÅeI$g„ô
+åkQ"5œ?ê’aëæJpøNñ[N;ó钟åó„ñ¦30aƒ¹·„òFدOŒ¸G"ž·LWá$÷tÐâ"tXÿóç˜ÿ³æx€ís»)A}|yH­‰óéòlõ;á{[[ÜyßïJÛ¡UÇi•)k"‚a¨/íz˜Ü¦¾NU>e<éŠ
tœš>address@hidden>ë2í7îf±wg³™(        ÜDÜÉ)i?ð‡%°–Ðv…
‡²TãoŒHô€åàXàrÍëpØ'”€àYñ•Ãmÿ¾­`û¿·¯K_¶5)÷ù–\äIìÓl‘¬g–ÉnÑ<Ù5ËÑG¢Ÿ!f2Wx(´ŽîŽŽiÜÖ[¤Žx;üêõ–Ó×
…
67vA`PÀR¸TAE›lZ‚Äabë÷8„òÃÚå|ÓÖ:/Ï?oï:¿¦ƒ¦º&Ì!¨Þ8û›Ò¿Lø^¸`)}qKQongÉà¼ö3ÅżcyÚU(àZMg?¾·žô3
address@hidden<"?®&Öpªˆ÷‰Õ$¢¬Åa»m     
¤G¾Æ¾k'öuºì!77;¿ªê̆ÛqR?ñŋ¸|CdUÊN1Åý
+l|!.ùEI­agn\2ãÃÔªS>b‰ó¯t—È¿ô²ò:Ü2ºw8ëWUe%ḻÏZ3÷OÈð€/:Æü4\I­›Ù(˺‹C€»ÕqŸŒR)nêŸQÁú
   ünJ¼1J¼“¥—³¦f“.QAµ™¥/¢Ý
÷¶÷ãÑʬðÑ
º†ƒ„8«ŽÇÄJÅ6èŸB3]O¡AÚNrGê€)F‘7ËèLӝÏ,ÌÈ:/Í4>Íogšêòµ´)‰ÒL“CxÜ'Í4ᚹÔ$–Yfšó,Îé蝽CŸRöE¥Ï.{Õb;;Ÿ{«5wÑÄcïòrr³/ƒ½™
ÑDÒa/VX´›W™¶+59U£Q’…d˜µ¨bÿH 
ªáò+òx“-Ê+Ì//A;2¾æ.겖KŒ„XAÅVê/RÃV(€fiü‹†HHÐŦ§¦'H¢B•ãoEË4*:B“!¶óÿNkÎøS­Ù‹%ƒ‡-#6Ä)ß<#ˆÓ^˜Ù
 Zî>t9¼š_'°¤ÿÒ7 Ëª-{ò´3ìôL;>³8=óŒö M½Ñâ,yc³C
{j¢rÉ',6Z,±‰+úúœk©ÍY6}×¤ôäœ0HMšZ›6“,ëO,•¬Ãéܹ²;Z¬qLG¯Ì¨
u9ØçRVÉ*{%Ô»¢ìíÒOûrH7d–p¯«]|ܙ´Àö…üóð…%_üÂÑ]Ý¥
address@hidden)õžàÎþ”\AlR¦zÔGU×ÖKÕ%;sSv%íºÜçMÞӕ›Y2‘LÚDä㑋¼ü×ãÍ-eÊ- 
ú^hU³ œ†±ÊÅ:(‚
address@hidden
+
+g?ŠTKq-5¦¨5ô£QNáˆvÖͯã«,_°8ž,§“ØðøXµzØ«Øsz=ÔQ   Ó
{%,íˆØ©]f–ò)Z£œ¼eí¡RTê/Q¦«¥^²™+•{­%Œ¯æöM_yû]Ú#z 
VÃÖÏó¢ïÎ+\£ÀÍ%ûò²['Î(ß>ãOæÿiÀþvV¼üs¥éÄëwYþ¾™-.-.-*k]}*ᐤÇ^ÜÁ¡8`Ì7d€ëúþžÊÝîüþc'address@hidden,ØËö(Ü×'úÃ<Ør,¶œBÉJk3>ÉØÞÍ,û±Nü™Ï,ÑîH`_K“²œ&e6„Y*ÿ>ÄjA“š¤$ïw,'óÄëoÍ
+ÍXð†i1ºÃ6†è`ˆ3½ü³"H3‚Œ?Œ†PËeLú‰3ìL—àM¡œi(ÂÙ¢Gtêð0D[þ-…
Ý™¥\§?ôöÂ1¦ïÑ:¯LvâK$:V,â÷íª¦
+´’ŽÙ—šêJO¦ Û
yñZ
¤$
+¢×%¬ ®»ç®/VëÓôiÀÅCâN%i¡%¡,G¯ËÉò
+Zî÷ƼïƒI-‹>öS¶å*o©Þ¸5jý䯦b7ûøöÄîÓî‘›Ýwù«”¯]Cb:‰6{¥¹„Gì#ÇÙø/žLŸî=YÞÜzð3Z9
i•¡Þ©ÑÁ°ó©¯ßc*n9·ù“A¤™1ƒÌRˆ‰Øÿ»/éøå0ò:鹦lPFÎñ‹ ôdjV¬   nB6‡=ÚNœ}ï
w„÷w¾kÂO\C[£4® ¥€§âJ>•yÊR¸ÛäÊm€ÈZ! 1.B¸-ÕaûL{+Om<3Œ(Èh?b'ûu^ù<?â\¶Ê 
õU’¼*Ž}5ÄÅ´¡Y¡o#Mâ#>;‡R/•`>
+5»ãõ¡š\Mç¡ØJ€vOõ+Źن¯)address@hidden:ã0ˆh°o⹛’Ô¶â?Úsú|É=×BdÄ~Î̑«ª—^÷ˆõÚÎàÆöé
+ªöïݤT#{ç蚽™ÿŒÌ
® 
^Þ|©¯¸{lãÏ(Õò­éú_õWUm”i‡9ŒŠ“÷Þur\ÑöÕµÃGŽU¯¨D›S&ü—”ò>è‹oÈÅ~¸ŸŸd1à“U!ÔŒF¨ç¶Uø‡lݹiî©5Ϩéد1÷`>‰&ˆ÷èì­|address@hidden
rœúZ×QIG¿rÜqÕ"鼶xzšZ$Ý+ïLâ“Î×
+±Ò;«¼Ê?L&    $ˆzä( ñ˜€      :Œy"Ð?[yˏ4†VEÆøu¢àÉÕÌr¨‡Oc
+¦Òyí]ª‰IBLl``dä¶Ä0x•ʗéæšùáh-Ç'í,_£aÖ""—^ëîP•*öC›áP>×QN”*¶YÿO8J×K—'^!Ð/
 }«¤ÇíÑUŠ¦ýyEZ„Ú5&q—zÄБqœ¢±þo)ÌEùן·Â#m¾ 
žõÈE£W›c*êŒGšŒ¡#mFZÐ-:address@hidden:ˆöÞßhnÕat‘†ñ¼C…vß        
± 
}Ÿ»Òœ]Xµ\SP§GPÇ¸§«°NÿêoO‡~KÆU÷«?ù¾ân8'Jb5Ýõݵ£÷Ôì/=R‘¸o}¦ÐÜô9€{΁©(‡ø
…h¼5ñÚHmª&9
address@hidden:ª¨°¼9Ç#RWž‹øÇæ‘â,E•6#4J1ñyܱÔZ…h     ËTlþ   
öÁËûґ,‘‰Á<ù‚Û=>¯}vÉÌÆMe
+²!“5Û ¬›`c5µÌ¶ë¾l[[”UØÚél»3Ì$‘ª‘
+endstream
+endobj
+427 0 obj
+5270
+endobj
+89 0 obj
+<</Type/FontDescriptor/FontName/TMUXWG+CMBX12~59/FontBBox[12 -251 1139 
750]/Flags 4
+/Ascent 750
+/CapHeight 750
+/Descent -251
+/ItalicAngle 0
+/StemV 170
+/MissingWidth 375
+/CharSet(/fi/parenleft/parenright/hyphen/period/one/two/three/four/five/six/seven/eight/nine/A/B/C/D/E/F/G/H/I/L/M/P/Q/R/S/T/U/V/Z/a/b/c/d/e/f/g/h/i/k/l/m/n/o/p/r/s/t/u/v/w/x/y)
+/FontFile3 88 0 R>>
+endobj
+88 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 428 0 R>>stream
+xœXw\ç֞uٝë¨$f¬Ø{”c”bƒ+(address@hidden@úRDÐU,°*&J4šD£¦¨‰×hȍ$æjô
y¹7ß; Inr¿òû~ïì;{ö-ç<ç9ÏyeŒE/F&“
\íºÆÃ}ñD×EÓg$̶—^ڊ/ËĽÄWäÅ$g„EDgŠâ舗œáýÑg`ä2™³‹§Cèö¸ð?ÿH;‡ñ6ÓííçØ,ö
ØâbãêéïìI¿Ù¬
+Ýà7ÅfaPÍJé6+}#|ã}}zVv
ÞénãêãÂ0Is]ƅlq]êã°Ýw½ãV7§p¿Îþ+G¬Zµzitàš˜ 
¯µ±ÁÞ³_í;gîdû)ÓgÌ´›5^ÖÄ3Ìdf$³žy›qd¦0£7Ɖͬ`œ™yÌf13ˬb–03˜qÌjf)3“±cÖ0˘YÌxf-3›™À¸3.Ì«ŒãÊ,bæ0똷f(3ŒN=œ±f¬˜—˜þÌ
 f03„éÍðŒ%cOÝÉXPãwee{{õíe”sr_ùM‹u³yŠï”ÎÊ*å/ìNÅý­÷k½¿²\lùmŸÔ>õÒ·µßä~)ý®Z
´
+ï߯ր 6
¸=pþÀkƒ‚Ý6øɐ°!ßð>|ÿóÐaC7
½>,xØÇÅá‰b«_{ÕþÀ€Yì0˞âpy'‡5¼—2Í9žÌ 
K€³;ÐÚ¬\¯™ka+%„è9õÓ®[µxŽµúU¾Bcfœf—UÉÄMö|Z…
&7ÂA“‘Gt]φ§Åƒ&4+<+¢€‹S+÷è?€¨‡ëP£áÌløBhQ¶ôúœ6:Êdšb²Z¹_߇a?üê¨á$–ÜãyäH³‚ìRҍ¯hcÈ“xÉ,”ÉÅT±?ŸW’Sp謚Lð†í
 •t¿¬®²²ÒµY*қä’!ب8cVFhC(„€„Q£‹,ºvÉHÜ’‘h½)ÐÙ      
2!’òôºÆb8̙"ŒÁAÑŽy}pç½Ǫ«Nõœ¥Ive¸IÚÃ^<Ïïýéåàêÿf€ Å^J2?U¡f?ÊùÄYÍÖè?…
½tôßXdnµ]<dŒX 
ú¿°VbVz“8¬‰ž²/.FK¹è½ùâ$HŽ×j3„´ØíK¦Gl'?¯Ãa8,ÿ¼&C«Õj´ª¬¬„ÎyØQg<¼»õaóÖg'–Œø~*ŽÃéûË¬~µ˜hûæs´ŠO¤eq0OÒă)address@hidden
    QZmXfœ&F\¤ZY£ÿ¢{»_vo7’•|‘’£ÕA5'žÑ±X×õ,7)/¹¬Ë!¯0·;{
×IRÖëŸÀ:address@hidden"³²†|Ìc
.eç¯sòq ½Ud<ùŠÇwѓÅÞå„ÙäðaUJ3’êã—LÝ>.ƾr±Cy|yêd:™3kJ†µOÆé8çޏ8H 
z²‚'C{ßi…w+›TÕGW˜á}hÚ^ZåîàÉÍêd^ÂHº‰ÎŒkNuOžGa‚¤#<ÇÄ&6ªrsƒ3
àȱ3‰
õã«h}¦µÒtDå΢sžÂ̺¦Á•(²DÖõ€÷zË#ÁZü1]½ú°jßÙóy5ÐÇâL›%¯MJbÍè^…
ˌè-e‡­¨k‘w&wÎâk ;JxÓaÕÉ%µiHSÉ2†l%Þ8žŒG
:#‹VhYž®Û™œIZU
+™Dx÷é°fV¬ºà8ð ?”^o={ñæ£Â“p°ŸW#qÔ§ 
¸Ðתè™ÉZ3Ž1I¨•r#z’‰¼3®VÖEÿ8|åÙW8…)÷ÉËn1[T§Y²ð·\é*øs*8‹Íü¡“meG€»tލ
'c<–«ÕÕ­AReoµ¥7áª|£'ˆ)írÑÃøš<¨kL»¹±UåÕ²j÷
+ê¸i¯Ž!ƒˆÍãi8'Z^ºÒãµY       骰eK£=©Å-¾|VÕ`¡oÖ16Uî?Xm†g` 
}uë¨{{5%1pBü;u¬xI.vuáŠ!ò¹êTˆº²•I$YÑ¢,À‘ŸÆ¡ô¤#”]£»ÚS)Ÿ¤XGæCµ 
V*Ëq¿ÂK™JzÇRœH«Ž¥œ&ßäø"        q°8‚¢ýðïh·gq5ÚÑ,؆Ñdö'n*âöÏa<¥è        
ì=ø$à{ƒwåz 
<Þ;Ýý7øo\²m:Ð-ËÜÛ(Çã/fŒ0Én<¹œƒÅ1<*ͤÏc哏ËLEz­&Oؙœ²¢¹-ûãöT7•kökqœF侄Æ,Tß
 ¿tÇä&H܆Zš²³¤À¤]¥³—ƶî}c+ÚʱÏñø†ç}w÷12“î{Uפž“(ôÏ ‰ŽgÐ 
¥=‹/‰<NûÅKa™ª"*l“þ^P¸ÅŒe'¥ê„öÅk»T4¿u>Y$…
[Î+z/Pµ`£—òÍd¯‰‚–á4%NÓ²RÂs-ÊLVtýLWo·Uw*èÔ²‹»¶?çî'%wø`oÊǙØ[ؕ”¶â8oӎº:Syó)÷½ž¯8{í¢t.W’¹¦ó?»C"²q?Îh¿¹ÈàF<Í»#Ç¡¸Œ?vJ)$„3Ÿr*¤)±PÕPV›S®ÏÊ
 õ1‹.‰Ý³§¤ÒX·ßKí-x×ú<è1…Õo8z·¨vÄÆùƒ¨k¶ã#Ò]#a%çvi        ºàk_¿wó›
áłgír˜IkðfÈЩóC%èJ‹vsØ'ŸWOœ€«÷îóƍà<Ku–xò×?Ip÷÷_A³j¸ßÙÃ/@)M*¹K{.Y‹¶ÍM&address@hidden
+KñZ)³?jÅ1€–úǒpA^!ãˆñCb‹Û
ÍPØ*ì!ŠÊ׿îq#öÿÈ¥;´I©ZUº÷êÔPª        Áû
+G2xòÒYÀ¥pî>kù¸éÌ¥¦Oá܈l}½Å){:¼Më4?ÖÙûŠoÍfà<6ûoؑ®ÏP¡c¯ŸéË$SiCCՁ“ÆmÊ$Z8;IBP}z4“"Ȳs>ßu¿
address@hidden
g؇›õÀiQêæ‰Âj
+æQJœ   u‹JH?
+'ŠŸ“måu›F\Áø+r±Ÿ¸€¯„üéHÙ)df%¥ed…
–mÍ£TL&:DíËPÕg˜ÒsàhÊÑpðâޘÑ.e¡Bz•V·¸hȊT–…´Ò|=”U        
{*û¿`}£õÉ0SL…Êû@@ޚÂåEoÁIîÒ}0¢<Ï)\/è
+$6Bvê…8‘
+Ï_õÉØõŽÁ 
Pþ‘sÏý¿ôɯòÅ¡DS´™°É<H¢€Ãh;lðNq~G«h“éSx{4òkâ*t)~ã€'Ýðsà!vðqì£<
+û«Ã(0–Ðá}*à´ÿm5pÿ(~PRžš«MKЪ2ÖE‡ÂrH»œÚžÞ–vƒ0&ª€ªxÒ›è,8'ÛÞmµv™'address@hidden<&!(ÙV‚]‰ëuŸãҚË?9Þöߗ=
aÿçòzùËÒ¶fՁÀ÷#²+†B 
¡²–néÁšqA•ì6S¿9úIÜ<ÚLFã*/¥ÖÎÓÎ.‹Ûv›ìcmïD~zãØÙB›—;»48$èm¸\Cśln’Dð⩟p4e49FtÊùæmû|¼ƒ|}÷41íkˆ#YJuÇù?×U*Ä÷ÂÅnòr'²5‰æNö¨

àõrÌ]x»ê¬O¡„;e:ßÑqof²£A[ùgèÆJ¸OËÒ&§êõáÆuG&УZ0È–4m(Ù¥:í¾7ýI䣨bMuôPðàÔѯ‹™DՈcSmdǼÀ¾[öu:C¡PTdØ]WwnãI/LûøéÓ¿»>
 
²:)¦¡Õ´Pâq3Vt7.xKŠiDç0þ©YBcêG‡MO³B*È-¬xjfÿô^‚!û§R„Çñ9þ×÷lŽã~Ï%|*¾õ›ˆó`lzkþ›™ug|ÈçßkD2;îrȳÚpÛ,è^SâÂߝ
…”:V~‡hš~sZ†‡¤øÐêŸã”1Ý
+€²‚»8¸Û]ߐ‰jå-ýcª•?„Ïà–DUÅon±ôç‚9Ò«‡•j¨,ì–hAgýÔhaVúiƁãÀO¹EW±P³MúGÐBÇ#h’¦“¶#õTF‘7Ëh;eÅç—æ\Ú)?æíT}uFš´ÉR;UHx<
 µS‘'j+ºÛ©,:v
2Äê3jÀº
+ô†*®g%âyª¨wÑÄã ®‚µ™
ÓÄÐ>3VA¤´RqmVjfz¦F£"ËÈX…¨fÿÊW†ëáês¾z‰-+.Ý]]ýÈ´áù©tËZ.9v     
j¶Vÿ15<%Ð"užñIº]ٙÙI%’lVº%šE±OâÈ4b'Õ:ݞœ
+}•®‚¦¹tÈù´g…ùÝû«aëAµY
™:-Dq]Y2jì
+bI2ñ¥s‚8÷? n:K†?%½p#º~Måö ¡G±÷¸®ÙÏ/ÏÎ?'address@hidden
        Ýqc
address@hidden<¬x_"07êuzÎuÔæ<›š›“’^ ÉJÓf- +†+%ëHÚòn§„ç 
ÁÝÖ8¹k`~\NZ5XQ"+¨zŠtwe†(é«u5dçåWp/Fìè        Zpç2þ¯q¸Ö‡k¿•…
^#ïÒ‰Þõ8KÒärô–JOóí‹>"¶«ˆeƯýqõ
ÆÕi;Š“¡–JîJ³¯½jKf™›‰|r1W?§åX•j+¨N)PM{Ò]*”A
GdgùÉsâ×{›N|address@hidden
address@hidden/Sön¤êE²q’ø¤±;NÏï$6÷|äwiÝo÷9M,ÆnX/Äß]\º&‚»k´'÷¼¤Ý>}áPuÔüÿ(þWö}ðÕ'X$u„>‚ÑO-lyeyeYÕ©µg’ŽJ*ùé×8_™ü€¼â¶!6Ð[•ëÉ<address@hidden
[OîªæzxâÑk8'›~BEq•ìô      •øpŠXÆH­§
+¼–6뗛÷Už>Nñ“ʼnZ
d$ã×'­¢Uß³hCyš>KŸ\"$ïP‘c´,%Uêu…
BqIÓ±»ÀµÃä×`é¿Õ¥äýUÛî£ÕMaõ[ƒ·Åm˜õåìƒS:î㴚{¼²Å35P­z±5$¦÷Ðr¯$¨yôÃÁr\„ÿâáÃìö¾WÝrêÈ%šMYµá¾™ñ¡°ó«Ü¿ÇT~ìƒ-Ž$Éüù¤d
    RLÆá?|6h3áé³^Ý" Œ|À/‡ð÷2v™à8ìßvúü0oœÌÕsc…
¿œ¾Ž}R'ˆ>4›‰«ùL2úKeYx´¨ b… 
ä„ã¶ÖG0í­9|fÓ¹±DI&~ÂØß[ÁKyüØº<­¿ŠÜüë¯â”ç½Q¢Q,AKzxK¹hò†BÊ¢TÀù)Ó¨ÄÏMԇçhŠ4
…œ—rZ©×?)/2ä}EӝåJÚ1Û&Ĺ¹.e:¬ç–œ‚‚º’ÝùùÂî2J[Ç'— Å…›¿A¼O}?¸%   
uþÝ=gÁÜã©ÇˆŒX;.˜°¦þí>Q¬‹uwŽ°VQIawïMjÙìV½Yò˜)
+­¡»¼õL_s÷䦥Þqê•ÛÒ{6¿/îsucœ)ÖA¥Í¼yáv«Ú¾¼~üÄÉzÁJ샎í4Ðmr¼„Ž|;i›úÂGkÑòŒ      
ÿ%á`0úã¹8address@hidden ¿‚²h¡!Ïh„ý\ÓöšÀ°m;6;ñxLM§|…
E—w“x"ŒŸG[.ÕÃ7±oË»¥×öD¹–·ƒÛ?<„{(»X³2)GU¬w…
mœSˆÝœR‘ªDú‘cì§Ý*Ñg[··)èH·JìÙ%‘ló1¤q¨ã,address@hidden"—îqcՕʃЖwt7×UMTj¶Eÿ3´Òñ´»¶’Wž’v‡x­OIÂÛݤ3ê16ðYÑin;“SÓæÃNÚÝNUÞÿíg¥E(ÿêÊ)xÈ¡¥Í5ڋ*&,Ÿ´Ö¼³f_“ñDK1(G8z¢-ÇHsï؛ó×:x«U$˜Ä$§Ðêg½Cœû›k
 
€ƒ~CZšdû°ºJW%ø5•C0ÊsØ&ziöO•ÙPº¹æo¯¯©Ö`´ÿòÛGï„O¦ÖßÔø|address@hidden<Q“|`C¾ÐÒ|ò€»ÎÁÁ™)C
…„i|5‰Úm¦&=Ò “Û‘UBÒ'address@hidden,ÐBŽ 
=ëÞÁW©vSëtÃ'BFŠ¢Ã2š°‹‰šú.WÉbI¸=QzZŒ¸Üb(V½ˆ*»¯âñ„Tkp:ßaž .TÖisÂã4°3Q 
]o+Ôxˆf³L’¹?R‘{~쾀À™ʓkØÛ0.j—ãmÔó€.蘌D.¬ZÉÀe$Bb&h*ãThA,ÌĤgÝzò*± 
ŠÄD­–z ±r
z0îp4²WÐp     g•Xܹ¨˜äps•’lÌg͖(ë#XZÌ©êÛû€¡o_”Õôí§ëkÅ0ÿgà   |
+endstream
+endobj
+428 0 obj
+5466
+endobj
+99 0 obj
+<</Type/FontDescriptor/FontName/BJCDFI+CMMI8/FontBBox[26 -21 846 704]/Flags 4
+/Ascent 704
+/CapHeight 704
+/Descent -21
+/ItalicAngle 0
+/StemV 126
+/MissingWidth 333
+/CharSet(/sigma/C/D/R/S/T)
+/FontFile3 98 0 R>>
+endobj
+98 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 429 0 R>>stream
+xœ]S}lu¾[ÇqûF*Cà®*S«0¢l$AG8pè˜[Ûè6ºRÛ±µ]Ûõ®}{½]¿'c› ´ƒcøQœQIH
+‰CäK
°„„(ðë×æ7ƒ7‰1ñÏ÷÷æ÷>Ïó>ÏK™I’yË×èV¬Zý¼®¼|õâ‰65‹LÍÎHÍQ4§ÇÒ&
ÍÎ<P€Ê§¡W¦ ’©D&I®ZûFµ®¥Õjl¨ßaÒ<«Ój^X²d‘¦Ì 76ÔÖ4kÊkL;ô†“RìÔT¶Ô6èMÖbMÙ͚Š‰mš
+}›ÞhÖ×ýªk1´î6鍚ò–:½±¹­¡ÞPCJ·¢¢rÃ,òÒGs‰"b!QB”*Åd…
71™’SÉTÆ×*‹êÊC²|ãºü‡è¾2Ëégd~V¥?H/QûEA‚:ØÝãvó¼ÓŬ\æŒoºŒ³`&îÀ6܄ÛñrTøZˆf 
ÕWO±òçñèp·è´{=ž©ÁžU‚s.ҜAóDÑR¤BÓØK×|x
hTðåÓó:9ØY[ĸ î™ü‡ªzù>È©¿d2½ñ–
+-½¦vê½®2 -v°tÆ¡Ew(T¶£·Pš_ô;Ö²øWÊjSº1蓓°‡óùx;Æ«ÃGýã
+R…²®½Šó;address@hidden „„ Ñ
+ºfñ
sÂ-£‘úL.HEn&ïΘޑ*L¥ÿö#õÓóKÕ¦•o6²U
Žõʜ)²íQ£)‡¹7è1í9Ì2xä©8ìý~|üè#=3'ôp®xÿ~Á?Àž¥nC’—€–z¡¿×í¼„vÖ,x†Aò÷œC{§Š£n%ªÞît·x̬«¹«¬ô²óß¿Û/ò›ƒwr>f÷ªmæf
 ·s        Y–>eV        "p¦nxÓ ¢3ó`P1ü¹!M»€¢Té…
ÿ3Ýëµ;‡mW“Ã^wúµÞ͊Jçà,L­?ÜÐãfåI×wíÃN’î¤û›=°˜.)-~r
address@hidden(`ü‘I1‡Ÿ³ù8“‡±,ç¬V×ánžvIž`ÐïG™`È'FöN×ÞWŒ*B9JœrOvkM°¹1´5Ö¬›$C°rFé«×¯?¸uv+&Ú83pŒ=ì
ÆüâމÜd4FÖ)address@hidden>æ³.S¿Å·»·ù<¬×ás‚—¶…
y)*JýæZ7©×Vfü&e/¸Í¯ã²B¯‡wA7í
+v‡¢BOŸÄœF%ÉšôGԐßçâ¹w|‹ÇßsêyÇS0³©,>°õú6‡ØTFùСw#ÐÚæaÛàDPbýW/Ðt%нó$Œ¢á‹ªÔÉ©Þ§1Š†Å^Ò
    #´3ØGábœ_ÄyÚѵ·Qšƒòö”刣ŸUîðžzKµ|ñÄû¨
+•Þ2óÜX‹³Ù|ó`úåA|0Rx[dò‘ì«9Lv梁ܬ„˜›K©e<-
+endstream
+endobj
+429 0 obj
+1158
+endobj
+96 0 obj
+<</Type/FontDescriptor/FontName/QFHURB+CMTT12/FontBBox[15 -83 514 694]/Flags 4
+/Ascent 694
+/CapHeight 694
+/Descent -83
+/ItalicAngle 0
+/StemV 77
+/MissingWidth 514
+/CharSet(/a/d/e/l/n)
+/FontFile3 95 0 R>>
+endobj
+95 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 430 0 R>>stream
+xœcd`ab`ddätó
rÒvö
        
14‰Èýfü!ÃôC–y–ŏi?½XWþLúî(ø݌ÿ»¾3#£›O´s~AeQfzF‰‚†³¦‚¡¥¥¹‚cnjQfrbž‚obIFjnb  
“£œŸœ™ZR©§à˜“£ÒQ¬”ZœZT–š±Ó9?· ´$µHÁ7?%µ(5/%5'‘ÁŸÁ•ÁÁ—Á‰
èVv†*†gŒNŒíL‚ÿ™˜¦2ðÉî£ß¯e¼sæ{ÈæfßwŠ¾ÝiéŸZQ%·¡{f²œ'[maw^ÞÒî™ò[~ŸOB𾫳Í\Ú½bEaw­|ÒwO¶7ç·<:=+Hîwu;vUl+[~¿}ô;ÇQÆî3ßûA¶þ8'ºªuj&ª]VlÕ³“Öúus(êkÿúÍÿPóәm›ΓOì®Û,wÙX¯ï¢Á±–΁Wž¾>þҙ]árp»}—Úuþû¼³Ì?L¾‡ˆ.˜×½á;§çË߂¿9ôÔóýú
 ùÿ»è®'K'v.Ì©hm©i•/
+ôj«è¶èö<Õpƒ£çèŒgöžê~ß½À¬?’t?š2~7;Ãü}Ì¿Õ‘BˆïOóo>$þI„£âpZý
+‹
+`X}ß z=èöoéD­n·‚y5'®éÝÚ#×=¡§gAïôžÝÓ»u¯í^S´>¿;¿;/ 
3°Ý·<²Ê;½ÛÃå”ÿ‹Õ''¬ß/7?koçÆnŽÅ‹!¶–÷N¬•÷:+Ú]Ò]–T‘QÓÝÑ͐°z˱ok¿óÊóÕOÿñ}úï)l¿+'±å:Ã-ÇÅR™ÏÃy”‡ç
/CvGå
+endstream
+endobj
+430 0 obj
+652
+endobj
+105 0 obj
+<</Type/FontDescriptor/FontName/YMBSZC+CMTT8/FontBBox[-5 -228 531 694]/Flags 4
+/Ascent 694
+/CapHeight 694
+/Descent -228
+/ItalicAngle 0
+/StemV 79
+/MissingWidth 531
+/CharSet(/quotedbl/quoteright/parenleft/parenright/comma/hyphen/period/zero/two/three/less/greater/A/H/I/N/O/R/S/T/Y/underscore/a/b/c/d/e/f/g/h/i/k/l/m/n/o/p/r/s/t/u/v/w/x/y/z)
+/FontFile3 104 0 R>>
+endobj
+104 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 431 0 R>>stream
+xœ­W   TSç¶>1prD(=¯Ò۞C«m­Öj­mí Š8[œ¥¥
address@hidden address@hidden ŠŠ³¢lµ¤U«¥ê«½·ÖÞÞ¥ëÚ×aíÜûóÖ}'L   
¶½kݵÞZa89ç콿½¿½÷÷‹(¯Q”H$»)tÁºÍ!ÓBBׯŸãú"Ðù'‘ó‰QÎ'Ņ
DãlùÇroûÚÁÓ~¸u<address@hidden(’´ÊØí1êÀ)!Ͼôúë¯'ʔ±Òy`h„:F–¡.×)¤±2µöÅÀà„„Àµ®7Tke*™2UÕï4D‘˜”¢–)CQ2¥œ¢¨ƒµriº"jÓÊ$ÙªhåvUÌZu캥)뗥Ƨ%Dh#_˜þô‹[g¾5ë¹
 —§<OQOS›©UÔBjµšZD½AÍ ÖP‹©™Ôjµ”ZO-£^¦6PË©ÙÔóTõ
+5•z‡z›ÚH…R¨MÔJ*„K£ÄÔxj>åG=IùS
ÅSR£)j†&JBiE“DÕ¢_FmU/-.öòñÊñºå콏ö¥/J6K¾`2™Û£ß}Ç'Áçú˜Ùc2Çü·o´ï?ÇÎ{vÜ¢qwÇ/_4þÀøMxzÂÒ
 µø…
û5øÝD÷HÀ¿FùϧÆõÿÇ÷§£œr1ö:address@hidden@:äEß>address@hidden'4¾Äºªó,ªÊŽ1zڐZž\®`<’4‡ÓêÕ÷Š‹"¶š¡ÜP½ÓX&¦]éÓérˆ+ÖkòùŠâ&h€œ8õŒðÌð”eJ¦”.Þ]`ŠDJs:í´ætX¡¢¬ªÌh„†
+
iæ¾¼¤E0€ä—‰eùúb(âä7ó´é±Éêèâ*óÄÒ¶”:0IiÚDiÛÖî›Ý_}få‡rƒ:Dßôâj!Ö%xŒ}°éøëÁ[¤:g/®“rÁt†~3ÔóGHw¤ûJÈM}sª2øHœOßûêÀ™u)«9¢Š“d*„§Z
 ŽÇ©OÑ.ØãA/ÆÝ;ãb÷¤W¥fe:Ón•ænf΢Ͽ=Ûö+ú·6””îâËJõ¥g[қ€±›÷45   
ÂÉâՄ{•øÞ{ŧÛî5¸u;D
½¸O‰„­Û
•PËT‚–#?Ð      ÙÑü»
¨:;Áfæl˜+!Ÿ‘™YÙÑM`âðévceÿ‘Ä6™T.†TI
+ß"8P`‹ã¦ÿHÂL–Œ#~÷¦!ô½{èǑh2ƒ
        ½úý·—.]½zéíÙ3C†ðÃV.:address@hidden:î|çp\»pvãzn()N•C„RÁÑzgk¢ëZ…
×!‹Ÿ4àn/˜øÒҌØ|m²؅
ùñwؓ>Ú~#ϔe/ªdL{ÝL¢3åƒí`¢ñrޛ,N•ô×ꪷπi9dò©¸˜ötßs•Åø®ós6ë°R€YD¿héS¥º¯~ö°âŒÖӖ·¡¤q>Þ'™¸[ºöÓbÒwñÎR‹døÁIžÆ¢KéÔK`Hû`¨!•œ6Du!ßC”¬7Óû¥Åþ†þ8vÖ߉׻‘éŠíüáHQ•>“gŒvjُ.œþäÊ
…
%¯Ì\²bQpôí3Üpý{ÐW¨ñM¬½!vÎÃլٝè»ä’ñSŸ3æÁd|Ÿ<v§ÉÕéºÒŸöÞf]<,€§2n2ú¶îʅ
3¸ÖEå›é΢~ò45MďXìJm&«Èʔ$r„tY’p®ÜӌG8Eì« ²äžÈ9_ÃGð\¨>Uûá~ãu¸
ÍYµkªÞƒE°ÖÀ|ݦÜMå`<š ÇÔyJÈY0Êp
]×"¤M!dœŒ9A_:eìâÊâ÷f™€±ì­oûô5Èš1ß<m€®)pŸtO¥³yƒÖ9ê¢ßTÚ³kÑ·Cþ*ÆT\Á¢èƍûœ!ª%¿˜&‹©µI{dîŒ
aJ%o—ôw
+¹mö’îyªÝ}ñÔ 
¢éÁ9=§zp}¨£×ôî»$ÆgctíY‡¹ýú·ÙûrÌ|cuµ¾ÁP®2嚁±™Í¶}ʖIÛò“cø¼r™u#0SƒƒgÇWÇX’ùüìœ$P€¼FQ“¡’o†ÍÌËH­äÔÇw¾×¸“KÔ—Èw2[᤾¦¬Â°‹¿{„Ý´µëüùc]gºn{'bko
 ‹Ù;èoD†D<÷죇8rNϏ˜9¬vˆ‹œl´Ä©s
+Š¹H“Ô€Jy-æÅ_2îdñçó¾ÊâØ.Kœ*µ|address@hidden@ù =;hË? 
kå¥ö¨òE5KªWáÓhkp·,^«çñMP
Œk^z®
×øúÝ́Ë%¿™e}ªÿ—å¡»øŽ¥Œt<ÒӋzô>柍Nü=Þ|ð,|ÌüeîmâÑÅ4ZFN()íòKÚM`O¶j„DJa   
Ä4ÇXÚ„êÚ|ñøþDÈϗC|)¿£d{–Nœºù{8-cOj=Cé`cäeún×Úððˆµ/¹Kö¡ã§Fú÷âT¡y4®æ™íÑ<³oÑÛE©åޜãn–oˆ†&To앻ŽK_ì—C^r®NYʕDnO’

ï[=7Ý5¤DøŠ`ÿ²ó}Ö®²%&ªT‰‰6•Ýn³Ù9JüÙ၍"ÒMF»8žt7â³ø%Ý_³ãå*v\;Ü_ö.={GŒ°£k·µ 
      „Í
šµ¶=ª*?ÑZp=ý°nâ…ìšb[JCF ®˜°mæGqÕ߸RsiãöAÿ~Ö4”u¹“      
Ýi>_|÷]WƱ¸^v(¡âÕÆèJyE^V-mƒ“Ì©“'.£d÷¬„]Ü®$+&¢ÂaÂvéÅ(ˆk„õfqW˜øxð€„‘(
û£»ÿ†%
+Œ"address@hidden  Æ    éaEs}Àt_À€Ö    vk³8¡OµEâ&À|·Ø2Â<N´ü³û       
rÐMŸûTJz
+ŠÁ|Xð„0jW6Dl³ó7h+=‰|2      ?ñ¶º
address@hidden À6¨í±šh‡è;address@hidden(/¸¡¼w¾ñz“g¼“‡Ž8Úm^þÒB±S* µ¶
åËǍã$N:½Uߔ٭kË<_X
2(JÏܨ|¥DWœ!è­-xÈû¤G–¹ÙVþ¹]!3—Ø 
à(쬩;×ô­¾Æ`úœŠ8˂ݛvfvÉuF8ȨâÜþ**K2˦_ŸŠøy\ßô¨³Ÿ{)Oûô¯ý\KH‚ìíå×ɓïN† 
$sŠÝÜ\sÀÀA¥^_kV&ÔóõÑèõ| yGIÆ_^ñã­3öªZޒÐU|
+˜æ½ýвdye;uü¼+,¤‚:J£*ÍfudÇÁs8ʎŒ~„’ǨdQŒ“¼º§ÕEš¡‘_úҒ»Þ
䖝‚'“ÈX2Ó;ÚªdªRø›HMhïÔ¤¡Ã¸}ÈFH“."íúˆ2<ÏZ½^Š‹ÌŒMæ4µrI\ABRA‹2‰Îm<é–Ä«ß(®
+ây
‘Ü>zâ°Å¨Þȑt‰nhö_ýyè$1¨lçýÞI¢¯”Ö‚Ò5LÜ*]ò¨×(YÂ[Ðÿ$2áL14°Ù2•2*;¯XS)Lz}ºiÿ¯ï£äéÑ-۔ñÛã­1Ǎezý®Á·±ñ+¡=f‹ob#[}:É
 ‡'—éÜ(EuBÍ ¼eÁÊFQя_ÿ(Fµó
+»?¹^¦ÈŠáêÈ6}šAm‡€}`°éë
Ã(¶C±;Mœ+ÜÞjHÕ§ìƒ;¬zóP?büËgìáø–©">FÚ¦è8ÜÒÖ1ڔ¡È¦ü»À†Åv‡Ð©.±:      
#ބžLÈrú3y½‘þ       p9GÁ=÷mdp2>ýùýk×>Ÿ&°pò
+Â
Ú;kqÆ4ö;Æ7]Ö:address@hidden ҉»óÊJÂqXz`Ìæz«%»2·b¸aœYB˜÷qg¯ø‹6;· 
2×ÆâðîÀ‰¶yðD«V     R‹¾vñÖÅöÖ»?èï„%üÜ
âG|ÞzuÛþ¼:Ks}{Máî¼J®áà‘–óÀܺþZðÚÕ+7Uë¤Wêã'‡8ËXH‚ùo„ë
+sv€–ÑÖg4ìÅQWð¿®ÆœØ­U$+,Éí•}÷pœaheåµU‚àè*È×=1»*JÑh2Ôüê<v%¤ƒ,Íݑ©js†Y_UµÃŠ>ǵ‘ý>æmP‡g؟-ܼzCèÌì×ऌ×IÓëˍ`0
…ÿ
°“iÒXåÉêôØY÷ÂПøó?¼ŸØóÖ!㜠%oõšŒ 
yoA¼U»·Ùbin(ÚUTεí½•À\>.‹Ê,ŠŽIàåJEI|ɚ¢ôRAø¸Út0¨9–¨kBßa¡!·¢`'yá
+Ÿ‡[p¸üú‘Þƒ—:»¿¦ÒPåLmžIG¶’ÇI©Dáo»­ÊT;Ân 
ýÓřJ²SëÒ³rËuU\§²[Ö5wß꺥ð6L‹!O’‰3µÙù.dÓ­í(<ŽÜ8Ñ‰F²¶’&šr‰Ã§w
çã¥UøŽvøúöúŽ¥¨ÿ­¾å÷
+endstream
+endobj
+431 0 obj
+3801
+endobj
+102 0 obj
+<</Type/FontDescriptor/FontName/MJJCTR+CMR6/FontBBox[46 -21 564 675]/Flags 4
+/Ascent 675
+/CapHeight 675
+/Descent -21
+/ItalicAngle 0
+/StemV 84
+/MissingWidth 416
+/CharSet(/zero/one/two/three/four/eight)
+/FontFile3 101 0 R>>
+endobj
+101 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 432 0 R>>stream
+xœ5‘}L[eÆßÛ;z/[Ýìæý·7ʐ‡²Z¦îƒ:Y!•ØNÃ2?èhe–6m!²AY›­=(q
address@hidden
J Ê6*Zgæ`F$5Ù4#úÇô½Í»KÜrþzNòœçÉïPh…Q¥Ð——k÷
+´zCñ²æ¥§(i½Lzši’&Óê¬Á4Y‹w)ñ–5¸àqDSÔkåûµvG³³®ö[È×nŠJJÔÂn›ÅYWcjô&÷!‹ÍäΫ`´×ÔYÜÍ
…Ân«U0,;\‚Áâ²8›,æåD­Ýæht[œ‚Þn¶8Br͋E›·lE()ÑZ´=8Ädª"}ŠÒÔê;Y¥,ºD…
B«—d5ëM¤q
+’8• 
%?ànÄßÂ{÷™‹Ï’¬eyú¡_;ùNߗžNŸÎYh„<–dcå˜Å9X6‡ék¦¡–nþƒžý}µA–è9{UŒ°?݌ݘ©ÞµCsÐÞÊoÛËuùþ­ìm
yÆm``_~á`qá¶Ë©Ô\b<È?ìKËb,àK´4Š§¸iÀâ'~ 
‘R-öc?àПYNr&(ºæLÀ]ø~†™Ï/Ÿ»ýëéA«gwv¿Õ^
+; òí[µžz`ÿOQ
+ŠÃA
+?ÿ;Iz
=6^W±j53¸
+WúØû1õàÉå«ÍòñŽYHdfƏ³b5“§ãª‡·nã?1º%R€îü›–q%÷¾ÜßêÕµýзZ%•òþð/ýá󽷒Ñhth
®³XI²¦É“„+*ÞTõ¯ë\υ³žØ{|address@hiddenaddress@hidden>–ñ:œ¿¸°8mœ!«¢üÍH2    
¿±s›®ÉÞüfIu¼-éíhìqtð£ÿ€Ï€Kº4û¬ÏùT͇ÿxGÐÂé‚3ü#ªX)JU¬×çiik8‘dK¯3a8élöŸh;Ɠ¿î¿“eÆɗ2`ÛÔ|ƒYl¿óñ0
ÝÁ+60j8WÍ1)#K¤YÝJï‘H7¶wʉ©‹WίâW®PÙ±“
+ÅüÅcý‘P£÷
+endstream
+endobj
+432 0 obj
+897
+endobj
+115 0 obj
+<</Type/FontDescriptor/FontName/MSLSRR+CMMI12/FontBBox[12 -10 594 441]/Flags 4
+/Ascent 441
+/CapHeight 441
+/Descent -10
+/ItalicAngle 0
+/StemV 89
+/MissingWidth 333
+/CharSet(/sigma)
+/FontFile3 114 0 R>>
+endobj
+114 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 433 0 R>>stream
+xœcd`ab`ddäó
ö       
+Òvöõõ44‰Èýfü!ÃôC–yzãg?|YW~_!ôÝ^ð»
ÿwSFF7Ÿèçü‚Ê¢ÌôŒ
gMCKKsÇÜÔ¢ÌäÄ<ßĒŒÔÜÄ 
'G!8?93µ¤ROÁ1'G!¤£X!(µ8µ¨,5b©s~nAiIj‘‚o~JjQ^qfzn"C£4ã>Æ. 
bbddOùÏèÀ÷ŸI§C¡qþ惌ÝG¿/;ÎücÂ^ÑkºW/¬è®”ÿ]Èö[ë7Ãoëß\f‡\ž~çú.ú]ø»Ö¦¦ÅkägþaHÛtáøúïÑßÕ·í.³Ë¨6Ï”O͊ëæà+[ðÓ~Áï¥S§Mcû0•}!×n9.óù<œ'ñð00‰s`
+endstream
+endobj
+433 0 obj
+314
+endobj
+108 0 obj
+<</Type/FontDescriptor/FontName/AQEQUX+CMSY10/FontBBox[0 0 694 444]/Flags 4
+/Ascent 444
+/CapHeight 444
+/Descent 0
+/ItalicAngle 0
+/StemV 104
+/CharSet(/minus/bullet)
+/FontFile3 107 0 R>>
+endobj
+107 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 434 0 R>>stream
+xœcd`ab`ddäst
Ðvö
Ž44‰Èýfü!ÃôC–¹»û§×Ö%ߧ}·ünÅÿ]_€™‘ÑÍ'Ú9¿ 
²(3=£DAÃYSÁÐÒÒ\Á17µ(391OÁ7±$#57±ÈÉQÎOÎL-©ÔSpÌÉQé(VJ-N-*KMØ霟[PZ’Z¤à›Ÿ’Z”ÇÀÐÀÄÏÀ´aÙ&†
 
Z²’IݟïGÇáßßÏgìþ!ÎüÃÿ{Ÿè7ãGJ¿͌”›|ùÎøàÉ9¾ÿ̜ǾWmªúÎüSó{•èÌyÝóçWt×ÊÿÙÊV[Ñ]^>¯{¦<_éŸöÙ~L`ßÌõ€[Ž‹Å|>çæY<<
“°eé
+endstream
+endobj
+434 0 obj
+284
+endobj
+149 0 obj
+<</Type/FontDescriptor/FontName/JNSWAV+CMTI8/FontBBox[-25 -204 904 704]/Flags 4
+/Ascent 704
+/CapHeight 704
+/Descent -204
+/ItalicAngle 0
+/StemV 135
+/MissingWidth 384
+/CharSet(/a/b/d/e/f/h/i/m/o/p/r/s/t/u/y)
+/FontFile3 148 0 R>>
+endobj
+148 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 435 0 R>>stream
+xœ­UkPSé>!ÔU´“΢î9YWÛuÙÕ:;­uÚnU)address@hidden@BB.äBÉI$!!!     
·£]ÐpqYÅRÁUiÇ]­»¶V­v;ÛÎlí|±ÇŽ=€îØN8;;ߜ9sÎÌ÷½Ï÷¼Ïó¼,lQÆb±^Ù±;gÿÖ¼Ô´]¹™?˜ûÁ‹­dÅVÅÅ^cKècÿZõ87~`UâärT°
mYŠ6$clkûÎCiâ*¥¤´D(㽙¶Ž·qóæM¼­"¤ô8¿’·‹/
+D|óQÁË/Ȕëy[+*xÙs;¤¼lT ‘Šæ‹¦‰EU52„·K\$Tb¶T).ªK¤BYi
_Tˆa‡°,,ۋmÇ2°,ËÄöa;°<l¶Kҙ›`     
Ø)V<ëtœ(îcv9ûϋÊâWÄ·rVr.$ìÆÓñëOYºޒ§q‰ë³ècÔðïÎQ1’bÝý;6û&×æmn;Þ¥q©Ê‘ASæZþ
+)Yð‘ÿ½×ï“mA»‚øT!ÅO-¤yZm´v6Ûv"p%25xÀ®UʌrƒŒ¿'Þ¹øwg+/
address@hidden *€j¸u}”Ãß
a< õÉTBÝÁ£%—Ñ¢Ï=ì&”küUúy€pQ·Œ¨—ûôٍ4—^E¯¤¿CÇÝʺ‹R˜E 5 \A~ߧ㡿
N‘£7fºO>1\’^®~«0ƒ,ÏÝW|ðÎE‚qÜdÇî<~‡Ûloq‚|*«Îú†áU
ó%®ñ€wLs“Îj"²i…üteˆ)tý
+ý&ýF꥝·f>ë   ‘íőŠ   xzÂþÐَihÁ;4`®ƒ&‰‰P¼'/«\
ƒžVpÛ<äž®Q˜ùÃ,ÀóÕÎ~p%õž#ÏÞR€_u_O6iâ€Òy”:OBlïMößè¥\c™É,\§Ec‹ÞÓî°Á
òð7µîðB—Wõb9xÎ~{'éûÈê¼*‡Gñhâ¡T„eNfæ>.®&ë'
+ƒ%P
+RE­PYªÞfüYG{Z ßL`’ᐡAmi°šÉËG¹vs‹78>
0XOH3ò*yµ|²<3_Xøý§­ÅÑì —<e}~ÓS¨˜B™þ9ÇØȏܳh 
åç†2hŒ~û:}Ãä»ÿDkîüÕÛ¦íh0Y-z¹/óG’\À·«®w;G'É6ŠAÉ÷#ŒÀNGÇ×Ñë¡x®Fæ[!FÉwb2†§;L¡{èö=6‰­æÞçø;>4
 &7s|¿m2úo»&\C`ƒø´*“²¤xeÙ}"Ü30v´ûèj)address@hidden|:§®š𑳜
úßõ;-úº=)&™:GxÚdW›/Àˆ÷„Ô¡«¬‘V™ŸyE[Qb˜Q/ë’Ï¡žM±Ð`£êgüõZöځ²v©Ëë-Õ`ÄÅaSG׀7:æ.ÝË//†á²Ã/эEÕ¨!·Ñヵ
  šRTõ~ÊÕÝiŸ+>address@hidden
†ÁÆ$ƒW^%©åçL>@£(iâïʜDA{©¢8Õ;}{ð”®ÂCüÉPÿ5×/ÙèÚKúŒ^ûä7ÖFK4¦h\êP§Ïíu6GïOáÖóôü}a€G]å
kt¼âÙ 4©˜“ŽDŠ/|6‚HïœûTÖÆ:3¡ÜY–wpE“7ÐÝrÉàÅ(³y¿·'¼ok_"c¬È›ÌàMŽ 
mAÖ¶‡П8~# zP‘›8ï£5v´€#¥»Öa(7Š˜€,¢7Äoä(Ÿå.'Ž˜kÁú”¬±²M#ž×£FµµIk&
+Öæ×V.i
‡àbb`A¿4­ø=kêÚÐU6zø˜ÍíUºêjªjÅR¿.îRÄAúcn[øËä}û¿“×790;ñ,yZ!)Ý%cV£¾Aùœ’(zÝó%;address@hidden>OøžÓõ½Df>'ë
…
À¤v[,‘Ûì°¹Áwj=ušƒØL,ä3þÕóy¡ÖËå3[t9yOìïóŸ3y3\D$Š|Ø+)4‚Â("FÛ­Œ²Á<ïÑÁ֞ávÂÙëŠ:‚Ž´¸G:g_µµ÷_;ðE‚ѯCÕéûû„ñÆÞ@>|g+d¦sŧ}ÅTy1þ<ןÏÏ+Huóå­½îÉ
+k“¡JRÖOp´­FëæçÑA•TL´>Á¹ùŠógÜ£}Ÿ“΁POwØ㊜ú?Ãf‰<ôø'!ºÏ…
dÍú˜+!’tóDÒ¢MÁʼn”cñbû˜Û¿ã
+endstream
+endobj
+435 0 obj
+1883
+endobj
+134 0 obj
+<</Type/FontDescriptor/FontName/KLQRZJ+CMSY8/FontBBox[0 0 736 457]/Flags 4
+/Ascent 457
+/CapHeight 457
+/Descent 0
+/ItalicAngle 0
+/StemV 110
+/CharSet(/minus/bullet)
+/FontFile3 133 0 R>>
+endobj
+133 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 436 0 R>>stream
+xœcd`ab`ddäõö  ŠòÒvö
Ž´     Èýfü!ÃôC–¹»ûgɏXÖ¹ßg}·ünÁÿ]W€™‘ÑÍ;Ê9¿ 
²(3=£DAÃYSÁÐÒÒ\Á17µ(391OÁ7±$#57±ÈÉQÎOÎL-©ÔSpÌÉQé(VJ-N-*KM[霟[PZ’Z¤à›Ÿ’Z”ÇÀÐÀÄÏÀ´aÙ&†
 Z²‘É 
‚ï?“°ö?8ç3vÿ0`þ‘ý½Oô;»þóßl¿Ùôõ³ÿf®ÿí;ÛóçßÙåøþ3[¥%|/ßÉØýSšùgÀ÷rљ»-*í®•ÿs™­¶´»¤da÷Ly¾âÅ?í°ýšÌ¾“ë
        ÷ÎY<<= fD
+endstream
+endobj
+436 0 obj
+286
+endobj
+319 0 obj
+<</Type/FontDescriptor/FontName/FFKEXQ+CMTT12~13f/FontBBox[15 -83 514 
694]/Flags 4
+/Ascent 694
+/CapHeight 694
+/Descent -83
+/ItalicAngle 0
+/StemV 77
+/MissingWidth 514
+/CharSet(/parenleft/parenright/c/e/f/k/o/r/x)
+/FontFile3 318 0 R>>
+endobj
+318 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 437 0 R>>stream
+xœ]’mLSWÇÏí¥åR J³›%ºÝÞL%%à†5Ëҍ
c¡&2_6†Eûæm]Š±°€íF(address@hidden:†Ñ¸fÙÔÌEdDÝK|êΒíb5íür’ç<ùÿþÿ眇BY2DQ”ººzëk;M:c½Ù\ZÖQº±uå–K®¥’ÏɒÏÓ'
ÉkågþþK
¦ز
+6®F4EU×í2:]í‚u›‡×‹ùÒ͛7ñUv‹`mivðõ͞6‹½Ù#6¾ÑÙbµxÚõ|•ÍÆ7¬(Ü|ƒÅmÞµìKùv×!Eàëû,‚!”Óâ´´
+¼Úb„^EÛQ5z5¢:Ԅr)¥ì(µ¢YJA9¨+²Ý²_èrÿ+“…‘êÑéág‘Âqð&èän 
ب€»=ïwûÜ!ó›~7fʍ—¿žlxv*ÒԄzŽqàø;³Á~̌œú¾¿E*̄ßDT‹EkbwG5Oá#ñ¼…‚
w       "hƒ–õm݃·5Gvk¬¿¶´xñÒÂÂŽ®¾Ò˜fðça­„™‡±KtòE0³‘1ü  äÔܑ 
Œ¾ˆ¨ˆú~1¬ö«[Ñþžq›×ôˆ_#˜j^lÀ5Þû9vž¾?wßÑòÞ&&ÅÆ"̋ðŒHÿýGp2‡…|ÅHÏÌÄ>
É?§H,address@hidden/¿]ÆíÐfû\ØáˆâÍ=2_¢ð|address@hidden/šG›Þh°7îÑ|š=ë[¹Â4÷™¯Èp
        ¦]^Èt•HÝü††°°”ò3ãH¸•ÐS ¦ åD/‡?SFÛҝ/ÿéޛ® 
P12%é]’~ïuEâ*ä’2ù÷“vVïúÿ´1XiotòXF:5Â$žÔT®ßò‡|bò©NôQ6ÉD'}®AnÍH"Kq<Ø¥¹        
ê_‰Z.¸Ÿ<öh{ÃyèùHZ>:YÙÀâ᣽¾0ᖬ°/㥳°øå‘p¨3áÀ¨[¨2Õîá_qêq       
&ôgúÏ·Ïm½²m3“}§5™HاaD'address@hidden:HY§íèêফÿðÄé«b|ŽŠÞÁ·UçP†ˆyPAÚCÙ¢2žË)³Úy9b^^</¡ÿ÷ã
+endstream
+endobj
+437 0 obj
+946
+endobj
+212 0 obj
+<</Type/FontDescriptor/FontName/FYOJLH+CMCSC10/FontBBox[26 -22 733 705]/Flags 4
+/Ascent 705
+/CapHeight 705
+/Descent -22
+/ItalicAngle 0
+/StemV 109
+/MissingWidth 377
+/CharSet(/hyphen/C/S/T/a/c/d/e/h/l/n/o/p/r/t)
+/FontFile3 211 0 R>>
+endobj
+211 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 438 0 R>>stream
+xœ}U}LgžaafŠ ˆ7õlíÌÚPSC­ˆZ%U¬]µ´Š®ØC…º.[¡åËe¡|ºßûÛÝð]uY>\‹g…
lmkN¥6³ö®¹ÆV.½Ëåþ¹jcýÜy³H½\š˜7™73ù}¼Ïó{žyi*2‚¢i:n[ŽöµéIš
N³*9üI”Ÿ¤å%òSªŠéÃÓÙQÁ%l{\€š8L‰§T4½-c¿¦´¬ÚTx¨À¬~V³\½*5uzs±ÑThЗ¨3ôæc±Þ¬¼©u¥†B£¹úyõæ¢"õ®pF¹z—±Ühª4æÏuՔ—U˜&uFi¾ÑTBQT\‰¡4_Sf4˜u»‹ô+(JKm¡2©­T"•Em£tÔ«T6µ†ZKeP/Só©x
ÅRVê'úUú½u„#âgՙȭ‘}QÚ¨‹Ì<ÆÍôݧ«?Ÿ?˜  ’œ/Ñ¡!üvH…
Ù²‹?Úå‚#À‘ÓCà·r3X3ìÑ&¶×3îõÃ1¸à–\œÄjàRŸˆÿb;ðúLz[£Z`q7´žåEl\
+       [éÎsUA-äzL^ÎĆ`Y$±Jsí“ê:address@hiddenì{   
“$“yä9ò*;&áãþé/íÐZ߶&·h]ºV»¸’4ˆ¥h•ýã7o¿Nž½V­¸.h>)*íÞñRurC¸þgJ%ßÂ6—+ãɳd9‰&ñÊ3
   cI4.SV,address@hidden"vm        W-+ûqŽÁI¼òj\îäMìõfÛAq†aÚmé‚   GX\z9|
+…DŒ#‰"Q¿Â6ûÎß0Sp~wu 4 ‡eZ«¯|ûŠ9+Kc
+ì¾Q¥…*á‰øŠàôŠ 
wå¶AÕtîôFþ8´6:Ð`^O{kdçžrȲ†¼A 
²ã^Üx—༎‡LYÈ3ä±I$p«Iæ'ø~ˆú÷'¾³ž<ß'zë<Î.àzÀ׆µb"$4öaí,²†)fa=O0ÿüþ‹?…
6MV$ý&æÿ‘²Ãž+Þà²ë”[ÑGº½eLtbYì,ÞI`“!ÒHÂÿÚ‘0ˆ…
0YRɸ‡715$¶|ù"Cê˜qƒýúݪtQÂ}&&½¡j³°S™Ùªwä`  “ÐœÄÁQ3Y¿œL5w297¬¸½ëãëü6    
𰔠à*Ÿº)-ZX‹÷-Ü8ñù8|ÆÝHù’Ä
+Äú+l§<z‡`>q
<Ć/³?ø+#Á€;XÔ[åðè útщêÑÚqà®ûÜßõî£ѺóÛ
+Up´ËÖié±
Õ_³œiúø¥a.¥‹_Û¼Í­¾A8Ü×·ê|»†<.þbS¬Q"…i²„T²]Þɏ5·\WVâÞ媀
+Ðy‹=ܜøÈĂ/°ˆxôÐp;ZÈöGE<0°¢ý¼ fåDïËÍüLSG6FIL;&øO 
+¸Ë>8 ÎP¬Áј&Tš˜s¾      UÖœsrR%›æèeŠ=ïƒËHjÈÂvAb”â†%eŠê“‡h¸†»¦B§¼ž_Ó[9     
¿ç¾ºòÅm.-{¦[ðփ½sÎã˜Ë†ma·b‹73ËsǓ[p)«—nÉëª?Ø{Êú]Uã¸³Ç1Qç·[¬§
+!›Û²G“¬Oo;¿[xícçM÷ˆ»ÕæµWÖj‘ìgkÀÚÙêõµ·g?*ùòÀ]XŒnýxïÛ}ÿ ƒs… 
LÎÒxñÕtÞt*ÿïEÌR¡0эü¸
+N*ÒépœÐfn¦Ÿ-„º§C3æ»”uƜ\ÐÀ>
Ý#¢ÜÏB¼ðux‡•LL†ÞÃÝd7Ë½»l°^<kˋM)D
܎f‘Yö£cðÇÙÉowƒ       
r¼‡~=yy%ûP\‰ÞðÓxKnám=ö–F¨—Í^OÖάúmcYMÞ—’ð{p.¸üaè½Îh‡6ðŽüÀ¡    èÚªº
+Á¶¸ôÔ(²ôL(·Åœsõ‡Ãup´¹þGJd†ÿ;±E­‚&|¡ö*
xZ…WQË_%§³ØùéM¢ëF¡“  F‡æ     ёëü1I-11¡ã1±õ_!Œ‘w
+endstream
+endobj
+438 0 obj
+1662
+endobj
+390 0 obj
+<</Type/FontDescriptor/FontName/SCOOKU+CMMI12~186/FontBBox[12 -10 594 
441]/Flags 4
+/Ascent 441
+/CapHeight 441
+/Descent -10
+/ItalicAngle 0
+/StemV 89
+/MissingWidth 333
+/CharSet(/omega)
+/FontFile3 389 0 R>>
+endobj
+389 0 obj
+<</Subtype/Type1C/Filter/FlateDecode/Length 439 0 R>>stream
+xœwˆþSCOOKU+CMMI12~186øøø—øæøM©÷ë÷?÷<÷9FL[`Copyright
 (C) 1997 American Mathematical Society. All Rights ReservedCMMI12Computer 
Modernomega!Š§ÿMUPÿa¶ÐÍ÷öŸ‚Ÿ‹§÷o¨÷ž³Ü÷´÷$£Ã™Â‹™›„wƒqi„^‰z‰wlZ^`Q‹|‹m‹u®z¥‰²‹™‹»›ßÑñ“—‹‹ˆ„‚zpt~Fû
  ‡$‹jt‹ûðÍ»»½«¼M©gÃ÷DÏ÷¿àÂr—|tttv’„‡ v™n‹d59û#ûq`Þ…v ù? 
û¥•––û`•¡
+Ì
+7Ÿ   ¡’r©˜¯
+endstream
+endobj
+439 0 obj
+386
+endobj
+103 0 obj
+<</Subtype/Type1/BaseFont/MJJCTR+CMR6/Type/Font/Name/R103/FontDescriptor 102 0 
R/FirstChar 48/LastChar 56/Widths[
+602 602 602 602 602 416 416 416 602]
+>>
+endobj
+13 0 obj
+<</Subtype/Type1/BaseFont/NWGIQD+CMR12/Type/Font/Name/R13/FontDescriptor 12 0 
R/FirstChar 48/LastChar 117/Widths[
+491 326 491 491 326 326 326 326 326 326 326 326 326 326 326 326
+326 732 692 326 326 326 326 326 326 326 326 326 326 893 326 326
+326 326 326 326 326 326 326 326 326 326 326 326 326 326 326 326
+326 491 326 431 326 326 326 491 326 271 326 511 326 813 542 326
+326 326 381 381 381 542]
+>>
+endobj
+100 0 obj
+<</Subtype/Type1/BaseFont/BJCDFI+CMMI8/Type/Font/Name/R100/FontDescriptor 99 0 
R/FirstChar 27/LastChar 190/Widths[ 602 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 752 873 333 333 333 333 333 333 333 333 333 333 333
+333 333 797 647 617 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 602]
+>>
+endobj
+10 0 obj
+<</Subtype/Type1/BaseFont/PUMPYN+CMR17/Type/Font/Name/R10/FontDescriptor 9 0 
R/FirstChar 52/LastChar 117/Widths[ 460 301 301 301 301 301 301 301 301 301 301 
301
+301 301 301 301 301 301 301 724 690 301 301 301 578 850 690 301
+627 301 301 301 301 690 301 301 301 301 301 301 301 301 301 301
+301 301 301 404 508 404 301 460 508 250 301 487 250 301 508 460
+301 301 355 301 355 508]
+>>
+endobj
+97 0 obj
+<</Subtype/Type1/BaseFont/QFHURB+CMTT12/Type/Font/Name/R97/FontDescriptor 96 0 
R/FirstChar 40/LastChar 120/Widths[ 514 514 514 514 514 514 514 514
+514 514 514 514 514 514 514 514 514 514 514 514 514 514 514 514
+514 514 514 514 514 514 514 514 514 514 514 514 514 514 514 514
+514 514 514 514 514 514 514 514 514 514 514 514 514 514 514 514
+514 518 514 514 518 518 514 514 514 514 514 514 518 514 518 514
+514 514 514 514 514 514 514 514 514]
+>>
+endobj
+90 0 obj
+<</Subtype/Type1/BaseFont/TMUXWG+CMBX12~59/Type/Font/Name/R90/FontDescriptor 
89 0 R/FirstChar 12/LastChar 175/Widths[ 622 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 441 441 375 375 375 371 311 375
+562 562 562 562 562 562 562 562 562 562 375 375 375 375 375 375
+375 853 803 813 863 742 702 883 883 421 375 375 672 1063 879 844
+772 843 843 622 782 863 853 1162 849 375 682 375 375 375 375 375
+375 542 622 501 622 511 341 562 622 311 375 592 311 933 622 562
+622 593 461 441 441 622 592 813 592 592 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 622]
+>>
+endobj
+79 0 obj
+<</Subtype/Type1/BaseFont/FZFOTB+CMR8/Type/Font/Name/R79/FontDescriptor 78 0 
R/FirstChar 11/LastChar 177/Widths[ 617 587 587 888 354
+354 354 354 354 354 354 354 354 354 354 354 354 354 354 354 354
+354 301 526 354 354 354 354 301 406 406 354 354 301 361 301 354
+526 526 526 526 526 526 526 526 526 526 301 354 354 354 354 496
+354 797 752 767 813 722 692 828 797 376 354 354 662 978 797 828
+722 828 782 587 767 797 797 1084 797 797 354 354 526 354 354 354
+354 526 587 466 587 466 331 526 587 301 331 557 301 888 587 526
+587 557 421 421 406 587 557 767 557 557 466 354 354 354 354 354
+354 354 354 354 354 354 354 354 354 354 354 354 354 354 354 354
+354 354 354 354 354 354 354 354 354 354 354 354 354 354 354 354
+354 354 354 354 354 354 354 354 354 354 354 354 354 354 617 587
+587 888]
+>>
+endobj
+68 0 obj
+<</Subtype/Type1/BaseFont/CCLNAG+CMBX12~43/Type/Font/Name/R68/FontDescriptor 
67 0 R/FirstChar 12/LastChar 175/Widths[ 627 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 437 437 375 375 375 375 309 375
+560 560 560 560 560 560 560 560 560 560 375 375 375 375 375 375
+375 853 802 811 861 738 710 886 879 418 375 375 677 1070 878 844
+769 844 836 627 786 861 849 1162 849 375 687 375 375 375 375 375
+375 543 627 501 627 510 342 560 627 309 375 593 309 936 627 560
+627 593 460 443 434 627 593 811 593 593 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 627]
+>>
+endobj
+405 0 obj
+<</Subtype/Type1/BaseFont/Times-Roman/Type/Font/Name/R405>>
+endobj
+65 0 obj
+<</Subtype/Type1/BaseFont/JGQOFO+CMTI10/Type/Font/Name/R65/FontDescriptor 64 0 
R/FirstChar 13/LastChar 176/Widths[ 590 357 357
+357 357 357 357 357 357 357 357 357 357 357 357 357 357 357 357
+357 357 357 357 357 357 357 301 357 357 357 357 301 357 301 357
+357 357 357 357 357 357 357 357 357 357 357 357 357 357 357 357
+357 746 357 357 758 357 357 357 357 357 357 357 357 357 357 357
+357 357 734 566 710 357 746 999 357 357 357 357 357 357 357 357
+357 505 457 457 505 457 301 457 505 301 357 457 252 819 566 505
+505 457 421 409 337 542 457 662 469 481 357 357 357 357 357 357
+357 357 357 357 357 357 357 357 357 357 357 357 357 357 357 357
+357 357 357 357 357 357 357 357 357 357 357 357 357 357 357 357
+357 357 357 357 357 357 357 357 357 357 357 357 357 357 357 357
+590]
+>>
+endobj
+404 0 obj
+<</Type/FontDescriptor/FontName/Times-Roman>>
+endobj
+391 0 obj
+<</Subtype/Type1/BaseFont/SCOOKU+CMMI12~186/Type/Font/Name/R391/FontDescriptor 
390 0 R/FirstChar 27/LastChar 190/Widths[ 556 333 333 333 333
+333 612 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 556]
+>>
+endobj
+59 0 obj
+<</Subtype/Type1/BaseFont/EFTSJA+CMBX12~3a/Type/Font/Name/R59/FontDescriptor 
58 0 R/FirstChar 12/LastChar 175/Widths[ 625 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 437 437 375 375 375 375 312 375
+562 563 563 563 563 563 563 563 563 562 375 375 375 375 375 375
+375 849 799 813 862 738 707 884 879 418 375 375 675 1067 879 844
+768 844 839 625 782 864 849 1162 849 375 687 375 375 375 375 375
+375 545 625 500 625 511 343 562 627 312 375 593 312 937 625 562
+627 593 458 443 435 625 593 812 593 593 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 625]
+>>
+endobj
+47 0 obj
+<</Subtype/Type1/BaseFont/STLLYA+CMSL10/Type/Font/Name/R47/FontDescriptor 46 0 
R/FirstChar 40/LastChar 89/Widths[ 385 385 333 333 333 337 277 333
+333 505 505 505 505 505 505 505 505 505 333 333 333 333 333 333
+333 746 710 722 758 686 650 782 746 361 333 782 626 915 746 782
+686 333 734 554 722 746 746 1023 746 746]
+>>
+endobj
+320 0 obj
+<</Subtype/Type1/BaseFont/FFKEXQ+CMTT12~13f/Type/Font/Name/R320/FontDescriptor 
319 0 R/FirstChar 40/LastChar 120/Widths[ 511 511 514 514 514 514 514 514
+514 514 514 514 514 514 514 514 514 514 514 514 514 514 514 514
+514 514 514 514 514 514 514 514 514 514 514 514 514 514 514 514
+514 514 514 514 514 514 514 514 514 514 514 514 514 514 514 514
+514 514 514 511 514 511 511 514 514 514 514 511 514 514 514 511
+514 514 511 514 514 514 514 514 511]
+>>
+endobj
+40 0 obj
+<</Subtype/Type1/BaseFont/DTIQHQ+CMR7/Type/Font/Name/R40/FontDescriptor 39 0 
R/FirstChar 48/LastChar 49/Widths[
+567 567]
+>>
+endobj
+213 0 obj
+<</Subtype/Type1/BaseFont/FYOJLH+CMCSC10/Type/Font/Name/R213/FontDescriptor 
212 0 R/FirstChar 45/LastChar 116/Widths[ 376 377 377
+377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377
+377 377 377 782 377 377 377 377 377 377 377 377 377 377 377 377
+377 377 377 617 782 377 377 377 377 377 377 377 377 377 377 377
+377 617 377 587 617 557 377 377 617 377 377 377 511 377 617 632
+557 377 602 377 587]
+>>
+endobj
+37 0 obj
+<</Subtype/Type1/BaseFont/OWMPRA+CMMI10/Type/Font/Name/R37/FontDescriptor 36 0 
R/FirstChar 27/LastChar 190/Widths[ 566 333 333 333 333
+333 626 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 277 333 333 333 333 333
+333 746 333 710 831 734 333 782 333 333 333 333 333 333 333 333
+333 333 758 614 590 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 433 333 333 333 333 333 333 333 333 333 333 602 481
+333 333 333 333 361 578 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 566]
+>>
+endobj
+150 0 obj
+<</Subtype/Type1/BaseFont/JNSWAV+CMTI8/Type/Font/Name/R150/FontDescriptor 149 
0 R/FirstChar 97/LastChar 121/Widths[ 542 496 384 542 496 331 384 542 331 384 
384 384 873 384 542
+542 384 451 436 361 572 384 384 384 526]
+>>
+endobj
+34 0 obj
+<</Subtype/Type1/BaseFont/DHQKWA+CMTT10/Type/Font/Name/R34/FontDescriptor 33 0 
R/FirstChar 37/LastChar 122/Widths[ 529 525 525 529 529 525 525 529 529 529 529
+529 525 529 529 529 525 525 525 525 525 525 525 525 529 525 525
+525 529 529 529 529 529 529 529 529 529 525 529 529 529 529 529
+529 529 529 529 529 529 525 529 529 525 525 525 525 525 525 529
+525 529 529 529 529 529 529 529 529 529 525 529 529 529 529 529
+529 525 529 529 529 529 529 529 529 529 529]
+>>
+endobj
+135 0 obj
+<</Subtype/Type1/BaseFont/KLQRZJ+CMSY8/Type/Font/Name/R135/FontDescriptor 134 
0 R/FirstChar 0/LastChar 178/Widths[
+828 0 0 0 0 0 0 0 0 0 0 0 0 0 0 526
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 828 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 526]
+>>
+endobj
+31 0 obj
+<</Subtype/Type1/BaseFont/DELQUB+CMBX10/Type/Font/Name/R31/FontDescriptor 30 0 
R/FirstChar 40/LastChar 121/Widths[ 445 445 383 383 325 385 383 578
+383 578 578 578 578 578 578 578 578 578 383 383 383 383 383 383
+383 867 819 831 879 758 722 383 383 433 383 383 686 1096 383 867
+782 867 867 638 794 383 867 383 867 383 383 383 383 383 383 383
+383 554 638 505 638 529 349 578 638 325 383 602 325 963 638 578
+638 383 469 457 445 638 602 831 602 602]
+>>
+endobj
+116 0 obj
+<</Subtype/Type1/BaseFont/MSLSRR+CMMI12/Type/Font/Name/R116/FontDescriptor 115 
0 R/FirstChar 27/LastChar 190/Widths[ 560 333 333 333 333
+333 609 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 560]
+>>
+endobj
+109 0 obj
+<</Subtype/Type1/BaseFont/AQEQUX+CMSY10/Type/Font/Name/R109/FontDescriptor 108 
0 R/FirstChar 0/LastChar 178/Widths[
+782 0 0 0 0 0 0 0 0 0 0 0 0 0 0 505
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 782 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 505]
+>>
+endobj
+25 0 obj
+<</Subtype/Type1/BaseFont/TUQKKG+CMBX12/Type/Font/Name/R25/FontDescriptor 24 0 
R/FirstChar 12/LastChar 175/Widths[ 625 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 435 435 375 375 375 372 312 375
+562 562 562 562 562 562 562 562 562 562 375 375 375 375 375 375
+375 849 798 813 861 738 707 884 879 421 375 375 675 1065 879 847
+769 844 839 624 784 864 847 1162 847 375 687 375 375 375 375 375
+375 547 624 498 624 513 343 561 624 314 375 595 314 939 624 561
+624 593 459 445 435 624 595 812 593 595 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 375
+375 375 375 375 375 375 375 375 375 375 375 375 375 375 375 625]
+>>
+endobj
+18 0 obj
+<</Subtype/Type1/BaseFont/YZVPJL+CMR10/Type/Font/Name/R18/FontDescriptor 17 0 
R/FirstChar 11/LastChar 196/Widths[ 578 554 554 831 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 277 505 333 333 333 333 277 385 385 333 782 277 337 277 505
+505 505 505 505 505 505 505 505 505 505 277 277 333 333 469 469
+333 746 710 722 758 686 650 782 746 361 517 782 626 915 746 782
+686 782 734 554 722 746 746 1023 746 746 614 277 505 277 333 333
+333 505 554 445 554 445 301 505 554 277 301 529 277 831 554 505
+554 529 397 397 385 554 529 722 529 529 445 505 999 333 505 505
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 333 333 333 333 333 333 333 333 333 333 578 554
+554 831 333 333 333 333 333 333 333 333 333 333 333 333 333 333
+333 333 333 333 505]
+>>
+endobj
+106 0 obj
+<</Subtype/Type1/BaseFont/YMBSZC+CMTT8/Type/Font/Name/R106/FontDescriptor 105 
0 R/FirstChar 34/LastChar 122/Widths[ 526 531 531 531 531 526 526 526 531 531 
526 526 526 531
+526 531 526 526 531 531 531 531 531 531 531 531 526 531 526 531
+531 526 531 531 531 531 531 531 526 526 531 531 531 531 526 526
+531 531 526 526 526 531 531 531 531 526 531 531 531 531 531 526
+531 526 526 526 526 526 526 526 526 526 531 526 526 526 526 526
+526 531 526 526 526 526 526 526 526 526 526]
+>>
+endobj
+2 0 obj
+<</Producer(ESP Ghostscript 7.07)>>endobj
+xref
+0 440
+0000000000 65535 f 
+0000285298 00000 n 
+0000387025 00000 n 
+0000284593 00000 n 
+0000285346 00000 n 
+0000272283 00000 n 
+0000000015 00000 n 
+0000000339 00000 n 
+0000292465 00000 n 
+0000292211 00000 n 
+0000373947 00000 n 
+0000303949 00000 n 
+0000303695 00000 n 
+0000372741 00000 n 
+0000285401 00000 n 
+0000285431 00000 n 
+0000295232 00000 n 
+0000294663 00000 n 
+0000385653 00000 n 
+0000272443 00000 n 
+0000000358 00000 n 
+0000000516 00000 n 
+0000285474 00000 n 
+0000306529 00000 n 
+0000306226 00000 n 
+0000384860 00000 n 
+0000272587 00000 n 
+0000000535 00000 n 
+0000002277 00000 n 
+0000315920 00000 n 
+0000315542 00000 n 
+0000383099 00000 n 
+0000310364 00000 n 
+0000309969 00000 n 
+0000382118 00000 n 
+0000321947 00000 n 
+0000321692 00000 n 
+0000381090 00000 n 
+0000329498 00000 n 
+0000329282 00000 n 
+0000380523 00000 n 
+0000285506 00000 n 
+0000272731 00000 n 
+0000002298 00000 n 
+0000004689 00000 n 
+0000324854 00000 n 
+0000324515 00000 n 
+0000379722 00000 n 
+0000285593 00000 n 
+0000272875 00000 n 
+0000004710 00000 n 
+0000005996 00000 n 
+0000285658 00000 n 
+0000273019 00000 n 
+0000006017 00000 n 
+0000006201 00000 n 
+0000285723 00000 n 
+0000334982 00000 n 
+0000334712 00000 n 
+0000378926 00000 n 
+0000273163 00000 n 
+0000006221 00000 n 
+0000008867 00000 n 
+0000330315 00000 n 
+0000330012 00000 n 
+0000377274 00000 n 
+0000345119 00000 n 
+0000344761 00000 n 
+0000376401 00000 n 
+0000285766 00000 n 
+0000273307 00000 n 
+0000008888 00000 n 
+0000013384 00000 n 
+0000285842 00000 n 
+0000273451 00000 n 
+0000013405 00000 n 
+0000016219 00000 n 
+0000337366 00000 n 
+0000336892 00000 n 
+0000375599 00000 n 
+0000285896 00000 n 
+0000273595 00000 n 
+0000016240 00000 n 
+0000016455 00000 n 
+0000285961 00000 n 
+0000273739 00000 n 
+0000016475 00000 n 
+0000018104 00000 n 
+0000350881 00000 n 
+0000350498 00000 n 
+0000374803 00000 n 
+0000286004 00000 n 
+0000273883 00000 n 
+0000018125 00000 n 
+0000022316 00000 n 
+0000358167 00000 n 
+0000357948 00000 n 
+0000374344 00000 n 
+0000356681 00000 n 
+0000356456 00000 n 
+0000373155 00000 n 
+0000363455 00000 n 
+0000363216 00000 n 
+0000372570 00000 n 
+0000359305 00000 n 
+0000358927 00000 n 
+0000386532 00000 n 
+0000365303 00000 n 
+0000365101 00000 n 
+0000384357 00000 n 
+0000286113 00000 n 
+0000274028 00000 n 
+0000022337 00000 n 
+0000025781 00000 n 
+0000364678 00000 n 
+0000364461 00000 n 
+0000383563 00000 n 
+0000286275 00000 n 
+0000274175 00000 n 
+0000025803 00000 n 
+0000029742 00000 n 
+0000286426 00000 n 
+0000274322 00000 n 
+0000029764 00000 n 
+0000033713 00000 n 
+0000286551 00000 n 
+0000274469 00000 n 
+0000033735 00000 n 
+0000036226 00000 n 
+0000286652 00000 n 
+0000274616 00000 n 
+0000036248 00000 n 
+0000039502 00000 n 
+0000368134 00000 n 
+0000367933 00000 n 
+0000382597 00000 n 
+0000286718 00000 n 
+0000274763 00000 n 
+0000039524 00000 n 
+0000044193 00000 n 
+0000286797 00000 n 
+0000274910 00000 n 
+0000044215 00000 n 
+0000048854 00000 n 
+0000286865 00000 n 
+0000275057 00000 n 
+0000048876 00000 n 
+0000053579 00000 n 
+0000365940 00000 n 
+0000365696 00000 n 
+0000381881 00000 n 
+0000286966 00000 n 
+0000275204 00000 n 
+0000053601 00000 n 
+0000057716 00000 n 
+0000287069 00000 n 
+0000275351 00000 n 
+0000057738 00000 n 
+0000062130 00000 n 
+0000287159 00000 n 
+0000275498 00000 n 
+0000062152 00000 n 
+0000065971 00000 n 
+0000287238 00000 n 
+0000275645 00000 n 
+0000065993 00000 n 
+0000069687 00000 n 
+0000287337 00000 n 
+0000275792 00000 n 
+0000069709 00000 n 
+0000074070 00000 n 
+0000287442 00000 n 
+0000275939 00000 n 
+0000074092 00000 n 
+0000079092 00000 n 
+0000287545 00000 n 
+0000276086 00000 n 
+0000079114 00000 n 
+0000083579 00000 n 
+0000287659 00000 n 
+0000276233 00000 n 
+0000083601 00000 n 
+0000088002 00000 n 
+0000287749 00000 n 
+0000276380 00000 n 
+0000088024 00000 n 
+0000092905 00000 n 
+0000287839 00000 n 
+0000276527 00000 n 
+0000092927 00000 n 
+0000097672 00000 n 
+0000287940 00000 n 
+0000276674 00000 n 
+0000097694 00000 n 
+0000101891 00000 n 
+0000288030 00000 n 
+0000276821 00000 n 
+0000101913 00000 n 
+0000106018 00000 n 
+0000288153 00000 n 
+0000276968 00000 n 
+0000106040 00000 n 
+0000110621 00000 n 
+0000288267 00000 n 
+0000277115 00000 n 
+0000110643 00000 n 
+0000111836 00000 n 
+0000288333 00000 n 
+0000277262 00000 n 
+0000111858 00000 n 
+0000114501 00000 n 
+0000370082 00000 n 
+0000369834 00000 n 
+0000380663 00000 n 
+0000288388 00000 n 
+0000277409 00000 n 
+0000114523 00000 n 
+0000119626 00000 n 
+0000288502 00000 n 
+0000277556 00000 n 
+0000119648 00000 n 
+0000124026 00000 n 
+0000288605 00000 n 
+0000277703 00000 n 
+0000124048 00000 n 
+0000127406 00000 n 
+0000288708 00000 n 
+0000277850 00000 n 
+0000127428 00000 n 
+0000130007 00000 n 
+0000288796 00000 n 
+0000277997 00000 n 
+0000130029 00000 n 
+0000134492 00000 n 
+0000288873 00000 n 
+0000278152 00000 n 
+0000134514 00000 n 
+0000138715 00000 n 
+0000288963 00000 n 
+0000278299 00000 n 
+0000138737 00000 n 
+0000143502 00000 n 
+0000289029 00000 n 
+0000278446 00000 n 
+0000143524 00000 n 
+0000147714 00000 n 
+0000289084 00000 n 
+0000278593 00000 n 
+0000147736 00000 n 
+0000152121 00000 n 
+0000289172 00000 n 
+0000278748 00000 n 
+0000152143 00000 n 
+0000156210 00000 n 
+0000289238 00000 n 
+0000278903 00000 n 
+0000156232 00000 n 
+0000160893 00000 n 
+0000289304 00000 n 
+0000279058 00000 n 
+0000160915 00000 n 
+0000165314 00000 n 
+0000289370 00000 n 
+0000279213 00000 n 
+0000165336 00000 n 
+0000169741 00000 n 
+0000289471 00000 n 
+0000279368 00000 n 
+0000169763 00000 n 
+0000173059 00000 n 
+0000289537 00000 n 
+0000279523 00000 n 
+0000173081 00000 n 
+0000177517 00000 n 
+0000289614 00000 n 
+0000279678 00000 n 
+0000177539 00000 n 
+0000182641 00000 n 
+0000289680 00000 n 
+0000279825 00000 n 
+0000182663 00000 n 
+0000187193 00000 n 
+0000289724 00000 n 
+0000279972 00000 n 
+0000187215 00000 n 
+0000190871 00000 n 
+0000289812 00000 n 
+0000280127 00000 n 
+0000190893 00000 n 
+0000195242 00000 n 
+0000289889 00000 n 
+0000280282 00000 n 
+0000195264 00000 n 
+0000198974 00000 n 
+0000289966 00000 n 
+0000280437 00000 n 
+0000198996 00000 n 
+0000199249 00000 n 
+0000290043 00000 n 
+0000280584 00000 n 
+0000199270 00000 n 
+0000201788 00000 n 
+0000290087 00000 n 
+0000280731 00000 n 
+0000201810 00000 n 
+0000205065 00000 n 
+0000290175 00000 n 
+0000280878 00000 n 
+0000205087 00000 n 
+0000208627 00000 n 
+0000290274 00000 n 
+0000281025 00000 n 
+0000208649 00000 n 
+0000212228 00000 n 
+0000290364 00000 n 
+0000281172 00000 n 
+0000212250 00000 n 
+0000216755 00000 n 
+0000368779 00000 n 
+0000368529 00000 n 
+0000380057 00000 n 
+0000290487 00000 n 
+0000281319 00000 n 
+0000216777 00000 n 
+0000220869 00000 n 
+0000290590 00000 n 
+0000281466 00000 n 
+0000220891 00000 n 
+0000223810 00000 n 
+0000290645 00000 n 
+0000281613 00000 n 
+0000223832 00000 n 
+0000227457 00000 n 
+0000290722 00000 n 
+0000281760 00000 n 
+0000227479 00000 n 
+0000231867 00000 n 
+0000290788 00000 n 
+0000281915 00000 n 
+0000231889 00000 n 
+0000236252 00000 n 
+0000290889 00000 n 
+0000282062 00000 n 
+0000236274 00000 n 
+0000239406 00000 n 
+0000290979 00000 n 
+0000282209 00000 n 
+0000239428 00000 n 
+0000239660 00000 n 
+0000291045 00000 n 
+0000282356 00000 n 
+0000239681 00000 n 
+0000240493 00000 n 
+0000291089 00000 n 
+0000282503 00000 n 
+0000240514 00000 n 
+0000240724 00000 n 
+0000291144 00000 n 
+0000282650 00000 n 
+0000240745 00000 n 
+0000241959 00000 n 
+0000291188 00000 n 
+0000282797 00000 n 
+0000241981 00000 n 
+0000245330 00000 n 
+0000291289 00000 n 
+0000282944 00000 n 
+0000245352 00000 n 
+0000248911 00000 n 
+0000291344 00000 n 
+0000283099 00000 n 
+0000248933 00000 n 
+0000251173 00000 n 
+0000291458 00000 n 
+0000283246 00000 n 
+0000251195 00000 n 
+0000253298 00000 n 
+0000291526 00000 n 
+0000283401 00000 n 
+0000253320 00000 n 
+0000254989 00000 n 
+0000291605 00000 n 
+0000283556 00000 n 
+0000255011 00000 n 
+0000256907 00000 n 
+0000291673 00000 n 
+0000283703 00000 n 
+0000256929 00000 n 
+0000260369 00000 n 
+0000372075 00000 n 
+0000371854 00000 n 
+0000378128 00000 n 
+0000291774 00000 n 
+0000283858 00000 n 
+0000260391 00000 n 
+0000263442 00000 n 
+0000291910 00000 n 
+0000284005 00000 n 
+0000263464 00000 n 
+0000265388 00000 n 
+0000291976 00000 n 
+0000284152 00000 n 
+0000265410 00000 n 
+0000267732 00000 n 
+0000378065 00000 n 
+0000377197 00000 n 
+0000292042 00000 n 
+0000284299 00000 n 
+0000267754 00000 n 
+0000270292 00000 n 
+0000292099 00000 n 
+0000284446 00000 n 
+0000270314 00000 n 
+0000272261 00000 n 
+0000292143 00000 n 
+0000294641 00000 n 
+0000303673 00000 n 
+0000306204 00000 n 
+0000309947 00000 n 
+0000315520 00000 n 
+0000321670 00000 n 
+0000324493 00000 n 
+0000329260 00000 n 
+0000329991 00000 n 
+0000334690 00000 n 
+0000336870 00000 n 
+0000344739 00000 n 
+0000350476 00000 n 
+0000356434 00000 n 
+0000357926 00000 n 
+0000358906 00000 n 
+0000363194 00000 n 
+0000364440 00000 n 
+0000365080 00000 n 
+0000365675 00000 n 
+0000367911 00000 n 
+0000368508 00000 n 
+0000369813 00000 n 
+0000371832 00000 n 
+0000372549 00000 n 
+trailer
+<< /Size 440 /Root 1 0 R /Info 2 0 R
+>>
+startxref
+387075
+%%EOF
diff -Naur hurd-l4/doc/hurd-on-l4.ps hurd-l4-new/doc/hurd-on-l4.ps
--- hurd-l4/doc/hurd-on-l4.ps   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/hurd-on-l4.ps       2005-07-13 18:30:52.324796736 +0200
@@ -0,0 +1,10465 @@
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.92b Copyright 2002 Radical Eye Software
+%%Title: hurd-on-l4.dvi
+%%Pages: 83
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 596 842
+%%DocumentFonts: CMR17 CMR12 CMR10 CMBX12 CMBX10 CMTT10 CMMI10 CMR7
+%%+ CMSL10 CMTI10 CMR8 CMTT12 CMMI8 CMR6 CMTT8 CMSY10 CMMI12 CMSY8 CMTI8
+%%+ CMCSC10
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: /usr/bin/dvips -o hurd-on-l4.ps hurd-on-l4.dvi
+%DVIPSParameters: dpi=600, compressed
+%DVIPSSource:  TeX output 2005.07.09:2003
+%%BeginProcSet: texc.pro
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
+1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
+0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
+sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
+rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
+gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
+/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
+/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
+A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
+get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
+ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
+fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
+{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
+chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
+1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
+forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
+/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{A length product length le{A length product exch 0
+exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
+end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
+grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
+imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
+exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
+fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
+delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
+B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
+p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
+rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: f7b6d320.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+%     cmb10 cmbx10 cmbx12 cmbx5 cmbx6 cmbx7 cmbx8 cmbx9 cmbxsl10
+%     cmdunh10 cmr10 cmr12 cmr17cmr6 cmr7 cmr8 cmr9 cmsl10 cmsl12 cmsl8
+%     cmsl9 cmss10cmss12 cmss17 cmss8 cmss9 cmssbx10 cmssdc10 cmssi10
+%     cmssi12 cmssi17 cmssi8cmssi9 cmssq8 cmssqi8 cmvtt10
+%
+/TeXf7b6d320Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve
+/macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash
+/suppress /exclam /quotedblright /numbersign /dollar /percent /ampersand
+/quoteright /parenleft /parenright /asterisk /plus /comma /hyphen
+/period /slash /zero /one /two /three /four /five /six /seven /eight
+/nine /colon /semicolon /exclamdown /equal /questiondown /question /at
+/A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X
+/Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent
+/quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u
+/v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef
+/.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 09fbbfac.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+%     cmsltt10 cmtt10 cmtt12 cmtt8 cmtt9
+/TeX09fbbfacEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi
+/Omega /arrowup /arrowdown /quotesingle /exclamdown /questiondown
+/dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla
+/germandbls /ae /oe /oslash /AE /OE /Oslash /visiblespace /exclam
+/quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft
+/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
+/two /three /four /five /six /seven /eight /nine /colon /semicolon /less
+/equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright
+/asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l
+/m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright
+/asciitilde /dieresis /visiblespace /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi
+/Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /arrowup /arrowdown
+/quotesingle /exclamdown /questiondown /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /visiblespace /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: aae443f0.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+%     cmmi10 cmmi12 cmmi5 cmmi6 cmmi7 cmmi8 cmmi9 cmmib10
+%
+/TeXaae443f0Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/alpha /beta /gamma /delta /epsilon1 /zeta /eta /theta /iota /kappa
+/lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi
+/omega /epsilon /theta1 /pi1 /rho1 /sigma1 /phi1 /arrowlefttophalf
+/arrowleftbothalf /arrowrighttophalf /arrowrightbothalf /arrowhookleft
+/arrowhookright /triangleright /triangleleft /zerooldstyle /oneoldstyle
+/twooldstyle /threeoldstyle /fouroldstyle /fiveoldstyle /sixoldstyle
+/sevenoldstyle /eightoldstyle /nineoldstyle /period /comma /less /slash
+/greater /star /partialdiff /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /flat /natural /sharp /slurbelow
+/slurabove /lscript /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p
+/q /r /s /t /u /v /w /x /y /z /dotlessi /dotlessj /weierstrass /vector
+/tie /psi /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/space /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi
+/.notdef /.notdef /Omega /alpha /beta /gamma /delta /epsilon1 /zeta /eta
+/theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon
+/phi /chi /psi /tie /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 74afc74c.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+%     cmbxti10 cmff10 cmfi10 cmfib8 cmti10 cmti12 cmti7 cmti8cmti9 cmu10
+%
+/TeX74afc74cEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve
+/macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash
+/suppress /exclam /quotedblright /numbersign /sterling /percent
+/ampersand /quoteright /parenleft /parenright /asterisk /plus /comma
+/hyphen /period /slash /zero /one /two /three /four /five /six /seven
+/eight /nine /colon /semicolon /exclamdown /equal /questiondown /question
+/at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W
+/X /Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent
+/quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u
+/v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef
+/.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: bbad153f.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+%     cmsy10 cmsy5 cmsy6 cmsy7 cmsy8 cmsy9
+%
+/TeXbbad153fEncoding [
+/minus /periodcentered /multiply /asteriskmath /divide /diamondmath
+/plusminus /minusplus /circleplus /circleminus /circlemultiply
+/circledivide /circledot /circlecopyrt /openbullet /bullet
+/equivasymptotic /equivalence /reflexsubset /reflexsuperset /lessequal
+/greaterequal /precedesequal /followsequal /similar /approxequal
+/propersubset /propersuperset /lessmuch /greatermuch /precedes /follows
+/arrowleft /arrowright /arrowup /arrowdown /arrowboth /arrownortheast
+/arrowsoutheast /similarequal /arrowdblleft /arrowdblright /arrowdblup
+/arrowdbldown /arrowdblboth /arrownorthwest /arrowsouthwest /proportional
+/prime /infinity /element /owner /triangle /triangleinv /negationslash
+/mapsto /universal /existential /logicalnot /emptyset /Rfractur /Ifractur
+/latticetop /perpendicular /aleph /A /B /C /D /E /F /G /H /I /J /K
+/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /union /intersection
+/unionmulti /logicaland /logicalor /turnstileleft /turnstileright
+/floorleft /floorright /ceilingleft /ceilingright /braceleft /braceright
+/angbracketleft /angbracketright /bar /bardbl /arrowbothv /arrowdblbothv
+/backslash /wreathproduct /radical /coproduct /nabla /integral
+/unionsq /intersectionsq /subsetsqequal /supersetsqequal /section
+/dagger /daggerdbl /paragraph /club /diamond /heart /spade /arrowleft
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/minus /periodcentered /multiply /asteriskmath /divide /diamondmath
+/plusminus /minusplus /circleplus /circleminus /.notdef /.notdef
+/circlemultiply /circledivide /circledot /circlecopyrt /openbullet
+/bullet /equivasymptotic /equivalence /reflexsubset /reflexsuperset
+/lessequal /greaterequal /precedesequal /followsequal /similar
+/approxequal /propersubset /propersuperset /lessmuch /greatermuch
+/precedes /follows /arrowleft /spade /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 0ef0afca.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+%     cmr5
+%
+/TeX0ef0afcaEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/arrowup /arrowdown /quotesingle /exclamdown /questiondown /dotlessi
+/dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls
+/ae /oe /oslash /AE /OE /Oslash /suppress /exclam /quotedblright
+/numbersign /dollar /percent /ampersand /quoteright /parenleft
+/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
+/two /three /four /five /six /seven /eight /nine /colon /semicolon
+/less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K
+/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /quotedblleft
+/bracketright /circumflex /dotaccent /quoteleft /a /b /c /d /e /f /g /h
+/i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /endash /emdash
+/hungarumlaut /tilde /dieresis /suppress /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda
+/Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /arrowup
+/arrowdown /quotesingle /exclamdown /questiondown /dotlessi /dotlessj
+/grave /acute /caron /breve /macron /ring /cedilla /germandbls /ae /oe
+/oslash /AE /OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: texps.pro
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginProcSet: special.pro
+%!
+TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
+/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
+/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
+/@address@hidden div/hsc X}B/@address@hidden div/vsc X}B/@hsize{
+/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
+X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
+/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
+/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
+{userdict/md get type/dicttype eq{userdict begin md length 10 add md
+maxlength ge{/md md dup length 20 add dict copy def}if end md begin
+/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
+atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
+itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
+transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
+curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
+pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
+if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
+-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
+get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
+yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
+neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
+noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
+90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
+neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
+1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
+2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
+-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
+TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
+Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
+}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
+save N userdict maxlength dict begin/magscale true def normalscale
+currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
+/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
+psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
+psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
+TR/showpage{}N/erasepage{}N/setpagedevice{pop}N/copypage{}N/p 3 def
address@hidden/doclip{psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll
+newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto
+closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N
+/@beginspecial{SDict begin/SpecialSave save N gsave normalscale
+currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}
+N/@setspecial{CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs
+neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate
+rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse
+scale llx neg lly neg TR}{rhiSeen{rhi ury lly sub div dup scale llx neg
+lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx
+ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N
+/setpagedevice{pop}N/copypage{}N newpath}N/@endspecial{count ocount sub{
+pop}repeat countdictstack dcount sub{end}repeat grestore SpecialSave
+restore end}N/@defspecial{SDict begin}N/@fedspecial{end}B/li{lineto}B
+/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1
+setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY
+moveto}N/ellipse{/endangle X/startangle X/yrad X/xrad X/savematrix
+matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc
+savematrix setmatrix}N end
+
+%%EndProcSet
+%%BeginFont: CMMI12
+%!PS-AdobeFont-1.1: CMMI12 1.100
+%%CreationDate: 1996 Jul 27 08:57:55
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMMI12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-30 -250 1026 750}readonly def
+/UniqueID 5087386 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
+5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
+4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
+3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
+EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
+4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
+2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
+323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
+2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
+D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
+5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
+0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
+A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
+2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
+00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
+CA084B3C6E6852BC33143280C65FB1E86C9E501D27DA88262AF9F8C0F41B46A5
+D4206965CC5931AB2418F069ED55A68BCABA9CCE3939E3FB79A17189B227C50C
+33943B6F21D381C14CF8552EE42F9D76511EC4DDCB8B68673C2D1A2560C7BE79
+9C9F48581613F02C765B529A4A00B371819B835DDAEB9C0EBF1D0C9C9F419E9B
+BFC09153EE8ABB5D6C02C5619860BFED05788893041F84F2C6DA434EA611EBCC
+DB675AE266ED133ECED633BAFFCE5535163BA355DA648A3D911E2C01E031D302
+E8061FD13C0751886DE94E486126604BB3082C40A65639E91B97483486C877E4
+3287690007B115A105479F9AD0DB70D62671A4EFF044237CAB3726CD9E420F20
+8782A53B7D88841EAA6DC77519E46FF0272693626DCCE540E6CA083F73BA83F5
+21A826C4441E1F8CF662519CA46A188906CA1BC9CE8BD9A037F70ACD0BCE3565
+B3554CE3E3F6222F7A252B780C86447859579C68F901483CF19E5F174CB1867C
+8B14C4C80E205DB32604487759BFE5C81306B014FF68421D018662E30C7CE73E
+D75664CF4075562967EB05C29CAA2BB8F09ED0E8151E82F906A45763950B0261
+31BB57A6848F130FC4A1FE4DA15F2D5BD22343A56DDB1E235F034E6938F2E529
+5329FC265BD3680B2C3AEF568379884AB03221DB52F0CDC7123CB9F869FC26A2
+E2BBC69E17A0002DAC723331EA5BF7C8E0A31CC14E845407342D173A16008486
+2D3081A4DD6DDA2DD03825668DBFD29C9F6D105E78D6CDD045F3D1E73BE12200
+AA0F36FEAF5EBCF16C8BBD27F52A900170E0255E75B46ED9907F416C4FB0E262
+49FB70A02F44A4A2D22F525AE717D5D73382351E5916416D4128A4BC33FA2170
+E737B8ACAEE490A724A712AB37B796B58E23EE468342F15D8946C49063D5D964
+BF5A1082E770025FA456667260A8A6F0A8A565503612DE9B5EA3F197B3CE0BD5
+D2B645E1E2E499A95F1488F7D2C214DF034A609AF4E3815AEDA671E3F491F389
+CE3F774D104BC87B299AE671657CB8D71C7FB3C1650D7BC9294D691F21826834
+C55074FF1E0210987F3AF9354F5AFDB2AD189CEF8326ED59B023F2EE01C3625D
+CA5FE4B744DCB34452B1C7D44C85D5A505A9702094DDF82461C0105ECD6D8026
+C25EC8E9D96DCE
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMTT12
+%!PS-AdobeFont-1.1: CMTT12 1.0
+%%CreationDate: 1991 Aug 20 16:45:46
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMTT12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+end readonly def
+/FontName /CMTT12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-1 -234 524 695}readonly def
+/UniqueID 5000833 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F0364CD5660FE13FF01BC20148F9C480BCD0E
+C81D5BFC66F04993DD73F0BE0AB13F53B1BA79FE5F618A4F672B16C06BE3251E
+3BCB599BFA0E6041FBD558475370D693A959259A2699BA6E97CF40435B8E8A4B
+426343E145DF14E59028D4E0941AB537E34024E6CDE0EA9AF8038A3260A0358D
+D5B1DB53582F0DAB7ADE29CF8DBA0992D5A94672DFF91573F38D9BFD1A57E161
+E52DA1B41433C82261E47F79997DF603935D2A187A95F7A25D148FB3C2B6AA32
+6B982C32C6B25867871ED7B38E150031A3DE568C8D3731A779EAAF09AC5CE6C5
+A129C4147E56882B8068DF37C97C761694F1316AF93E33FF7E0B2F1F252735CE
+0D9F7BCE136B06EE967ABE0C8DF24DCBBF99874702ED252B677F407CB39678CC
+85DDFC2F45C552BA967E4158165ED16FECC4E32AC4D3B3EB8046DCDD37C92FDF
+F1F3710BB8EF5CA358ABACA33C7E5ACAD6BF5DC58BDFC3CF09BA2A38291D45A4
+C15FF1916FE2EC47FDC80911EB9C61F5D355BEDFC9DB17588547763AC5F0B1CC
+12D2FFB32E0803D37E3281DA9CE36C5433655526ACFB3A301C56FAB09DF07B5D
+048B47687348DEB96F3F9C53CE56DDD312B93D3918CD92AF53FB9461864D11B8
+0138918D0B1270C54873C4012CDE6F886DB11BCEA04B023EBB43E0D0A06BE725
+741D08B9DB688731A6C9886C15A83C28DADCC81385EA239E045E8F3670CE03DB
+9EE77ED067036595C9F3B1854343BE3A12E486B6E5A2F8AC44FA5378D28DCCEE
+306B0E283AA444423F9A4FF38E2B56DCF67A39CEB2C643DAE86865517D5D0371
+CB8797208ADEC637330A3A57902C9A88EDB75A7C16FA9850075D9F19578EC666
+1353CC1FC512D59DFF847ACCD3D79E83776B308BAC2BACF1011FF9DC1631898D
+9D28D47715BF256B3CAB1A4882117B33CC93807876B0E2C8F499468708988DBD
+7473C421F622D5B2AD25AED821892088E69C0F710C3B4CE490D5BC869585CC34
+263B6519ADAC4C01AADBFA5298A0E84A974B2D80E33368C34D5E70400FA0A3FB
+D6316ADE38471068F40E67BCEE1D5CE89E647431139C35F6958AE0249BEB1019
+EDCCEF8A91146BF410420CFAAEADC5B4B92F5912CA3F437031A454BFD98FE64B
+915363E967F779874FFA84CEF04940AE28ED81F885E1CE9A2F7D677DBD8A71CC
+3A5385E9867D12E1D0C69CDC40EBE66EF3E0912A45E7A6A0EA397163D93346FE
+52C707CB334EA46E41724E61E5C9CCA83209B4BA6736788B96E2833A49B09177
+F630FB13775CD0C98BAD87CCCE00AB7A7D35C8314A1AFC3FFEAF6B42582BAA9F
+D3A68AE6B4262D0105CC3DF6269E85E189E1BC46D69BE8A578E9DA693B42AE4C
+53E8D39C0C9167902383663ED1ABA2AECDD41A5895BE71AECB8E32580FE36C20
+DC4F980B29B38A9CDECD4637FB44AED9682F2061452535D372BDC10D3ED33441
+CD7B11798240CF1D19488F70CEE3A5F5D96EE254A4D8477566A93E38C13E65CB
+D638D095B4EB9F35A35BF51AFD1E8D051C64F456EBDEFABD0D9474C2C75AFD43
+5691340AC41C1A0DF613A8B193758E4D322BEA2D9BBF27AF382099A980914501
+1FF129A186D70DD80C71096243A7437A0F07F81DFBE2E885426FBE215028A850
+D713C379ADE84BA76E75EF6856494466DFA7AA62DE96E61A42EFA6C1BB260F01
+20374C1ECF1B8B65D3699E13446F42C18EC86FE99CDDB22791FA6B63B0BACB40
+253C68BBF79B4F48081D4DE751DF132B9BA5FAE57088FAF2341942EFEA45BBCD
+1E70FD7D06036F1840C703DE3024E6398DF1ECF9B31114694F8ADB9B4C49F382
+A3BA038019B770B4A2CE1FC6A412DAFD5FB18C0992D0BC13A3AEE6C945139A6B
+B12C0C68F01E19FE9A4A5149D2A30E23A8257BDE55F92AFF544D2FD68578FD80
+5477FABEAC834574AE6651D18A44FAC21B1427AAC7333A1BF2FC10D61D00EADB
+5B00C72EF44F7280A4EF30C16328682DD4E1EDEC1FB3D56245E68B9E0488407E
+258494F8B26AAAD53620842D3A2B7E6A3241D5C25D8F63329EE05BD4914651F7
+9D96400A9451077F531F5C6B83F1DE3D1668119DE058B687A30DAEC7BB08330F
+5FE4B8533F5BBB22498DE3C7686A70F19B27F15CBDB1EC7709104DF7F4B091BF
+DD901EF67BA2D09B3F287D64546EB319D3DCCCB1337DE1D3C5F7624509802C91
+633730C77BE304175EE5EC661431C1C7011F564494C320740F1679E0BEC75242
+9A826174BD03AFB1C0BE2DA9EA19F2BB10BD66045D744EC9F082A01E4EA0ADE1
+373C4FEB72A156835ECC6AEB695397B18E655FC1DD7CDD25FFA3D28372EC2D15
+0E6A6CD4A17BB27F93468F915FF771D134F531FE52DCA4D0C9174C9FB4230783
+3481176E1C921A6334DC50896135AB6EE1F7F48E299CF554635922C018A213D9
+FE8EEA760771E27905BB37AEAC7AFE9472843792BF69669FD691537B5A3DCF60
+61D8AD3A60A1EB6A12C23CC0351CFAD92649881BFD854DF027F8AD0F627D63F2
+42BF31FBFA8EE79DB6975274885CBA39F6AF7CA80DF4856168C0E1806159A6F6
+39326B54D12860F931153192B0A86502750A68DCB871CAE1557A54F5532E4922
+675C72AD00DADDABA4C9EBF3D6859DB06A4E07408C1035182915C2B3B854FAC2
+039953C948DBFC5EB441C404DCE19E5850CAE7C3A5C342C6FFC37CBA7CABFA4B
+931D9DCC8D8F3D1F5CFFBC2EF598D48AFE754D191977E86CC7664E51EEB29CE6
+08217ECF95C2F92F3AE855183820E2AC3CB23A2C9FA6A5ECA6EFCB39693CB23D
+FB7C228AD71991EF18939859A354A7A596E792BA30E38397B438127160B89747
+EE51F999DF91B87ACDE3DE05CD63B17DC9842F7D573A3CB842FD5488C762EC8D
+C534F159125DD6ED41A8985487F847048628B99C7EF0B09603A84F1191931C35
+6C46432931A45077D52473FB6F316DB5ED102C8EA58EC7EF5B2D45CE1A4322D3
+D392D59E71D87A70A8BCFAF4B0DED9A21A8E96E1CE108472F6CA042742DE2ACB
+172A946DF8A151C02C2C5884F46F6FBD6F102844DEC78A9F2B13F0A86488B997
+66830E639FB34900702674AB15F2A06BB3F6C4BFBC302DA022FACC39083FA379
+ADD358673380F2AA066381AFB91BBB36AC743A108E9978968E5E3398F53C2DAE
+5B9B109EEB88815E6BC2A3ABFB8014F26AAF80048E6F1A63936E29C54AD8F8E8
+E77F0E6BE8B32901FD1FB96B66298EBCB659C5F7DD53A84FF3A750486AE6E656
+BF331E02BEC4B1E209DAB79FC9A2C83B9A1D56EA6F26EEAB3266F30EBBF9175F
+3D294363464C0FCF2BAC97A05D203A5AF5CFCCFFDBB4D6332EE9BBBF54BDCC65
+52F2EF61ACBA3CC565D9DAD62A3CFBFA5FE1BE1909AB54D75C0B7B32517BAED4
+C3AF9791DB11DF0624A5939118DAE14D4A3F0033821DE6537D05344C95076ACC
+8D672D876BDF341183A0FCA6929F54FE48E793F5CF96FAC39881A4BF92A54A2B
+4242B8C7EF528F57AAC143D505B07955A75DF1E9CF4C6D41F8487912BD693AC9
+A3A8A56285C0E99FEE0A0BBC8F584BA96048CDFD06674101A319285B622E3E9A
+8AD574C67CFA53FBC1782F79C54DBF70A9362C0133A7A3E586BF27C52A8C794A
+AF34B87FCD3F23ABC2E1FD21BBB31B20ED6356A2E2F648293741A30434FA7138
+83D0F8595C15F56C51444FE59D7C34F67BFE2C70A6ACA435
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMCSC10
+%!PS-AdobeFont-1.1: CMCSC10 1.0
+%%CreationDate: 1991 Aug 18 17:46:49
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMCSC10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMCSC10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{14 -250 1077 750}readonly def
+/UniqueID 5000772 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A30EB76029337
+900ECFB1390CA5C0C3A04528044F266BA17BE487C79B94FAC6D6484684C5BFEA
+87BCCC77D40AD11552035E95E3007126418ED49B68468B38A14E88E68A267B98
+076F1C9769A5AFBC285E5B158EAC9F926F1D6C0B8F1D57D9C31D25AE27123518
+9D2CD92E5689E0213089BD268DA5E47525CB8EABAA4B78A15AEA34705889AB3A
+FFB8953B5B3482E52BFA0940630ADF8C0AC2177D907324299EE980E850F203CD
+B627962F43D5A678C44243CDE97853BDC6AB45FD5C09AD274DAF89929F583CC9
+CCC24BDFC68B92111055ABA5F26D2DC67C70906F71C2957701D65AE746A60C30
+40E6CB24B97FCDAD0487AE38A201FBF0E41BABD2181981A71940F1E707F91E5D
+C8CA50CB16D8702D188E56D014D92F76CE0B52ABDB9110E32438D2BBF3E6A40B
+7B005F10BB437812CAC6ED2996F7606DC962C4FDE207FF322782C343DF44CEC5
+FF06A55C630C20E9AE1B0D1C5673753C43BA0767D65D1B451CC6380D8BB3C4DC
+81E8FD8AA79BE993218686F29D3CD925566DD587F541A0DA1B1CC3BCEA2E6C7D
+5E1016F6917A871F1BBAD96AF9E867735017119A381FCF33EB2D3E1E7093FD90
+CDB0CED4818CFD9E201A03430CEC713620BE0D3254158931FB657C6AD4B2482A
+0E7D070D7497892E9E942DF58E88CAF0C8221BF36BF7C435BF2C683A4A2EF4CB
+E85820A8AD3486155A40143011BA9D76297F46DEF69ECA4596D6E4CAABF84091
+22A96A4BC78A8DD072FEB759A68A44BE1164638B6D952147EE3C628F9A022060
+1D1941E73310943FA782532ABB1116532AD67AEFE0758C051241E301C7E13A98
+6447EB0180BF6799814BEA4DC0F727D0A40B7BC3B1269CDE174453D6A3C4479C
+146001CF717DE25AC1BE5AEA5F2F1C17719251C429D3AED19EF8C9DAC4D02FBE
+79C053EB513F89C62E4A465CA81B0D6BFCB6EF1CC21C7FB8108A4E084D69C7F1
+AEC05B9BF13FBD7265D935544E42C1679B35108E88679C133AA79B1C7DA642C3
+E69BC893999A5E69B08B195B7AFB55B5179E18CABEF002A0B189543DF7F91B97
+EC82E1CE7D8503857D353FF654DEF601F3C7C78208031AED5FBB9687BDE55CF9
+530EE8CAC6AEF8440B0ABA844F6CA146F55E66B157ECDF9D4737BB60AB32B545
+5C26DC18932B0EC1D5F9BB83CC06F04B7B1BBC8A8DA96A4D53AD4BCA0788317F
+DCD189CDFCBC8367FB51D842B18866EA77D64082662AE7D90C5078EEB87E26E7
+D9711F4E307476029B9C13C77721B2B495C0288E49CBEF1B3CB7957B095BBFE1
+BCF115874E49181EACA05B4F3647E862C4329F16CCAB357EB0A92E44B27AC4CE
+001DAEE4B79BB5BF7AF439940112FA95D4CD0EC8FE5ECBAF834C4E50F49C383D
+9AD7F310A373AE78D18D742062EB9CEAD9202101DD4A9FDAD9BA826D25CBAE4D
+99C2619DDB650BD2D532A4D7F45ACF613C7CCEA9E7286887C0E3F58729A00E6B
+EC180D698ED10E42F03999B87F92C2881B454BA0E230A5F6708679A90F5C1320
+782E25AB7D5F4846FF358AD482CB68FB51174C1028E77453195075D5358B57A2
+91010B540DCBE5D91F504FCF6AC0E12477B6378407718633BDF9D6F83B6AFE44
+043EDB6D5DC9D3B64FF194789E71EF3607227D97B3DA3336825072C76E493F18
+06C16635E56B48DA7D928AED6C754BE4E09A08D31D96DA003CFADDB2720DDCE9
+B64435C9CFA3BA909CA9981D7B879010419DB0AA0903AB56B69F19218D168F17
+B58D698677BF7A0102B32B5053F440347EC4729554F3C6E220FAE4C5AE9E6144
+75F8D5B0C0DACDA9F9431513F5ACB2B40C59395058AD17B38B4C4E25CFA82C6A
+50068651DA5B14B20B97934420D79F592F5CBD22A8B578A8781A52AA7C2B0302
+8E307B5C37A8D45C56D6C11C2B1842768146B3B5DAF0AEF9A368436C73632217
+90B145FCA001F83C675A9A21FA332C99F50913D8B6E35DFE1D5E8DD7ADA3B395
+A6355C8FCD0F31DB990E896CE260D6F0C4698255C20895178551AD4B6F1B05D4
+C9C644EB47804DA8823B11F407BDD2A10F7356913B072A5885BBEFC75A8C1116
+E388C9DA00FD7CD4B933A7FFFCE99D1B0589D289CF44E55D733DF9ED8FCA510E
+652FABE8748D25B30D887D575B164FDA8F7EA184D93626BCB4D0C7D6EE1FD556
+BC7E0A5586DC44F96D1BD6553CBC289AEDF6F28079678DD0417221155B13AF70
+3704689BE5B1A7248CE294E71BEF0D5D567EC93854A253399D7104D3830F7FF2
+D030149FDDA3101EAE4F1D8C750787C72AAACF5E3B5768564DEDA2763B486221
+CF70EBA616ED9D9BB046C04B1BD8CB1545B93E19DB9CF9251A99A14823E3B762
+C4B8721523EA7A74C591B6FB7E5C00AFDB38827E70A851BA99518C17AD00A931
+42D2BEBFF54707FAE21922F605B072BBF7278361A37A82CFF26CA1B5C9CD7964
+6D4115188301D071A759A9EDECBBD9D28E512DAE429FC176846F04F5DD2D6B08
+40FC7D2CB34E7A6A1B160B2DF4964EC1094B0852A9533880FB8B090764A76CB2
+1636F6D1FA412FBF304CA662A7E99BA4C31DE539916631EE4912D1DFEE1A77D4
+9B890BE1DF92DCDD2BF1171177B03D7B197B6F41E14E056DC3031A4F35C2DD16
+F31B7038E7F710A7D3E52D429BD2DCDEDDAB44E3AE1030A4A68AF5DE1624DF7C
+4BAF9BE33EE5D55404D94B801AF9372591A53CC3A6AD543621365B3A76C198B4
+97DE557A75C6B5D55A861D271264CC7F7A6C8E080B9A0F21369478EF7A7A6B30
+AD70A814C85A28C92A6B61CB1DA8FB4E8FFC317CAA68E33A7C34C1929AF7F662
+42D9FD66A2350B861C7E4B05986DC2CB0E8AB5BBB1A2E8CBA21D5691860CDEA5
+2AB54A565FE41B65FCE2F16746D6F0DBC89C5860E0DFEF2DA785F1CD4D87BE6C
+3859064F67BA40BFCBEFDBC52961D800CF2658BD53093580FFF39BDAE99B9000
+B33985D4E547CBDF10FA8086D84BC9A3D614598A4DCBD44394180BDF907F2D57
+E4CC74A64FE47AA073B70C20003881DD7BC14D7460721164BBD9BB66B3C7FAAC
+46F203FF9948DE71192986E474F7A214302FBE9DE303B6D2ED051AD09059E5BC
+DBC3F6A6462819CAC00BA41F6E1703F1AFAA64FB5286D2169B88B6AFF25728EF
+154403DAB26E1020A5D68D3A1BE993FCD682DA0C0B90556325D575C284FC9890
+21B237BCA4DFFCF2CA7AD98704B36C8DA627819DCE97BE5CEC1C8DB1F055F3F3
+9D30ECA9D20615F017AA8FA103248689B3267C4FAF29EE7483621AA579FD8FFE
+90331358054A7FA7EE7747ED9B646476DFCF2059F8C526FF8C9166B1AA49F12B
+2479A8A263F6F88876453E698B9175384843BEFEBBC6EA96CF052C4EBDEBA163
+D10E146A2BC005EDAF96B6BB739864EC26622E69E181E4D66214BD6F03B8C4CE
+8926CD09E76AC0BE2301CE8F68284BD0EC37761FFE0BED287C84A8D3DFB17DDC
+B87ED6EFDFB13240095EE69FF3755502089FB33D9378971D8291BC01C47DC50A
+974F191B4E1A72643255A9C30B39610C706214AC75401DE70C264AE9D9E50B3B
+F62B8A3823375FB99BAACA77FBE3D119739715D81AD8939B42D04F821AD7C226
+2FFEFC429A10AEB99BEB325D9B4F2D10CE3ABB8210A356BEA14C389979766AC7
+BF588D8ADBB4F50B821F75AEE5C366E2FAF7DD48A2B6611ABBD3026052DE4B65
+AD5D2B0FAE54D65EC7C93F4FB53C05003E318BB0BF09539BEE7544A4B48D82D5
+5BAE60ADE1458BB07E8805EB198645FBCE94CC01B0A832CDF5A18523DFEFFA32
+8FD8C2BCD7AF1E0DA867A535C8ED1C7FF4A043ED013599A19F6C7283A41FAFFB
+0C010C7DD30A5E57FECBB46D48D3E75D83D820DC13E4E37D9E1115B8801A11A4
+BC5E61DBB0817AB02415F9DBACB91FCD2364C3C17E48084280E1D1BF48D0C968
+1C75484FDA9997B444867CCB8E4EBACBE79E54EF08534FB02CE836AD6800C8AE
+3A5780470DD66A10EBC84D6A1F469DA37437B1172B6A9D728B16740EA631EEC3
+EB405E462BFE42881273E4411A889629A510E429649852DD272E29832E514BFE
+CA51C503E2D31E67855D671D1BCEF98614EA50D477C3E492C15FA41FFB101531
+78DA4810C1885CA06D26DAA816582D02ED48CF13D575BCD9C5C0477FA5D84045
+844FB708154345219EDA39E996F51C82D8EA3A1CA1EDCE1F0FEDC0FCC6CD9B91
+387F5433BFF518E32BEF7D7BD78044EDA32AD798ED2963E76C81796A906B399D
+5FC7F0FE4D9CD7CDC2A9D05564C449DFCC5B4C20B29E99DF094DF37BFABFFB41
+6F6B50
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMTI8
+%!PS-AdobeFont-1.1: CMTI8 1.0
+%%CreationDate: 1991 Aug 18 21:07:42
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMTI8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMTI8 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-35 -250 1190 750}readonly def
+/UniqueID 5000826 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
+525003F3DAD7933EB57E7DB1462E9D906F6D8F5BF740206C1EC5F36E00AAFF68
+F3EF6F3A2540E5F9564D1C215BC1E7E69C7D04DA5DB1CF195613C9CBF4BAA360
+84AEF3E10E24877FBE36AD731DC97305BDE6DB1F934909FAF60B8E28561FBC57
+0F5B6225425BFDE8F0C71CD4507B82FF803E9A301397975E38A259DE1E1B4FC0
+06BB1DC2D45B987A2268A77CE8DC025CB0D1B39788BBEE149103950650171C94
+5FED1063050A90BD38605BD9365D1C2AE42A7DA3DDB9A263FE10BD487F63D908
+D4F02758BD9D7BE53E6353A25BEFA29E42B50C1D078A8B3A746EEDB381CCE36C
+93FC4BD1A8D1D6ACD0D355E948CFE397B74D243EB51597D251D0BAE6884D70E8
+FEE119462E1939A9783414DF59EEA5FF1529F13869D1FF0A44935C5198CC5DAA
+E1FD2A17AEEBF4974052D06734A409E26C457C06700C55896C90BB33E044A737
+46590D9FA242819B9527FD59818D8829D4EB2D26A34CC05A2CC063E66F2DF193
+8E4F9670014BC243180E45B51DDB05AD1E6A7F619EE1CE09CFC1A4F02CB7270E
+4482FEDF673EDED38EF3173C475C34BFB3F6623C5E942A7797FEDDD0EF1D54E9
+1D90D7076C0A9687E334907C22F2E7C603388D8D626B0E5A62B7543DCBB575D7
+9A6BE1528EC9BC18570001092524E4FBB02F3B29293BCB4F0EF14A2DD9DB22A5
+BB33455799E8120D2A4862424AA4A382972E2845E042506FC8F6E201D11DD0F2
+09FAD8DC29C3E12B66293ACBFB13FA0F26238981F2CD52B47A8CDE6DF5CDFAAF
+3113E1A6366B806EABA9C34E5D41167CD10D7B639021FB4CFDAE28CE72A93F3C
+E8929A4BB97F438C2B041375C5EAFBC55FB71FF273529C91DC96748FD6D3271A
+149DAB9DB4F9796C55A3DB8F9EBB0CC912BF8EAF556FA1B79515C1D40F47EFEF
+F12887C22C5C37458A79D9458F5F276A42DC79D1D85EA0D47D5073834E8576C1
+781B4D4F392A0C529084017D0D79D6AAA6E09068561697EE7CF065E964F4ED8F
+F21CBD9D1EA7744C97023E31079CE1E2C7F51B4902B785AA4178D10187454B9D
+025F2CA90E6E33E50D1D913B7178D69D4BB94E80DB6761BA3BB22A0CD47181CA
+3FEC8F366A4F318BB5E9921F5914BCBE724F3BBABC8E135AC2B96E3174D0BE0C
+99912FE92B9E1E58F7C095F3CF9AA1CF45A8F68CC280D31CBF22D93F544E9FC9
+4563BA1D0E3339DE7A123E90DCC41BFA2C3ED13FDFA2007D4BEDDCE0B2AA74AB
+AAD154F73BE60C313F0B3EB22FCC98868DFAD609FE0C673A511E2BF88BE1AA0B
+C789FE65E3BDDEDA4236E1E06C50F9F8DEECE76EE334EC0B2D054248D7C012BD
+6636393EA8F5D8D82EA7AC1CED9AC6CC3C5C7E85B076AA4114521544D6CD5CE7
+3D86737B3545DCBF4361F024E0D921D5A4BDC4AA2C98FF1D3729216662652CBE
+6F9B7C3358F43AB7B2F3BD206A9152F066999B1F639C16A9A79FC89FD1F56BAB
+E803343A9F52C705CB36708818B88A39896E7C35A0307AA9F30E57C7BE6ADD0C
+26FDC9826119408EFD1AD517A09DE6E795CD3CCA03631127D28F355687B3ADCA
+BBE7CCCC7175306415D07DF59D95BAD9356CA755249B807B88DC88B1E660942E
+DD26FF6FAD5067C559CA7CE0C363AD82D7F16A9495F281FB6A433AAD423D3F6F
+6E8682D63206E0E2CDFF6F4D179A3947DADF1245C9090681D7DC05226B53453B
+012EA23756BE34194D4324272E29B6EC542CF8DB079CBE453B7CD1FB86F9770A
+70001913E992B7D7B5A4D15F5B7D7D031780DF13B3FD40EFDEF816D84E28BA32
+CF6385C19ABC195CF857C32E37D0823CD1FB7739232428E2A2F48C8EADDA2538
+698549AFD534D4742B763B366CF73902D1DAD9178F23946A00DBDFF0A88A4486
+1A5309782997F5DEBF87040771F86CC9B757B0086ADAB0420BAEBE07C83BFF51
+170E062B5AA6DF9534E4D8460A980AB5F4B1EFFD6FCD61296D9838D3E2C2F6B4
+20CA322EA17DE8E4827F7A20FD205AF5E291229B6E5B77A4AEB9872BB09CD2D7
+E55A50D8368695E4EB036440FB42D47AA4E783CAB0C55398A8B87D8E4A2FD2C5
+68948BE8958D2BCDCBF52364315E5666A627E9D176A95F22DAB52C7B4F9033AE
+F6129591D4CECFF530B2027913CF7CC7B3EC9575DFEAFCB31BD03018F4002B48
+AE85F7E4F03123B174ABECADFEB9B01CDC4D032D0FD234F4BEBB445479E30681
+232C1F00D558A0ED12992EC2113B580BD547A8DD57B6AB26DEFD87EA3915AA01
+49532742ECAFC529E78269FDF2A818E749EC85855FB12C651D5015EDDD9EF76D
+27ED93A415725844352301710086D0F40DD2DA1215E26F0403A73093622849A8
+55AF6A644193E4DBCECDCA984D3E1C023EA82CBEB08AAD67E01E91CCCE8E6B37
+7BBD19B80C288AC1B312419345F9119D3E2A600DE1B8AF59D8B596B8C0D7CCDA
+E9BDAB0090659226A64EF3B7BCAFD1BFA082CC16229470C002676A77344ED12C
+E5EC40C225EB622FD1C9FFCE8ED2A2880ECB637451A1BDC7003702C402400B18
+9FCA928D6EE2B7CEA9BD50CA1E902A7441019699F7C911DFEB2CC85DC7AA10A1
+3FEBD72348C52222A5DA3267D4419226768E598EABD1860C3D11E90D5F2A4189
+8D6BD74BB3A48F1791D311978E8EB3804C0EF7C928DEA4145193433DBC82D2F9
+AD5AD25729F4D0052E65D61C016C5A1313D7BFF3F34A42A7FFACF074C45DFADC
+0B7D93371AACD62D5E7AD1CD10537C1F750629A880C4F91D0C6B8307145C26B3
+ED9B679A5D8453A7E25B2ADA98FE2C2100FAB8F5F282F301AD35B4C3E348E2F6
+04E2B8E7A8E006F5B489C98DC0EED16FF580FDDD9397DBC9FE563C5C7E2DBF76
+76B09183347746C896A9FF5494F22F59010B272A52732818270B946F87B3350E
+C4D48FFE401F1AB16F54E4ABBA7C8D0CCC762B43734A559146719CEF86E9BE07
+08147FDB55F94C16C72C18879DBC08B02DF1B538D9EE4496D752DA15510F9BA1
+1AB2DEF1E61B90F436DE8470E67F92A3E578547F30FD0D66A17D2FE920D8E421
+D5ACB529E756C1C94FE428551AA567F4CCB450CD27DD860509E73C8D843D5D12
+7119E6AF8E8B88F91E08330C2D5E15FC30BE6AB66D309127A2AD434FF28968FB
+C6779726CD6C8C9482A1F4B0530935CF55972834F1909AF84CC0514D9B135A0F
+DFA274268C1929B8839F6D37B28EF0603FA05815B97A7173FA24144AD7736319
+0C8DEFECCDC925275E12B73C60B3A7F6C7D58CCD41E7ECC6A82E8FB10831BC74
+3B5241425F2F4B0CB168B5BDFD7063E8AD9762481EF881B8237D7405EB50064E
+0BE927FD46F1E8BAAF4795C863841634636C03018A1C7C6530D01D6C9E880D14
+DCAED7F34B47185FECFC92F1DFD28FD73381AA2DBC0254951E53E2915F56AE67
+877289364E3C7976540F871DC1931FF103924E2B5E859E82F211030A731AD5F8
+46A2AE9214233721D5A23BB2F4344863D0EF66296B926608C96C7B4CCE362AD3
+42A5BE773CEAF8FC5FDD7FCC29BC26DAE31F0B2A67A84DB4DACB19323DBDE903
+E77B58CF20FFB377FF7F7C9008E230B69A6315C0DC4E5F6E9DE4DC77AAD550F9
+34759D156EE827BD3AF28400DE334FCBFBC78AB756929BB6A22773DF829AFC76
+7A08790A375C5B8F3D47CB72CE2DAD82CA462AB1A1706B615F3DD7BBFF1930E2
+98ECF936BE7E8AF8DC4BAD9EC6770542602EA3719F66BC26EA9387C310D24D61
+E1D176098471894810BD0189680D7F1F7810FDD13E5E012CCE3F6EF8AD9A3780
+A441740F71A59FD058914A18E2418E7B5FA5E2942A4C9D1961276404323D7641
+35DAC2FFC95480B3F572A51D2C0D04D619343453D6993AE1E39EA6D4188DF81E
+B7AAC9A8101C9F0659C8A649552A647FBD2210526C09C4558496A13772D6321B
+FFCB8ECD70354CD851E35F069537689F31BC8B3A82CE4E2FB1994D2EADE6F565
+5287C10AD826A6D5FE4C5AA42BC0F76FBF1E7C368E89EF75C2046B96354D59D3
+43AC511359634DBD0C3C8D0441F83DAAADDA275B6E86210C39004EF07E97D5E9
+4930FA7E1C4D0EF7F74D2F2CEE412FA027D50296C3601A8B553F1A3955DE4E24
+5690BC9F75CBEE40B53BEC48C192A2C844C8B225E176D48693475B65CEA8D7D3
+77F811137C1844727A85D111C1A7D29CA81BDFE3939FA61E30668A0F47BEC6E7
+7E9494882173F7D63743516624DCD630C330A7F782EAF43DBF7F49513FE0CFCE
+84F3DAF72728E904A986E4657A25D9B2CB27B624A0F838229B38D1BA3D7849F0
+EF1B7698ED395EE375BCE9E531C4ED9DDD1347A43054C9769DDB9A16EA04B55F
+908B4DEAB15465CF62890AA8A53B7F26C879AA38BD8EAF1FAA459A90B1872425
+3BC54467D0E9F8D809DF0133437A282BFBC7F68FBCC507F3088291D5AB80BEB8
+C0D5A54DCC7F6E2AE3DEAD3C1CE000057587AD847D591319F138BED366866C42
+3136ED257C740B4053400DA14CD0583FF73A035B05D2CCE81E9F3596692C2A23
+5753E4145D44180FE03F31DA0C7D704AAB0701DBBCBF4427FB837D6A8DDEB1D4
+DDE593114E7A3265535E1DECC6BF8A195179C458A7315A9DD6A59C2C3FB3D737
+61487E049CE1E24EF21125D79BF61F390D62613C4D9C28C10A8F86D8702BF1EE
+8F4B418AD2265042642A115791629789185E3F2AA4BDC5CE4A619DDAB7D9F366
+A50C2ECD6153BA2078F897EFCB7895B1710364E6158624A2A8AE1FEF490FA904
+6AD60A7386BCC269A7DE7008BA4E2D2FCFEE5CCC62635E1FA58AEB23CFFC7CB4
+50896EFFCD438BA1D5D8CB4DDCD817E71EBEB6A6E4A38F6A0A4826DD4164273B
+0AAB137303AC5BC43CB09EFA2CFC77F36207CA28B677F3FEFDD552E464C82753
+5DD672A6A16B6BC5B7DEDC3113873936619ACE0698CBC5EB90992C6FD3168DA1
+E301572A64ECCD0BA39C650E73CD8DC14D94D6C1389389DCCD0E1ACFCF0E8A9D
+E54A151ABEF731D3173B35A6ED80369DC67656DC6EF28FFA0D86CE100AF957E3
+707DCCECDD4C64A149882CA9A7343433994C17642F2DB2EA33D3383A0032D6CF
+6B81A4729482F4C7B8F22D8D9AD9DB0FFAD477EB0FDBD076CA7FD6375E4CB802
+FD35766A4A1A8EDD798E665047ECEC90333BEAACB1C2B92F3B73CD3DB6C15B2D
+ABFE6E27BAD4F93DC65631E30C3B6F6AFBBE50F9FAA0511553097235B72ED14A
+D03A6E2A777EE7B1D21241D90244E2EB0ACA2E36F0
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMSY8
+%!PS-AdobeFont-1.1: CMSY8 1.0
+%%CreationDate: 1991 Aug 15 07:22:10
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMSY8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.035 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMSY8 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-30 -955 1185 779}readonly def
+/UniqueID 5000818 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
+7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
+A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
+E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
+221A37D9A807DD01161779DDE7D5FC1B2109839E5B52DFBB2A7C1B5D8E7E8AA0
+5B10EA43D6A8ED61AF5B23D49920D8F79DAB6A59062134D84AC0100187A6CD1F
+80F5DDD9D222ACB1C23326A7656A635C4A241CCD32CBFDF8363206B8AA36E107
+1477F5496111E055C7491002AFF272E46ECC46422F0380D093284870022523FB
+DA1716CC4F2E2CCAD5F173FCBE6EDDB874AD255CD5E5C0F86214393FCB5F5C20
+9C3C2BB5886E36FC3CCC21483C3AC193485A46E9D22BD7201894E4D45ADD9BF1
+CC5CF6A5010B5654AC0BE0DA903DB563B13840BA3015F72E51E3BC80156388BA
+F83C7D393392BCBC227771CDCB976E93302530FA3F4BEF341997D4302A48384A
+CEFFC1559462EA5F60DC05245E8499D8E61397B2C094CEED1AF26EE15A837209
+ECE64FEF41ABE8DDA7BE1F351CF14E07BA8FD40CEFBFC3CE7B9D4912D6FE752D
+9CF163084E688DDCC4A7FB0E5208F8BAF69BF833A4B1D024B0FBC5AF3B3B4AF8
+C75065283272DA86A2A97CE3F16CEC9F6786FD144303AC11E829197785F8792F
+B930B14D778941021404FEA5BB836CD6574A256AEBF70D47BE14F820FF2CE01E
+C4711484368FFF1AA58AA67B7E3601D4C027738D6997CE634AEE1A22AA036771
+E1A6C760DA2434A3883B6B6DD9DB87BBDE31D2E0DA6C0B8BFC1E9738FBFC2AF9
+520630483908CAD616EE8AEBC99A395CFA09F91A67A5B891F5C7B685D43B1332
+5E5F1062F50B9B54B215AFC6150ECD91E000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMSY10
+%!PS-AdobeFont-1.1: CMSY10 1.0
+%%CreationDate: 1991 Aug 15 07:20:57
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMSY10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.035 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMSY10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-29 -960 1116 775}readonly def
+/UniqueID 5000820 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
+7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
+A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
+E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
+221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
+27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
+5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
+0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
+DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
+71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
+4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
+515DB70A8D4F6146FE068DC1E5DE8BC57036431151EC603C8BCFE359BBD953AD
+5F3D9983B036D9202C8FCC4FA88AF960E1E49914EC809263862931DB14B61EEE
+6D37A389B488D0B64CFB7DA527AAED80494F79A073D895AA287BB47BD5246090
+A76CE91680C1F37E6597E5E218364221B1905B9A039AC299F630788E5BF4FB76
+0B085608F3775AFF14697B68F221B3ACCF1F1D22AC1B36CB0097C1D107687140
+7ADD3D30FD8024497E249E45A48D4963235ED0352CC111C1FAAE249EC9582BA2
+3953C6C05294F5BFA481FDEFE541223EEDDDC45BB0F787D9958700AD538C045F
+71EC9ADF07C3DA6F0CDB1BD600B7F4EEF95A88A5A611CBF47A59F8539AF2927E
+832CB63AC57101AD75A7E49EE625CFFC9DD948910ACAEE750C58D8B43A233916
+FB3E7945B8
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMTT8
+%!PS-AdobeFont-1.1: CMTT8 1.0
+%%CreationDate: 1991 Aug 20 16:46:05
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMTT8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+end readonly def
+/FontName /CMTT8 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-5 -232 545 699}readonly def
+/UniqueID 5000830 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F0187316F83DDE3E2D27FCDF6C5CE4F95B6EE
+3317BD91B7921F3039DD35FEA387D5CFB6C6E9DC84C178F3432994FC7FAC6E5A
+ED41A1E2EBA350178FBFEB45944511731BA827167DDAC238FC69A5486B995477
+C469E2E27493B0B711DF8E267D3D5613B450011921685147114106C9472580BD
+F531022F6DF5432B2A4EBC51A8032C7F9689B6FA942D849B29709631613DA68D
+4DF7B6F059A19304F40A3C3580CE3B51D79D42984194D4F178801720892FB6E7
+61FF43C63F9256B5E9F4227B1378222BAAD4D52C77462DF01892220E11129C16
+6C9E45BB9F01ED7C1AD5D8B4D72BE0E12969AFEA90FEF170603CDB91CB243173
+B19A56084D10293B80A35275F41BF78A054DDC98F4A1FFF592463D944960FB31
+6BE5F03960F9B1F213CBCC7FD448657FE388F10104D42B0715FC9571CC60CF23
+C72560CBB8835A0CA208FE06676B3B48B093CB7FB2C0C53AF17EC5B372A9771B
+BFD52FFB7062B4FE0106A01A2A1A1DD4EF5C8C7623EC9324A2CB3B402FCC1FCE
+52BFC8662F8A39D5F1B41C97E7CE34E16AC28A1E94007AEA7D4C519399F1B7A9
+48FA7DDB671067244F09C29F95DD60668223F45BBDA8B1C452E930A9F3F341C5
+351D59EA87462FFB30277D3B24E2104D4AAB873BB2B16DA5B23BEE25BE2C8128
+C4CF2F4F438A4E520CD864F3EAFB5363753B82978F6FD664A14E5D6F3A929348
+5839EA752FD635619C4FABF1E1454510BD9D6B538A343BE748AE05B47F917367
+1BA5EDB15F1BDBE806E51B294257D7087334165419A6520462D794D670A1D6E1
+3BB03BF689391D056D55AD660D15A386E6D222C9572BDC4DC8A46EEC75124BB5
+F0E8978FD6031A90E4768CCBF62A5ED8C8087FD66D2033011947634878BDC0AB
+6501DA7E6D96E227068E993DBB0072F037CA4112F1B18EB92896F737D9D42CE3
+F82043AA10EB045E593ADC57D0A4B92D90F7C7734259BACD52CD2195260E471E
+9AB33A23DE7333EC5C03E1E840D222872E51DDE849E2A4903708CD92012525CF
+F84C317A0CABFC956C04F99F5D8938D69FBD37549BA4E16F4F61E7BFFB297311
+B8A34308E7A5AF6BA7F5725CD4D35563352A2A678B4836543C4D2C674F8F8E3B
+751B20D14B38099613091EA582611AC8DDB5D80CC7A96D804056035F2D8AA058
+1C112FCABCA44227205CF0CD8E74408E23DF4A720200DEA049A76173DEBCC193
+4F0FD5D26B171E2F50FFB529837603C63C4842F8831F03AC8D567438853842A1
+A4198CF2877243488D87892BAE438E8FAC07824775EEC98A7B89E89CC405E9D7
+53953C46B724C3B2A155149000A2F497B124670BB3D26558D39DF723D8CFBC30
+0F5E38D01093FF0F9A6754789248205E6133EE29F13E3F738DCB70CF9F0BE16B
+37DC5ADBC25650D9590236076DE09A63E4B2EDA4F6372BDC60F1E8891B2569D0
+B7102A8B31395DBC7AA728BC35CE67E7903CC5AD49502663106E5FF031355130
+1950082CE58B96CF089B4119ED66FA50F8D8CC4E1801272BEBF750DD7A851C39
+A178767171997AC7824A2984E4FE39FB020005AD79FE911A05FF2B8126AB2FE5
+09E99CA2CDFF0B36C77B1DE501F6DAA433A418FE9DFB07D2857AC2F83FBECCA8
+FE47098EDDAF9C89ACF8266C8E5CF4B09B7C1566B36961B13023184BB76945B4
+E28BD398AFBB1F882017C939B4F97880FA138BD1027AC61070B6FADA8FDAF124
+04510BE35174C59E92E7C96F5D422D951531764E4894F6BF825E79753F8E75A4
+CE3B90D36CB4D75AAC1CFA081D4F3CD0E9BBF73137C5EDB2CDD9950ED53D39FE
+8FE74F374DC10AA9641D80D4D94C6CDA7A9D7131E3C194E9C3268DB5835115C3
+8718B87B7341EFBC658FB90D2A56B2E9F1429B2F013CF05C39EE23B1DA7D7CD8
+D09B28D783087E247B7F477F9A4FF1C7695416B540439748E3FD0CEBB78AED30
+DB8F0439A57B65245FA3CDE4251C3E44D9C263AE02ACF226DFF1955D9C84E3D7
+9D87375F8AE5FE5742FC87B40345CAA1B2036425616A8466823AC7A3B0DA6448
+FDF37D405459ADBC5E4C2515FBD349A476FEB464930910B2605B69D8519B2480
+427DC31F27F2AEF36CBD10A20E3E3C6D20B47EF04410F9CA43EEF78755C466CF
+4435A13D677661BDECCD920EBFA2FF93A3193FAF54455505CB45BB7758F66985
+493FC6C0C5A9C3A085FD419D292BF074EC568823064F2AE867B0FEDB85621B31
+010747303D23C0F7A9B68EB6D0AC5DBC6FEBF9CE603A11AC758F617262D608DD
+0A528273A51436CE1357C85C5852D556067DFED1CFEE0B2049D6F0CECB971FF3
+48E6074558E3EB789C4EF8D69E712CF9274DECE450148F19DAB0BB4070586F1C
+65EBC14776E40EFD85DD71E7828E8C77506EBC32B93FB02B0E261C48858236E4
+246A765B1906F194336B4CCC7FCD7D9D8B9D8FDA4E534CC3B27F7849D9F2A167
+1D10B7D76C2258C52A5C77FC260B192EE03A616F264CF4BA5CE17F3B96C15B93
+F2607170AA9501B691337B6857C606BE79FF01ADD138971352D2635B734E96D1
+B2E0A75656339EC88735480729D05A43846112D646DCF7F76CA2C50EA3C2135B
+11F3AACD4E4077C6DC2E76D685D5D1644A4A34F63BBA37C7C7D78E5B688EEB25
+0434451B92C923763890729E7CD741E53DA1A8EF9420FB94FF8136A8648B1A71
+B3FBCFB91B53F64A5BB3B4A5F4877C52CB1206115E8479C710A3B866D3564848
+11461459905441C241276D812BD760C910BDAEAF07F228E8CC51F0BA331AD160
+B481339F30A5719BB42528D377DBEF5263F6A3D2A77B49680C31D8DA6ACA3780
+F782FADBDF580007D24F966810D01A4232ED7034643256DD661B465538C1BF82
+B1F271AA06D1877DA1DC17A020FD81A69DCD0AB16D28BDEECA3492F8FB8A07F6
+D48C95F12B50483D6509F6426637E119B7025A4A92BAB215E47164FBB089B5D2
+8D354CBCC5C8D848401D9B8A252EF493FA8030B9136E674A7D6811A19A3B9A6B
+DEE7D497F0214801805272D36A3630CB3C9812003BF0CF8EB13210B47682E156
+3D85EFD7562F868F60215777C34357A50ACFDA72A5A703ADD1AB9D6C2CFBCEB8
+80A63E2188325096129547A314F5EF8DF2991C07D1276B2FDA9C077FB859EE64
+D5174481A4014C43784C5246288A65B0759B15F1E26490103249D4809823F70F
+71ABC2FD51D35C1F821ED3F27A4A7BD8D852EB83FFFD5D1CADE00D2AC9FD849B
+D16A88A5057A387A585291118086A678C6EAD6D65C289336BFF52A3010D7A9AE
+845A1F07CA52CE8589E05592C0099FA6DE4285CD287892BD1B897DDE1BE521B0
+EB4FE4E1229B70F556F5FCC379A87EF49C52ECF09DB14C9C6717CE1DFE3AE0B3
+E58A72233391D1B781BCEF0F834076FED5830B559C66D4150F86D756341B3346
+401469E8BC3A8FA55306A62A8246CDA9301DD26B58B2DAC6E3A5E2EDCC759514
+5161A82253F67072C86188F1360A64C7A295DADD83476031B01E1E8FA4302760
+90E744A05E55A6D395A9AA1D2539D19D55FFC75C68718C5564CB971943FC102B
+EC19D2DD752661F78045F282A11F1F2A5C0789ADF8B0E46A7311C1ACAA3075FB
+5D3AC0C0C34E69CD84D6D7830AB8261B5B82F8A1BCAD21D6BED8B44C48E50B01
+4BCBFC3D61D4FD7D5C8CCF30175AC0672B420B59BE184F893C85BDFB560C6906
+6C0FB8B3A004B820CF57676B5C4ABD64E34253766945EFEF75B9374E7745B93A
+93DBE9E1665AD394CB53140000AE21A8FA864762A0EC5062AF6D227F264DE33F
+363BD0E43F57A2C09F517BB79A946CE2EB3DD8EB81AD89806D953F8BE205765E
+4A852BE57E436D5C848C6CE2C7D6F973192E0380CA90F7AA97522F34CC135165
+55AEC263D4F23716DDCF108AB86E73B1724C7F4504B49657B9E8F4C84AD24EEF
+BFE32CBE0BA79F5A1AF071CD72E2186F8CB7FE36D75C0F2687C1F5F1E0570766
+2C153137860B172B9DEA92BB90F34A162B00D7F464F1DF372DFD0C7883FB7D1F
+0F0BA3AAF94DEF7FECA4CC494FF6E0B10B6E1F9DAEA34715DC74D6D89D205163
+E3E4E7EA279C6B676D8C3236A6DA8065437FA75907A62DEC50A8C3DFE7B2F862
+8939D53796ACABB93AA4BA577D5F91BE050437C9F03C027EB7552E7872AB09F5
+644A598394733C67BFD209903137208A381395D57E9714B9A84D475324021691
+E65C0106A32617FAA82DCF823D2C34E5A0CC2CF9719AB494B12CC933DD9E57A2
+878D3DD6BF6CFC3E770E1FA9884EB66A27437BC61CCD20416FA178938F9D9FB2
+083060E541963BC26D82D6D117146EFB7C7AEE78165A944F02870F565E394F07
+5A16CF24A4B651BFB8AF8F9F6B539F46EC2C20F274C246893DD9286F26E50D54
+3DB410C64D71BFCEB5393F86166D1E55EC1E46AC019AFE06E7B9EAE4CABF49EC
+E0B45248D77B70A15308967FFD02D7867E9A8F7C5F25C5E3D9751BE8A098CCCD
+C002A07BF12C908842A8B6CBC2FA4E6F90FD7D4419647A09B970B8C5DA5B15E7
+5664CFEB725374F67E631B51E5C8FF0D73B8EA6AC857A0D66CC4AD65535CF28D
+D61D8C1A87922051200957472D4681866B620A521DBF74FCCEF9381B5857648F
+62B35D5BAC1CDE34014D72EC300F578FAC3E7C9BD8A671D53AB8E431764B984A
+726CAB9B85A793D4EF325362A9591144C56C09AC06391CF8DD11317A271F1202
+DA0A31C761AF77BC525FDDF9E704B5D436A2E27D172260189FC3CF3E3BA686F9
+3F19EA58AB7E949CC7D8A2FACCB744087E71D2FC5D102B8C793CE85FD572A6EE
+C8AF046C379C049FB5BCA5CAD04E541E744344C14F68185C8F40DA87BDA708A8
+4439BD1956A36948DEEDA6524A7DD57DD5E4808E075C6323FD73AF5A5F913943
+DFE9A98E263877FC9937DFAD4C3E2840A250490FDD2290E92EDA4A79D26AF007
+8E8641018EE8143A2F4E0E91E0928351CB2847D8C57819E371FAF59087350AB4
+BE60A32926CE735A7C8CAFFD81CC06FE989035233608A8512899BD55691E0683
+69582580FFC58831A66287E19CCBE20EAEE2AE8D92267B11688206B7F8F32247
+49DBA864654D23117320979F427A2AC9D46E4C48668035B2456256765F920069
+0228CB54306888C5BD6CC96B8412F87C0236F5C1FD5174870725E7E4E924D1FB
+3AF44D8162D080188ACF7B89D5A1554969005D2F4CA6C6BB03F2138EDA86AE9B
+DC804AA024273668359C9E9045229D9B19B6F04924864BD6E3C8C209ECDEC15A
+F9554239AD29501A52937797B643438CC82DA92E832BBB27D61AA5409BEB2DA0
+C1C09B3F9035BDFDFB3CE3D43A78EF1B679CCCF9BB0DF38C20E3FAF4DDBDFB58
+209601FAF3C7180DA2AC5AC49D7B275FD48053AC5BF43A94659259BBB51029A8
+78403AD74930367606443521FA1B52B188FDA42738E469D8CD896E9AF2BB12D2
+ACC1255C4E9BCCEF2478B98A65B2747A8338B980228053C41AAF5F642B87F240
+E383DC978E0E213509CDFD01BD3691E7C50B40C41EBFE465EC5ED5ED4C014E88
+75399FF24F25F3A08D5618A8B04AAD6066654E630D98048233DD08E1E946EE99
+0A75039F59BD2A10B0315E3274B5BB50B7D3776A266CA3FD2A2FDBEE48B6D3B6
+F8CBB660DA55735968F7152082457CED32F7DB68C0C231E8D5093A132B814480
+78774AFE19FE76BCC168440F6745A627F1FFF411EB6316FD48166E2C100609BD
+47A26EC644F100804C1609486E51474CEF515D6133DCF6BD112BCE7648678395
+5162C3A0BBAAB1286DD79A6CFC5246D5B0B22197827C2891E05DA740CDAE2098
+0E47FC2F2ED4029A941B71E6B5136D411B8742EF6CFBBBE081F216A9A87E4AE6
+779FCCCD8C59A06CC2725C723BE8BEBFA27B81C9F15DFB67F9EC57B61E80B7CB
+A1A0466960BC7841CD42268C37167CAEB10F45BFB18FD40ABAC12B3FFBE498BC
+C5E863E611D8F3CF5268A77AFB15AAC03BA7C25202C447F335E0265517D9AC80
+FFAA02FB84CFC81A3CC8A683795BD53C97D3807570EC610A11BDDE067642C3C5
+34E4A3E6BA6E1E1BE3FA0699556134C1231E263FD546CFFDDB3143BEC2A8179B
+4DF5B50C352BCA356F7717428BFAE14B318CFE77BBB05DAA866B356DB4362736
+6920023CE12DA010B55B90A63B7DB5BEC030B9995BBEFC1FA1025B7B6B0D94D0
+EFE12A2BC0CB39511D35A486D485B5CFF4852C9BCB7257EC196C00CE92DBFA8C
+C372FD7A1F3369138990379586E8563AB02185E5B37D45BEE710646864EC45DB
+5AD9B6714B7CB92556DEBCAC3F9A6F8B73B63F563B0B75B8E6B00AB7BAF85FC0
+BEF926A7F83E7B93C1215FCD5FC085B1A177C03C35E16DD104F093EA1D4C32D8
+0AEFB203EA5F2FEEA4DF0461EF8C5ED4C01588E0B51ED9C10573FB230148E45B
+38169D00CF832B2A033B171398983D7B2C78F125199083DA7E8486BC6E966D8B
+82CA34969D6BB93E9CAB20B744CB20231F404B81877439AC1F65E80137B049DE
+F181D7C1C603722E0CE4B2EB169FE5C200AC690B2B6F33B97DADBF6683AA5B5D
+527161A4E369519524E5106E575A8EFCC2F621B6A09D61E220CFF2DCD57A4EB4
+4C2CFA02C595607E553A92D9096C64EC055AA01A9B01D036084A96C7BDBF2156
+4A54D68E76B8D4C589C3F864588C222E1CEF4D37AE1A56B6D886B4349BDBBDBA
+8A27E200200903527A324F8CBC82B765226F99DCC3CBDDF29A2387E6A7C9320D
+F8135C0198A64DDB11D7F41E21795FF2B35EEBD66E4EEA1BCFD84C039A8189D5
+F73533BBF4B72CA86CBF4B0CB6D225333A89F9D6648322859ED3B0F7472E3834
+680539FE8A08055AED9BE9509F65C24BD05BC4470CB62A4325564D4856A5000C
+5D479FFF4FEE0ABC47BC14590097D45E93867A7C6E81925FD294098D6EC4BC10
+F3B6B2651C7B5AE8991D4EED0A5DC5DDFA98740A5A13786D3DCDF5B5F08785B7
+5196245EDB243058F511EF8ABCBE9A433C418A1C0D463E79873228C36F55EF86
+72CA7E9D7D72D1303B9444396ECBBAC1A5318CD0E6055D400A0829F03B09E65B
+F73553BB7DA77D700B9947250767C1A6F52338FE1A1984EBFEE4379EB5745326
+6917FC687EF0FC0D4F7CA05BB826369BF965068D2E986999694D437815534B07
+89E6AEF0DD2C22EFAFEBED339FE8FF8F08FBE3E38CED7D366745A454FF4F6603
+82E0455ED5F9AEEE77CDD1CEACF6413706C4F4E084FA19B0581C321E6B462D28
+1644F3FB6FFC8C1F6E21D8861DE6B678D1382A152FE310AE5399001284E6DAF4
+564D0E507C64BE084C30FDC78A7AF356D5B7E919578136E51E5F13A71BED5D3A
+F2E52937E9B868E31305D47134F28DF409E3AC054717E2968B8FB661CE987561
+5D496BB9CED35C65F6969B40AA9A61DEB789D424732BA949C65967156F94B1E2
+E7FCB1C13CB1DB07D093614467A371A6115C733E67BB7317F8D4053A29DB837F
+74823BD23939863B1FAB4A8C5B179438B3574BC50E2B2AB7CBD18EE90E24937A
+D1B0DF22EAB53A4EF9BAAF7667850EF6FE140A0C1F36014C4901434316605A06
+4F38A7EEF038A6476A53BA5A0096F2877C978FE86A4EBDD9CA1A71A1ED71A99C
+237E2A9C0F80FADAE844088A9D69C8408237D6698BAF136B5C6D9C70CDD9ADF7
+6BF00036B9CA13F4DCF68557647D8948ACB28A173FAA969445B1DD0D8A7F2F2F
+81E0B3B120894F674BB9B112B103185679D5081EF8929FD0897D8BAD295186B9
+42470252D05F5CA7F203AA94826C31210790CCB78C9802385AAE1691DFD0CFED
+6914F7B27F8BE49109EDA0C94D24B902CCFC4A65A26F800A37B6C3F00D4EF11C
+AF294902942899DEFEB8B322EC5D63B2064A4926530F9FECC32240C141E90FFD
+C6357F6FE98EE94061E3F264F654C87F44F5B61F1160C3DB073DF6382588D861
+083A5389C176B2BC7661E86D4D2B714EA87248B1415CC08424D02C5C2022A252
+BC001FAE0C716EA30153C9718871D47ED08BCBD605C9E62E173DF634272F98EE
+FD610DDEE166FB463E11CCECF5863DC05012FD81E5CA6E3FA347875C27ACDDE1
+48C1338F23C5DA110D532FD07949B1744068F392B727548653E70BA93FEC2AD8
+E9473A13CA235912AB61C664F40A622E494B1E702CAE463017B6045BE4FE24D8
+2638DF569AA2DC73CA7C493DD8E70D9C63CD9BDF4458540133C385F12D2F69F2
+7A8BBFF7418B87D85307F6FD81F2AEDD18A3A9C96DF87EFBED75A1D02F5A8EB8
+632B08AD18EEE4FB64128D27CFE2FC887E755EF1AD263C4B6D7BD9A7EB490596
+79349E80CFD38BB38829834092F8A8E0BDB2113F68974DD1C2AFC510DDDCE067
+CD891474A0D0C409EBD590DAC8D4F2A7F23F271DC6B0F7BC8AC65B8522564C4D
+42ACDFC2EFF02428CAE8C6F939660A4000615919091382AC676EADE8096C0EC6
+A898FDB815D09ADC5B55CC4E4F3C3ED8AC576E32D6BDCDFB510966000306646D
+A19C9ACAEFC6C5C856A816201B0A5C3F852A71202EA82DEE47ED072F99CCC222
+AF0AB771C3A35F0BDB51ED2DE0094772CCCD480AE59E574B041BF3D5E8F54C48
+FB5F13C7C8D2EB8A23B2C7D60755E78C6FB153A4DAEAE3B8275F3BA8D52C4C83
+7C5DF63559EF714343B59389ED30758E5F26C0F501BB36960869F18C127A8BC7
+3A65339FD264CCB5F72454739EA2E06BAD502AA6384E2D32F0EB30A114288A01
+C7FEF9A2791322E478B6E6889680241B51269D29201B5F3280E367D6EA9D7534
+46046CE9B46BD921ED2EBAD86D5F055619F250F8EB30674A2DF661F271181E5A
+D0A3117C854CDEA22FC124EA5E735AAB8CC0C4DB6CCDBD762C95D26D774F0F9E
+CD83D0C45F6EA5A8C06105872DC7474753C619E80822320A0421BF1F571F86C0
+D87BAF5C2D361FBAA6AA88D6EB0E5283C7F50C7339376C88020C493F3F5BDEA8
+078C77F6CEA8B06870970967CFCBCE63663D80535F916D196ACB65DD131D448B
+331F59C5F066951BD936BADB2700553DB123FDB076CDAE1E644392A0919C7E2B
+D2DEB5FC0808A957BB7B4BCC3DDA025D50F2A83931841F621DFAC6C055FB5223
+DF8AAC218221C1746B336F8BF1BD1BB0A03A95E322DA7A6028ED6B802D7964FD
+1086AD2CDC1BF626BBBCCC9F7ACCF775141FD2308F756E045BC58A41F064B861
+EE93160C1918F8EE6F122E39F1311AB11BFBA42DAB0DF7882327FAEF2CDBF41C
+FDFAB41416BE3A4CCAA7ABE4BAB6D67BFC459D6C0E2AC2794607448359CA4E06
+ACC1EA8D3216157B93FAD1737E85100A81FE6724011B1FF6C8FCAB6DA45C4150
+42B93FA3A7C7BF82F3B7E8761C43F62B8F9EB44462EDE7F895B8C713F4D184D6
+7F9072AF5A949FB317BC19DDD681116F5591CAE94264C4D396CA0641C1FE244A
+FC2E151D2F901CD74962F17F7CEB24A54C4D96D62EEC128DEEA1A3BC6EF8C91F
+996238E8A7B36CA461D73F3C89C41A04AA955A8FCEE1E1A3C077233A67A5D144
+F472D3E92EC694F30B0FACCC4B2D0DE94D71F4FC60AB5E0BAC983C7137C1DAB4
+496A2B87F8CD3D7096893B7103CCB1DB2FEAAF74BE1EC850407B9B9CD74ABF67
+9902B369FBFBDE1E92532D5B8A651A1D81BD6B7A727E2F90F837E5150BA6C231
+817C7C2FA17B3156CC510FDDC64D98113F5A643564258106DF30811051884ED3
+F09284865BA2EF24144210B599EBEAC439ECC977556C60363543F07D899F921C
+3C76B518310648EC46DF5387EA5D1770E08A1F99B1BCE00C06364C327AEA4AF5
+4C85C6BD66D3DBA86B7A56FCB548663BC538DE1663323DD3748131354F0700D5
+02FA992B0E716237F67ED1C1996FE243AC997287B646DEB67F926824C1859F10
+A86DDA97F21B0ED21E557A5EF05AA0F164CC4986D5105C0E4D80C96C7F7A8CA3
+78605D1E2D03212060027A2DC7EC2F39D3D276C0947572B94060F55E28C8868F
+59174D816B85E0B52E5B242B27B45E3D3081F21358F7082289E22D5F76F7B518
+971259F8349FE6A4D30570E73EDB827BF029B48823EFA445CA3E0BD2E70D9E42
+77D2A3944EEDF61A905B4C86FC69DC8C6BC92D3A0BE688FB94B2FA863AE1E2B6
+9ABBEEAE6FB961151A6E872388AD7221F792E9D8E0C841D4E949B8A92BF76558
+6FA82D6026CEDEDA15594E6421DF656761212A4B62A54B5573B0C6584ABF99CC
+FDEDFE88CC77260A800F1A242C68C087C1C9BA78A70FC20F8D467400E9F59109
+342ACE5C58CE164629D6C62A6E23E8CED7A4F9BC65CD70715B5EA38A3C59D8AE
+276BBA1BA78AE7A3BEF3F45E42858DCE49A0C53090CBBBA814C802268B61F719
+8686895326EEA1F67C861D9F44C7BA38C6C7583AACEAEF9C016ED27E622B2A5D
+BB454207182F12C67644F91D7ECD91CC9EAACDAC069638F1E09954F23F9EAF2C
+5E8D90316D600FE86B9E2F5667EE26AF97969B8516BC826F2BB40F6B54A04620
+044DFF34456AB18BC8BD0132BEFBD526C249CBF76F859776187160133B1F51C9
+F9BC984DFBAF0AF308F32E87C036DEBDB8DAA0EDC50999249BCBB59573F735A5
+CF7CB2547C6D37586B0D67F24B5A8947B05D2F7EC5F663538E6996E6CB1F3560
+8AFC257135B3D3AA50BF420AD6169ECAA113F785
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMR6
+%!PS-AdobeFont-1.1: CMR6 1.0
+%%CreationDate: 1991 Aug 20 16:39:02
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMR6) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR6 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-20 -250 1193 750}readonly def
+/UniqueID 5000789 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C
+68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361
+3645B82392D5CAE11A7CB49D7E2E82DCD485CBA17D1AFFF95F4224CF7ECEE45C
+BFB7C8C77C22A01C345078D28D3ECBF804CDC2FE5025FA0D05CCC5EFC0C4F87E
+CBED13DDDF8F34E404F471C6DD2E43331D73E89BBC71E7BF889F6293793FEF5A
+C9DD3792F032E37A364C70914843F7AA314413D022AE3238730B420A7E9D0CF5
+D0E24F501451F9CDECE10AF7E14FF15C4F12F3FCA47DD9CD3C7AEA8D1551017D
+23131C09ED104C052054520268A4FA3C6338BA6CF14C3DE3BAF2EA35296EE3D8
+D6496277E11DFF6076FE64C8A8C3419FA774473D63223FFA41CBAE609C3D976B
+93DFB4079ADC7C4EF07303F93808DDA9F651F61BCCF79555059A44CBAF84A711
+6D98083CEF58230D54AD486C74C4A257FC703ACF918219D0A597A5F680B606E4
+EF94ADF8BF91A5096A806DB64EC96636A98397D22A74932EB7346A9C4B5EE953
+CB3C80AA634BFC28AA938C704BDA8DC4D13551CCFE2B2784BE8BF54502EBA9AF
+D49B79237B9C56310550BC30E9108BB06EAC755D6AA4E688EFE2A0AAB17F20FE
+00CD0BFF1B9CB6BDA0FA3A29A3117388B6686657A150CE6421FD5D420F4F7FB5
+B0DAA1BA19D638676E9CF159AC7325EF17B9F74E082BEF75E10A31C7011C0FFA
+99B797CE549B5C45238DD0FADD6B99D233AC69282DF0D91EA2DBD08CE0083904
+A6D968D5AE3BD159D01BDFF42D16111BC0A517C66B43972080D9DD4F3B9AE7FB
+11B035CE715C1218B2D779761D8D7E9DEBE277531BD58F313EBD27E33BEF9DC5
+50C7821A8BBC3B9FDF899D7EAA0B94493B97AFEAC503EB5ED7A7AB638A6C232F
+38ADD3B13107AE3C1435E0C7C219EB285EB900081A0604930CFD65E037E6A628
+7AC975BA57D10A23DB70F516041E4C52892467820FE28F8C8167A15A684341B9
+F10B8B608DAB07B16AFDF1946DD38EE8677B3EADC79C72D7FEEBA06EE7EE8865
+570BB88DDFDEE0D1108EC174C6F80CFDEF8A9CB5286969BD43D740A5297EC2E6
+B72DCB6ADBBC293944F6CD50EBB0B9E849AC0BD43E43C465E38A44D1B58C9288
+7553823CC61BF61B444CF51C0FB8A9BFD4C4650ABFF01BBBCDB7E01C8CC0ECB6
+5C05E860AED8B665C3B6A3440AFA9C1E1C67E1D7BD26893E9378F5C8BA494DE8
+B7BB917244F6C7C41897F86919CFF2745AD1ACA4461EAB50FB474C9B1764942F
+394A5D9A44BE33FD840C2EABB4AB3972BCABD96D92FD08391629DBADC491A441
+C18236C8212C5465EE6C3CF28E1219C6CD5BB6BA1D534F1B34D3FC9A34B25082
+4FC9C56636E4C40C799C4008F5387B1EF52ECEC004A43518377F0255D735EB2D
+49D4C434D88C5DD2CFF3FC3D53834AFC7565BA260F22223C7AEC4DE2AFF68999
+C9D4A7D14936F0DC776C6C8F129942015AC49EA15A5CFFB91EF8A8FB4E10FC39
+0135BAE6FCD04AEBC671E5979C3D08A0385BB85D7F8D05ACF64AB2A402C63A59
+CD69FA8C233CCF5C772AC91C8E0096129C76855E71EEFBADA5CC32A21DEE78B0
+198FE21B4E8BF9A966F24795C4971AEDFBB4767A97D9290B08847D5D45AC6C61
+365722340C99C46483D865CEFB72B7302C15222453A06AF1331CD0AFDEA8BFD5
+7A733E2EBD5BEC8A2ADE722B801594F7CC42A9A47143D88F7DCC955DB12CAC12
+6CBBE499CC31A12E06FF6381BBA1411512C3B0D506D54AC11A20B799743AA4EF
+4872DBFA26A661B85B619E8FD44F86A6D7B17FAE7237F6155AC0FF4EC8B4D16E
+8194F7A71E7C44849EAD1B9F6F2F2292F40665DB667CCC12D4443947970DC194
+563B3C51997176227BABF11EF7C8D81A88A01F5FEF8834C7F967ECFB83A366B7
+8521390ACB2BFFF6B13EB89AC0CD2D39A915C8074C3A43CC2D4B902B620DDA98
+2F8AF815A5040441A023F8B86F1B5B8572BB8C87AEB68B7C18E2C889BC775E34
+BA1422426DC8CF51CA4523E0C15484BD590D95C93E0F33FFA840D09C9CB52830
+9851EAC90B8439CE37F9DCA7436157BBBB46E78EB81C88E7B3ACDBFA23A93BCF
+0DC3386AD259E3E909AF231B6BF3B940764ED0886C063F4E57867AB9F501486D
+49E10FD55AA46C915541385B71EF01D0176BF4AF885D0688994A69243A1E83B9
+DAA7DA0213B6C75D9305F6B8E28E9A6E1E3434BFF92F4D265BBFC4572BC68B51
+5071E09D78AD7FEC72DCCD897125FD59DF9D95D5D223CA4506D4454D2793397D
+044568696EA028FD1736BFD07C8A65F35FA6F15FA9E3D66F5DCA7B53BD86B59E
+3880753D00B07A063EEA9D19FAB2C55562495473358FB3B11B610A6FBBA87DA8
+451ED475ADBEBC96A5C36B90090F3DA06424C86E1640D60F6FE7A8CA7B93EC18
+93ECE4F62EC67782B988
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMMI8
+%!PS-AdobeFont-1.1: CMMI8 1.100
+%%CreationDate: 1996 Jul 23 07:53:54
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMMI8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI8 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-24 -250 1110 750}readonly def
+/UniqueID 5087383 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
+5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
+4391C9DF440285B8FC159D0E98D4258FC57892DDF753642CD526A96ACEDA4120
+788F22B1D09F149794E66DD1AC2C2B3BC6FEC59D626F427CD5AE9C54C7F78F62
+C36F49B3C2E5E62AFB56DCEE87445A12A942C14AE618D1FE1B11A9CF9FAA1F32
+617B598CE5058715EF3051E228F72F651040AD99A741F247C68007E68C84E9D1
+D0BF99AA5D777D88A7D3CED2EA67F4AE61E8BC0495E7DA382E82DDB2B009DD63
+532C74E3BE5EC555A014BCBB6AB31B8286D7712E0E926F8696830672B8214E9B
+5D0740C16ADF0AFD47C4938F373575C6CA91E46D88DE24E682DEC44B57EA8AF8
+4E57D45646073250D82C4B50CBBB0B369932618301F3D4186277103B53B3C9E6
+DB42D6B30115F67B9D078220D5752644930643BDF9FACF684EBE13E39B65055E
+B1BD054C324962025EC79E1D155936FE32D9F2224353F2A46C3558EF216F6BB2
+A304BAF752BEEC36C4440B556AEFECF454BA7CBBA7537BCB10EBC21047333A89
+8936419D857CD9F59EBA20B0A3D9BA4A0D3395336B4CDA4BA6451B6E4D1370FA
+D9BDABB7F271BC1C6C48D9DF1E5A6FAE788F5609DE3C48D47A67097C547D9817
+AD389FD24494D365D62017182ABEBCC79E7127AC417197B6109301EFEFD60FA3
+94298CD8A0CFA8861BE3814E05368B4CDD4ED901F4CCAA145D0C7A5A6080618A
+96D5B23FFA9F70DCA3BC0C0C9B9469A96F50117D57FAFACDC9F059CFD81B50B9
+A1654593E5FFA2E906F3C0B6861BC85CEBAB83464F26C049EC0D70F25DC9E399
+FCBA99C4E026953949028A6B7E92E0A9F922D3DBDBBD07DA1B1C76BD1D05ADA2
+A309199A8C278B6CE76AA34ECA5FAC0370469626C0114ADE1B875C14839D7B00
+BBB91354C4880503672707BC0244B02D9A8DE89E7208298B32868FB53B92CF94
+C2BD042158827B5E1A2D122C39A469A77D83D1E74BF88AA1FBE56367C20A2D53
+E355C64C12566948543C9E3BA83052F362CF767FCA5884087A49F5EA8EF823BE
+C4B4296B69BCCEA1DD1E18498F7F845DB935A533FB6E62123221E54CEB71BD33
+BDD3C719D51DAF194A3F8AA24C4B6F1F5AB6E832571BC493EFF0BFB69F721035
+72D22D5A7179BCDAAF1E325BAE89FDFE875B414376E23DBDC50970BC35D6FCCF
+4AB0EC8D3F05A0A1F40B196E7DE1E8EFEB35A2AA433D79BAC017BD99D07CF311
+F06E423038B48FBCDB9D9BC2CAEAEDFDDABEE8AC3B3289868187BC4A52656206
+ABFACA8162007B9DC8E46316CDFCE5A241010D2B2E6E3CB8480EA5CB78783B5D
+B1133859269260F903CA42EAC5C983948B0A039722A79A51F377CE89FFE0C554
+E3B84EED8E2CF6D8E21A410BA02AF49C635D4C9B7882FA2A2ECE5966A4EF988E
+4E3E47CEE7A75EA50B640C65E3DFBD85577C91550B704229733647D9A0E173DF
+FE655EC572497BE28941937717B8CD8BB7D20D11FC9E50686152DE9AF9BAFADC
+320D64DF12F0071F28DDC78235CE403EAB6B19244B9405BEBF3C16BA0EBE32F0
+A0B805323877AC195C9FB2E6DAA4AAF02FCD5052578E6F126B55050FB82EBEB5
+78C6503F92F7BDD4E916175BDEC5499ED791468BF18819217B7CA5BA4305BE2D
+C86393E8F274DDE8AFA799A07DA483FA888A70F93546ACABE1EDF39910455A98
+6907CC205B6B915ADBA27E9E3D3A7C716942C6B6574172E3B44AFCC0497167CF
+B557FCE234659C2648428B3AAC083ECCC9679627A982223E2762701B742CD313
+BEAB6E657FCA6920318A7C15D59DEC384A03B4A01C3B2D23191A520373601AB2
+74FC6C289ED5F47A2D2A18BC027C493E76BE83ADF4A8FBD7C192367BAEC9996E
+74DFBAFD5677AA6A01BEA0AC10946F8A86B4A96826B0312421EA198072BAC057
+421D7959348309D23E1546E56446FC2DC0194324EBD7E39298D8C3F881E7EE8B
+0AD9EC35AF822073AB7116D469CBB3022B62F677409735A936A4688C5BA2F473
+8F995D36C7C00D8442B955EBB42EB0D6EBCC95814EF221466743CD9D8AE79D9E
+E3627204738626D427E56589549F2430CC0FA1381DA94446701354C257EC25D0
+BE8450983569D9F3422B73CDF4FCBEEC6C5830C1DA4FA9DC727601A94F85C06D
+4663C03BB3536E4EE02E4E436805C0F4FA434334D78980375D0F81679D45AC9D
+DA64E33B773939ADFC7449AF85C8AE1F39E4EC40C3F54FD4D46C3D270AED0D89
+DE6EC3D09263751AC7713973DED968E8350901B7AF501A1AE99F036BA4158BA5
+FB4865FF044008AAF8FE0F168934AFA374A99BB697BA1799AD35562004D911D3
+2B559952CE0CACA44BBF400BF9A1C3284756E84EF4BA106F8DA3FCA0B8383CC3
+58415DAA1ADE274A94F207D2A6D818247A7E6B286FECDFD34102B6CF204E52AB
+BB989CE39368EE3F7946E86C713A467E603BF70590BE6DF3A49AD950FDA38620
+4DCDB6C8B74FB6EA79FCD514F7C23D5C3D13FA927CF59854E9AE6950847FB301
+D3294288B58F61178E2F1FE6DD8A7D696E85F8FD26D60D3609F24578F6C47E25
+E29F4499A0F0D2E92CFE9A017BF6AD723BE1CB6F255EBE715928AA32F18B4590
+186FB8BB53010E54396DEE087CF0643B490FE0DFF23F5E14EAEF6DAFCC2ACAE3
+29015CD1E55CD49B70C203A6A763DF29C21F930BA62340291BF1F88265A2F3C2
+E7A267E6043789802E7715780282774549F64B20C22FDF691ACD23296DCBAF09
+6DCECB846CF82FBD463F3C5BAB3A7BD34C56748E2AFDB3317B4D9ED48920A32D
+29EB6C351FAA70AFD52D54EAD2A695AAA3D35E78616F7BA9E87E193DD99831B0
+2B962A03B437B3822AB68D063F8341CDF61936C328830D4733A7C24CF631E535
+C372ECE66F4912
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMBX12
+%!PS-AdobeFont-1.1: CMBX12 1.0
+%%CreationDate: 1991 Aug 20 16:34:54
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMBX12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMBX12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-53 -251 1139 750}readonly def
+/UniqueID 5000769 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
+B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
+AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
+7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
+20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
+B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
+68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
+D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
+26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
+F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
+77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
+BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
+C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
+30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
+148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
+E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
+E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
+337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
+0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
+472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
+A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
+30F2AD56EA22D77BA06F2F0A466830FEF19E34331E1F94081D7A7DF573993D0B
+61B43C7B7DE0CC105B5B0AD4FB2346C2368DE176271B6AF85ABCE1604A8471F8
+610521331EC001C005B32A13D9331F5FA7F35C1F7A21D7A4BF11299A2A858A0C
+E5B66CE90B40391C60547F3AB3F69EDE4C21EC0A8B84C2A858129A38BC96C64D
+7323F15E683EF995DB39F64EF2BB5130944079B4080F9EA9A339FA634F4E9487
+4CECBB2CE721D8B6D33E6FF0092FCD897265C3F4FB8D419A00AB84DBD86BE941
+1CC9F15F37D6573400E13EDC1C52AB774BF411FF88FCD1D9B7656FF9F1EF9D83
+97461455D39EB60E64B33C00C2F130789E78AC55633F0D475A1BB53E84C17CED
+4326755822A64F964DEB87E046C913D855A5A5F60004CE416BD17CBFB98FC62A
+74ABD5A730A17B5C850F11CB7329678ED6F6D752CF400C1F53B55FC689F2B464
+9E0A01CAE930E3F329CE3194DC7AB022C841DE8F9337771AECD409FBCC12CBD7
+70F3C11F726542A25D990B001CC1BFB68B6A9CE76F87001029FF54C3E6187C0C
+BA571F80CFDBC3F1231A5DDAB610688CEFE9A7DE9D7771F7C5D323D39616AE41
+81649FA182E500B82635BE8529FCFBF920DED8B28F74D50F892CF73566922610
+E9D75BEC3413FBDB729638AB7D07BAE4027D600AB812C7BB22F5B21299F2067B
+9685A9D891EA86618B39E866830A0809D1F69F7866EC949A5D6784BF9FCDD35E
+365CDA81AB1896ABEF7CCD947D6B41D392ED1B60E944C2041F2DE9221BD405B2
+7D0158A7D2196CE26A89D914BA4A41A1A9696E157FB1996CD8F635817CA4E7D8
+01C4C125E3F8C43DF0C7F43ABB250CDED02A681C8D03FA7D6EC03FE9BDD1C968
+54ED5A7F983FEB2454998035626AB5B9661D07EED69E4FA386A281A4DF802C65
+FA4CD90906DCDDAC57E62723A9E44DA6ECCE2F2B37362F41A3B4AB1BFA4F6698
+E78AABACE6B73422CB27E6FFBAA328EE4FF2EDCBBF7F119F075F1D0103F7DFF4
+9405C5D494E0BE365A5991BE5C4433983CF5708FF24B2246F08221E27F64BB3E
+D863AFE08B157527270E8586FA0EB4167257C2DD0526648689D6C80FA1A56DC2
+352A6F280E1F41E0D43FD4C21B5A78A3F6EB5AA70B5BE14F538D7D7CF6682820
+A1A8E4191C804FC9694E31794B371BC0EC9F2F29A7C2FFFBCA672547DEB00A65
+C389A0A4CDC4AB3D509EC405D27336AEC3009D7344F6D4561255723856AC673A
+4870F2AEA16623B62B0AE33A2D8912333C044B4755FE7AC4FC596996484ABDCB
+28E72B45F875A0F998338988F932E35D96ACF066EC815540BA2807DC110CC50D
+A53FFF2C096F2D0DB207F627FDAC41C16C2B6671A4E52543829786E5D4DC4974
+B7692E45CD68AABA9C78B3D9BE365604E838A4FD9D9700CAF27032B4A0592308
+E149F4E3A759C7BE16DD5E44DAEE999169EB3A1C15B5A87655EF3E064C056D87
+11445572BA4A28D1CE4D7300C651B40AB7CEB71D0A73798200C741FA685DE48C
+FFD22A510E9A6165340D3584AAD92BE56856A6FB1C82CE85D7F550CD0092515A
+3054E5D8298564C590BC9EA9D879BBBE41AF02462785BD0400418DB3C997CC0F
+57C3A9828177E20225D81EEB2AB03A3E5E9B6461D4F25FDAC46A7AD909965701
+87D76114E5DF0123837965ACBE2EE8BE421BD42263789C148573232D61536AA5
+7AC4E73CDE30EEF268A63BA3FB844B8AC6A166D7AA464FD64D9E8184C5CF9DD6
+587494E275F8D5BE1ED43272824CDF3DE8494744BDB75FE58C89D0844695E469
+6151DB9DF729E5498F0ECB6388F896F062F12CDC6F9B7E57571CBE25A70CC6E3
+F361BBEE6298141D257321672B59B463996137E5F931292BCCC25E725CC59AC1
+8CB98306DE3604CF47929EF1301D595F1C029E61FAA2F234FD9C81975235710E
+7D14988E27A68D5247B2E13F2DFF40CA953C1EC6DCE39674B5A44852AE5197F9
+6E4F0BACFE509CDE721C939B1A75FA2515ED12B3471DB2C546A9681FBE37B495
+61AD17724A771575C9702066A68A4275CC9C3BC8B6B55AC9B7E37D2957DDF746
+23768DC4107E5DC1F6800F1F8D3A7282DB656BF41FDAE8B53B62277462C32E28
+F33617B079ECDF09FE6EB567B10764D5FF59F2058370F58CAB5067F4E20D7741
+5EBB1F1FF041CD64CC4E714294216BFDAC63BC96F395BE740B6E154E94FDB499
+903652BE5DDE16E106F733CF08B6764AD2DA4D5A82C0AC2FCD25DDA38E5B7E64
+A36AB1C39BAB9FCED8BBC17695525920E2E43B6BF5D138EB13955CFBF7F5D055
+07EAF5C1D487482E3B8044C1D9F854D1EB49226874CE84A15A661B31D4F5DCA4
+091403D844A24F01CBCD803D0677F937C3469DAB2666BB8C1A99167E007F3377
+D6135D586386D69D0D8AD5CD41401DD760240C0291FD4069B1D46B04CDA7B508
+B3F19FA980E76AE25DF964119EE0CC6F420273B6E9E9A59FD48A7ABF9F31E5C2
+C7B7BCCA56B25F7C27D0C0933D485502C6ACC3EDAEFEE1C89BE6BA52CB1FB6CF
+D93446139926F2474DF00E6DA7EE43A16E6572BD4E739A4D9A275AC0DBE6E137
+A9791837F1C3D0BB054F7284425E06E16AA7B01B6D070D0429DADD8D12B911AE
+7C6076855CDA6E5115BEE9992F620C75AE24C0B4B2466CA0A27F42B77E6DB1CF
+559DF55A818D4DDF93761F17FA7FD927ED7D29F24901345FC1A4817B3AB27B69
+2FF19B5E1DDA17952BB107826DEC5135719C0FBF6AB9BB67499F6F23F5676340
+9FC146B7F76D95ADB7D32A779D0BF33609BE4C6CE2EF97323DD5F0DB170E9023
+90742E456459CD45B8FD2A7A816836BEAE8ADE61764B915853B7F6F7EA684B7F
+80C729D6946C98A9ED86DD62758E8318090E5C551AB5FA5209B120519FB0F481
+22025457C39FEC537F8A8805BA186614070B8D5374E87A10EC2485A31508CD30
+D7FF18345BCDC7D0515D5B66812CCD5B429806B261D997078ED7DAD7700EE87A
+7E388FC30E48D1267C98FCEF45EDBD4F4E1EBE0DAFA9028FF9EA4B1B6022C583
+26EA6112CA5E89DE940E650CFA021EC2C689DDAD8B6A3F1CAE0D569FD9736FCF
+CF787E450F7E11FC14F7DF6CC533E7ED888D129DCAFD1FA0EE028BE33E24820B
+0D6DF30A5DE4AF14DDDB4AF29B7348AB59D678205D0532EBA00E7C529487512E
+21E6C1B2AE770D5FF9AD503169CB85AE090065D6F34CA763CA0CA4F221EE005E
+178607B24710E0B9DDC8FECF50E2F0C495AC84BB0549831E0F4EF4429788BBB7
+6300169A110245D3FD3B90648528B042EC6A5DB9AEB11E84D3BF20BC37EBBAFA
+1B1D83D732DAB2E5F618C3D8D5E53872DD9662917D82673C9937B0E794C22D4B
+F25A3BAB9D3FA9A7BA71575A9608E53B1734CFBAE77F4C04E8D9E87C8F5DFEEC
+9A13101B3B642722421F0EB07154967F1641C21B2D05F61AEC3B8710F45AB41F
+E341E4A9889781E4288A353A15E13E1923BE837DDEF798E7B06759698001FC4B
+DD480F8BF460109F9FB87F1575CA61AE4CB2F89B2AC656AF54C6919FA7A53015
+FFC9AF98A93867362B9CF02BCF6D316DA2038287190D22FFCE2109083018638C
+334A9AC93DD24B3E5CD7E3C25475854DD297619349F6FE565D33657303E9D0C2
+BE9240A656FB2D64055AEFFBF169980D79CF6E95DADACF8426794B12B6048FCA
+1FA3FF9BBC0F64FD3B47554310023EBEAC6F8F545D47914AD212A06E62FAEDB7
+FE5A7DB446D8313AC9B49295AD67CAEE7282C46BE1FEAC266C3A9BBCE0C5B69D
+7DB66B485E74A9E2A468D76F04ED1C923F255A4C4858F3474F966CDCAA9DC567
+F1DCE613EA2521D1A993FFC251A47E87913E5331455415481808F4BDCE0877AF
+29F944D70AAE3C0E77FC570DA51909A9B8AFB916CA258B3A12130EF43B7B9E2C
+136C8D6C0BE6D136BA7DE74642142DF06F1EFD3018AA0BA3E32D8A4B0404C1F5
+0EAB0793C84BA6DFC99F176C47F7A6997F91BF178B88D0A779327E4160614AD7
+FD72F34C13013669D781297D21C267773394C7E1CC88B93475E02C1BDE3DB5EE
+42E83A43D956FEE0522BD754CA60BFFE2E48398457A1306CE96F8B504E9F4454
+57371BA797F0EAF495F4705AB0129F734DAC45985EA9CF3A10833B9AAD2D48EA
+9E2A76A373DDFC6B9D0397AC10868D2FB75CF707813B71DF19D3A2D4BB7F1CC4
+7F4ED258B9BA27F4BDC000EEDBF7CC3A90163E248D36C94D221BCE37ED4D0285
+41A8B4A44D77A38EBB7D4250E61A08447F794C72591BF580BFC4D9EC0AA836AA
+88F1533890C37FB1AD7134A8B17BC8F1E778C827B8F7FFC3A43B9225AA5004C7
+AE9D716CC533E7ED8EA47C562F6DD48446DEFA49698238F529C8C28A64E7C7E4
+BE937BD3DF8BC6D65C14A68330ED1F2AE31A726B605A767A3BF87FA5C5DB4BF2
+E06105F1CE5F65EF406E1158DA4D845BF75D23568F72838EABFC53FF941A3ED9
+DC50D9981185BDBBE8C2035B7403CCF79AE042D888A25323BC21718B5AD56A71
+C9F265EB22ABDEB5C641A4A9DDF5A0C1813055F7306DD8D9959E46A5E12FC930
+748394B8CA6E104E970067034A93E25807016D3B680273C5640031AC655C9F15
+70B190954D01E67A4CE597527EF7DA9AB25522C03442C8E0E4484A451A3663F0
+8E508AA213BD6D1E7DA813C955FA00742A0A4668A644EF60CEE9E51EC502EB06
+2D606B170AE7D27834E09C0227250F3FB82D36075CAFEE93E199ADE8F90B10CF
+ADBAD79DFDD145E9932E2A9C6666729F5966E889A84518A729977DA4949DE959
+AF1B3C9C18EFA88B31B4B7B2478AADA2AC09976451DBE86504F1FC322939D784
+A29504A3146C7E018A85074CA10DFBEEA4414A23EE7E8DF1FDFE2CE80E893D66
+9AA023FDFF8743EEBC73184E89DE68A81031FA54C9BE5285F8022F672B99E6CC
+6E042E73E2BF11C0A577C045BC3EEEE3F388443CA27AD02BBB48DF4F9E231977
+8EC451FA5671C8B1504ECCB9DCEF59DB805101298711381E9BFCD1C4BDD0C193
+A04AD41054B4B6BB477FED7AE416B4512A9F2B49F4DD7DEFF5223346C13E902C
+3900AF546CD95AA5CBAF94E1ABE85574B18008016CC8BF08CAD6863E3B419447
+54D49573B07B72D17F6858F90E4D9A6CDD855A3B9C0148834DF99ADFB6CA6CBE
+F3EA132A67DF0845B540B505AD2952C558C972A209042171B37339139C511C6A
+4EE1F71A2D517D0075FB4BCD73D3751536DD86D79903AF2EEBB329E743B5C361
+162ED12263E7A3ABC0350F0568BD934B585897F9BD9A1EA6061ED835AC184404
+D6C6B0ECCC5CE1EDFA847D57524CAE4F141A7A50DD2A3A00133CAC0D9F0233C0
+59A00ADE53F0EA5567704F29CF752C7043C70BE2A0CCD7810FE1FDAD4DD1A173
+FA9AEA754D5225E3EDF452861DD99EAB55E4105DB69AB6B917B97555509CD51B
+40282FD70523D08E77A246959EA903EA3B68384CBE31AD14A67DFADC430D1A05
+6781C52C454C0CEABA5460D4B23C2F0C9F8ECC98CFDFDB45615E16E7BDCBC0C3
+95A4CAC30E987BCFE84B0119AFF0107798C48072994FE9ECD44C665465F9C62C
+AE48B24AAAE7CB95AD720AE590F1CF08341F26FA6272F367FDC6E0D9EF2DF0A9
+DE0174DE2465FBE09D42CF9D13F4C1AE36F0BA34D5D3F605917A877F7F9EFFFB
+9F99DE7F2366EABBAC5DBEFD4A79E478C371ACD5A1B3F55125E23EEBD103E057
+5355669B4996007ABF4D03E69A5CCF49F9FED05B7DE09E056D2936FC4B864C92
+D31B2CF35DDD776A7D779DB46D9E0768F80D1D99BADC5EB4264FD430716587BC
+99D59B803DEA6F53555F2E0BB5147DFF60321AD30E49217688870D3775C86497
+0FFDF6F2B030CFEFA15F7290CE50CB4249B072395BC80EC9A9F048BA62CD0659
+988669EFCF61D925AEE6FAD36396420E7973C5577EE479F335927989925E4B3E
+02C0A82E450EE2404CF3BAAFF87E2D2210ABDB73D3CBFC22B5516BAA6E895CE8
+A80887A49A89571DA423B1A98C5389E328DA3C9CEED535D55318CBE4EA20A5D2
+992948307A5E67CFB6A5257A7C4B1A91BE1B304E7D7E1BEFE6D143C7254B6900
+5529DA100152D0BD8B61156E36245BC0800761E73397C70AF3AC5018BBDCAC4D
+F67CED45DF9884778BBB8216B7673568078A412E43FCFBC31F7C3CFF71B6DA8B
+4250DB5BC8C21CBC74FF72635E1950341F78F83F34C90277CBA27911D77FC49E
+3005CE261770A5831B4585458F230AABD9006A01CA5E0D400D64A778CE830F7B
+E527AA53FDC07E6363D6AABF0639BA5D2C1A4BF646CA2EA3D3F2D8C8DFDF78A8
+60071F6C24C6D503BBC838405827681E0325E97420DFDD5921B58660CE517118
+DD577010C6842225C3A4B68915052D7A4D2F2A9ECDBCC67DC0937FAAB408066B
+E8A4EA1888A73EF0E44E347EF9D8EA9571A5660AE693EE8410495CEC2942FF7C
+2F965DA1376F2EDCD27CCCD1D7DB581F1AA55932FA29C73A068E7599397C377C
+E55C5CA524F2D9C4AF4FB3222B137C34F3192417B6A84852FBE3BC1298DE7A59
+7A626D69E268B9A3EE52E7F2C00414F4DE89B91FF1013655AD06E9DEE9B6FE75
+45A7738C9C1B60008740AD9A042440BAA0E7523965895AFA965D23E544FB0487
+D669F3AEDB4B3FF74E3B846AE01DD6ABA842FF7EA5660AF79995E468084A4DD9
+FD9C9874A020462F9FAB2AC3611166EA060E6478051F7C98AAF035C19FB19505
+0AF65893D48AEC852D82C12F17B80B1DDE14CCDC9EC6501255528D7E061B043D
+5A72B51F351974E31D81B1E58E0CC86B2FCD00959AB7C89C83A7D930FBD5F38E
+C9DCF616BF214A5A871FFEECB41F518A7E7CF2D9B867DC9DCB44837F1B4E0045
+56C9DE7E2BFA455C5D095934630E22A63BC52DA448CE2BF26E0E44F07324FA84
+F33DF7EB5F431F9D43A1B2B7297F58FD2318E12439406A738C9C9B6D1CEA9D2B
+4C9936E317D1EA514361D87FCC4E94A5B2CA88897E1F7D07F52FC22C7ED77F46
+D16089F3F688D8C5ECD82976AF32574E225F03927AF2CD31F45A998F78FC7A91
+4AFEC7132DC15213A492A3F89FF997C1CC78E0201D6ED8D6059CC690B1211B0D
+0C0810DED1849653D9B340F09D59323EDA8B9078B55A9E0C33F3DEB483B35373
+BC738F938C5CC8B653C43AA9FCB8F5CA28E1F4ED7201233F42C2B3BC68E3EB87
+C0CFB0C5011EF2677D57E960F16FB7433B1BE8F8983A321B8AF038D4780ABA1E
+A726F888C03A1607E7401172878FED189E5763FF1374EE942F564750BF69C987
+DDA15668AE746D6B85BE6F68B3CB325A36A804898DB4706E7B350E61AC04ABE3
+9AD21674CF3404915188171E38FFA63F9246E43D685D7A1D41B4D1F99CCEEB8E
+A63697F6F3F11F79B99474BFB3392CAFA3A893B8EDAE5CB4BC3AE932D4A0D300
+D5B3BF34C6DD25DE1831AF7EEA0454CFF8AC0161BFC98DE410D33E1489FF03EE
+D79AD3379911B6C36A2877B6C6A562DD1D66DB61F0A60C23771867558E4184A5
+4EBC1B60C35C18CBB4DB2A00A7F3294AEF6A2EFEA6FE6FDE6EB8F8DBE6519E6A
+DA7AE2EA297BFA638E0490A951A339FD94B4DF3A3F464E295F7BC709E173996C
+2C0513057FC989DA2B1285243EA6504B82C4F4C41184ACFB9DE689BCC04F7519
+6C148D90B3FFF5431B09042F15EF73D5213432407636F8C2F93AC66976A19E0F
+8825CFAA814D655557F7CA65C1373F9C679FB358592F6B3108997A30E9E8C112
+5C7739A445E551F720DDC44EDA089B22D0399AED1736E53F3C686738B0F5FD4A
+42D12EFFCF8ED9389404DAB1C4B208877AC53C02064CDD2377AE023A03EE5D65
+7506D3F65529679D602F99B61F12C218299E37CE090721FADEFB0488E5CA9567
+4114E39B9F6247B400AB06BD30ECCE7CF78E39402B4F58A3B32BFA493D285D55
+D76DDBAB87DC9756B4254F851DF4BF8B5FA17CA8B5383A7DE8AC1E0ED9D7C96B
+C808DBCFB9267CED5D94D41127E6655D0146B002F45D8A9E60D208019FACEEE7
+CA7CC214F2514F5382A23021ECA00ADF02BEAD9C0A4BCB29F5C299F57876E652
+0363BBDEE4C6B295F6C2AEAEA528F717E89E1361B428190FE7153F0F696D5D7D
+6E3A1C3F82AD34B1C726ECEE08438D571AE4815800262937F6C26F5B6D0E6442
+8B439CF87D5164DF2300E3F2669E63A62E8065B83BA01483819527AB5FF334D2
+60FB31D0510715ECE7062F0DEC6EFCD93571E8ED866BA44B8300CAEC0F991939
+A68A6EADCFF84AEE2D87DE89328FB9241A90A120C71DF2C425D7E636296F82FD
+E73D572FFE10560F485EC8C3676EEF1AA73425687D3CE8845218FDD601F41880
+C7BC8CD4A602BEFF6BFACE5FE2CE6671FFBE7180C001493BA71084F9448F44F3
+F67214D4E681D78EA25CE8EDAF2FF754BE2BC448F0D59FC158897CD8A94C8854
+A4D68C8C94257B3C5CD65244CB9D5914A71507B7512865190686D6F8ADD1F1ED
+430186AA68FA1C9BE3A0D21C220BF2587ECBF106D265567A4D06CCD5B5AD0BD5
+F23A6453B2B4F3DB8ECAFE6D2B2D8B7060ED36E48AEF3DC61A85D71C2CF425DE
+76EC116E0BD550960303A4D4970A7B188471AA973C7AD1841D00041EBCB85159
+DEBB0C198D5E65687933AD64D1A96F760330D124541EF2EAD27F7A6CAA310BAE
+9A51E9A114EE7701E14D6BD0CCEF29F6342E528D1FA3B125D0322517E070019B
+45CEE0B96C8C456F79EB24B9275491D875C42F9A15856A459062690DBAFAF1E1
+73C18C0A2C25112349C10A85D869002E7FDF026015AF680A3781281231A673CE
+0E3DCCBC77B1DD20D35A0BF322C89FD29795093B909837F0A28A1095306CCBA0
+30582DD4D988C70B1419A8EACF6C586454194B4BD9950381EC87592482457593
+0C2E5DA0D613CF1D02847675544992A60E6E91E8BC9224DAE8384AD9C384D4A1
+2B3E24BFD5FE2EBCB1F47231CB27427D0A55FE051677E4803B359C92E9CC9219
+1D15C7E798B29CA7BAF3252CB108019E67628F0852ADC486266AE13AA7D4D757
+94714B89275645433AA141085CF28C20AA39B22A0375E5F38331D58F0AAD67CA
+133A6866DF076E8D2431235954BF4603C1C6F940E920760DE9A85981A8634BD7
+56D8270D7D1642C9B1DF4053E7413D02CCFD2C88216E0469B0ED23994D861733
+D06F73BE44BC821F4C776098BDFD66D741B32F0BD6EA1174C3E0207E5EEDC5B2
+D381A567B55ABABAEA91AC7237E94FA0C0E832E482CDDB997F845263FCEEAD84
+36F2F6DC70C8F43C4386B0DA88E07EEDD98BBCBBC6835556EFD04ACE346D0C12
+DB68C67F573CCE592585AD5087373399915FE9C054F35808F2407D4A5F2FA5DB
+BA6174EF76ADA1CC9B8DB8068E7D67BFB46F801ED9EB62D1BE6281453B6F9AAA
+0E49E76B11B6A0DFFB501C026D59D3CCE4FB05BC599A5A2A8F19C6FA4351C5B6
+266879198874D2F9C94559DD37C8531F210FC19A4715AC787571CD245DC77639
+1A6887CB618D472FBF29E8222461647A7F064A81A62146FE0EAF722E12741DF6
+F92A8A46DD7B22E8D2D0565C0C1D52527051EB500CCBAE61B51EF2036FAA8152
+1F6EA7AB6EC191CD7A03F254EC6A511BD6B11CB8C6301284360FB3F341D11243
+0C02AAAE85E7C50A76863AD942CDD33C99EC8A0A5248EB9B4B79A069E5791E4B
+FAD53EB2E78F804B4514625C21CAF29A67519C0E9ABBF91CC49DF5B48D49F1E7
+F28093AC3977CA01E20766A8EC03604A680DA7E4E2A82CA9B67251ABA72B16E4
+EDF4E9963A61E2B50572785148FA09472CBFF81F74B28EA2205E00317358D2C3
+1F328C9ACE63071B037DF4E7A6170E6524EE718F62DE71388C9903DA6E371CCB
+B2DAD303B9C60DA803547D6B824F0F67050C46603E39593FA0B05B822CB6D740
+7C7C7805A047B94312E90B163CCD1F5120F6B14B510D7B75E0ED0649A8029E0D
+B726D0201D810B091CEE903AEE7CB1418AC176388274C71997C37DE4D20DF9DE
+8CE83C97109FFA921B84DD985620B1A8BEE906C280D06CAF6EC9DDE036FCB0CF
+111A2CAFA4DFF734BD6F2D1F659860AD9E4A7D04C750635633415FCEB9E93EA1
+08D01F58D8DB98724EC3B3A307562EEA3E1464645D513DDDA57D4BFE19A9A5EA
+04905775FE4529C705E070B54850838322A45A909ACB991A85DE420B1A602977
+AB935094EE672DF20D2C0D21F7D9F6DC1B4AB380A249CD8FA088F8C24A8A4AD1
+C8BB7F47DF1F7D541FD59C58FA36BE53C3E0A22CBD4A83C8DA0E51DE2EE4D991
+D764D6B4F9CB5112021CE64D7CE417C1F8D7E4AF439CFCD95150974261F16DF9
+BFE27C80AC80DDED07778D865B03609F1B74E3A766ED61259051BE5E5AC0EDE8
+C5927CFBEF9C6708C68648413658B79A262F1948C4A5A153535289F046941C6E
+EEF7F5C307822CC7C4EEB6B4B2744F710A9E870084AC214A8C7FFCBADECF46C0
+FAEDA29A441B5D6ECD8F7564A85EF5E7F6EAB2EF31A4372E106185950D6A2F0C
+603B129D61DC25B93617471C9C62FF265256A6FABDE23F2E804CE7989E8EE871
+BEA40521F2101B6BD88ACA52AC7B45F6C8D1EE33A6E8EABF21FB71EAB06FF81F
+F3DF8102A05DD3AC9B7BBBB018F18529BBAC870656C3CEBF8BFE2B10B48CFBBF
+62ED719FAA59C536510C304038236708865974E826B7F18460383A62BAE4F52D
+0E52C665475AA2C5DC376DCBD8D6F661030C8606AB5AF0B24BE67690B6D58981
+643DBB88F623F88E2E510EFB953DE63C642475E409A09AD2B95D1895459D024B
+0A8EE1A75240DA90A9C2F893BD4406DB7C554492E7FDAFB7B609D7DB79AF6A2A
+2C730B22FC1AC0BE6BC48CF93470BDDFA97D1E3C9557008CD2DDC1EC9B4C8AD8
+3DF010BB6E7A8F1F817163CB5C8F6C490AA627C699413B64D899A40169C2DEB1
+FB3EE10BC6D7A4E2450CF91777396FBF9879DBE74E4F8D0302DDFB46887CD302
+31C3145D3FD59A9BA13710CEA59F1442E749C716C1A0DA3BE5AAD616FEEF2A58
+701D3DC8DEF41C8D76D9581159A3CD5821F8CE67F2B44FE377EE52280BF00198
+413CC9A25D7F1EB78B890228F4DAE547954117C4F67EB921B0256A0346BF5C7E
+38A3F069866A25BD11322C4B59CC78B2FF0B37389CBD0967A8F4D0005CAD20F6
+2AED7D48D5CD4DAB4F9AEBE8610AC3C38837A77B42AA91D952DC2166B3FEB28B
+C146BA58BCB10259DCA6D3F26BEAF8C94E6C6E4CB9CE0247BD155A1E0B8427F1
+D7C12F9D9BAECEF95E72ACA2D53F3E7B4063C461469432D3F84D8C8A99845A23
+0565FC4DC9E1CE1CFA5F558C3FF08F73BE67599A23F6EF945075E7EB70FC8C89
+F9E32534CD35BD042A9F9B6F1E27D105CD06125893977AB51B11F31EDB65BC9E
+CA95C9444F77036F675FFE3C546CF844D410ADDBE1155ACA92838A3A701F52E4
+8991E52B054AF2D28A51267C81B50A368840CD390E8234D10654D3D745B88F42
+8C522BE2D04D17F75C9035BC8A7C8FC01F9CD1A37DF6B06A622134265F2EE1C9
+BAE4DAA968A0196D0D15693D034E527121ADB676EE4D1429B1B8798867E3A225
+78431A973FE056F5D6D8AA558848B571F6F39EBEAC8502C092350F4C9BE9774C
+CB5BC3A36589BCFC26A821D512C26495B7F0094E2C3713D9AD376193A5D8E820
+19537206BDC1D7F0DD9C35AD436D373B060D1936EA3B23625ED87AF25968A98E
+95FFB863599110796CF852CA058B1D84B44EDA91C68E32F38CAAA05E9A619657
+8E6F8BAC8B2F1CA0457691874748CFF05927277E0EA856BEAE3E028C93FB8ECC
+C98C6CC232152E7A950F0EFCB2727107672A7CC4C7FAEC8B924AD333B062AAFB
+3ECF8F92098920124D961B613ED16F5BE1F153F37A711F8C68A813D7185D064D
+93A9365DBA94F45D3D81AD7E86F40D6839A57515D72C64CBF50B442DA4E66C57
+65F9C4A5A423CEB2C3D62AC58178017103EA11318059E4A315F460793082C235
+B378342ED6B9D8DC4477AA27A52D9783FD2A7D0393FDC2560D3FC5FADB3A5674
+2E73704492B8A5ACBF17A6CB6132A15E104360BEB62F31E2F88E7EA6DE25DC30
+2D98866D35549FB18E72DB798D934C8FBE59B459F68499E5A55F787ED64E16CF
+45BA86A7012AB025EB3D618D22107FE2D2288F1286201763F5EEC352D1519DA5
+FE2A1D5606217DA3AA37B3BA56D3C1496478809BA23DC306BF850F597F73DF6E
+F1137CBB767E34FF8D57F924CD7B5AC8170BAF9EA5711325EF52AE97C09AB216
+BB01352BE9F46008F37691E51E96F0CE9C201B99E2FA58E06CA1FFEEB2BBCAFC
+517D9B4BA6382119E2ADC381A4314495A45546FD4D1E9F7CB4AB59DAD5D1EC6A
+2227D54ADDFE7B9BB5FF249CA1706F3E000874787C1D60273C476BD0316A2906
+81E6665235EA845A45AED8A87658A508E1AE5F01C2BEA8C06254C0BD38727DB6
+2686A8DD3A22D87FC40FA9BE26371EFE7753BB55E9F435AD29E228ECB1E8686D
+E4873A7F38B4009481C6E403A649C8E05FDF0FAB0FA4AAC4EFB1BD74ABB0AEE7
+7B04E68E7CAF3E02673A190F54695D4BA97EAA6A65B495649F097B1F789863C9
+C6B8194DEF61C4EDF01AF41F98662D61D521BED90BA3ED3D494EF71C544F24DB
+1B80333DD8B3B49F111DD0A4AB85B2235B31329F4757C2DC6CE9E7E5B16F6F51
+E3B670820E58404A6D94F43BAB2001B66D384DF4F0D8069D4F715687DDEBD0C5
+836D4ACA38E3F6CF582A2AF2E8491F597AFF2BB79F94F02EF6B0CC16D89AE75B
+A1A4A1C2F660493E455C91EC4E2BE09A402FBC0D85622C19D1EE26D662520A14
+5DED2AE13D6B91DD8FF86C65DBB0AB26FB9E462B27E148A48CD12CAC30EBC7A9
+C308D4422866B4BD94511A689D3036DD557F57B45A7FC2596F131FD64F496C09
+60158066D8108F9B05E3C0A7576746D69CE580FD51A2099567B31F62514F9021
+0F136DD4C6815E784F5AC20ADC86BD6833C6BCC687C0C118683312923136B511
+13621DF70EC69380FD566FE9418D380D3433DC3DA67656EAA1C06CDD3265AE8E
+C8D968D1B4095E9D4ABD6A4D7E623D77FF45E0022FD4E4EB5DBB068284B66932
+631145295C1C2489251E5CAB5387518ADD9978F30C3BE04FB631B4870D8E508B
+F97AF04DDD6623C3B493D9421FC5C11A30EB48BBAA816F0EF20CB018E47C0289
+C8C9170903093AFA49CC922F1581D24B707A14F490F6AA22D09C41E3059A3359
+0534C5B2F25EB236BCF7F2AEADD1F76FE46C011A2B64D719AF86AF2D24398333
+4E3209D913527D62A0F5039D67A427922B494D82BA0720B7537D712370554AF1
+766952C7DE562EE7E37B4EB63AC30B2E2471D7D5F3C5C03EDB503105822D8E17
+989C47F61C0A62A52D29501C12BB678821B0BA756122E8BDA172560A777588DF
+7E15C6A0D77457ECBDAA7233B28B6274A7C89AF5EBA7AC8D9205A80FBD1EB978
+979902E048C1952C7B56647A9BC62705504FB75D9C495E72219F23978F7D6A0B
+05C3F55F0335F0D978E086AF0ACFA8FF722531B7D8E667A629A0CAA81A5EB919
+D958ECBBB1D2E85E2B7D82418DBFF77F4C37EBBCC97061FA24EF167DD4E8B5F0
+FE7AC52C16206473B16A56D0BD49DF2E4DDBCD60019946697A8420B543C37484
+C4858F25053EEC7D34A9B79C1153132C411402ACDC68BC9301DC1792E028828C
+B576D2E665FE29BF0087D2801CDCF0B5BC91203CEF1114F124AF12A02FCF5231
+E9009549A8461E6CAC211CAEE2CAEE2F76ACA0D90A36
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMR8
+%!PS-AdobeFont-1.1: CMR8 1.0
+%%CreationDate: 1991 Aug 20 16:39:40
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMR8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR8 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-36 -250 1070 750}readonly def
+/UniqueID 5000791 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C
+68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361
+3645B82392D5CAE11A7CB49D7E2E82DCD485CBA1772CE422BB1D7283AD675B65
+48A7EA0069A883EC1DAA3E1F9ECE7586D6CF0A128CD557C7E5D7AA3EA97EBAD3
+9619D1BFCF4A6D64768741EDEA0A5B0EFBBF347CDCBE2E03D756967A16B613DB
+0FC45FA2A3312E0C46A5FD0466AB097C58FFEEC40601B8395E52775D0AFCD7DB
+8AB317333110531E5C44A4CB4B5ACD571A1A60960B15E450948A5EEA14DD330F
+EA209265DB8E1A1FC80DCD3860323FD26C113B041A88C88A21655878680A4466
+FA10403D24BB97152A49B842C180E4D258C9D48F21D057782D90623116830BA3
+9902B3C5F2F2DD01433B0D7099C07DBDE268D0FFED5169BCD03D48B2F058AD62
+D8678C626DC7A3F352152C99BA963EF95F8AD11DB8B0D351210A17E4C2C55AD8
+9EB64172935D3C20A398F3EEEEC31551966A7438EF3FEE422C6D4E05337620D5
+ACC7B52BED984BFAAD36EF9D20748B05D07BE4414A63975125D272FAD83F76E6
+10FFF8363014BE526D580873C5A42B70FA911EC7B86905F13AFE55EB0273F582
+83158793B8CC296B8DE1DCCF1250FD57CB0E035C7EDA3B0092ED940D37A05493
+2EC54E09B984FCA4AB7D2EA182BCF1263AA244B07EC0EA912A2BCC6CA6105B29
+044005DDBEAF88E0F05541BBD233977A447B469F013D8535A9D7023CC0FB7B49
+A95CD2B6F18935C37F49E9A73E97A8602C5C26EE13D7A04A188336FCAB4CDEE0
+23DE9D803FD6E8D846B3F729BD36137E834E016242CD2F7BF048959DD45AD413
+19B985D05E5D422F3D0968375EA6A90FBEBF8B42B15F15280469D69629C08A42
+1C298CC027CC288B9C984239ABB96B6A891C1360D08F9ECC22202861E4CE9B39
+8BF329F41505801E80D44192B4267A538C9DB82EE98E17CAEC068F7B2B750260
+E2B4A6DFD9677D28F69346AB75EE1EA754DE12D5CA0286E55839EA9A46D9109D
+56F8B230A446C3162EC8503A085D5594006D17AD56E5BC2FB04910450B0A463E
+6CCD91C5C9600354F01023F9577F2B3EA74E9C7E64F44294474FF49BD0923F86
+E786E374FD7F059988C272478C231D4F63830FEEB07747B41BE59A26B39E969B
+C72C8D8BA4E5EB2E84DF4EA0E9C09AC5914BF31393DF0739CAE0873A42C6C700
+06B5D6D8C9AE342376EAFC8F9F666112EEB307DD6644EDE1A282EC8BEB45A63D
+00358C8E0BD2DC583138B090CFC0BBE1ED8B5FAEF10E0A3F0A83D696042486A1
+14A5DBC1DD1A07641752F3AAA99ED88D9A3F8013072D4B4CABDC411A4B3BDDA8
+32F002031588AB27FDA1378DC71D028557CA89C1156B86B586CF704526CDC05A
+2A315CFBFE6DC926CE847B70E34EE50BF7E6084DEAB685AED246C659E5B133D9
+639F7FFFC7CC4CF441DC0E5FFC183EF2DE3D5DB1112B23AD55CFAD2CB06A82FC
+20C953C43CC6F4B779F601ED0BE0AF4B29DB1208074CD3998CFA0FED8B5422AF
+7A75D94F2620975E8C5274494A9B3BF127FA723B31FEC77509E8DA5A6E92E8F9
+DA5F71191C555242B05B247BB1453DC90D9860373949863101A35516711F25E4
+BF4B7EB1354410F8DDBC4819C4CED5C589A15CC43FF1E76512C12FDA951AC58C
+959A6CD6A162E7461116777A90C70F135B936AC3A8941A9E3363D25EE8FFFBBA
+78C364E3F8111EE34BFD56C9704F8882538BBD26E80E3D5D82D1CEF8F0BBD345
+85FC0D601EBBCCD089C16BE244745D54AF05373569BA7AE0FBB2D368C80444DD
+F3E6B8BCA08EE19178F253D4C8E5D79CF653346B9F79DE7E63BBD41613609C45
+A83115AF6E0BD1F04A7C50F066C5236C7D9557C7EDE1229D9B9445A45CC9DAA1
+3359951CB474DB6B6702C712CD82B36803B2C2599641B9FAC8245A82E556CDD9
+B252C40393B7989C408477A3B0B58BCA83D6E96CC34F7597F7FDF520878FB08C
+44B5E4A659A8E2BD939F32FC8737F6D0EC793D5EDEAA199E24EF64D7CDF8F7A7
+C0B830733A6C14D0E6445B7364AD541DFECDE6A9E3BD2799768E3B61AEB8394F
+0A944D13D8CAB172AF53887964ECA441B59715C3C65F62B0B27D61741E65CED7
+8C4D9126738F45A99696DAC5F585305B793BC0F775EF6840E5C1B8DCD61AEBDE
+8183D4A56AC00070143FEC66BD38EAE44AF285CDAB1FE4392F45AEBE5B89E96A
+BB7AF328ADD21B2A6B31BC6268AB7C2501BD9C0B8B11419F837A971C139D5A55
+AF4091DB9DD2E8AF722A82051594EF17AE2D27FB4A5BCD5E4CBA59E6C8CEB487
+F53657DD24126498DF65BE5883125E390315A1C82CAC3FBBCB85AD9D6521BAD2
+E7162AD7166A3FFB7BAF4F5F717234F3A81FF7A14105E0D2F729E07E3363C981
+E754862C925258A144DC4674747A80917441A5656AF692BBFF896B18003C6086
+4BCC31589D6E99D9DFA2146963F9B5F8B30903B6FC1AD0A236D112EF5121257D
+1B84840DD689E3C3D4AEC7C43E7E6D6948627452505E4367CC92AB215ECE24AB
+29DF19B0E6D786C4806058A1E6D18158ABE4F1F6D08ABC74D22833327B9548C7
+F605B68ADC916974DBFA7D8BE0C9F164935CD13B22C3495B16F32E20D200EC39
+DA1D8C5756DB3C8740D2E78D97F8851720DC88F6B9D785C5CD3EB15CAE782A83
+8E5A51E4E2E0C193AA7207CC21108E42CE120B305F807EB583B0A47373D90272
+CA25B60B11691A0E08C263241A9CF404FDDD2B669A1D1EA3B7B04BC8A75C087A
+C1FDB777813BBBFF9F4173112F82A2837012A786C0440E6A7E2FC88FAA03F025
+839F79515681B3DE8185C7CEBD003B648F62B35D7FF5B3268BEC852E58BA61D7
+38C6F23CF4923C0467C715B09852790B3F9AC41E103C5009D01AB28ACDC119A2
+E79D6EE74D9A123624D9E42411E6C63111253213F540A3E83A6D9C4DCA326408
+94F23CCBCBBD53A6DB97BB149AD0943F71FB1C01570EADFB84C57EB454A38ED8
+701F2D3243C3AB97BCA08737BAC319B9CAFA2A35311C313AFCDD36E71568FBBA
+F2354845CB29BF3B4493A63FA80160C9456A4F729150ADF64324ED2BBB1DE355
+8BB759B90CE19E5111E60D7E4663207035FE863C78F514EBFF772AE523330D00
+68A49525EBFED821B70DEE533DC661B73137AA62A080CD10CF12764FD0AF5618
+2A4A32A4B45BF95CA1450E66A06F1070AD197C875C8396EAC31AA6B613CDB254
+8B4B0805B67898B9C6FE703A564232B24C3F21D5876FAFF8969EA005249459C5
+3097C48C768D17FA51C4BF986903883EA2A7A12FFEA24D8179418263BA1CFAE8
+4A269AAF7B1AC68329C3A8B88B590CDACB10B817BA32A8C66EC047F35A82D7C7
+B2D86DF4B283BD592F85CB86485DD9F08893FCD656C0228FAF6C48C017D65E68
+D8C34EEB3C5B767CEBA0D9696E0F9FBD4A631CDEA3E1B27E5D94095C0C71F806
+4793E6C335643AF41852F302CA687ACBE8D9CA42573A5207E2D6BEE4CA891098
+37D98224A983C394463980894980DE127B4EA68810AC0CA8329513ECCD729A2B
+24C2E9A60512D3CF0441862F9FBF07DFE7A48A4936B21E4F852834C4481CBBFA
+1D9CF7ECA29F99FB508D7E777F0A22ADB30815FF8AE32A4217E8F5187646562E
+7CFC499B47DE236B3D26601DF4B92BD76FB735056F1919BA496305B69CE146A7
+1A40BD4A8DA4FA0BBD6B83623F8FF96B9AE5035822C38831861C9753CA4B42AF
+2200FE022BF9481AC953F92F4B24A22FCB2EB4091ADA5CC904DFACBF3EDE48B9
+A51F09F3A1D5B5605790EC596FA5FCA7C5DAD583217E15F9012AFC5D016588E2
+7689F8D2F7C0025B4E3F18CB6B0D2F243496787142C77152D0116108C05F0D20
+1D1C6EAD6959C9E6B4D3D9F5AE2271A575322629357BBF8BD3AF6D6DE0790231
+94527A2F6081263096B914E129DAFA0C22029B228BB1DEAEF002E5B8650BFD5A
+E4CAA9A359E7C2882194F039085E7BE75566FCDF91815E381E446DF57223E20B
+56D142011035E7B90F4A2F15DB37C4AAC9B971CDAC44CA42316467C10CCA97D9
+31C1519C3DC893E3ED75792A66B41249AE6E08845B1D0F6F6C1F614D57B8A585
+6874FE3943F0C4A58751D7FD401B04164F82670061FCC31D8060FE9207D79393
+B94B1A67FBC918DAF88A12CDE52E53991045638028F2A324F6E1697B3F897240
+71EC711AF2336E12314CA48E1C889BB979DB986D4505C136CC95ADFD0E06CE7C
+61E1FD764297C3AE22F237E9CFD4E653D995C56DDAD0399BA343E8D645BAE289
+D1BC986C609AE29FB3C1A464B62ED56404A84F046D6734C68F4ED8673308D6C4
+84A2E7575FB316981DD7EC50C3BB64A03094132240E9D765D63F9164470EAA8A
+4248BBD8D9834F3AE4304DFA0B24B87551F290198991758518AB2FD0556ED7B0
+283E8420A4D71B8E3C0ADDC3461B5DAE73EB73708BDEEE45EC084B648CD6877D
+3467F446EED9D805F21100892BB1C6885E6E8BB3F3F9D870DC17D8AC1278EBC3
+8869497E363A35933868B1BD612C71573E8B5029E79D249457A29080EF2E7924
+31A6BD4A1D76AFA4B62929D1CC1718EF4F1B0738252EFC22572F3D1F553E5D08
+08B2491322487440DDB541096318B45EC333257A5D79179BB072F9581E07A3DA
+4EE99E10A39DCF47F17038FE4EF0A5FF58D707628C1E9B477298F3A207BCBDD4
+04AAC70DF37DE65BF9365B62DA04BC98C579EED5407394B87C0F7244FE7A7C1B
+BC76A2D3822EC18ABF712A73399154120B3F8A31AF4D6FD9513097BAAD490D18
+79435C268B876A9DA9E1D3AE2BBFBADA21E71279D88726D5F3EFE71376AB2B28
+B7397FF48C81280D0B0A8615338E26FC0E456F88BEEE76DBF39889E2791DC537
+9C7DF380AC2493A137F7C84542053532D11E7345D278422CECA21E9A0AC095AF
+549902934D0C0C45647CA87F45545448349FB4DA8FD18545E23B6249564325F4
+5DCEA7BF2550C68741A0532AD8ED757289E18B74BDF6BD303B254FF762A3AE68
+A656454E155DAC74EE0006B1D2B079E6AC8870D287CE4045879E26D792ABD515
+3DE60D01161E40CF4D500DF7A0FFC4A4A27747A69E782779025B7D6BFAF874E2
+E6AACDFBFE62BCE4E344C437FEF6ADF54A61C3DADF5E94DBC8DBC55866B6C0A4
+9532C51804423476FA2E5FF6396CA59F2259D61AC3A19E7489A80A372DE04D27
+96B2AC2FB4D09E641B30A586A8DC325124DAC513682C8DE91879FFF6FCA4C6FB
+FD713FF780B1AFC57B4BF1DB806BC7F20D6C9A8553C844ACA8754E8433D07DF1
+ECA5BC11539EC92EED44181D3E95104BBDABF06F8236EAEA72EB20EBFEDBE370
+FDBFB467E4370574DBD50F9F26CAEE6F54EAD0E88912E7F9D78626C34938DB80
+47329C1DEA4BE8332580801762B901FC6D22505EA8507A8345BAD72A35CF78AF
+5A6F9049F3049BED4C33EF4369F86EC8A999608FF5EBC1A49BE6F2F6A61B1FFC
+6CE9E3AD0680F53DE805E35D0B836B50D6842C5C695B9CC6CC2752E12B074EE7
+4FE7F61847755CAD230E2D0FC7D05C61BA3F40A5B93C7DC0AAE5B8301F7AB56A
+1CDDF82144311DADEF50A0793B4756764FF9A1FB5872497F30B71A0460FCCEB1
+D4C17989EC864549DF1F8197346E96E809CB5142C9FC38C1E78F29DCD3D8EC56
+5A258A7439AC194EFBA06065C81E8D11BF9764341EE823345AD452367C5D2125
+E5B4FB2CF3A2BF7FD9D2A4C1D1243C6188254BA6774C2EF7E9A13441F8BEA3C2
+CC776166C8E13FD959C12B75907A63C779F4A61482439AAFDF0ECA69DD7D54EF
+5119A33F5D5839DD8D833256BCA8C2B2497C513A14E8FAE89B5911FDB50193BE
+07FC3306DA0ED05F83D832FA95020BFC3FD504F292D0C041DB9BF8DD66869976
+8B35A997B94DD9C67F78AA8E777B0C0B254BF284FE8647305684F70E20059323
+DAF5E261B3BD473C100D58ACB9B26971DA6FCDD633D436DD5B9645D3B373D470
+84A59BE9A7E9A8A3E1D4C7596FA2195C8DB75552448716311E29D63F4308FCAA
+C292CFD511F73668AF6F220F915A432E3D234DDBCD604BD3FCC88F8ECEEFB27C
+AF3061F394C4C82C0EFE09827C713C5800F0CE37E145C663A02BD237E46D6866
+BD5CB49F9404D55F5FD9D4FACA53EC7BA5E5B0479B6E7D1125022C897FEF2F52
+A448F2F0BC6A1EDD34EAB5EF96D1B290ED5F47C6A256EAC181E56FFA1D2F7D02
+99379930B279725FC2711A571C07128157F9E7F017B7AA0C31725E8B023126C4
+F445324A8C19B0071E7F9E110E3A4FF4EDE5DD3E4AB12AD7CDFA55F37B6726AD
+C2F3A4E96297E3B05661462DA89240E3A486A3C32492C4E635D7A1EFAC2355E6
+22544BD2712B421A6420EDA6C024079C8F9C6EE9148944AC513D99DFA659BAA1
+FBC691B6FABAFC83B3277482E8E59556335B983F21B311855C24C480ACE9C2EE
+DFE6063730B41A84D5B3F5DAB95FD5CE8108A048D4DAAB0536C65E9CE5545E91
+A2ACE2B356B0AE9386FF618CB90F683AF0D165239B694A926E599C65139FB521
+B4F7964DAB5ECB5E765FF390BD5EE25418B61C4AD2F8C6B42EA614DDCBD56C3C
+D638E419BF294799CC25A1204BBDC52A8E0B6096579676F13E431217B34DA0EE
+5E92B502BDCAE233833AF217587A55FCE152047F86BEA37752C85EE02E49C56A
+B50F2EFE027CABB2C72BC6644AD08817A21043A7BA2EBDE412BC29AAB17AEDCE
+8F7C66D279922A9B10FB16751FBC67AF010AFBF04E047FEB897B2354D17F61A2
+C1DBE7B0AB978B3D8384A929933335560B173ABBD95BB385770D74304D3ACA56
+23F4BB3D1852A08E71395CE586D2AA1356772631361735DD9B8D58EEDA1B6FE4
+ACA52FDE3226B2F7B7530E076AB87A16934044FA6B06D8D6D8A3ACC18A18A938
+9A63B9A01B640FD4EFBEEA787639E9EFCDA553C18470E7A803B713E0E8F23A2F
+2C8C142C9A629621231070213F72EFDCCC0DF1EED40471C15B828919992562C0
+423779022EE1A7F0778F4B1FC0303A0E1DD626364AF033EDEF300D0446099D51
+028390D8E7D2E7A8805656D0E332C44C933798CA9BDA2CAE7FE4DB2EFDA0CAC8
+A590C870701529EFE8093891891EDDEF5567204E3FA22CBFC78D0E54AB1919F9
+DB5CF4CDBD0611423A3CE2427BAA3F0295F126317CAD548692A1B2379D0EE553
+A1C622413C2420B9F3004ED09BBF3862012BB094C9EA71E4107697315451F378
+6BF9FEF66749FE9DEFE07CCCF441751FBE6FE4E64B1DCFAB5F2E49976ECA493E
+FF354C53529A7007A09731689F70625874F5C93078BF41EBAD47A22A9FECC8EF
+C56CF8E43D0D1AFF365B5FF00F259527AB67632B1B0F6EAB5EA07F1A93EC36E6
+3D47D32AE1FE0553E04F5C152CF51ACC52FA33F46BF9583D26F25EC92985EF9A
+006C535FC6691A41A1E0BCCE9280324CFA01D16860FB749FB6A5B2A1610E885B
+DEBBC7A62A75B40A534305E7A447625B003A81410C5E450BFEF122D7215A05ED
+9C78DFE3E5B9746B2B196F748C3E0E3BAE6D309FE682ABCF77E8FB0934C6F371
+2AAF0273E5A1DCF70CF8BDD6D7F40EAF2BFDC275C89F343734880C580118F4C7
+81F02E605AFC97E5F7756006B74F7764DCC3350A5D38626BC2D278D0A8C9EFDB
+950217787AC652FD0AD4452B0181485F558F1A81AD91CAE3C1E7930A22F1A67C
+EA0DA6245FC7905BD24ECD9F91B1913FB80FABA163A174F21734366A1BDE2D70
+444D8E66A1B787D8C42A9AF38BCC8CF9F9212C01CB5520ADC16FB47AB97B1C30
+0ED895B06EAD588E21701170B92F70F5F669B90025BF28FC7CB48CAE0F51A525
+F060F5D685DDB1F042DD51EC79D84FD284B37BD973F696B678C09661C3F2379A
+1537F22FF224C75C9E587AC5831C14A86AE6F09A33562296BD45E501D6E83F59
+48C6514662DDE3814FAB4BEFDB78BB7C8DAFA4D5865DC80B23B8F1DA373048E6
+53D4591CEF86E687E171E27FF082478A52FAE9FDD3880919ECF4EDC9DCE00C4A
+9ED4532C12FCDF67B0F9EEDBAA7E7E33DF21045195EAEDC9A965D99171A87761
+8C614FB24AA3028B27093F3F574876B57B7A4A50E9FB5D26DAD00EBAC50F389C
+D695ACFC9BE4240ACAC6D79A909313E15E3373A9DFC7582B6880008F4F45F1E3
+C3C2FCE5C8752BFF7E8735EE1C54C224E1ADCBF25F1DCC91EA586645F141F403
+7757854E26226D02D7B2DE95316FE22E586B9F4970CE2C469BA4ABA20496D1B2
+54892B325051A714BBF244CFE9FC7EC6951F2EAEC07A21232FE88148B243DF01
+4A284D006896580FF35440E8C4511B10DC4FEBF42CA1E08F2EC30E0CBA3B4C3E
+15D7DE7E1F1A078D4039487F92FFD172C4FF1E69E74818B4413062223358A516
+7D66C2A98FA61F90F2D71A77A13014085C312934D593B6758DBADE55FD62AC0A
+F7B92802ADFFE19C7984BCC78B0D97E9D51BBA7F8A757991B0D7212842440579
+90B0407F3DCDDBEE0EE781CD0B71C7B5637EF22FF5465EF795F598B5B52CEE8A
+5A81635A6D03977CDFF4ACFD2D7A8192CBC301AA5EEF006EF09B7B398443CDEC
+DAB1460EEED36AC66E9AA46921F76ADA29EBF18EAC69F47D558A9BD8E94F3A10
+F5D651EB32D975B045BEE51ECDE89F3C9097D6B27AB8035F09DCC808B36FCB3A
+7997461B60A38F2A360378EB8DE47A87E04135FCC802C107A6E55737E1912E91
+B02CAF1D91D17820EE2B4E87517F4F91E1F19A3914E6CEEF21FDB14FB98669B1
+477BA9E73289EF1292A55327629905D5B2842704DB187975FCC8987BA3807698
+CF1AF5099A1A073FB8A77F6889C8A449C547B8CA7449FC144DA3814BF31D1E04
+555707CCA941F9603FD7F949DF486FC875F79710256AA3E1683D31604084582C
+2919B24600A0F6080081FA5350D23C930F3548713E1C8C0D1C0E7DF7E9A6A0C8
+8DD911583AC1217073387005B38DC59E0DC515BA4E5AC4353721A6C425097309
+3FCC85864CFD91D6BDB7B50BF298178DEB480E9AE44B0B07AAC032794718630B
+53A58266A3AD8624AA3368E7C573755681863CDCACCCBBCE81D6A614CCA84123
+B35717B71BF947D2859598FE14E467EA8098949B0B41769AD4491B9D43301B9D
+33EAC37280A6177C90F9AA991727DEC563A816FC17904D7F48FEC825FE9255F5
+148CB025EE1B33B4CB65A2A0994DD4B791861AF4074AB9F6CC11746CA45363C0
+4557D0926A6F37487A9246A156B13522997761B1A9322B64BEA143F996BBE527
+24D81B8EEE78ECBEA62A95A757C59180988B832D5162E28BFBDC3A5E5741E27C
+CCB09E9ED3984C9A2CA4188A68FB7F38A230C458958625382746ED39E53C7F20
+6E6DAD435F85F6BFEF621ACCBD2F6D22C58096A420A30156F658C104B330A425
+401BE4EE6BCB8511B44A5A29B2720808D762C58F271428C1A474657C485FF795
+281A0758C751D89ADFBDA47AF546C8FFC66C6655C12EDDC97EADC185502245BA
+D13C235A93692091659C1AAE4635539DF029A4AD49F9B51897CF1D218459B0ED
+ABD10A8960B2DC4EA58694189E04D83F93B67D517E97193973089850E388DCEB
+7ECA807967B539AEC59DE4E0A73E1EDFF163553199CB475E9DC0BD768F6F1ED2
+F69C49E5BC980B8C8F2F0D73DA640531388A2EC73388508E759BD1CBC851270E
+A570F46A425AD2AA69D820D5A05DAC35B2C81D93AD74BB49CF5DD54707D4BEA3
+530EA059C39A3B762B68CC9597989BD0E39313FDD28A7811F1A7EE8C9F66E578
+8C8CF0989763C2DD8F62F0060DB6924051149F04F494DC6F7D4A3FBC2E5EBA5F
+7694947585252EA6C7D096B550A18C4A90B6622C3A8B8B3A21109644CA8EEAFE
+77055D9CE97FAB95A00CB3726C5257061607D188CAAE7B78947B4E2BDBA9F281
+BEE038D67F45BA17B5D90738EDA0D6B3F0916087DC7AC80F91DAA60A6EDC4442
+71BB0F24DEC66296B498B5FA77F9F11AE57DA2BFA9E13DBE0063649E21E2DFE7
+9336D223877A1759EBE8136FECFBE1B6A3F3167D88DF8B88DBCEDD08605E267B
+04D11CEAFAE7F281E98F0E364DAF34D1162BFA1C17B27E27E646D3511F2ADD11
+4DF33BC57286BCC32ECAA8C6265796CB7A4E2B089FF9E5A55A68BF8AAF430D9C
+FB11CF26D8456DA8AFF0470265862D875E210B52443A7890ACDB74C5ED2CDDF6
+6086728EB26008B5950A222C16AFAA6875ECA93165B8DC1F0AC356C2501339D3
+0C16CC2E713F35150216AE29430A12D906774013DCFFAB956E1574B1B82CCE25
+7F38C6DB93D7D92856DB5F58CF50EA72DB3808D750CC41530B65B9425B8DEA64
+99BB869EB0F869CB1D731CC21C3BA49063F3346B49BAF1DF1F40499407AE10E5
+AB47583176425A873BAFDC2549C625827DC1F9E8CDECCFAEDD054459DD6D34FA
+8141269ED7AA4199C9AAACC8A3BEBA726268A809FDC10D8D890865F025A07297
+C93A8ED9D33B020B0949F70A1D91794896A69F1DD3510BC4E8D2CDD843715F68
+CAFFCCC6C2BA3E4EA1B38D44AC86EBB6E20286C2F947EAE09641734F34718E33
+CF30B1BC6CA76C404D5446CE475011A56EEFCD8424C0729EE6E388E5CEAF2EC7
+8F2FE5306A65A741E49885EF65AFCF09CF14B266097D263FF411441AD41D5E54
+18AFFB37D8EF755ADF88C0066F2A2D53417C15531762704976B1FBBD9A4BB6B3
+CE17297676BC02FB6C65C2C9CCB358A33751F2CCC7731392C1346DD92FC504B2
+38B454AAA5AA5CBC7674153FA73417C9B99B5C82ED10DD089A2D60A74D40FA2A
+BCC8B20D3A33970789C9CB86416CDEC539C44D00F9A031BF528F1638BC6CAFE4
+FC844D35E38C1FCD535555C481DA4DAF2C17FD30E78CE36E2B08A8E4A697DC23
+E5B0B0CBAAD8858B0C7F126E07033BA29AF9FA1C390CB52F54BBD657AB70347F
+BC8F0CB826DC9CEBD176336F83B078426B8941430ADAF3CFA1E68FD38601CBC3
+5CF1D72FEFB6FA25569E9D373A4B54D415EB6075AF573C0F967E66FA41AB2B86
+A009255D9A52925D6EEE14E5091DF0243896ED60CD47F5B969AEC2BA6C2DBC68
+12D1F016729D399F25A0FBEA61B04EB61F3A5A9BB46907AE073CA2954E76A464
+35303957628C4F28D28EE6F4215A1D4FDA2FC4B58113C7147A0159B4BCE41068
+252D358790EB3A24854B710A51141180EC9523A9AA48C97B4109EE65414EDB76
+203DBCC8A8F539C4B1251C7CA7944CDBBB6268E2A22D43A78D23D188FE9695AD
+3ABC1AECDCD145A031F764B667F6553077B61CFD117E0590FDEFE61B75514BDE
+BEEAD0FEC34E39EF4D3BA7B439D95EF95E6ED9CF3D61A8040F5CC9D6201BCDB0
+AF9D11D9FCE140A59E43E52388C75AE52F72C9347E7C6AA0684C023608C1437E
+BF4C64C562DBF57F42BAF80CF625D6FA69A878EEFE8CE26F0587B0CA2451B116
+EDD05672E4D180715A09E332150BE842F9D3D6F2A5AA471F9A7D28C4BA5F63D5
+FC01C83CC80F1587465AADE7ADC11E53F0BB47E53D32581B18CEA701BAA76777
+94AEA61881BC71BE8EFD40D32850D3C418692F339D677AE9387841189A191FED
+4B06D78E647A030C8AA616E6780A4E6043C450F325C0C08ADDBC557DD3C5B754
+9FF61B473CCEAB63A766959147C1DB01CD3CF51495B9A5A8F6254252BC2BC689
+A1B3D87329149BFF33203ED2108AB94198F2B7B5BF5E33989FC746452B61200C
+A25A22F3B498D3B571B74E3AA7E87098AAFED31EC64EE6CB8F2C5EED08A76B70
+16ED4478F5B7ECEF238AFBA910789DBF82C5235F924FB5DB6E8B60297A7030DD
+348DEEDEBB1B069BC8AD462DE4AEB2263FD750EA643744D2FB5D75B2EF5D6F3C
+858036E41604714E2F767A81EAEE69A109F98B84697E898AA52524CF197EB9DA
+2C8CF1A4CC8E06A71F71D99A5B7753AD67598EB6B6670BAA14FC0191CFDD5943
+714C16C9694C96F3A1822105EE01B6A1918BF516B33D21C53493C099E69367D1
+23B978D0D264351F07B9EA917DB5B56D799E7D0B1343ED8E73F7780103FF2F1A
+C573CFB32D52B2BE3B87459BFF04301D749EB91276339C3ACE3F37250C8C6ADE
+5E085EB0A9A93066247AE75CD82735FDD881ECFE4AE25C6CB1F03A5A334F74C3
+AEF1AB9D0B2CB2220A660B10C8AD2220343C27A41EF49B537F572E8A2C12D683
+5B65DECDBAE3E7E8982512382EB968669E89B7A26DE5FE5420A855210D423F0D
+4D35219A26C377C9F6B4C388CFBCF781231B3C5C23441FB717386F04089E6AA6
+5D19042AEDA148809F9FA70264A486E51424E1A68DDBA50872F16685B8B79309
+CA9B6CA3B9C6AF1AA32F482071B31CC86D5A7A3FBF9817B418DF0CF04CE96482
+106D4BB25A7B2F9D993380C539865BD9BFAAA33122276CD8D74E5372D7173D5C
+DE306DB574C60DE3750F4DBD1B6C0392A116B25416BE011850EB908CBC79A756
+A47D7158E4B63C19DB9CED992FFF4867C5638BE057DAC427EC2466CAC9AE9FF3
+F3C5EAB8796EFE656EFFEC8BCB20CC9031AE4286F4B26E4AF996F1889AAC5799
+85F95017DE45D0E2742E949B4EC713E630DF222EBA129853688F2B56EE78B6D2
+DECCBBF94050BB475BAFD67B29CFE9BF0410013771ADF6BF4B63E9B434CB5A01
+8E8690E56F53A69CFF418CC1A90E4ECBA8799C2180FBDB746B9895B5FE682903
+E919030C254EC87D60BB4CD6A3418E48C70FAACB1A2A57DD8AA748B33A3477F7
+41E7D3B59570909BE5013C4B0A958EE7BCE31CC37879A5B3BDDAE37EBB8D112C
+3494DEF65D639BEF5AB16EA1DFDF48838A7C12C8E65503039C073AFA1C5E2349
+D590953CA352555C622DF0BAB3088B6A35CB071E342A52F5B9AC14B1AC55DFC8
+242E27892BB0B3AB511E2893F9D3BDA2482F2E48E87CF74A75DE9C2F871937E7
+3012B101CA495C8E8A8BA0968D5637C6399A70B4CF303C524EEC8CD2C74B8C68
+9DB8C5B97242AB0B2947A7CA01158B459351C14CDFE26DA813FF13020A21238A
+2077D60836AC294139DE1E794DCBB139DB4371231A462BCA95433DDCE36A32F8
+2A5D5B17491DA3EF3D221E0CDAC9AD7552FE0C2594F761C66C623E17DAA964FF
+5C9FFCEE227E0230790970F31202BA3C640D2257AD91A5B768155817ED80353D
+21D1E20C5E5A73303F83DCB512EBB23916EF1223BE179DDDB849C65170FC97B7
+6955B9A102C08B67F473B660D774541C8DFFB7E2102F817A8EB105BA0D58E630
+262DCDD30238C7186C6344EF08641F7EF2DD7DAC72B59AF9A7F7668178EAA14D
+DF8DBFE02580F46B2A64FB62C2B8A3B4ADF1CADBF68D03DFD1DAB7A42E91073F
+2F8FA050D3D7B69BD57833BBF93E1EBE270443060246A76CE1FC96E17BE34DD5
+02B5A2BF9F3A93A4B971B091021939B843FC73395BFEF07D2CBFA457923C567A
+84C88CC82171C44359C3995B634E0FDF0A28DB49FEED73D2A0E3269246CA851C
+D68CF5BDB6DC3D782A20B8FA65EAB248C85A5B91939927341DB22F403EAC7FE5
+2E834D407D8E57940927CC903CB2498F2C74DE0F5B0064297401AEACC6F45652
+8CD49B4F1B5860C97DB0BD4C7463D077B8B19DF1D4E4BBE44663EFDFA19FC920
+FC5F92BE0A5C613032638403E2DCFE808D325C414DBEE2C6EA6D4CB11F229EE1
+EBD6B00D23A3979481A360B14FEA79E3D44B05C6BF3AD33A536F28E59DA1AAD4
+0E0B2FC13911E6A10D4F8489A777499B70E6F2A1A8E9A93DE75E1102DA0824D9
+1B40CE57F1C6F2E9653DCA190EA110FB77EB2EE0B6D7945D040EBEE217E36D72
+54DDDFCF983C0290116D8EC18D609A1A0D4A0857E746F7735841B225A5C1181A
+5082877E021210AEA5E3B635F64B8B4386728CD58B94B33A19E102A2A5B4BC05
+8BFBFE525F4B3DDE0B188636A72C30E1297D656E6D1A5466B8FFFC22E5CC2F2C
+74CD8626A75274A5F964F6683CC1459527FB11DB497709E7830DB225E0D3050F
+46E7B48844223A126E61049B40B34A7213018A4F40B5192FA57362A8A3B6DAE0
+E7ECA8F762E1E5168FBE14F187CD0D3BD765F66891C72F449E160AC8DD9C451A
+1625D5E2458AA61415711B9B6F6A167A210596CB8A4E488746EABADF95ACC554
+F62B1ED1C597D8E68B89CFB8CCA711CF64C6088224A0BD7A676C7C31723A9DBF
+0B75D4D8B84B22EA12C3CABEE055892EC43DD3A6EADE451898C5F0A16E78813C
+0EA6DFAD0A7C18D98F9DC47C2027AEEF2874EAE0DB7C8FD1EF53455C18B29473
+84AA432118F8BFC4F735D06D2C694E47EA37A1BE2564F075401CEB9D1BD20406
+94AA36491A35AD745E4F1EC2DB3382EA47731D96556A2593E1C4E40A688B91B8
+96A15774787E671146FD4BB980F0A050ADC8E96B0B1E542C5264C149DB51F367
+7E2C37FD7E78487A7922BE4C765B1A663E1E7F9D4566D8061EBF9C3B47CD2D0A
+F8112BED035DD4C685CACDBD7444AD80289B167776444CE2F7A9FBC07EAE5984
+315830AC93BAD227E171406805F1094A9F2E99F4DA1C8310280E1B16C75A2759
+0B99BAC148ABBAE7356BAE5F69B1AB771E52A6E8598C645B15982E955ACF73A3
+274BB63F4FE97C67715903A5ED90D49C86C8CA12E96CFB391E11EE0939AF26A3
+5EF17D64E6F450C9A08261F440FCF2FC2CF0017604E34542C631D73EB77DED1C
+2FEB3AF1B51C23299D14F68BD9583EC0B833B16A1780B8D0B3D7FC314E491C77
+4F859567122360273E7C985E77376A3BECB52F4947682A4129933F10F7B64130
+48FCEFDE01152BEB4F0F09B2FD71E602BC1C28242365764327505EBDE24ABAA1
+4CC3B444F43D6D48E1D12C40D565CDDC77399941A08AEE465A0C3F24E77B6F4E
+7015AAE26690F88A52F2BE9D53C45A1D4B538A6DA46FA14E68F2BC4F3C197C74
+D6057DF1662AB71F9B7914FB9C6B6E34845602159A99E575DC2162A5C8E8139C
+AA645B6E633F52752BD74E745BA5F8CF4CDDF0CE2BF45904EE29FFC8D60D2300
+9E83302356D42D42620BDFEAB2BA4FCA34519FDEF922012FE466CD19BC227B7A
+CD508CB211C41A603DC140A542B20E3BC5B4A611447531547CBE0FE4C2E9E42D
+CC56D647833CDF1B07C405E96924884B5905D3CA08D0E70D1FD04D99DB5E8BC3
+FFE8D77F16FAC4DCE0B1766091EA1DA0A6E911634AE4B43E4AFE47BEE364DDA9
+168E523CDDA911768F158DFF992CB991F465C25075556880E6B4F79EEB8B27C4
+6DCBB19CD3BD27DAB02017E6E194492F38BBC94A1E7E954ADFE8AF2D5B6920A4
+FBA0B4F3ADEE5AC28694775DF7C2B3FE85B976E960B19CA249B80B0CE1BED8C6
+3826885715AD4486AE50245D6CEF4833F336181003B0D41AC116DDA7F1A1616A
+9C5F15DC21970417920FF5905D8D802F5BE871475C6333267C1DE994607A30CB
+3E306D3AF236DD526328D41F3E28B35ACB8BF179C926711E414FC1E2AC1B0F24
+4A61E9A921ADCA0FF3A72C83E2F95DA8B279D99D4691809800653A24EB43AE93
+9515764D9B9DF032BC9E8C73514175DA1F44003C349405C832434C475D690F67
+208BB19ECD9B35C17538C85B02BB456014F21650B7DB3DD5B3346C2A897BED57
+37D0D6BBBDB1853BC45559D9173075C8E18DBBCDB8FEA213B45B3DC6D8EE9DD5
+1DDDBA540F71140380DA1BD5DDC7E8741815F873A143670482B0AA8912BE1F04
+CB683169BDF43838C1A5DEF9F3B9C151B28FB389D905407653D726A42871A136
+28B8D18E77DC96E76493A0EC5E473E0712FC91E4D43B18800F512E61B4175B7E
+2449B437C029BA6DC9424BDF5F913FB1E33068219A8FDE5CAACF57A0AB1D44CB
+0A7A399381E7664110C96B2FCFC291291ADC0C1BF64238DE4A66D1B23BF715F0
+ED7A4B7F481EA7EBB203D581A97ACF8E18483896483E74E163B341E905B27FE2
+C1D27B0D552BE435330F7E72E660CCAC09032E3D72A0E9BEC97837BF28F6612D
+AF13378D50DF59A9DCDFDC0F4975E6C35D9A603060A8DB4EA7CC522CBA7275FA
+336472B4AA0A621084546E07866B63A3F0224A4F8E5DA039B6D4FD0B3618EEA4
+CDC3A57EC7065E56EB92E4ACFEE540F37E4CAC0EF20388C397B62CF307A64B22
+39264A9404B8E20B217012BF8A7DF7E1324606165C5C3E078CCCE03D88BD4ED5
+7CBAB8EC189F55950FA334EA7E350B1E0D434E06091C1FECFD90A6953B376981
+710FB2ABC060F52DFF27DB9DD31A95C6F1AD0BD89BC79DB87D13F7D4E4A6933F
+2E1FF61607D47BEF3313291D3CDA04002C3678BE02E71C2738963BA3D2A4DBC0
+82324F9865134988747454B088E02D9B828A5A9B3FAF6DF8FE62F435FB987C05
+0B1CB7FDBA0E2EA1550B31D2812E31F1A3E86C28A6F1DE8DF163D32F16C4039C
+16092FF40E6C3B3BE9FFE8B96B2D86CEF8ED185103E51AD56923030F687E0F16
+1BECEC0503994506C4D7689CE417ECD72D3C8DECA0AC5631D17E01647EC67C54
+7E31FD888803772885DB314BCF62026EE83217B70BCEFB7A2CD133400D588B0B
+6F90FCEFC92CEFCC5464A1C161D0658D0661906C76AA29DF42FB997BE5D9F6F4
+772BB212B263861A83552712281A3643616DF702C7B58D9C18E6F48DE5B1C8CA
+19A69DBA890AB4CC2EAE495B3B49D0DBE6E903FEFD3105572DCE89977735FD55
+9D142B6476EC8CA1DF205ACF132915309DED371D9543D3FCB750609EC938D2B2
+7CFED965F5D417821F04479E9A18378EA1444C0048554169D36F3193D8889BAD
+0E66B9C5500FBFF134349BECF2DF5153A092F2766BBDE15632042985E2B4CD66
+2DF3361858AE6506FC83C9541C40FE1D2D8A8C35AFCE163B03FE3F84A23D5B2A
+DF514D65BE2311C448E37A28FAC152CB8C94B2B19E6A11338274892314AAE383
+F615771BCF3E99DF1AC6BEC0F2407210FF313677ABA95BEFE3E8C0142AFD3087
+A4CC3059005043461CB30DA7B80AD17D4E4AF7628F71FAB6AA5A1A62209C8E76
+EE711AEC2ED67C2583AE9EBFADDB286DB8A45D71F91558ADD547D44660934C2D
+D99779627F363F6E16C80CE3D3753D782790DDF18DAA2FC60FD84A26D3FB6025
+59CDA60622461AC11F4185A7F9FBFACC7868F8BF566C5AFECF7D4E757DB66D86
+DE3C98B6D6D868D1EBB28DE7F77FBE97B8963FE9428EE51E6FA0F06EB20524FF
+893C8BD134E2E5C559D7C192E26A4874CD0D7ECB67050498DC386BCDA802E8DA
+FCC9573BD685C388D4F4638AE2ED722CCF66A87C1DF7360EDB0654EE88B46ACB
+586147C35B0561627B78C500BED64D8F74A20A7FEF2138ABACDF1BE3E256E635
+A49A45B6FDC1556F416C00AA5F05983062A8523E65B978EC671731F0AC5269A5
+39D68DBCC1F7DEDE83F22FB2951BAE53A06C0CDB7559BF12D60A15DC828DCC68
+67B53F7AF32CC0EC6EF8FC2832C718351758D5DFE62361D2C8B102496F78EFF8
+A0D24F1D6F007184CD3B2036131FA761CCF18F717579FC32405F9481CD438880
+6A2D2F149D31DFB17A22338F8020E64D7314F569B8194950D716A96BF8FDF120
+B84705AC0576442AA29B6293AEFC754093AC840607FCB099AB9F715E8A9CE0DC
+4B5AB743106DC3E32E474E62754604D023BE6925281722AC57D2B915A02196C0
+CCCAC0F6E14C5BF4AB8AA489D3E804785C667D03F02595FB96D3FDCEA0E9EDCF
+734316DA2ABB562C2497A9E0DAC1291BDD6A4BE9A0652EEF9A4E31B5E084CBF1
+5B9C654E98510FB06324790BC9A1EE31A55E6C02C44B5B18D2FC456C3B019D6B
+101E6D883B3B045AE7156A7498B25202A022BEF925E3AFC499150A9564A7337C
+8ABF868060F9DEB6177EB961A830A3A3556206A7A43C3718D3A347BE5624CCDD
+9CCD901297310DC734D0EF5640FADD971B156E8EB443C495A1D982DF5380B81B
+41F707E2AF9CF091DD285668376D23F72B4311A0CCF493AC73AD40CBAD7214DD
+E0069239A278B3682949D2EF36695166302C216F4F3F9C6C8EE1AA10B96AF432
+A468E707A958FCBD44530B0C56242D011A6933640F93A00867A2C7CB4F360879
+760E5A4AFC412B7D4F73DC67E0EBB107CD48983FC404966977B1A22B2B7421B8
+01AFEC07AD56FCED2A1E2924BBF197576F4B0A86F92F298B2189FCF4666B8DC1
+7CBA0600A36917146AC836D5795C49DFFFB15AF2759C1F4C7679C709AA045298
+36E17F87B30AD79E7DACAAA44E6D6C3352D62434E473980C233DFEEE0DA53A60
+54B9813B2EE0C68192BC46D8F81C241DF149D93F1AB4A0CDFACAE30ACC842C86
+785FED79535A24967280DEF6AB941B0CEEA4F62E6B71F5A0C1263A03F5C2E339
+464A441AFFF6B536497CB42154A2CBB9DAE02A85BAD97BC2B0A4C50203B64A0E
+47C234713A272241C2738D81FF39A0B2
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMTI10
+%!PS-AdobeFont-1.1: CMTI10 1.00B
+%%CreationDate: 1992 Feb 19 19:56:16
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMTI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMTI10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-163 -250 1146 969}readonly def
+/UniqueID 5000828 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9E3948FFB0B4E70F212EC976D65099D84E0D37A7A771C3101D6AD26A0513378F
+21EC3643079EECE0C9AB54B4772E5DCA82D0D4ACC7F42FB493AA04A3BF4A1BD6
+06ECE186315DBE9CFDCB1A0303E8D3E83027CD3AFA8F0BD466A8E8CA0E7164CF
+55B332FAD43482748DD4A1CB3F40CB1F5E67192B8216A0D8FE30F9F05BF016F5
+B5CC130A4B0796EE065495422FBA55BEE9BFD99D04464D987AC4D237C208FA86
+0B112E55CE7B3782A34BC22E3DE31755D9AFF19E490C8E43B85E17ECE87FA8B9
+1485831624D24F37C39BF9972D74E6EC4784727AC00B9C4A3AD3DA1C22BD6961
+7E0ADAF55422F22ACA5E4DCD4DF9FCD187A566B7FB661D0530454D0DD6C6C50A
+7A3875C6CBF8EC7769F32A1F3F7FC1C072BADEC97794D4E90E0035282A170402
+356E5A9CD9ABD80AC4342A5283E458A7269252F4541CBB6452B39ED54D336D0B
+19928E9CD1AB26AD83EB209E2EC75011A2643813053B5DBB0246097C4821B5F2
+C92554E9140BE35B2DBFCD98809A8EC9FC910FDE9E0D86457C70ACB056EBF90F
+244DC0A5BBD455E15D6E3180311D52CF50B0BF7D0A7F64F3A1821E0AEDBC2E7B
+AEB549FE1D51088C153799C6E089B5D5D65E1C4E2D2B430CDF1FFA23CCB25D95
+5C4DD885310A706B320AB25C8D742C6F29953254FA54DAAEE60ED477877D19BC
+D28E9AB576B0EA088171FD000B60D73B3C57F754BC07EBC9BF751B7D2B32459D
+993861B7C4B0D98C422A11BECEF76F4EFC0ECAEE89723E6CED53E3678D733363
+2DF068AEF0FE7DFB57393BDAA439A6A4C396F86032A98009EAE1247B7DE83B3B
+E46DF2898598FF5E6CA6953127432A967E4FD41CDD60D6E413059A58FA556EF3
+309178B57C16A763CFC9BEEC276944BDEA255789EF4E1ECDE1EA43EEDB955513
+F42EDDCF39AE522A1DC2D80B2772B05DA60F3DC15A815A6BAFEDC399C7956E75
+3851CB3588E22936FBFB63A58300298B11C45D82385C083D07AF133BB1BC941A
+FDD9F34D5E0B8087EF2A58C54D8AB7580EE3ED58AEB83B72CB9028F472ADBF11
+05A77651F118824F6CD00209EFB60C1D32D46A78E8C8DCB8B0E742828E3B7D17
+DF5200D68189C918C2D1E2BCE076599AF2AE945C35C8F442DBFAD21892B5A756
+B1B5447FC44BDB516C6C2DA3C7BD5593A7DEB7BFB32B71F78D0A99E9BDB58BBB
+27B4E189F93BFE5F98476CF276D6C72089E75CF8281A9EDC43DB22A2E1C11402
+CDB1D75D90BE00A7C4BDAC69B136BD53DC921F1419BF36A9CBBBDF351E3AC195
+0186E0DB76B4D664B39CB56007BF7CC58259B91C28C90B607546F34A931CFF89
+5BA5D331FB4CDAB16DA56D316960AE4365FA5013AFFAD16A082DFD623F4ACCF1
+CEEF55EABE62B9D71FEA4C939C827DF689AEF91AFE012E90413C9D8B49773B39
+49606EACECB4F53AB596832AC23CBFFA366A88A60D10A3011A999B872A3880CA
+2E1C692C89FBB545B4F3E6C5F568299E2675AE205D0E6C93C4C9832125A79EA6
+22F91C4376F42BF4603A7ADE06D7CF081F0B0A5F49A334A020488512C3FC87F1
+81CF883C4164BE36FF3B34724FCDD904348F2C9BC196025E656CC1A07B07D0BB
+7C6AFED153A6CA7A179E7993196BDEDDCA0D95AFD21DE2102F063093CE883CD5
+DDE58D0CCB511A43BA6C0947A70586074E4A5BF9557344CE4DE3A9937D9106DA
+A24BE4DB32809792B9E4BA57EEDE9AEE334300C62D5A6D6DA71E1216C6A8C201
+625E61338B7E51B97A80032BB99E025A8593AF60D3B7CB714B21CBF207EB3E42
+D25430742B67899C0C02CD6CF7E52D30E963DE75DFCFF3BE15E1216AFD895FB6
+85CEF129546B29296D37AB0083F58FA6BF158602D4763B7828DDE8385FBF4D65
+AA436618AC9488BF7438441A3B516ACEE9FDEB55CCE95F62754670D58FD2B2CE
+3EF204AD79B85F171CC13CB00F869B098445BE458B1761C6492CE9A71F6512E1
+5A6FBFBB03E6A8DEE52A76BAFF68B1D60F9D7C25AAEB39ED044302DD0AE8EF51
+05ED3EBA032B0602C38C17C58B6FB4B70212A60C758847D3AE9C5706C9A9FD57
+63F564F0853DBFCF49BFF3C79DE79EB9F9280F019503C014B4E26DE6977F3B87
+78668CEBDB5582D26EB14F7956CB8053948B338BEF9A2418F138D6141B1C34AB
+86377A8D22C961362990784741BE3FC5924B67C145A1949738B10D993B876CE6
+6696D74084BC0024925930935CC35186B33A6CF8475F05EFCC41A96C113F23F4
+76E90F1F60A3D331F620433E4591DE5B7130F7AAECD328FACBC143763179F5FC
+D14EBD8C56827C0283AB41533547D4131657566F84B711D3B964A7326E4B025A
+1DD43DEF7CE210D964451358AA0861A1E4630ACA6F9C38E2B9AC8284D9F04392
+CCCEFF49EAC6C48510508426AAF205FD001F9D856B4C6BE5C56072BC6DB87831
+07C844E9BDCC624322649756174E0100E52F1D721D68F4046ACECDCC99A5EA80
+E052073BC6F6B9A21A379F8117A912002EA041FAD277D3F649E54926A461AFE6
+E467DBD34AC5D25132CB740A039171C898425095C73652CECAFDB3AE62BAEB06
+67BBF2236897C76D054483BDE151632B94AB786F145907FECEBAD8BE87A3E35D
+00963DB83C95BE3BA5A80AC5DAEF9BFCF91AC366AF1AF656DF5AE7CD58111EF7
+7CBFEA717043E4783F9A97734B36608B73A86FACC5181A2BCA6FF78540FE38E2
+89C501E67B56D761DD0D4B7A469A2EC70D8FB9DEC6F614E59B60C76A521F6F68
+2C2C6AE887FC2B628A9435D28FA3EE058DEFFB44BD47BA00A27ED19F0CE024BC
+DD95E4E5E7C33E8FF78FB92ACD1C74D3467A97F6DE8CB2FFE0EBBB2F731D9E42
+2AE6789FE328A46065CDD109BFF55A5929632313C2E4BAFD3D6C081DDEFA0A46
+249C12A0E48CD89F9430F165D1B43E19D932D54018FB7B647B5012281F4A3901
+484A3185A532480CA2C2279467D98DED2324D537D955081F7D9F44BF1D6035A0
+AF5015205811787FD2C6D2A9CD000FC69EA75C75DFFE67F55E9F33253CF51D9A
+D4CAAE36289A76096D77C8129B3120660A7D2C19A28305FB6433CBDF25E60C20
+6D144574D1AE5F0EFAE08F44796C293C4A8E4E887D56EE8DD0880B7EFF0B2CF0
+E91C9FE8110AB03B06D2119175A9CC71A5F1776B4E1E26D2BFEEECA991B48816
+D22CD9567B74B1145F9B2F2CC78371249E6B2A18A98CC4DC361B538477EBBEC4
+5794FF26898300AACEBE7FA8C5ACAC5AB09DE247384BDF1F46A99FF8291D2C99
+B101B6ED3BF7E9C2609BB959CC1EB76E773A061AC2C22C853FE7D886362FD32D
+A6ABB0989643A87CFFAAB3A02E1246C9BE02FDF2F79F22EE4A4E17018ED7BD90
+2924973D68E5A4B169BBB08CE3F636366130FE44BE09C362C4CFC0FF4ED24DBD
+8DCCB8CD6776C25CC351B0B8797F9FF6B99866991376B37C2F044FB2DE7458EE
+30459AD1C8DA0C3EDFB5F82A1BD6BBB496739E92C00F5646125EB49AD87033F3
+705F37DD979AF04061F47E857A023C7E323153892FFC0360D9673CECCE18193F
+0805D5D8E8958D4DC092DAD98B54118837452AC8255A82CC58700D6C9428B504
+F0F1EA0791F129397D76344FD03E222EC1C7DCFA3543B404081E4E70583CE119
+C79869447470CBA6793A84948A00F7994E731E46FEF076245A8C0F76EAC09BA4
+C573EC15A7357878C1AD395E79B908B9584AD4769E55EDBC4D18A0CAE1DB0CB7
+40A2EB4EC497697111CDF03C618EF369A9ADEBB6164916BEF1DCC524DBA46BEB
+E35FF44D0A2650856370A38918BF69442784CD7F790CA249758CB142C56F99B4
+27FA20662BF947ECE7086EB2F87EFB41885AB9022AD24EC67A6E641424814F0B
+418C7803B3B71B29293238BB3B2B5C641B72AF009271E187774683741AFCE41F
+2725DF9E3EE3FF7380200D13099F2341504F98B0916115AEF741033C08BBF543
+4CCF69A1A582CC9EF9C1C9733C94C5DC06478F160FEA60C68A6EA8F3D2F5DE60
+079241868769123AECD4EBFE3B906C16F89A569260D4052D5446FE8C188A5E49
+619C234412273DBD6820900172B6592E7A083663119AAB65CE2F510890592EED
+5D73BFF1CE257A51E989705B67CC3D02609717936618E408980D4EC442EBCC3F
+CAF52F4DE6FB4C052214AEE750CDB480B4EEEA636F7A88BD05E7B0A58ED012CA
+9FF7559E59D47532E17AA6D9C42302CDE517F214850A81CD54B27DF0C1ACC6EC
+70AB93459AC3904CE7612CF8DEAFC606B1F0C51FA54251E16212FF5EC4C9DDB1
+15B7428ED1EF3D27C36011C18CB434E3F31D0B649B7C4F951975AE6E7672C36A
+79F5420100F1C566879988CE3A3456114298F21858EA0EA7B8E8A0479994A9BB
+F1647A44D8FD3C9C58A57C1212A97A879ED224331B87CC06D09CAC3E5061250F
+FBC38A3E28F736B383FB9F2DD948E18583D19903182A01E5A334235CE83A5275
+8706CEF2A5F758487AEFFB9DFE471A8D4025CB51820682E1C34492EFF5D17183
+B3D6AB7F161002BDFE59B52D4B1EBC1E017A5E7954A9CAE3D37FDF507BC05500
+FC035A803B279328CBE1CEB4558D7D6700EAA224A8FE243FC2822B2540441413
+291026BD1D44059A6C081E7743CA235F008711DB2A0B44257C16202A8E9D66BD
+ED76FFEBEEB6287C557A046AF8CE3C3D77C278CC5814F8E94AC1EAA90F4BC1C9
+675181D5477A7C3D2AFE71448A5B64A08BEB94886CAD880B03AD2364AD2F0368
+9FF8E124078978E8790BB40F92E8C793E866DE158734B33C8E90E48BF69E54E3
+A147032DBA0FF561860F3C0F6D8F149D06B9B3D145314CD8399D849FC006E2EB
+041B3096D9AFBF62D3B356940D02066F0E2A1D9CF3394F3F6FD0D88CC0120052
+79F5C71D1386094CA41CB37C9CC35DECEA8AC1A2B0AC91ABFE3B9023F421F841
+89EA293A51382E959081D5B73D659B02A779BA394D72D2D6B969D127B871331D
+E6D46E607D8760F914053B06D69B98ADFDD1D9C0B91664591721B9EDD8043C03
+3BEE6A6DF92D4A27AC76BD858C1D071FFCAA449F07C987661B0DE79E355B481B
+4CC0B66CBB18859A475EFAF07ACB14CA7A886759B07A2B304FDC182934DB1784
+F22361FD857CD6F85A9B0B78AF5ED660F59F62DBC9680BD3DAF15CA4E7D94568
+1393C588F516577120D4ED9F8AFE2CC27ADA19BEF66C5B9FD8B0DDD9F1C54F44
+FAE323E740C0769B55754968BF1CBFF78E3F2FEDFF8A0CD4D0B7D549983C6AE6
+1227A012607A9D0993A065E0BEB706FE620803E70E3B1E2EC3B41685A49C0378
+BBC3580FC6746DB61A66422CFDA6508C7D67B61C1315EBF5C82CA7AA875E72D5
+CD5400FA3B0E9AF142BCD52B68A16897D27A47C066D2ABA7077932E8709A5CA0
+117EB6333645E3CC28A94FC2ABD242E7B22F5E8B47286AA6E16AF239BC300C30
+6FC6700AD05EBFCB4B86B0855F5302BCB5FD032B7B2F1BF3301635B665FC02AB
+0B302B397C84830B73A990BE325EB49A964F3D7CECA3963B705908795455DA31
+98E29ABCEAAA7B1131E2FDBA34498FA3637C4E37DB67041BAF1A2506E0998B14
+8DEFD871CEF490918633C66D4CC6BCD9023726009D25FDDC3A2DA4824F381788
+44D03B49F5B9D8AF32E1B09C2D87C0C1FA766F3AA25D9194B754265BE0DA16A5
+4425EB9C52541AD8625B17F6C5C8B8A4687B0FB22990E1E523497DC40E1549CE
+3BD7275BFFA9581411987F87CCC600A6BC344DF106733D3889B686F1D837FADC
+2FED3C087F5EAF2FC754E1F0AC4FAFDEAD638F405ABE993F48B98BD3E3CE5C38
+DAB7B0BAFF47576F83D5AC47EA2A83BB5B8EF3F523D2C8EC1468B2AD33A1A1CA
+CA48F8E45BAB4EC61AAC1D8309EB784A9DB79F9284C76244694C32378195B037
+2D18AD08A718EA1335EAA8A048B316A5B4EC9EA095EA56E71A7851B10773330E
+EB000A40190CA4B45179D50FEA5769502D6BD83C2FC1679FF8CEFE9BF64BB766
+5C3A4998282478EDEAF6E356F055851C7BCBF848198276F91077E0E17E1EACA1
+5A520B49ED9130B0F3007BECE9F8D4904C811746A2BA9E828CE29857F41FEEE3
+2BBD6B704454588B83C42FF76479CAE10254C0B1D99A0E7C2D8B1F6D63179B56
+51D8561482A1AEEAADCF2D37B935DF5F612A5C55C7110B0E40A1C1C6656EB310
+00AF637CF0C10D138A6BAEE4370A5EB2DD3FF697A78CA13745AB4E0B8FA81C65
+91F86144F69153FC804E0B4EFB2B65021DB11BC25C5E8AE294BADA755191E2CB
+6A96639FED9533290B4014998BDC48B9F16A3ACAA8B35ABCB9C69FF43E07E4DA
+36D6AF63EBC07FE92BD83EE7A8C8BB1838F3EC742976930142B2914F87DB65FE
+120CB56BB54FBE5F403691160DDCBBC38586E0579CB00099FA85F273E84AC824
+4ED5AA355C0B329CAF1C643D581B504CFBE56472F07360C4F9F53812DC17F72E
+304C9CB1DAC04674886FE9B397175465D8BD98AD5A33D1F6F8AE6293A3DCE9A6
+D243F90C1967344E2481ECD621C087C8A4E51FAB73C317250BF03BD5B7858C16
+B64019248C46EA35BC868B30B57392A6B2C958BF200876B2506C70D5A3FE9D82
+90A9605B4AF9B82D059E79F289A97BD4EEAF08A5CDCAA1F42F1354166106FF4C
+55E7D7C9C3815339A78C151F8BE28B5B72830C1970E73D01CA1E9294ADA2CA4E
+9EED01C7BAB0B2CE6E15C203C99FF5DE46626BA4902B74DFF412DC620D168919
+AA1B74FBEE23F3E3A0AAC38E3C63E5FF8591304CE45DBCF78D9FD944E0EECA4E
+8E93D9925B5CDA25762C3A36BC21044A038708C94D85C4BDF279D213D67C6B8E
+42A2C95A789948DA561BE55B0CB78E397077C856540660B3B2F2FF3071F11E05
+A2A0C7381C1BE8FB8D653E0BE90693EC4F406932728F615376619E70CEDEF3F5
+B343E6788B14FAB1A23072F86D047127BF63A59146740A53F393E36875E4E999
+02A1F9F9933E1D4B851CFB8371D3C4DEF0125F3FE5005C510D01A961FBC84C31
+D0B73987B87FBF339DA767A1F6FEA6730CBC88A4677EEB0E8DC9BBDB5EC5AD19
+9BF0D5575702DF52966F6A857F71E926DD28929A2CB61B223992378BF8096A68
+8FFEC0C29AD8B5F979EA60CE3274FE0FA47FBC8A6490F5076EF3353BA417A9DB
+1BFF54E9E1FBD5556A25F2E6B0FED1D17862881D2F75C9F3E69189E14A99BF4A
+BDBAB9CA63BEB11BDA144024088342AA6E71867196C943E65BE71E033E8C244B
+6335FD2B8C28FF88E21062529E6F5AC23E365325A0B8D3AFC4DB44B571FA19CC
+CF2DCD45C08AD70CE17A59426ADDE6C951738C9B799D0C77C22BA17746E5EBD2
+AE1ABB1CB6A30F5811116709BCA486119E2CB903C57DB7338BACA190E89CD1D9
+942210B24B5F9F8B8D80CDBE04D66FD951D6B2EA9D1E0422DC5F8F068B769593
+283DFBABA5A376C8CD30DB5A19691DDC031CD1BA0621D0CE8BB6D53BC0AB1441
+F0FDBB73AF95E4E1AB36D5B71E14501572FD58F554526DB68111478D5DB436E0
+F7B551F55016B6D764CE57EBB70A9C68AC43F1EF423291A8A24CEF6B41669380
+7BAA2637D3D93B2110162CE93E5626EF99DC6B659FD7F87E7EEA083F91DF1827
+E0A59387775DF99B8938D856348557E409B551DB8E24A36FB253784B453390A2
+487629C7F24BFEE3F33AE6F00681812D529140B57EB1AE75EBE0E66F4885E81C
+D233A8B23893BD6328C21F0085D4FEA40575091360E50A2ADDBCF6C2283A3373
+D2560499A211A26424241E0B351D7D5377FB098C191C64789D913F8148523FBB
+F443921A211DBBD9AB4DDFA7E09E8960C7BAE9CDE4944A0029B9E1EF675459F1
+D467EE308CEC35570A67F2B76AECFCFC6E7C096C1E9B5808A4DBC7AE5A9F120E
+3C5AC81F5264D068EEDA0C123038B70448CDDEBFB6BEB34C560A3B37382B16A9
+45A0520330C266BB5FEBD7333709B93C1E22840BD8AE4EA7C312192103888D3E
+77A0B5C732A2A2D7395D385FC7D1E8D94A095B285E62FDB936479F7797E148E0
+B91A77C19CBBB484BE7A2C395F34A9EFB9F0589C21DA45F4BB6BB005E8E5B5FB
+40416EF9BDBB740CC30BB7A5ECA233256235A5B163E6FDCDE583530D76916CC6
+E6B28E720307AF57175B0BD3E5B200DA74670B9D9161544E60E5090D03046968
+A0B4A27A353559C3EB3FDCDACC60C5295173DDE0E9A3318FC008631622C42D91
+D130E1A00DBBA4293E0D32650897857B4685FA539CC49D8AD6FA54A3E82DB6BE
+5C318E92FAFD9087EDCE3119D2948A189348F0F6193C93290C3D183BDA2BB277
+3989B1919C8B22F281D534946CDFDAAFF39B5845702DC655DB6DE48AFB67EABA
+06C342C9230495F446E03403A90953685216A0420AEA6B6D7956F340AF6CFB19
+71C3D35BEFBEFB5ABC9258F5CA6693170BCBA34947C3CF562693C8B98DBC079C
+93E27E895FD346ACC19F263D7D9A7BCAE46A9630E21FC5C6DFA61086DE5B7006
+95F51E43DE254A99E7F9E6085E4FB6792062F9132806EACEEC8D6F6D008E1230
+0CB5AB5938AF4A308C80A5CCB70CA7AB3B361F7E3A7C8394B9762BF5541E12B5
+FB8A65B205398296DC0631ACDDA76B5CF10A095D78940B60F4E09B57ACCCC955
+847A4AD244925C5238708FAF53280B63C7F4DD34B05A8EFA8491AA384F661A08
+6B619749FD870B8608AE092517583146FE1DABA338FDFDE35804B50A96CEA724
+122A83252AC57E9A12B219EEC0B450F3EC27E206764F4281933C7C5626D2EE33
+A15BA50E1374072958A1701D2C306246778803A08A5ACCA9556AB7E746956A6A
+F7E46E9FCB859358C26E9BCAD0C2D451E15A665595D0830E13BB6633614655E9
+FE3AD007FD91DC1CBC49C12C33B30CB25E0AF8389DBE57BF4B3B5CCCC10548A3
+EC654CF042FD5A139ACD089F603AD3633F8B3C7B94ADBF3859E57D83440B79A0
+8813DCC62CBB75CCFE25E0A5C47C047231F8BE1ABF5A70B8DBDCC3721B427E11
+9368C1ABFC3A6E030015B0596D6847C81214D653B8AD541964BD4915B8D2B722
+4DF45BA698F15F474F104EE5DBFE17C83D585F9536E9B8D3615D3DCF7479B17D
+43842399ED94B8DD817D8F9A5C3AF33C9B842D3A50467F58CD5FC89088E19EE5
+7ED775394438FE0AB852D2A3ACEC0C4805CFB53BF74FFBE4E29524DCA4A7D203
+7E0F314BC99AF966F7996C3D19D12D587E2BFDE38E178ACF4114B5B0ABAA8296
+7024D0144B22E706FE59BD5AFE273BC259D830647412E5B125624F0491448F8A
+F2BBAF5C32350C270B5AE2405ACDEE14FF22CB6FC9283205A3E1F3A8467BAF43
+D5A68EAC87C80FF738E3E773B6273780574429377E1E82BC1AB515ACC18F648E
+AA3FFA524E1EFA2405E0163C28AFAB399CDAC72068CE4FBF08B899CE983ECA87
+86EA330D2F7E9838F1FAEC8FA03CE4CBC5DE741B019C4B68D74C8F2949ADC8DD
+C3A664F4BEF76B005AED313B993DA5A4F03998EAA1F3BD52445620379337AEF4
+68F6E4DBFF03E43D4E903CF50A6398C7E265626AADCBC16841F700171F64A4BC
+B763A42A2433BC48D6A6740D2DD09BD62B374176158CE282E37E7A80A1ED002F
+34CC8C806352B407987FBFBFD65C83E0B4C8BE924DFAD1A09EAADBA59FBDB897
+316CD2EAF0E9308FDAAAD446F6CF0B1E2783122BF0FD961EAD27441E0BCA70F0
+61953B65D96DA05B8ED5AE0B5CD76BD2CE8918B8A986E3FC8BB1081D71459C22
+E9C1016AFE5C75B675EE6B184A43988D6A4987C2FB10A30073B5D26D7238B8CE
+9BFAF3343E66D2E72E40F7B58DD9A01561CA4FDDF1DFD23F8FC472412AC1F9C9
+4E33B171FE43B1AB29EA9CDB615C350021960DECE17C183F1FA09E5110975536
+CE97FB4649F449E93496425081B3AC54261FA8B436CD9F4894EE88A67EED38DF
+09451E5E71C0ABB953B893632BA4B93B912D019AFB1D023BDAC01E005B26AE85
+1A11046D5C5F9B610EC931985DE69D8B2781B9658B685C7A1F932565012720DB
+6AE9D53C1B259068C4EB077FD2F4FFF6A42D078E1584BF7DA6E889D9BB13611E
+EC425CD55CE28BE1B4688113CCB0BC40C89CDAF98BEA3AF88EBA19D357F8D9EA
+7B9E37292817930885F8C8C56625EB88DD746FD75568AC1773519FCAD214DBDF
+00ED15F5989FB35CADF2CF0574BD081CEB0E03E17F3DADC84DA9A7CB9BE4CA35
+6B7BCD615CCC64DCF5C0C49953ED8FFE37BBA670C932A95DF1DFDBBF298A196E
+88B0710392552DDB7E07A4D1B5029FB053F9EF812483619BA4334FE193D99C89
+C8EFCDFE7383AF65713C779CD9812B286A9935C8FC8B1B3D29534BEE98C20C9D
+B5B6BA80BA9764223813102AE0540942543547954F1358705B54C4674ECB6C27
+5EB9A1FF710A9B0890A0B32D7E6FCA768DD089C91229AF42EBF1C1FE69C2ED64
+925F2227C1780CA79AA908F247B24E807FA5D838B36BF943994A2500E9329536
+910CAF8039A091CE48DD3FD0110B521CF519AE9C3B37EB42BEA08FA8FCF66F0B
+A89B26DFF387BF7059F73A8DC639D1402B163C456DA34FE2639D7EF1CDC4403D
+478332F1AA6D9930032132E0837BBD3C000A742812C6051CCCA144E0CB357A65
+F9C58C59BF0831C0ADBBDA3D2D1E531016B14A02397EF047CA538681F3B4BE79
+4261B235EB270E36FBA10C9F7EE02BE514595C55D757266FDD5039A9F3F18525
+00FA2AE6E6AF305C2E3D44DCD8A4C555C28BC3D2E0DA323EE00EC24DA6B3E542
+5F2A4A8B53D42D66D0AA2841C438C41921A5ABC84FE1B7EE7179F9CB6B3D9D5D
+570AB521EC20CB51157ED5A720573D128F8F88BB07799590AC43050512BD21FC
+4B11091E449CCB9A50C5FA57691C097D0C1177233FD114EA68B691D476DFD375
+7F86FCEE3C9A3EFCC10890EEB0AD83D64D3C476DD03596476F1544451F10EEE2
+C0F0ED7406921EDA9F0AE0107905AEECCF6C051ACA37A3D981E2D749A0794D45
+8FFE0352C1FB75FCB8E08B4EE312215C61F1790D339A0890686FB6E3FF66A6A2
+B49A75E8E9BBA7C156C3D63004BFB9847B9080603429E7F06785715C078D6671
+F9217934CDBE23C1A08A98A470E4091BA2805E265F0D07291F873E972973BEC2
+CB2F38D95C0C9C2A4ED0EF4809AE31875A28DF79F830AF5098AE9B3C68F9F618
+B4AF4ABF13DB3C5A042F7021B148CEAE13C07C2A27C1B5F69882DCF1C2F8F779
+7B66925A81137C2AC2996A6B65F6069EB1AC6AD9B22D36FB20037626FC7A5E32
+CEF61D330FBE2423966405EA7D9EDC1AF108CB845DD79F77ACC099DEDDD3C8BA
+CF8F4465A88D8ED8B697E2988CE9EF91A2787B4931CABD10299742C0C7FA632B
+996CC5A7839ADF83ED4B04DBB5E1FD5891083FFBA8A418161D3A82A96C37F8F4
+B8753AD95CB3C1CB90B6F5371209434F5BF3ACCFEE1892FD3DB99CB920708F0A
+4B6ED278E698E11B9804A8F1FAF11763B25F914226B22DB9ACB84E05C7D6A45A
+CE1793A94E0CE5BB279E30B032FC8EB209F88E0C990C3E5CEA6975737AD2A5D2
+73FA19477F087A387374CDAE6C233C9858A1A64A8A1A15ED53362963122D5B35
+881F9B6C41E41A49DF785DF2905FADB7730D30790C665A4BC947D75A1AC1B218
+DEDA
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMSL10
+%!PS-AdobeFont-1.1: CMSL10 1.0
+%%CreationDate: 1991 Aug 20 16:40:20
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMSL10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -9.46 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMSL10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-62 -250 1123 750}readonly def
+/UniqueID 5000798 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9429B9D40924DC059325D9D4CC0344F3F997A99E6CC0676735EBCD685AAC9142
+08DAFEC78BB41AFC2F1C219910BDF41D6279284EF600B69776CA15BC8A34347C
+30783C52AFA60FBE3E353E2AE354CF87B558776A22C776C7A0B5AB5CE1F941EF
+C2D9CAC37294BF407A671F10E4743BF842143F4F7DFEE643BA3BBD8BB9E3F24A
+BCCF7F0ADF8BA500620C81033EAE8C4EF2C1DEF13AC575F1B3BBB66F093D3B78
+5412B82B67FFA087AF57182B2230F9F2137180CA58A7D9B2C822FF04BE6CD01D
+43B2CA7058C7B953F6D9B5D6E91ECBAA5CDE1159B0E59C83DBAD96D6C8C8BAB1
+374EF652D10C0F3EE7104472C98DD3572AAF2D45A70BF7061447E21EE3C3BF23
+DF39C2D1B35B42CD5297BEBE6BC94F7C9DC6E61EC67E4F677256FED9064BD3E4
+B51A71B1D27CA4E5AA9E1D8080E6DAB5310711EEF87C40859FA935B19524AE83
+63B163FA8397BDFF443227FEDF7DB27DC35D89FB1C5E435DA0619A5C88AFC73B
+89A2DF5E767C5B536BC7167A840A0C32BD57A14DE69A7D0D819AC36FF32F908A
+5070F32983BB007437E3500799DF5E0AD3710A4C0000F0098D5BE99F2EB9C1C2
+C444FD9552D0DCA098A94B3BF176F511CEE13DB7EFFAED7C47B5ADCF8D4700F5
+7A5FD1B49560969BF5C44F3749370663A04776F749DDD7B50674D93254426C4B
+EFE264BEE7810EC93784B7C01A7F29EFD92547E13A2C7851A2E709FBD5B87850
+4A44F08F56A542DBE072D2FBC58D9E6468E1AB858DC35240E30D31C7AC13D6C5
+7D2BB634BEE96FA0E10F842B11A789F72A333DD6DDCB1BC23227EBC406E50B40
+30AF0C48E6359AB0C46898CDAF1118E46BFF8B00F54EACBC2AC262AB898C42B9
+2E080C10DE923C1F753B824EFB048DCA92FD4766B67B26B16F5D3AC6A468E0DB
+8C2AA0E78B6AFEBD9F1163E4EA89737CF6F78571531BCEEC6A6337422266C96A
+8CFB63897298C28C7E424601675622B1E2F3E818513FBD3BEC364E6BDDB5075F
+825E2D89597710B5E09AC7B5C77EDE18E495ED2B921CB3D1621E500BD9A99A63
+27C4AABC6DF6E431C4DC975EFCDA2A29ADEA478C4EB055DE2779E50344CA05B7
+3487F9FBCD69F456A56DAC05F4756B0E23F461F4A3BA376CAC5335349CD93F20
+981A243E62B055FE4584E8369E378089BC1A01D0BCD0E38F450944AAA0F89612
+973652A63109C215457FCB51BCD5ABB4688BF2395A05FF2F9565BBC21313CAA8
+1716BED90725F7B89ACCEDA617A87829BFF8558AF9CE54B1FFE892D230D269FB
+2EE5305DE6A3EC7103BD880552A61894CE5A3928FF38E0C4D59D8EC6A366F4B0
+8545AFB5F7F1C48A8FD74A637FFB65BE64B18C56EEBD9F693679B67AF788FD8B
+A571620C17F23427C6CA3C8BC38547A1D000DF28776748FE06B55820F199EA1E
+12ACAA0A4E9685F30F5224E3097A402ABD353353A8E76C61684C8875925A927A
+879BEBE454AE8264A84E9AF6751DF2A1A7C89DC4E75FD817216708B7187719FC
+893497A455ECA6DEA0874A891446FAD24E76EDE59A14BA7832D69DDA02B9F592
+C4FA0AF9BB1C2CCBB21F1153F1059FFE3341F25D5F761BA83848D0C0FB2ACEBC
+48CC87561372CF91E7C039D7E61C96666A0B50BB080D3598A33332B68AEE0585
+42E75DBFF3CF8F71F2ABB68435C86891234619E6BDA0463BBD416DCF67735917
+8975B2AED93E9C01551CBC59FF1FAECE4242B394F8E9C25743B0005C62DDDDAE
+39352C3F452D19B9566DB9799C4BED10C1743EFC77A895350A2C818727B1E479
+6F98CA7C9B11EED73EA223DD241B30D8F88ED5FFEEE94ADA01BFD214F59EFA3A
+D36D986B9D30FC6FA15DE509F1F72600F41199C6B5516C4D25326450294E9E45
+AE5462A28E94EB44B64EC51501AA60D1DBA324B286B7EC6AE35C37D7369E13E7
+D41F6C395356D35F59D4B8E631743270B4E0FB53480F8F40669970840BD48435
+1D6B8FA989E4B52AB4BEE940E0745531037EA4E105DF66E746EFFA856E5CC479
+7DD0C07E1FA399E53E370D4730884F4B17AAF9DBFC5AF570C25F99BFB00B8D76
+F10DB7192E876F95469B82F1773F45D8DCE62A22867514FB970179D7A63CD3DE
+D9F829DF67F8FBFAA02E3E88053B699825C4CE7E217A5483FEC220DEE111591F
+326A27E8CDCC42B9C9947FED03E331AD91B534D268166F77A17A1D813AE32BC7
+302B36A86DE10D92B9AB00931F2BF7C5B2FFFF84DA9A9C014556EBACEEC5BE41
+DCB12DE43071CA3BE8CDC8A5E69D33C6F302DDCD255A866B8F33DCA2B7D4DDF7
+9EA9863D66A13129EB8BDE03CB35CA0E4430A9E6DBF0C38916A6C74A49CB0B45
+27FBA09131D855750017E4352DEF5DA7AA117584667966E1106E0C7730722AB5
+F4A537923FACED7346AF8D557859DBFDC00566B9E2829E12D662EF90BBA3B2E6
+2094A45E918447C76EDB3A44C16BCCA878F9AADD21834E8B16C12B94263B1EDA
+2941C563B3979369D017BEC4FABB40F55F11C344052C181C5C35331F3F807BCF
+8E99E358F5FD7B3BB826E1C9E5675EC3118354C4EEC5959DC01168834906976E
+922D9B1AD88AB5BAED282BD3C9C65CBFADD2BF093A666BDA930DE0FE489F9A49
+06FF4FF0B396411A42471FA5198ABF5F49C69E2FEEC9265B3F0684D6038EF40F
+44C44692D63337FAAD68D1C2D8FBAF674F787A979AE6DBDB7A91F1ED30528159
+A7EB2CEE7C12D61495EB78862DB00D14D7B4FB79B3BDC900AC912E613F5EBADB
+BDFEB528820ED5F3B9F70DFDB77E81C556B13B80F3548564E4A4A326A0EC9CC2
+EF82D9F2D7C3330C946B17D623F4ADE6B8F6E3B7E8B027285F3B61AF3D35F7B0
+5FA680602984B791C6A36C60D0B0456EBCAA8F44DD393BBAB4552EF7A8F18C88
+FA2847DEE6CB886E3F911C55618D3EB0F8059FC21473D5461D62434E1B6355A2
+14DB5A709D6BD207D1B8A70616A2EEE102A33CCE5E09360329CD72E8E2A41C50
+2DB2E69A9B42FF75D7F2EBDDC7DFF4EFF79D1D34C4BEF4449907141CC97B403A
+A5206C992179EC2C5FF6148B2FC130E979C6EA74BE5768C704D03A62CAC05CB0
+69BEAD94E3668BEB126DBE81D2D028515F6FB07BDFB9D31914B70E490B6C7BC4
+C3B683B515812FFB1BAB05E679A4581D4C2F7F416E99E1BFF995DC208FA7FBDB
+E15EF5E846538BFDDFD1F7CDE1792B8D5C28D7229DCF379B752DE0A135EF95AC
+EFE3F5E2EFD51913F6537A8579D44814BE9D9766426151C841CFF9074357F928
+1929395BEE97182D5881FE2621D1A20B066C71014A8F22861C949513493703BD
+FFAF18A2A7514403146372BCEF7FA2C211F921A5A7CCCAEB6C4DF2943205A2C4
+0611B36E1237A40C3524835B79CF36F048B3FA4DFDF17012269AFD127A864D72
+C5AAB5AE674EE45D7FA5A7718D11188042150AE327AF694BDBF8B05CE49B1FAE
+D3D6CC68950008B41C1DF6F74E222F02663EE1F987F01108586161E570347058
+A07F078D98046F38754AA5326B78E2F33E69FF6F69EBFF897C438B6E25DDE196
+5DB19E9B8A5F5732151EFE6327A4A39622F299162175F190470E66FD18383258
+3A0EFA160C9ED4AB3705F15D1D8FA305B0A7CEB1C088B036A8356AAF07B060C4
+0E6F9A919FFFA0F8CCB161621CE864D551B1B17FA441933363628F3E6DC84EFA
+1306A096A7FB8F58B9C1A498B35FB0C5ECABA32247FE1B9C2768CE81B39E9526
+8B5280ED6973B7736DD6CC2C9F425EAA164821566F73C4E5A7B6592E2A90F0B7
+7DB7CFFAEC33CA7EAA6A1080DA1C39094C1357A5632CCFC247138979B2E61F81
+EE39A766A8C7DA60A3F81FBD4D9187F825D8FD2846155F1E44962BEDAC518BAC
+03D66B283F6A2A97646D9300955579B6B4CDDD5A49E7F5898C6CADE8FA45F1D2
+BD901B986BE1691CAC488DF5DC2081F7F17D96488EF7EFBBF51A912A6C20CBFA
+52E9325477B8B65FDB99A380F8582AF2F1A129A4F53593C2ADBF85F16B741567
+130339CDC175B5F3F116B9E1A0152E4509DEA026A7FDA076D33781B958967255
+0997A371A92621F98E9BEA8E544D867D9FDC134FD4719799149B1F3AD15C48A5
+FF62750DAC53CBC5A03C7BD7E51E02A9DEBF24729CDCBCE92D8201DB0C7976AF
+981404430687CCF34E17DEC53AEA0BDFA66365A0765E5BFBEC054480D3083B1B
+CB7CABF6B2DA169C4250458B5DC6FEDE45687AB2491931CACE6E4909C708B33F
+5EB9B7E242C24CEC06F66B8BCC1D8987235A413D336F76E2E14D90B2BC0C9362
+5F6A14AD21A06A3F3F0EFEE1D5FA4F8CAF31352F21AD05D354C73F513F3AD96E
+4276E250FC6E65F548C321D11C1851FB7172A5C833A54472BFC3BB63066BB8D8
+F1C3DE1D5B5507B1192D2A5B13D712B23E4B57A0690A694B506D18D08C19CC4C
+C12B653144B044DD58D364254EA2E9395296F0FA3B0081015D5076770FE5C911
+B4113FD387B24800923D893CDFD21D24D00B15BC38C0B49D59E18B38BC9522A1
+141088E0ABD6BD8A16E3595B3ED5662AD67E40C9DB3DED056B1DBFB3D1378682
+0F963FEEDDC32E6B07231379FF8FE78487F94C14BD6809785F951B91F0EBB103
+B27D18FC5979DD2A3886A375B6AF00FDCC4B0894FE568671FA5D8CC7D16874CB
+C9C689E87918F8E5D923A19E7250541D249F187E635B54AA7FB5D182B84B0CA0
+85FE46E276C0A7241465FA9F326400D782A5ED93AFEEFEA141572810C6592BF0
+05EB7FEF46DD136E434D75E6188867EDEDD69CE2493AE4024E70F3136985357B
+802638C13CD1A0DA8720D05157F9C2485488517BE6CA54FD3F3482C8A4B8A8CF
+F00DB8FE88DA9FFA85C913797C233C5A14A6583F216FF56A67EB46541DC12230
+8E8FC09F93AF25D06B6FACFE72161A815F158C5102ED64BF8EA99126EC8EB8E7
+9E10B7C91D99CC19D01A6DF7167E2B4947D59BE7E1CE629C9E9F7B2816A1A05D
+FFE8A49D1601DF76ED8A69E2493384D058CFE8C1A4F8370888824045FAE29992
+D2A1ABCB6D3BBC5762DA6A610DF74A07FE5CAB4E43F03D91D7B5C7511432104D
+D22E5A711B03A491A293F20A4EEF011E3ED5C4742C4924D303B3CEB0AE6DC55B
+2BD181D2E1B2540B1C11A76B25FE6F0B44CAD7FB1FCC48BF1EC6CBE9F3EB9AB9
+580E354C9990E1FD420680091BC7CF113CBE56263E9B17A0253C61C89AAEA49D
+7B57F5BB7A20546A277137F4D648501C06380ACC10DD8D04162DB8026298CCA3
+F016AD5DC1E1D80BB7C3013CB82F6D68C4813550A3ECFA80817B678CCAA09F1D
+25A56E398E5E7B6E192FF97D8666068932F7C2A3D1B8D44E26AA1474FCC62767
+04402D7E49C0EE5D1AEBDF49F6CCBB5159CBDF3015753D86121F494A05E727A3
+A667728A1320B8721F62659D777F4000F09919C3F18A4CFA593EA0731539152C
+90071C87D75610C1665B62C5B00E1B2C6BADBFAB784A8D1D7414556F044CDE1B
+389AFA29E06AB2E2F6C8CDC31FEDC4EA45B415A1CEAC9C0277E0D6722B4D3F94
+20E5FB7C14666D93DADB2946D8FFBAE1D8D96F1680C9EFFB42FEE7BC8D98C354
+AE8F243F7284097842DC514B694D422E9787C4EFF22C3F64A6EF6CFD76979AF4
+8B07EE8C5FCD7BDA4F063189B149B05CBDB4E21D7E5CBCB90AF22811733B5674
+72D9D81B2DEB7F496FD0D20EDF7AEDD978B58CBF4ADFDE6F8BDE321655A04C94
+9867468AF7013620D52CBC6297FDDB059DCD99C7B101295FD76F9CA60DF2C58D
+09DE3822D0E415B9C5962D7D3ABE65DCEE1655E5CA5B41FE8B4F57F717C12E86
+4C29ED1EFB28A02C924DC4BDB2E7CCAAE5E61C83665A33DE318C7C8D45B3E6C0
+E9D3FA3E171F41E1535149103B73678E61C6C9CBF454DA909ABEADA8857FD5FC
+B74CD9437636C083424C7936E75C6B0711B36D2CC22D149FF0D4BDF20D3EC053
+6698453D507D0D4E9668C0EBEB177D87F603F107EE46D5F911C8D396974F2D0A
+B3DF9DD83E98353B99D58357DFEAD7ED33B32C3C3ACA4E1C66A0A5B3EC2C51C9
+356CBB076F55C49D451AFB130B9CF6E56F0E1684F25D1427869C2CE7EC7B4B5E
+F72AB8D1464A55C43A8196F179875BC41BD8BBE84938552AF81C25E0C7D9B760
+AE1E5D31A997DD5DD1EC5B0EFBA6E5312D533285ECDDC62DA7A4E7F8BA55CCD1
+8B35EA53EA390CE3016E8D9346F3FFECB9E7413A06031FE771948C9662253789
+CFC3DE331C82A03FCA719CADA8EEFE90348989BFD5A64ED4A9295CE99A4C5F67
+AF1940E04B6DC9125523CD950D3F4B39E4138D95F32DC54B70A6764310A0CF89
+308E6D5F89F52C5DBA0AC334F50D9AEF3D4BBF43AAD5B8971D212D7EB67F7848
+14F20695B5206E89B3A012BCDA5C5FE89157B9FD1126DB18039DC0E23F27E83A
+A5277C2698558C9BD427671B7E3CDCB59E384C8BD06799B3647E47DF4A1F093B
+C27FF2BC75A3D3CA200BE96255A9AEC3EBEB9CE36AE26482440DA9975E18EF7A
+FFC55910EBBFA022EB662BFB8A35B05C120FD050D8ABDF7CE2ACA3E1C3DFB47B
+E3EABE7AAA06DE61D6A5ED804CBB828B4BD076AE13D48994D479E87147424B11
+3989298BA9D84167CD3A2B211280580FED30ADE3AD28880648EF19F921789B57
+A3EC9FCCC427D2D64241C97698DA76B2DA2C3FAF2D98C51869B24D32A6C3DE1E
+1BC39D6F73177142D4D6E8D9E2C4F2D92ED4BD72A24F443E914BA5711328B6EE
+48CC4EEB835ABEEA9686873EABDE36D10200FE48494DCFA46DBCD39D02E84D96
+9231AFE4412E7159673876A0720CEEA75B96EF0554233547701F94FCF194B066
+39866CDC5832021A347AAFFD607E2808E95BF8053252989213BBC82C28464158
+34C144F079C91725CEF8FFD49CDA4710269CACC2AF46DF9FFD6F0E0FC6036F62
+BF665FCD80BF0356F02530B70851025C3B339A48229FB4D696DDA7B30C6D7064
+8DC8F1AFBA42874CCA1B646A797A6074836B255CC6CC7A4F557018DBFA47D8F7
+D2EF829F2528D785B31C54B20979444488F4EC8B6DE344C7DC5F01598D80A249
+00EAB1210B367872EE7AC6C0BFB81D869FBD8D69DBABBC1995ACBCAB2E6C36AC
+CC38EE52B51C31F0DA9D6A1F392E19941FA9425E5F53B20E3696CEFA2C85FCA8
+E2D55CC85A1E3836DF7047ED055A2E48C01C1CB1FA30FA77CA08457C631C9AAB
+0B33E545E2B7E57BEB9F0A0A46DFB0DD2A1D8788EABE882EFC797841E3DB1221
+A6ECE18472201FD7CFF5398DFFBEC298E3FFCAFEABD2DA96A770B8385F4F3071
+542A0AF18A42817986F3AE308FF037706963B52A3D578DF6FEB0D7D3B6967200
+10E164223A345592BD49A1E0A142D0D8537B4775BC5A0ADDF68CE7A6233C80DD
+3ADCD6EA24C9B582262074B537B665AC741D84E0ADDADD887C995AAC7ADB8A29
+79087FF015CDE415076290BAC52DE8645AD369EDD817DAACA0DFA3BBC8845F46
+EE772D2AC6B436D4899D2FDAB5714CBFBC696DC11EF48B5F4E5E9FB7B2CFBA0D
+3E6E76F530136DC3E41FCBF7C99AFA2863ECF05B784FCDD0EC3D40415FC12085
+731EE5CD09CE231D19D368E15D2BEB19F1DF70B561ACFB2935248708F86B1DF4
+D39BC8BFCF187A0CEC5EA009485E127E48CFDBC778ECCF8493BB9645DBCB3E83
+CADA808083505D1DA6612E2837A07CFF01E9B7F52DADDC3321341DD6755B40A4
+C2B1DC755975672CA6614B15600897E1BADFFE80648F5BC29D6807D21771507F
+FA5E6729B076FAE78127732434CDBA0CD9D4F45A3ACFC8C29547065796A72FCC
+A0DBD8D6703977A2D0DAD62454F28FB21599C52E154CF26ACFA0F386D124D843
+8D6AB9079C729C9EC066974A2A245CE0382FEBF686754C6CE392642F5812E40B
+68BA53DBC5C4FFC2713BC157BEF0105CEC3953A9D038F1A71F710CBDD8EA5435
+4E167B13132328F97E173948C579B4A81CB6CA9C87C90FC3FE447B380B46F9EB
+D17D57A925EE8989D4716721AD1EB435C286647B8FDF9F8E853FDD7CAFB224CE
+B959A2188BE4A3F17CD1D0311B8A737FF7B11EE3CAD634FF35E73187EDC26DFD
+BA3029FC140B41E6D92A9CBB3FFBC65DEABC75DA20A5313E75FFEA7857B1A97C
+717BD429CAB04E23E923F1281DA4E2B965EF291EC9AACBAB835FAF25EFB45F63
+37F2EAB63727F8CFB61AB81100C2F7CB0F22ECD4284E229A9D7A54C2086D8E01
+0876CE5030BC037D063AA534E1E99650B13C3D6EB92DD8CFEA87E960E9AC1037
+6055823767BDB66BA9BE0E42CB7FE895171379E6AD3EB93DF3D1061CF44EBAB2
+2D8E4E8B6A4F4AB2DCF4D57B262FF2B6C0D0C83ECEB2708DC2B53B9ABB33A9A8
+E729AB1963AAA239DC3EA0E962AC6D762D3C1D7306A5044E40900A3D69E6C15C
+238164B9EE35B2E9AAD209D96BCA5762D229F406A51DEB72C9D442FD827EE72D
+2987ED2719FB935EAE183EB586AB56BA3962D1ED955566F1CEE9A959DB52CD7E
+A7DA05ECF3938BE2A1659830DFE0294B8305127F417B5CB92144FC73CDD1DA0D
+5CFCBEE3E419742C9B5B53F26180390EF842E0DBA103D43C5B0764768D676C3B
+56234B3B35AF2CB18AE9EDD8A578AE6EEDF59E64313925B0B47DF69254563B04
+90C1124AB77C115541B20F9ADA7077B640DC00E230E9458A382554E1374D759A
+DACBDAB6065CB34A26BEF7A95002AB1197901E8BD60CF2813AF0297055E05369
+043884085B912160775A15E9E57D3043B88CDC129DFE67DF6B746E9D5900F6FB
+DF1BB3265F162F1508B3280030418A5C88DAEEF86978F441D28876F158537E31
+67B28D58FD8823A64B44F0A3B450B1761B667DEACA328B051ADC8E0D611B851B
+8384972F4CCA590C7F5C5F498355E10502EC6BE159315183CA05FAF03DBE4B92
+806448D17FB388E4D53BF6AD459504927E92DE6BD7BF9B472F302A1AF14894EF
+41E9A21C897EE05504283732F4ADF2FF3C55C3E5E3DF74817677784B152F9F81
+0F668C4862BAD15C17FEBFA75C54AD1D5635B61DF66A98419A55F6F9B57C96D7
+8955C453D6C0DACD155753B7978B076E456F27963820DE2911FF36551517BFF5
+D7FB73D7BA01EADBDC73DA124A077F8A4C7B895D5C6E796F7DAE162B49AACDF5
+56BAACECEF7EF382C42FE346B51B699DD36E5359530A18A233BAD0F76C3606C2
+5E843EEF963AF037A84DD92AA1271552343475A9F978D7EFF52C761FA22ED337
+E55D9F3ABB10C82AB97A2AE912580C94F695603101E79D8E35D402D625A3025D
+B92A577B0C836E9BF480F701A16C7FE38205FC9B0F46F17FBD59836F265F0536
+FBA0242276A84D54A8F449A9122B05486E405AE434A97FF4344558A1862BB3B3
+1C3D8669B311D8EC7FD80E0000AF938E064537B134CABBE80B98528E9457690E
+5A7C70466E666C7252E9F6265F4DFE26931CB5F393297A03BF8D884882850AF1
+B31A08B06A686C2848BA358A90C86628357F91E46C745C9F5C96B560BA077DF0
+F822F33F268304C3BE4A3476F2AF6DC8ABF4E51F1A77ECBB33D642B5185290EA
+FB9C7BAC11BF5ED832C018A3F7C9D2353C19163111FF75D5737197371D767901
+9442786AF941EB7733C4602170F762631923A745E020D22F11097E3B1EEF1BB7
+78EEBFCA4FB370970C763E76C23872AA76ECBE09544514C81E372DC275DED10B
+DC209C410D45758B6ED6C7C3B4C36B286B45A169CCF776450DF790F91726A64E
+787AC0A9C9F1EB541DD2FCC5370848AB1ACFC207025227E18490BFDA451F9B39
+43A554FC3F38DAD47708A12A9213E7151AE059A4A34B7716E76CB22EF506A5A8
+B15649FC87C14E3EAA0C1F7DBEBAD070AE0401D053D3F5A64D6E7A2B1F602888
+9D987F7E0267B8845E15ADFFE7AF402D307A2A8B5A5F320D2C96152B33985A16
+FDF7AD188FCDBEFE7F9C40C9B33483F613B2A6CEDBCDD9BF79FE63A995EDD50F
+59F117A291F77A1AFC3CC09237E1662645F710858B7B19DCA44BDFD75A266493
+AA384C8F7480AED877650DAA261144ECFBA7744DE28567390E633A70EE6B5E31
+E18DEC8573C3F994E2B1415B5C4A791CA87C4BA16812D294FD109EA22312F963
+A046775F3134939195179FB90277C5191CBA22D098CAB69E762015CEE23E942F
+74075218F62FF58D2C32B92251A3D31D58AE389EB6C4B0F7F46CFFAB3D0E9754
+9B8623751DEA53C7FE38CBFD7B7A1D1B3CE01A91060ED13260A54D96EFFF47B2
+733ECC0780AE2292A055C03E908865062200FE3A7D079BDBAF33AA510816085D
+0EC4E1151DEE74D8768CAC016FE55A9E59C1480C6B17F1FA9BB06404EDDFFDE3
+F411E0562C8F2E20762656BE2BB34BB623030348657917FFA9D12F016A48E178
+029767E842864A1D55CE8AA3DD6E92FC1C8BB06061DFE701B4476E9E626723F3
+E54621E98F68DA43BCAA0F064BC2FC7DF42D2CB9915854AD5ED3963F6547861C
+AD3B828E9A
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMR7
+%!PS-AdobeFont-1.1: CMR7 1.0
+%%CreationDate: 1991 Aug 20 16:39:21
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMR7) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR7 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-27 -250 1122 750}readonly def
+/UniqueID 5000790 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF5B8CABB9FFC6CC3F1E9AE32F234EB60FE7D
+E34995B1ACFF52428EA20C8ED4FD73E3935CEBD40E0EAD70C0887A451E1B1AC8
+47AEDE4191CCDB8B61345FD070FD30C4F375D8418DDD454729A251B3F61DAE7C
+8882384282FDD6102AE8EEFEDE6447576AFA181F27A48216A9CAD730561469E4
+78B286F22328F2AE84EF183DE4119C402771A249AAC1FA5435690A28D1B47486
+1060C8000D3FE1BF45133CF847A24B4F8464A63CEA01EC84AA22FD005E74847E
+01426B6890951A7DD1F50A5F3285E1F958F11FC7F00EE26FEE7C63998EA1328B
+C9841C57C80946D2C2FC81346249A664ECFB08A2CE075036CEA7359FCA1E90C0
+F686C3BB27EEFA45D548F7BD074CE60E626A4F83C69FE93A5324133A78362F30
+8E8DCC80DD0C49E137CDC9AC08BAE39282E26A7A4D8C159B95F227BDA2A281AF
+A9DAEBF31F504380B20812A211CF9FEB112EC29A3FB3BD3E81809FC6293487A7
+455EB3B879D2B4BD46942BB1243896264722CB59146C3F65BD59B96A74B12BB2
+9A1354AF174932210C6E19FE584B1B14C00E746089CBB17E68845D7B3EA05105
+EEE461E3697FCF835CBE6D46C75523478E766832751CF6D96EC338BDAD57D53B
+52F5340FAC9FE0456AD13101824234B262AC0CABA43B62EBDA39795BAE6CFE97
+563A50AAE1F195888739F2676086A9811E5C9A4A7E0BF34F3E25568930ADF80F
+0BDDAC3B634AD4BA6A59720EA4749236CF0F79ABA4716C340F98517F6F06D9AB
+7ED8F46FC1868B5F3D3678DF71AA772CF1F7DD222C6BF19D8EF0CFB7A76FC6D1
+0AD323C176134907AB375F20CFCD667AB094E2C7CB2179C4283329C9E435E7A4
+1E042AD0BAA059B3F862236180B34D3FCED833472577BACD472A4CD5C7347D2E
+1D0D6630F446F3708FCB29A84A5A6CCFDF65F111B83F1D70E8CD7F7F4EDC75D4
+EE6C8701938FE71ABC3333060F0DFD6090BAFAEADF966781CE9A87643996A0D2
+AB70D0F7E4AFA1B4B5AB1BE0A8E569D6E100EF91982A45929C46CDD2E39F3ECD
+9BA40AB7EE2FFD65A0BE38F55ADB8DB6405C19D64FCA9A4A12862A675A11C424
+EBB6794837ED3C5BA71D08DF2F20AE951B6A41BC6F644707E90C27BE4C521C8C
+C4F5FDE5CB933616251FD20B8B93BA480AA192CD4462150B144DCC14A1770999
+92C02E2A526AC3BE8FBCE7D48C78FADB128D841ED61B49E13EF442163DFC0237
+1FDC9299531AD0F6764EC5677A438D2F82B77CBC356C7F08858F0F1BD664EF6A
+928D8BE2E6EC418D2D53429206CFD22926F60CEF03E9B5F4662335C05DEBA0F7
+A248B524386C22949AA706F1E3F2FD78FB3FB091340AADC51FD4A161D8A5C0E3
+351E055125AF33219782C67BA4A64FE6748E5DE3A73047CEE5DA41630D81EFB8
+5A3136DF878CFAB7744083C4201A408C09B027E19E255E037D152C8D514B75DD
+3EE13A986A8EA91F9FE354CABE67BF1539DBE8
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMMI10
+%!PS-AdobeFont-1.1: CMMI10 1.100
+%%CreationDate: 1996 Jul 23 07:53:57
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMMI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-32 -250 1048 750}readonly def
+/UniqueID 5087385 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
+990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
+6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
+DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
+59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
+D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
+8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
+6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
+1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
+03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
+95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
+74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
+3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
+47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
+AFC27E4A7E07D09FB08355F6EA74E530B0743143F2A871732D62D80F35B19FD2
+C7FDF08105847F13D50934419AC647CBA71DF74F4531DC02BBDA22AEEA3FBBBB
+407E0ACC52BDC60D01A29407CC4F93EB8BF6D4813E9BA858D54F38918AC82720
+4956D50291F0546E50FCAFA6DBD0099123F5ECD4AB338DB310DB4CAE11337A89
+8ED99B6F483940C97544F888EAF0CBEB11094A13C073D0061808662A04A82BA0
+AD35E8782F854AF66C20C0FEF18D0ECDD1646321B93D327E53D88CA0E825FA95
+05AA57BD737FBE76F3EFCC4C5A35823396DF10AF4E216DDB0D7562A03B3C1D4C
+7AA7617E0CA26853A0C2B9DB9F726F6ADC6838649041781FD9076D1FB1269AF3
+B429C3EF3FB54FC5C9865CF58FF713981426D95B07E359CE5D29742830E7B240
+C5FAEB351854DB0EC25F751820F2F96762E48CB19FC3233E30689BA3C5B13257
+6DD7CF5FAE194BADADF3FB510E3DD169842C1D625E697BABD92B9779704074F8
+0509F8E510B477BF870899FA59B74C1992177F4EF1561B85FABF71AAB7BD27A1
+84B22523AE42BCC220BDC866925390EEEC9CB0C6652788BB6075619CDECE8AA9
+B6FA00F45AC0026D588EF8F0B7E11F79E5D9350EA2514FD0B7522666786C4E48
+94A979FA2352CA6D71D57C98D03B6923C7261BD3BEFE85E5D16000584DB16CA9
+EA7C841AD8F1ECEDB605850D2C785B3821D978B09CEB95EF27DDA28196233436
+945AEF0A1714B14DCD537D3564624415FD7937EF9C45FE5B3CF5AE96CD19F104
+2F172C3E0A09EF6A07560B756CD81D3714A278C0CDEF210BBF4E0E991F3A98B5
+61606850510BE32A08C9D528FD583F3AEAA061E619AF7D8983F697BF7500F02E
+4B15EB58A3D0639C7FA005BE8EA41487F318394C71A33A80AFFEFC8DB4C6F927
+1E6AC7D6E78D03D0BAC43BC98E67DD638100CB53C00C664EC0D439623FA1BD72
+2D018E1A210E6FE132F15A76D26E8AC96D265BDA00FDDE62BDF2921790408D7E
+3257B0593C2583CDA8E021E336E4ECA48FEECF1E91E22F34BCD0BAD87A5356C1
+55AD51C144A411FE84862983874AF7319F652D1F656F67B64006C716B728A9A1
+9D887420594444DD2693552FAA61901C5B711EAC90226B9B7FCB3FF180F5D3DD
+78B22813CA7401A71DA5F6C5C8AEC88FEB64AEF5EDADCAA039A16909C6EEB367
+FD826EFEA3818F63AD2EA5B51816F92896E6670F4DED10D263B4D0E101CA00CA
+1DEEA3B74EBA71893929590FDBD70B0BA633D17F14FCD4ED1A53317055A9A984
+5A24E6F1331C187E49D6998218D480B66E4303183D7C3A8C92C05CFC15AF751F
+4B653D1D37CC721EE9A01ECEF3DD86A0803E39419CF212DC1D962C23C288E953
+0857E17EBFA4F6F8D44185C5CFC5DDEF6C01BA64D4CBF75F6560843E2EBD2AE0
+301FDC7FF10AA2B549B0500B57F90CFD3F7DDA3AE06FEF0C87DCA333706EB95C
+C1E82244F7AA088299482CAC22AABD81CABF45769F5EA2991A8362D3E3A21FAE
+4AF9EC2557111586ACF66DF8DB30330B5A096E9A34DA89E94A41C33974FA7175
+197E491837EFCBC2673FC32AD48FEC5E2DB602D676F2D0EEB077018EFF6F699B
+6E5F663ED9E7CFADFE742870C23EF9A0C17E72CE4AA54F69248BC3D4896D5AD9
+E7F109B441809369145F112A598DE79011AFC503DA22B1277B909DA1992CAA2F
+0D1CAE386456A7D0D067DDE564CD5089CD7422D5717C5469E40F5244F8B2FC07
+03AFDBB1952935FA088295E29F4EB89264DC3FA42F62A460225CFC0118B54587
+4A9BBDEC6B7E34A0224AD702174F43FFAE1C3587842B057EA06E0E7C3AF58257
+75BDB72AABBCE0A3E070C825F2F0B2F6F4814235F9C3D1A240F1A9A0049AD0E8
+99C91971ED442BAD669A0470319CF6C86A4E14BEEC6EEA1BAD0B2AB70A06699A
+F969ED73206F65879AA902AD58A8FA2A1481C5BA336AF232F831E47074FF15C3
+DD8B6146940B043DBDDD97FFE03EE507C7563A562A4D83CEFF61BE28C8F2F191
+7C5F23BCD9BED7FA940E8BA19CA13A065BB6914154910C5FDAAE4C52C650B1BF
+B4D3F6A1EA39343CB63E2778DE0E8FEDD3FF07143B7D007B2659CC0FEAD3203F
+A9F7E406DF5632913CD1046E8F97391841FCEF6CF07D7329A9B8E4A12E0E5AEA
+00B7316AE872B09EC477DE3B3AA0E96B8817C48A81FA34AF305700958EE77D4F
+5715B5D4E24A0D6F3D95E194AE4CE5946ACC3A68E8C0D01E424FBBE424C27612
+E492D85D1E9EF1DD8A2C27B28E1A3F4465D664BD3237ADC40437C668D12FDC90
+DF976061BBCDD8424E9A46230FE9EBFBC1A7F781EB5CCE51924EC69B27F5519D
+7462BE2AED1E4C4EEA5F177601DE524742ABD8B13748DF538348C1BEA70DC51B
+59ACFA36A22B090C95359E5DC16FE87D09CDAB8E9D3B53D2C93AFBBA660A9930
+5C3508C49B82BC03357E23FF32B852B564B8FD381D14E5B3DE8269F915A175B7
+AD73E02E8585649650F5CEDC07B3209060642D221923BA924B313550F92B53BD
+C358022208675A9880749FA672CF394E5C5B1A2CC6573AFF7E0793AC3B49B477
+9802649DCD8DF5C8A10239153DD49BBE66E3AD5323FAB2611A9CBF3983AC8D66
+D41FED8D3A05ED2FEE10635D9AC24E63B21D5B11A7A3F7CFFC87FF3A25CD6D66
+D509A44D47502FB92ECDECC986CE8D988E342BBCEEF98E6AD6649373C96C3EB7
+2AFFBE865951C70B0CA284A5C8882B90D80C32AAABC45E5ECFF38AB118E683F7
+DDAC81A35CCE9497EEDEC1AF8857B258D9505C8659BB5D49E3091A01D83C0B9D
+C9CEF97A6378DD08393580D0525BB7F00A3BEEE55135D85D897B5B528E9996EB
+B411725F248F341309CF4A625D9F46D810A3E25C9CA7370448760B560C87B417
+20A47135B0E6782D5FA8ADF82D827D3477399DB26CB3308D8B465A0259735644
+DFA9C12E79D71E633F73725A030C0FDADFE3832C19010FACB3D900926E003AE3
+7BF37FD09C82A3C00DEDE1BB1AF06560D9CDACF300E8EB7108D5B9BD117C98DA
+30EDD14854B9E7EC566E417452D8C493C9F0B9C9C4FC0C77C2F876813B1FCDD5
+A566E36FF673F131F9B4193562BDADF2D5FA44C0E8D6B3200978B0354897C4AD
+FCC654A972A0B90D6DDAA3ADAA951AD873311BBF89CD5D573D44CEDA84B329BF
+5F92646C56A1AC04E1F92FC7A0B65BD419A1F40835C846E08D2D9487A1E964C4
+6C522699A86FEFD85F32E9EFC8356CB627C0F63B3B4C4C96F64036C7CBA24DA9
+48CC4AC431583CC02E6D44D5FCE46E6D13834CC164112BB53067CC3B794F5AFF
+64E5307DEABA0BA41861E98E7CC0FA634211744FF050B9B099FCE95C0ADF9851
+F45C20967AB504F9503CFDCCD79E8524D90EF1C667A8ED69587BAA32C1F84EF0
+F73146F0F16AEC004F9ECA7AA3224F154D8A6425678C1F57048E4D988CA6B541
+BDE9C9A08117311A82BDE544B8BFC4188EE2E991A1A97BA985591E51FCB2F96C
+9E7AF548F26DB6CA51F11755B1C36E28303CE73844CCBFE435C46A4ECD74F60F
+8DD7B663D6D5F4A5D07728243EBFB4D3CCABD572B4E65C94E606809A18AF25A0
+BE11A269B5C0BC00EC7871E26EC49B90A9269CDB4AE0A44190842862CD118DD4
+ADF130698AF66D8D55AD529BE5412CC6A8F67CEDB4882598F1BF4365639446A0
+B54A2D99DE51219E22365971BB6B2678A7196B0C56E05753AFB36DD73922E244
+A9B1974EB316234655D42BEB13DD4A4300EB3A6322782097886F530580F33CF4
+EAB12DB9219A5810F32C6890CF278588F94135E196EC1925706D5C25224F45CD
+B60438041913C003D40B4AB20F3188C504E67B5909B8B1A46304FA5042A1F0C5
+EC4B96FE6B82AE80457FE067270EC8B6A4B830ADA399B98974A0790A8C390BE3
+ED8D07F0565DF8FD7457281B59FBA1963594D313C85C078AEF7592008DC62F8B
+178E52196B8C920068A9764E7E8DFF30C9BD8541E0ECC1A1440746E37C2AF7E6
+0C4E4EBC7491A7C06BFB843CEEA52152A6FCA78D14CE89BA903F41CAC3B812B3
+18F2551BC1AB90D0870C27A3F2E5A0A6B4B1723887D75D439A19900A7AD38528
+85C1A3EE75FFC12D98578BCD7065D4B363EE5CA1D442261D60734B0B44FF5405
+C25AE19D9EBBCB369CEC59E96B9C7E4E7590E29C77497BD3B0C1C0CC8D2EBE54
+FABF39691977860450D32136EA90106B3CDBB1C37CA48EB2E0895C3E54CA6EBC
+6AD5DA317CED887B779CB7FFFF6628A293C1254CCDC1581DACB28FA010E88937
+C0D9CE406068721F5D0F0AA3D7AE755E312D0738A8115959AB336E7730AB7DF3
+BB50615CF9E42853AA72506E22DEC9677DAFCEAA9B7371EAE803C633186F3F4D
+79DBC480667ACE4F8A69B0751C822CB65131DD086FD11C2CD09AE644B4828DCE
+33B67448B98C16823066E6DFEE372C82F9D09F92D4BC98CBA3F7FAE63512EC2A
+F5D84480A24F5C3B717FB15D57DC14658F6197B2A9F3A942EBFE31C8A76B37CE
+496564506D22F1E267832F3A01D32692E6926D4FE59B2FA61D23E03AEFB100E9
+A9B8D8C47051FBA4F88F700292B3B5A525A0C59383CE1C5AE93C6A3A4D816EAC
+AF1EE574085DABD9BE1B657A7A1ED219A5CC3809337A57796D7A2099DF6385EA
+0A3E1767558B609914F054EE5A3558D2042E8E9E78BCDAC8B6318328D0DBEEC6
+09693A38A02B37263B056189F165A7827CBE69F1B54C5E9A29247951FFC25789
+8D16A749EEEDB73E9B487C3B78DEB49A34CB8DEC3B5D27D8CF0C3D8C2D3EB584
+95DA7E1350F69433098AEFD2CB1C23DE510192354DD324213F1C078931464408
+D22DDA05D662924EEDC3F5AF2E11B3EE1A829041144154438AF26358A94DF7CA
+B17E4DD29A61AB01F5D2FF5C46B66743DE7974C0C0F514DA069C1E30ACEAAFD9
+F305C4BEF3FCCB7A8DE943E1379BDA80ADBBA537670D82D8968DCBAE7B356CD2
+640EA9100D9B3DC39704CC770D30AD05BCB57933AD8A41E2
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMTT10
+%!PS-AdobeFont-1.1: CMTT10 1.00B
+%%CreationDate: 1992 Apr 26 10:42:42
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+end readonly def
+/FontName /CMTT10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-4 -235 731 800}readonly def
+/UniqueID 5000832 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
+38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
+D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
+EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
+A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
+F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
+4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
+6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
+A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
+E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
+1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
+452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
+8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
+5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
+DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
+BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
+741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
+E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
+E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
+D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
+C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DC
+FF798F2ABFC4F3539392985C4CB324B00072295FC160818BB0355FDC4F12E39B
+984826450553E3D271F03D8DC2D12A92A4D32034FD16DA13B876DF448467B625
+2BA3AEEEC60550844F5300D7FDCBE636D5951411C6F46CF31F03D3517A96309E
+02D0DDC6DFB8FFBAAE1AB34DAAFD32AA716301301AF68F407CFAC4FF8CAF758C
+C62A6765AB1CD0F3EDD3C556A10E94426AEF2D5B015C5196CE77FA94318AC24F
+D38FC8226E90A7D87B727184CE12331FDBB793ABA098017DA84073BB69A2C05A
+37469032C36588D4CE517C4161BF85BFE4B9542536FC0AE5FA535C611B45D8C9
+7A58AE692B886EDB2B1713301D0DB6701D0563A37B8E221920B53CCE01D16D53
+63631A8F7B33AFA0F30A90BF611C4DC39A9DCB4FCF0FF42E721925F0BC60BF16
+E56824DC5E93A63A391CFCE41C5F80AEE98A412E1FB82ADC61BAA39407C35FC6
+931CB24086749CFF46E389590D3B3D2583A54E812BE9298B58FC919FA109D406
+AFB5793640A22B15E6DAC8C7C7FAAC27F147412F2240E3EFBF4C675D6553F07F
+F81168EB8491F56726DDBEB8890ECBA12DE954F3317AE4A671DE95B95A6D148B
+618480E1BCB8EAEBFB0D1492A2793A5E32835F727A43117E7EDA98DD054ED263
+C8B7BF73F7F49E35A45DE9682129AD6331B66C515277B92227DC67E234BD2371
+23CFBA6B8296ACB49EA77AFFD3DE9533A55DC6ECC05A6B6B15F30CD5BCFF8C84
+A719A09266D8E29B8F98CCC9D5E154937668F3F3D47C1F48BFAE0EA0AEE1984C
+590DB7EE142C27DDE1E0C73EEEC8DB5B30E10C4B48D5DED1EAB0B5B312D29B3B
+C01CEAF07C5457A0F2D3E717DFA4C814814096BC9405B557D70D2AA4EACF4E9B
+12CE61D83C3B129B130E47B5AA0F1EB35A668DE8290496D1AB8636F9FA8EA7D1
+43FDF8A127422270741610EA0298D4A49321702C0B2D142F654A9CAC3C9A9B86
+DFDD55DB5693C7575B892E5EF584AA849F09A182F0DEEEB596F45196B32B40A6
+58190A5BC59AEF87BD45C90F85BACCE9F6F333BF2CA244370D43F5E2B9EE5862
+B0856289C99A84F86D71CBF9B08E27F17471ABF41B43170DBFCF1D0C9AAFC697
+AC25341C2054F4B93B227BF43B920C47D7F0687D128FBF17ECC1D4D4D7F504DB
+F511F5CE852DB57B87CA1517D3CC0BB5EE8DB5C159A9D23742E18696B67DC4FA
+5572E2B68F75AABE4171AC074E143E372F1AAE5B852129FC1C8F855F86EB151E
+58C9945B926F3E7E2DA0209FB911D5EEDBE6C9532D1884B2165E48EB17E10BD9
+AA592187B7BE8197F789156FD3725A2339504CAFF7B4FB2C17CF6DB5AFA7E658
+59147EA6128FA7266B4518A306EA81B26ECE6655880EE276CD41E06DEAD28D49
+BED53E734F8939C73A171E9F1E7140CBC0295E46254A2CE45E5B0683D59953BB
+1BACABB507DCEA1B862D0B683E88180BEED29F756DD16A1B07D16BA81D7658E9
+D1156F4ACD29C5CB9054683046ED1D31B4CE3CDBF5F67D203BF86EB21B36ACC8
+013C3C310AD38D098E850B7BE31F825AC3C1E3F6D61E5C941B11E709D766658F
+9FEDE0E651D2766A806D3FD148776ADCB175054C881B33728E2E8CA99277ECAE
+ADEE861B9262788D04BDE323F3F1DC16B91953BB48440A40A6FCF7E9BF6636AB
+8EC049C8CA61A5CE2AC5E461913A9ACC146FB492C813135CE09C0B5FBFC3FC5A
+6F66EED9FBDA896BF77CC789A673E187F18FCAC261169DAA7640292F848D7B38
+5C8BE32D5295757462DDDC6F314558F715172D550FB8FE5C10A52E58EF94D995
+08E6FB3675A4149460FAABC7E8B9DDBB808AE65C5B48C3B3C8C54BFA8F0F29FB
+92240E0C39C6A891E34A203767EC3621FB24D56EDAA2405ED19DBA06A9E7DD1D
+F03C72F84D83EE180517FF430222FE629E85CE747E8D04FCC6CB63341F2AA523
+B06994FCC99FE72607312BECE0F297A5FB516D8CDAC56236A92DD17DA95AF5F2
+BF7C4F710F6075BF10C1F0631AD0C127D30A1B76F6E7810511C6454877F6BBDC
+47AA57A51B2879F64D0B54FF34DB101341E6500C21E751A0631D219BF870EF65
+19A61280FC9F8B831F58D30733AE4C0E774C9D7D472EBDAF40040C1C3502A280
+BFE3965EF1ABA9E91CA8290D8D63BF125EE99FBFE0E048A335DA51E9D073409D
+CF1C9090CECDAAE6F6E7674E01D1BDBFDE1DC439ED5C087FA7F86E4206D62EC6
+A44D59B3088DD2F78053F667A9D81B7442CE9A9C327E81AED9F9551C5A8F3058
+164EC574AF8B76F3604FE03AD0DEE85D46014CE3E62E97D523095DC6AB4599AA
+B345A2BB59C0FBB784616352BD0E44DD13C7BB7F92AF40AC64D6CD7535484FE4
+A141E020AB0B87053ED42D8F6F3AA3CDE2D10988B9D25E22F136D7AC19EC0175
+5B46890144F38CAC6536318E657ED8D72FBDCE6B3E97B562D4A343C57CC02DC7
+CDCDEABE369855155A2F2EA3882EFA76083A079252385AF3C51C76E078DCD525
+B4FCEE407732EE9BEB5CFBA0B6B084E77AC8156A5D7CC3FD30F85541D78EAC3F
+2A7ACFE0F02DD970762F41115AADB31AF401B6A2972F6F7C9F4F63E130BD12FA
+E3DC0F00AA2FB284A1C0668E6EEA63934544D6FE199E00B4E5AF1F7EB19CDC81
+5EF7FDAA3123A7BD657CCF3D2F3CE2790636CCA186D95FA2EC188A2D014F7B5B
+DAF7A6D44CBA5BED3F43832DEF2FFA738408C536A6A77B182D92A8F1E4098702
+9472F02F1535FFF7AE3526690FC240A89B97CBDF609016506A30CCC8F1659D97
+53F7A760F0BBA213D2EB86C4F5F1141EA63F97BD431F857C9EB6567064926B14
+E62F3F67434825D184E33616B6CC33A0FC7704D9FE0E791DCBCF09844B0ACCB8
+EB5318751E63987FA0615CE5581F13629730AAF0346A00920CE5A54BAFFB8A4B
+69D60454AA523C7A17F3019098A0D16DC90FD71EC202C862D829F9999116ECC2
+FE39489C56BD26A4F8DB455DEB255AA23C2102BF3540C4DE9D515815A6BF17F6
+E64CA70468524C2B3D9B74A3B7B41D54EDF5E4B5195021117B67C73B011B0387
+4268114005CA9BF9D51F47610D8331DC2CEE273C8F3B87F93FDBFB483614A75D
+4674A2AFE500F56C77638AA1681645B1B271391B7272EDEA007DD0F2A8313987
+3EBC6AA8915BC39CA28C7DAD20517CFB0ED14549E94B0ACE92B21BED43222877
+0D1AC169AD4680DF326D7CDCAEF234229A677B9C0E16065F920A4ED747E575EE
+D88973307B8452EE5718E218E941785172F4BED26BE17C3A9C2BFAFE453552B2
+0D211FEAB6A7C5FEDE9F770024D35BF50F58AA397088BA1D39A5E2B106A154A0
+61813147E8B8AE3EC40700E13AD6292D1131E171DC93CA98C83251D6BA837063
+4F05E8FD38E1B25992246B2A5DA7BD12EEA1248EEFED59D1D0233BD0B05D6753
+F7E8EEED5BC0EF14F86851907D693FD91D77D42E5D7ABD189D42937DC1CB3FCF
+6CBD8D6E921F005F2B2144910681DF52ECA3DBEDFAC003D58FDA32FACC008B25
+34C68633F8D83CAE4AD40EFCD1CA7F2F194EB9B2E5FC37CAFAAA7B068C83F839
+C4331E55E851E217E31E542ED910EC9FDC51FFBC2F32A905A2C80FEDE9283162
+3DDCB0C775B60D99A20AA392F9AA638E8552A8AA9C9A46CCB2C4296EB2B3655D
+DD084CC97723E786E2E8FC627FE6315EB72B624EBCD64E95D06D1DE2A25A9E74
+4FB594D9527DEAD34EA01CC4DDA789B72DF7736C6B6D96B0850FF761DFAE5D00
+60478AE5AABC8BFF18399E3ACB9BCE472D3A3DDC7F146CCFC3586B00731D40AC
+23D17811410A17535209367868D1FE895C93D3C6A821EE510CF66CBC51AE65CC
+97E9B93D121BBF2E85A030B7C1FF3168D6CE818411B5F520C32B1403D63457D1
+982CA2C0FE0611536B2213D01EA61D4F3C71E277A6E7CF99A724BF40CBD5A6BE
+9C08DD8CA7A0D5B9987A56BF27D89F527756E45B744720B33E027F64CBFF3969
+57FDD11E1BC1D84DDD1243369CA0AE082B2910D10B4AC2A4D0B53ECF3CBC0706
+AB499C1E8B185C0902085FFF66007965F830B654743ED993D494826F7A08F1E5
+6E4BD22C86041F2947BFEF7BFF07DDE153D4DFBF78E7A6A13C7D53BB4D44045C
+615947062BBC98CC419DC0D14A84422AC2F7C9EB3DDDD4746E735674EA3D77E3
+CFC4E9C2CEAAF8D727AE81976E7B7AF28F1DB1A77694FBC7F9DB95DFF5E843F4
+02BBBF5A2A5050AD6578BE0C6C52E61831ACCFFBBF5DBA1C7ECE05436B506D82
+8F5658B7973CE23FD786A0E9ECA3AA78F382C5299F886B72E9AFD5444F243654
+D7131593A38761A95CB6B927508D648F7E2CD91D7C0B8D1A9A36487AB029D048
+8DA358CBFC1A8DE649033F061645486138BECD192DB272D901E98A75EDB67968
+5F14A3890EDC48B948489C535A76191F055D53B31035D6E78E84312B467F9D1D
+CE5AF2F731E7874E4569EB1B58B12BC16D97371337B8C313FF045EE178A84450
+5B824D95BDDD4358A8B643DD62009460D63C90906ACB282CAC2B91AA9D248540
+E4CF2EFE17F868898531498C9E17304F1DA2730A7D0754D751C6C7D29A1807A2
+3D08C75B810EC23272DD1AD3164F431EE8739A92A0633ED13545DFB69125DB0F
+34FB300187BBF51A3F6197071C5BBFF1C2291EFCCC04B6B846952DB194E4A497
+96FA5CF636CAC2F8FFE5C3C3AC3B11BAA43258DE0BB7A82A52E219223F1FA994
+9A34D7A8D5831117B7349346826A7C6122132B3628FF96C0728C5E39E6282310
+DFBA69B3EE91E215A92C8628CAC3B5EFEE702439BAF6D3B2E0D7E8AF25448B63
+AD3B9404375A4B34C0CBD6CDF844BF04209CE524F7A88F874105A4E41DA4763E
+7B0E3101F4E847D7236D5ABE1A869F8F76B23993AAD11ED86636A77D8FCE6E1C
+23027C6E0061BF75860D24B672F6139D8FE22642DF3A8878AFBCA9E7C1AC771E
+22BB3166DF4EC8866C2993FE351C9AF9F0955FC11673508B45CAE44F0E7ADB86
+CDA96EC823066D897A4A589AEF1911CA6A448AF26788F5E0A1AF943233E8FBC8
+9A4931721EB9F074199DB7DF447DA13A710D39324C1C702B663F6636AAF3EB21
+EBC9F9281CC7409B9A97EC025465FDF3840D9946AC77256239BA07EA804BC38C
+B123320D7D9709F3C0B5911703879E8D619F7E622A0AD6295D1E0D518D539367
+C0B9A9E0986286C961D7D811985F44FC61686710C3910C731D7011BA29D34E3A
+B05E7F063066B2A6C958891EFD4BA74704180490FE98BC7B730C5165D3206FB5
+62BD15A148F2AAB9A48C8445C5E70D74BE976B26B187985F6A839CF64131E54F
+FC984775103690757E0B05E6F4CADB1DBADAA39DD02B7CE2EDE8FE3DB8FB9348
+CCB13979E13E1C1249FF8CBBC42489F695797E86204CCA3A20274F965589A77B
+E743579EF91345AB93F080BB6A00A59A9CDD1E9CD985DDD3E13F4B424082C86E
+CEE8A76AFEF7379B2B1F580BF18907062A1073D1AC64ABBEFEBED1AD0FD44F61
+E2C775D4A147DC8DA7279A7FDCF3C500A38E5C511D682E67515D015851E482AA
+FC9BF2402F55C097269AEDFF253E7F564715FBCF2104113FFD1D0E7B3A29C99C
+EE0C3164B901DC524AFFC95602B25E4058C82AE26AE319BFC7FEAB9D0DCA5D6A
+E99948A440D2791D53CFEDC25912338176931CDF946374C64B06EF52FC564ACC
+171A7D01DAF0E6124C395714DCC5135A75877719293F9526B104C3FAE55675B4
+30B77AF043F2FFF2F5D012A0B6813C4B0049C2D288AFA744DF5B3759C4A5D2D4
+14BE7FDF98F13B4E87A96E02CB0C80066E8FF84881360B37C428A355689896F9
+7F463C4E2BEA7310B32240509A640AD6648080047D34148CC223881853BF0B52
+3B15DEC574635D0CBB1181AAC904CC10406E4FB2D9234547A37812E87457DC26
+C40BC3DD0BFCE8AEFF740C1A4EC603197D842B11154B28B83F9C8549464A7A32
+09C3091F253E5BDF010515F31757964C61337139772F625411AF8473EE42CCAC
+F6D24CCFF773FD5F24753C36AFDEF15D3AA9777169125F046282490A50D5CB47
+74808930A97195E93F19938F0B54CAEE5DD86DA526C52BA845B8F20670C20498
+CA198805A1C9CE8A7597050E866C2081EBCF54AD8FE1497C341044B6555AF526
+89F2E76F9A92685A6108BBE9C8ACEE3DCEED622E2C16AA2237ED7CD6AD62BC6B
+C08CE5E3BE3495A5E375315D521DD72413782C611B74B2D1319CD28420E9A8E4
+36A7CDD3C0F55339ED971F8702D1F3CA8FE2104843B3921493296B414AE4F3C4
+E5A78BCC7DAC261E845670543787461500B43098B2CCC8FC63CD8F6DFD9C4DBD
+96E0EE1214C4D67E0EFD1C5BF0E22AF10204FAA1B01A3831D83141D72CC4EE2F
+96FFB6AD2180E9D7687856EDCE05FF650D786A2D94490DC433A7E57F1AA969E1
+DF0524EF2D666979128681522B483227F804DD41847B86A120800949A58E686C
+120AF8864F89D220208FF118076BD7C003B8B3721976F9E2F0B3A43238711074
+8F7F88EFA3CF70655B4C1C971A652E796D4FF7A1A8BD0A81293E55C9D9734F70
+2651B730BC0F3971371C65D67E3FF7D06FADF47F80D82EAD8E617879D03CE6DB
+B2C46AB50C8076F178C8D65F240A7F9561683C894C2B98DDBE50FBA05E802532
+C43B524B0C371BE47E5D8CB1DC9DE7377816F5930D031652FE37FD1F1FB8DAE5
+A896927DD4912CE1704883281688AA93454CFA68B28ABD7D4EA35521A942B21A
+2C088ED216CF887CCB208BF9A74009C109A263EE85D92D0372D761F1846A3AA4
+C865B977F9CD75160A796027ED2D7CA24A221D3EB376B47E02E3C8A0A539A273
+BF9983E4A88919C01DC801F14B787A5DF5AB7E894C325A760E0683825202B9A1
+C7D45D12AE0492F578B4BB3B358F98FF01BD53EB425EEBDCBE6CE1130DBB2CF0
+A01606D455746B2FD236B9B26C2A69171E4B5ED3328FE1C6F6CB5C3A30F3D8E6
+5FEB22F6C8C3BFE1ECBE10D4F9FFDF7D545E9F2968A329436E51C06D2F650480
+4A7AD96DB5CB81533416896E88C3DB2F790F057119EAB915C9E95CB141C87135
+8577E5A444C365FFABA0D46C8CA7462D1B9B7FA70F0E4D767616D138B1FEDB5A
+06356FDEDEF0D86BFBE3D3B03BAD104BFC9BE34704D521C2FF297ED4C61FF4D9
+E9C5440C339721A05F4B41015E02DD6317C31622D3B2954F3F33A7F4DD57865B
+FCDFFB1928AB024CBE610781158697A69617A4FB95925719D9E5065F9FEAC444
+62A1C4C2943CFA387ECFDEDC8D1789CD2E5BFC19597F3FEE157B530076EAA003
+7F1091332D719D1F17C0801A68209F06F964EF07150F86DB648175F08F59EDCC
+EEFF0115405100427DA8F3713B757C6AAA86A9CD1B6159CA4F9642C304B7AC51
+9608DD10295CC3000A8C8251A79C07DE030417A3CBF5C58792070655DED27FC1
+CEA5AD33D91C2C646CC67E73F01C05574C515392E1E492585A08AA0594590A54
+FB6F788E96860A2421A2E6414AA53FC35E4BE66EADC0782B54943F86C3F41928
+5E42AB22CBCA86798E5BE1700D93752F0319D7D82ACC4AF0CEAE67F672857A8C
+5557C07C0D9E649FDF4D9FC7B9A421273DEC0D65E010262CC1D50AA8F5B2D0A2
+FF8DCB3AED45D861FE14FD158B99AB50FF6ACA9B9E8BF25DEADBF0B8B4F50467
+BF9DF8E22016BB44BA2E3840F8C85E9348DBAD0CE88C9666D4304C46E292332B
+01BAC2224C929A3B1CCEB543397A99A51895AFB539ECB5C73DE6A40B6215876D
+B4D1C949C9AFEBC8F8DF463B4860B9011A1C321BBE5438CDAE5245B3B31107FB
+FE1D6AE5982A78A15DEE72FFBF7FA6DCD1010151513EC515748EB4E0BBF6B248
+53B9410B414EEDB034AFA503B64163747FB302744CEC91D56CDAF3353357AFB1
+E345CF515A8DE39911562300FEB546292AD633D1DF16B4F67DF16D3DFD0A53D5
+68AB56F8470B95A9C6A5F4F2C9CFB37EB1637EC653254836E8A2F7F2EB5D8066
+F4D1B88EAA9E8E1FE2680EFDE9F4F0F462C0CE62FA75044C06F2E99A40F94167
+0ED5598B33DE5F089F8E520E9EF19C5C2CE0D46A541476BD767F49F897A28A56
+F2EA5ADCB03F6956F639E91A73ED6AF79447243F7DC1F961B88FE7EA7F082664
+84A2276DD338FB89CD66FDA0CF770025E12DA983E99DA370AB25D7FD73153C9D
+6EF3A4183CA0FFA1805F2DEA85863FED48166DC5028C7DF9F68A42DF971F0DC0
+04CED9E82CFA205F65A9DF6A76333D0A46D46E202113A04FC5851D4E574D4C29
+3489B61323E817BBE8C2975026AF761E385EAD2529E8D2418D67530C6B34F296
+AB80E144A46FB6B2135ECFB9A06931CCC735E0EFE5E7D81E884979DAF874BE2C
+77E1610CEC12E0C2851412AA12B4325A95248F2D688ADD67EE7CADAEB125C085
+22855B5739211B53A4DC350B8B812423BDA4BD630542D7ADABDAC62B2D03BE22
+D00FC6F9DEE78A07F0525C35FD047833031B5978F72359D52D0B180416C2EEAA
+9AFC797B26CE37F2E0D1E8CA8B9F730B3A51D32FB98CC7B0F8CA800936438E24
+A453F66AD038BB29A29E77F0F5ED89A074D3CE4C32D95B7BF35B2284E9591251
+1F45F2F56A5B5BEC52B61FE0145C918DBD2D4C639CA95610F32F89D66F118095
+27CC9622044102B1C85E2A9DE226E5F6AA69877EDB5E03B5B8C437AF3CB2772A
+B8315FCA2665191CF35E0BBB31C036978ECAB4A63F4416B2DBBF30AC5891EC10
+BA3D554BB8607995D8E282C01DE912D3C69AF55C43DB19D504DF96162A9F4383
+D145E0AD7BCDEDFFDCA7D9580B8BE0536F1761A113926BC2AA6E5D9BB981BF97
+EA7E8E93E8D6DB1AB7BAB9CEDDFF177069625E4A627E8E44625D681CA3385141
+3EF316B297C3FCCAF07B2665F9BBEB58324678CA0821C2C242B168E3CA1AFA1B
+3F39300472289E2CC9C08FE895E8C4B39C61456186F62ABC94F400B9489E1086
+AFB06E3458619EBFFAB50519A4299320366C85217CBD5E12A33D64D45C4F6A8F
+BB39247EE160F002B6C9D298E1E03A392CB33098D5669311B213B50E90528929
+C959D1C325151510822EFA66C2E526A583A0928ED440DFD58D1CD690AC5C1E7E
+463EA78713980621ACB197453E416E9273AC7CECC1C8DD54DE77CEBE51EA8419
+FDE305B72AA977528E2E23F99118EBB753E09EDE0F63C122FBC64F9E05FBA58B
+454BD1DBA45011BDF809F1E9A72A3309125578D8A3414E95AECC26624EBCEA22
+F8857E3A24F95BBFBE4482EBBFF4222534956B7BF87293E27181D86015854B01
+4643A450BA28268A639DF404E9793C3DFFC57CB6A95626892656C0F9CDED1034
+68316EC376FD38C4CA1550B47657987C4EC16469563CAE21D7CE41D16D56533B
+0456B27F0C13214D2088C960D05638C1DDFF0F6B4FA9121B3511E894B0525B74
+6DCD2DEEB502161C3E7641D7E056258ACC5AB3B2C0E0D77EDE65B96FD6A80EC6
+7CBC3C78E4DE1DF4421453E5F7D87F0F3DC0C2A994C2FA65C69DD86030281F7A
+A154DA27C12D58DA09465659C7209BBE95DFBDC8E448491A10AC0F476050AC30
+A8A184F3F4E4C357612EF05365DA0C0022419EE3D0577DB7F0C0C57E0ED94015
+143C4A03764D772767E34B90836FC467A63E351B87835B7AC3EE837ACF86A658
+72156A7B570E1D4151477F4CB4B76CB0E67407AC38AA0270C59F463C25F9849E
+55E8D38C3C88866314A6ED4BDBDA6F4358F1350E7264E0A1DA111EA6B4DD6242
+AA4D7B3FD3B796E5A0FF2AEA352C5EDF5F84517380FBCF61DCC347D7A410112A
+6B99034113F0D95A8DF8373F47ECB7890515EFB0F25E77664D20D374D3574C50
+1FBB647F6BBE29E1EF4013455B08A575ED9744583A08DDCE8A4697527EEBDE03
+AB309FB772885E699E5DF550DB6DA32FCD9AB03CA79FD4F038D0A5B22A11B1C8
+F69FF4D45C4DF2810092400836B1905423069B823D7A1DCDF147FBAE8A647D19
+C4FCB14FF09291508D6B594CF20A86875FC54E51F168FB9436FC35547DE2766B
+35985780B1537923D32F396EC89F21E41EA58DD4190C4D8FD49C920A55DC5142
+E072C7000CBC0072C7DEC35525138764A84711758218D81F0083F504CF0DA03D
+D0DBEFC1763395243ADF761261B4D3A861CC5BFEE0B0F721738943E78D93BF2E
+15D55CD0A39135610870DEE4DB9D692C597169A68E9C915D66F83749E5836BDC
+73D8C967763059CE23A583A918BA5370FA7EC655ECC2E9F7BB74C8C2951E32FC
+93BF38565405E456BB847688447D5AEB2E4444206B5225F85FF2FE0A6517E066
+64D8BD5C3703E0D25A7AA4BC6CBADC706CA1F716B6263145292B7945F7C59254
+56AACEDF432F493793E7A0E39505C9A0E0F3F6D1963FA0FC14044C8A47E6C904
+3845A7008182C1BB62A3F970136D348810116E0F411D9EA8A5CE1392F7D6D50B
+0C9205E2E89C8BA0D43180D3100E808C0DB701B63E1B820DAE73D3ED1EAF6A96
+DCCA56F6A9A49230A9953E4D29BCD0D9D18AA49C4DBE28C4F53169E12BE0FEC9
+4F6808CE9195D2B1B2BCAB5DA405BC97464195560A76DA303FE053BAD4405133
+DD21757550B7FBC9FEC2E1BFF7C2243343EF0EC6696C80297EEA30811AAE0E39
+CC9AECF13AB0DFF6A906E53D8AC956EA5A1F6F09C25641430D9DB281161F8BE2
+A43D7D3B1AAA3A8931182D9CA1441F22C3DF08A5566B961EEDDB855E492483EA
+7BC2005045ABFEDE1B881D0BD4B23C406ED4B962BE7C1D9522A13634CD0F4C30
+9381C0696D17D82D7FBA60A9808DB045341786E8C5B22B201058C4EF70AE8C2E
+BEC36B2BBD0A1084847BB7B5C9ACD7BC4781A7842DBE41C36D8C49DC47A9730F
+494866221BBAA0273AE98EA408643A0E02C3BC860E6FC3758E425C1B4F19CDC0
+5AF954A7C3BACDCAA788E2B504D237C950BB18A8F98ED769ABB987EC3CC2C1E0
+AA4A05AB751B64998655F2A3321A4FC14A4562E72DA68CC2DF7ABCE8F31D383C
+E75BB1CD53C30C8B3BA07BBC13366FB30EB734AE6E45BDADC96E18F20D808C48
+FD9E5F06F98682DCD1C3773A301FA84B85E616854FF954F7725DB7659AD2C085
+AC288D37339E9732F98C2A330B4F75F7AB6D4D23BA1D5F29EADAD52C062048E5
+E3F349A38B7C4C714070778E801AD9A9A435612BCE43CB48166291211CA715F2
+5E135942B7E55159D9E8AC1F56357570D113CBB53ED299C8D4FA3831FD8F8CB2
+E6252B72991D4FE40004F8571C1A3AFF220DD8E6C463CA5B8669232587EE58EB
+2C440DF375EC4C9890C5B420DD2A8212B941A78C0EECC089EC957885C610A19A
+62BF16DCE403BC775555BB426BB6C4ADD4CE3AC3E5F8124AA684688E113A45B0
+D275139923A84C4D1B42D929F0C98644C748BE096A138BABDECED58C6E5D17FC
+DF48691A8E1F5C9D39CC49C6E4ED40DA6FBE58CF6962A2D77B7E886810F05521
+23412C3CF3AD9054D032DE1198E311E1F18A7A745D382FE7F7E40AF7FDBF4336
+A794610E6EC1BD8A3F92D0FDCFFCD6E0FF7AA1E6986669F6F6F7B795DF1C1537
+5A6AEC5A67C3821E34246185DAAF3F7D12CE70B9AD48E098B90855FC526CA012
+B5989389756FD75B6FC3053B01831B87444CAEB57AA13B43EAB8E3F761E5D74C
+34E8D2C023548E1B8B00200547F4CF67F0FCB3ECA8A28EBFFDC0D70D6D688E42
+C1AD97E63223D98BFA4372B09AE8E94542722BAAF0420E70D4575F13769256DE
+7A0221A2AA1BB34CA6241A37B1084FE1FEB0DC5477ED4F20C10BE2CB93EAD427
+26CEF6A1D2BD0F3205EF5B054677274B27BDFA2E482E0EF6F9505F99E548171D
+BAFF1E564709F581B5E23C3AF69C4E4F2EE49AB65AAE50071E20A78D49B76B92
+ED9840CA54F8D0E211CBBD66F584AB0ED687C14C2845DCEFC868C262576524BE
+270B13478B6CFF710410442390BA1E25F95BCA5AFD4E327CCC72A69BCF2DFE0A
+8939491603B3D8156B4518A9495426BADC0D7064A95D798E8F5645D4C6AABC16
+138656B63E8AF5F7196B55B4B1D437A17D838950F119728E889655A2D0207518
+EBD99FCCCF80140F16584EBFF550409ED9C75D616933B7BE0DAC05D2689939EC
+9418FEAFB32CE3752511F5D050CBDB1777BA449F33454720066F238BCCF653DB
+D38D40C037F9367B32F515E2CCFCE0F4721CB35495CF7E75323AF8B3FC6F721F
+E0B74F8D6B7B86ABB53811C604356A29E1632C942B97FA92757393DCB7C31D12
+A9709F2113D9143C432A30232C1B7B268EFD1F2427FD6433227DF359380B84DB
+FEE305BDAF7F8700C70267CA36B075185CA2B623BB581056DD375AB726F33DF1
+26A9A3025504AE0EFEEEC9BEFA9609396FC9FB41086287BC6393689448EDA1E0
+9D451943BDC78848E9C6B3E86D9FE1802A8376AA89C911F4990CF2645560B029
+4B4B7D527BC7A508593F24E9CA3BD7B659518CB0E656B405A84D13C5B7B489E4
+3894AE7FEAE5F8CCFD3BB7C6D20A068A02170B9605D516D6588A362FCB58EF67
+855A0E9EB5D3D890437D6A52962DDF6A1F684E16BBCB9BAE5B803CA7CFFB7ABF
+88A0FD18D94DF5E1FE8FE427006837F6D8FCD2AE1CD7706CBC2877F8DC3CDD66
+FED28712F59416245D42456EEDDC298E683D055532F66B354B4D45AA771C8EB1
+827349E65BC4D7BC68276A993ED50D09665239D3331205A7EC9246B91B71D9F2
+C8885272D6A7D5BD4D34187EF8D7AB1FE441D7CB6FDD867B6C7EAAE7BE1F842C
+2CCD99EDF2449C22A20BA0C7DC6C13BF994C564930C4F4257C9A6BFD1D074AD7
+B16CAEC51A67B551815A5A268ACD6EBF710ED71215B98626C9066010EF487588
+6821353930A03362FB68ACDD7BD7CB24F198654E1F0A8553B662321F58246590
+AFBC572E21353A58F7DC7E68E602B16FB526BC0C9242A9821ED6279C6D28EE2F
+DC5DBEC438FD51FDEF4BB555867337C8FDBF726C184D4AFBC3B376BE34295A34
+A8EF90506415E7C5C8823033DC6908954E089FABFDCBAC40C27DCC5150223015
+2E2C2346824C23ABFF07BFEFA38D924B6CFD9879A92ABAEE6F3DBF75ABB2FCE8
+52F9819E465F9DC347BFFB3EFF08D0D259A0466DCA94903BD4E7C874454D850E
+3B3F654753A533D5083C9EC139E1ACA499868D9D51232BA9A172AE453736FB2C
+EDCFC0FE92D62B796902C593E238BFAA25E08875E38E81CDBBDF66E427D4E87C
+D889C33005177E215EDFF8F317A961A2B8410241EBFA72FC3603ABDCDD849A51
+99B138C5D4BF324A74D29916E6F35CBC0F9CB4191C094198F128E00EF9F7E19B
+B21FB302E380563D758D8B16371B4453BCA5C71A1A32A87839B4C710ABD5A636
+BDE35E6D6A9F388673AB6C7411E31F5BC7B89C5CB948748DED8A7AEFBD83FE25
+7100902ED27E7C43CB8451B54FD75A8423E145A9844F96ED09A88E4696650341
+E1CCFE9573DFEA5ED21DE9C8C04B544BFFE2B63DD36AE5F11EA91E9D671245FA
+D89B42F93E45A44AA8C0B59E336AB91BDAB1AAEAF2BE6B9B2F193F7F2C56DE41
+1A6A31A1CCC2F6688FEFED903B24EB4BDD324A2DDE86A787579F0A7F6721A20F
+AD19
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMBX10
+%!PS-AdobeFont-1.1: CMBX10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:06
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMBX10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMBX10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-301 -250 1164 946}readonly def
+/UniqueID 5000768 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F00F963068B8B731A88D7740B0DDAED1B3F82
+7DB9DFB4372D3935C286E39EE7AC9FB6A9B5CE4D2FAE1BC0E55AE02BFC464378
+77B9F65C23E3BAB41EFAE344DDC9AB1B3CCBC0618290D83DC756F9D5BEFECB18
+2DB0E39997F264D408BD076F65A50E7E94C9C88D849AB2E92005CFA316ACCD91
+FF524AAD7262B10351C50EBAD08FB4CD55D2E369F6E836C82C591606E1E5C73F
+DE3FA3CAD272C67C6CBF43B66FE4B8677DAFEEA19288428D07FEB1F4001BAA68
+7AAD6DDBE432714E799CFA49D8A1A128F32E8B280524BC8041F1E64ECE4053C4
+9F0AEC699A75B827002E9F95826DB3F643338F858011008E338A899020962176
+CF66A62E3AEF046D91C88C87DEB03CE6CCDF4FB651990F0E86D17409F121773D
+6877DF0085DFB269A3C07AA6660419BD0F0EF3C53DA2318BA1860AB34E28BAC6
+E82DDB1C43E5203AC9DF9277098F2E42C0F7BD03C6D90B629DE97730245B8E8E
+8903B9225098079C55A37E4E59AE2A9E36B6349FA2C09BB1F5F4433E4EEFC75E
+3F9830EB085E7E6FBE2666AC5A398C2DF228062ACF9FCA5656390A15837C4A99
+EC3740D873CFEF2E248B44CA134693A782594DD0692B4DBF1F16C4CDECA692C4
+0E44FDBEF704101118BC53575BF22731E7F7717934AD715AC33B5D3679B784C9
+4046E6CD3C0AD80ED1F65626B14E33CFDA6EB2825DC444FA6209615BC08173FF
+1805BDFCCA4B11F50D6BD483FD8639F9E8D0245B463D65A0F12C26C8A8EE2910
+757696C3F13144D8EA5649816AAD61A949C3A723ABB585990593F20A35CD6B7E
+0FA0AD8551CEE41F61924DC36A464A10A1B14C33FAFB04862E30C66C1BC55665
+6D07D93B8C0D596E109EE2B1AAB479F7FAA35279ADB468A624BE26D527BFF5ED
+E067598E1B8B781EB59569E3D0D54D8EFAE0F3EDE26279776ABA15341E42E636
+6E02817082BE6FE0B04249A4840C11F95F8ADEFF72173E9A5F2AB2F62C427E5B
+DC010E18641EAC906A5EF0F9BC2108062134A7F10956219C5847C0D82F0E8663
+12D963E012DF0DD899911EC5D8096F80B49CA3444CF1294FBFAB57DFACC9D01C
+46F3BA2F3D1C14EC30CBF83E5729F1C074D4F1665405C9AAFADB8BE41EEE43AA
+16966E2C0CCC853C4C09F245ABFD4603C4AA55EADC0A59AA6E9F5895FAF3D3FA
+83EDC6E2540417530AE7DDA8EF33DEB81444316FB3F93EF944D9FB06745BACE4
+848398BEB747E58310BBA39C64E341185C82CB77E9D4439EC15BEFF1335F22F8
+F036517C436225F4125ED67ACA7A84230D4E2B6CA713FD6B3CA54BEB540D4604
+D58A8335BC20052440C4903786FE3E335E331CCE36A13F05F71126F680077AAD
+ECAE10CB7C057C2D55F384723D58EF3AAE83E9E0B39D6A522667CC5B3257DAFA
+AC1C3C981B9415967F7F4DECD492A52D35BDFF8A83E40438B3B35576A12BE3AD
+BAB149D495329FFE2ED1F3587EB4BF6B7C1209F279EC564EB9E63BE5CD767D04
+E2D4193954C813AC49CEB1E84CE72CCAEEC6FEE3C2E374A2F9BDAA5DB3CE37C1
+09585F829065A21C7A4F56C391CC4105490C90F3EDF580FFF16F3C96BF68C5AE
+59C8AB53850981130A09EDDBCBD1504F5CDB92BDC42B61087878F2B3469B54AC
+0EC5B2468083435A70A2721669277E9FF8E163F1B98A99D91E3D6EEF2D9B8A6F
+25D17AC90BB9DB45E58E8D42A42352B860C295991CB99350A274CE08D3347955
+3602C6B2684140261C2C653362971E9665D12306F0F4CD8882D55E03D84998CB
+068B9614E3A111ED8A52C42248B4E15D2B5FC3CD8BCC8FBFB63074EB64FDE98B
+F0F62DE284B766C80DAF632607506ED39F3337E30D7B378CE805E6C111089C24
+9EEADE9B0CE8839AE349A5475C5C9BE67D3EDF6BA2E11F7AEFA7CA9A88813084
+6F94D78467DA5940D26031CDBDABF617F21D556A9B6781C450DB9D4AE3361211
+E1BA46BCBE7C5EF77CCCAB7252004D9C1F6D5BD63F7629B956772E358CDEA9FB
+A4EC8EA1AD5F2680B25DC232DE9D3951E8AD6700511F613A3AA1554C208F5F11
+3AF63F0ED48C723C249E2405110F84EB5F03411CAF6FD54DDF7FF201E8AC4230
+0841787F5C04DA51180F3A8407A6ADE13A3BDB4D791F82A5CDCA61D2A1E672DD
+62E29FD0EC18E55193B117F8EDB9584A6E8A5B2772C354CE9369D5B87FD63081
+85132C796CC2F65308D29E01C7933A960D089734AB54DE9CFC03F59230485186
+176B6BCE726F75F3CD1D4A020366E22829180DC4FEE2F4E9A494C0382E7D2524
+CF269969F9341410ECD75D0BB2ED20F114A80737763A5526B793E4065CE83795
+F177A272BA1B1041C5E6C0DB83CC704C91DF9594CB0183EC512E29A6393E6903
+4F3E2708336465F25143848099D1CA9D6D24751C6677C28C1FB30C7946F4771C
+8FB17BA55456BA48324694ADB3B58D244C73E62EAE5D6B358A2CD7AD380EFAC1
+72D225FB20750DFCADEACE54FBC7C7354AAE69E7DB6EB82FE8DFB5E7A852EDDB
+9EE6020DA181673C773571975F2303FADC3AE6AB3508FCA32ACE049EA871AEA6
+8D3B804CA522FC20A1212B1FF522DA55F62A6DFF705C1CE35C0CBA242CC3396C
+2E6EB0272E3DACE1176664842C187A304705950B3FB3E29A092491FA7B8E51FF
+52E084E3F6CE3138BE259A818CCE44B9F2476DE8E2445FCD3DD20C8F2B25E023
+F20B9B12ED1D121AAC818E4F0CA64A67DE9306729B0DC523F57F7103CE022220
+DAC296245855EF4F7DB236E5996979374EB08E17599A0BF4A341EB7AAC07DB0B
+583039F1E16BC3BC3C9CFE20B00D8A5ECD9F5D919C23C1EEF629E96F46369483
+830A3394E87132D0319F6FDC035E5944EE13684AE645A125E41A3DEF546F9BBB
+A8E3D8F01A7122D8562A152AD79D8709174DD20A313CC7E6BFC66EB19553367E
+C37E5A890118457E4C84D9C3680ABCF92B35D0F13E4084F2FC9C20164E4387B0
+765A684F26464EC81B563346F81CD40DC801945C9A2AAEA6F311984FB8D27030
+C98E34364D12EF52CD1F02C45C464A376F5AE8EBFF18CB990675F6F3666B7774
+E6366D8BBC5EFE860D8744D84F1AB1B48D74723F531EFD88A9B1E469BD08CCD0
+7EACA2ABF85F1707E1B8FD65860B096D3FF948B40EE4CCF28AE912F4E53044CC
+1AD4ADEF7B204AC75BE2591B27A4F648CFF1BEFEF756AF5F28EA3C94CB3B1BC5
+FB5615FF3DCA4C3B34C342CCD69864C9450A9AAEA8943E5F54DCAB2B63306644
+0D249F9A754653104169DC4188426DDD537A8493AA797ABE2D0793343B62F838
+265E32007888497E5B16BC43532B9414A86AE524326A293245C7F18029062DBA
+E301DCE18DCFFF419788A665445AB041AE3011E55B6420E71BDB746C5FA517D5
+23190C541771CCBB9DB9AF6B177D016CDEAE0C5AD7D5185C97A6B1B26A9A3C7A
+FD3831E30D0D24915EAE4C2723F38649A5DFEA4E8603185D7C763B06BE71281C
+35E77D0576F91EACF31854638E62416136A6D44FB1744E1831FD42DC269E8958
+83A92861E971BB2B00479C9B28010774B5F43F97C2F15AAEFF64C903E5EFEC6A
+52FEA0E4D6358414EB9C0E69B1C4C135EE95394FF6683B9E6D52A4C86C618F72
+50F49D94CF37154619ADEC675EEA57D843590EB9A518C2A6F5D2671C4BE47B07
+2F2309620819939D86E8E6F885B170184179FE18F3AE179D7A9C71120BA701FF
+471BC0428BAA25B7F7CFEC6FD095109C40514FED92C63E5E5423404ED7B2D4CB
+B51D47FFB0F64A429C6897D4D8716FBC0E3667DB54C932748F090C80621F52FB
+FEB6F1D937902931128AC01DFB93C5BD6FAF1CAC239292B9C448BD6319FE3C72
+D5286AC85ABD1A01A005191537669A3BD8F4F6EA1DB27EB1844529DA6488D999
+1477D0ED1FC91E2F5D075DBB0164A6F4626279A134235F429DC2D4509CBD3DC6
+85CC4986EFC80DDB52499AFF32FFD85152B583BD85C47C833DF85DC76E233D1F
+30232A2CF6DF2FFE5D1CAFB47FB4A452836BA0CD9D54B8469FA7A8DF81507389
+0CD55936106BC0745CBC5E28901677183BB432843A19BD313F7638B27356C62C
+7F5B2206F67AD8154AC26E7077C518B247122B4E97069C4F985CF3ED0068574A
+B61A65CCC05FCC8C9E42BA7B603C029699AB4F9FACA4F1DC9537AEAF4538A46E
+4F032DB5C390A2E071933612CC151BFDC3DEBF650FCC348EC36A4D4E79825846
+9B0C6DF76F26B80759C52D2119C3C420B8D5E59462ABEEE88B61588389130841
+87A0C52DFCED2CDC3ADABF95F1CE1AB98358DD76FB439C3E2DCF1C63A532F3B2
+30C2567843D48893D07D41616F7BEAE582FCE21BF22FF27144C0B98AB5A88523
+65D70FC71A0A59ECB4F2EACC3BD7DECCC96DC1ECC49447265F4FF32D96A16F68
+B99050B2B6AB928DEBF14EBF7D8F796240297CA83E611B17E3C858E4E1A53849
+35ACC43714F6ABA35521603CEDD8B6AF04098DF8E7EC6153A2DDAC0F077A977E
+96E0D4DF6154CA17E4DF5C84F6590990EC9C84395864869B1ECFC8C7C2A89389
+A2D08EE1A1BB01BF0E62F2F83B4EB5A7B8785A880FBE4E8C6A9FC0ED5A486ABA
+F5236DCC92F65E0C86816F5D37832A8F15E1428B3EBA86488301D1AB527BAA03
+1CA94CE02E93CB276B476C2B6DAB397901B10A55C58483D0AFB0B0E37148FFC1
+0BC4DDEB04F713C6019C7C40995B462463420E987F51EEB5D418376AE9896842
+01C11F3005C3F8ECAF32ABB2B8FA65A841EE91841B97E2F551E64A0CBABF1C67
+D28E97AC8FE2BE898E285997638E9A830DF3F506D2ED1172071A711A21C3B9AD
+01557E3233AC20FABE7C03A3FBAC4A5D4C1B92B3336EDA1059DBCEA9E0926514
+385832FE1B6E6C458E49252B262847F64C5E3BC4D06377DDF2DFC3C28B2C3210
+708CD0AC840B68447EFB9985937213D9EC733D67342E5BB5497CF413DE4ADC92
+9F414FCB85689D8BF630A43A6AD4E9D361AEEBD415AD6251DC1FB09B23F5BD1A
+EA97EB262FC07B425C38347D77217BD76D0ACF43465430622E3F57D85C760B07
+1D1EAAAADFA3C9564D2E4A871A12C8D958B6EC3E8CE44A4203413BC9B72E1257
+6F246F0BA295DE1E7C1CF71568D0835147DE1C463D46C2F9F597025821F2180B
+96A91028FC452B189ECB8ED264173DBBB2E2B4492CB592B9E7BFBB2F0AA6563C
+A97812A119A61CE8A71B28D44CCA43206B27458B4A48FDC0894CD3E903B838FE
+C44719235E7CE7FC369CFE3DCBFF38CE336F905CB9E1C6B8C438866C70C5EA7D
+C5B94B63BDA95F879D8D618BD9ACF0D3ED85AD61A87196AB5AC6CDF4AB871BA5
+A917067D0289946344F5B54030B3FC39AB3736529D5524FC9992BB4EA5ACFAD1
+F627230608FEF578ED927F9CC660E79EC3B3882AEAE2DC64CB3FA18447541E6C
+205DBAE283AF7D926C964725ED1C7F124F5296DDDDF38A32FB054B674159B0E9
+83394104945D64A708F14BB2B42F2EAD5529310DC1DCF38F4408202ADAEE74A2
+593038D98A403096266D497F7FAD04713E32FC5ACC649C413299F76740B84759
+A5B734B610E7F33634DC560618F69ACE33FCB26EF7F8B5FE7BDA98CC585C814A
+79A00B4C53D4E21985FFCD107DE2D344C71124D54E77AC7F08193F9DE1023408
+A7F4FD0C00E265D7B4192AC01E860852124D527E2C33C255B0B19831033B9A4E
+DDF54FB2DD27D5532B1B049515BE3FABFDEA92A15C1416D167E1C2904672E5C0
+BC7BDE45102C54DE2C1C0FA375C860CB510A80C1AB6AA134CF7B10A7F663651E
+3C33D483291C719BDE39B0DA7D1412F6FF77087C527F879212A1B27D43569043
+C26CACBA8BC12C5C381E37C4C5CA0FD5B9FB22CF6BAB34F36CDB3CED0431A0DA
+81883A9D8AF32BD268022374CB79685ED0F2D9E3CB6E2012BFAD96E14795A9E9
+DD80F375F08FAD2A3C826544D6C0D74408F0DDEFBD296C8BB841A4E7EA940610
+FD6279F257ACA688D367A4F57B0B98A984809D8A7967085618B395BAC0C1A8EA
+2E1EE35A84CAD76D6258E0A9D900E12F77D35891990B0DBE9387B92F15275255
+3DC1EBE7121DF0FF80A9689F977F4B0C380CBEEB45176306B6409737B31FFDB6
+6BA2E1DD030BE2CACF187926EED1AB7A1F2D97FC8B91BC1E417E489AE80B8D8C
+7E5666EE14CAED91F310CE62130F60DED3D4B44E6D3AB1D98BC0552EA306802D
+1741BF8F7397F78CE642CD26B6F3B294457AB6DE5B04C6A5058968E42F11CEFC
+00DAB2C0C81682AA259996A7D3658AE676BEF600E0422A59C8DD26A175790E5B
+494F1C8004669ED88FA9AB33793F0BA9AAD7F4CF4AA88B727820F74F0C8C4350
+7C90DB3A6AB09893BC5ADEE855045867887EAFCD05A5E4DCF512C230BAF85843
+5CB39F1F0984A46B477B0BB89D3B8974A281985F17A4832AD6857FD9801426B5
+2650293F294D6E68A359C150AA9C93974B0ECCCA8B6527DE2B2BADEF49526D7C
+59CF62D0176E88D18E200656D04BB0935A499BBB99A1CF6EE6EAA22D49A1D30D
+66CCB15FA62529C29EDBF631AFB61FE5C0D2E50F73E58BD51E28EC74082E09F7
+428E45335CE7C16F2709C782E9A6862141C931DBEBC181F09D0DB6A2E81A8DF2
+F133B979717A8CDBEF1E10DAAFFF1C7AB59FAEC3281B177A7C0603EF5C183A93
+5CE23DF37B21A35380E0ADA9748080A9E9E89A5344E6F5C4BFC2F968DC654E3D
+5F8851754795E7AC3F18DBCC1C09CE9204D4852D781EBF12989B3640DDB4CAA5
+B84787403E18811A5682F0DEB08D45DD6C5B73809EE0E55AC525000D2B352A29
+9F3B58A1C3BBDADB54B8B68E790A2D936401295B3AAD4F816BCF1CFDC008B19D
+7ACC5FC3A05E6645E82FB08AA0C00B3D11667D8701F304BD179E6FEAF7608D68
+6ED9569421922F4FA661FAF70FBDC8049A7ADD1CBB3D89B3A82E3D906127611B
+1ED412B9E149D8DF17B70B174B020C21378FD5123051F06409AB47C350DCED7D
+6A553A88B1057DFF88F37849EA5FC672EC148F7B9DAD9E3F36ED0AFE6374E2AA
+9A2BE8CDAE6D670F0CE97543CC8899BBA44D50456D3815BBA6B28BF9F836D263
+D909971E20D11311167C1C5EEFE5B23CB02CB20046A2018DCA47349DD0C09E2E
+057E12CD0AF692EC732B87445EF947BBDDD091875D336976EA16FB2807AE7A4B
+49876F771941D7DFA8523802D5688A71A9ECA7012F5A3BAC96F2B36185BE815D
+386D287F75630C09777F52AB4A387D9EF56CA5AB08EBFAE0F5C49644BCA60323
+7D66877F406D61CE3FC7D9CCD8B0784A5F5D6E870A4CE531A21DB37DF0DFF393
+EC7D5410A9A709B40404FBDCE2144B57AE5363ED7FE25397DEB57B9BC24D5D86
+3581AF2235471F1754574A11C430AF160BF485026ED8A5EC7F4E4321A9EFDF24
+9A81738E2FA81097F3A516E7494E9152598611B7FA266B38B91809140E83116B
+7FA0089B9581623B49B1849F12269566465A709977C64852BD2D29B8BE3E58DF
+BAE264B3830DB3D6019BB5D772AC2A24F5280A5471E5D493422200C2CE221447
+CF235D3FFA3A953E530BC54D703EA8BDEC7D758CBD2F64E5BFE882F7C9ADD726
+AEF8C7B0983C57A62CE9E5E881DC3C26B826FE1413C04D138AF19A6B4010F41F
+59E4FB18E8E4E349CDD841A6E90A8D5644C58A0624B862E41F75F0BE181D5AD2
+4F3F9AA07201F25AFD0EBA827D3028FB6E5B0734DE8D0D2BBDB917F8A65FB7F0
+76FC12DB03687B801715A99859FD82B17B37030D80D16633B80302EC2AAB9F05
+83F4DB34842484F99D645AD578FC84F2A2CA5355082A1BD042AEC4D583B5B32F
+241DDA8DA6B94E05184E023542A2A8CE3054431B856EEA904193238F73962B5C
+38D5200DAC55D59A37A62D3C9E31449245720AC8678505F66D3C111E4F6DFEC6
+B5082BA66633D105DB8CFCA5157AA13E397A09242F0ADDBDFA42377DC04F9E18
+543E55A3E41FBF8187E184357D7362589A1131B39CFB9E7EC8388158F6562EFC
+CD57072C8941C8CA3B4AF4D34EB1634928683905AF87D0DB5B450113C0150D65
+D989B536DE2F9CC5B4E45D1B374E3087D0B0BAA91001B2A8B2F1B190F6FCA977
+F0C2669E863DE7CDFC3BCAC3DDCE5055C111FE49B945B77E42EEEC45A30246EB
+033DFBAAD93CAA5874EA9C41468C57C4F7D4B0EA180642CBC9270609B1556E91
+8B79F887A757B7E98246958AA1D5EAD7547E7C9BBD1329EA9FD91600211B5026
+C7D0CB32E2CC25DCBD3D21EF8EBB4818C8B1A770702F5ADC8CFDEFA70755BFE4
+677039C0590035145BC4C1BE5250AD465C3A5996F406895919CBA13DB87DACFC
+24CE259F047529896C964845FAC2F1EE7610F3F2585C1EE5942F5CBA863C4B7B
+EA8C7969921C567A18C8ACAAE55DBF2B194B6E3A7CBDC87B35D2A1B978BEE26C
+9A4CB038244EB899AC6EA1A3618547ADBEFC5FE1950E239D36D346EF33A6E052
+D13B08A3CC4D4F45DE008F743746845EB2BCA6D7919996769C632BA5F67194C6
+ED90997A0D0EF51C9D89B385D4F1927FBF71D64BA74ADBEECA84FF463347359E
+638CAD3B52B1ADF3E242F23CB8DDCDEDD287832CEF4FC806A9FB9E27E7FD9386
+82CFD64F15BEB6405552011AB64EB8F916979F889B68EB62507814937101047F
+5863E4332099F4336E7DA5B055C3A86D345CE1D775C11D444D1EC595D49ECA92
+EDE1339AF34FB2D1857A2951EDA4186D410367EE4B4E510E8D99AB7405703A80
+4753613A01EA654B6AAC055E698E6918B1D2029ED5568795A707FFBE87955C5D
+135CE90FA57DD6A09B3100819BB4ADE65F1E02B4DE866516B89AC16BA6E9709C
+65B537D6F4641B46ABB7527E913B399C4C07AD0D0B271849BBFEBC3F5BF6EBBA
+28476DE39DC6C1AD6FC665E68E0C071372499DC9E8C11C9097E2B2F3A55A241F
+E0C05F750E0D422FEE08C141E6274C0BC2223CA3CA60ABAF28E333FED720DF3B
+F2E200C35D1787B2001D63BDFBD9862108009FD565253BBE324A9BF419E70ADA
+D3E2BBBEE881B099FE150C4106A190843887D17F52FD251AFB236EACB9C04785
+ED62915FF9766C6C0BE4EB958BBED27837E2BBDF37C60AF78AFEF24FA583F9B8
+0C01145E7B54C834D18B23673332A0DD7D5305E1FF3E7F00FAC0ABCBF7155962
+34CC86D0B65193C0EEDADBC0615AF1E59FD49D0E1023765607AFEF365242A53E
+9AC06A9F1B43EBB0EBF390B94E788510ECFF20D43EBFD1BBE71528BDFD19D602
+E223806223D3E368677E2DB5876F50144C62E0FA36B64833C11CBD14DFD63549
+7FE9F91B500131C4513A5F4CD517BE572ECD3AC5D407AE9810971D9F7EA6DCE3
+E980E5A2DA9B8357A23E9F490D83D58FB140D21E21E2321616DD0B48EEB8218D
+8ADD8D020B4BD4D18389D43BDAAC29216AE1561DFA724315E26AD2BADD24227A
+885822318FD2B13FF7069723AFA5A8BDFC5155D3E7964CB45C90FDF20C5B4396
+7021A8487D8AEA80B5FF977290E378FAF8CAE80613E419929807899EAFB511B0
+5CC890E81703F6C157D60608672C59BCD8C229777A7730588B9B70B2740544AC
+2C92271B50BD153866B9639BFE9B4294237384269CCFD9F015EC947AA4309200
+CA897231A47C47F5C7A2AE4AF24ADE167858C11E591367F90D71CBEF7184B566
+21425C00EF5498218223FF48BF47F82BA4335EF6D00AB3E7F9E8FDCA58709A78
+6F1F9BFE0679DCBAC40889C6ADA8706E996E51ED005C48D78E2C2D52F2666B0A
+132EFF0990855834D68786FAC9B710CC039302E3042EA39280A3B329A2B00F2A
+317E9BCD9ABF8F40B5594DF604825C226CCDD03A9ED4526D591093407F0C2F10
+3CBCA2D543FC5E9E7886A13DB0DD2971EE24A97755403CFCA983BCF1D4952BAB
+25A8B4C740F712DFC42644FC0EAF8C1B041711C42673F671E1772D3E0057B266
+3AB7D34E5622914F63D0CD016C9A3996F979669E2157630F9CBB66C04BAD6A67
+BC5345AA7622DEB1FB9CBB84A39018D0C0AFE7E96EA8BB7CFA8954F7CD35304E
+0D4A88215D337689CB24721EE723980A3B8A77975ACF2FAD8F9579F634D455DD
+51FCDDB9AABAF9682AFAAE5D9E6969FA36E49CF1500FE989E9B8A6CCBFAE8227
+51367761FC31325082B92E322889ED77DEF39CB073EC26E96644AF1A6BB8D15B
+FEFB6C1F36CC0443D9CC4361B339D6BBC8F2E57854963067589D789B31763385
+E244D82050F9123ABC1F5AF7C9A3BE6E9BF9266E1542446B065CB442CBC8D2CA
+B406ADB257FF73CCDC2EFC6AC216987371C1F7B8279C3518C2843D5D81ECAA10
+19811335B53F76C014782B89FF18CAFEDDB367626A834CB1A1CDD8953F965A1C
+A049B164211E8F2748B1A1624132E6BACA257416F03D19F59EAA6904B24903FD
+A62EDF638678D45CBF5DFBB50FFFE9FECB4CDFFE7177B084379C6EFB4B5916D6
+F421FDFB108235E0A4E10510F0D4FC484904EF6BE0EA30612250C0E8A2D8E3A0
+8BE1995A48AEDBB322C9C309E1783C00F81BD48EE9840D53E6107FA0E1D405D9
+115D445153EAB3A54D9577ED4E42793E0C89CE1E3B4358E51346584C871C455E
+4BD274C6165470042E5E9099062C51D89400812B01116BB4754E049CEAD92600
+6DB7571F467FE24E2A8EEABCDE05E84F200AF45C7C36055A390121155E09C00A
+100EDD8A936F9680CB8CE502271E2E2AAE071E63E9FD93EC4ED44C62104828F4
+2B03DCAFADA09DB2A2C1CB6AC0343E4B8878F9895F5D3E5F94B7D5641FA1B46D
+CD1268AA6E0588E69D536D7FC71F064F3DC94AA0BEC3F12F9F3E43B308DB9D4B
+35FA7A03F23BC23B94928321C0BF29A78682E7ABE75DC37ABC2CD53C7794C934
+23095D679E28E6877EB984D709678C628BBF6F086C70BDC873915EA1BBEBC4CD
+225D78B0B2F26B4AAEC316C061913D35C5D667CF64FB9F93BE8B21B46FBC846D
+5A5D57A15C54A77F4552D198D2ED673D208D14D7D751F0BFB270531EAF441A45
+B542EB6E18E58DBEB61860B3838B79001A600F4DD2B7EF163D0AA74F412E7829
+11DF44E4659DDC5FE3FC7F3389D94137020BFC92AB5362B4A82BDD644628B425
+3D2EC421F876C5050C56297C56DEDDE8E83803E13449B4FCB19585FF320B06F3
+4F0BD8A63EE6CD4532CD0BD25BB5B9F9E9EAA1F380B9C189D844307947AE89A1
+B96D42BCA3C819812C0AAE6A0073DEC18718103E2B41FD35C28BC0D002300F2C
+86C320FE11E740A3C53A78078F0FF7CD997084E6F3B94105A46DE24B64B217E8
+F5CA9C091A2944AA07E9EE340F40CB7362CC0D44B658F4FB7588371C1185037E
+0A8EFCE7D58018BC2AB6D5B1695422760267D2752577982DB318E15B40AB9A77
+502D74AB2E7AC555BC6D1DD1530226F2F321C0BFB464C8B53D5C3386BD7D6656
+4CD33D3EA6E59DB670F0407C20AF457D4E6617EF264A3C6CEA9F2DD2B3FA833B
+13930CE7CE2797EA2A5D6A8BE738E5CADBC242697EA3F3B629DC219F816852D5
+EF5AE05A76C3263CCC8FFAF1ECCE6B4A2F3423CFC240BFBA6990ED35E7D717F7
+397DD8ECA9BDD41C82D2EAE8372A724D0392D723F4744DCCE975565554C6C309
+431E63CC1CA9DEB43B3F1A20EE2BEA6108D8250E5B26BC480623E0E37D406C8C
+4B3A609C69F2069B3011F62373871755CCD3EDD9CA163843EB03C08478A0BAF2
+481E904BD2FA25F75695817C025D79170D70D5129F76A2EC4A71FBB1CF5C8B37
+C2745BEAFE503D19A87AD359C83E202ED8B70D1E035DBB06A5714856DB78454F
+2A3AB23B26DD41086E5B7835FAE6A24B8EABB83E5FD108139FE0CDD8178E43C5
+770335E7D7A9203B066F03B571ACC77B1DC0135F495B5101AEC56D05913E78BE
+9FB363EB51A222D1F075B7374A81764C10973D048DB6F7CA40B677357425A01E
+EC82CB6E23DDB64AB8CB8E20C99F4FA3D23AEBCDB41C5803E3B85F3EA003CB9B
+1F628A263CC0F4429A0232EED7443916471457A11601435BBFC1C71A707DCA32
+1330EC916CD90153A82E05A16EE1B561F0B057D65DB499AE9DD2B8A867F1B771
+5DF651CB797B34174B4AFE67AB24C9ECF19285FA27F0B36EB3971B43BF3F09FB
+6F1E4AFA126712C6A8E9E0602EC3A7C811AC2C8ED080D28E9EBC0C81D835A75C
+40BE1A429E85C688036835E5C3A5EB4D7B5313441196017CFDDB24503E7F1BCB
+ACE97EC5BFB66EADA4A306F5BC9661F5FDB8104AA7E731DAB921E209BDC0FEC4
+C4FE288D301A5AEFEB0A0FE3EF3C25B92AD630AE8989CDF233B5483A904A54DE
+2E82CE52E8B69347D31CD1B9B165A274E70F09A59889EBED2F7183F4BF6C4210
+2C39A57F0404133CA01B5CAF628FB7C36F88CCF4D6A1DF2AC548073857D360EA
+BC982D6AE588A137685734F0536D61780658D13039236A639832D52A3F0295FC
+51445614E9A286D50C9DBCA4A8761E1B4E895BF65287190462D35BCF00119689
+3CDD28DF4C098CA9AC41F88EBD3A7CAE180139739CA97C1CB27816255ED7CA6F
+892795C1A6E035ADF1DFBC6B6AA4C5714BAC0F195DF31D29FE0A884EE0A553DB
+3A920B16BA97B823B321ED336B55C9A747E2823126F0DC9B831423ED8B2779D3
+E6B51F50C9F40B9264D27EC60AA01DE6DE6C9C41D934A191AF7C27763FA1367F
+2E126DDA41FB2C1E6F84E4CB875A1F442A668006D9E5590B5CCFD78F0D9C9031
+B77545A461BB65D0FA5C5B07804088C578658E0A6DB0D7C21ED0156366500BAE
+E4F6E0A79FA7790BF25017BB63D852EDA7092B4F78F8D9BCA87EB259F8D28877
+640C58856310EE8F7EB0C7EAEB188AEB9982629612826C44528B545C4F8759FC
+DA933FA8517D9F5B24F905C0C677B558431CC3049044326D1F6D5415D48D5C69
+6A29D5D816281A7FD315535B573DA5289FA1408A9CF5D3B07A869FA622B5E9A5
+F294EC544B0D74A507DD3B7FAE92E16BA622E0356234AFA1461351635260C1AF
+A700F571670C9E052814F58A070CF0158B211DA7615A36BCA3AD7887911123AE
+EDABCBD16CBB40C3E44DE79C73519F9ECA21370BCE89E3EA7AEDCF932BAE83F5
+8A8C026E0B12854B5D2BBABA6D1BF32515C2F4B6D09E76091BD02519337C10C2
+3429181CCE09111CC8F2E26FDED6ED5209A812CBF75A0A049294E9976A571E5A
+D296E0E5B0EA71B2D943A0E40ECCC80716A53DE41C0752CFD6438862E91CF9D8
+F1FAC881C45A9CEA4BD2E3F7948D2A5D7A9C95945145B33E7242F31C9A87ADA8
+FC3F9765C01F30F3060566A105830D8E98426775F309788DA6B2048B97C397F3
+A7D5EB90D82D4AA5B814F9CFC44A1DB1628DD27740EB9D4DA30F02D4FBED8013
+D6F1459983ED8285EA9CC280A5B53F6B0C6C88E49B33BC77D0C06D511BACA2B2
+E269D228BB44FB65133E8F242C11FAB6237C3684308DAD6EA90AD73834B25250
+12A93FBBFD2446E2973DD9D3B3754B589CCDDB9AC5C6459F9D283EA3AA88375B
+3460E899F48FAB9DD1294402FBEE91B84AD39706632685E87D597976A028C84D
+9B0BB5C125BA1D1681BF0E95AFCD13DDBE6E4E367978EAB3A9FC874AD6B366F9
+E0946E0935D2222C9C6FC90ECBA2F928244DB4046FD39D6F3440FCFF2C62E7A6
+2EC1C6B4ECAA1E12E307C2CE99D9C535E4DFDF422B7AE00FA1BB4F1BC9CDB82F
+6DF4E79283F358D73CD87838800A43D793A959E3886E0442B18A170326593EA8
+D503285ACB3EC965DF50D3472ABA96A7EC66EDF9028EE8259FF13CBC05982B3E
+E4793D524797B94DE030941E330F2282896905F9776627E7AAE5C46D538A594B
+BCC9C581AAC662C4036E13715AA73F6B80677A15E426344CB88D4D6447C37A37
+A5F86D717BF46723A371BECB81046B290BCBED5E855CDA95C13F4EEF6B33103A
+F0CD48793519C79F4573862A7566583F9B21A264A215C54BBD9F3576B6624355
+EF1D0DF13C3AF03CB9EC09C1DDA8C7B11DD185139E7C75CA2AA29F32F2076219
+0EA79EB9BB732B3E91478F0DFE4B3AD72FB535EA00211BD2E753667B4891E8D6
+459A61BEFD72018F1C26215408DD356DE1382FA5192C423E390BF9AA6F427730
+8D1DE8E605B3D83A06A64BFAEA5FC26CC98A12E3C0DCDF2935A36724B3EBCE41
+E6E899EB9A2236B5DD0230EDE9086AA356D3E23434EF838C0C5809F4AAFBEED8
+4DBE3CB170EF57C5266E28928493E6E746718F38442DA653C7A85FCEEE8E1A8D
+5CBA4C8F550CC8586E4C24CCC00B4DDF53F1B625C51BB8A66895DE836A2C3582
+59C56B74EA8B509BF310B9E95B55073312D05CE29AC283B3156E5BBE836EDC79
+CEEF069CF83C60E5C97A5D30068968D2C1F8B0A1727B513EBB9E1E5D52A2D668
+A83E81975CC0C9D9709FFCED84C85718087C051CB98D7CD60A3A18B2EF9FDB97
+9E2B49488E2B5FD6E698606F8B4DF60363E452CE65E1133459D5F9D670961B8B
+6EE80AA70DF76E77038D99547BAAC4764329AABBE382590A5CAEBCA86409D073
+C8187F932956CFC6820AF8E15F53EE4080AF241723EAC17973AFFF8320E3636A
+41C6F6CBC3B628CE5139CF007EC5CD39B7E03F598BFC78B049384D9C3036CCA3
+AE5B4BDC9AE20058173183796BF5EB6615B9FCAF6CC8E8B1032905B41C159AFC
+2764DB2CA84D04F5AA83DC27DE17CEE1A3E3F48B094D37EEE540A1AAFADC8447
+F3E72C8B1C89F1C17AEDB2BADFC7E6923312858264BEE55C2FFFA409BB13F66A
+2F6A37A4D0F7043441DEBBD12248F4C05B2C779205611B22E6D39F8DE29C39F9
+D54A08B05EA5AA8334D1F0F89FF75320DB
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMR10
+%!PS-AdobeFont-1.1: CMR10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:52
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMR10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-251 -250 1009 969}readonly def
+/UniqueID 5000793 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
+87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
+D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
+92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
+295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
+409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
+4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
+2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
+0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
+B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
+24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
+43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
+D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
+5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
+96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
+7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
+0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
+B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
+AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
+97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
+FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
+20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
+0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F966977BD8C8D07FDBD
+F4D058444E7D7D91788DEA997CBE0545902E67194B7BA3CD0BF454FCA60B9A20
+3E6BB526D2D5B5321EE18DD2A0B15E53BCB8E3E01067B30ED2DD2CB9B06D3122
+A737435305D42DE9C6B614926BFD44DF10D14402EBEDFF0B144B1C9BD22D7379
+5262FEEAFE31C8A721C2D46AA00C10681BA9970D09F1EA4FA1566B96E221864A
+45A24ADAEC63F61C9FD18376D3984449A1F998C318A8FE36D0D5020E18A49625
+0F3BB603BA1F3E66FF412F6A32433FF8BD2968D79CE4273AD0E0CDDA5153C2BF
+F8A46A2244F9394A49D339F763F5A7411A3C29336B21CCB01723705AF589B078
+3763035411FE36AB5D744E81379106890688CB5BC41184548B7FEBA08DE7288E
+E6570FEA20C51FACE8E8F824BB61A4A038AB817C47B87391611B77928B2565A9
+3B27A573C05D36ED01D8F27CB2C793370FA9B90021B5696280A55F2CB6117B64
+293EAE0EA5A243F56FD007773CA35DF71B3D28643C25210CCE25F37A5095D6E5
+9CAFD99DD1DB0D7EAD454C13464DF6FF5DD42339797AE5AE467084550FC00139
+6EE818C6365007B2FD6E26285B832CFE6EA7E99665A224C9813C036CED26263F
+C49F0E777B84916E1D6483B365292F304B82DD801CCE0FE749D4B510E63E268F
+3E576C585E6093A1AEB53657201470366FD10AAE660D39F766C0E95222402AE9
+8A5E4A0724527CB2F9EB3D9904398E8ECB5E957EEC2C77E0C9C48FC5403EDB57
+2B404ACF6BB79E8665AEC38EB41CC1FF4860D177F88F40A995F978D882152CFD
+A8CCC94C0321B2E86F24FFDE5BBC5B61113C966D9D2640A20F8B6F3C62F1B6A4
+EE481996AC4193F78172FF911C1354DB1E85F98528CE5F234946EFF2E82B362A
+46BB7FABDDD9382834570BF478EC18DB779005EEAA7189D3E1C9FBF80D72C596
+97A21094E04052005603D429F20065833EA7DCB8BE9DE1B1F5B1800A27F3F731
+50F119551D1B3851F42F2A6793F5B62C138DE84F8A0FF340DD2FA1B9940C089C
+C602601DF2F2A7176453B4B7F685727708DA521A96105B84741192149AB3212B
+2C588CCA202FBCE2F042DCE8150716DCE03DB940B2714D134928CA061B079BC6
+FA0BD6C4C97E643226742466E2664160A6B54B071D8DBF022A2D851A47A2D091
+B59071FD3469748C50672F5595C4921A76666E08DFB48A82F76EF77CF97086F1
+8533AF8FDCC119B80A5EC567BA83F64E99C1DBECDED81F31C02498F3E847B2B0
+BC593EC3488C48D7726661BDF8AB0E5035C5EC69FC53F9361F769BDE54CF662D
+4B0E1D52BBA555AD94927FF33B8DCD79BD61A8ABAF4F6CA5ECF506FFC59AB647
+585524AD63A1570630131B49CCFCFF73395CE9495EFBE7D3101EB0C38F639E7A
+6265526CE284D00263A62399CD77E4929B6A3E823A14C134716F2DB4322A78AB
+084A8CF09712115063C221F61B3EB6D4582840DB9B99B29EE478C90747C3D51D
+5AB7FD178DA608949FA133943BAF0E6BD387804B743D58711C48AF3F28C47E4B
+5C7907505332709C949B785DD9631AA245691069D8B3595A522BFD8C584BF580
+3146744EBBFC619BF0E7199C790A6BEB8E62CBDCC8DB585D05EDE49F13E19FBD
+3A75A297B7FCE7764DA5BA6606548956805354B26E155D7A9AF1DD9809395DC6
+A18A87D8E2B0B09C45BA8C6FF7DD500BFDE19AC61295B8D3222802948390B307
+A81518EB1C82F81073BF5DF4329580FF63CB6DFCCC5F16844FEA5F263C69B9FA
+47CADC84E54C9D66DDB397C6ABFCC15BD1C45D487853955BB8E082537BBA8084
+424DD6796E7836835938605A2E4320F99D436AC5FB1DED4D1B67A4872DBE1A69
+D8EE5886D31D05FAD2EC4B8D992C663D2CD7FAB493D3FBFA57A78DA49DD10689
+544346F033833D7584EB7B3BDA94410D49377F5656400169B096874B7CA5E43E
+8A0C388EABEC7D61C961B1C2F5C7F4C825660C98648A11F96FE7C7776BA21139
+51206F8F7671DC77FF14871EFEDAFF0D1F8206055575A054C69C47EAFE999EB4
+689540FFBC837518AC9FCFDCCDE7EE2BE6CB2DDEC3416CE59B2F1E1F0426AC12
+74CCF4CFA7804F558D44F9F82CB927F252AC35CC6C482EBC26FC1D120356E63C
+66423419EF3D19A58350E14270B154028673ECCA599BAB925E5F7F6EC5D6135D
+F2AE529529B930CF246E2F98EB37D4F69F41C32A396CB0123D1DA5AA0F8F3DFE
+2E9BD25DC3D6F565BA2996DF29452F78FF2DE5D38CECE66C14353F0039D5EB8F
+52EF3A97E5C0C944265FEAA198F5F7C8E64D5706CF0D5AA63864CE7CDBAEC8F2
+23674314B760204AB50D2291F677C79530EA386B1EC1F8ACF4D69BA2D939B9AE
+54C6FE8D4358B09424CCA86891A9813FD6063471FB71FB37F103FD3013552B56
+6B69A01E0F94F7008F9C1FA9DF5D39B45327BA07D06C0B52D9EAE6BE470F7A36
+6AEDA5056100836CCFDC222DC5C563F036E30F31AEF744F67ED2B75A6493AC2C
+A0183F9B4278B6047AA7A6BB6A79CF6C352B3E2DF01BEB838F4BA5B5CB73B8C8
+883DF06BAD5342BD830C631B84015442018877640D07E3C1609D92AD60899F06
+0C3541B00FC95933B5F15E82EDC2875BAE27D8C9BDB14FF9797B6BAE710C2ADB
+024C9F5C371DEC3172FA094167F1F5F5A938B684E842214DFD3C58A71F6E5395
+99FD2AB06692676A63C1796A0175420FF76118D2EF1B314ACEB453B86BA673AD
+C25C9BBC10D68F32BE4CB90DBB7F74FB1E443AC212B1129E174669C827F13528
+6906668ED98557074090252B1935254C2DFA6C3380C3F43A2591A394F73A04D7
+46AD1BC71D6FC14A9131D0F6F411756CA5E82C1D30C4E72219656B0E767E40D9
+A389E9F7608F9296C0C553ECD4BA8555181AD983C51B0BE9F3041AD810C81CCC
+5481D2E63C080926C252B60384BE72C0251169E11EF63C5C51A8AA27D186CC20
+49408644E9F20B60F86C53B59A7281EE208443EC5CDFCFA8F26B04F84D023640
+CB49779CCC582051ED0FFB8C2A187AA6B7884DC1B913D7331418CC5B97A9696E
+E16B30289A83F4F6B20BEB07D1147F1F84F94F94DC7ED0EF939295E15A92384C
+47A767E231F951C45103A2207D33C7B5502EC9A4947E614578BEA49CA1FD7F48
+D07457068E0FE256E7ECA2069C4F3D28CDCDEC55BA71E327F3B8C396FAD1CF9B
+77EBCDDF09032A2F01D08E795570C19593CA4D3920743DF3097B36407167AF6F
+E11BE339BE8963BE37B6116C36F702EA4A42B60918C74493D4F8F6F10810CD95
+A8E8E5AF2D0236AC36BA686AF0DF107E5FC1B17A89FF4AB1EA6CA42CA08FE714
+42A865B6F55541E6F9264BB809D39DC71CEAA5F1089FBD1114A17D6E705BACA8
+217B7AD797B8FCCAD9FC2277A9B0F6640955C24969189FCFB83C2C36B6BA71D5
+9CE0E1E4F34C1E14DF5BA51E339A29D50FDCA60E4C60F4A743BFBCD4187BBA3B
+009A4A10FC5D6C04CFDABBE46E047A63DE1FF9525E6991C11E91FE6D2D080C4A
+3EE993C054B3AE27ACB112F6CB83E7BD9C4465C5290FA0453FD925A4548CD4F2
+4FF709D43EF4D309E9CDD3E51776B5A1ADDC0775258F30FF1474E7F51B174C93
+B2B120396DFCCC112C43F1E7AA49661CAAFA5722AAEA52A5EB1441B5CB3F55AE
+C3B46670793A4EFD9372D22FEA2E62EB0B2A03ED5C5D5E19C0EBCE15CD45A113
+57353CED22E6D076E500356620ADDADC7D9AD8DB2FD998E42500834931BF872F
+99372EE6A3107F9144FC3C6A0651692BD67674C099A7BD9FC748B07AFC7E1403
+9DC3099E68B5E3E099EBB787E6CB68D351E593A3FE77908C0715CB13E9A098B4
+3F1B9D770CCB16D0E9BB7DFC20CEE3357DD63EE926F7442DDDD51817BB79A1EA
+5C6EEE70D0042288923A4BAEA623A2CE2EC3F4D9528CD0FEC2E81E1D06D2FAEA
+ABC74BE159871EF578915E67639AEDB30C8BDA21A7A60F2A974C8F4987CB9A5F
+3DDE1674B6437474C42644E200D1B9CC6522BCCA2CCFD7DA1F77F806BCCAB547
+F70578A26435995CE3D5816B1568661B8D700AFCF17F4DBF7A56CB81BA5D589D
+93961BFA0FEC2E1C7DDD50BA60020EB883C783059DEF3CE4A89D3542C8536B4F
+81BAC05A243979651C7FBF2C3BB748827C8210FF555C82F07A5724EE80B204C6
+EF25B625A9AEDADE7F988F3D9A92B4A1DD5C052FD126287D1653E6B32EA168C2
+44FBD7E23FA272D1A52FBD99AB2AE9C2E5DA923ED3F16B75CE27D99887BE1E33
+6C4A7E77959FAFA420029FCE6D2D24994D0CBAE4894C147566033E09BE55CDBE
+7181E4286066D10FAF90DB0E19D2B2FC28681CA5F857482E28FB64382ED2AB47
+D931C5160B6A9300E83054D9E0021875D25B23A647A1CA8B7088EC2F4FD77BAE
+1AA4CBB439A1F540A72FD62B0B0B37AE54D8962A51C96947D9609C5D35101A94
+60A314E5261E77338957B486525EB611CA95BF9D9C8683B01FD2C9F7A6E3A99E
+EAB83710DB339FE63959079B489706B3571A22DB313B23BA4740DEF51FF82864
+98F1AD1392058D900DE45352DB2EA99A94424AB98975AF88398BA9C3FE5AC494
+AB117144D9830E0FC99A5A88CDD590F05CB201D1EFEB2B7228C58C42C1B60304
+DFAC99531BEABE3792767663537B6166938C07DC24AD920F775AEEE5EEDDF2CE
+066C972BFAF318EE338A364798E65699952A3977C3B2DA49527468E8A806BF29
+0572BB34E2B87F63B064DD36F17B3E842682EEB2E5F73A1191453A1EE825635B
+AC0D2DD6B7FF3178714F5EDC85A0FDD9222F07F9887CDC7A4DC8ADC8B357C7E5
+DAB356CB13DC1EA4496B440610460E2DFDB9312213EE7478FD340AFCFEFAACAD
+C7FF2AF100C2F7C13586B7FDA19E93A6E6E31956AFDE736937FE1641C8689353
+4AAC8527EA16E498D5678BD4FEBA3D280F9EE2910628271D580A581B4DE3798C
+3D4FF4872DCE092B13AC5F1E84D81F01B60894D2976AE0583F8E2BE4143C3BCD
+57B41E0700F370E912F6B8AA40AA475EF2726949EB8C477BCA93D1C1F84BC8B7
+7ED64243D2CECB4A335408217A871225838479BF30095FE05A9DE2CBE0AB5AAF
+E8450DCB866B94D78E1E2C7AB6FA5B3D618D85F905D56123C1A972FC31AF3FB3
+A008AC5223ECD9574CAE8FA7F6B7F8C893F78AEB9DBF0B8EC2B1F29A7D5FCD92
+525FF0EFE03A87D0BC2EFDCABF823ECD59C2298E3393FCDAFC5BA2AE26426EE9
+48E8834F2BCC1B0C993DAE9C6092C2847FD2F944153DA6625896AFC4A962691C
+04269E2F965B2C86448EACF1DB6EC04DA01F789DBBAFCCF30330B08CED1477C1
+9C6C5B01ED2702C54A513B35F47B74537560EA64EC5312D5FB29D918BF653BF8
+EF716F233DDD3C50EAA9CB39D8F341A6D57406173C473D02D386627B8BBF95EF
+875A9DEC8EB072BFBF8320EE153438C44EAD4CCE18CDF77072A9571062616810
+80F45F77729F6BD04BACA37F2F431207BF0874B52F138633EFCE322BC8955CE3
+9E5636B6C6F6587FF1EB983099E626471F84759D43B321CCBA14E16952A41E9F
+214D631803246D542527BF37857631FA651C449A5CD9A6085E5FEB1867CE13F1
+26DB229C1307B20D674BC4876F61E454D43C68087F7A12A415751F47BDB93E9E
+89F7561F8A5A0F702FCACAC79BB79AC2076C6ADE43DF7AD5B151FC956A87D107
+8B87498532191195458A1FB47F5197256A18D93CF7A44E0564319CDA274C371D
+9BB6A647E075F13A3F05D10E866939F2545F8D935D07C8687473A77A5735D4C8
+D00D86FEF3253985632FFF63389D3BB4C920AFC2AE9C3AFD83C5696CD6205CA6
+CCE3236235A5EA1A42F14B42E8B0C82AE2CF572A5FCE187EA0D92FA6FECA0DCC
+2B859359D4A5A724F3F5F79D0A67E43365F4B1A9FB2F8E5F93E8F2AF48A50E9E
+8FF9F263F5F240719DD9B90D7E4413FB22752AA8EC85D53082B5FE75B985F9CF
+2D25C0DB1222E5CA0B6E72277562525217FCDCDF6701E8FD45E87628CBD5B873
+6652F1C353DACFF221B3D095BCC6D638E268B9B047C3A0DAF4BFDA109E62E61B
+D2C4F9C49B6F0BF6444D26F2118171719570DC8BEFEF5C827561AAE2CDA0AEDA
+989B50CC394F2165980D6F0224DD78E5A2727227FB2DC12883E8BC29726976C3
+8A3098F23C0F120A0F5ADDF13386299CC47D48A7391D84120F8A3627EE40F518
+72E9ECB01BF1A23A46924F64B47E39BCDBB4CCB8769AD20B0423F324E38185FC
+4656B4D7372C9EBD51AA67FC3E20579A07DCD9374ADD376491431C0909601BBF
+7FF17F3744CA39F784B24FFCB07F122A9A5D76798F251DFF816E4EBE3283DE39
+E6A7B1193FE35E93E5F4BE2933E9ED8CC61C008427E89267D320F6E311B5DD53
+7F34E4833324F3FD55A040E26A408BA2041A488D37E4E9C9483059ABD08332A9
+C95C8A4BA5C1B329CC50E0227E5BD067CFC177D0935A9A4570285381C1879AA6
+8638721DD11CA2F539B62A9D7276120FFE8054A3319BBF9EF818567A162DE239
+9C9DAC3072441E9A7F06D84CF0086FA7A35DBFEACC201E834F84C4A8543CDE25
+65E11E4A559AEF92E1659100A293C96D71B5A5703CA450E90DF9842574FA1BCD
+D5D11BD756601FE13CB9FF37C9B52CCDA7501058B4D18AEDF4DF454EE3DE0605
+5DDC3D0B07F492E61520D3050F62C6BF0EDA0B2D0C180434520E76C839CB572E
+F913A3C9F9254429D79B28D723904C43478BE249034D4DA66A642BD35CDD6BD3
+F5AC4D1BBD5BE406F720A71867560ECF20DBDB49A66709A4242C2909EE798C03
+DD87C8C195101584AB4A05C912F421788D2F5BAACDC27D4A451581CAA5D64D75
+7BC04540C02EFE25670CF5EBA576EDCE49668C87F7D9C79161D6B1C2C243BCD3
+DEF2B2F066BB9103C0FFF0227DE0E86A9522703AB99CF490ABDADDD581AE7172
+F092E1DD60D50527917ED713CF85DD00EF2CCC6A369361C64145A6E4BA94895E
+3F63C490942C1CD5E613F3505DD4BE483D35492FE5C82BC4F524F71625A2E973
+13B266AD0B16ACFB7B469902024285AF082B419D3093810F978B2C6F85B2E4E6
+60D619434D561C066C58D4178235D9CB5562C0FA74F114073E51EE82F1BE211A
+8DDE86BFCCE77B5B86726CF3E35958544A4F3A5925E4F7765AB9421292C8B40B
+970C6B7E100C9618DC5B15292C06ABB811715317FDD5EA29721DE7C942E41427
+838E28EDE297940979E70E695943EC802ADB9E457C319D3C30DA8C52399281EC
+3713B7E463FE72493ADA76F3134C1253AE4A918A14B72265135CEBB22B011ED4
+A9330942A8C286CE9A7B3E0F5EC8C048389BDD3931324E41246897A256169667
+05BE8DEB297C6B2B8F261847D557D2F744D3C4B5FD0440EAA5ECA255ED700B81
+5F79EEAFCABAEBE85BB780E9B70BC2B8851D62A3F1FF74F38D9B0A4B0961B44F
+022CAE53DF9D1BB5E877382AB7A4FD2DC73643FCBB25F57A2D73856526D6CCBC
+14C5E3BCD1E681B354AC2D5FBA08E89D1C1C0601DB670D1D1F540441086682F9
+9FC12612ACED5BBC68EDABDFB1DDBA34EB418B4A8E41DD0C4BEC152DEA63CAE3
+606B50421458CFCF25E4DDD2FA14ECCFFB819E8515E1D1E5E1195F73B14A3C75
+B984712B5E8C8D0E50185621C959127C4ADC279247B1EC8E187429902A73F03D
+1672FCFFC53032771825E95B04CE039EEC20037251323E7073EEA01A0AC7FB8C
+B51E4EFEA3EC6F97CEBF191B4468C1FC1B3156F5C869617152B8045F7715120C
+28E778DA5A89C38558B02EA0D88061F5ADAD49C3BD3DF0DB6B86485F1605C1E8
+CA557E12DB4520EB595231D5448574F142D1E1167308ED54A0699E19FE9AC2BA
+83174DDD001639AF76554CC8E07A7934AE7B4180C77B24B689EB293536C87A1B
+46F4011677853BC08E882970716089325712051B8A6053774AB9F8E93AEF165F
+A0A5FF5C4E6F457240623F00E1ADFB1E4A95D99C0152C858FE08E3E51C6DAACB
+EEBE9DEBE2DBDA252B7160ECD1AD83918E2AF1045CC361E45E5C77C44596230C
+6659BE9A64F99B055040138860CF712AB42EAB0C2C1BFF0C46D6987DF31FD2EB
+22DAE6E2B8E73E6071BC63F322B0F198D4F0997E5CF62F494F56E4ABE767291F
+9B8815EE6D37F9BDF533635DAF740D0A6E43B39A40034593576369DBDE28D413
+06AD42ED83DBB535467D8772D66E62523786A7F5A4AD8CED7D7680F61C36CF31
+9F5C3E8279AE8FE5ED9E7DE9B32DC58AC45F6813761613439833832718D8169B
+BD5F18E2AEF0A4A6313DFE2F85D52AD41557F12C77E097309B8AFFAB952CA85E
+79FDE0F586ADD4EFDA279A399893233395A774F9A4FACDAB861908A84C8AF35B
+4C8D414FBBA94F7FFA5DA54CF6D3A81FA9FEAEE86B4BAC97C1BE8F28417F29F7
+F1102F22D6B21C52846AC7D9A0C0FF9011AF69E9299EB8EDBC8BC1DC95DB5B8C
+B71C4976742E90F806B6AD34DF582EEC9EED2D1EE2250CD95AC7CFBA3F5A22B4
+6854193F8DED38624385551B2BF721745909550B4311E9FB2C7BD7B61D44F9B8
+8A3158243DDFBC072020020B0EB1E3EFA99E1334FA6E0A2B51F8087D0945994F
+61B328BB957BA65EF15FE13DC9E7C2052CBD72EFB2E97BA35A0337A09B6D96D2
+D0B8E9C39DD5CDDE41E58A952A8D0D1E84EFC1C542AB6F277CCDCFC654B8BB36
+91502CCB5E11B2E4569717E1C95E0910BFEF603E5D68B49276C9F4AD9C9C4431
+31E9F230BFBA8B8E9AB779417FDABB1C44A6F1F1781919EBE2B63B20450E5A69
+7B3D2E03E2985D9E68E563EC7998595B8193AEA73F7CA88BFD80753C4A18668E
+657A6072DBD76CEBC35180F2E5B0AE1E2002331464DA628484AB0AECB7F197E4
+0DA53F1D1997681B778B44BB35AB33C3C3B1E027B1E8190666E4CC2AB7AEFB7B
+E1D0C64599D7DEF54D8DFF535E91FFBAF5F0E9B95A577D3833A052EDA467CA7A
+6EB709E0DF9A8C1EC49575B437B4D215A29D5B85179F89A75A741FB3644011BF
+2A15A454B2BBD7E4A8C9BDD89D8E48533A5DFED3F625423A095DBE68CE70E92E
+A88666EACE048729A430301EF305B86BB0FFCC933328F6C9F506556969656EE4
+43CC4543B0CAE1150B5E61CAEE303F8557EA212FFF27B79D98EB32F131B252C6
+CA33D11F9A8CE4415940F394DF2DB3B7A44556D9B748D4979945CA1CB630FB9F
+68E630CB06DD4BC7E1DC9CB631F7AA75E54031D06A08A6BE41EAB4D7CDCAB613
+0A950C24BE7A8CCD86C5BBB4B54AB35923C3F1369AB2B348126A6E606021C5D8
+05CF1DC51D61D554B7015B8E75D2A7F7A6BF14AD7F00E8CA03CA6869BD1A21CB
+03F8DD5FA2188BEAE573C5BB0FD2A520E1D9E9A7058EAD67CB71CF2752370584
+788EAD39783D5D31AB0C14041A888BAF1E8BE529559B9A61481CA6D28E419FF4
+3FBBD74A9D44525687022F10673FAF642B8BDF919D495D1766057369401CDC0A
+BFF4D02175BC49EB1A27F0AA3BD0718051C0B8BA88A6CAB183E031CFA84C4F43
+23CDA25E2C4DDE3CAA41BC0CAF7374DEB6D9F416B3CC6F8EC783DAE26ED615FC
+191E1E1C0C1E2A5608564573990A23F7F36E0C75B16E231072D2D33B6B68412B
+50ED1A254ADF127AE30B626FEE3AD4FE18BC13095D358B508E1E1A8E0B22D1D5
+0F9304D3A0A20E626A9EAB3BCF7992E6BA49758392BA2F0D0A2B3C677FC28F33
+DC2E9F0241B2FED86E541BC333036ACCF699708AEB26E04D6324568A21FA0E80
+C7DB98E0E745F8A0BD95B7703DBDB1B69767B839151595F4D18BF042032DA7FA
+16E79D7A038DE7FA2BBBEB0538F5CFBD4A33196782E9060B32A7F666B7AB9090
+0B4B324B7C2989F5EDF4F6DEC383D8186A417C10545207678E97F8D364F56983
+DB739DB14AA80A93940276FEBE2630AB8B0E43AAECB1F390978658FB3A7B1BEC
+5E5F4F31F6DE552CF48C7B83CF7E7AA47A150A4C134C421CA579EBBFE8147B78
+B909A056CFEC330F2F1C38111FB6142CC5D5B5B19B766E0F87C6DB27EEEB756B
+4A31DAC360641A5500FCD759A5A540C3392C827B1532B436C747C8E11BB24237
+3882294DA4169EB617B17B8A2D0AAE44BBBA75806E7D4EBF266399DA751BD338
+23BE24C2F3BB460E57CC42E4470192306CDAD9175E4756273154013D816B429A
+559DE4726AA22ABA2481C6F43E7C03C90F10EE9AC0DEA534E132B712AD4D5F90
+D236B3D7E7FA02955400644FA25FC1667A4AC9AEBC294083280F6B17EBB69EE5
+09D1393F7A18497E17B796B7E0C178EA1A54AD40EC0D05741FA28C9EB49D8933
+541244C7D51743473B256080400FF547C9815E9E17AA4D39BF9B92CE6CDA0725
+E9CA00E7DF53A9BD87D6A126C464B0AD354BFF0A4CA7F9D5F9B8CF7588525F33
+F5F5C7BFCFA0A9F848A0AFEB2DFBF3E112D9F9A480A3BD9D7C8FDE46C42055C7
+83548EFF3FF0599B1E2C35C23897DE4991FC924B45C97962FA04C3ECA7D45E7C
+5E36948528380F14A56EB7329E486E33C8C0173A93207010399E7F8D44E9684C
+BB92C4678856513CEB9017EDCE76D8BE2E5926B2BFBDDFBDD7C9550D2E2F3FC4
+2CFB3DBE3934CB468B8A212383E3DB36351F67A9337BDADED68FDAF7D6BC067A
+F7CA110D1B9834E2D8CDC1A6B2646641BE6FE364B7DBD228BBC8255ED82CDFF8
+86E020D71B009E0BA9CC1DB0D7FEFD80FC6AB6D4079B46E489D951B75B905832
+C41F113704B237316DEFE6C1DBA885810B20F2269C4363FED831C7EE27DB0FD4
+5766025A04D6A43CBDE8685292F00FD5A98E8CC07BA639DE7A9E1CD7D3FB6256
+AFD15EC60F8B4335351255AEE7C433AAC4D4D14D3C19AB86BCB6852DF2000827
+0D3548C606A44B869BE6436797DC0093CC624823943DA64C0A7FE6EE7B3B3169
+829D86F730D08173C05DF9B967274B8A1A4DD8C91CD9E1FFEE6D4CEDCBABB20A
+08451F67283A6FA714CABB1FAE2402D28A814CD69F15D23A95922B83EC21293D
+540AA1905931A9EDE5E02F45B7D50117B2E8D997D0105CFC86D865E9E172C7E5
+98F0375495E1A8E9032194DEEB61F7750370846636081AA17242DB98C06D6115
+3FF628AFCA24B4CDC2382364BBA00856947733BF5BAF317C1CA1E3F135AF775B
+DD163E6F8EA107DDDDC3365585DC49466246511512901399ACE1ADA5828626A1
+B36D4AC5CF5C1EBF716D8480F484D5F37E175069ACEB68647181ECA396135975
+454C558E3758D1E5A1143859599643C6853FAE08B3F53CC80D7CC6FA351D9632
+68A0B25992D672F7B2EA86A82E64C355EDB4AC09C515E750E0A3CCF33052757F
+05E2A77CC175713D8468E8CEB29DC82CC80BD8140FA90B59048178AEAFD84B59
+F7A4BF33F7433B686C2FFE39DA2F9132B3D6ADF8536DD8A9312EB9F905BE544A
+F362CAC8AB1532DAC5BD29687FFF9576C8E1DCEBD909C2437AE170E24198D4E7
+B343ECA9C0CF6C253A278C87E7302DE61EDCB1953C361A252E9F114B7C4E4252
+29015EDD207C3F9E5DA0B941ECCC1E004A164DA8CBA38E3E335925F0644B30B0
+E9B8573224FD079E7AC46FAC1734478D2B6559489DA68AD5EE03AF27AC247CF1
+36A7ED04097BAEC091E6852D1ACE6ECA163FBD6FAE5D2BC9D286220A739C17F9
+A9921737ECEC4ED64ED0825A1657EC592DDE299C4435D0F4FFEE8ADE0717AA1A
+D1024AF48091FE99B362BF68A03289691D0D8BC3C2A53D31B73430F076E53601
+DC55B79C398CAE4262668C8FEBBB515CFEA6881BDB82DD6F214CF797A0E92B24
+F478173EF178ADE79444306F5487D25F2D0633F4C1C79C0C23B17BB5B3D73C93
+6643E6707D998C561AF60B878104D619CD6EDAAC393B3E3A7D4096FCF7D7A496
+D8613CB63F70711460EC67EF0A9F9ED2FE9CE43466880FBAF3883CA4921BFB22
+AE7EA3AA2C3C5F9029CE30935B60E53517540991B81858F266ADFD51E68BD6A6
+FB625B10FFD9B75FDB82288AB0806423DFCBB16D8F600BEF501BA75E1D96050F
+39C1054F52312FDB5D7FA539EF9F431DFFEB51A3C744AAFF5EACF68B566DDD68
+9ADE89894E6F18BBC3760D3B2FB86C85B6454FBC9D111B9F212C3B7582698584
+8DC08BA5A6A1A02249F9B2C7FCFEEA984D757A50EB61F4E2DF68B4A6377A2D38
+6BBADCBF7A38BF9441C616F664E66133B82281A1E3DC97AE5D3E37D11E58A1A5
+72B24351BC824D51948CEE28E79D12EF6B3067CE9564E8618DA5D60930B5ED46
+A2D55FC4907DF3C2B8CB181FF4AD097CC3900907B669FE12BCEDC49AB25D6683
+1086F5505DB4457EEC925DD562BCCBFCC0873A05A7C7FA2C39E11B4628EC2313
+6DC0C73073006628426C9C72CCE8A1CC33E2466B01FD5305A99FB0324F35B7BE
+34D73356EFA490DD199B704F729C8A2C9ADE69B31A916674CCCF339034A6E56B
+AB4EAE3042271B55327C47B6CF5D7BF5F4753198E1699C780AC1C2489D82406D
+F868D0AD06B4E5B18759B52FDA9DF6561376CDBB5DF0A252625187265EB40F30
+8E27E7C6DC1A4A4773B0A61CDB26DDC9FDD00622DD5EB182D4C06A6E5E7B617B
+44A0BD55A3EF91BEF222DF3C5FA31BAFFB8E970B51D20F436F1984DBBE757EB0
+2FA4010ACC7AF1668E4F94DB847E2362DDC8FE3E6DEE583AF89CEE2CDFEFC45B
+951DF32C72F2D427F856E38A29A60AA36B2ECCBCFD3F8A24584876478A8EC6FD
+CAB4EEA8C8AAB5E24423F4AF3F3A3222D2DF147DC6774CC4A162D6779DB6B9FA
+75586A3CA8FDA66FF37BA7A005B6C2A1D8181ABA221264EA26158DC78C9E32A0
+8E586F0A1F3B120B597D2229628837D01F0C6F3F270439178DC1260467B8F315
+68AD80901D9FA60F6D84EF15E7EAEBA36C151049BA157DA8596D3A8B27AA8013
+DD12043AB26086FD89D90C24F774101E489E21F12147C5A4969C2E7698E5FF44
+ABE0747253B757E82151E0ABA1333167406BAC13BF81DAD4477DEC638D0CF963
+126C6D56BB85F3F6111F6876CEF8C4A4B6487E77C19BF99919DFD93389C02FD8
+52E35F30A49BF1B5BE4F9EEF654E15D0A9C16DB0D30E8BEFBADB036773412EA3
+0EA26C96F4021D569F1A05FB0AFB84F2AFE1A7D19D8255F10948971A6A695370
+C695037E0CADC3AEED2492B78929F09AFBFA10C9B2DCFF375854C1DF7A2CA5DD
+274810A47C712893336AA40A85D97ADD5E244D65E5DD2B5B612686C9D831A8F2
+F87CF540DA47A4B1B32500AFDC943E0AAB50463AE1C6AD3F680A1F530CE71872
+031D70382EF76F33A7F7BAF93B30BAF1929733B394A0C8DB9EBB7B37360768D3
+EEE8963C99103CA4BC4F29C0C2F7323829CAD84F113DC2748E0752CF31D12C8D
+CB06222EE0C57BA4D6AA53E8EED1EBB8C26B66821A85EF36E592A1AA801373EF
+2ED521D4CABB1D7E84EB076C8C257628EE484C784945D8EAFFAF99670C32B244
+252AAB047541AA375234766A9A9EAF9D39C3BC76AC3AB1BE47A9D4F46B6AA2BC
+93A9E2F08CD5203C4F11E493B4640617B0B4EB3A2A86EC92C5F67E0BB0B544F5
+3E7E895F67A66604BDBB4825B9743EA25288CDCDD74A85CCCAE2EBD5258784C4
+04552FB80AE5958BBE7E6BD69D4B5C0C094E28BA613CED1018A5EB1AD2FA7A36
+BF972D19EB432AFB4A89068FADADF22AC55181239D21B4305D8BFC5865A7B2FD
+B6725F373E634EF791985E8A1B2D8DE1D6F731A95DB156901BE0509330BF224D
+236798D1759A0B5B2CC958F1EDB29FFCC3392B5C029FFC0FAFC208F0D18587E7
+15AC119C3D6A5CBED3DEF2E47D335864ACCB9F58015A56238531EEC5E9A57F9C
+C9CCB7900C89FFC75EF885F7672072C60BC68CA1E11AA0D4DBD0F168A4ACB925
+7FF0123A395947ED6143802A19DF6E8D9FF141A448F4D5DE2D3E62814A2E75F9
+7377676BA37FD66E7E3398DBD51DF561F6F61260C221271063B65AC9F58BCC25
+E22D6721AD59B48B2AAF6AB8443425CE7190BD8520C0F5528BFBD4DF5DB87A7A
+3952F6B136D07D0261BF654CA01968AA7046B1269743874FA98E7E4BAA9915C8
+1C50B9914FE35F4CE57977995504616ACD4BB72DF240577CDB955928EE7CA334
+59A05FC5B30923E3E555AE609176476D341552DEAC201B02022A7B089E897879
+1326144B2AAEE7488FB62145957BDDD81E3592B70E0B126AD2F3D7F7B5868F4D
+C2E09FFCBF4B5E695EAECD3F3378D9861A2C6B01FAEDD29CE3175AF405447BAD
+66C4411EACFC0A8973803FBCC90208FB81AECD4C1E44CB396E7E21035CEAFA4F
+2B9655D283507BF548181C164F4E76F26E896200D4CA2ECFFA14F4F7F1E7DEBF
+8AAE2ACEE79676741111B81F4655BE62271C0C1E7AB3C06295BE5AB49EE4C5C7
+0FB6B7D56341FA5BBD1BF3FE6A30EBFF738C0174193B9171F9173DB9B4AF6032
+743F2C74EBA4CCF230D26441CB99CEF833C5739F206E7B2A0C3C039ADFC1DF01
+A2182C06929810CE52C6C8C3F23E448C3AD05BF6DB968D0B5459D5FC2E5C75A2
+18E172C603BD225B95AE3C331791E8CB64490039C1324BAA6672CC4745B017C4
+4C5998A952C12D1CC0EA4B07A949FC1EF8C17D48554108542BF191A5449F40AF
+A20CFACC7B42CF91E425B72F5388896971BD50D83D4C364FD482D0188EDED9B5
+9C94C9361289DA31D23599D8A809845C51244F0115F1EFD38DDBBE17181F68C2
+66E96A76C128545F3DD5C4980862013AA273AB665D72F15A35A3A2ECA3E5220C
+B4FAE4DBCE171E1DD9BE3BA501EA530B60EC300F1608712A8EAD10622F592402
+A24A94E722446162AFF554816066612990534EB8670515E311C94B83616432B9
+73956E008C01FA905E7F78D1834B1233A9B4EF80719ACB619E131120FA18109B
+699DA262D452BDA3C9D325859240C0E973B15CF6B414203CC7C63ACEB5FDB206
+B68FD19458CAF1592C8F3C0EA33BBD11C05B6A9B23A85D50FFC113A751FD70F3
+A0078C409A79EBE7DD12A7487D5F7377837B8E5EBFF998BE73C5CAFA2A5C3EC1
+BF2FE7FD90F0FF8EE462840FBEA09BAD9DCF047502146852B002518B5DAF639F
+D7128C4B829278B628A7DF48125B770AE394326CA14D675C00C5F1755995FCA5
+BD755ADEC406B809D9F214B75B2A85749115810B5A350F8D8BD7DE08F3787B7C
+0353FDB8CADA4D6849F522936EB8119233AA4C62425934FC9C308076960419CB
+F1382349C7B4034A1276030D65EC05A1F00C4ECE3A855A5AFDAE4B3542951525
+B08A1DFF612DF937B5E26D970540A7B58132886D9731F74253AC27A7EA5EECD3
+76FAFBD3AA65F1F50C88CAC8A9904F2EE11DDD579D8813E66F493D88DFFDFCC1
+030C7FEBD6DCCC4EB7E3CE3BF734765B355972469145ACC8926D41056E649F7F
+A8FE492A25F3DD9694D5B26F555BF6BAE3D28EDFF604FC206C25EF486E346EDC
+06974268A3E9A0D7627FB566163B9BEF645FBDF6F04B57F45C89E25A659DF93C
+1EE17E9CAA733C35E91643D8D6CB57DFB8D2FA7B9D105D8BA218EB3477336CC4
+C1581F12328C31AA902FCA12B895720E168E4B7221F6614BEED1C91A1AA2BC18
+4A6BBA1B10E9D51AAE6C3C631616578D4DAA1D5014F1C86CDDD2DC68BE418E5B
+7EB5906C6495CF2D1F76655167F4AFDD57395AFCB2E6D45DE631420CB1E549AC
+A39258D088F3DDD9EB90EEE910BC8607B3B47E716E46351E460177C8A3913469
+47BA22B4ECC2D2D7290B88B4416C70FF576768E7CDF00FE18190929BF7D4FBF4
+80A3E445A99335109B23551DD4ED8090E123654E1FBA03AEE581B4CB7390B0FE
+A30C0FD8F8162F9AE1F77DAFA9E8CABD34396DAFF58076AA5D65AD8E904BBB58
+D90AF03CD5B902C46B94F6C1A80DE3A6FE104AD4CA02DFCB1FAE328B775C4D89
+61443F078D212DA8F9D22C66F79E7B5A905A390E0CCF182A183A3891A63A7022
+9BA59EEEA0C73DC6913574957C2BB1912CE78F92D5CDFCF033BF6783EF140138
+21960E0A0B7D4D3A909B30233A091F6060D390F0970634B7E5C9E94CAC78652C
+CC93D6DA1082B3978182462E173DF9EF42459A36D8983749AD7F44E0DEEE4517
+71A7EA95C0AD60D1745AA2F0060C17A2423CA83B2EF054DA74D335C336C68916
+E72EB1E0B3ADB509581E7F7451F20D0CA0C620AA93E6FFE2395F97AF97CC28A3
+FEC3524615AC99BD92DE7B18A3E0C8208AEB8C7D251825A87CAC91802939C6B0
+73C56A95614B85BF6F87C072F91A076D6D0BDEF676A7260442917F0F20568F13
+F8948C681B8CE7AA9B2044BDDDB53FF73D276A95A3D78B941F84B09BDD037D8D
+5597C30BADF6A9B7E15842458C9882B6E3D61FA0066A8CEA8F6C796927FDEF4D
+8FF53D3534C1BA976F062600C035DC56C08ED8C9D2E3F21AEE6A74FFCF31EFF2
+F2328E8517BCEAEA885737063BEB39A721266FAB7131FACE206E15B6D4526F1D
+B3E8E060C607E686DDB5B3FE29A5BDF30DA32E9BDA2601F140F943D7AE9630AE
+C75C25C25F2BB6BE006D4EBD1B90647E808D91CBD9293EC750EAAC78E3E84138
+8AB328D1A72F1207FED8889031DDCCCC1D07FB9E1FC25924C3AB8730BBDCE640
+6FF8D2F0D6CF4A31D01B93F44F9EB62FFBD9871C89107155D9CDCEDCC3B1544D
+90F18D7886D99DAE4D7002D088E356746BF85C6D8B1862E572B5AE8112BDEFDD
+732B7974ED8D105C587CF36B5B02D2FC512AE1221BBFD8B0E9438A529448D886
+3D0E8619D3BD52B6FAF2C2BD60FB2F432BEC1F9E182A2503F960F8C4E8A7A75D
+26BA6052F8D8C093D1DC5F01ABE2149F63AB0F3944A78A695AA38B3C677F9A20
+02A3144335591540BB82E8518D83C639B873FC82705FCB545E225B6EA713BBDC
+F4CD02E6922EF368749346CE1E0F0DBE77F930EE143F8DD5DCE6E4C0BC04933C
+5B6875E5DDD26495FBCD1AE4F37345F72B775F718E63BED03F15292D5713A25F
+98864E3BD256B2BF6FDD7B2E828D5779062588A9B579C73D6B8E6B5B8C942761
+57EB97C4C6AAB3AD710C27CCA67834EA58331B8BA53D94D05359D3D5298AC645
+9B942BE23BC2AA68829DF9B965C8A3A8F2E619A28343F8343DFC29CAC53E02BC
+CF3564E80CD75CA3BF4C6F28CE8C3F71AB8AEE9714E9B9946F47806651298ECD
+984C99B64ACF890F8ED417ABA9982968B0E1E9EFAB6C64A6B8FBBC2B8FC87ACB
+8514D1B58549FC913D866A9F4317ECAE23ADE4CB0050F12F200BD739BA37C677
+6F8378C1F46623C44D19522BD42AFA52138BD75DE24080222D6F90B35CE9B45F
+132F273535B392F013661B22FC015E0986D2BA02980FCD1548F48C8A0864953B
+28D2E8AE6C1547D03732B0BF68C580B52EA526D95632A9C9545C30177A89CCF2
+2629ECB4D809F7331A7FFDD6B0208508C6369DDD7D73A9AF3186BE21C31439D8
+5047E86975B1327417B292E71A3B9A2116A3A417EE4C4A4B54A3562228770D1A
+EDE3B42E64B2DADEEAE5C5C928EBB224D50F109A4DA46692E1684226B96083BB
+526ADA8BE06F8DEC53391A681903B4B91B6B3EDDF1BBB6E0899D753BE86BB278
+983C6891268C429604583E6B08CB3459311E9494A4C5D38F1E512360911D444F
+C742B08A0AA6852708A6169AE91C0E20CE32B923E0DE0092F2A58C00452C20C0
+C3D1B830D60259D3E1061CDF97A9F6D92EF6D8FB952042A551767F2D1B937D9F
+95F0D7CB5C5CD118B14EADF31BAA5CCDC9A1BAA622DB083046881FA4E0E33ABA
+78D3ED71BBDEA8788FCFD75065A8E1A67C9C74BADBE7B076C1B22A87D15FD449
+D8B63B33F973EEC896C9E56BF6C419E1D4320F899B3C76C53446B4FA00C3E867
+A729F6BD7AC8944DD9619AD3CC8495FD8C51E87A540435CE90FECEBE09D0C46E
+47B4AE71496AC61F2C06625514FD62D954CBBF5ADC72C41ED857C88D72ED6A71
+2182F08F968788BAF5CDCDCB4E931A50CF03C2569D14D863E340E41D94463628
+EDC39AD3B5EFB220B96FE80A07FB76D40D715BEEF6D530BE958BEAF0893C4335
+790D495F4534357D4923DE23305B0A841987B0F8BEC032C6EA650002957BAE88
+71E27D2E1BF804A3B6A29F49F985A4DB94A93B406BF89357255D423214F4B932
+8DCAE05FF589BFD28F3894FD0861CCCD7BEAE6EBEDE86007FDF7F160191B20D6
+4EECEDCE45254E9FFB2A65D143C7A4747B849775C39F459ECA1F4BADA7006F3D
+99C4F6981F1F9763F00CB883A090A30AEA63CD4B29E240334AC959B43763D5C8
+8D53C8D49A7E6F133D0E8DAD19130DE2620649D4C4BF73C031749E3D3F2F96A5
+D6B80FA9FDB7765C018A6B505260AA26C98A526E0144CB41DC90803DA466A3A9
+0CB1C56E631E6DD61C1333E1D268D3604A3694D7BEE53E38823371BE9C4F59C7
+C2D92CF7680C232EB384C5538CE5A409BBEB773DEAB1914BB3E85B1481AE351D
+E6256BBDC3DE7C2DC062510257FD65463CE9D658FB37A0C9648883E67BBDC3CD
+1E73F97BFCB6E46029D59CFE67E90FFCA99A19504FABA94EF7618925F69CE365
+5A736903B9653B5635C50C1D03EFD2E834E85673DEF968E86CEC16C9C3896F36
+1EA976D53B40379E1DE039A982A772785F1A72AD2D658EB110FB3709178660F0
+BD82AA7E96424BF5FD699AF3AA51E400D7980D6593B7B911BCF8BA7F95F4CA6C
+83B250EBF93957BCA46EB7DD2F56CA25B1FB5F63998C03940A6777CCFC0E3E52
+26ABABDECF1236C415C10CD9674ECCA7DDFCA393DAED9A5E2FD5EC4DB02CEA25
+D45FBFECBE8CB8C0AF95EB61DD4905FD2EBCB64692A3BB867AAF151451791D7B
+0CE79CBF8CD16C4F683A0E2B4537A6635DBA8ED0C9FD7511195274EB56C835D8
+35C9DDE81BC2920059392D3E0EDBF48D904D5E7CFC3D783D32CE703B5EC6F614
+6FEF353CCBD3DDD99F035FB6F9E12A0A6C96A14257BCED21A8CF31E48D3DEDD9
+C95B1B12E25620FFD18AC38D471D04AA44079B2A859CA3FBCC1629C0A8CCB367
+0CD80BCACC63C5A1723D7997A0C11058D827BF0128A7F1F22FEA3042D03A2970
+0D66A3A3ED0368B7F8E674B0482ED4F200D7C87EE1FD760DD5FC1E7EB7346182
+8195FFE2C82499EC1BA5391345289C2EB4B5D1F2D523F29433128C1F477C4BB9
+7E55E667EB236EDE92EAF1FC5C51B6C26B199531E7B9CD29F6A8149A61DC208E
+1016DB861E4ADC71468E62D549B04F7DFBEBE8F99344766433929EBE661AD55A
+B4D343B2631A20734B06806AA9E4D4F18BE58F25FE3B1E6AA5C2654D3E689B20
+C9F9C281C5D15BF5551035CFD2549680AEB8C6D4BA7CDFAFE7A8784801A630EC
+F0D8B64274A52D1CF4BD563BF38CE906298A00363D7DD11266A51609C13EF096
+10A8924FC83C51A654CFDAA06C544B047229EC0CBEA5616845306D2A2B9CF980
+3483ECC48F5E1B2408671761D72C55E03B1B7ECE490B1B668CBE6BC53E1AE499
+F2B3EA1F7471C0E1A0CFB8A875C85CFBFFDE56D44AB1BCF0383CDDEAA75A3385
+3D11AC142D61D1241D1D1F0FEF5D9B59CB193ADA0AE055E3CEA38C86ADF795F9
+B8D623DD196E4E9002AA678469455C1964243053FE70189D98AE71A488B90650
+5465172881010B787F4C48ED785B7CAD05B07DAD4A738647D9E4A0F572ECD8E2
+5C3EB1C230CECDD589E6FA52225AC7D5AF78B93BAAC2F9E21A0C129710C6A5FB
+8D7FDFC3498BE8E59088D8CFCA68A13CC81CBFF682A1FEF18DC2E44264909062
+8230580491100F6D354868DD18C91CFBBD651DE44B900D1D9EAFE29373716B9E
+6A714A27EA2868D0EFC6718B1B4B0643655D7E7BCCA17A90590CC4559B3E4E33
+61263935E8FC552C22470531A541B195FE675B0AAEF766332B50F83B3003B12B
+AB5E3B260A4B6F7591E3DF23C20258C993DCE82047424CFF55E11B84CF7EC598
+8CB5174FAEE4EED2A012B1D0156909CDF840640A47F8842853240F7804C17639
+1FA8F8ED1B0E853132F957D57BF7E24163C4F4904F0DBDBB8AE79DE782F015F2
+3381EC6E4AB847725B8F3E690151C42EF0422B35561E290289294EDA49AB522A
+7C5F197394B88A6C310A6F00741C33986B5C550621372D429CB20A611D64C7CF
+AFB54E4B43289FC6A8148275AA4D394768153061C79B7A6C82248B6A2F726194
+5973085034EDD61F1CB11FD7A510D8748ECC57593DA7DDC57A49B7D41587C862
+31614804506C80E6AC86873484CB8CE2F64DDEC8E3595C71D0B5F324DB626B9C
+E162CB7030BA75F2D0982BED8579571C8D4494574251846ACA7FC8DDFB51A668
+98E875C1569C91C7FB679856354B4D58E76FECB5343222B58D771DA1C9FD807C
+FFABFFC3D3A35B34EB5E9A72EFD6B33DAF324D09B0FC7DC75ED74DBF93484DD7
+39BCB939BEB88F1BD0331DB3B7A25541713255707A9826B93D9C79DBB752B97F
+8C228F0EDBAB79813ABEE71213B19D34F3F9AD637EF2F8C9440907CAD7C5B004
+08D3BDFB59A873D706109614944981C26CDC19256460276BD25DE512DA679CEF
+BC15087744C05401AE284970BFE6AF9A7033716214B7F321E074E56008FCDA80
+D1E671A12789F80C7071300DC0C5F1C07D65093062765C99B6A3A780DE515FF1
+4E296D1E3FA533F8F336CFE646C88FBD6F2C5572D78DDB42C46637539D4613FA
+CB988AC059B872CD3AE6B39C04DB2805C64795449CCD7E08D828F1F642AC3B97
+DEFFE18093442A566C1C0E43875EB6A0F2FF19A79C4AA0D78CA0A60EE506BDE1
+6F22D869370BF91A3CBC14B39EA120735340A7212B5A8218B7A5D1140FF83C7B
+1744F9AD9EFE39CD1332935CF104C1C864F2A99F6DAD0CAD95A45994653E5877
+72F3AAAD29DA70C13C2AE9E6F2C12628EB8ED2CD76AD892DA74A419490FA8B71
+DE1E91A52F1755A1AD44D3E9AEC518A39D8019ACCE831115B47960466A2D228A
+2D3811F49D822BEB8C2FD44A4F8F6C6D917D252ED20B025A94DC998C9225AB60
+6BCF4008AB9F397346E5EBA9DCB16D669ABA80A184DBC57341C240A4D03BE6A0
+E2E1B4A902524D0BFBE736EC3BC6E30EE2BC4857C386E86F4A97637FD81CB501
+367E70DA0CB9D93E9D2612E9CF97F6C12BB9F1D3A495A6D5E825D0F4A7BD6DD8
+5F6D32A1075835AAD1D291C9285440673E2F10D6F7AEE97E41FB72712ACF44B9
+EB6D3A066E15FA1A5884F9BE7F826C84A55FF5A47017318CB8ED5B0532C75117
+E171630B4083A1E9A4C702D3431686F8D0BAA7B98E8512DBFE66752C785E9DD9
+E36C13FBA180A4C1511CB923D3548697F54058F1A4156A7CC596D87E8D9DFB92
+382EEE5C33A116D37E721116C82A974968896268EF9DFE3EE2E4666BE4EA1574
+C1BC2CDA20003CE178C3E78CB69CD5275BC02CE6DE0D62BA326346B6F78347E3
+97B7C2542EE87BB82CC7BA2A27CC05676F63E579C58DD35484E8B351799AE547
+63275C1BAA60
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMR12
+%!PS-AdobeFont-1.1: CMR12 1.0
+%%CreationDate: 1991 Aug 20 16:38:05
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMR12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-34 -251 988 750}readonly def
+/UniqueID 5000794 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C
+68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361
+3645B82392D5CAE11A7CB49D7E2E82DCD485CBA04C77322EB2E6A79D73DC194E
+59C120A2DABB9BF72E2CF256DD6EB54EECBA588101ABD933B57CE8A3A0D16B28
+51D7494F73096DF53BDC66BBF896B587DF9643317D5F610CD9088F9849126F23
+DDE030F7B277DD99055C8B119CAE9C99158AC4E150CDFC2C66ED92EBB4CC092A
+AA078CE16247A1335AD332DAA950D20395A7384C33FF72EAA31A5B89766E635F
+45C4C068AD7EE867398F0381B07CB94D29FF097D59FF9961D195A948E3D87C31
+821E9295A56D21875B41988F7A16A1587050C3C71B4E4355BB37F255D6B237CE
+96F25467F70FA19E0F85785FF49068949CCC79F2F8AE57D5F79BB9C5CF5EED5D
+9857B9967D9B96CDCF73D5D65FF75AFABB66734018BAE264597220C89FD17379
+26764A9302D078B4EB0E29178C878FD61007EEA2DDB119AE88C57ECFEF4B71E4
+140A34951DDC3568A84CC92371A789021A103A1A347050FDA6ECF7903F67D213
+1D0C7C474A9053866E9C88E65E6932BA87A73686EAB0019389F84D159809C498
+1E7A30ED942EB211B00DBFF5BCC720F4E276C3339B31B6EABBB078430E6A09BB
+377D3061A20B1EB98796B8607EECBC699445EAA866C38E02DF59F5EDD378303A
+0733B90E7835C0AAF32BA04F1566D8161EA89CD4D14DDB953F8B910BFC8A7F03
+5020F55EF8FC2640ADADA156F6CF8F2EB6610F7EE8874A26CBE7CD154469B9F4
+ED76886B3FB679FFDEB59BB6C55AF7087BA48B75EE2FB374B19BCC421A963E15
+FE05ECAAF9EECDF4B2715010A320102E6F8CCAA342FA11532671CEB1855A22BB
+7B0B138892F4D0C10FE8A534231413BC3C758D2018F74F5BF01D886C9906B2A7
+95809D2DA4E8CA21C047B1CE8673690246BCE1AA892A56BBA639AF5D90D6B8D8
+54BD5148293D1206099BC8808D4AD4EC8725C712F512B6AC04B71FAA4F824A2F
+F6B73C539E7B4FFCD3720060E9E36CB203A85067DD55F0EDA94C4613F0FD895F
+F18AFD93FBEDF1C87B842CEB4C3AD774426166AA04AB328FE5C5B4D91A94B92F
+25BE3EB9491AD2F1D84160B6CF7F1E871BCBFA4FE16028E57BC5524217102F52
+C3A40FD502DEEB9D1F6B402FF7AB918FEA7CE82C6D7E4794AB494B445E3A3613
+19BF6AD8462AC3BB93FE123B6C31A227EBDC1231195DD90E21BE41D367A33DD9
+D87FACDCB7784DEEC013CB2E1A4BE5C89EA9D64213ED2CE6755D105D34A1DFD5
+3173395E8935360C14F759BC8543CE7E070A4C6DAB0C5ABF17D0CC36921DE41E
+5E169A90F132B88EACCFFFED4D27DDF07C005357462CA68AB41F563009DC6489
+5AA9B18CF446F7701AE7D2D8CE28ABF578E2228EF26B8D74CDB11AF9192ECEBD
+1BCDF9874E49D499B4CF90C2A4247D31873B9372224FE3EB69555691ADAEA7A6
+4B30899EBE307B6A0E7F52AD99EAA522302B42ACB436CA837898DA779CB242FA
+868B14FF5EC8007B1784DC6996AE70BAB87EF5F5BC51FEC5BCFF54C2DE6FFB50
+3BEAC1C4104737FDD93F803AE884B0079BB385136523886F5791120C64196088
+D1160053B73C2465830BF980BC3345F55C354DE5222F4DC18970C75E3DC6E350
+E571BA6627D99F661DC9E0926567BC489F13A3D19DA5B817620119CBA3D14545
+709FAD3277ACFE3D103E54B793A29180A9327200BE1F771F48896AEDF1C5558E
+4F534CA61F65383A65183AD629874F68598EA8534B293B0378ADC9A3BFA82658
+17E1AE116605B0FA1D84517CEA5416122822C5FB8CF6393FDE58BD3C7E9A476C
+F5473229E8CA97BBC0ABF9E417CD0ADE1C216FB998577AE25AF5913A54396A5D
+F0823A3D1B4BC0D6CED0EE47783C2407C1FE864AF05245374F86684FF66EC9C6
+E9F72BC0B1440F9D313C35783A4D77DDA9BEC7F55B831F0C888DE051FCE095C0
+A30893575FD240D022FDA18EE0A4CDD8070D5162065228050873AD3DAEE3973C
+C97091AA54C1C7DBA222289EE30A91FDFCC69DD4DBD4FEE3D77B5ED45F6531BE
+C70AA44B2D69989A422A59727361EA896071E7B6281A2750DEF176DA69C29F02
+A44AC6C6B9667C4544051253E8D08A767658AB92BF157760FA2A9275F82233A7
+7675DCC0F90D20CD45024EDC088D65351567EEE3C7C65D483BCA4643FE93B9CB
+2DF1FED2F3256EB1D9A2D6A74BE94CF421CE8E39295A1368DCD7CF6E1D79186A
+B65820241139488EFC49C9F408DC4E6608504CEFDA602C5EF12D79B1FB70002F
+31AD4975E2D7F619D5249626EDF950CD421B3B5A886EA6424BD8214089416B71
+0E8F5DC33D364B30CE4724037DBAD3273AA33A6568D301541D80CB8805E3B721
+073B645669A3FC4ABE38522A439F89C906215DFD0A7C39527B24DF7E5BF05A61
+25653F314FCCE2F9E19D5BD964D18B98CE7FA050C78A2D10F4C5EA5567659D60
+3B223545B72884A0E3E6E18B500227FA065B789B4001C70EC194992D8293868A
+94DDB484116ACAA5FD2EF4ABC74BDA8AFDF9B0949EAAA826D836B64C5D94CB7F
+C19568F01D5BCC8D1F17F7178E09B75C498ABFD369E1B8A862B879B79A3C5349
+186A3FA1ABA22B443C8C11BBA64DA0170286A0E2A4F53DBE13FF68C947455F47
+733D49F0D34893D3AA95CB8747C07FE0828D974F97F8092DD24EFC46155A634E
+3B4D5D4DD89469FF53A78F10A2C5D221E4EDFFD3F954FFB03345B5ACE7231F5C
+9B039E167CE849490F6612254E9EB809BF9B8CE18F61E2DF854F94E7268381C5
+7276B818672FD34B56433A1164BABA33F7AA87AB346F180CCCF6A7BBEACE1156
+DCB2A10F894A8019D743D7973522B135571C204B6A18B5E057CCC790468A0E60
+A8B305A48BD3A7E4C60CC241A2FA30BF0B514581690A0B8267C6EFE9414FE5DD
+05ED4701CA3F2246807252DAFB9E447348E129DE46842799150BBED0682593E0
+A6B7E18E6C1A067AA7F9B6257B4829A6495B00188472F1B1BD9629EF7DA8260B
+80B8D617D1E790CFDB633A6F02BB3DC651E36CA0B983525B6E666E7AC37ED64B
+F2957C0A07F3DB99F9B64E0362F1DA9B0F7DC15ADDA095F390DDF3D563673800
+8AC9A73A23EA4B84E77302C3AA6459573618EDDC28BBAA8BD937D4AF70B1C614
+C64969332FE23636E9F31546F440F8B95D26903227A61680C020EB787F02C75A
+F011DFC8AF99F6CA22A65AD54F0B058C292B293CE578E64B4D44F102C96D4D16
+47FB22F794FCCF04149E43C733BEFD11EA6B704DA93EB689574B0E025FED5FB5
+C9C69C3B6CE22922C1CCEBB9BF94C8648EC1EA86251AA1075FF7F2B7D73DEBCE
+A9EAA66F9DCF21A687CCCB5066255739241C662E5D44C0513C21C1758E3B47FA
+44E11DB1E3FF936593A2C8F8A84ABC98D6880AD9D5EC1DFC350E00FF8F6F7B8A
+DD0A932B61FF567316A5CA3078E8722AD9EB28F8728275223B7596C67BF4480B
+82D2A9B88829202DE3E7D027F74CDDF22063C8669FBEF2F8D6AF43CA23454E82
+B956B0C04FDB252E09016E0EF00862D5855291669E192275D90EFD957AA4B66F
+F8277949BA95CE7E4CC8A9BA7079BDBE377A52D7426E9062E05A7D021D70F7DA
+65505C4B2BEEE5DC5F5BE641716796CC5667C2CF05DFB6AD2B691FA1D2BA2A13
+8C4315077D64783F4A9CFFDA48167E97D7197ED12D37893686D55DD7622B075F
+0FC8B648771FDA67838C0188D84C193970B191BB8BA5FCB561603D12F2610825
+1E17C1B3472E397DD0282C15360C2060A5CE65D75A4BAC7EC80D5A3DDE0E7E16
+6AB60884226ECFD2341B1D28720D3AF6F6D89D903450416018D1DC5F9EBD4795
+BB182CE400B4051AEDD4573D0F3C9AFE30812EF69C16FB185BAB5EE579C34B8E
+86874DB7F92BA6263805F30D55A6F06C29A66EC4ED677B9D71B47C5E7287A461
+07BCFDA691F082CBE6F9334B418E7D3F5BDF388FB8CF3A915DCEA9DA66230EF6
+F279C98DEBACD4DD24C9F6093D2C7B500695EBF77DCA7A2CE36EC515529F0C3F
+1DFBD7232D8D938BF8CD2EA2F5F16CDB681FF92B2208FD27B1BBCFB81D26F0AF
+BEF81603F9D583A1755F0B0C062E0B2CB10EB89DA08B312FEF40A56C544B85DD
+4BE234558E2B4E91BBB092EA8F6052FB6A557CABABC54AF41FF29D9DB3D46F70
+8FCDB9BADD518E8C12263865DEB533C162E3F1258971F5949AB69E02C547908D
+9780AD396D8F8FC54B6CC7A4BC296A636545D950EB67DEC81D0317C52F842400
+16D198F4C53BAE0809DF0E1E3C0AB910E4653C5DCED6D64ECB7D17052B170329
+39956B7785386AE48FB00FCD786E4BE1671B720B77511B05B21A348AAD56FDD2
+C91A74C642497382F028A4EEDC339EDCF33C7E35D3B992135889064C7D053BF0
+8620700AC6CAB56CAE999DAB765C396F7E518AAC20B897150B13437AE0A4FA8B
+0D0264DEA497792253E0189A6FE4CD8F0046250B5284FEF0C0563671146F8AFD
+D4DA0F4C82A28C1321CC107F21AFAADA217DB17578F6E818FCF674C26FA6373D
+647B9BB13E1560FD9EC5F34FA0983D02AC2D2F9191166A1E414F599AB33BD428
+ECDC7B36374D871A21698B190B5BF0603040A034BF8FD8171587D9178BBAC705
+7F73A293B15C7D8E8790668D3273FC2FDDAE4F224CAA1EDE99FECA11CC2D566A
+CC68D5A28C62092A676B430135C400F3E9AEFE44E752ECC52CA6E67EA77C76E4
+8259D7059CC8EBBDC242BE60CD411FBEC0E6F04912F2EDDD82A6AD5F7E128068
+F9BEE7BD7C1AECCB7AD76BEB70689DD68AC0FFB362DE8F2ADE4C4397894B6083
+A8AAE597B58A94467D260347C01C1190E7B93B84F8C1738F18ECC4DE944744CD
+6FA8DF283CDED75D861697324620A67C4A9F59B89A1D70965D6CD09E3104C43D
+85AE8995FC1729987842C3E20F42201FA4B6C315D35D4F155E2D34893BEA3C88
+6809F40275DB5347C9E20AB94784AE563542CE6E08A6BB817363F178D937D977
+42468240B79407D9101398E60C05BF3FE0C1A03F2817EABD12B56569AE4E8815
+22F6E958BAFC1D4755CF422079E6C61A1B7492DC8E4B8727A18F12173F9C45CA
+5CB381E4E34420BEDECD1E57D8062AC19760F82EDB165251C0AF7ACDF26583D5
+6E239FF8778FAD1390C12CAAF337D7AA20F3278D08B773D2591AEB50A8AA9820
+35B025A64D4D3CBA86B6A66AF9224E4AA944171666947B2CFB9BFB5F9BDFEF4D
+C51C03298726CA35B2108E62536042BA958EC0F137CD2C4157D4AFCB
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+%%BeginFont: CMR17
+%!PS-AdobeFont-1.1: CMR17 1.0
+%%CreationDate: 1991 Aug 20 16:38:24
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
+/FullName (CMR17) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR17 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-33 -250 945 749}readonly def
+/UniqueID 5000795 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F075EA0A10A15B0ED05D5039DA41B32B16E95
+A3CE9725A429B35BAD796912FC328E3A28F96FCADA20A598E247755E7E7FF801
+BDB00E9B9B086BDBE6EDCF841A3EAFC6F5284FED3C634085BA4EE0FC6A026E96
+96D55575481B007BF93CA452EE3F71D83FAAB3D9DEDD2A8F96C5840EAE5BE5DC
+9322E81DFF5E250DEB386E12A49FC9FBF9B4C25C3283F3CEA74B8278A1B09DA7
+E9AE4FBAAF23EDF5A3E07D39385D521547C3AAAB8EB70549756EBA8EF445AF4A
+497CA924ACCC3DD5456F8E2C7E36946A5BF14E2E959895F7C94F49137256BE46
+4A238684D52792234869EAE1A6D8ADF4E138B79472D2A90A6CA99E2394CC20CD
+3841733046175B20CEBE372327BF13428EED6A3E2FDF84C2DBA4B0AD584EE9DF
+B51828D3B8F385846158C29C9AC3496CB9692DD10219697B2ED4D425C3957FD8
+C4600D76E045C561216EF05D38177243C314877A69A1C22E3BEC611A2EE5A216
+9B7C264CF6D1839DBBD78A40610F2C0D7C2FE09FFA9822FF55035AD52546970F
+83EED2D30EABB1F303091EBC11A5379B12BB3F405E371519A53EA9D66174ED25
+A2E55463EC71A97BE4C04B39E68112956117C8252DB6FB14AB64534B4BCD568B
+246DB833982B38CDE7268BBF74B6B0C18091E1B1F87D32D66F4DD023D1F10D2A
+7736A960F72AC01F733A11023832CD68FB6288A5977743F781214D8FA9C0C3F7
+80001321D4397771F728FD9EE57CFE7D9192B887EC883EB1505068261DC40089
+7B7D2820F06515CD74513521F6397FEAB3AD3572D9A8269430E407E357422461
+1785FC2782047F4C0339D79B16862D939F3A37F78E4E2174E4FBF132539CB760
+207999FF86F6A3EBE48EB0A1CA635450FDEEF79EB16D853F3BF4B7AA64AAD6FC
+A3FE67F556BF1A0E5EC2AD5722C2C45A4D8390939D0297239DDD4E2D9C18AC0E
+5439FA0B9EF4F08AD2C4856CDB8D75735D07612C0CD9A6C36E431B057593662F
+7F967BAE00838BBE43AA4E4FCAA8B69DC519A69755AC524D0E68EB2B10A915C6
+23E6301F070EC9F6026548D8282A9148E863C7192DDFBCC4FD8979404EA25FA0
+C8A6C5717465B9BF25060E737D475BA8DFE0BE8E03E656FE1DB2174F6CC92824
+2A94E1E2F8966F71FFDC17B83BF70ACB36F2E22E76BF505122B8EE3B3080F40B
+4DD9E3AF08820E85E8B2675EA435B7281AD5417D5CDD53CA3499096EE2C90C20
+41EF2571A4A13E55EA611D09696FE7799F4C0859E96B421AAD95B21A6140F454
+AE0B63DC43B6A53B062788B533FBEF023DAAB71AEDB5FCF35F7DA72569D7FD50
+CC26C5CA6B03861620AB9EDDB4F294BBDAD6111B3C212115BD0E72CDA80B5405
+7224C34F25A5D7F2AD61EB79E8BB5AD9A3ED35990E52DC9C9B2D2F7C7AB15638
+6C20E8340EE84EA7F92B6EB7FF30E9FBDB564017FF03B94735155787FBB9746F
+3629ACEDEADE4F136F4AFE003D3AC5666F53682C373338A6A63E0DB38EF3950A
+9E6D9649C676C3FFC5B3C32E869033A5747B7EFF591C3F1C969B025A0B7304BF
+1B6EA3E27E0D7AA844549A6B77F8701D60EA4DC2E036BAC61C29CE954C707176
+6BF8F93734D17DC57BFD44657C153C10A420DA36B2C3A53A075F0CD95D5A55CC
+37A847D6F76C09719F0F1B65EC16A46A984D4B8FF561E6D1615A0721BEFCDD72
+252009F643FB40074778CA3107F35DD4738F18C209C26808E292F3C0AA78FD9B
+748171536D79087D67CB5024CC61CF915EFE69D7FF2C28C69775B953F47B5704
+418820F983B4CD80DA1B722B3AA384D03E7471A60EB0B47BD9D8B8B8275F9B45
+4F5B5AB4B1BE0C6C6165D65CA383A9A05CFDF324A8D3B59A899F2F3B6CC2F839
+9D5942293A42977C1FF935F0786BEE39E1351DDA5F90D020794FB13DF78830BF
+8CADA82217BC697CBDB3322BABDB51C9D17E5B3D226D070229577E0554582996
+D2584593BA6A9FB483084D25E1FDD7DD72CEC4F9639D613E58743978746B560F
+57ACD4ED1138EA9CE40F965F019BF86164940EDE1807ECA88B76FB85343084B2
+AA58C4F907E1D7C9B0A699B00556D1041838A4715B80A54B0438A13A96254A4A
+9DE4E605380C8500D38D6430EDF0DF59CA56BB602942EFA9A1E6FEB792BA155C
+D2327EC2C6AF3BE5B0716A1F6815C389870806B00423A03B07152A73C0A795F1
+BCCBDE038534B488E8584B546143CEF1D1BCE5469D9F9E41A9DD6A435C5387F6
+ACDAA12E4B6277FF70E7ACB94CB9CB91E4EA33B99430A82C9C90924CABBE6BA7
+079D20FC52E2243EA2D3A7C76E479873AE13EDE40A56524CC6C1EA7419236C3A
+E1CE97C5616F80D0DDC71B101C3518E4CF423F3CE0C23D0D163DBADBDB5D50A7
+A28685DCEB4C41583991622829E28D372B3D47520FF09D3C4220BC7C0D74A2EA
+F50D57E1195C5A2DE3BA200FDC555B330530A2DA31CFD543474BCDB99881B2A9
+4C86FAFEDBFD45AEDADF8988116BF5B9AFFA3E993F5D0DBDA30B2E00850A1EE2
+9BE8CEE229CFDDA4AF40C02E2318C9C188E4F2986858F6AF54FB154C55E8FD91
+DB04A036A5EF742499A8F3D7F411F2A2D7DD24D0559A0086A33E5192F3303FB0
+5B3549BF82E1741858E93EECD88C383A969784AFDAA56ACA32CF76BF8B89A5D6
+D1BF129E5A954E93CAB30F06E1096E09018A401EC806BC1E59823C42E4008E28
+A1A947F342B05B63CE2F169DA9BB348A381191276FABF1378FA8BADFD2F93DBF
+70F98182AA01B2ED46A079B5C58FB895483DDECB36CD852FC9EBB81FDC00750F
+EA844FEC9EA52B1AED3C14ADEB0E9F487CDD227D9C06E4CD2F27370160AE2C5B
+3AF0E44CEF5FBEB526F2AE7C9554E99FE3939797A80E70ABA73DBDA2EF091F3B
+AD9457919FD8B6BE829E3D1E1F6A39347B2A4009CE83DA104C210817FE19EB77
+3445D7188E0BE2751EAF5F4EF6B109AEF55C6D0F3FC4A9358CA79FAAE67F3B21
+A30E3C4D48DEA47A9E91F40BAF9400E6D178D2763E209D5BC6188CF842771276
+FB34AB24294844163E098FD573B7A7F1352F5E331E35ADF28F0782C0028A1166
+9FE32229C2E8022521BBD0BF9191CB79286646529691F2E503FF611A924A4CD1
+60E656510D9B77D835F3A4ABE60BCCB058CF7BB644A0CADC45C5227B2006FBF0
+74685456DCE34A7B4B117C4BDEC2EEEC91000F41EAD50FAFC78AF26AC20A0EF0
+A6C0F4882DAB60997EF4D1B356D6F36F3558B39A86A8045A369425F856CE736E
+11345C5CF49F2C678EF792317D0B4C6CEC23B95663289CCD07143DDDBB5AF116
+B1FE4D79278707EFF0FE42347552B909E0BBAC7ACCDB3A2A99B52A65EA3C5837
+FCB63089BFED6D63E10CB3B264FF642AC5B69FA92A37C961854482F1903657BA
+93CCBB1A2EBBC3D54E9F795A5E646B6574F203CC1C8BD0CF203154E2A446B4DF
+3DB1C6A1FB0027BEDBC0604AB4D802BF08C8898091172245FD124A3F3D80F637
+4E0B5B708817D7A060E880260BBA6161DC0EA0FE4BB5285D7FEA92E4AF997CDC
+A1F9F8F798C993F8D5CDD66EA26ABAFADE8FB9608C171B6D613D05B916C0D1F1
+277802461E19F68858101E5F2D7025C64438924BF00AA8A7205FFE7A56C0CCE3
+9BFD37F9C86901AB4FCADBB20D60DFEE82C2222F26E9DE9F5DA8AD18D53F02A1
+7D508A68FCEE2A97023A389AFB19C0D4DB3C7CFF19610372889BAAC8F4C99B94
+ADC56DAD2EED0564EEA5DABAE1B9C3D790A6BB79B6376D018AB00AF5DA94BF49
+01C54F84029B24A23C2C7C3D33398AEB81CC2F71F55A585C966C0A0DC4412800
+63BA4EA1CEB1B6BBDC958CB0743D26D55A8B4539856311CAE9CE1494A3E9733A
+D41C750C6F75501DCCEC181C2CBD4E0B7B0305EC8DCAF1D7E5334E9879C2A782
+8E19E3B7C6995FEC28D55DA88F9D859C108DE3493C1F561BF3769D386B3EBB35
+9FB254129E60BE531FCECA839DFED9674258EF6B83CC544DF158F0EE626444D0
+D95F452E3CB36FB0393E62D8C6D710DEC6F9848AF900BCA7D951910B676D950F
+FF37F1A27D54C03D1643B40541BCE1E55A9181645F65F34447DEB90F1F2C208A
+4EE9E38FCDBA926319B15D97E74B9E605E01281BA0D7F7D1C8500AB263FD946B
+5C9A2C519F7E09C6731BCB2A9FE41F150B04A111EB59022360390CBC8A98E563
+95480EBCA6E85E08EA15BBB41977678C0D6DD87DBDD5A30AEAD5827DCCBA1E5C
+3E5B073695D13E5D4F7F54EC3A02851D96721079631AA116005C2C9C3B4E3D7B
+54A7275906C799931AC7BFCB705C26577380C06B46C4D5ADA64F47BF4913825A
+62882144ECE08F06AF070092705C5E446428B70B598D1EE01AE73780E2AC10C8
+ECB7D427183D4C86BD18EFA7E4AA5FD2A51C431AD9D81F53DE3CB76F3B3CE8C1
+9FA633178D21B8BCFEDE585D3D5F07B190C0AC289B3E78E643E13305302EBBEB
+6FA7E2F743C58655B83F53A1DD84C1A762083B1191701D6160BD09934BC33906
+677987D1B68FEE658ED9CC1C260C45A920788A0BFEB767EFDBAFB3749C6C578F
+A0176121A76B0082259DF4D5CFFAB3FB6924335F562B1F9A8350B40B4B55FC5B
+5B531789F7099047D694671883CDDB425B32F2D5BBC7F389351D6AA9AF3BBE86
+F4C00E40317F85DE9A933371BA053D3153A734CEA5DD439B00D3E4610FB492F8
+D31A11F590E73A83D23BFE9C7B73F5EF2FE813F531E003653DBDD807061C7E28
+B14476FAA7F9FB9E52577A583F598C4B42FDD322996369842F221720A7962EF9
+0553E8C3666458D6E55F828F0F69A560C55D7D641368EA1AD6701DA95649BBB3
+506A07181A77CA86554931873E46F56680FE375BA47222A9E20C856AF85BF94C
+7C6AAC4D428752532FAA95F1B04CD392F0C804DFE1B6A8C0F02BE0B2C8623758
+8123997E7675CDBD78D6B36FDBCC40999CC590E47C9FDDE28F2AE7CB9B965FAD
+0CB1DBA4F675918B42285A455DFBEF742703D5A1B5A19C9A47831D3077F0BDE9
+BD559E0AD8C5BF81E969974DE81C5B71A359DD8B39E7DD3527DD4A056132F7FF
+042B9398320B6573679602A276503D6A07E189E83F69C8D257B4C4C5ED5D9B98
+1058E647F9C97735BC6DFA4D5E4A5DBD1473DD954B9E2C2C1B2AB32C49BC11AC
+5DE1CABC0989CC13CF6DFE158D4C25BE2DB081027663F1C733AE1C6EC4C7F502
+2EA0210ABB3EE057B26E9A0298E2325D507EE2ED127CEF363B335565C675929C
+5079A92BE638D3B7A7DD953A5BE759C594E2FF546E2378A00844A444F582FB17
+4DAB9D38EDA1A281C4B7AD30A7373232053A191C4C90AC2F05B43E8B84B417FA
+9798881C8D80097C85D901E361A004D21071682B9CB09FC76E539DE102B14A8D
+5C89D160755D7AFB567CDF035EC0CDF5D1C55D0B80BEB63669980376D79A787F
+C33B1D6120E61711864E8871E2A27C8CDEA7D0B8FCAEEFB5DA2366289E865E87
+0DEDA8002CB0E03A5F50D37156259EC9280624BF7791EF250551FD7198311BF5
+C97A75A9D0EE47E06AB87DE74399ADE5E8184389E300EDA835BEA6C24EB6508A
+36864EAA6E1D04F3717E2D7D733204E214AC974CD08B27F8FD9B7538FA4054B3
+B424335A4F72E8501337019EC85FBDEFD7E12A
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont 
+TeXDict begin 39158280 55380996 1000 600 600 (hurd-on-l4.dvi)
address@hidden /Fa 222[61 33[{ TeXaae443f0Encoding ReEncodeFont }1
+99.6264 /CMMI12 rf /Fb 135[51 5[51 2[51 3[51 4[51 51
+1[51 57[51 51 40[{ TeX09fbbfacEncoding ReEncodeFont }9
+99.6264 /CMTT12 rf /Fc 139[39 1[40 1[37 42 41 1[34 3[41
+2[37 41 39 1[41 12[52 41 15[52 21[25 45[{
+ TeX0ef0afcaEncoding ReEncodeFont }15 66.4176 /CMCSC10
+rf /Fd 134[35 3[38 24 29 30 1[36 36 1[58 3[22 36 1[22
+33 36 1[33 36 97[{ TeX74afc74cEncoding ReEncodeFont }15
+66.4176 /CMTI8 rf /Fe 240[35 14[55{ TeXbbad153fEncoding ReEncodeFont }2
+66.4176 /CMSY8 rf /Ff 228[67 27[{ TeXaae443f0Encoding ReEncodeFont }1
+119.552 /CMMI12 rf /Fg 240[42 14[65{ TeXbbad153fEncoding ReEncodeFont }
+2 83.022 /CMSY10 rf /Fh 133[35 35 35 35 35 35 35 35 35
+1[35 35 35 35 35 35 1[35 35 35 35 35 35 35 35 35 1[35
+5[35 4[35 35 35 2[35 35 4[35 35 6[35 2[35 1[35 8[35 35
+1[35 1[35 35 35 2[35 35 35 4[35 34[{ TeX09fbbfacEncoding ReEncodeFont }
+46 66.4176 /CMTT8 rf /Fi 199[30 3[30 30 30 30 30 48[{
+ TeXf7b6d320Encoding ReEncodeFont }6 49.8132 /CMR6 rf
+/Fj 171[41 43 53 13[58 50 39[40 27[{ TeXaae443f0Encoding ReEncodeFont }
+6 66.4176 /CMMI8 rf /Fk 145[62 1[62 6[62 62 2[62 97[{
+ TeX09fbbfacEncoding ReEncodeFont }5 119.552 /CMTT12
+rf /Fl 134[59 59 81 59 62 44 44 46 1[62 56 62 93 31 59
+1[31 62 56 34 51 62 50 62 54 6[68 3[85 86 78 62 84 84
+77 2[106 67 2[42 88 88 70 74 86 81 80 85 7[56 56 56 56
+56 56 56 56 56 2[31 37 3[44 44 27[62 12[{
+ TeXf7b6d320Encoding ReEncodeFont }56 99.6264 /CMBX12
+rf /Fm 133[31 37 37 51 37 39 27 28 28 37 39 35 39 59
+20 37 22 20 39 35 22 31 39 31 39 35 4[35 2[53 53 72 53
+53 51 39 52 55 48 55 53 65 44 2[25 53 55 46 48 54 51
+50 53 1[33 4[20 35 35 35 35 35 35 35 35 35 35 1[20 24
+20 2[27 27 20 4[35 20 18[59 39 39 41 11[{
+ TeXf7b6d320Encoding ReEncodeFont }74 66.4176 /CMR8 rf
+/Fn 134[71 71 97 71 75 52 53 55 71 75 67 75 112 37 71
+1[37 75 67 41 61 75 60 75 65 9[139 1[103 94 75 100 1[92
+101 105 128 81 2[50 1[106 85 1[103 97 96 102 7[67 67
+67 67 67 67 67 67 67 67 1[37 33[75 12[{
+ TeXf7b6d320Encoding ReEncodeFont }53 119.552 /CMBX12
+rf /Fo 134[40 39 55 38 45 28 34 35 38 42 42 47 68 21
+38 1[25 42 38 25 38 42 38 38 42 9[83 62 1[59 47 61 13[63
+2[62 18[25 1[25 4[25 25[49 13[{ TeX74afc74cEncoding ReEncodeFont }35
+83.022 /CMTI10 rf /Fp 139[75 1[79 1[108 7[108 2[88 3[94
+29[140 10[97 97 97 97 97 97 97 97 49[{
+ TeXf7b6d320Encoding ReEncodeFont }15 172.188 /CMBX12
+rf /Fq 166[62 62 85 62 62 60 46 61 1[57 65 62 76 52 65
+1[30 62 65 54 57 63 60 59 62 7[42 42 42 42 42 42 42 42
+42 2[23 28 3[32 32 40[{ TeXf7b6d320Encoding ReEncodeFont }36
+83.022 /CMSL10 rf /Fr 206[33 33 48[{ TeXf7b6d320Encoding ReEncodeFont }
+2 58.1154 /CMR7 rf /Fs 138[48 30 4[40 50 10[36 14[49
+51 63 10[65 1[61 69 59 1[62 6[23 24[52 5[47 27[{
+ TeXaae443f0Encoding ReEncodeFont }16 83.022 /CMMI10
+rf /Ft 133[44 44 44 44 44 44 44 44 44 1[44 44 44 44 44
+44 1[44 44 44 44 44 44 44 44 44 1[44 6[44 44 1[44 44
+44 44 44 44 44 44 44 44 44 1[44 44 44 44 44 44 44 44
+44 3[44 8[44 44 44 1[44 44 44 44 44 2[44 44 2[44 37[{
+ TeX09fbbfacEncoding ReEncodeFont }59 83.022 /CMTT10
+rf /Fu 134[50 50 69 50 53 37 38 39 1[53 48 53 80 27 50
+1[27 53 48 29 44 53 42 53 46 8[72 1[72 1[66 53 72 72
+65 72 1[91 57 2[36 2[60 63 73 69 68 72 7[48 48 48 48
+48 48 48 48 48 1[48 1[32 27 2[37 37 40[{
+ TeXf7b6d320Encoding ReEncodeFont }54 83.022 /CMBX10
+rf /Fv 134[123 2[123 129 90 92 95 1[129 116 129 194 65
+123 1[65 129 116 1[106 129 103 129 113 8[175 1[175 1[162
+129 2[159 175 1[220 3[87 4[178 168 165 20[77 3[90 90
+40[{ TeXf7b6d320Encoding ReEncodeFont }34 206.559 /CMBX12
+rf /Fw 128[42 42 1[83 42 37 44 44 60 44 46 32 33 33 44
+46 42 46 69 23 44 25 23 46 42 25 37 46 37 46 42 3[23
+42 23 51 62 62 85 62 62 60 46 61 65 57 65 62 76 52 65
+43 30 62 65 54 57 63 60 59 62 1[39 39 2[23 23 42 42 42
+42 42 42 42 42 42 42 42 23 28 23 65 1[32 32 23 4[42 23
+18[69 46 46 48 11[{ TeXf7b6d320Encoding ReEncodeFont }87
+83.022 /CMR10 rf /Fx 138[54 38 38 38 3[54 81 1[51 1[27
+1[49 3[43 1[49 19[89 10[69 73 13[49 49 1[49 48[{
+ TeXf7b6d320Encoding ReEncodeFont }17 99.6264 /CMR12
+rf /Fy 138[73 51 1[51 2[66 73 1[36 70 1[36 73 66 1[58
+73 58 13[99 4[90 1[99 122 83 3[99 104 18[66 52[{
+ TeXf7b6d320Encoding ReEncodeFont }21 143.462 /CMR17
+rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 600dpi
+TeXDict begin
+%%PaperSize: A4
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 404 2201 a Fy(P)l(orting)43 b(the)h(GNU)h(Hurd)f
+(to)f(the)g(L4)g(Microk)l(ernel)1311 2566 y Fx(Marcus)34
+b(Brinkmann)1456 2807 y(August)f(2003)p eop end
+%%Page: 2 2
+TeXDict begin 2 1 bop 739 282 a Fw(ii)p eop end
+%%Page: 3 3
+TeXDict begin 3 2 bop 291 1189 a Fv(Con)-6 b(ten)g(ts)291
+1723 y Fu(1)76 b(In)m(tro)s(duction)2166 b(1)415 1834
+y Fw(1.1)84 b(Genesis)77 b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)g(.)f(.)h(.)131 b(1)415 1946 y(1.2)84 b(W)-7 b(ork)27
+b(In)h(Progress)36 b(.)41 b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)131
+b(3)291 2148 y Fu(2)76 b(Bo)s(oting)2360 b(5)415 2259
+y Fw(2.1)84 b(System)28 b(b)r(o)r(otstrap)33 b(.)41 b(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)g(.)f(.)h(.)131 b(5)606 2370 y(2.1.1)94 b(Bo)r(oting)27
+b(the)h(ia32)59 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)
+g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)131 b(5)415 2481
+y(2.2)84 b(The)28 b(loader)e Ft(laden)34 b Fw(.)41 b(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)131 b(6)415 2593 y(2.3)84 b(The)28 b(L4)f(k)n(ernel)35
+b(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)131 b(7)415
+2704 y(2.4)84 b(The)28 b(initial)g(serv)n(er)d Fs(\033)1304
+2716 y Fr(0)1409 2704 y Fw(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)131
+b(7)415 2815 y(2.5)84 b(The)28 b(initial)g(serv)n(er)d
+Fs(\033)1304 2827 y Fr(1)1409 2815 y Fw(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+131 b(7)415 2926 y(2.6)84 b(The)28 b(ro)r(otserv)n(er)d(w)n(ortel)81
+b(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)g(.)f(.)h(.)131 b(7)415 3037 y(2.7)84
+b(The)28 b(ph)n(ysical)e(memory)h(serv)n(er)f(ph)n(ysmem)56
+b(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)131
+b(8)415 3149 y(2.8)84 b(The)28 b(task)f(serv)n(er)45
+b(.)d(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)131 b(9)415
+3260 y(2.9)84 b(The)28 b(device)f(access)f(serv)n(er)g(dev)-5
+b(a)54 b(.)41 b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)h(.)90 b(10)415 3371 y(2.10)42 b(The)28
+b(device)f(access)f(serv)n(er)g(arc)n(hiv)n(e)e(.)42
+b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)90 b(10)415 3482 y(2.11)42 b(The)28 b(ro)r(ot)f(\014lesystem)35
+b(.)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)
+f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(10)291 3684
+y Fu(3)76 b(In)m(ter-pro)s(cess)32 b(comm)m(unication)f(\(IPC\))1161
+b(11)415 3795 y Fw(3.1)84 b(Capabilities)50 b(.)42 b(.)f(.)h(.)f(.)h(.)
+g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(13)606 3907 y(3.1.1)k(Bo)r(otstrapping)
+26 b(a)h(clien)n(t-serv)n(er)e(connection)39 b(.)i(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)90 b(14)606 4018 y(3.1.2)k(Returning)27
+b(a)g(capabilit)n(y)g(from)g(a)h(serv)n(er)d(to)j(a)f(clien)n(t)46
+b(.)41 b(.)h(.)g(.)f(.)h(.)90 b(17)606 4129 y(3.1.3)k(Cop)n(ying)26
+b(a)h(capabilit)n(y)g(from)g(one)h(clien)n(t)f(to)h(another)e(task)50
+b(.)41 b(.)h(.)90 b(17)606 4240 y(3.1.4)k(The)27 b(trust)h(rule)c(.)42
+b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(25)415 4352 y(3.2)84
+b(Sync)n(hronous)26 b(IPC)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g
+(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(26)415 4463 y(3.3)84 b(Noti\014cations)h(.)41 b(.)h(.)f(.)h(.)g(.)f
+(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)h(.)90 b(27)291 4665 y Fu(4)76 b(Threads)33
+b(and)f(T)-8 b(asks)1858 b(29)415 4776 y Fw(4.1)84 b(Accoun)n(ting)69
+b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)
+h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(31)415 4887 y(4.2)84 b(Pro)n(xy)26 b(T)-7 b(ask)26
+b(Serv)n(er)68 b(.)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h
+(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(32)415 4998 y(4.3)84 b(Sc)n(heduling)26 b(.)41 b(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(32)1688 5208 y(iii)p
+eop end
+%%Page: 4 4
+TeXDict begin 4 3 bop 739 282 a Fw(iv)2326 b Fq(CONTENTS)739
+515 y Fu(5)76 b(Virtual)32 b(Memory)g(Managemen)m(t)1389
+b(33)863 616 y Fw(5.1)84 b(In)n(tro)r(duction)26 b(.)41
+b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h
+(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(33)1054
+717 y(5.1.1)k(Learning)26 b(from)i(Unix)77 b(.)41 b(.)h(.)f(.)h(.)g(.)f
+(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(34)1054 818 y(5.1.2)k(Learning)26 b(from)i(Mac)n(h)53
+b(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)90 b(35)1054 918 y(5.1.3)k(F)-7 b(ollo)n(wing)26
+b(the)i(Hurd)g(Philosoph)n(y)53 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)g(.)f(.)90 b(35)863 1019 y(5.2)84 b(Self)29
+b(P)n(aging)71 b(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(35)863 1120 y(5.3)84 b(Bo)r(otstrap)53 b(.)42 b(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(37)863 1221 y(5.4)84
+b(Memory)27 b(Allo)r(cation)g(P)n(olicy)44 b(.)e(.)f(.)h(.)f(.)h(.)g(.)
+f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(37)1054 1321 y(5.4.1)k(Guaran)n(teed)27 b(F)-7 b(rames)26
+b(and)i(Extra)e(F)-7 b(rames)46 b(.)c(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g
+(.)f(.)90 b(37)1054 1422 y(5.4.2)k(An)28 b(External)f(Memory)f(P)n
+(olicy)g(Serv)n(er)k(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f
+(.)90 b(38)863 1523 y(5.5)84 b(Con)n(tainers)24 b(.)42
+b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(39)1054 1624 y(5.5.1)k(The)28 b(Con)n(tainer)e(In)n(terface)52
+b(.)41 b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)
+g(.)f(.)90 b(40)1054 1724 y(5.5.2)k(Mo)n(ving)27 b(Data)60
+b(.)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)
+f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(44)863 1825 y(5.6)84
+b(Cac)n(hing)27 b(Store)g(Accesses)21 b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(44)1054 1926 y(5.6.1)k(Cac)n(hing)27 b(in)g(the)h(File)g(System)68
+b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)
+90 b(46)1054 2027 y(5.6.2)k(Cac)n(hing)27 b(In)n(terfaces)60
+b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)
+h(.)f(.)h(.)g(.)f(.)90 b(47)863 2127 y(5.7)84 b(The)28
+b(Memory)f(P)n(olicy)f(Serv)n(er)20 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(47)863 2228 y(5.8)84 b(Sending)28 b(Data)f(to)h(Sw)n(ap)54
+b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(47)863 2329 y(5.9)84
+b(Self)29 b(P)n(aging)71 b(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)
+g(.)f(.)90 b(48)1054 2430 y(5.9.1)k(The)28 b(P)n(ager)g(.)42
+b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g
+(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(48)1054 2530
+y(5.9.2)k(Reusing)27 b(Virtual)h(F)-7 b(rames)60 b(.)41
+b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f
+(.)90 b(49)1054 2631 y(5.9.3)k(T)-7 b(aking)27 b(Adv)-5
+b(an)n(tage)27 b(of)g(Self-P)n(aging)55 b(.)41 b(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(49)739 2816 y Fu(6)76
+b(The)32 b(POSIX)h(p)s(ersonalit)m(y)1657 b(51)863 2917
+y Fw(6.1)84 b(Authen)n(tication)66 b(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)
+g(.)f(.)90 b(51)1054 3017 y(6.1.1)k(Authen)n(ticating)28
+b(a)f(clien)n(t)h(to)f(a)h(serv)n(er)61 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)g(.)f(.)90 b(52)863 3118 y(6.2)84 b(Pro)r(cess)26
+b(Managemen)n(t)36 b(.)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(54)1054 3219 y(6.2.1)k(Signals)24 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)90 b(54)1054 3320 y(6.2.2)k(The)28 b Ft(fork\(\))d
+Fw(function)39 b(.)i(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(55)1054 3420 y(6.2.3)k(The)28
+b Ft(exec)e Fw(functions)i(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h
+(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(55)863
+3521 y(6.3)84 b(Unix)28 b(Domain)g(So)r(c)n(k)n(ets)83
+b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(58)863 3622 y(6.4)84
+b(Pip)r(es)24 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)g(.)f(.)90 b(59)863 3723 y(6.5)84 b(Filesystems)63
+b(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(59)1054 3823 y(6.5.1)k(Directory)27 b(lo)r(okup)g(across)e
+(\014lesystems)37 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f
+(.)90 b(59)1054 3924 y(6.5.2)k(Reparen)n(ting)30 b(.)41
+b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f
+(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(60)739 4109 y Fu(7)76
+b(Debugging)2198 b(63)739 4293 y(8)76 b(Device)32 b(Driv)m(ers)2026
+b(65)863 4394 y Fw(8.1)84 b(Requiremen)n(ts)49 b(.)42
+b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(65)863
+4495 y(8.2)84 b(Ov)n(erview)75 b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f
+(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)90 b(65)1054 4595 y(8.2.1)k(La)n(y)n(er)26
+b(of)h(the)h(driv)n(ers)82 b(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90 b(66)1054
+4696 y(8.2.2)k(Address)27 b(spaces)57 b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)90
+b(66)1054 4797 y(8.2.3)k(Zero)26 b(cop)n(ying)h(and)g(DMA)69
+b(.)41 b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)
+g(.)f(.)90 b(66)1054 4898 y(8.2.4)k(Ph)n(ysical)26 b(v)n(ersus)g
+(logical)h(device)g(view)59 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)g(.)f(.)90 b(67)1054 4998 y(8.2.5)k(Things)27 b(for)g(the)h(future)
+i(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)90 b(67)p eop end
+%%Page: 5 5
+TeXDict begin 5 4 bop 291 282 a Fq(CONTENTS)2348 b Fw(v)415
+515 y(8.3)84 b(Bus)27 b(Driv)n(ers)51 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f
+(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)h(.)90 b(67)606 615 y(8.3.1)k(Ro)r(ot)27
+b(bus)h(driv)n(er)h(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(68)606
+715 y(8.3.2)k(Generic)27 b(Bus)g(Driv)n(er)j(.)41 b(.)h(.)f(.)h(.)g(.)f
+(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(68)606 814 y(8.3.3)k(ISA)28 b(Bus)f(Driv)n(er)40 b(.)h(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f
+(.)h(.)90 b(68)606 914 y(8.3.4)k(PCI)27 b(Bus)g(Driv)n(er)32
+b(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(69)415 1013 y(8.4)84
+b(Device)28 b(Driv)n(ers)76 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)90 b(69)606 1113 y(8.4.1)k(Classes)82 b(.)42 b(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)g(.)f(.)h(.)90 b(69)606 1213 y(8.4.2)k(Human)28 b(input)g(devices)f
+(\(HID\))i(and)e(the)h(console)d(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(70)606 1312 y(8.4.3)k(Generic)27 b(Device)h(Driv)n(er)55
+b(.)41 b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)
+g(.)f(.)h(.)90 b(70)606 1412 y(8.4.4)k(ISA)28 b(Devices)k(.)42
+b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(70)606 1512 y(8.4.5)k(PCI)27
+b(Devices)d(.)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(71)415
+1611 y(8.5)84 b(Service)27 b(Serv)n(ers)64 b(.)42 b(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)g(.)f(.)h(.)90 b(71)606 1711 y(8.5.1)k(Plugin)27
+b(Manager)20 b(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(71)606
+1810 y(8.5.2)k(Dev)-5 b(a)33 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)
+g(.)f(.)h(.)90 b(71)606 1910 y(8.5.3)k Fs(!)924 1922
+y Fr(0)1022 1910 y Fw(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f
+(.)h(.)90 b(72)415 2010 y(8.6)84 b(Resource)26 b(Managemen)n(t)49
+b(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(72)606 2109 y(8.6.1)k(IR)n(Q)27
+b(handling)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90 b(72)606
+2209 y(8.6.2)k(Memory)42 b(.)g(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g
+(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(73)415 2309 y(8.7)84 b(Bo)r(otstrapping)25 b(.)41 b(.)h(.)f(.)h(.)g
+(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)
+h(.)f(.)h(.)g(.)f(.)h(.)90 b(74)606 2408 y(8.7.1)k(dev)-5
+b(a)50 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(74)606 2508 y(8.7.2)k(Plugin)27 b(Manager)20 b(.)41
+b(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h
+(.)f(.)h(.)g(.)f(.)h(.)90 b(74)415 2607 y(8.8)84 b(Order)26
+b(of)i(implemen)n(tation)k(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h
+(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(74)415 2707 y(8.9)84 b(Scenarios)77 b(.)41 b(.)h(.)f(.)h(.)f(.)h(.)g
+(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)
+h(.)f(.)h(.)g(.)f(.)h(.)90 b(74)606 2807 y(8.9.1)k(Insert)27
+b(Ev)n(en)n(t)22 b(.)42 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)90
+b(74)606 2906 y(8.9.2)k(Sev)n(eral)26 b(Plugin)h(Managers)c(.)42
+b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)90 b(77)p eop end
+%%Page: 6 6
+TeXDict begin 6 5 bop 739 282 a Fw(vi)2326 b Fq(CONTENTS)p
+eop end
+%%Page: 1 7
+TeXDict begin 1 6 bop 291 1174 a Fp(Chapter)64 b(1)291
+1624 y Fv(In)-6 b(tro)6 b(duction)498 2089 y Fo(What)28
+b(is)g(right)g(in)g(this)g(p)l(articular)h(c)l(ase,)g(like)f
+(everything)h(else,)g(r)l(e)l(quir)l(es)e(to)498 2189
+y(b)l(e)j(explaine)l(d.)2198 2405 y(R)l(epublic)g(V)43
+b Fw(b)n(y)27 b(Plato)291 2715 y Fn(1.1)135 b(Genesis)291
+2932 y Fw(The)18 b(GNU)i(Hurd)e(is)h(a)f(m)n(ulti-user,)i(time)f
+(sharing,)g(general)e(purp)r(ose,)j(net)n(w)n(ork)d(op)r(erating)291
+3032 y(system.)53 b(The)34 b(Hurd's)f(existence)g(is)g(motiv)-5
+b(ated)34 b(b)n(y)f(p)r(erceiv)n(ed)g(design)g(\015a)n(ws)f(in)i(Unix)
+291 3132 y(and)g(other)g(op)r(erating)f(systems:)50 b(either)35
+b(the)g(system)f(is)g(o)n(v)n(erly)f(restrictiv)n(e)g(and)h(do)r(es)291
+3231 y(not)25 b(allo)n(w)f(the)i(user)e(to)h(p)r(erform)g(in)n
+(teresting)g(op)r(erations)f(without)h(the)h(in)n(terv)n(en)n(tion)e
+(of)291 3331 y(the)30 b(administrator)f(\(e.g.)44 b(moun)n(t)30
+b(\014le)g(systems\))g(or)g(the)g(securit)n(y)f(p)r(olicy)h(is)g(o)n(v)
+n(erly)e(lax)291 3431 y(and)23 b(users)g(can)g(harm)g(eac)n(h)g(other)g
+(and)g(the)h(system.)36 b(The)23 b(Hurd)h(emphasizes)f(\015exibilit)n
+(y)291 3530 y(and)k(securit)n(y)-7 b(.)36 b(The)28 b(fundamen)n(tal)f
+(philosoph)n(y)g(is:)498 3748 y Fo(The)g(op)l(er)l(ating)f(system)g
+(should)g(emp)l(ower)h(users)e(while)i(maintaining)g(strict)498
+3848 y(system)j(se)l(curity.)291 4066 y Fw(Sp)r(eed,)i(although)f(v)n
+(ery)f(imp)r(ortan)n(t,)i(is)g(secondary)d(to)i(correctness)f(and)h
+(securit)n(y)-7 b(.)48 b(W)-7 b(e)291 4166 y(ha)n(v)n(e)30
+b(ho)n(w)n(ev)n(er)g(reason)g(to)i(b)r(eliev)n(e)f(that)i(w)n(e)e(ha)n
+(v)n(e)g(iden)n(ti\014ed)h(imp)r(ortan)n(t)f(areas)f(where)291
+4265 y(the)h(Hurd,)i(due)e(to)g(its)h(design,)g(will)f(not)h(only)f(b)r
+(e)g(able)g(to)g(comp)r(ete)h(with)g(traditional)291
+4365 y(systems,)27 b(but)h(outp)r(erform)f(them.)291
+4500 y(In)36 b(order)e(to)i(ac)n(hiev)n(e)f(this)h(goal,)h(a)e(m)n
+(ulti-serv)n(er)f(arc)n(hitecture)h(has)h(b)r(een)g(em)n(braced.)291
+4600 y(The)26 b(initial)h(protot)n(yp)r(e)f(of)g(the)h(Hurd)g(runs)f
+(on)g(a)g(deriv)-5 b(ativ)n(e)26 b(of)h(the)g(Mac)n(h)f(microk)n(ernel)
+291 4700 y(dev)n(elop)r(ed)33 b(at)g(Carnegie)f(Mellon)i(Univ)n(ersit)n
+(y)f(in)h(the)g(1980s)d(and)j(early)e(1990s.)53 b(With)291
+4799 y(this)21 b(implemen)n(tation,)h(an)f(authen)n(tication)f(sc)n
+(heme)h(similar)f(to)h(Kerb)r(eros)e(w)n(as)h(explored)291
+4899 y(whic)n(h)36 b(separates)g(the)h(user)f(iden)n(tit)n(y)h(from)f
+(the)i(pro)r(cess)d(thereb)n(y)i(allo)n(wing)e(tasks)h(to)291
+4998 y(iden)n(tify)27 b(themselv)n(es)g(not)h(b)n(y)f(an)g(inheren)n(t)
+g(attribute)h(but)g(using)f(unforgeable)f(iden)n(tit)n(y)1702
+5208 y(1)p eop end
+%%Page: 2 8
+TeXDict begin 2 7 bop 739 282 a Fw(2)1569 b Fq(CHAPTER)27
+b(1.)64 b(INTR)n(ODUCTION)739 515 y Fw(tok)n(ens.)33
+b(User)20 b(space)f(\014le)h(systems)f(and)h(a)f(user)g(space)h
+(virtual)f(\014le)h(system,)h(VFS,)g(allo)n(w)n(ed)739
+615 y(users)33 b(to)g(moun)n(t)h(their)f(o)n(wn)g(\014le)h(systems)f
+(including)h(NFS)h(and)e(to)h(create)e(their)i(o)n(wn)739
+715 y(sp)r(ecial)j(\014le)h(systems)g(suc)n(h)f(as)g(ftpfs)i(without)f
+(needing)g(sp)r(ecial)f(p)r(ermissions)g(on)h(the)739
+814 y(system)33 b(and)h(without)g(harming)f(other)g(users.)55
+b(This)34 b(w)n(as)f(based)g(on)g(the)i(observ)-5 b(ation)739
+914 y(that)25 b(the)h(only)e(reason)g(that)h(users)f(are)g(not)h(p)r
+(ermitted)h(to)f(moun)n(t)g(\014le)g(systems)g(in)g(Unix)739
+1013 y(is)g(that)g(it)g(in)n(v)n(olv)n(es)e(t)n(widdling)i(k)n(ernel)f
+(data)g(structures:)35 b(with)26 b(the)f(VFS)g(outside)g(of)g(the)739
+1113 y(k)n(ernel,)i(this)h(w)n(as)e(no)h(longer)g(an)g(imp)r(edance.)
+739 1379 y(During)d(this)h(implemen)n(tation,)g(m)n(uc)n(h)f(w)n(as)f
+(learned)h(including:)35 b(Mac)n(h)24 b(did)h(not)f(remo)n(v)n(e)739
+1478 y(enough)36 b(p)r(olicy)g(from)g(the)h(k)n(ernel)e(and)h(as)g(a)g
+(result,)i(its)f(mec)n(hanisms)e(w)n(ere)h(still)h(to)r(o)739
+1578 y(hea)n(vy-w)n(eigh)n(t.)49 b(Mac)n(h)32 b(mo)n(v)n(es)g(what)g
+(has)g(no)n(w)g(b)r(ecome)g(POSIX)h(from)f(the)h(Unix)g(k)n(er-)739
+1678 y(nel)g(in)n(to)g(user)f(space)g(and)h(only)g(pro)n(vides)e(IPC,)i
+(a)f(sc)n(heduler,)i(memory)e(managemen)n(t)739 1777
+y(and)27 b(device)g(driv)n(ers.)35 b(This)27 b(design)g(lea)n(v)n(es)f
+(the)i(resource)d(allo)r(cation)h(and)h(managemen)n(t)739
+1877 y(sc)n(hemes)g(in)h(the)h(k)n(ernel)e(while)h(the)g(resource)f
+(utilization)h(w)n(as)f(mo)n(v)n(ed)g(completely)g(in)n(to)739
+1976 y(user)d(space)h(\(e.g.)36 b(\014le)25 b(systems\).)36
+b(This)25 b(made)g(imp)r(ortan)n(t)g(information)g(ab)r(out)g(resource)
+739 2076 y(utilization)k(inaccessible)g(to)g(the)h(allo)r(cation)e(mec)
+n(hanisms)h(and)g(th)n(us)g(made)h(smart)e(im-)739 2176
+y(plemen)n(tations)33 b(of)h(resource)d(managers)h(extremely)h
+(di\016cult)i(and)e(far)g(less)g(in)n(telligen)n(t)739
+2275 y(than)k(their)g(monolithic)f(k)n(ernel)g(coun)n(terparts.)63
+b(In)37 b(k)n(eeping)f(with)i(the)f(Hurd)g(philos-)739
+2375 y(oph)n(y)g(of)i(emp)r(o)n(w)n(ering)d(the)j(user,)h(it)f(w)n(as)e
+(observ)n(ed)g(that)h(man)n(y)g(applications)f(could)739
+2475 y(pro\014t)29 b(if)h(they)f(could)g(con)n(trol)f(ho)n(w)h(the)h
+(resources)d(they)i(are)g(using)g(are)f(managed,)h(e.g.)739
+2574 y(whic)n(h)34 b(pages)f(are)g(evicted)h(when)g(there)g(is)g
+(memory)g(pressure.)55 b(This)34 b(is)g(not)g(only)g(an)739
+2674 y(impro)n(v)n(emen)n(t)e(o)n(v)n(er)g(the)j(Mac)n(h)e(sc)n(heme,)i
+(but)f(also)f(o)n(v)n(er)f(a)h(traditional)g(Unix-lik)n(e)g(de-)739
+2773 y(sign:)i(applications)25 b(not)h(only)f(kno)n(w)g(ho)n(w)h(a)f
+(resource)f(is)i(b)r(eing)f(used)h(but)h(also)d(what)i(its)739
+2873 y(con)n(ten)n(ts)e(are.)35 b(Unix)25 b(kno)n(ws)f(ho)n(w)g(a)h
+(frame)f(of)h(memory)f(is)h(allo)r(cated,)f(e.g.)36 b(to)25
+b(the)g(blo)r(c)n(k)739 2973 y(cac)n(he,)32 b(but)h(it)f(do)r(es)g(not)
+g(kno)n(w)f(what)i(its)f(con)n(ten)n(ts)f(are)g(nor)h(the)g(classes)f
+(of)h(data)f(and)739 3072 y(the)g(t)n(yp)r(e)g(of)f(exp)r(ected)h
+(usage)e(patterns)i(of)f(the)h(data)f(t)n(yp)r(es)h(con)n(tained)e
+(therein.)46 b(This)739 3172 y(sc)n(heme)22 b(should)h(p)r(ermit)h(an)e
+(application)h(to)f(mak)n(e)h(far)f(more)g(in)n(telligen)n(t)h
+(decisions)f(than)739 3272 y(are)k(p)r(ossible)i(with)g(the)g(sup)r
+(er\014cial)f(kno)n(wledge)f(that)i(a)f(monolithic)h(k)n(ernel)e(has.)
+739 3537 y(The)35 b(L4)g(microk)n(ernel)e(mak)n(es)h(implemen)n(ting)i
+(this)f(philosoph)n(y)f(p)r(ossible:)52 b(it)36 b(aims)e(to)739
+3637 y(absolutely)h(minimize)i(the)f(amoun)n(t)g(of)g(p)r(olicy)f(in)i
+(the)f(microk)n(ernel)e(while)j(pro)n(viding)739 3737
+y(p)r(o)n(w)n(erful)i Fo(foundational)49 b Fw(mec)n(hanisms)39
+b(for)g(in)n(ter-pro)r(cess)e(comm)n(unication,)42 b(memory)739
+3836 y(mo)n(v)n(emen)n(t)22 b(\(mapping)h(and)g(gran)n(ting)e(of)i
+(pages)f(via)g(address)g(space)g(manipulation\))h(and)739
+3936 y(task)k(and)g(thread)g(creation)g(and)g(manipulation.)739
+4201 y(Th)n(us,)41 b(while)d(the)h(L4)f(microk)n(ernel)f(tries)h(to)g
+(minimize)h(the)g(p)r(olicy)g(that)f(the)h(k)n(ernel)739
+4301 y(enforces)32 b(on)h(the)g(soft)n(w)n(are)f(running)h(on)g(it,)i
+(the)e(Hurd)g(tries)g(to)g(minimize)h(the)f(p)r(olicy)739
+4401 y(that)22 b(the)g(op)r(erating)f(system)g(enforces)g(on)g(its)h
+(users.)34 b(The)22 b(Hurd)g(also)e(aims)i(to)f(pro)n(vide)g(a)739
+4500 y(POSIX)f(conforman)n(t,)g(general)f(purp)r(ose)h(la)n(y)n(er.)32
+b(This)21 b(POSIX)e(p)r(ersonalit)n(y)g(of)h(the)h(Hurd,)739
+4600 y(ho)n(w)n(ev)n(er,)28 b(is)i(pro)n(vided)e(for)i(con)n(v)n
+(enience)e(only)h(and)h(to)f(mak)n(e)g(the)h(Hurd)g(useful:)42
+b(man)n(y)739 4700 y(applications)25 b(target)g(a)g(subset)h(of)g
+(POSIX.)f(Other)g(p)r(ersonalities)g(can)g(b)r(e)i(implemen)n(ted)739
+4799 y(and)h(used)h(in)f(parallel.)38 b(This)29 b(default)g(p)r
+(ersonalit)n(y)e(of)h(the)h(Hurd)g(is)f(not)g(sandb)r(o)n(xed:)38
+b(it)739 4899 y(pro)n(vides)31 b(con)n(v)n(enien)n(t)g(features)h(that)
+g(allo)n(w)f(the)i(user)f(to)g(extend)h(the)f(system)g(so)g(that)739
+4998 y(all)27 b(POSIX)g(compatible)h(programs)d(can)i(tak)n(e)g(adv)-5
+b(an)n(tage)26 b(of)i(them.)p eop end
+%%Page: 3 9
+TeXDict begin 3 8 bop 291 282 a Fq(1.2.)63 b(W)n(ORK)27
+b(IN)h(PR)n(OGRESS)1752 b Fw(3)291 515 y Fn(1.2)135 b(W)-11
+b(ork)45 b(In)f(Progress)291 733 y Fw(This)22 b(man)n(ual)h(is)f(less)h
+(a)f(man)n(ual)g(than)h(a)g(series)f(of)h(notes)f(ab)r(out)h(the)g
+(e\013ort)g(to)g(do)r(cumen)n(t)291 833 y(the)28 b(curren)n(t)e
+(strategy)h(to)g(p)r(ort)g(the)h(Hurd)g(to)g(the)g(L4)f(microk)n
+(ernel.)498 989 y Fm(Remarks)f(ab)r(out)h(the)g(history)e(of)h(a)g
+(certain)g(feature)h(and)f(implemen)n(tation)h(details)f(are)498
+1068 y(set)d(in)f(a)h(smaller)e(fon)n(t)i(and)g(separated)h(from)d(the)
+i(main)f(text,)i(just)e(lik)n(e)h(this)f(paragraph.)498
+1146 y(Because)j(this)f(is)f(w)n(ork)g(in)g(progress,)g(there)i(are)f
+(naturally)f(a)h(lot)g(of)f(suc)n(h)i(commen)n(ts.)291
+1323 y Fw(The)d(p)r(ort)h(to)g(L4)f(w)n(as)g(set)h(in)n(to)f(action)g
+(in)h(the)h(summer)e(of)h(2002)e(when)i(Neal)f(H.)i(W)-7
+b(al\014eld)291 1423 y(w)n(en)n(t)26 b(to)g(the)h(Univ)n(ersit\177)-42
+b(at)26 b(of)g(Karlsruhe.)35 b(During)26 b(that)h(time,)g(he)g(w)n(ork)
+n(ed)e(with)i(the)f(L4)291 1523 y(group)19 b(and)h(designed)g(a)g
+(basic)g(IPC,)g(T)-7 b(ask)20 b(and)g(Thread)g(API)g(as)g(w)n(ell)g(as)
+g(doing)g(extensiv)n(e)291 1622 y(design)30 b(w)n(ork)f(on)h(the)h
+(virtual)f(memory)g(manager.)43 b(He)31 b(w)n(as)f(aided)g(greatly)f(b)
+n(y)h(discus-)291 1722 y(sions)k(with)i(Marcus)e(Brinkmann,)j(Uw)n(e)e
+(Danno)n(wski,)h(Kevin)f(Elphinstone,)i(Andreas)291 1821
+y(Haeb)r(erlen,)43 b(W)-7 b(olfgang)40 b(J\177)-42 b(ahrling,)42
+b(Josh)n(ua)d(LeV)-7 b(asseur,)43 b(Esp)r(en)d(Sk)n(oglund,)j(V)-7
+b(olkmar)291 1921 y(Uhlig)27 b(and)h(Marcus)e(V\177)-42
+b(olp.)291 2056 y(A)33 b(public)h(release)e(of)i(L4)e(w)n(as)h(made)g
+(in)h(Ma)n(y)e(of)i(2003.)52 b(It)34 b(w)n(as)e(so)r(on)h(after)g(this)
+h(that)291 2156 y(Marcus)21 b(Brinkmann)h(b)r(egan)g(o)n(v)n(erhauling)
+f(the)i(prop)r(osed)f(IPC)g(system)g(and)h(iden)n(tifying)291
+2256 y(imp)r(ortan)n(t)39 b(\015a)n(ws)f(and)h(scenarios)e(that)j(had)f
+(b)r(een)h(originally)d(o)n(v)n(erlo)r(ok)n(ed.)69 b(He)40
+b(also)291 2355 y(revised)27 b(the)i(fork)f(and)g(exec)g(strategy)f
+(and)h(b)r(egan)g(extensiv)n(e)g(w)n(ork)e(on)j(the)f(rest)g(of)h(the)
+291 2455 y(system.)291 2590 y(P)n(eter)21 b(De)h(Sc)n(hrijv)n(er)f(and)
+i(Daniel)f(W)-7 b(agner)21 b(started)h(to)g(design)g(the)h(device)f
+(driv)n(er)f(frame-)291 2690 y(w)n(ork.)291 2825 y(Niels)29
+b(M)r(\177)-44 b(uller)28 b(w)n(as)g(the)h(\014rst)g(one)f(to)h
+(realize)f(that)h(the)g(exec)g(serv)n(er)e(can)h(b)r(e)i(eliminated)291
+2925 y(and)d(ga)n(v)n(e)f(helpful)i(input)h(on)e(sev)n(eral)f(asp)r
+(ects)h(of)h(the)f(task)h(serv)n(er)d(and)j(IPC)f(design.)291
+3060 y(During)c(this)g(pro)r(cess)g(v)-5 b(aluable)22
+b(input)j(and)e(discussion)f(has)h(come)g(from)g(man)n(y)g(di\013eren)n
+(t)291 3160 y(corners)i(including:)p eop end
+%%Page: 4 10
+TeXDict begin 4 9 bop 739 282 a Fw(4)1569 b Fq(CHAPTER)27
+b(1.)64 b(INTR)n(ODUCTION)p eop end
+%%Page: 5 11
+TeXDict begin 5 10 bop 291 1181 a Fp(Chapter)64 b(2)291
+1640 y Fv(Bo)6 b(oting)291 2115 y Fw(A)30 b(m)n(ultib)r(o)r
+(ot-complian)n(t)g(b)r(o)r(otloader,)f(for)h(example)g(GNU)g(GR)n(UB,)h
+(loads)e(the)h(loader)291 2215 y(program)24 b Ft(laden)p
+Fw(,)h(the)i(k)n(ernel,)g Fs(\033)1347 2227 y Fr(0)1384
+2215 y Fw(,)g(the)g(ro)r(otserv)n(er)d(and)j(further)g(mo)r(dules.)36
+b(The)27 b(loader)291 2314 y(is)j(started,)g(patc)n(hes)f(the)i(k)n
+(ernel)e(in)n(terface)g(page,)h(and)g(starts)f(the)h(k)n(ernel.)44
+b(The)30 b(k)n(ernel)291 2414 y(starts)21 b Fs(\033)564
+2426 y Fr(0)624 2414 y Fw(and)i(the)f(ro)r(otserv)n(er.)33
+b(The)22 b(ro)r(otserv)n(er)e(has)i(to)g(deal)g(with)h(the)g(other)f
+(mo)r(dules.)291 2747 y Fn(2.1)135 b(System)45 b(b)t(o)t(otstrap)291
+2976 y Fw(The)27 b(initial)h(part)f(of)h(the)g(b)r(o)r(ot)f(pro)r
+(cedure)g(is)h(system)f(sp)r(eci\014c.)291 3267 y Fl(2.1.1)112
+b(Bo)s(oting)37 b(the)h(ia32)291 3467 y Fw(On)18 b(the)i(ia32,)f(the)h
+(BIOS)f(will)g(b)r(e)g(one)g(of)g(the)h(\014rst)e(things)h(to)g(run.)34
+b(Ev)n(en)n(tually)-7 b(,)20 b(the)f(BIOS)291 3566 y(will)24
+b(start)f(the)i(b)r(o)r(otloader.)34 b(The)24 b(Hurd)g(requires)f(a)g
+(m)n(ultib)r(o)r(ot-complian)n(t)h(b)r(o)r(otloader,)291
+3666 y(suc)n(h)i(as)g(GNU)h(GR)n(UB.)f(A)h(t)n(ypical)f
+(con\014guration)f(\014le)i(en)n(try)f(in)h(the)f Ft(menu.list)d
+Fw(\014le)k(of)291 3765 y(GNU)h(GR)n(UB)g(will)f(lo)r(ok)g(lik)n(e)h
+(this:)291 4002 y Ft(title)41 b(=)i(The)g(GNU)f(Hurd)g(on)h(L4)291
+4102 y(root)f(=)h(\(hd0,0\))291 4201 y(kernel)e(=)i(/boot/laden)291
+4301 y(module)e(=)i(/boot/ia32-kerne)o(l)291 4401 y(module)e(=)i
+(/boot/sigma0)291 4500 y(module)e(=)i(/boot/wortel)291
+4600 y(module)e(=)i(/boot/physmem)291 4700 y(module)e(=)i(/boot/task)
+291 4799 y(module)e(=)i(/boot/deva)291 4899 y(module)e(=)i
+(/boot/deva-drive)o(rs)291 4998 y(module)e(=)i(/boot/rootfs)1702
+5208 y Fw(5)p eop end
+%%Page: 6 12
+TeXDict begin 6 11 bop 739 282 a Fw(6)1841 b Fq(CHAPTER)28
+b(2.)64 b(BOOTING)739 515 y Fw(GNU)30 b(GR)n(UB)f(loads)f(the)i(binary)
+e(image)g(\014les)h(in)n(to)g(memory)g(and)g(jumps)g(to)g(the)h(en)n
+(try)739 615 y(p)r(oin)n(t)e(of)34 b Ft(laden)p Fw(.)739
+914 y Fn(2.2)135 b(The)45 b(loader)h Fk(laden)739 1126
+y Ft(laden)26 b Fw(is)i(a)g(m)n(ultib)r(o)r(ot)h(complian)n(t)f(k)n
+(ernel)f(from)h(the)g(p)r(ersp)r(ectiv)n(e)g(of)g(GNU)h(GR)n(UB.)g(It)
+739 1226 y(exp)r(ects)34 b(at)g(least)f(three)h(mo)r(dules.)56
+b(The)34 b(\014rst)g(mo)r(dule)g(is)g(the)g(L4)g(k)n(ernel)f(image,)i
+(the)739 1326 y(second)d(mo)r(dule)h(is)f(the)h Fs(\033)1593
+1338 y Fr(0)1664 1326 y Fw(serv)n(er)d(image,)j(and)g(the)g(third)g(mo)
+r(dule)f(is)h(the)g(ro)r(otserv)n(er)739 1425 y(image.)946
+1563 y Fm(Later,)d(the)g(L4)f(k)n(ernel)f(will)g(supp)r(ort)h(the)g
+(optional)g(UTCB)f(paging)i(serv)n(er)e Fj(\033)3133
+1572 y Fi(1)3168 1563 y Fm(,)h(whic)n(h)946 1642 y(has)22
+b(to)g(b)r(e)h(treated)g(lik)n(e)e(the)h(other)h(initial)e(serv)n(ers)g
+(b)n(y)i Fh(laden)p Fm(.)31 b(A)22 b(command)g(line)g(option)946
+1721 y(to)29 b Fh(laden)f Fm(will)e(allo)n(w)i(the)g(user)f(to)h(sp)r
+(ecify)g(if)e(the)j(third)e(mo)r(dule)h(is)f(the)h(ro)r(otserv)n(er)g
+(or)946 1800 y Fj(\033)986 1809 y Fi(1)1021 1800 y Fm(.)j(If)24
+b Fj(\033)1183 1809 y Fi(1)1241 1800 y Fm(is)f(used,)h(the)h(ro)r
+(otserv)n(er)e(is)g(the)i(fourth)f(mo)r(dule)g(in)f(the)h(list.)739
+1958 y Ft(laden)33 b Fw(copies)i(\(or)g(mo)n(v)n(es\))f(the)i(three)f
+(executable)g(images)f(to)i(the)g(righ)n(t)e(lo)r(cation)h(in)739
+2058 y(memory)-7 b(,)29 b(according)f(to)h(their)h(resp)r(ectiv)n(e)e
+(ELF)h(headers.)42 b(It)30 b(also)e(initializes)h(the)h(BSS)739
+2158 y(section)d(to)h(zero.)946 2295 y Fm(Laden)e(has)e(to)h(deal)g
+(with)f(o)n(v)n(erlapping)h(source)g(and)g(destination)g(memory)g
+(areas)f(in)g(an)946 2374 y(in)n(telligen)n(t)29 b(w)n(a)n(y)-6
+b(.)42 b(It)29 b(curren)n(tly)e(will)f(detect)k(suc)n(h)e(situations,)g
+(but)h(is)d(not)j(alw)n(a)n(ys)e(able)946 2453 y(to)e(\014nd)f(a)g
+(solution,)f(ev)n(en)i(if)e(one)h(exists.)946 2542 y(If)j(a)g(memory)g
+(area)g(stretc)n(hes)h(out)g(to)g(the)f(v)n(ery)h(last)f(page)g
+(addressible)g(in)g(32)g(bit,)h(the)946 2621 y(high)18
+b(address)f(of)g(the)i(memory)e(descriptor)g(will)f(o)n(v)n(er\015o)n
+(w.)30 b(This)17 b(is)g(in)g(fact)g(the)i(b)r(eha)n(viour)946
+2700 y(of)31 b Fh(kickstart)p Fm(.)37 b Fh(laden)27 b
+Fm(curren)n(tly)e(truncates)i(suc)n(h)e(an)h(area)f(b)n(y)h(one)g
+(page.)36 b(This)25 b(needs)946 2779 y(clari\014cation)g(in)e(the)i(L4)
+e(standard.)739 2937 y Fw(Then)j(it)g(searc)n(hes)e(for)h(the)h(k)n
+(ernel)f(in)n(terface)h(page)e(\(KIP\))i(in)g(the)g(L4)f(k)n(ernel)g
+(image)g(and)739 3037 y(mo)r(di\014es)j(it)g(in)f(the)h(follo)n(wing)f
+(w)n(a)n(y:)863 3218 y Fg(\017)41 b Fw(The)33 b(memory)e(descriptors)f
+(are)h(\014lled)i(in)f(according)e(to)i(the)g(memory)g(la)n(y)n(out)e
+(of)946 3318 y(the)c(system.)36 b(On)26 b(ia32,)f(this)h(information)f
+(is)g({)g(at)h(least)f(partially)g({)g(pro)n(vided)g(b)n(y)946
+3417 y(GNU)k(GR)n(UB.)1129 3560 y Fm(GNU)d(GR)n(UB)f(seems)h(to)g(omit)
+g(information)f(ab)r(out)i(the)f(memory)f(that)i(is)e(shared)1129
+3639 y(with)18 b(the)g(V)n(GA)g(card.)29 b Fh(laden)19
+b Fm(creates)g(a)f(sp)r(ecial)g(en)n(try)g(for)f(that)i(region,)g(o)n
+(v)n(erriding)1129 3718 y(an)n(y)24 b(previous)g(memory)g(descriptor.)
+863 3881 y Fg(\017)41 b Fw(The)28 b(start)g(and)f(end)h(addresses)e
+(and)i(the)g(en)n(try)f(p)r(oin)n(t)h(of)g(the)g(initial)h(serv)n(ers)c
+(are)946 3981 y(\014lled)j(in.)1129 4124 y Fm(A)19 b(future)h(v)n
+(ersion)g(of)f(L4)h(should)g(supp)r(ort)g(adding)g(information)f(ab)r
+(out)i(the)g(UTCB)1129 4202 y(area)f(of)f(the)h(initial)f(ro)r(otserv)n
+(er)h(as)f(w)n(ell.)29 b(Un)n(til)19 b(then,)i(the)g(ro)r(otserv)n(er)e
+(has)h(no)g(clean)1129 4281 y(w)n(a)n(y)27 b(to)g(create)g(a)f(new)h
+(thread)g(\(a)g(hac)n(k)g(is)e(used)i(b)n(y)g(the)g(ro)r(otserv)n(er)f
+(to)h(calculate)1129 4360 y(the)e(UTCB)e(addresses)h(for)f(other)h
+(threads\).)863 4524 y Fg(\017)41 b Fw(The)28 b Ft(boot_info)c
+Fw(\014eld)k(is)f(initialized.)1129 4666 y Fm(The)i Fh(boot_info)i
+Fm(\014eld)f(is)e(curren)n(tly)h(set)g(to)g(the)h(GNU)f(GR)n(UB)g
+Fh(multiboot_info)1129 4745 y Fm(structure.)42 b(This)27
+b(only)h(w)n(orks)e(for)h(the)h(ia32)f(arc)n(hitecture)i(of)e(course.)
+42 b(W)-6 b(e)28 b(migh)n(t)1129 4824 y(w)n(an)n(t)23
+b(to)f(ha)n(v)n(e)h(a)g(more)e(arc)n(hitecture)j(indep)r(enden)n(t)g(w)
+n(a)n(y)e(to)h(pass)f(the)h(information)1129 4903 y(ab)r(out)f(further)
+e(mo)r(dules)h(to)h(the)f(ro)r(otserv)n(er.)31 b(W)-6
+b(e)21 b(also)g(migh)n(t)g(w)n(an)n(t)g(to)h(gather)f(the)1129
+4982 y(information)i(pro)n(vided)i(b)n(y)f(GNU)f(GR)n(UB)h(in)f(a)h
+(single)f(page)i(\(if)e(it)h(is)f(not\).)p eop end
+%%Page: 7 13
+TeXDict begin 7 12 bop 291 282 a Fq(2.3.)63 b(THE)28
+b(L4)f(KERNEL)1947 b Fw(7)291 515 y Fn(2.3)135 b(The)44
+b(L4)h(k)l(ernel)291 738 y Fw(The)28 b(L4)f(k)n(ernel)g(initializes)h
+(itself)h(and)f(then)g(creates)f(the)i(address)e(spaces)g(and)h
+(threads)291 838 y(for)d(the)h(initial)g(serv)n(ers)d
+Fs(\033)1113 850 y Fr(0)1177 838 y Fw(and)i(the)h(ro)r(otserv)n(er.)34
+b(It)26 b(maps)f(all)g(ph)n(ysical)g(memory)g(idem-)291
+938 y(p)r(oten)n(tly)35 b(in)n(to)g Fs(\033)851 950 y
+Fr(0)889 938 y Fw(,)j(and)d(sets)g(the)h(pager)e(of)i(the)f(ro)r
+(otserv)n(er)e(thread)i(to)h Fs(\033)2754 950 y Fr(0)2791
+938 y Fw(.)61 b(Then)35 b(it)291 1037 y(starts)26 b(the)i(initial)g
+(serv)n(ers.)291 1359 y Fn(2.4)135 b(The)44 b(initial)j(serv)l(er)f
+Ff(\033)1723 1377 y Fw(0)291 1583 y Fs(\033)338 1595
+y Fr(0)403 1583 y Fw(acts)27 b(as)g(the)g(pager)g(for)f(the)i(ro)r
+(otserv)n(er,)d(answ)n(ering)h(page)g(fault)i(messages)e(b)n(y)h(map-)
+291 1682 y(ping)g(the)h(page)f(at)g(the)h(fault)g(address)f(idemp)r
+(oten)n(tly)h(in)g(the)f(ro)r(otserv)n(er.)498 1846 y
+Fj(\033)538 1855 y Fi(0)594 1846 y Fm(can)22 b(also)f(b)r(e)g(used)h
+(directly)f(b)n(y)h(sending)f(messages)h(to)g(it,)f(according)h(to)g
+(the)g Fj(\033)2741 1855 y Fi(0)2796 1846 y Fm(RPC)498
+1925 y(proto)r(col.)31 b(This)18 b(is)h(used)h(b)n(y)g(the)g(k)n(ernel)
+f(to)h(allo)r(cate)h(reserv)n(ed)f(memory)-6 b(,)19 b(but)h(can)h(also)
+e(b)r(e)498 2004 y(used)g(b)n(y)g(the)h(user)e(to)i(explicitely)f(allo)
+r(cate)g(more)g(memory)g(than)g(single)g(pages)g(indirectly)498
+2082 y(via)24 b(page)g(faults.)291 2267 y Fw(The)j(thread)g(ID)h(of)g
+Fs(\033)987 2279 y Fr(0)1052 2267 y Fw(is)g(\()p Ft(UserBase)p
+Fw(,)d(1\).)498 2431 y Fm(W)-6 b(e)25 b(will)d(write)h(all)g(thread)i
+(IDs)e(in)h(the)g(form)f(\()p Fh(thread)37 b(nr)p Fm(,)24
+b Fh(version)p Fm(\).)291 2615 y Fw(An)n(y)e(fpage)g(will)h(only)g(b)r
+(e)g(pro)n(vided)e(to)i(one)f(thread.)35 b Fs(\033)2036
+2627 y Fr(0)2096 2615 y Fw(will)23 b(return)g(an)f(error)f(if)i
+(another)291 2715 y(thread)j(attempts)h(to)f(map)h(or)e(manipulate)i
+(an)f(fpage)g(that)h(has)f(already)f(b)r(een)i(giv)n(en)f(to)291
+2814 y(some)h(other)g(thread,)g(ev)n(en)g(if)h(b)r(oth)g(threads)f
+(reside)g(in)h(the)g(same)f(address)f(space.)291 3137
+y Fn(2.5)135 b(The)44 b(initial)j(serv)l(er)f Ff(\033)1723
+3154 y Fw(1)291 3360 y Fs(\033)338 3372 y Fr(1)406 3360
+y Fw(is)31 b(in)n(tended)g(to)g(pro)n(vide)f(a)h(paging)e(service)h
+(for)h(UTCB)g(memory)-7 b(.)46 b(This)31 b(will)g(allo)n(w)291
+3459 y(orthogonal)25 b(p)r(ersistence)i(to)h(b)r(e)g(implemen)n(ted.)37
+b(It)28 b(is)f(not)h(y)n(et)f(supp)r(orted.)291 3599
+y(The)g(thread)g(ID)h(of)g Fs(\033)987 3611 y Fr(1)1052
+3599 y Fw(is)g(\()p Ft(UserBase)c Fw(+)k(1,)f(1\).)291
+3921 y Fn(2.6)135 b(The)44 b(ro)t(otserv)l(er)j(w)l(ortel)291
+4144 y Fw(The)24 b(ro)r(otserv)n(er)e(that)j(L4)g(started)f(is)g(the)i
+(only)e(task)g(in)h(the)g(system)g(whic)n(h)f(threads)g(can)291
+4243 y(p)r(erform)32 b(privileged)h(system)g(calls.)53
+b(So)33 b(the)h(ro)r(otserv)n(er)d(m)n(ust)i(pro)n(vide)f(wrapp)r(ers)g
+(for)291 4343 y(the)c(system)f(calls)g(to)g(other)g(unprivileged)g
+(system)h(tasks.)498 4507 y Fm(F)-6 b(or)28 b(this,)h(a)f(simple)f
+(authen)n(tication)k(sc)n(heme)e(is)e(required.)45 b(The)28
+b(ro)r(otserv)n(er)g(can)h(k)n(eep)498 4586 y(a)j(small,)h(statically)g
+(allo)r(cated)h(table)f(of)e(threads)i(whic)n(h)g(are)f(gran)n(ted)h
+(access)g(to)g(the)498 4665 y(system)c(call)f(wrapp)r(ers.)45
+b(The)28 b(caller)g(could)h(pro)n(vide)g(the)g(index)f(in)g(the)i
+(table)f(for)e(fast)498 4743 y(O\(1\))d(lo)r(okup)f(instead)h(linear)e
+(searc)n(h.)31 b(Threads)23 b(with)g(access)g(could)g(b)r(e)g(allo)n(w)
+n(ed)g(to)h(add)498 4822 y(other)g(threads)g(or)f(c)n(hange)i(existing)
+e(table)h(en)n(tries.)31 b(The)24 b(same)f(sc)n(heme)h(can)g(b)r(e)g
+(used)f(in)498 4901 y(the)i(device)f(driv)n(er)f(framew)n(ork.)498
+4998 y(The)h(ro)r(otserv)n(er)g(should)g(ha)n(v)n(e)h(one)f(thread)h(p)
+r(er)e(CPU,)g(and)h(run)g(at)g(a)g(high)g(priorit)n(y)-6
+b(.)p eop end
+%%Page: 8 14
+TeXDict begin 8 13 bop 739 282 a Fw(8)1841 b Fq(CHAPTER)28
+b(2.)64 b(BOOTING)739 515 y Fw(Our)24 b(ro)r(otserv)n(er)d(is)j(called)
+g(w)n(ortel,)h(and)f(also)f(b)r(o)r(otstraps)g(the)i(op)r(erating)e
+(system.)36 b(W)-7 b(or-)739 615 y(tel)28 b(th)n(us)f(acts)h(as)f(a)g
+(simple)g(manager)f(OS)i(and)f(as)g(a)g(b)r(o)r(otloader)g(program.)946
+766 y Fm(Ideally)-6 b(,)29 b(there)f(w)n(ould)g(b)r(e)g(a)g(real)f
+(manager)h(OS)f(on)h(top)g(of)g(L4)f(in)h(whic)n(h)f(y)n(ou)h(can)h
+(run)946 844 y(di\013eren)n(t)22 b(sand-b)r(o)n(xed)g(op)r(erating)g
+(systems.)30 b(W)-6 b(ortel)21 b(implemen)n(ts)g(only)g(some)g
+(rudimen-)946 923 y(tary)28 b(features)f(suc)n(h)h(a)f(system)g(w)n
+(ould)g(pro)n(vide:)38 b(Access)27 b(to)h(the)g(system)f(memory)g(and)
+946 1002 y(execution)f(of)d(privileged)h(L4)g(system)g(calls.)946
+1096 y(If)i(y)n(ou)g(had)g(suc)n(h)g(a)g(real)f(manager)h(OS,)g(then)g
+(this)g(manager)g(OS)f(w)n(ould)h(start)g(a)g(b)r(o)r(ot-)946
+1175 y(loader)17 b(to)f(b)r(o)r(ot)h(up)g(a)f(sand-b)r(o)n(xed)h(op)r
+(erating)h(system.)29 b(F)-6 b(or)15 b(simplicit)n(y)-6
+b(,)17 b(w)n(ortel)f(curren)n(tly)946 1254 y(implemen)n(ts)22
+b(suc)n(h)g(a)g(b)r(o)r(otloader)h(for)d(the)j(Hurd)e(system.)31
+b(Ev)n(en)n(tually)-6 b(,)22 b(the)h(co)r(de)f(should)946
+1332 y(b)r(e)j(split)e(to)h(allo)n(w)f(b)r(oth)i(comp)r(onen)n(ts)g(to)
+g(dev)n(elop)g(indep)r(enden)n(tly)-6 b(.)739 1504 y
+Fw(The)28 b(ro)r(otserv)n(er)c(has)k(the)f(follo)n(wing)g(initial)h
+(state:)863 1711 y Fg(\017)41 b Fw(Its)28 b(thread)f(ID)h(is)g(\()p
+Ft(UserBase)c Fw(+)k(2,)f(1\).)863 1873 y Fg(\017)41
+b Fw(The)28 b(priorit)n(y)e(is)i(set)f(to)h(the)g(255,)e(the)i(maxim)n
+(um)g(v)-5 b(alue.)1129 2029 y Fm(The)28 b(ro)r(otserv)n(er,)f(or)g(at)
+h(least)f(the)h(system)g(call)f(wrapp)r(er,)g(should)g(run)g(at)h(a)f
+(v)n(ery)1129 2108 y(high)d(priorit)n(y)-6 b(.)863 2285
+y Fg(\017)41 b Fw(The)31 b(instruction)e(p)r(oin)n(ter)h
+Ft(\045eip)e Fw(is)i(set)g(to)g(the)h(en)n(try)e(p)r(oin)n(t,)i(all)f
+(other)f(registers)946 2385 y(are)e(unde\014ned)h(\(including)g(the)g
+(stac)n(k)f(p)r(oin)n(ter\).)863 2547 y Fg(\017)41 b
+Fw(The)28 b(pager)e(is)i(set)f(to)h Fs(\033)1705 2559
+y Fr(0)1743 2547 y Fw(.)863 2709 y Fg(\017)41 b Fw(The)28
+b(exception)f(handler)g(is)h(set)g(to)f Ft(nilthread)p
+Fw(.)863 2871 y Fg(\017)41 b Fw(The)28 b(sc)n(heduler)f(is)g(set)h(to)f
+(the)h(ro)r(otserv)n(er)d(thread)i(itself.)739 3079 y(So)g(the)h
+(\014rst)g(thing)f(the)h(ro)r(otserv)n(er)d(has)i(to)h(do)f(is)h(to)f
+(set)h(up)g(a)f(simple)g(stac)n(k.)739 3212 y(Then)38
+b(the)g(ro)r(otserv)n(er)e(should)h(ev)-5 b(aluate)38
+b(the)g Ft(boot_info)c Fw(\014eld)k(in)h(the)f(KIP)f(to)h(\014nd)739
+3312 y(the)29 b(information)g(ab)r(out)g(the)g(other)f(mo)r(dules.)42
+b(It)29 b(should)g(parse)f(the)h(information)f(and)739
+3412 y(create)h(the)h(desired)f(initial)h(tasks)e(of)i(the)g(op)r
+(erating)f(system.)42 b(The)30 b(Hurd)g(uses)f(a)g(b)r(o)r(ot)739
+3511 y(script)24 b(syn)n(tax)g(to)g(allo)n(w)f(to)i(pass)e(information)
+h(ab)r(out)h(other)e(initial)i(tasks)f(and)g(the)h(ro)r(ot)739
+3611 y(tasks)i(to)g(eac)n(h)g(initial)h(task)f(in)h(a)f(generalized)f
+(manner.)946 3762 y Fm(The)g(exact)g(n)n(um)n(b)r(er)f(and)g(t)n(yp)r
+(e)h(of)e(initial)g(tasks)h(necessary)h(to)f(b)r(o)r(ot)h(the)g(Hurd)e
+(are)h(not)946 3840 y(y)n(et)34 b(kno)n(wn.)58 b(Chances)34
+b(are)e(that)i(this)e(list)g(includes)h(the)g Fh(task)h
+Fm(serv)n(er,)g(the)f(ph)n(ysical)946 3919 y(memory)22
+b(serv)n(er,)f(the)i(device)g(serv)n(ers,)e(and)h(the)h(b)r(o)r(ot)f
+(\014lesystem.)31 b(The)22 b(b)r(o)r(ot)h(\014lesystem)946
+3998 y(migh)n(t)d(b)r(e)g(a)g(small)e(simple)h(\014lesystem,)i(whic)n
+(h)e(also)h(includes)f(the)i(device)f(driv)n(ers)f(needed)946
+4077 y(to)25 b(access)f(the)h(real)e(ro)r(ot)h(\014lesystem.)739
+4384 y Fn(2.7)135 b(The)45 b(ph)l(ysical)g(memory)h(serv)l(er)f(ph)l
+(ysmem)739 4600 y Fw(The)31 b(ph)n(ysical)f(memory)h(serv)n(er)e(is)i
+(the)g(\014rst)g(comp)r(onen)n(t)g(of)g(the)h(actual)e(Hurd)h(system)
+739 4700 y(that)c(is)f(started)g(\(w)n(ortel)g(serv)n(es)e(as)i(a)g
+(manager)f(OS)h(in)h(the)g(bac)n(kground,)d(and)j(its)f(pres-)739
+4799 y(ence)19 b(is)g(of)h(no)f(relev)-5 b(ance)18 b(to)h(Hurd)h
+(programs)d(other)i(than)g(the)h(fundamen)n(tal)f(core)f(serv)n(ers)739
+4899 y(describ)r(ed)23 b(in)i(this)f(c)n(hapter\).)35
+b(It)24 b(pro)n(vides)e(memory)h(managemen)n(t)g(routines)g(that)h
+(allo)n(w)739 4998 y(tasks)j(in)h(the)g(Hurd)f(system)h(to)f(b)r(e)h
+(self-paged.)p eop end
+%%Page: 9 15
+TeXDict begin 9 14 bop 291 282 a Fq(2.8.)63 b(THE)28
+b(T)-7 b(ASK)27 b(SER)-9 b(VER)1834 b Fw(9)291 515 y(The)28
+b(ro)r(otserv)n(er)d(mo)n(v)n(es)i(the)h(ph)n(ysical)f(memory)g(serv)n
+(er)f(executable)i(image)f(to)h(its)g(ELF)291 615 y(load)35
+b(address)g(\(and)i(initializes)f(the)h(BSS)f(section)g(to)h(zero\),)h
+(creates)d(a)h(new)g(address)291 715 y(space)25 b(and)h(sev)n(eral)e
+(threads)h(in)i(this)f(address)f(space,)g(starts)h(the)g(\014rst)g
+(thread)g(and)f(then)291 814 y(maps)h(all)g(the)g(fpages)g(co)n(v)n
+(ering)e(the)j(executable)f(image)f(1:1)h(in)n(to)g(the)g(address)f
+(space)h(at)291 914 y(the)i(\014rst)g(pagefault)g(\(the)h(fpage)f(on)g
+(whic)n(h)g(the)g(thread)g(faulted)h(is)f(mapp)r(ed)h(last)f(-)g(this)
+291 1013 y(mak)n(es)e(the)i(thread)f(fault)h(rep)r(eatedly)f(un)n(til)h
+(the)g(whole)g(image)e(is)i(mapp)r(ed\).)498 1152 y Fm(W)-6
+b(ortel)27 b(should)f(follo)n(w)f(the)i Fh(exec\(\))g
+Fm(proto)r(col)g(to)g(startup)f(the)h(new)g(task)f(as)g(closely)g(as)
+498 1231 y(p)r(ossible.)50 b(Ho)n(w)n(ev)n(er,)31 b(there)g(is)e
+(little)h(that)h(w)n(ortel)f(can)h(pro)n(vide)f(to)g(ph)n(ysmem)h(in)e
+(this)498 1310 y(terms.)291 1470 y Fw(So,)38 b(the)f(ph)n(ysical)f
+(memory)g(serv)n(er)f(runs)h(on)g(mapp)r(ed)h(memory)f(in)h(its)g(o)n
+(wn)f(address)291 1570 y(space,)25 b(but)g(the)h(virtual)f(addresses)e
+(of)i(its)h(executable)e(image)h(coincede)f(with)i(the)g(ph)n(ys-)291
+1669 y(ical)h(addresses.)291 1799 y(Then,)21 b(in)f(a)e(priv)-5
+b(ate)20 b(proto)r(col)e(b)r(et)n(w)n(een)h(w)n(ortel)g(and)g(ph)n
+(ysmem,)i(the)e(follo)n(wing)g(happ)r(ens:)392 1983 y(1.)41
+b(Ph)n(ysmem)19 b(requests)g(all)h(system)f(memory)h(from)f(w)n(ortel.)
+33 b(W)-7 b(ortel)20 b(maps)g(the)g(mem-)498 2082 y(ory)27
+b(from)g Fs(\033)887 2094 y Fr(0)952 2082 y Fw(and)h(maps)f(it)h(to)f
+(ph)n(ysmem.)681 2226 y Fm(The)h(memory)g(is)f(mapp)r(ed,)j(not)f(gran)
+n(ted,)h(to)e(allo)n(w)g(w)n(ortel)g(\(of)g(whic)n(h)g(w)n(e)g(think)
+681 2305 y(as)k(a)g(manager)h(OS)f(here\))h(to)g(unmap)g(and)g(reco)n
+(v)n(er)g(the)g(memory)f(in)g(case)h(of)f(a)681 2384
+y(\(p)r(ossibly)24 b(forced\))g(system)g(sh)n(utdo)n(wn.)392
+2549 y Fw(2.)41 b(F)-7 b(or)28 b(eac)n(h)f(mo)r(dule)i(that)f(has)g
+(not)g(b)r(een)h(used)f(y)n(et,)g(w)n(ortel)g(requests)f(a)h(capabilit)
+n(y)498 2648 y(in)g(ph)n(ysmem)e(that)i(can)f(b)r(e)g(used)g(to)g(map)g
+(in)h(pages)e(from)g(the)i(range)e(of)h(memory)498 2748
+y(that)i(the)g(mo)r(dule)f(o)r(ccupies.)39 b(These)29
+b(capabilities)e(should)i(implemen)n(t)g(the)f(same)498
+2848 y(pager)e(in)n(terface)h(that)h(mappable)f(\014les)h(implemen)n
+(t.)681 2992 y Fm(The)g(idea)h(is)e(that)j(these)f(capabilities)g(can)f
+(b)r(e)h(used)g(in)f(the)h Fh(exec\(\))g Fm(proto)r(col)g(to)681
+3070 y(start)17 b(up)f(the)i(tasks)f(for)f(these)h(mo)r(dules.)29
+b(If)16 b(a)h(mo)r(dule)g(is)f(not)h(a)g(task,)h(the)f(capabilit)n(y)
+681 3149 y(can)j(b)r(e)f(used)h(to)g(access)g(the)g(mo)r(dule)g(data)g
+(b)n(y)g(mapping)g(it)f(in)n(to)h(the)g(address)f(space)681
+3228 y(lik)n(e)26 b(a)h(\014le.)39 b(Ph)n(ysmem)27 b(can)g(ev)n(en)g
+(sw)n(ap)g(out)g(pages)h(that)f(bac)n(k)h(these)f(ob)t(jects)h(on)681
+3307 y(memory)23 b(pressure.)681 3397 y(So,)d(the)g(ph)n(ysical)f
+(memory)g(serv)n(er)f(is)h(in)f(fact)i(a)f(simple)f(\014lesystem)i(for)
+e(these)i(initial)681 3475 y(tasks,)k(usable)g(only)f(for)g(mapping)h
+(op)r(erations.)681 3565 y(W)-6 b(ortel)18 b(can)h(then)g(start)g(up)f
+(the)h(other)g(tasks)f(in)g(the)h(mo)r(dule)f(list)g(using)g(the)h
+(normal)681 3644 y Fh(exec\(\))25 b Fm(proto)r(col.)291
+3827 y Fw(The)g(result)g(is)g(that)g(all)g(tasks)f(except)i(for)e(the)i
+(ro)r(otserv)n(er)c(can)j(b)r(e)g(started)g(and)g(manage)291
+3927 y(their)i(memory)g(through)g(ph)n(ysmem)g(lik)n(e)g(normal)g(Hurd)
+h(tasks.)291 4057 y(Later)e(on,)h(w)n(ortel)f(will)i(pro)n(vide)e(ph)n
+(ysmem)h(with)h(further)f(information)f(retriev)n(ed)g(from)291
+4157 y(the)i(task)f(and)g(dev)-5 b(a)27 b(serv)n(ers.)291
+4457 y Fn(2.8)135 b(The)44 b(task)i(serv)l(er)291 4669
+y Fw(The)30 b(task)g(serv)n(er)e(is)i(the)h(second)f(Hurd)g(serv)n(er)f
+(started)g(b)n(y)h(w)n(ortel.)44 b(Its)31 b(resp)r(onsibilit)n(y)291
+4769 y(is)25 b(to)h(k)n(eep)g(trac)n(k)e(of)i(allo)r(cation)f(of)h
+(task)f(and)h(thread)g(IDs)g(in)g(the)g(system,)g(and)g(manage)291
+4868 y(related)h(resources)e(\(recording)h(and)i(restricting)e(CPU)i
+(usage\).)291 4998 y(FIXME)f(More)g(has)g(to)h(b)r(e)g(said)f(here.)p
+eop end
+%%Page: 10 16
+TeXDict begin 10 15 bop 739 282 a Fw(10)1799 b Fq(CHAPTER)28
+b(2.)64 b(BOOTING)739 515 y Fn(2.9)135 b(The)45 b(device)g(access)g
+(serv)l(er)h(dev)-7 b(a)739 733 y Fw(The)36 b(device)g(access)g(serv)n
+(er)e(dev)-5 b(a)36 b(is)h(the)f(third)h(Hurd)f(serv)n(er)f(started)h
+(b)n(y)g(w)n(ortel.)62 b(It)739 833 y(implemen)n(ts)31
+b(access)f(to)h(a)f(lo)n(w-lev)n(el)g(device)h(driv)n(er)e(framew)n
+(ork)g(in)j(a)e(w)n(a)n(y)g(that)h(trans-)739 932 y(paren)n(tly)j
+(\014ts)h(in)n(to)g(the)h(o)n(v)n(erall)d(Hurd)i(system.)59
+b(This)35 b(means)f(that)i(access)e(to)g(device)739 1032
+y(driv)n(ers)29 b(is)h(managed)f(via)h(capabilities,)g(and)h(that)f(ph)
+n(ysmem)g(con)n(tainers)f(are)g(used)i(for)739 1131 y(data)c(exc)n
+(hange)f(b)r(et)n(w)n(een)i(a)f(user-lev)n(el)f(application)h(and)g(a)h
+(lo)n(w-lev)n(el)e(device)h(driv)n(er.)739 1267 y(It)34
+b(also)e(pro)n(vides)g(system)h(in)n(tegration)f(services)h(to)g(the)h
+(underlying)f(lo)n(w-lev)n(el)e(device)739 1366 y(driv)n(er)d(framew)n
+(ork.)40 b(In)29 b(particular,)g(it)g(in)n(termediates)g(access)f(to)h
+(privileged)f(resources)739 1466 y(and)f(pro)n(vides)f(device)i(driv)n
+(ers)e(and)h(related)g(data)g(from)h(the)g(systems)f(\014lesystem.)739
+1601 y(FIXME)h(More)e(has)h(to)h(b)r(e)g(said)f(here.)739
+1912 y Fn(2.10)135 b(The)45 b(device)g(access)h(serv)l(er)f(arc)l(hiv)l
+(e)739 2129 y Fw(The)34 b(device)f(access)g(serv)n(er)f(needs)h(to)h
+(load)f(device)g(driv)n(ers)g(b)r(efore)g(a)g(ro)r(ot)g(\014lesystem)
+739 2229 y(service)c(is)g(a)n(v)-5 b(ailable.)43 b(In)30
+b(particular,)f(it)h(needs)g(to)f(b)r(e)h(able)g(to)g(pro)n(vide)e
+(device)i(driv)n(ers)739 2329 y(for)d(the)h(ro)r(ot)f(\014lesystem)g
+(to)h(the)g(device)f(driv)n(er)f(framew)n(ork.)739 2464
+y(The)e(device)h(access)e(serv)n(er)g(arc)n(hiv)n(e)f(is)j(an)f(arc)n
+(hiv)n(e)f(of)h(device)h(driv)n(ers)e(that)h(is)h(loaded)f(b)n(y)739
+2564 y(the)k(b)r(o)r(otloader)e(and)i(con)n(tains)e(driv)n(ers)g
+(necessary)g(to)i(run)f(the)h(ro)r(ot)f(\014lesystem.)739
+2874 y Fn(2.11)135 b(The)45 b(ro)t(ot)g(\014lesystem)739
+3091 y Fw(The)28 b(ro)r(ot)g(\014lesystem)g(is)g(the)h(fourth)f(and)h
+(last)f(Hurd)g(serv)n(er)f(started)h(b)n(y)g(w)n(ortel.)38
+b(After)739 3191 y(the)29 b(ro)r(ot)f(\014lesystem)h(starts)f(up)h(and)
+g(has)f(exc)n(hanged)f(the)j(necessary)d(b)r(o)r(otstrap)h(infor-)739
+3291 y(mation)d(with)h(dev)-5 b(a,)25 b(it)h(starts)e(up)i(the)f(rest)g
+(of)g(the)h(op)r(erating)e(system)h(services)f(from)h(its)739
+3390 y(\014lesystem.)739 3526 y(The)d(ro)r(ot)g(\014lesystem)g(is)g
+(the)g(\014rst)g(program)e(to)i(actually)g(run)g(in)g(a)g(prop)r(er)f
+(en)n(vironmen)n(t,)739 3625 y(giv)n(en)27 b(that)h(it)g(can)f(access)f
+(device)i(driv)n(ers,)e(task)h(and)g(ph)n(ysmem)h(services.)946
+3781 y Fm(F)-6 b(rom)23 b(the)h(time)f(the)h(ro)r(ot)g(\014lesystem)f
+(starts)g(up,)g(the)h(b)r(o)r(otstrap)h(con)n(tin)n(ues)f(roughly)f(as)
+946 3860 y(it)h(is)f(implemen)n(ted)i(in)e(the)h(Hurd)g(running)f(on)h
+(GNU)g(Mac)n(h.)p eop end
+%%Page: 11 17
+TeXDict begin 11 16 bop 291 1172 a Fp(Chapter)64 b(3)291
+1620 y Fv(In)-6 b(ter-pro)6 b(cess)291 1870 y(comm)-6
+b(unication)77 b(\(IPC\))291 2353 y Fw(The)38 b(Hurd)g(requires)e(a)i
+(capabilit)n(y)f(system.)68 b(Capabilities)37 b(are)g(used)h(to)g(pro)n
+(v)n(e)e(y)n(our)291 2453 y(iden)n(tit)n(y)d(to)h(other)f(serv)n(ers)e
+(\(authen)n(tication\),)k(and)f(access)e(serv)n(er-side)f(implemen)n
+(ted)291 2552 y(ob)5 b(jects)18 b(lik)n(e)h(devices,)i(\014les,)g
+(directories,)f(terminals,)g(and)f(other)g(things.)34
+b(The)20 b(serv)n(er)d(can)291 2652 y(use)i(a)h(capabilit)n(y)e(for)i
+(whatev)n(er)e(it)i(w)n(an)n(ts.)34 b(Capabilities)19
+b(pro)n(vide)g(in)n(terfaces.)33 b(In)n(terfaces)291
+2751 y(can)e(b)r(e)h(in)n(v)n(ok)n(ed)e(b)n(y)h(sending)g(messages)f
+(to)i(the)g(capabilit)n(y)-7 b(.)48 b(In)32 b(L4,)g(this)g(means)f
+(that)291 2851 y(a)i(message)f(is)i(sen)n(t)g(to)g(a)f(thread)g(in)h
+(the)h(serv)n(er)d(pro)n(viding)g(the)i(capabilit)n(y)-7
+b(,)35 b(with)g(the)291 2951 y(iden)n(ti\014er)27 b(for)g(the)h
+(capabilit)n(y)f(in)h(the)g(message.)291 3084 y(Capabilities)i(are)h
+(protected)f(ob)5 b(jects.)48 b(Access)31 b(to)g(a)g(capabilit)n(y)f
+(needs)h(to)g(b)r(e)h(gran)n(ted)291 3184 y(b)n(y)25
+b(the)g(serv)n(er.)35 b(Once)25 b(y)n(ou)f(ha)n(v)n(e)g(a)h(capabilit)n
+(y)-7 b(,)25 b(y)n(ou)g(can)g(cop)n(y)f(it)i(to)f(other)g(tasks)f(\(if)
+j(the)291 3283 y(serv)n(er)d(p)r(ermits)j(it,)h(whic)n(h)e(is)h
+(usually)f(the)h(case\).)36 b(In)27 b(the)g(Hurd,)g(access)e(to)h
+(capabilities)291 3383 y(is)h(alw)n(a)n(ys)f(gran)n(ted)g(to)i(a)f
+(whole)g(task,)g(not)h(to)f(individual)h(threads.)498
+3532 y Fm(There)k(is)e(no)i(reason)f(for)f(the)i(serv)n(er)f(not)h(to)g
+(p)r(ermit)f(it,)i(b)r(ecause)f(the)g(holder)f(of)g(the)498
+3611 y(capabilit)n(y)20 b(could)f(also)g(just)g(act)h(as)f(a)g(pro)n
+(xy)g(for)f(the)i(in)n(tended)g(receiv)n(er)f(instead)h(cop)n(ying)498
+3690 y(the)29 b(capabilit)n(y)g(to)g(it.)46 b(The)28
+b(op)r(eration)i(migh)n(t)e(fail)g(an)n(yw)n(a)n(y)-6
+b(,)30 b(for)e(example)h(b)r(ecause)g(of)498 3769 y(resource)34
+b(shortage,)i(in)d(particular)g(if)f(the)i(serv)n(er)f(puts)h(a)f
+(quota)h(on)g(the)g(n)n(um)n(b)r(er)f(of)498 3848 y(capabilities)24
+b(a)g(user)f(can)i(hold.)291 4018 y Fw(Capabilities)20
+b(pro)n(vide)g(t)n(w)n(o)g(essen)n(tial)h(services)e(to)i(the)h(Hurd.)
+35 b(They)21 b(are)f(used)h(to)g(restrict)291 4117 y(access)j(to)h(a)g
+(serv)n(er)e(function,)k(and)e(they)h(are)e(the)i(standard)e(in)n
+(terface)h(the)g(comp)r(onen)n(ts)291 4217 y(in)31 b(the)h(Hurd)f(use)h
+(to)f(comm)n(unicate)g(with)h(eac)n(h)e(others.)47 b(Th)n(us,)33
+b(it)e(is)h(imp)r(ortan)n(t)f(that)291 4317 y(their)c(implemen)n
+(tation)h(is)f(fast)h(and)f(secure.)498 4466 y Fm(There)h(are)g(sev)n
+(eral)h(w)n(a)n(ys)f(to)h(implemen)n(t)f(suc)n(h)g(a)h(capabilit)n(y)f
+(system.)45 b(A)28 b(more)g(tradi-)498 4545 y(tional)c(design)g(w)n
+(ould)f(b)r(e)h(a)f(global,)h(trusted)g(capabilit)n(y)g(serv)n(er)f
+(that)i(pro)n(vides)e(capabil-)498 4624 y(ities)g(to)i(all)e(its)g
+(users.)31 b(The)24 b(L4)g(redirector)f(could)h(b)r(e)g(used)g(to)h
+(reroute)f(all)f(clien)n(t)h(tra\016c)498 4703 y(automatically)h
+(through)g(this)e(serv)n(er.)31 b(This)23 b(approac)n(h)i(has)f(sev)n
+(eral)g(disadv)l(an)n(tages:)604 4841 y Fe(\017)42 b
+Fm(It)29 b(adds)g(a)g(lot)g(of)f(o)n(v)n(erhead)i(to)f(ev)n(ery)g
+(single)g(RPC,)f(b)r(ecause)i(all)e(tra\016c)h(has)g(to)681
+4920 y(b)r(e)34 b(routed)h(through)g(the)g(capabilit)n(y)g(serv)n(er,)h
+(whic)n(h)f(m)n(ust)f(then)h(p)r(erform)e(the)681 4998
+y(authen)n(tication)26 b(on)e(the)h(serv)n(er's)e(b)r(ehalf.)1681
+5208 y Fw(11)p eop end
+%%Page: 12 18
+TeXDict begin 12 17 bop 739 282 a Fw(12)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))1052 515 y Fe(\017)42 b Fm(It)26 b(w)n(ould)g(b)r(e)g
+(di\016cult)f(to)h(cop)n(y)h(a)e(capabilit)n(y)h(to)g(another)h(task.)
+37 b(Either)25 b(the)i(cap)1129 594 y(serv)n(er)d(w)n(ould)g(ha)n(v)n
+(e)h(to)g(pro)n(vide)g(in)n(terfaces)f(for)g(clien)n(ts)g(to)h(do)f
+(it,)g(or)g(it)g(w)n(ould)g(b)r(e)1129 673 y(ha)n(v)n(e)j(to)f(kno)n(w)
+g(the)h(message)f(format)f(for)g(ev)n(ery)h(in)n(terface)g(and)g(do)g
+(it)g(automati-)1129 752 y(cally)-6 b(.)1052 875 y Fe(\017)42
+b Fm(It)20 b(w)n(ould)g(b)r(e)g(a)g(single)f(p)r(oin)n(t)i(of)e
+(failure.)29 b(If)19 b(it)h(had)g(a)g(bug)g(and)g(crashed,)h(the)f
+(whole)1129 954 y(system)k(w)n(ould)g(b)r(e)g(a\013ected.)1052
+1077 y Fe(\017)42 b Fm(Users)23 b(could)h(not)h(a)n(v)n(oid)f(it,)f(it)
+h(w)n(ould)f(b)r(e)i(enforced)f(system)g(co)r(de.)1052
+1200 y Fe(\017)42 b Fm(It)24 b(is)f(in\015exible.)32
+b(It)24 b(w)n(ould)g(b)r(e)g(hard)g(to)g(replace)g(or)g(extend)h(at)f
+(run-time.)946 1367 y(Another)j(approac)n(h)h(is)d(tak)n(en)i(b)n(y)g
+(CORBA)e(with)h(IORs.)39 b(IORs)26 b(con)n(tain)h(long)f(random)946
+1446 y(n)n(um)n(b)r(ers)h(whic)n(h)g(allo)n(w)f(the)h(serv)n(er)f(to)h
+(iden)n(tify)g(a)g(user)f(of)g(an)h(ob)t(ject.)40 b(This)26
+b(approac)n(h)946 1525 y(is)d(not)i(feasible)e(for)g(the)i(follo)n
+(wing)e(reasons:)1052 1693 y Fe(\017)42 b Fm(Ev)n(en)27
+b(go)r(o)r(d)f(random)g(n)n(um)n(b)r(ers)g(can)h(b)r(e)f(guessed.)39
+b(Long)26 b(enough)i(random)e(n)n(um-)1129 1771 y(b)r(ers)e(can)g
+(reduce)h(the)f(lik)n(eliho)r(o)r(d)g(to)g(arbitrary)f(small)g(n)n(um)n
+(b)r(ers,)g(though)j(\(b)r(elo)n(w)1129 1850 y(the)f(probabilit)n(y)e
+(of)h(a)g(hardw)n(are)f(failure\).)1052 1973 y Fe(\017)42
+b Fm(Go)r(o)r(d)23 b(random)f(n)n(um)n(b)r(ers)g(are)g(in)g(short)g
+(supply)-6 b(,)22 b(and)h(is)e(slo)n(w)h(to)g(generate.)33
+b(Go)r(o)r(d)1129 2052 y(pseudo)28 b(random)f(is)f(faster,)h(but)g(it)g
+(is)f(still)f(di\016cult)i(to)g(generate.)42 b(The)27
+b(random)1129 2131 y(n)n(um)n(b)r(er)d(generator)h(w)n(ould)f(b)r
+(ecome)g(a)g(critical)g(part)f(of)h(the)g(op)r(erating)h(system.)1052
+2254 y Fe(\017)42 b Fm(The)19 b(random)f(n)n(um)n(b)r(er)h(had)f(to)h
+(b)r(e)g(transfered)f(in)g(ev)n(ery)h(single)f(message.)30
+b(Because)1129 2333 y(it)e(w)n(ould)f(ha)n(v)n(e)i(to)f(b)r(e)g(long,)g
+(it)f(w)n(ould)h(ha)n(v)n(e)h(a)e(signi\014can)n(t)i(negativ)n(e)g
+(impact)f(on)1129 2412 y(IPC)c(p)r(erformance.)739 2612
+y Fw(The)34 b(Hurd)g(implemen)n(ts)h(the)g(capabilit)n(y)e(system)h(lo)
+r(cally)f(in)i(eac)n(h)e(task.)56 b(A)35 b(common)739
+2711 y(default)e(implemen)n(tation)h(will)f(b)r(e)g(shared)f(b)n(y)h
+(all)g(programs.)51 b(Ho)n(w)n(ev)n(er,)32 b(a)h(malicious)739
+2811 y(un)n(trusted)23 b(program)f(can)h(do)g(nothing)h(to)f(disturb)h
+(the)g(comm)n(unication)f(of)g(other)g(tasks.)739 2911
+y(A)38 b(capabilit)n(y)f(is)h(iden)n(ti\014ed)g(in)g(the)g(clien)n(t)g
+(task)g(b)n(y)f(the)h(serv)n(er)e(thread)i(and)f(a)h(lo)r(cal)739
+3010 y(iden)n(ti\014er)30 b(\(whic)n(h)h(can)f(b)r(e)h(di\013eren)n(t)f
+(from)g(clien)n(t)h(to)f(clien)n(t\).)46 b(The)30 b(serv)n(er)f(thread)
+h(will)739 3110 y(receiv)n(e)40 b(messages)f(for)i(the)g(capabilities.)
+77 b(The)41 b(\014rst)g(argumen)n(t)f(in)h(the)h(message)d(is)739
+3210 y(the)25 b(capabilit)n(y)g(iden)n(ti\014er.)36 b(Although)25
+b(ev)n(ery)e(task)i(can)g(get)f(di\013eren)n(t)i(IDs)f(for)f(the)i
+(same)739 3309 y(capabilit)n(y)-7 b(,)23 b(a)f(w)n(ell-b)r(eha)n(ving)g
+(serv)n(er)e(will)j(giv)n(e)f(the)h(same)f(ID)h(to)g(a)f(clien)n(t)h
+(whic)n(h)g(already)739 3409 y(has)f(a)h(capabilit)n(y)f(and)h(gets)g
+(the)h(same)e(capabilit)n(y)g(from)h(another)f(clien)n(t.)36
+b(So)23 b(clien)n(ts)g(can)739 3508 y(compare)k(capabilit)n(y)g(IDs)h
+(from)f(the)i(serv)n(er)d(n)n(umerically)h(to)g(c)n(hec)n(k)g(if)i(t)n
+(w)n(o)e(capabilities)739 3608 y(are)f(the)h(same,)g(but)g(only)g(if)g
+(one)g(of)g(the)g(t)n(w)n(o)f(IDs)i(is)e(receiv)n(ed)g(while)h(the)h
+(clien)n(t)f(already)739 3708 y(had)g(the)h(other)f(one.)739
+3855 y(Because)d(access)g(to)h(a)g(capabilit)n(y)f(m)n(ust)i(b)r(e)f
+(restricted,)g(the)h(serv)n(er)d(needs)i(to)g(b)r(e)h(careful)739
+3955 y(in)31 b(only)f(allo)n(wing)f(registered)h(and)g(kno)n(wn)g
+(users)g(to)h(access)e(the)i(capabilit)n(y)-7 b(.)46
+b(F)-7 b(or)30 b(this,)739 4054 y(the)40 b(serv)n(er)d(m)n(ust)j(b)r(e)
+g(sure)f(that)g(it)h(can)f(determine)h(the)g(sender)f(of)g(a)g
+(message.)71 b(In)739 4154 y(L4,)32 b(this)h(is)f(easy)f(on)g(the)i
+(surface:)44 b(The)32 b(k)n(ernel)f(pro)n(vides)g(the)h(receiving)f
+(thread)h(with)739 4253 y(the)38 b(sender's)f(thread)g(ID,)h(whic)n(h)g
+(also)e(con)n(tains)h(the)h(task)f(ID)h(in)g(the)g(v)n(ersion)e
+(\014eld.)739 4353 y(Ho)n(w)n(ev)n(er,)24 b(the)i(serv)n(er)d(m)n(ust)j
+(also)f(kno)n(w)f(for)h(sure)g(if)h(this)g(task)f(is)g(the)h(same)f
+(task)g(that)h(it)739 4453 y(ga)n(v)n(e)h(access)h(to)h(the)h
+(capabilit)n(y)-7 b(.)40 b(Comparing)28 b(the)i(task)e(IDs)i(n)n
+(umerically)e(is)h(not)g(go)r(o)r(d)739 4552 y(enough,)c(the)g(serv)n
+(er)e(m)n(ust)i(also)e(someho)n(w)h(ha)n(v)n(e)g(kno)n(wledge)f(or)h
+(in\015uence)h(on)g(ho)n(w)f(task)739 4652 y(IDs)k(are)e(reused)h(when)
+h(tasks)f(die)h(and)f(are)g(created.)739 4799 y(The)e(same)f(is)g(true)
+h(for)f(the)h(clien)n(t,)h(of)e(course,)h(whic)n(h)f(trusts)h(the)g
+(serv)n(er)e(and)h(th)n(us)h(m)n(ust)739 4899 y(b)r(e)i(sure)f(that)h
+(it)g(is)f(not)h(tric)n(k)n(ed)e(in)n(to)h(trusting)h(on)f(unreliable)g
+(data)g(from)g(an)g(imp)r(oster,)739 4998 y(or)h(sends)g(sensitiv)n(e)g
+(data)g(to)h(it.)p eop end
+%%Page: 13 19
+TeXDict begin 13 18 bop 291 282 a Fq(3.1.)63 b(CAP)-7
+b(ABILITIES)1990 b Fw(13)498 515 y Fm(The)31 b Fh(task)h
+Fm(serv)n(er)e(w)n(an)n(ts)h(to)h(reuse)e(thread)i(n)n(um)n(b)r(ers)f
+(b)r(ecause)h(that)g(mak)n(es)f(b)r(est)g(use)498 594
+y(of)26 b(k)n(ernel)g(memory)-6 b(.)38 b(Reusing)26 b(task)g(IDs,)g
+(the)h(v)n(ersion)f(\014eld)g(of)g(a)g(thread)h(ID,)e(is)g(not)i(so)498
+673 y(imp)r(ortan)n(t,)22 b(but)g(there)h(are)e(only)h(14)g(bits)f(for)
+g(the)h(v)n(ersion)g(\014eld)f(\(and)i(the)f(lo)n(w)n(er)f(six)g(bits)
+498 752 y(m)n(ust)j(not)g(b)r(e)g(all)g(zero\).)31 b(So)24
+b(a)g(thread)h(ID)f(is)f(b)r(ound)h(to)g(b)r(e)g(reused)g(ev)n(en)n
+(tually)-6 b(.)498 849 y(Using)18 b(the)g(v)n(ersion)g(\014eld)h(in)e
+(a)h(thread)h(ID)f(as)g(a)g(generation)h(n)n(um)n(b)r(er)f(is)g(not)g
+(go)r(o)r(d)h(enough,)498 928 y(b)r(ecause)29 b(it)e(is)f(so)i(small.)
+40 b(Ev)n(en)28 b(on)g(64-bit)f(arc)n(hitectures,)i(where)f(it)f(is)f
+(32)i(bit)f(long,)h(it)498 1007 y(can)d(ev)n(en)n(tually)g(o)n(v)n
+(er\015o)n(w.)291 1192 y Fw(The)d(b)r(est)h(w)n(a)n(y)e(to)h(prev)n(en)
+n(t)g(that)g(a)g(task)g(can)g(b)r(e)h(tric)n(k)n(ed)f(in)n(to)g
+(talking)g(to)g(an)g(imp)r(oster)g(is)291 1292 y(to)k(ha)n(v)n(e)g(the)
+h Ft(task)e Fw(serv)n(er)g(notify)i(the)g(task)f(if)h(the)h(comm)n
+(unication)e(partner)f(dies.)37 b(The)291 1391 y Ft(task)29
+b Fw(serv)n(er)g(m)n(ust)i(guaran)n(tee)f(that)h(the)h(task)e(ID)i(is)f
+(not)g(reused)f(un)n(til)i(all)e(tasks)h(that)291 1491
+y(got)c(suc)n(h)h(a)g(noti\014cation)g(ac)n(kno)n(wledge)e(that)i(it)h
+(is)f(pro)r(cessed,)g(and)g(th)n(us)g(no)g(danger)f(of)291
+1590 y(confusion)g(exists)g(an)n(ymore.)291 1730 y(The)d
+Ft(task)f Fw(serv)n(er)g(pro)n(vides)h(references)f(to)i(task)f(IDs)h
+(in)g(form)f(of)h Fo(task)i(info)h(c)l(ap)l(abilities)p
+Fw(.)291 1830 y(If)h(a)f(task)g(has)g(a)g(task)g(info)h(capabilit)n(y)e
+(for)h(another)g(task,)g(it)h(prev)n(en)n(ts)f(that)h(this)f(other)291
+1929 y(task's)f(task)h(ID)g(is)g(reused)g(ev)n(en)g(if)g(that)h(task)e
+(dies,)i(and)f(it)g(also)f(mak)n(es)g(sure)h(that)g(task)291
+2029 y(death)f(noti\014cations)g(are)g(deliv)n(ered)f(in)i(that)g
+(case.)498 2193 y Fm(Because)c(only)f(the)h Fh(task)g
+Fm(serv)n(er)e(can)i(create)g(and)f(destro)n(y)h(tasks,)f(and)g(assign)
+g(task)h(IDs,)498 2272 y(there)g(is)f(no)g(need)i(to)e(hold)h(suc)n(h)g
+(task)g(info)e(capabilities)i(for)e(the)j Fh(task)f Fm(serv)n(er,)f
+(nor)g(do)r(es)498 2351 y(the)f Fh(task)g Fm(serv)n(er)f(need)h(to)g
+(hold)f(task)h(info)f(capabilities)g(for)g(its)g(clien)n(ts.)30
+b(This)21 b(a)n(v)n(oids)g(the)498 2430 y(ob)n(vious)g(b)r(o)r(otstrap)
+g(problem)f(in)f(pro)n(viding)h(capabilities)g(in)g(the)h
+Fh(task)g Fm(serv)n(er.)29 b(This)20 b(will)498 2509
+y(ev)n(en)25 b(w)n(ork)e(if)g(the)h Fh(task)h Fm(serv)n(er)e(is)g(not)h
+(the)h(real)e Fh(task)h Fm(serv)n(er,)f(but)i(a)e(pro)n(xy)h(task)g
+(serv)n(er)498 2587 y(\(see)h(section)f(4.2)g(on)g(page)h(32\).)291
+2772 y Fw(As)h(task)h(IDs)g(are)e(a)i(global)e(resource,)g(care)h(has)g
+(to)h(b)r(e)g(tak)n(en)f(that)h(this)g(approac)n(h)e(do)r(es)291
+2872 y(not)g(allo)n(w)f(for)g(a)h(DoS-attac)n(k)f(b)n(y)g(exhausting)h
+(the)g(task)f(ID)i(n)n(um)n(b)r(er)f(space,)g(see)f(section)291
+2972 y(4)j(on)g(page)g(29)f(for)i(more)e(details.)291
+3294 y Fn(3.1)135 b(Capabilities)291 3518 y Fw(This)27
+b(subsection)g(con)n(tains)g(implemen)n(tation)h(details)f(ab)r(out)h
+(capabilities.)291 3657 y(A)i(serv)n(er)e(will)i(usually)g(op)r(erate)f
+(on)g(ob)5 b(jects,)31 b(and)e(not)h(capabilities.)44
+b(In)30 b(the)g(case)f(of)h(a)291 3757 y(\014lesystem,)d(this)h(could)f
+(b)r(e)h(\014le)g(ob)5 b(jects,)27 b(for)g(example.)498
+3921 y Fm(In)k(the)g(Hurd,)g(\014lesystem)g(serv)n(ers)f(ha)n(v)n(e)i
+(to)f(k)n(eep)g(di\013eren)n(t)g(ob)t(jects)g(for)f(eac)n(h)i(time)e(a)
+498 4000 y(\014le)23 b(is)f(lo)r(ok)n(ed)h(up)g(\(or)g(\\op)r(ened"\),)
+i(b)r(ecause)f(some)f(state,)g(for)f(example)i(authen)n(tication,)498
+4079 y(op)r(en)29 b(\015ags)f(and)h(record)f(lo)r(c)n(ks,)h(are)f(asso)
+r(ciated)h(not)g(with)f(the)h(\014le)e(directly)-6 b(,)29
+b(but)g(with)498 4158 y(this)c(instance)i(of)e(op)r(ening)h(the)h
+(\014le.)36 b(Suc)n(h)26 b(a)g(state)g(structure)h(\(\\creden)n
+(tial"\))g(will)d(also)498 4237 y(con)n(tain)29 b(a)f(p)r(oin)n(ter)f
+(and)h(reference)g(to)g(the)h(actual)f(\014le)g(no)r(de.)43
+b(F)-6 b(or)27 b(simplicit)n(y)-6 b(,)28 b(w)n(e)g(will)498
+4315 y(assume)c(that)h(the)f(capabilit)n(y)h(is)e(asso)r(ciated)i(with)
+f(a)f(\014le)h(no)r(de)h(directly)-6 b(.)291 4500 y Fw(T)f(o)27
+b(pro)n(vide)f(access)g(to)h(the)h(ob)5 b(ject)27 b(to)g(another)f
+(task,)h(the)h(serv)n(er)d(creates)i(a)g(capabilit)n(y)-7
+b(,)291 4600 y(and)27 b(asso)r(ciates)f(it)i(with)g(the)g(ob)5
+b(ject)27 b(\(b)n(y)h(setting)g(a)f(ho)r(ok)g(v)-5 b(ariable)26
+b(in)i(the)g(capabilit)n(y\).)291 4700 y(F)-7 b(rom)35
+b(this)g(capabilit)n(y)-7 b(,)37 b(the)f(serv)n(er)e(can)h(either)g
+(create)g(send)g(references)f(to)i(itself,)i(or)291 4799
+y(to)e(other)g(tasks.)62 b(If)37 b(the)f(serv)n(er)f(creates)g(send)h
+(references)g(for)f(itself,)40 b(it)c(can)g(use)h(the)291
+4899 y(capabilit)n(y)e(just)i(as)e(it)i(can)f(use)g(capabilities)f
+(implemen)n(ted)i(b)n(y)f(other)f(serv)n(ers.)61 b(This)291
+4998 y(mak)n(es)26 b(access)g(to)h(lo)r(cally)f(and)h(remotely)f
+(implemen)n(ted)i(capabilities)f(iden)n(tical.)36 b(If)28
+b(y)n(ou)p eop end
+%%Page: 14 20
+TeXDict begin 14 19 bop 739 282 a Fw(14)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))739 515 y Fw(write)g(co)r(de)g(to)h(w)n(ork)e(on)h
+(capabilities,)g(it)h(can)f(b)r(e)h(used)f(for)g(remote)g(ob)5
+b(jects)28 b(as)g(w)n(ell)g(as)739 615 y(for)f(lo)r(cal)g(ob)5
+b(jects.)739 746 y(If)23 b(the)f(serv)n(er)f(creates)g(a)h(send)g
+(reference)g(for)f(another)h(task)g(\(a)g(clien)n(t\),)i(a)e(new)g
+(capabilit)n(y)739 845 y(ID)33 b(will)g(b)r(e)h(created)e(for)g(this)h
+(task.)52 b(This)33 b(ID)g(will)h(only)e(b)r(e)h(v)-5
+b(alid)33 b(for)g(this)g(task,)g(and)739 945 y(should)27
+b(b)r(e)h(returned)f(to)h(the)g(clien)n(t.)739 1076 y(The)39
+b(clien)n(t)g(itself)g(will)g(create)f(a)h(capabilit)n(y)f(ob)5
+b(ject)39 b(from)f(this)i(capabilit)n(y)e(ID.)h(The)739
+1176 y(capabilit)n(y)23 b(will)i(also)e(con)n(tain)g(information)h(ab)r
+(out)g(the)g(serv)n(er,)f(for)h(example)g(the)g(serv)n(er)739
+1275 y(thread)j(whic)n(h)h(should)f(b)r(e)h(used)f(for)h(sending)f
+(messages)f(to)h(the)h(capabilit)n(y)-7 b(.)739 1406
+y(If)39 b(the)g(clien)n(t)f(w)n(an)n(ts)g(to)g(send)g(a)g(message,)i
+(it)f(will)f(send)h(it)g(to)f(the)h(pro)n(vided)e(serv)n(er)739
+1506 y(thread,)25 b(and)g(use)g(the)h(capabilit)n(y)e(ID)h(it)h(got)f
+(from)f(the)i(serv)n(er)d(as)i(the)g(\014rst)g(argumen)n(t)f(in)739
+1605 y(the)d(RPC.)g(The)g(serv)n(er)e(receiv)n(es)h(the)h(message,)g
+(and)g(no)n(w)g(has)f(to)h(lo)r(ok)f(up)i(the)f(capabilit)n(y)739
+1705 y(ID)28 b(in)g(the)g(list)g(of)f(capabilties)g(for)g(this)h(task.)
+946 1846 y Fm(The)22 b(serv)n(er)f(kno)n(ws)h(the)g(task)g(ID)f(from)f
+(the)i(v)n(ersion)f(\014eld)h(of)f(the)h(sender's)f(thread)h(ID.)f(It)
+946 1925 y(can)26 b(lo)r(ok)f(up)h(the)f(list)g(of)f(capabilities)i
+(for)e(this)h(task)g(in)g(a)g(hash)h(table.)35 b(The)26
+b(capabilit)n(y)946 2004 y(ID)i(can)f(b)r(e)h(an)f(index)g(in)n(to)h
+(an)f(arra)n(y)-6 b(,)27 b(so)g(the)h(serv)n(er)e(only)i(needs)f(to)h
+(p)r(erform)e(a)h(range)946 2083 y(c)n(hec)n(k.)32 b(This)20
+b(allo)n(ws)h(to)g(v)n(erify)g(quic)n(kly)g(that)h(the)g(user)e(is)h
+(allo)n(w)n(ed)g(to)g(access)h(the)g(ob)t(ject.)946 2173
+y(This)f(is)g(not)h(enough)h(if)e(sev)n(eral)g(systems)h(run)f(in)g
+(parallel)g(on)h(the)g(same)g(host.)31 b(Then)22 b(the)946
+2252 y(v)n(ersion)i(ID)h(for)e(the)i(threads)f(in)g(the)h(other)g
+(systems)f(will)f(not)h(b)r(e)h(under)f(the)h(con)n(trol)g(of)946
+2331 y(the)d(Hurd's)e Fh(task)i Fm(serv)n(er,)e(and)i(can)f(th)n(us)g
+(not)h(b)r(e)f(trusted.)31 b(The)21 b(serv)n(er)f(can)i(still)e(use)h
+(the)946 2410 y(v)n(ersion)27 b(\014eld)f(to)h(\014nd)g(out)g(the)g
+(task)g(ID,)f(whic)n(h)g(will)f(b)r(e)i(correct)g Fd(if)g(the)h(thr)l
+(e)l(ad)i(is)e(p)l(art)946 2489 y(of)d(the)e(same)i(subsystem)p
+Fm(.)30 b(It)23 b(also)f(has)g(to)g(v)n(erify)f(that)j(the)e(thread)h
+(b)r(elongs)g(to)f(this)g(sub-)946 2568 y(system.)37
+b(Hop)r(efully)25 b(the)i(subsystem)f(will)e(b)r(e)i(enco)r(ded)h(in)e
+(the)h(thread)h(ID.)e(Otherwise,)946 2647 y(the)d Fh(task)g
+Fm(serv)n(er)f(has)g(to)g(b)r(e)h(consulted)g(\(and,)g(assuming)f(that)
+h(thread)g(n)n(um)n(b)r(ers)f(are)g(not)946 2725 y(shared)j(b)n(y)g
+(the)h(di\013eren)n(t)f(systems,)g(the)g(result)g(can)g(b)r(e)g(cac)n
+(hed\).)739 2887 y Fw(The)32 b(serv)n(er)e(reads)g(out)i(the)g
+(capabilit)n(y)f(asso)r(ciated)f(with)i(the)h(capabilit)n(y)e(ID,)h
+(and)f(in-)739 2987 y(v)n(ok)n(es)26 b(the)i(serv)n(er)d(stub)j
+(according)e(to)i(the)g(message)e(ID)i(\014eld)g(in)g(the)g(message.)
+739 3118 y(After)33 b(the)g(message)e(is)i(pro)r(cessed,)g(the)g(serv)n
+(er)e(sends)h(it)i(reply)e(to)g(the)i(sender)e(thread)739
+3218 y(with)c(a)f(zero)g(timeout.)946 3359 y Fm(Serv)n(ers)e(m)n(ust)g
+(nev)n(er)g(blo)r(c)n(k)g(on)g(sending)g(messages)g(to)g(clien)n(ts.)34
+b(Ev)n(en)25 b(a)g(small)e(timeout)946 3438 y(can)c(b)r(e)g(used)g(for)
+e(DoS-attac)n(ks.)31 b(The)19 b(clien)n(t)f(can)h(alw)n(a)n(ys)g(mak)n
+(e)f(sure)g(that)i(it)e(receiv)n(es)h(the)946 3517 y(reply)25
+b(b)n(y)g(using)g(a)h(com)n(bined)f(send)h(and)f(receiv)n(e)h(op)r
+(eration)g(together)h(with)e(an)g(in\014nite)946 3596
+y(timeout.)739 3758 y Fw(The)g(ab)r(o)n(v)n(e)e(sc)n(heme)i(assumes)f
+(that)h(the)g(serv)n(er)e(and)i(the)g(clien)n(t)g(already)e(ha)n(v)n(e)
+h(task)g(info)739 3857 y(caps)31 b(for)g(the)h(resp)r(ectiv)n(e)f
+(other)g(task.)49 b(This)31 b(is)h(the)g(normal)e(case,)i(b)r(ecause)g
+(acquiring)739 3957 y(these)k(task)f(info)g(caps)g(is)h(part)f(of)h
+(the)g(proto)r(col)e(that)i(is)g(used)f(when)h(a)f(capabilit)n(y)g(is)
+739 4057 y(copied)27 b(from)g(one)h(task)f(to)g(another.)739
+4316 y Fl(3.1.1)112 b(Bo)s(otstrapping)38 b(a)g(clien)m(t-serv)m(er)g
+(connection)739 4500 y Fw(If)c(the)f(clien)n(t)h(and)f(the)g(serv)n(er)
+f(do)h(not)g(kno)n(w)f(ab)r(out)i(eac)n(h)e(other)h(y)n(et,)h(then)g
+(they)g(can)739 4600 y(b)r(o)r(otstrap)e(a)h(connection)f(without)h
+(supp)r(ort)g(from)g(an)n(y)f(other)g(task)h(except)g(the)g
+Ft(task)739 4700 y Fw(serv)n(er.)72 b(The)40 b(purp)r(ose)f(of)h(the)g
+(initial)g(handshak)n(e)f(is)h(to)f(giv)n(e)g(b)r(oth)i(participan)n
+(ts)e(a)739 4799 y(c)n(hance)24 b(to)h(acquire)f(a)g(task)g(info)h(cap)
+g(for)f(the)h(other)g(participan)n(ts)f(task)g(ID,)h(so)g(they)g(can)
+739 4899 y(b)r(e)g(sure)f(that)h(from)f(there)h(on)f(they)h(will)g(alw)
+n(a)n(ys)e(talk)h(to)h(the)g(same)f(task)g(as)g(they)h(talk)n(ed)739
+4998 y(to)i(b)r(efore.)p eop end
+%%Page: 15 21
+TeXDict begin 15 20 bop 291 282 a Fq(3.1.)63 b(CAP)-7
+b(ABILITIES)1990 b Fw(15)291 515 y Fu(Preconditions)82
+b Fw(The)29 b(clien)n(t)h(kno)n(ws)e(the)h(thread)g(ID)h(of)f(the)h
+(serv)n(er)d(thread)i(that)h(re-)291 615 y(ceiv)n(es)21
+b(and)i(pro)r(cesses)e(the)i(b)r(o)r(otstrap)f(messages.)33
+b(Some)23 b(other)f(task)g(migh)n(t)h(hold)f(a)g(task)291
+715 y(info)27 b(capabilit)n(y)g(to)h(the)g(serv)n(er)d(the)j(clien)n(t)
+g(w)n(an)n(ts)f(to)g(connect)h(to.)498 876 y Fm(If)h(no)g(suc)n(h)h
+(other)f(tasks)h(exists,)g(the)g(proto)r(col)g(will)d(still)h(w)n(ork.)
+47 b(Ho)n(w)n(ev)n(er,)31 b(the)f(clien)n(t)498 955 y(migh)n(t)24
+b(not)h(get)f(a)g(connection)i(to)f(the)f(serv)n(er)g(that)h(run)e(at)i
+(the)f(time)g(the)h(clien)n(t)f(started)498 1034 y(the)29
+b(proto)r(col,)f(but)h(rather)e(to)h(the)h(serv)n(er)e(that)i(run)e(at)
+h(the)h(time)e(the)i(clien)n(t)f(acquired)498 1112 y(the)d(task)f(info)
+f(cap)i(for)d(the)j(serv)n(er's)e(task)h(ID)g(\(after)g(step)g(1)g(b)r
+(elo)n(w\).)498 1209 y(This)j(is)g(similar)f(to)i(ho)n(w)g(sending)g
+(signals)g(w)n(orks)f(in)g(Unix:)39 b(T)-6 b(ec)n(hnically)g(,)29
+b(at)g(the)f(time)498 1288 y(y)n(ou)h(write)f Fh(kill)36
+b(203)p Fm(,)30 b(and)f(press)e(en)n(ter,)j(y)n(ou)f(do)g(not)g(kno)n
+(w)f(if)g(the)h(pro)r(cess)f(with)g(the)498 1367 y(PID)f(203)g(y)n(ou)g
+(though)n(t)i(of)d(will)f(receiv)n(e)i(the)g(signal,)g(or)f(some)h
+(other)g(pro)r(cess)g(that)g(got)498 1446 y(the)j(PID)g(in)f(the)i
+(time)e(b)r(et)n(w)n(een)i(y)n(ou)g(getting)f(the)h(information)e(ab)r
+(out)i(the)f(PID)g(and)498 1525 y(writing)23 b(the)i
+Fh(kill)p Fm(-command.)291 1707 y Fw(FIXME:)31 b(Here)g(should)g(b)r(e)
+h(the)g(pseudo)f(co)r(de)g(for)g(the)g(proto)r(col.)47
+b(F)-7 b(or)31 b(no)n(w,)h(y)n(ou)e(ha)n(v)n(e)291 1806
+y(to)d(tak)n(e)g(it)h(out)g(of)f(the)h(long)f(v)n(ersion.)392
+2031 y(1.)41 b(The)32 b(clien)n(t)g(acquires)e(a)i(task)f(info)h
+(capabilit)n(y)f(for)g(the)i(serv)n(er's)c(task)j(ID,)g(either)498
+2131 y(directly)f(from)f(the)h Ft(task)e Fw(serv)n(er,)h(or)f(from)i
+(another)e(task)i(in)g(a)f(capabilit)n(y)g(cop)n(y)-7
+b(.)498 2230 y(F)g(rom)24 b(that)h(p)r(oin)n(t)g(on,)g(the)g(clien)n(t)
+g(can)g(b)r(e)g(sure)f(to)g(alw)n(a)n(ys)f(talk)i(to)f(the)h(same)f
+(task)498 2330 y(when)k(talking)f(to)g(the)h(serv)n(er.)498
+2465 y(Of)k(course,)f(if)h(the)g(clien)n(t)g(already)e(has)h(a)g(task)g
+(info)h(cap)f(for)g(the)h(serv)n(er)e(it)i(do)r(es)498
+2565 y(not)c(need)f(to)h(do)f(an)n(ything)g(in)h(this)g(step.)681
+2733 y Fm(As)c(explained)h(ab)r(o)n(v)n(e,)h(if)d(the)j(clien)n(t)e(do)
+r(es)h(not)h(ha)n(v)n(e)f(an)n(y)g(other)g(task)g(holding)g(the)681
+2812 y(task)g(info)e(cap)i(already)-6 b(,)24 b(it)g(has)g(no)h(secure)f
+(information)g(ab)r(out)h(what)g(this)f(task)h(is)681
+2891 y(for)e(whic)n(h)h(it)f(got)i(a)e(task)i(info)e(cap.)392
+3080 y Fw(2.)41 b(The)24 b(clien)n(t)g(sends)f(a)h(message)e(to)i(the)g
+(serv)n(er,)f(requesting)g(the)h(initial)g(handshak)n(e.)392
+3251 y(3.)41 b(The)23 b(serv)n(er)f(receiv)n(es)f(the)j(message,)f(and)
+f(acquires)g(a)h(task)g(info)g(cap)g(for)f(the)i(clien)n(t)498
+3350 y(task)j(\(directly)h(from)f(the)h Ft(task)e Fw(serv)n(er\).)498
+3486 y(Of)32 b(course,)f(if)h(the)g(serv)n(er)e(already)g(has)h(a)g
+(task)g(info)h(cap)f(for)h(the)g(clien)n(t)f(it)h(do)r(es)498
+3585 y(not)c(need)f(to)h(do)f(an)n(ything)g(in)h(this)g(step.)681
+3753 y Fm(A)n(t)i(this)h(p)r(oin)n(t,)h(the)f(serv)n(er)g(kno)n(ws)f
+(that)i(future)f(messages)g(from)e(this)h(task)h(will)681
+3832 y(come)26 b(from)e(the)i(same)g(task)g(as)f(it)h(got)g(the)g(task)
+g(info)f(cap)h(for.)35 b(Ho)n(w)n(ev)n(er,)26 b(it)g(do)r(es)681
+3911 y(not)d(kno)n(w)f(that)h(this)f(is)f(the)i(same)f(task)h(that)g
+(sen)n(t)g(the)f(initial)g(handshak)n(e)h(request)681
+3990 y(in)g(step)i(2)f(ab)r(o)n(v)n(e.)32 b(This)23 b(sho)n(ws)h(that)h
+(there)g(is)e(no)h(sense)g(in)g(v)n(erifying)f(the)h(task)h(ID)681
+4069 y(or)e(p)r(erform)g(an)n(y)h(other)g(authen)n(tication)j(b)r
+(efore)d(acquiring)g(the)g(task)g(info)g(cap.)392 4258
+y Fw(4.)41 b(The)34 b(serv)n(er)e(replies)h(to)g(the)h(initial)g
+(handshak)n(e)e(request)h(with)h(an)g(empt)n(y)f(reply)498
+4357 y(message.)681 4525 y Fm(Because)e(the)h(reply)e(no)n(w)h(can)g
+(go)g(to)g(a)f(di\013eren)n(t)h(task)g(than)h(the)f(request)g(came)681
+4604 y(from,)24 b(sending)i(the)h(reply)e(migh)n(t)h(fail.)35
+b(It)27 b(migh)n(t)e(also)h(succeed)h(and)f(b)r(e)g(accepted)681
+4683 y(b)n(y)20 b(the)h(task)f(that)h(replaced)g(the)g(requestor.)30
+b(Or)19 b(it)h(migh)n(t)g(succeed)h(normally)-6 b(.)30
+b(The)681 4762 y(imp)r(ortan)n(t)f(thing)g(is)f(that)i(it)f(do)r(es)g
+(not)h(matter)f(to)h(the)f(serv)n(er)g(at)g(all.)45 b(It)30
+b(w)n(ould)681 4841 y(ha)n(v)n(e)23 b(pro)n(vided)g(the)h(same)e
+(\\service")h(to)h(the)f(\\imp)r(oster")g(of)f(the)h(clien)n(t,)g(if)f
+(he)g(had)681 4920 y(b)r(othered)28 b(to)f(do)g(the)g(request.)40
+b(As)26 b(no)h(authen)n(tication)j(is)25 b(done)j(y)n(et,)g(there)f(is)
+f(no)681 4998 y(p)r(oin)n(t)e(for)f(the)h(serv)n(er)g(to)g(b)r(other.)p
+eop end
+%%Page: 16 22
+TeXDict begin 16 21 bop 739 282 a Fw(16)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))1129 515 y Fm(This)c(means)g(ho)n(w)n(ev)n(er,)h(that)h(the)f
+(serv)n(er)f(needs)h(to)g(b)r(e)g(careful)f(in)g(not)h(consuming)1129
+594 y(to)r(o)f(man)n(y)f(resources)g(for)g(this)g(service.)31
+b(Ho)n(w)n(ev)n(er,)23 b(this)g(is)f(easy)i(to)f(ac)n(hiev)n(e.)33
+b(Only)1129 673 y(one)23 b(task)h(info)e(cap)h(p)r(er)f(clien)n(t)h
+(task)h(will)d(ev)n(er)i(b)r(e)g(held)g(in)f(the)h(serv)n(er.)31
+b(The)23 b(serv)n(er)1129 752 y(can)h(either)f(k)n(eep)h(it)f(around)g
+(un)n(til)g(the)h(task)g(dies)f(\(and)h(a)f(task)g(death)i
+(noti\014cation)1129 831 y(is)f(receiv)n(ed\),)j(or)d(it)h(can)h(clean)
+g(it)e(up)i(after)f(some)g(timeout)h(if)e(the)i(clien)n(t)f(do)r(es)h
+(not)1129 910 y(follo)n(w)d(up)h(and)g(do)g(some)g(real)f(authen)n
+(tication.)840 1072 y Fw(5.)41 b(The)28 b(clien)n(t)g(receiv)n(es)e
+(the)i(reply)f(message)f(to)i(its)f(initial)h(handshak)n(e)f(request.)
+840 1225 y(6.)41 b(The)25 b(clien)n(t)f(sends)f(a)h(request)f(to)h
+(create)f(its)i(initial)f(capabilit)n(y)-7 b(.)35 b(Ho)n(w)24
+b(this)g(request)946 1324 y(lo)r(oks)41 b(dep)r(ends)h(on)f(the)h(t)n
+(yp)r(e)f(of)h(the)g(serv)n(er)d(and)i(the)h(initial)g(capabilities)f
+(it)946 1424 y(pro)n(vides.)36 b(Here)27 b(are)g(some)g(examples:)1046
+1587 y Fg(\017)41 b Fw(A)26 b(\014lesystem)f(migh)n(t)h(pro)n(vide)e
+(an)i(unauthen)n(ticated)f(ro)r(ot)g(directory)f(ob)5
+b(ject)1129 1686 y(in)40 b(return)f(of)h(the)g(underlying)f(no)r(de)g
+(capabilit)n(y)-7 b(,)42 b(whic)n(h)e(is)f(pro)n(vided)g(b)n(y)1129
+1786 y(the)29 b(paren)n(t)f(\014lesystem)h(and)g(pro)n(v)n(es)e(to)i
+(the)g(\014lesystem)g(that)g(the)g(user)f(w)n(as)1129
+1885 y(allo)n(w)n(ed)f(to)g(lo)r(ok)h(up)g(the)g(ro)r(ot)f(no)r(de)h
+(of)g(this)g(\014lesystem)g(\(see)g(section)f(6.5.1)1129
+1985 y(on)g(page)g(59\).)1284 2085 y Fm(In)e(this)e(example,)i(the)f
+(paren)n(t)h(\014lesystem)f(will)f(either)h(pro)n(vide)g(the)h(task)f
+(info)1284 2164 y(cap)f(for)d(the)j(c)n(hild)e(\014lesystem)h(to)g(the)
+h(user,)e(or)g(it)h(will)e(hold)h(the)i(task)f(info)f(cap)1284
+2243 y(while)29 b(the)h(user)e(is)h(creating)g(their)g(o)n(wn)g(\(whic)
+n(h)h(the)g(user)f(has)g(to)g(v)n(erify)f(b)n(y)1284
+2322 y(rep)r(eating)d(the)g(lo)r(okup,)f(though\).)33
+b(Again,)23 b(see)h(section)h(6.5.1)e(on)h(page)h(59.)1284
+2401 y(The)30 b(unauthen)n(ticated)j(ro)r(ot)d(directory)g(ob)t(ject)h
+(will)d(then)i(ha)n(v)n(e)h(the)f(b)r(e)g(au-)1284 2480
+y(then)n(ticated)d(using)e(the)g(normal)e(reauthen)n(tication)k(mec)n
+(hanism)e(\(see)g(section)1284 2559 y(6.1)f(on)g(pagerefauth\).)33
+b(This)23 b(can)i(also)e(b)r(e)h(com)n(bined)h(in)e(a)h(single)f(RPC.)
+1046 2680 y Fg(\017)41 b Fw(Ev)n(ery)27 b(pro)r(cess)g(acts)h(as)g(a)g
+(serv)n(er)e(that)j(implemen)n(ts)g(the)g(signal)e(capabilit)n(y)1129
+2779 y(for)34 b(this)i(pro)r(cess.)57 b(T)-7 b(asks)34
+b(who)g(w)n(an)n(t)g(to)h(send)g(a)f(signal)g(to)h(another)f(task)1129
+2879 y(can)i(p)r(erform)g(the)h(ab)r(o)n(v)n(e)f(handshak)n(e,)h(and)g
+(then)g(pro)n(vide)e(some)h(t)n(yp)r(e)h(of)1129 2978
+y(authen)n(tication)22 b(capabilit)n(y)f(that)h(indicates)g(that)g
+(they)h(are)e(allo)n(w)n(ed)f(to)i(send)1129 3078 y(a)i(signal.)34
+b(Di\013eren)n(t)25 b(authen)n(tication)e(capabilities)h(can)f(b)r(e)i
+(accepted)e(b)n(y)h(the)1129 3178 y(signalled)j(task)g(for)g
+(di\013eren)n(t)h(t)n(yp)r(es)f(of)h(signals.)1284 3278
+y Fm(The)d(Hurd)e(used)h(to)h(store)f(the)g(signal)g(capabilit)n(y)g
+(in)g(the)g(pro)r(c)g(serv)n(er,)g(where)1284 3357 y(authorized)h
+(tasks)e(could)g(lo)r(ok)g(it)g(up.)31 b(This)22 b(is)h(no)g(longer)g
+(p)r(ossible)f(b)r(ecause)j(a)1284 3436 y(serv)n(er)e(can)g(not)g
+(accept)i(capabilities)e(implemen)n(ted)g(b)n(y)g(un)n(trusted)h
+(tasks,)f(see)1284 3515 y(b)r(elo)n(w.)840 3677 y Fw(7.)41
+b(The)26 b(serv)n(er)e(replies)h(with)h(whatev)n(er)f(capabilit)n(y)g
+(the)h(clien)n(t)g(requested,)f(pro)n(vided)946 3777
+y(that)31 b(the)g(clien)n(t)f(could)h(pro)n(vide)e(the)i(necessary)d
+(authen)n(tication)i(capabilities,)h(if)946 3876 y(an)n(y)-7
+b(.)1129 4018 y Fm(It)23 b(is)f(not)i(required)e(that)i(the)g(serv)n
+(er)e(p)r(erforms)f(an)n(y)j(authen)n(tication)h(at)e(all,)f(but)h(it)
+1129 4097 y(is)g(recommended,)i(and)f(all)f(Hurd)g(serv)n(ers)g(will)g
+(do)h(so.)1129 4186 y(In)f(particular,)g(the)h(serv)n(er)e(should)h
+(normally)g(only)g(allo)n(w)f(access)i(from)e(tasks)h(run-)1129
+4265 y(ning)k(in)f(the)h(same)g(system,)g(if)f(running)g(m)n(ultiple)g
+(systems)h(on)g(the)g(same)g(host)g(is)1129 4343 y(p)r(ossible.)739
+4583 y Fu(Result)82 b Fw(The)18 b(clien)n(t)h(has)f(a)g(task)g(info)h
+(capabilit)n(y)f(for)g(the)h(serv)n(er)e(and)h(an)g(authen)n(ticated)
+739 4683 y(capabilit)n(y)-7 b(.)53 b(The)34 b(serv)n(er)d(has)i(a)g
+(task)g(info)h(capabilit)n(y)e(for)h(the)h(clien)n(t)f(and)h(seen)f
+(some)739 4783 y(sort)27 b(of)g(authen)n(tication)g(for)g(the)h
+(capabilit)n(y)f(it)h(ga)n(v)n(e)e(to)i(the)g(clien)n(t.)946
+4920 y Fm(If)19 b(y)n(ou)g(think)g(that)g(the)g(ab)r(o)n(v)n(e)h(proto)
+r(col)f(is)f(complex,)i(y)n(ou)f(ha)n(v)n(e)g(seen)g(nothing)h(y)n(et!)
+30 b(Read)946 4998 y(on.)p eop end
+%%Page: 17 23
+TeXDict begin 17 22 bop 291 282 a Fq(3.1.)63 b(CAP)-7
+b(ABILITIES)1990 b Fw(17)291 515 y Fl(3.1.2)112 b(Returning)37
+b(a)h(capabilit)m(y)h(from)f(a)g(serv)m(er)f(to)g(a)h(clien)m(t)291
+711 y Fw(Before)20 b(w)n(e)h(go)g(on)g(to)g(the)h(more)f(complex)g
+(case)f(of)i(cop)n(ying)e(a)h(capabilit)n(y)g(from)g(one)g(clien)n(t)
+291 811 y(to)27 b(another,)f(let)i(us)g(p)r(oin)n(t)f(out)h(that)f
+(once)g(a)g(clien)n(t)h(has)f(a)g(capabilit)n(y)g(from)g(a)g(serv)n
+(er,)e(it)291 911 y(is)i(easy)g(for)g(the)h(serv)n(er)e(to)h(return)g
+(more)g(capabilities)g(it)h(implemen)n(ts)g(to)f(the)h(clien)n(t.)291
+1051 y(The)35 b(serv)n(er)e(just)j(needs)f(to)g(create)f(the)i
+(capabilit)n(y)-7 b(,)36 b(acquire)e(a)h(capabilit)n(y)f(ID)i(in)g(the)
+291 1151 y(clien)n(t's)27 b(cap)g(ID)h(space,)f(and)h(return)f(the)h
+(information)f(in)h(the)g(reply)f(RPC.)291 1291 y(FIXME:)k(Here)g
+(should)g(b)r(e)h(the)g(pseudo)f(co)r(de)g(for)g(the)g(proto)r(col.)47
+b(F)-7 b(or)31 b(no)n(w,)h(y)n(ou)e(ha)n(v)n(e)291 1391
+y(to)d(tak)n(e)g(it)h(out)g(of)f(the)h(long)f(v)n(ersion.)498
+1557 y Fm(The)d(main)f(p)r(oin)n(t)h(of)e(this)i(section)g(is)e(to)i(p)
+r(oin)n(t)g(out)g(that)g(only)g(one)g(task)g(info)e(capabilit)n(y)498
+1635 y(is)28 b(required)g(to)i(protect)g(all)e(capabilities)h(pro)n
+(vided)g(to)g(a)g(single)f(task.)47 b(The)29 b(proto)r(cols)498
+1714 y(describ)r(ed)23 b(here)g(alw)n(a)n(ys)f(assume)h(that)h(no)f
+(task)g(info)f(caps)h(are)f(held)h(b)n(y)g(an)n(y)n(one)h(\(except)498
+1793 y(those)k(men)n(tioned)g(in)e(the)i(preconditions\).)42
+b(In)27 b(realit)n(y)-6 b(,)27 b(sometimes)g(the)h(required)e(task)498
+1872 y(info)d(caps)i(will)d(already)i(b)r(e)g(held.)291
+2155 y Fl(3.1.3)112 b(Cop)m(ying)31 b(a)g(capabilit)m(y)h(from)f(one)g
+(clien)m(t)g(to)f(another)h(task)291 2351 y Fw(The)40
+b(most)f(complex)h(op)r(eration)f(in)h(managing)e(capabilities)i(is)g
+(to)f(cop)n(y)g(or)h(mo)n(v)n(e)e(a)291 2451 y(capabilit)n(y)25
+b(from)h(the)h(clien)n(t)f(to)g(another)g(task,)g(whic)n(h)g(subsequen)
+n(tly)g(b)r(ecomes)g(a)g(clien)n(t)291 2551 y(of)c(the)g(serv)n(er)e
+(pro)n(viding)h(the)i(capabilit)n(y)-7 b(.)34 b(The)22
+b(di\016cult)n(y)h(here)e(lies)h(in)g(the)h(fact)f(that)h(the)291
+2650 y(proto)r(col)29 b(should)i(b)r(e)g(fast,)h(but)f(also)f(robust)g
+(and)h(secure.)46 b(If)31 b(an)n(y)f(of)h(the)g(participan)n(ts)291
+2750 y(dies)d(unexp)r(ectedly)-7 b(,)29 b(or)e(an)n(y)h(of)g(the)h(un)n
+(trusted)f(participan)n(ts)f(is)h(malicious,)g(the)h(others)291
+2850 y(should)e(not)h(b)r(e)g(harmed.)291 3116 y Fu(Preconditions)82
+b Fw(The)25 b(clien)n(t)g Fs(C)31 b Fw(has)25 b(a)g(capabilit)n(y)f
+(from)h(serv)n(er)e Fs(S)30 b Fw(\(this)25 b(implies)h(that)291
+3216 y Fs(C)34 b Fw(has)28 b(a)g(task)g(info)g(cap)g(for)g
+Fs(S)33 b Fw(and)28 b Fs(S)33 b Fw(has)28 b(a)g(task)g(info)g(cap)g
+(for)g Fs(C)6 b Fw(\).)40 b(It)28 b(w)n(an)n(ts)g(to)g(cop)n(y)291
+3315 y(the)j(capabilit)n(y)g(to)g(the)h(destination)f(task)g
+Fs(D)r Fw(.)49 b(F)-7 b(or)30 b(this,)j(it)f(will)f(ha)n(v)n(e)g(to)g
+(mak)n(e)g(RPCs)291 3415 y(to)24 b Fs(D)r Fw(,)i(so)e
+Fs(C)32 b Fw(has)24 b(also)g(a)g(capabilit)n(y)g(from)h
+Fs(D)i Fw(\(this)e(implies)h(that)f Fs(C)31 b Fw(has)24
+b(a)h(task)f(info)h(cap)291 3515 y(for)e Fs(D)i Fw(and)f
+Fs(D)h Fw(has)e(a)g(task)g(info)h(cap)f(for)g Fs(C)6
+b Fw(\).)36 b(Of)24 b(course,)f(the)h(clien)n(t)f Fs(C)30
+b Fw(trusts)23 b(its)h(serv)n(ers)291 3614 y Fs(S)31
+b Fw(and)26 b Fs(D)r Fw(.)37 b Fs(D)28 b Fw(migh)n(t)f(trust)f
+Fs(S)31 b Fw(or)26 b(not,)g(and)h(th)n(us)f(accept)g(or)g(reject)g(the)
+h(capabilit)n(y)f(that)291 3714 y Fs(C)34 b Fw(w)n(an)n(ts)26
+b(to)i(giv)n(e)e(to)i Fs(D)r Fw(.)37 b Fs(S)32 b Fw(do)r(es)27
+b(not)h(trust)g(either)f Fs(C)34 b Fw(or)27 b Fs(D)r
+Fw(.)291 3854 y(The)i Ft(task)f Fw(serv)n(er)f(is)i(also)f(in)n(v)n
+(olv)n(ed,)g(b)r(ecause)h(it)h(pro)n(vides)e(the)h(task)g(info)g
+(capabilities.)291 3954 y(Ev)n(ery)n(one)g(trusts)i(the)h
+Ft(task)e Fw(serv)n(er)f(they)j(use.)49 b(This)31 b(do)r(es)g(not)h
+(need)f(to)h(b)r(e)g(the)f(same)291 4054 y(one)c(for)g(ev)n(ery)f
+(participan)n(t.)291 4194 y(FIXME:)31 b(Here)g(should)g(b)r(e)h(the)g
+(pseudo)f(co)r(de)g(for)g(the)g(proto)r(col.)47 b(F)-7
+b(or)31 b(no)n(w,)h(y)n(ou)e(ha)n(v)n(e)291 4294 y(to)d(tak)n(e)g(it)h
+(out)g(of)f(the)h(long)f(v)n(ersion.)392 4524 y(1.)41
+b(The)24 b(clien)n(t)f(in)n(v)n(ok)n(es)f(the)i Ft(cap_ref_cont_cre)o
+(ate)17 b Fw(RPC)23 b(on)g(the)h(capabilit)n(y)-7 b(,)24
+b(pro-)498 4624 y(viding)k(the)f(task)h(ID)g(of)f(the)h(in)n(tended)g
+(receiv)n(er)e Fs(D)k Fw(of)d(the)h(capabilit)n(y)-7
+b(.)392 4799 y(2.)41 b(The)35 b(serv)n(er)e(receiv)n(es)g(the)i
+Ft(cap_ref_cont_crea)o(te)28 b Fw(RPC)35 b(from)f(the)h(clien)n(t.)59
+b(It)498 4899 y(requests)39 b(a)f(task)h(info)h(cap)e(for)h
+Fs(D)j Fw(from)c(its)i(trusted)f(task)g(serv)n(er,)h(under)g(the)498
+4998 y(constrain)n(t)27 b(that)g Fs(C)34 b Fw(is)28 b(still)g(living.)p
+eop end
+%%Page: 18 24
+TeXDict begin 18 23 bop 739 282 a Fw(18)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))1129 515 y Fm(A)c(task)i(can)f(pro)n(vide)g(a)g(constrain)n
+(t)h(when)f(creating)h(a)f(task)g(info)f(cap)h(in)g(the)g
+Fh(task)1129 594 y Fm(serv)n(er.)48 b(The)30 b(constrain)n(t)g(is)e(a)i
+(task)g(ID.)f(The)h(task)g(serv)n(er)f(will)f(only)h(create)h(the)1129
+673 y(task)f(info)f(cap)h(and)g(return)f(it)g(if)g(the)h(task)g(with)f
+(the)h(constrain)n(t)h(task)f(ID)f(is)g(not)1129 752
+y(destro)n(y)n(ed.)33 b(This)22 b(allo)n(ws)h(for)g(a)h(task)g
+(requesting)g(a)g(task)g(info)f(capabilit)n(y)h(to)g(mak)n(e)1129
+831 y(sure)19 b(that)i(another)f(task,)h(whic)n(h)e(also)h(holds)f
+(this)g(task)h(info)f(cap,)i(is)d(not)i(destro)n(y)n(ed.)1129
+910 y(This)27 b(is)f(imp)r(ortan)n(t,)i(b)r(ecause)h(if)d(a)h(task)h
+(is)e(destro)n(y)n(ed,)j(all)e(the)g(task)h(info)f(caps)g(it)1129
+989 y(held)d(are)g(released.)1129 1086 y(In)30 b(this)f(case,)i(the)f
+(serv)n(er)f(relies)f(on)i(the)g(clien)n(t)g(to)g(hold)f(a)h(task)f
+(info)g(cap)h(for)f Fj(D)1129 1165 y Fm(un)n(til)24 b(it)g(established)
+h(its)f(o)n(wn.)33 b(See)25 b(b)r(elo)n(w)f(for)g(what)h(can)g(go)f
+(wrong)g(if)g(the)h(serv)n(er)1129 1244 y(w)n(ould)31
+b(not)h(pro)n(vide)g(a)f(constrain)n(t)h(and)g(b)r(oth,)h(the)f(clien)n
+(t)f(and)h(the)g(destination)1129 1323 y(task)24 b(w)n(ould)g(die)g
+(unexp)r(ectedly)-6 b(.)946 1516 y Fw(No)n(w)31 b(that)g(the)g(serv)n
+(er)e(established)h(its)h(o)n(wn)f(task)h(info)f(cap)h(for)f
+Fs(D)r Fw(,)i(it)f(creates)f(a)946 1616 y(reference)d(con)n(tainer)f
+(for)i Fs(D)r Fw(,)f(that)h(has)f(the)h(follo)n(wing)f(prop)r(erties:)
+1046 1809 y Fg(\017)41 b Fw(The)26 b(reference)f(con)n(tainer)g(has)g
+(a)h(single)f(new)h(reference)f(for)h(the)g(capabilit)n(y)-7
+b(.)1046 1947 y Fg(\017)41 b Fw(The)25 b(reference)f(con)n(tainer)g
+(has)g(an)h(ID)g(that)h(is)e(unique)i(among)d(all)i(reference)1129
+2046 y(con)n(tainer)h(IDs)i(for)f(the)h(clien)n(t)g Fs(C)6
+b Fw(.)1046 2183 y Fg(\017)41 b Fw(The)22 b(reference)e(con)n(tainer)h
+(is)g(asso)r(ciated)g(with)h(the)g(clien)n(t)f Fs(C)6
+b Fw(.)36 b(If)22 b Fs(C)28 b Fw(dies,)22 b(and)1129
+2283 y(the)28 b(serv)n(er)d(pro)r(cesses)h(the)h(task)g(death)g
+(noti\014cation)g(for)f(it,)i(the)g(serv)n(er)d(will)1129
+2383 y(destro)n(y)33 b(the)h(reference)g(con)n(tainer)f(and)g(release)g
+(the)i(capabilit)n(y)e(reference)1129 2482 y(it)c(has)f(\(if)h(an)n
+(y\).)39 b(All)29 b(resources)d(asso)r(ciated)h(with)i(the)g(reference)
+f(con)n(tainer)1129 2582 y(will)e(b)r(e)g(released.)34
+b(If)26 b(this)g(reference)e(con)n(tainer)h(w)n(as)f(the)i(only)f
+(reason)f(for)g Fs(S)1129 2682 y Fw(to)30 b(hold)g(the)g(task)g(info)g
+(cap)f(for)h Fs(D)r Fw(,)g(the)h(serv)n(er)d(will)i(also)f(release)f
+(the)j(task)1129 2781 y(info)d(cap)f(for)g Fs(D)r Fw(.)1046
+2918 y Fg(\017)41 b Fw(The)19 b(reference)f(con)n(tainer)g(is)h(also)e
+(asso)r(ciated)h(with)i(the)f(destination)g(task)f Fs(D)r
+Fw(.)1129 3018 y(If)28 b Fs(D)i Fw(dies,)e(and)g(the)g(serv)n(er)e(pro)
+r(cesses)h(the)h(task)f(death)h(noti\014cation)f(for)h(it,)1129
+3118 y(the)d(serv)n(er)e(will)i(release)e(the)i(capabilit)n(y)e
+(reference)h(that)h(is)f(in)h(the)g(reference)1129 3217
+y(con)n(tainer)j(\(if)i(an)n(y\).)41 b(It)29 b(will)h(not)f(destro)n(y)
+e(the)j(part)f(of)g(the)g(con)n(tainer)f(that)1129 3317
+y(is)g(asso)r(ciated)e(with)i Fs(C)6 b Fw(.)946 3510
+y(The)28 b(serv)n(er)e(returns)h(the)h(reference)e(con)n(tainer)h(ID)h
+Fs(R)g Fw(to)g(the)g(clien)n(t.)840 3685 y(3.)41 b(The)28
+b(clien)n(t)g(receiv)n(es)e(the)i(reference)f(con)n(tainer)f(ID)i
+Fs(R)q Fw(.)1129 3858 y Fm(If)17 b(sev)n(eral)g(capabilities)g(ha)n(v)n
+(e)h(to)f(b)r(e)h(copied)f(in)g(one)h(message,)g(the)g(ab)r(o)n(v)n(e)g
+(steps)f(need)1129 3937 y(to)j(b)r(e)g(rep)r(eated)h(for)e(eac)n(h)h
+(capabilit)n(y)-6 b(.)31 b(With)20 b(appropriate)g(in)n(terfaces,)g
+(capabilities)1129 4016 y(could)k(b)r(e)g(collected)h(so)e(that)i(only)
+e(one)i(call)e(p)r(er)g(serv)n(er)g(has)h(to)g(b)r(e)g(made.)31
+b(W)-6 b(e)24 b(are)1129 4095 y(assuming)g(here)g(that)h(only)e(one)i
+(capabilit)n(y)f(is)f(copied.)840 4288 y Fw(4.)41 b(The)27
+b(clien)n(t)f(sends)g(the)h(serv)n(er)e(thread)h(ID)h
+Fs(T)37 b Fw(and)26 b(the)h(reference)f(con)n(tainer)f(ID)h
+Fs(R)946 4388 y Fw(to)i(the)g(destination)f(task)g Fs(D)r
+Fw(.)840 4562 y(5.)41 b(The)28 b(destination)e(task)h
+Fs(D)i Fw(receiv)n(es)d(the)h(serv)n(er)e(thread)i(ID)h
+Fs(T)38 b Fw(and)27 b(the)g(reference)946 4662 y(con)n(tainer)g(ID)h
+Fs(R)g Fw(from)f Fs(C)6 b Fw(.)946 4799 y(It)39 b(no)n(w)f(insp)r(ects)
+g(the)h(serv)n(er)e(thread)g(ID)i Fs(T)12 b Fw(,)40 b(and)f(in)f
+(particular)f(the)i(task)f(ID)946 4899 y(comp)r(onen)n(t)28
+b(of)g(it.)39 b Fs(D)30 b Fw(has)e(to)g(mak)n(e)f(the)i(decision)e(if)i
+(it)f(trusts)g(this)h(task)e(to)h(b)r(e)h(a)946 4998
+y(serv)n(er)d(for)h(it,)h(or)f(if)h(it)g(do)r(es)f(not)h(trust)g(this)g
+(task.)p eop end
+%%Page: 19 25
+TeXDict begin 19 24 bop 291 282 a Fq(3.1.)63 b(CAP)-7
+b(ABILITIES)1990 b Fw(19)498 515 y(If)27 b Fs(D)i Fw(trusts)d
+Fs(C)6 b Fw(,)27 b(it)g(migh)n(t)f(decide)g(to)h(alw)n(a)n(ys)d(trust)j
+Fs(T)12 b Fw(,)26 b(to)r(o,)g(irregardless)e(of)i(what)498
+615 y(task)h(con)n(tains)g Fs(T)12 b Fw(.)498 744 y(If)23
+b Fs(D)i Fw(do)r(es)d(not)g(trust)h Fs(C)6 b Fw(,)23
+b(it)g(migh)n(t)g(b)r(e)g(more)e(pic)n(ky)h(ab)r(out)g(the)h(task)f
+(that)h(con)n(tains)498 844 y Fs(T)12 b Fw(.)36 b(This)27
+b(is)g(b)r(ecause)f Fs(D)j Fw(will)e(ha)n(v)n(e)f(to)h(b)r(ecome)f(a)h
+(clien)n(t)g(of)g Fs(T)12 b Fw(,)26 b(so)g(it)h(will)h(trust)e(it.)498
+944 y(F)-7 b(or)27 b(example,)g(it)h(will)g(blo)r(c)n(k)f(on)h
+(messages)e(it)i(sends)f(to)g Fs(T)12 b Fw(.)681 1095
+y Fm(If)k Fj(D)i Fm(is)e(a)g(serv)n(er,)i(it)e(will)f(usually)h(only)h
+(accept)h(capabilities)f(from)e(its)h(clien)n(t)h(that)h(are)681
+1174 y(pro)n(vided)23 b(b)n(y)g(sp)r(eci\014c)g(other)h(serv)n(ers)e
+(it)g(trusts.)31 b(This)22 b(can)i(b)r(e)f(the)g(authen)n(tication)681
+1253 y(serv)n(er,)g(for)g(example)h(\(see)h(section)f(6.1)g(on)g(page)h
+(51\).)681 1345 y(Usually)-6 b(,)36 b(the)f(t)n(yp)r(e)g(of)f
+(capabilit)n(y)h(that)h Fj(D)g Fm(w)n(an)n(ts)f(to)g(accept)h(from)d
+Fj(C)39 b Fm(is)34 b(then)681 1424 y(further)e(restricted,)j(and)e
+(only)f(one)h(p)r(ossible)g(trusted)g(serv)n(er)f(implemen)n(ts)h(that)
+681 1503 y(t)n(yp)r(e)c(of)f(capabilities.)45 b(Th)n(us,)29
+b Fj(D)h Fm(can)f(simply)e(compare)i(the)g(task)g(ID)f(of)g
+Fj(T)38 b Fm(with)681 1582 y(the)30 b(task)g(ID)g(of)f(its)g(trusted)i
+(serv)n(er)e(\(authen)n(tication)k(serv)n(er,)d(...\))48
+b(to)30 b(mak)n(e)g(the)681 1660 y(decision)24 b(if)e(it)i(w)n(an)n(ts)
+g(to)h(accept)g(the)g(capabilit)n(y)f(or)f(not.)498 1833
+y Fw(If)29 b Fs(D)i Fw(do)r(es)e(not)g(trust)g Fs(T)12
+b Fw(,)28 b(it)i(replies)e(to)h Fs(C)35 b Fw(\(probably)28
+b(with)h(an)g(error)e(v)-5 b(alue)29 b(indi-)498 1932
+y(cating)h(wh)n(y)h(the)g(capabilit)n(y)f(w)n(as)g(not)h(accepted\).)47
+b(In)31 b(that)g(case,)g(jump)h(to)f(step)498 2032 y(8.)498
+2161 y(Otherwise,)h(it)f(requests)g(a)g(task)g(info)g(cap)g(for)g
+Fs(S)36 b Fw(from)31 b(its)g(trusted)h(task)f(serv)n(er,)498
+2261 y(under)d(the)g(constrain)n(t)e(that)i Fs(C)34 b
+Fw(is)27 b(still)h(living.)498 2390 y(Then)33 b Fs(D)i
+Fw(sends)e(a)g Ft(cap_ref_cont_acc)o(ep)o(t)27 b Fw(RPC)33
+b(to)g(the)g(serv)n(er)e Fs(S)5 b Fw(,)34 b(pro)n(viding)498
+2490 y(the)28 b(task)f(ID)h(of)g(the)g(clien)n(t)f Fs(C)34
+b Fw(and)28 b(the)g(reference)f(con)n(tainer)f(ID)i Fs(R)q
+Fw(.)681 2642 y Fh(cap_ref_cont_accept)40 b Fm(is)34
+b(one)i(of)f(the)g(few)g(in)n(terfaces)g(that)i(is)d(not)i(sen)n(t)f
+(to)h(a)681 2721 y(\(real\))24 b(capabilit)n(y)-6 b(,)24
+b(of)f(course.)31 b(Nev)n(ertheless,)24 b(it)g(is)f(part)g(of)g(the)i
+(capabilit)n(y)f(ob)t(ject)681 2799 y(in)n(terface,)k(hence)g(the)g
+(name.)41 b(Y)-6 b(ou)27 b(can)h(think)f(of)g(it)f(as)h(a)g(static)h
+(mem)n(b)r(er)f(in)f(the)681 2878 y(capabilit)n(y)e(class,)f(that)i(do)
+r(es)f(not)h(require)e(an)h(instance)h(of)e(the)i(class.)392
+3051 y Fw(6.)41 b(The)27 b(serv)n(er)e(receiv)n(es)h(the)h
+Ft(cap_ref_cont_acce)o(pt)20 b Fw(RPC)27 b(from)g(the)g(destination)498
+3150 y(task)f Fs(D)r Fw(.)37 b(It)27 b(v)n(eri\014es)e(that)i(a)g
+(reference)e(con)n(tainer)h(exists)g(with)h(the)g(ID)g
+Fs(R)q Fw(,)g(that)g(is)498 3250 y(asso)r(ciated)f(with)j
+Fs(D)g Fw(and)f Fs(C)6 b Fw(.)681 3401 y Fm(The)26 b(serv)n(er)g(will)f
+(store)h(the)h(reference)g(con)n(tainer)g(in)f(data)h(structures)g
+(asso)r(ciated)681 3480 y(with)d Fj(C)5 b Fm(,)23 b(under)h(an)g(ID)g
+(that)h(is)e(unique)i(but)f(lo)r(cal)g(to)h Fj(C)5 b
+Fm(.)31 b(So)24 b Fj(D)i Fm(needs)e(to)h(pro)n(vide)681
+3559 y(b)r(oth)f(information,)f(the)i(task)f(ID)g(and)g(the)h
+(reference)f(con)n(tainer)h(ID)e(of)h Fj(C)5 b Fm(.)498
+3732 y Fw(If)26 b(that)g(is)f(the)h(case,)f(it)h(tak)n(es)f(the)h
+(reference)f(from)g(the)h(reference)e(con)n(tainer,)h(and)498
+3831 y(creates)g(a)g(capabilit)n(y)g(ID)h(for)g Fs(D)h
+Fw(from)f(it.)37 b(The)25 b(capabilit)n(y)g(ID)i(for)e
+Fs(D)j Fw(is)d(returned)498 3931 y(in)j(the)g(reply)f(message.)498
+4060 y(F)-7 b(rom)27 b(that)g(momen)n(t)g(on,)g(the)g(reference)g(con)n
+(tainer)e(is)i(deasso)r(ciated)f(from)h Fs(D)r Fw(.)37
+b(It)498 4160 y(is)e(still)h(asso)r(ciated)d(with)j Fs(C)6
+b Fw(,)38 b(but)d(it)h(do)r(es)f(not)g(con)n(tain)f(an)n(y)h(reference)
+f(for)h(the)498 4259 y(capabilit)n(y)-7 b(.)681 4411
+y Fm(It)22 b(is)f(not)i(deasso)r(ciated)g(from)e Fj(C)26
+b Fm(and)d(remo)n(v)n(ed)f(completely)-6 b(,)23 b(so)f(that)h(its)e(ID)
+h Fj(R)g Fm(\(or)681 4490 y(at)i(least)h(the)f(part)h(of)e(it)h(that)h
+(is)f(used)g(for)f Fj(C)5 b Fm(\))24 b(is)g(not)g(reused.)33
+b Fj(C)28 b Fm(m)n(ust)d(explicitely)681 4569 y(destro)n(y)f(the)h
+(reference)f(con)n(tainer)h(an)n(yw)n(a)n(y)f(b)r(ecause)i
+Fj(D)f Fm(migh)n(t)f(die)f(unexp)r(ectedly)681 4648 y(or)28
+b(return)g(an)h(error)e(that)i(giv)n(es)g(no)f(indication)h(if)f(it)g
+(accepted)j(the)e(reference)f(or)681 4727 y(not.)392
+4899 y Fw(7.)41 b(The)35 b(destination)f(task)g Fs(D)j
+Fw(receiv)n(es)c(the)i(capabilit)n(y)f(ID)h(and)f(en)n(ters)g(it)h(in)n
+(to)g(its)498 4998 y(capabilit)n(y)27 b(system.)37 b(It)28
+b(sends)f(a)g(reply)g(message)f(to)i Fs(C)6 b Fw(.)p
+eop end
+%%Page: 20 26
+TeXDict begin 20 25 bop 739 282 a Fw(20)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))1129 515 y Fm(If)17 b(the)h(only)f(purp)r(ose)g(of)g(the)h
+(RPC)f(w)n(as)g(to)g(cop)n(y)h(the)g(capabilit)n(y)-6
+b(,)19 b(the)f(reply)f(message)1129 594 y(can)30 b(b)r(e)f(empt)n(y)-6
+b(.)48 b(Usually)-6 b(,)29 b(capabilities)g(will)f(b)r(e)h(transfered)g
+(as)g(part)g(of)g(a)g(larger)1129 673 y(op)r(eration,)g(though,)h(and)e
+(more)f(w)n(ork)g(will)f(b)r(e)i(done)h(b)n(y)e Fj(D)j
+Fm(b)r(efore)d(returning)h(to)1129 752 y Fj(C)5 b Fm(.)840
+937 y Fw(8.)41 b(The)27 b(clien)n(t)g Fs(C)33 b Fw(receiv)n(es)25
+b(the)i(reply)g(from)f Fs(D)r Fw(.)37 b(Irregardless)23
+b(if)28 b(it)f(indicated)g(failure)946 1037 y(or)34 b(success,)h(it)g
+(will)f(no)n(w)g(send)g(the)h Ft(cap_ref_cont_des)o(tr)o(oy)28
+b Fw(message)33 b(to)h(the)946 1136 y(serv)n(er)26 b
+Fs(S)5 b Fw(,)28 b(pro)n(viding)e(the)i(reference)f(con)n(tainer)f
+Fs(R)q Fw(.)1129 1301 y Fm(This)20 b(message)h(can)g(b)r(e)g(a)f
+(simple)g(message.)30 b(It)22 b(do)r(es)e(not)i(require)e(a)g(reply)g
+(from)f(the)1129 1380 y(serv)n(er.)840 1565 y Fw(9.)41
+b(The)26 b(serv)n(er)e(receiv)n(es)g(the)j Ft(cap_ref_cont_de)o(str)o
+(oy)19 b Fw(message)24 b(and)i(remo)n(v)n(es)e(the)946
+1665 y(reference)e(con)n(tainer)g Fs(R)q Fw(.)35 b(The)23
+b(reference)f(con)n(tainer)f(is)i(deasso)r(ciated)f(from)g
+Fs(C)29 b Fw(and)946 1764 y Fs(D)r Fw(.)37 b(If)26 b(this)g(w)n(as)f
+(the)h(only)f(reason)f(that)i Fs(S)31 b Fw(held)26 b(a)f(task)g(info)h
+(cap)f(for)h Fs(D)r Fw(,)g(this)g(task)946 1864 y(info)i(cap)f(is)h
+(also)e(released.)1129 2028 y Fm(Because)33 b(the)f(reference)g(con)n
+(tainer)h(can)f(not)g(b)r(e)g(deasso)r(ciated)h(from)e
+Fj(C)36 b Fm(b)n(y)c(an)n(y)1129 2107 y(other)26 b(means)f(than)h(this)
+f(in)n(terface,)h(the)f(clien)n(t)h(do)r(es)f(not)h(need)g(to)g(pro)n
+(vide)f Fj(D)r Fm(.)35 b Fj(R)1129 2186 y Fm(can)29 b(not)h(b)r(e)e
+(reused)h(without)h(the)f(clien)n(t)g Fj(C)k Fm(ha)n(ving)d(it)e
+(destro)n(y)n(ed)i(\014rst.)45 b(This)28 b(is)1129 2265
+y(di\013eren)n(t)d(from)d(the)j Fh(cap_ref_cont_accept)k
+Fm(call)23 b(made)h(b)n(y)g Fj(D)r Fm(,)f(see)h(ab)r(o)n(v)n(e.)739
+2520 y Fu(Result)82 b Fw(F)-7 b(or)26 b(the)h(clien)n(t)f
+Fs(C)6 b Fw(,)28 b(nothing)e(has)g(c)n(hanged.)36 b(The)26
+b(destination)h(task)f Fs(D)i Fw(either)739 2619 y(did)i(not)g(accept)f
+(the)h(capabilit)n(y)-7 b(,)30 b(and)f(nothing)h(has)f(c)n(hanged)g
+(for)g(it,)i(and)e(also)g(not)h(for)739 2719 y(the)25
+b(serv)n(er)d Fs(S)5 b Fw(.)36 b(Or)23 b Fs(D)j Fw(accepted)e(the)h
+(capabilit)n(y)-7 b(,)24 b(and)h(it)f(no)n(w)g(has)g(a)g(task)f(info)i
+(cap)f(for)f Fs(S)739 2819 y Fw(and)29 b(a)g(reference)g(to)g(the)h
+(capabilit)n(y)f(pro)n(vided)g(b)n(y)g Fs(S)5 b Fw(.)42
+b(In)30 b(this)g(case,)f(the)h(serv)n(er)d Fs(S)35 b
+Fw(has)739 2918 y(a)27 b(task)g(info)h(cap)f(for)g Fs(D)j
+Fw(and)d(pro)n(vides)f(a)i(capabilit)n(y)e(ID)j(for)e(this)g(task.)739
+3055 y(The)h(ab)r(o)n(v)n(e)f(proto)r(col)g(is)h(for)f(cop)n(ying)g(a)h
+(capabilit)n(y)f(from)h Fs(C)35 b Fw(to)28 b Fs(D)r Fw(.)38
+b(If)29 b(the)f(goal)f(w)n(as)g(to)739 3154 y(mo)n(v)n(e)f(the)i
+(capabilit)n(y)-7 b(,)27 b(then)h Fs(C)34 b Fw(can)28
+b(no)n(w)f(release)f(its)i(reference)e(to)i(it.)946 3313
+y Fm(Originally)c(w)n(e)h(considered)h(to)f(mo)n(v)n(e)h(capabilities)f
+(b)n(y)g(default,)g(and)h(require)e(the)i(clien)n(t)946
+3391 y(to)j(acquire)g(an)f(additional)h(reference)g(if)e(it)h(w)n(an)n
+(ted)i(to)e(cop)n(y)i(it)e(instead.)45 b(Ho)n(w)n(ev)n(er,)30
+b(it)946 3470 y(turned)23 b(out)f(that)h(for)e(the)i(implemen)n
+(tation,)f(cop)n(ying)h(is)e(easier)h(to)g(handle.)31
+b(One)22 b(reason)946 3549 y(is)j(that)h(the)h(clien)n(t)e(usually)g
+(will)f(use)i(lo)r(cal)f(reference)h(coun)n(ting)g(for)f(the)h
+(capabilities)g(it)946 3628 y(holds,)i(and)f(with)g(lo)r(cal)f
+(reference)i(coun)n(ting,)g(one)g(serv)n(er-side)e(reference)h(is)f
+(shared)h(b)n(y)946 3707 y(man)n(y)j(lo)r(cal)f(references.)49
+b(In)29 b(that)i(case,)g(y)n(ou)f(w)n(ould)f(need)i(to)e(acquire)h(a)g
+(new)f(serv)n(er-)946 3786 y(side)34 b(reference)g(ev)n(en)g(if)f(y)n
+(ou)h(w)n(an)n(t)g(to)g(mo)n(v)n(e)g(the)g(capabilit)n(y)-6
+b(.)62 b(The)33 b(other)h(reason)g(is)946 3865 y(cancellation.)39
+b(If)25 b(an)h(RPC)g(is)e(cancelled,)j(and)f(y)n(ou)h(w)n(an)n(t)f(to)g
+(bac)n(k)h(out)f(of)g(it,)f(y)n(ou)h(need)946 3944 y(to)31
+b(restore)g(the)g(original)e(situation.)52 b(And)30 b(that)i(is)d
+(easier)h(if)f(y)n(ou)i(do)g(not)g(c)n(hange)h(the)946
+4022 y(original)23 b(situation)i(in)e(the)i(\014rst)e(place)h(un)n(til)
+g(the)h(natural)f(\\p)r(oin)n(t)g(of)g(no)g(return".)739
+4201 y Fw(The)f(ab)r(o)n(v)n(e)e(proto)r(col)h(quite)h(ob)n(viously)f
+(ac)n(hiev)n(es)f(the)i(result)g(as)f(describ)r(ed)h(in)g(the)h(ab)r(o)
+n(v)n(e)739 4301 y(concluding)19 b(paragraph.)32 b(Ho)n(w)n(ev)n(er,)19
+b(man)n(y)g(other,)i(and)e(often)h(simpler,)h(proto)r(cols)d(w)n(ould)
+739 4401 y(also)24 b(do)h(that.)36 b(The)25 b(other)g(proto)r(cols)e(w)
+n(e)i(lo)r(ok)n(ed)f(at)h(are)f(not)h(secure)g(or)f(robust)g(though,)
+739 4500 y(or)i(require)g(more)g(op)r(erations.)35 b(T)-7
+b(o)26 b(date)h(w)n(e)g(think)g(that)g(the)g(ab)r(o)n(v)n(e)f(is)g(the)
+i(shortest)e(\(in)739 4600 y(particular)e(in)j(n)n(um)n(b)r(er)e(of)h
+(IPC)f(op)r(erations\))g(proto)r(col)g(that)h(is)f(also)g(secure)g(and)
+h(robust)739 4700 y(\(and)j(if)g(it)g(is)g(not)g(w)n(e)g(think)g(it)g
+(can)g(b)r(e)g(\014xed)g(to)f(b)r(e)i(secure)e(and)g(robust)h(with)g
+(minimal)739 4799 y(c)n(hanges\).)36 b(W)-7 b(e)27 b(ha)n(v)n(e)f(no)h
+(pro)r(of)g(for)g(its)g(correctness.)35 b(Our)26 b(con\014dence)h
+(comes)g(from)g(the)739 4899 y(scrutin)n(y)j(w)n(e)g(applied)h(to)f
+(it.)46 b(If)31 b(y)n(ou)f(\014nd)h(a)f(problem)h(with)g(the)g(ab)r(o)n
+(v)n(e)e(proto)r(col,)h(or)g(if)739 4998 y(y)n(ou)d(can)g(pro)n(v)n(e)f
+(v)-5 b(arious)26 b(asp)r(ects)h(of)h(it,)g(w)n(e)f(w)n(ould)g(lik)n(e)
+h(to)f(hear)g(ab)r(out)g(it.)p eop end
+%%Page: 21 27
+TeXDict begin 21 26 bop 291 282 a Fq(3.1.)63 b(CAP)-7
+b(ABILITIES)1990 b Fw(21)291 515 y(T)-7 b(o)38 b(understand)h(wh)n(y)g
+(the)g(proto)r(col)f(is)h(laid)g(out)g(as)f(it)h(is,)j(and)d(wh)n(y)g
+(it)g(is)g(a)g(secure)291 615 y(and)28 b(robust)h(proto)r(col,)f(one)h
+(has)f(to)h(understand)g(what)g(could)g(p)r(ossibly)f(go)g(wrong)g(and)
+291 715 y(wh)n(y)h(it)h(do)r(es)f(not)h(cause)f(an)n(y)g(problems)g
+(for)g(an)n(y)g(participan)n(t)g(if)h(it)g(follo)n(ws)f(its)h(part)f
+(of)291 814 y(the)f(proto)r(col)e(\(indep)r(enden)n(t)j(on)e(what)h
+(the)g(other)f(participan)n(ts)g(do\).)37 b(In)28 b(the)g(follo)n(wing)
+291 914 y(paragraphs,)23 b(v)-5 b(arious)24 b(scenarios)g(are)h
+(suggested)f(where)h(things)h(do)f(not)h(go)f(as)g(exp)r(ected)291
+1013 y(in)i(the)h(ab)r(o)n(v)n(e)e(proto)r(col.)36 b(This)27
+b(is)g(probably)g(not)g(a)g(complete)h(list,)f(but)h(it)g(should)f
+(come)291 1113 y(close)f(to)i(it.)37 b(If)28 b(y)n(ou)f(\014nd)h(an)n
+(y)f(other)g(problematic)g(scenario,)f(again,)g(let)i(us)g(kno)n(w.)498
+1304 y Fm(Although)34 b(some)f(commen)n(ts)h(lik)n(e)e(this)h(app)r
+(ear)g(in)g(the)g(proto)r(col)h(description)f(ab)r(o)n(v)n(e,)498
+1383 y(man)n(y)28 b(commen)n(ts)g(ha)n(v)n(e)g(b)r(een)f(spared)h(for)e
+(the)i(follo)n(wing)e(analysis)h(of)f(p)r(oten)n(tial)j(prob-)498
+1462 y(lems.)46 b(Read)29 b(the)h(analysis)e(carefully)-6
+b(,)30 b(as)f(it)f(pro)n(vides)h(imp)r(ortan)n(t)g(information)g(ab)r
+(out)498 1540 y(ho)n(w,)24 b(and)g(more)f(imp)r(ortan)n(tly)-6
+b(,)24 b(wh)n(y)g(it)g(w)n(orks.)291 1846 y Fu(The)i(serv)m(er)g
+Fs(S)k Fu(dies)82 b Fw(What)23 b(happ)r(ens)f(if)h(the)g(serv)n(er)d
+Fs(S)27 b Fw(dies)22 b(unexp)r(ectedly)h(sometime)291
+1946 y(throughout)j(the)i(proto)r(col?)498 2136 y Fm(A)n(t)22
+b(an)n(y)h(time)f(a)g(task)h(dies,)e(the)i(task)g(info)e(caps)i(it)f
+(held)g(are)g(released.)31 b(Also,)21 b(task)i(death)498
+2215 y(noti\014cations)g(are)d(sen)n(t)i(to)f(an)n(y)h(task)f(that)h
+(holds)f(task)g(info)g(caps)g(to)g(the)h(no)n(w)f(dead)h(task.)498
+2294 y(The)28 b(task)h(death)g(noti\014cations)h(will)c(b)r(e)i(pro)r
+(cessed)h(async)n(hrnouly)-6 b(,)30 b(so)e(they)h(migh)n(t)f(b)r(e)498
+2373 y(pro)r(cessed)22 b(immediately)-6 b(,)21 b(or)f(at)i(an)n(y)f
+(later)g(time,)g(ev)n(en)h(m)n(uc)n(h)f(later)g(after)g(the)h(task)f
+(died!)498 2452 y(So)28 b(one)g(imp)r(ortan)n(t)g(thing)g(to)f(k)n(eep)
+i(in)e(mind)g(is)f(that)j(the)f(release)f(of)g(task)h(info)f(caps)h(a)
+498 2531 y(task)c(held,)g(and)g(other)h(tasks)f(noticing)g(the)h(task)f
+(death,)h(are)e(alw)n(a)n(ys)h(some)g(time)g(apart.)291
+2742 y Fw(Because)29 b(the)j(clien)n(t)f Fs(C)37 b Fw(holds)30
+b(a)h(task)f(info)h(cap)g(for)f Fs(S)36 b Fw(no)30 b(imp)r(oster)h(can)
+g(get)f(the)h(task)291 2842 y(ID)d(of)f Fs(S)5 b Fw(.)37
+b Fs(C)d Fw(and)27 b Fs(D)j Fw(will)e(get)f(errors)f(when)h(trying)g
+(to)h(send)f(messages)f(to)i Fs(S)5 b Fw(.)498 3033 y
+Fm(Y)-6 b(ou)30 b(migh)n(t)f(no)n(w)h(w)n(onder)g(what)g(happ)r(ens)g
+(if)f Fj(C)34 b Fm(also)29 b(dies,)i(or)e(if)f Fj(C)34
+b Fm(is)29 b(malicious)g(and)498 3112 y(do)r(es)23 b(not)h(hold)e(the)i
+(task)f(info)f(cap.)32 b(Y)-6 b(ou)23 b(can)g(use)g(this)f(as)h(an)g
+(exercise,)g(and)g(try)f(to)i(\014nd)498 3190 y(the)h(answ)n(er)e(on)h
+(y)n(our)g(o)n(wn.)32 b(The)24 b(answ)n(ers)f(are)h(b)r(elo)n(w.)291
+3402 y Fw(Ev)n(en)n(tually)-7 b(,)27 b Fs(C)34 b Fw(\(and)29
+b Fs(D)h Fw(if)f(it)f(already)f(got)h(the)g(task)g(info)g(cap)g(for)g
+Fs(S)5 b Fw(\))28 b(will)g(pro)r(cess)g(the)291 3502
+y(task)f(death)g(noti\014cation)g(and)h(clean)f(up)h(their)f(state.)291
+3807 y Fu(The)k(clien)m(t)h Fs(C)37 b Fu(dies)82 b Fw(The)28
+b(serv)n(er)d Fs(S)32 b Fw(and)c(the)f(destination)h(task)e
+Fs(D)k Fw(hold)d(a)g(task)g(info)291 3907 y(cap)33 b(for)h
+Fs(C)6 b Fw(,)36 b(so)e(no)g(imp)r(oster)g(can)g(get)g(its)g(task)g
+(ID.)h Fs(S)k Fw(and)34 b Fs(D)i Fw(will)f(get)f(errors)e(when)291
+4006 y(trying)25 b(to)h(send)g(messages)e(to)i Fs(C)6
+b Fw(.)37 b(Dep)r(ending)27 b(on)e(when)i Fs(C)32 b Fw(dies,)26
+b(the)h(capabilit)n(y)e(migh)n(t)291 4106 y(b)r(e)j(copied)f
+(successfully)g(or)g(not)g(at)h(all.)291 4259 y(Ev)n(en)n(tually)-7
+b(,)40 b Fs(S)j Fw(and)c Fs(D)h Fw(will)f(pro)r(cess)f(the)h(task)f
+(death)g(noti\014cation)h(and)f(release)f(all)291 4359
+y(resources)18 b(asso)r(ciated)i(with)i Fs(C)6 b Fw(.)35
+b(If)21 b(the)g(reference)f(w)n(as)g(not)h(y)n(et)g(copied,)h(this)f
+(will)h(include)291 4459 y(the)31 b(reference)g(con)n(tainer)e(asso)r
+(ciated)h(with)i Fs(C)6 b Fw(,)33 b(if)e(an)n(y)-7 b(.)48
+b(If)31 b(the)h(reference)e(w)n(as)g(already)291 4558
+y(copied,)d(this)h(will)g(only)f(include)h(the)g(empt)n(y)f(reference)g
+(con)n(tainer,)g(if)h(an)n(y)-7 b(.)498 4749 y Fm(Of)24
+b(course,)i(the)f(participan)n(ts)h(need)g(to)f(use)h(in)n(ternal)f(lo)
+r(c)n(king)g(to)g(protect)i(the)f(in)n(tegrit)n(y)498
+4828 y(of)c(their)g(in)n(ternal)h(data)g(structures.)31
+b(The)23 b(ab)r(o)n(v)n(e)h(proto)r(col)f(do)r(es)g(not)g(sho)n(w)f
+(where)h(lo)r(c)n(ks)498 4907 y(are)d(required.)29 b(In)20
+b(the)g(few)f(cases)h(where)g(some)f(actions)i(m)n(ust)e(b)r(e)h(p)r
+(erformed)f(atomically)-6 b(,)498 4986 y(a)24 b(w)n(ording)g(is)f(used)
+h(that)h(suggests)f(that.)p eop end
+%%Page: 22 28
+TeXDict begin 22 27 bop 739 282 a Fw(22)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))739 515 y Fu(The)i(destination)g(task)h Fs(D)h
+Fu(dies)82 b Fw(The)27 b(clien)n(t)f Fs(C)33 b Fw(holds)26
+b(a)g(task)f(info)i(cap)f(for)g Fs(D)i Fw(o)n(v)n(er)739
+615 y(the)34 b(whole)f(op)r(eration,)h(so)g(no)f(imp)r(oster)g(can)h
+(get)f(its)h(task)f(ID.)h(Dep)r(ending)h(on)e(when)739
+715 y Fs(D)i Fw(dies,)f(it)f(has)g(either)f(not)h(y)n(et)g(accepted)f
+(the)i(capabilit)n(y)-7 b(,)33 b(then)h Fs(C)39 b Fw(will)33
+b(clean)f(up)i(b)n(y)739 814 y(destro)n(ying)27 b(the)i(reference)f
+(con)n(tainer,)f(or)h(it)h(has,)g(and)f(then)h Fs(S)34
+b Fw(will)28 b(clean)h(up)g(its)f(state)739 914 y(when)g(it)g(pro)r
+(cesses)e(the)i(task)f(death)g(noti\014cation)h(for)f
+Fs(D)r Fw(.)739 1225 y Fu(The)k(clien)m(t)g Fs(C)37 b
+Fu(and)32 b(the)f(destination)f(task)h Fs(D)i Fu(die)83
+b Fw(This)27 b(scenario)e(is)i(the)g(reason)739 1325
+y(wh)n(y)j(the)i(serv)n(er)d(acquires)g(its)j(o)n(wn)e(task)g(info)h
+(cap)g(for)f Fs(D)j Fw(so)e(early)-7 b(,)30 b(and)h(wh)n(y)g(it)g(m)n
+(ust)739 1424 y(do)25 b(that)i(under)e(the)h(constrain)n(t)f(that)h
+Fs(C)32 b Fw(still)27 b(liv)n(es.)35 b(If)27 b Fs(C)32
+b Fw(and)25 b Fs(D)j Fw(die)e(b)r(efore)g(the)g(serv)n(er)739
+1524 y(created)21 b(the)g(reference)g(con)n(tainer,)g(then)h(either)f
+(no)g(request)g(w)n(as)g(made,)h(or)f(creating)f(the)739
+1623 y(task)29 b(info)g(cap)g(for)g Fs(D)j Fw(fails)d(b)r(ecause)g(of)h
+(the)g(constrain)n(t.)41 b(If)30 b Fs(C)35 b Fw(and)30
+b Fs(D)h Fw(die)f(afterw)n(ards,)739 1723 y(then)25 b(no)f(imp)r(oster)
+h(can)f(get)g(the)h(task)f(ID)i(of)e Fs(D)j Fw(and)d(try)h(to)f(get)h
+(at)f(the)h(reference)f(in)h(the)739 1823 y(con)n(tainer,)h(b)r(ecause)
+h(the)h(serv)n(er)e(has)h(its)h(o)n(wn)f(task)g(info)h(cap)f(for)g
+Fs(D)r Fw(.)946 2017 y Fm(This)g(problem)f(w)n(as)h(iden)n(ti\014ed)h
+(v)n(ery)f(late)h(in)e(the)i(dev)n(elopmen)n(t)h(of)d(this)h(proto)r
+(col.)42 b(W)-6 b(e)946 2096 y(just)25 b(did)f(not)h(think)g(of)f(b)r
+(oth)i(clien)n(ts)e(dieing)h(at)g(the)g(same)g(time!)33
+b(In)25 b(an)g(earlier)f(v)n(ersion)946 2175 y(of)k(the)i(proto)r(col,)
+g(the)f(serv)n(er)f(w)n(ould)g(acquire)h(its)f(task)h(info)f(cap)h
+(when)g Fj(D)h Fm(accepts)g(its)946 2254 y(reference.)h(This)19
+b(is)f(to)r(o)j(late:)29 b(If)20 b Fj(C)k Fm(and)c Fj(D)i
+Fm(die)d(just)h(b)r(efore)f(that,)i(an)f(imp)r(oster)g(with)f
+Fj(D)r Fm('s)946 2333 y(task)25 b(ID)e(can)h(try)g(to)g(get)g(the)h
+(reference)f(in)f(the)h(con)n(tainer)h(b)r(efore)e(the)i(serv)n(er)e
+(pro)r(cesses)946 2412 y(the)i(task)f(death)h(noti\014cation)h(for)d
+Fj(C)28 b Fm(and)c(destro)n(ys)h(it.)739 2627 y Fw(Ev)n(en)n(tually)-7
+b(,)32 b(the)g(serv)n(er)e(will)i(receiv)n(e)f(and)h(pro)r(cess)f(the)h
+(task)g(death)f(noti\014cations.)50 b(If)739 2726 y(it)38
+b(pro)r(cesses)f(the)h(task)f(death)h(noti\014cation)g(for)f
+Fs(C)44 b Fw(\014rst,)c(it)f(will)f(destro)n(y)e(the)j(whole)739
+2826 y(con)n(tainer)31 b(immediately)-7 b(,)33 b(including)g(the)f
+(reference,)h(if)f(an)n(y)-7 b(.)50 b(If)33 b(it)g(pro)r(cesses)d(the)j
+(task)739 2926 y(death)25 b(noti\014cation)g(for)g Fs(D)j
+Fw(\014rst,)e(it)f(will)h(destro)n(y)e(the)i(reference,)f(and)g(lea)n
+(v)n(e)g(b)r(ehind)h(the)739 3025 y(empt)n(y)36 b(con)n(tainer)e(asso)r
+(ciated)g(with)i Fs(C)6 b Fw(,)38 b(un)n(til)e(the)g(other)f(task)g
+(death)g(noti\014cation)g(is)739 3125 y(pro)r(cessed.)h(Either)27
+b(w)n(a)n(y)f(no)h(imp)r(oster)h(can)f(get)g(at)h(the)g(capabilit)n(y)
+-7 b(.)739 3280 y(Of)34 b(course,)g(if)g(the)h(capabilit)n(y)e(w)n(as)g
+(already)f(copied)i(at)g(the)g(time)g Fs(C)40 b Fw(and)34
+b Fs(D)i Fw(die,)g(the)739 3380 y(serv)n(er)26 b(will)h(just)i(do)e
+(the)h(normal)f(clean)n(up.)739 3691 y Fu(The)j(clien)m(t)f
+Fs(C)35 b Fu(and)30 b(the)g(serv)m(er)f Fs(S)35 b Fu(die)82
+b Fw(This)25 b(scenario)f(do)r(es)h(not)h(cause)f(an)n(y)f(prob-)739
+3791 y(lems,)i(b)r(ecause)g(on)f(the)h(one)g(hand,)g(the)g(destination)
+g(task)f Fs(D)j Fw(holds)e(a)f(task)g(info)h(cap)g(for)739
+3890 y Fs(C)6 b Fw(,)24 b(and)e(it)h(acquires)e(its)i(o)n(wn)f(task)g
+(info)g(cap)g(for)g Fs(S)5 b Fw(.)35 b(Although)23 b(it)g(do)r(es)f
+(this)h(quite)g(late)f(in)739 3990 y(the)27 b(proto)r(col,)e(it)i(do)r
+(es)f(so)g(under)h(the)f(constrain)n(t)g(that)h Fs(C)32
+b Fw(still)27 b(liv)n(es,)f(whic)n(h)h(has)f(a)g(task)739
+4090 y(info)e(cap)g(for)f Fs(S)29 b Fw(for)23 b(the)i(whole)e(time)i
+(\(un)n(til)f(it)h(dies\).)36 b(It)24 b(also)f(gets)g(the)i(task)e
+(info)h(cap)g(for)739 4189 y Fs(S)33 b Fw(b)r(efore)28
+b(sending)h(an)n(y)e(message)g(to)i(it.)40 b(An)29 b(imp)r(oster)f
+(with)h(the)g(task)f(ID)h(of)g Fs(S)5 b Fw(,)28 b(whic)n(h)739
+4289 y(it)d(w)n(as)f(p)r(ossible)g(to)h(get)g(b)r(ecause)f
+Fs(C)31 b Fw(died)25 b(early)-7 b(,)25 b(w)n(ould)f(not)h(receiv)n(e)e
+(an)n(y)h(message)g(from)739 4388 y Fs(D)30 b Fw(b)r(ecause)d
+Fs(D)j Fw(uses)d Fs(C)34 b Fw(as)27 b(its)g(constrain)n(t)g(in)h
+(acquireing)e(the)i(task)f(info)h(cap)f(for)g Fs(S)5
+b Fw(.)739 4700 y Fu(The)33 b(destination)e(task)j Fs(D)g
+Fu(and)f(the)g(serv)m(er)g Fs(S)k Fu(die)83 b Fw(As)28
+b Fs(C)35 b Fw(holds)28 b(task)f(info)i(caps)739 4799
+y(for)35 b Fs(S)41 b Fw(and)36 b Fs(D)r Fw(,)j(there)d(is)f(nothing)h
+(that)h(can)e(go)h(wrong)e(here.)62 b(Ev)n(en)n(tually)-7
+b(,)37 b(the)g(task)739 4899 y(death)31 b(noti\014cations)f(are)f(pro)r
+(cessed,)i(but)g(the)g(task)f(info)h(caps)f(are)g(not)g(released)g(un)n
+(til)739 4998 y(the)e(proto)r(col)e(is)i(completed)f(or)g(ab)r(orted)g
+(b)r(ecause)g(of)h(errors.)p eop end
+%%Page: 23 29
+TeXDict begin 23 28 bop 291 282 a Fq(3.1.)63 b(CAP)-7
+b(ABILITIES)1990 b Fw(23)291 515 y Fu(The)33 b(clien)m(t)g
+Fs(C)6 b Fu(,)34 b(the)f(destination)g(task)h Fs(D)h
+Fu(and)f(the)f(serv)m(er)h Fs(S)k Fu(die)82 b Fw(Before)29
+b(the)291 615 y(last)g(one)h(of)f(these)h(dies,)g(y)n(ou)g(are)e(in)i
+(one)g(of)g(the)g(scenarios)e(whic)n(h)i(already)e(ha)n(v)n(e)g(b)r
+(een)291 715 y(co)n(v)n(ered.)35 b(After)28 b(the)g(last)f(one)g(dies,)
+h(there)f(is)h(nothing)f(to)g(tak)n(e)g(care)g(of)g(an)n(ymore.)498
+876 y Fm(In)e(this)g(case)g(y)n(our)f(problem)h(is)f(probably)g(not)i
+(the)f(capabilit)n(y)g(cop)n(y)h(proto)r(col,)f(but)g(the)498
+955 y(stabilit)n(y)f(of)f(y)n(our)h(soft)n(w)n(are!)31
+b(Go)25 b(\014x)f(some)f(bugs.)291 1137 y Fw(So)j(far)h(the)h
+(scenarios)d(where)i(one)f(or)h(more)f(of)h(the)h(participating)e
+(tasks)g(die)i(unexp)r(ect-)291 1237 y(edly)-7 b(.)49
+b(They)31 b(could)h(also)e(die)i(purp)r(osefully)-7 b(.)49
+b(Other)31 b(things)g(that)h(tasks)f(can)g(try)h(to)f(do)291
+1336 y(purp)r(osefully)c(to)h(break)e(the)i(proto)r(col)e(are)h(presen)
+n(ted)g(in)h(the)g(follo)n(wing)e(paragraphs.)498 1498
+y Fm(A)18 b(task)h(that)h(tries)e(to)h(harm)f(other)h(tasks)g(b)n(y)f
+(not)h(follo)n(wing)f(a)h(proto)r(col)g(and)g(b)r(eha)n(ving)g(as)498
+1577 y(other)j(tasks)f(migh)n(t)g(exp)r(ect)h(it)f(is)f(malicious.)29
+b(Beside)21 b(securit)n(y)h(concerns,)f(this)g(is)f(also)h(an)498
+1656 y(issue)26 b(of)g(robustness,)h(b)r(ecause)h(malicious)e(b)r(eha)n
+(viour)h(can)g(also)g(b)r(e)f(triggered)h(b)n(y)g(bugs)498
+1735 y(rather)d(than)h(bad)f(in)n(ten)n(tions.)498 1831
+y(It)35 b(is)f(di\016cult)g(to)h(protect)h(against)f(malicious)f(b)r
+(eha)n(viour)h(b)n(y)g(trusted)g(comp)r(onen)n(ts,)498
+1910 y(lik)n(e)29 b(the)g(serv)n(er)f Fj(S)t Fm(,)h(whic)n(h)g(is)f
+(trusted)i(b)n(y)f(b)r(oth)h Fj(C)j Fm(and)c Fj(D)r Fm(.)46
+b(If)29 b(a)g(trusted)g(comp)r(onen)n(t)498 1989 y(is)g(compromised)h
+(or)g(buggy)-6 b(,)32 b(ill)c(consequences)33 b(for)c(soft)n(w)n(are)h
+(that)h(trusts)f(it)g(m)n(ust)g(b)r(e)498 2068 y(exp)r(ected.)39
+b(Th)n(us,)26 b(no)g(analysis)f(is)g(pro)n(vided)h(for)f(scenarious)h
+(in)n(v)n(olving)g(a)f(malicious)g(or)498 2147 y(buggy)g(serv)n(er)e
+Fj(S)t Fm(.)291 2407 y Fu(The)k(clien)m(t)g Fs(C)34 b
+Fu(is)27 b(malicious)81 b Fw(If)24 b(the)g(clien)n(t)g
+Fs(C)30 b Fw(w)n(an)n(ts)23 b(to)h(break)f(the)h(proto)r(col,)f(it)h
+(has)291 2506 y(n)n(umerous)j(p)r(ossibilities)h(to)g(do)g(so.)38
+b(The)28 b(\014rst)g(thing)g(it)h(can)e(do)h(is)g(to)g(pro)n(vide)f(a)h
+(wrong)291 2606 y(destination)33 b(task)g(ID)h(when)g(creating)e(the)i
+(con)n(tainer.)53 b(But)34 b(in)g(this)g(case,)g(the)g(serv)n(er)291
+2706 y(will)23 b(return)g(an)g(error)e(to)i Fs(D)j Fw(when)d(it)h
+(tries)e(to)i(accept)f(it,)h(and)f(this)h(will)f(giv)n(e)f
+Fs(D)k Fw(a)d(c)n(hance)291 2805 y(to)28 b(notice)g(the)h(problem)e
+(and)i(clean)e(up.)40 b(This)28 b(also)f(w)n(ould)h(allo)n(w)f(for)h
+(some)g(other)f(task)291 2905 y(to)e(receiv)n(e)f(the)i(con)n(tainer,)e
+(but)i(the)g(clien)n(t)f(can)g(giv)n(e)g(the)g(capabilit)n(y)g(to)g(an)
+n(y)g(other)f(task)291 3004 y(it)k(w)n(an)n(ts)e(to)i(an)n(yw)n(a)n(y)
+-7 b(,)25 b(so)i(this)h(is)g(not)f(a)g(problem.)498 3166
+y Fm(If)17 b(a)h(malicious)e(b)r(eha)n(viour)i(results)f(in)g(an)h
+(outcome)h(that)f(can)g(also)f(b)r(e)h(ac)n(hiev)n(ed)h(follo)n(wing)
+498 3245 y(the)25 b(normal)e(proto)r(col)h(with)g(di\013eren)n(t)g
+(parameters,)g(then)h(this)f(not)g(a)g(problem)f(at)i(all.)291
+3427 y Fw(The)36 b(clien)n(t)h(could)f(also)f(try)h(to)g(create)g(a)g
+(reference)f(con)n(tainer)g(for)h Fs(D)j Fw(and)d(then)h(not)291
+3527 y(tell)f Fs(D)h Fw(ab)r(out)f(it.)62 b(Ho)n(w)n(ev)n(er,)35
+b(a)h(reference)e(con)n(tainer)h(should)g(not)h(consume)f(a)g(lot)h(of)
+291 3626 y(resources)23 b(in)i(the)g(serv)n(er,)f(and)h(all)g(suc)n(h)f
+(resources)f(should)i(b)r(e)h(attributed)f(to)g Fs(C)6
+b Fw(.)36 b(When)291 3726 y Fs(C)k Fw(dies)33 b(ev)n(en)n(tually)-7
+b(,)35 b(the)f(serv)n(er)e(will)i(clean)f(up)h(an)n(y)f(suc)n(h)g(p)r
+(ending)i(con)n(tainers)d(when)291 3826 y(the)c(task)f(death)g
+(noti\014cation)g(is)h(pro)r(cessed.)291 3964 y(The)19
+b(same)g(argumen)n(t)f(holds)h(when)h Fs(C)26 b Fw(lea)n(v)n(es)18
+b(out)h(the)h(call)f(to)g Ft(cap_ref_cont_des)o(tro)o(y)p
+Fw(.)291 4102 y(The)37 b(clien)n(t)g Fs(C)44 b Fw(could)37
+b(also)f(pro)n(vide)g(wrong)f(information)i(to)g Fs(D)r
+Fw(.)66 b(It)37 b(could)g(supply)g(a)291 4201 y(wrong)30
+b(serv)n(er)f(thread)i(ID)h Fs(T)12 b Fw(.)47 b(It)31
+b(could)h(supply)f(a)g(wrong)f(reference)g(con)n(tainer)g(ID)i
+Fs(R)q Fw(.)291 4301 y(If)h Fs(D)i Fw(do)r(es)d(not)h(trust)f
+Fs(C)39 b Fw(and)33 b(exp)r(ects)g(a)f(capabilit)n(y)g(implemen)n(ted)h
+(b)n(y)g(some)f(sp)r(eci\014c)291 4401 y(trusted)h(serv)n(er,)f(it)i
+(will)f(v)n(erify)f(the)h(thread)g(ID)g(n)n(umerically)f(and)h(reject)g
+(it)g(if)h(it)f(do)r(es)291 4500 y(not)j(matc)n(h.)62
+b(The)36 b(reference)g(con)n(tainer)f(ID)h(will)h(b)r(e)f(v)n
+(eri\014ed)f(b)n(y)h(the)h(serv)n(er,)f(and)g(it)291
+4600 y(will)c(only)g(b)r(e)g(accepted)g(if)g(the)h(reference)e(con)n
+(tainer)g(w)n(as)g(created)g(b)n(y)h(the)g(clien)n(t)g(task)291
+4700 y Fs(C)6 b Fw(.)37 b(Th)n(us,)26 b(the)h(only)g(wrong)e(reference)
+h(con)n(tainer)f(IDs)i(that)g(the)g(clien)n(t)g Fs(C)33
+b Fw(could)26 b(use)h(to)291 4799 y(not)h(pro)n(v)n(ok)n(e)f(an)h
+(error)f(message)h(from)g(the)h(serv)n(er)f(\(whic)n(h)h(then)g(lead)g
+Fs(D)i Fw(to)d(ab)r(ort)h(the)291 4899 y(op)r(eration\))23
+b(w)n(ould)g(b)r(e)h(a)g(reference)f(con)n(tainer)f(that)j(it)f
+(created)f(itself)h(in)g(the)h(\014rst)e(place.)291 4998
+y(Ho)n(w)n(ev)n(er,)i Fs(C)34 b Fw(already)26 b(is)i(frree)f(to)g(send)
+h Fs(D)h Fw(an)n(y)e(reference)g(con)n(tainer)f(it)i(created.)p
+eop end
+%%Page: 24 30
+TeXDict begin 24 29 bop 739 282 a Fw(24)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))946 515 y Fm(Again)33 b Fj(C)j Fm(can)d(not)g(ac)n(hiev)n(e)g
+(an)n(ything)h(it)d(could)i(not)g(ac)n(hiev)n(e)g(b)n(y)f(just)g(follo)
+n(wing)g(the)946 594 y(proto)r(col)i(as)e(w)n(ell.)56
+b(If)33 b Fj(C)k Fm(tries)32 b(to)g(use)h(the)g(same)g(reference)f(con)
+n(tainer)i(with)e(sev)n(eral)946 673 y(RPCs)25 b(in)f
+Fj(D)r Fm(,)g(one)i(of)e(them)h(w)n(ould)g(succeed)h(and)f(the)h
+(others)f(w)n(ould)g(fail,)e(h)n(urting)i(only)946 752
+y Fj(C)5 b Fm(.)946 851 y(If)24 b Fj(D)h Fm(do)r(es)g(trust)e
+Fj(C)5 b Fm(,)24 b(then)g(it)g(can)g(not)h(protect)g(against)f
+(malicious)f(b)r(eha)n(viour)i(b)n(y)f Fj(C)5 b Fm(.)739
+1041 y Fw(T)-7 b(o)34 b(summarize)g(the)g(result)g(so)g(far:)50
+b Fs(C)41 b Fw(can)34 b(pro)n(vide)f(wrong)g(data)h(in)h(the)g(op)r
+(erations)739 1141 y(it)d(do)r(es,)h(but)f(it)g(can)g(not)f(ac)n(hiev)n
+(e)g(an)n(ything)g(this)h(w)n(a)n(y)e(that)j(it)f(could)f(not)h(ac)n
+(hiev)n(e)f(b)n(y)739 1241 y(just)j(follo)n(wing)f(the)g(proto)r(col.)
+54 b(In)34 b(most)f(cases)f(the)i(op)r(eration)f(w)n(ould)g(just)h
+(fail.)55 b(If)34 b(it)739 1340 y(lea)n(v)n(es)21 b(out)i(some)g(op)r
+(erations,)g(trying)f(to)h(pro)n(v)n(ok)n(e)d(resource)h(leaks)i(in)g
+(the)g(serv)n(er,)g(it)g(will)739 1440 y(only)h(h)n(urt)f(itself)i
+(\(as)f(the)g(reference)f(con)n(tainer)g(is)h(strictly)g(asso)r(ciated)
+e(with)j Fs(C)30 b Fw(un)n(til)25 b(the)739 1540 y(reference)i(is)g
+(accepted)g(b)n(y)h Fs(D)r Fw(\).)946 1710 y Fm(F)-6
+b(or)31 b(optim)n(um)g(p)r(erformance,)h(the)f(serv)n(er)f(should)h(b)r
+(e)g(able)g(to)g(k)n(eep)g(the)h(information)946 1789
+y(ab)r(out)24 b(the)f(capabilities)g(and)f(reference)h(con)n(tainers)g
+(a)g(clien)n(t)g(holds)f(on)h(memory)f(that)h(is)946
+1867 y(allo)r(cated)i(on)f(the)h(clien)n(ts)f(b)r(ehalf.)946
+1966 y(It)h(migh)n(t)f(also)f(use)h(some)g(t)n(yp)r(e)h(of)e(quota)i
+(system.)739 2157 y Fw(Another)40 b(attac)n(k)f(that)h
+Fs(C)46 b Fw(can)40 b(attempt)g(is)g(to)g(den)n(y)f(a)h(service)f(that)
+h Fs(S)k Fw(and)c Fs(D)i Fw(are)739 2257 y(exp)r(ecting)27
+b(of)f(it.)37 b(Beside)26 b(not)h(doing)f(one)g(or)g(more)g(of)h(the)g
+(RPCs,)f(this)h(is)g(in)g(particular)739 2356 y(holding)33
+b(the)g(task)g(info)g(caps)g(for)f(the)i(time)g(span)e(as)h(describ)r
+(ed)g(in)g(the)h(proto)r(col.)52 b(Of)739 2456 y(course,)22
+b(this)g(can)g(only)g(b)r(e)g(p)r(oten)n(tially)g(dangerous)f(in)h(com)
+n(bination)f(with)i(a)f(task)f(death.)739 2555 y(If)29
+b Fs(C)36 b Fw(do)r(es)29 b(not)g(hold)g(the)h(serv)n(er)d(task)i(info)
+g(capabilit)n(y)-7 b(,)29 b(then)h(an)e(imp)r(oster)h(of)g
+Fs(S)34 b Fw(could)739 2655 y(tric)n(k)22 b Fs(D)k Fw(in)n(to)c(using)h
+(the)h(imp)r(oster)e(as)h(the)g(serv)n(er.)34 b(Ho)n(w)n(ev)n(er,)22
+b(this)h(is)g(only)g(p)r(ossible)g(if)g Fs(D)739 2755
+y Fw(already)28 b(trusts)i Fs(C)6 b Fw(.)45 b(Otherwise)29
+b(it)h(w)n(ould)g(only)f(allo)n(w)g(serv)n(ers)f(that)i(it)h(already)d
+(trusts,)739 2854 y(and)22 b(it)h(w)n(ould)f(alw)n(a)n(ys)e(hold)j
+(task)e(info)i(caps)f(to)g(suc)n(h)g(trusted)g(serv)n(ers)f(when)h
+(making)g(the)739 2954 y(decision)27 b(that)g(it)g(trusts)g(them.)38
+b(Ho)n(w)n(ev)n(er,)25 b(if)j Fs(D)h Fw(trusts)e Fs(C)6
+b Fw(,)27 b(it)h(can)f(not)g(protect)f(against)739 3054
+y Fs(C)34 b Fw(b)r(eing)28 b(malicious.)946 3224 y Fm(If)i
+Fj(D)i Fm(do)r(es)e(not)h(trust)f Fj(C)5 b Fm(,)31 b(it)e(should)h
+(only)h(ev)n(er)f(compare)g(the)h(task)f(ID)g(of)g(the)h(serv)n(er)946
+3303 y(thread)26 b(against)g(trusted)g(serv)n(ers)f(it)g(has)h(a)f
+(task)h(info)e(cap)i(for.)35 b(It)26 b(m)n(ust)f(not)h(rely)f(on)h
+Fj(C)946 3381 y Fm(doing)f(that)f(for)f Fj(D)r Fm(.)946
+3480 y(Ho)n(w)n(ev)n(er,)30 b(if)e Fj(D)i Fm(do)r(es)f(trust)f
+Fj(C)5 b Fm(,)29 b(it)g(can)g(rely)f(on)g Fj(C)34 b Fm(holding)28
+b(the)i(serv)n(er)e(task)h(info)f(cap)946 3559 y(un)n(til)c(it)f(got)i
+(its)e(o)n(wn.)31 b(Th)n(us,)24 b(the)g(task)g(ID)g(of)f
+Fj(C)28 b Fm(can)d(b)r(e)e(used)h(as)g(the)g(constrain)n(t)h(when)946
+3638 y(acquiring)f(the)h(task)f(info)f(cap)i(in)e(the)i(proto)r(col.)
+739 3829 y Fw(If)h Fs(C)31 b Fw(do)r(es)25 b(not)h(hold)f(the)h(task)f
+(info)g(cap)g(of)g Fs(D)r Fw(,)h(and)g Fs(D)h Fw(dies)e(b)r(efore)g
+(the)h(serv)n(er)e(acquires)739 3928 y(its)29 b(task)g(info)g(cap)g
+(for)g Fs(D)r Fw(,)h(it)g(migh)n(t)f(get)g(a)g(task)g(info)g(cap)g(for)
+g(an)g(imp)r(oster)g(of)g Fs(D)r Fw(.)42 b(But)739 4028
+y(if)36 b(the)g(clien)n(t)f(w)n(an)n(ts)g(to)g(ac)n(hiev)n(e)f(that,)k
+(it)e(could)f(just)h(follo)n(w)f(the)h(proto)r(col)e(with)i(the)739
+4128 y(imp)r(oster)27 b(as)g(the)h(destination)g(task.)739
+4401 y Fu(The)d(destination)f(task)i Fs(D)h Fu(is)d(malicious)81
+b Fw(The)22 b(destination)f(task)g(has)g(not)h(as)f(man)n(y)739
+4500 y(p)r(ossibilities)28 b(as)f Fs(C)34 b Fw(to)28
+b(attac)n(k)f(the)h(proto)r(col.)37 b(This)28 b(is)f(b)r(ecause)h(it)g
+(is)g(trusted)g(b)n(y)f Fs(C)6 b Fw(.)39 b(So)739 4600
+y(the)28 b(only)f(participan)n(t)g(that)h Fs(D)i Fw(can)e(try)f(to)h
+(attac)n(k)f(is)g(the)h(serv)n(er)e Fs(S)5 b Fw(.)37
+b(But)28 b(the)h(serv)n(er)c Fs(S)739 4700 y Fw(do)r(es)32
+b(not)g(rely)g(on)g(an)n(y)g(action)f(b)n(y)i Fs(D)r
+Fw(.)51 b Fs(D)34 b Fw(do)r(es)e(not)h(hold)f(an)n(y)g(task)f(info)i
+(caps)f(for)f Fs(S)5 b Fw(.)739 4799 y(The)33 b(only)f(op)r(eration)f
+(it)i(do)r(es)g(is)f(an)h(RPC)f(to)g Fs(S)38 b Fw(accepting)32
+b(the)h(capabilit)n(y)-7 b(,)33 b(and)g(if)g(it)739 4899
+y(omits)f(that)g(it)g(will)g(just)h(not)f(get)g(the)g(capabilit)n(y)f
+(\(the)i(reference)e(will)h(b)r(e)g(cleaned)g(up)739
+4998 y(b)n(y)27 b Fs(C)34 b Fw(or)27 b(b)n(y)g(the)h(serv)n(er)e(when)i
+Fs(C)34 b Fw(dies\).)p eop end
+%%Page: 25 31
+TeXDict begin 25 30 bop 291 282 a Fq(3.1.)63 b(CAP)-7
+b(ABILITIES)1990 b Fw(25)291 515 y(The)18 b(only)g(thing)h(that)f
+Fs(D)j Fw(could)d(try)g(is)g(to)g(pro)n(vide)g(false)g(information)f
+(in)i(the)g Ft(cap_ref_cont_acc)o(ep)o(t)291 615 y Fw(RPC.)29
+b(The)g(information)f(in)i(that)g(RPC)e(is)i(the)f(task)g(ID)h(of)f
+(the)h(clien)n(t)f Fs(C)36 b Fw(and)29 b(the)g(ref-)291
+715 y(erence)h(con)n(tainer)f(ID)i Fs(R)q Fw(.)46 b(The)31
+b(serv)n(er)e(will)i(v)n(erify)f(that)h(the)g(clien)n(t)g
+Fs(C)37 b Fw(has)30 b(previously)291 814 y(created)g(a)g(reference)g
+(con)n(tainer)g(with)h(the)g(ID)h Fs(R)g Fw(that)f(is)g(destined)g(for)
+f Fs(D)r Fw(.)47 b(So)31 b Fs(D)i Fw(will)291 914 y(only)j(b)r(e)h
+(able)f(to)h(accept)f(references)g(that)h(it)g(is)f(gran)n(ted)g
+(access)f(to.)64 b(So)37 b(it)g(can)f(not)291 1013 y(ac)n(hiev)n(e)31
+b(an)n(ything)g(that)i(it)g(could)f(not)g(ac)n(hiev)n(e)f(b)n(y)h
+(follo)n(wing)f(the)i(proto)r(col)e(\(p)r(ossibly)291
+1113 y(the)j(proto)r(col)e(with)j(another)e(clien)n(t\).)56
+b(If)34 b Fs(D)i Fw(accepts)d(capabilities)g(from)h(other)f(trans-)291
+1213 y(actions)c(outside)g(of)h(the)g(proto)r(col,)f(it)h(can)g(only)f
+(cause)g(other)g(transactions)g(in)h(its)g(o)n(wn)291
+1312 y(task)d(to)g(fail.)498 1484 y Fm(If)f(y)n(ou)g(can)h(do)f
+(something)h(wrong)e(and)i(harm)e(y)n(ourself)h(that)h(w)n(a)n(y)-6
+b(,)26 b(then)h(this)f(is)f(called)498 1563 y(\\sho)r(oting)g(y)n
+(ourself)e(in)h(y)n(our)f(fo)r(ot".)498 1662 y(The)h(destination)h
+(task)g Fj(D)g Fm(is)e(w)n(elcome)h(to)g(sho)r(ot)h(itself)e(in)g(its)h
+(fo)r(ot.)291 1939 y Fu(The)31 b(clien)m(t)f Fs(C)38
+b Fu(and)31 b(the)g(destination)f(task)h Fs(D)i Fu(are)f(malicious)81
+b Fw(The)27 b(\014nal)g(ques-)291 2038 y(tion)34 b(w)n(e)f(w)n(an)n(t)g
+(to)h(raise)f(is)h(what)f(can)h(happ)r(en)g(if)h(the)f(clien)n(t)g
+Fs(C)40 b Fw(and)34 b(the)g(destination)291 2138 y(task)c
+Fs(D)i Fw(are)e(malicious.)44 b(Can)31 b Fs(C)36 b Fw(and)31
+b Fs(D)h Fw(co)r(op)r(erate)e(and)g(attac)n(king)f Fs(S)36
+b Fw(in)30 b(a)g(w)n(a)n(y)g(that)291 2237 y Fs(C)k Fw(or)26
+b Fs(D)k Fw(alone)d(could)g(not?)291 2381 y(In)e(the)h(ab)r(o)n(v)n(e)e
+(analysis,)g(there)h(is)h(no)f(place)g(where)f(w)n(e)h(assume)g(an)n(y)
+g(sp)r(eci\014c)g(b)r(eha)n(viour)291 2481 y(of)34 b
+Fs(D)i Fw(to)e(help)h Fs(S)j Fw(in)d(prev)n(en)n(ting)e(an)h(attac)n(k)
+f(on)h Fs(S)5 b Fw(.)56 b(There)34 b(is)g(only)g(one)g(place)f(where)
+291 2580 y(w)n(e)38 b(mak)n(e)h(an)g(assumption)g(for)f
+Fs(C)46 b Fw(in)39 b(the)h(analysis)e(of)h(a)g(malicious)f
+Fs(D)r Fw(.)72 b(If)40 b Fs(D)h Fw(do)r(es)291 2680 y(not)33
+b(accept)g(a)g(reference)f(con)n(tainer,)i(w)n(e)f(said)f(that)i
+Fs(C)40 b Fw(w)n(ould)32 b(clean)h(it)h(up)g(b)n(y)f(calling)291
+2779 y Ft(cap_ref_cont_de)o(str)o(oy)o Fw(.)41 b(So)30
+b(w)n(e)h(ha)n(v)n(e)f(to)g(lo)r(ok)g(at)h(what)g(w)n(ould)f(happ)r(en)
+h(if)h Fs(C)37 b Fw(w)n(ere)291 2879 y(not)27 b(to)h(do)f(that.)291
+3023 y(Luc)n(kily)-7 b(,)31 b(w)n(e)g(co)n(v)n(ered)e(this)j(case)e
+(already)-7 b(.)46 b(It)31 b(is)g(iden)n(tical)g(to)g(the)h(case)e
+(where)h Fs(C)37 b Fw(do)r(es)291 3122 y(not)26 b(ev)n(en)f(tell)i
+Fs(D)h Fw(ab)r(out)e(the)g(reference)g(con)n(tainer)e(and)i(just)h(do)f
+(nothing.)36 b(In)26 b(this)h(case,)291 3222 y(as)e(said)g(b)r(efore,)h
+(the)g(serv)n(er)e(will)h(ev)n(en)n(tually)g(release)f(the)j(reference)
+d(con)n(tainer)h(when)h Fs(C)291 3322 y Fw(dies.)54 b(Before)33
+b(that,)i(it)f(only)f(o)r(ccupies)g(resources)f(in)h(the)h(serv)n(er)e
+(that)i(are)e(asso)r(ciated)291 3421 y(with)c Fs(C)6
+b Fw(.)291 3565 y(This)24 b(analysis)e(is)i(sk)n(etc)n(h)n(y)f(in)h
+(parts,)g(but)h(it)f(co)n(v)n(ers)e(a)i(broad)f(range)f(of)i(p)r
+(ossible)g(attac)n(ks.)291 3664 y(F)-7 b(or)33 b(example,)j(all)e(p)r
+(ossible)g(and)h(relev)-5 b(an)n(t)33 b(com)n(binations)h(of)g(task)g
+(deaths)g(and)g(mali-)291 3764 y(cious)c(tasks)h(are)g(co)n(v)n(ered.)
+46 b(Although)32 b(b)n(y)f(no)g(means)g(complete,)i(it)e(can)h(giv)n(e)
+e(us)h(some)291 3864 y(con\014dence)h(ab)r(out)i(the)f(righ)n(tness)f
+(of)i(the)f(proto)r(col.)53 b(It)33 b(also)f(pro)n(vides)g(a)h(go)r(o)r
+(d)g(set)g(of)291 3963 y(test)24 b(cases)f(that)h(y)n(ou)g(can)f(test)i
+(y)n(our)d(o)n(wn)i(proto)r(cols,)f(and)h(impro)n(v)n(emen)n(ts)f(to)h
+(the)g(ab)r(o)n(v)n(e)291 4063 y(proto)r(col)i(against.)291
+4356 y Fl(3.1.4)112 b(The)38 b(trust)f(rule)291 4556
+y Fw(The)22 b(proto)r(col)f(to)h(cop)n(y)f(a)h(capabilit)n(y)f(from)h
+(one)g(clien)n(t)g(to)g(another)g(task)f(has)h(a)g(dramatic)291
+4656 y(consequence)k(on)h(the)h(design)g(of)f(the)h(Hurd)g(in)n
+(terfaces.)291 4799 y(Because)33 b(the)i(receiv)n(er)e(of)h(the)h
+(capabilit)n(y)f(m)n(ust)h(mak)n(e)f(blo)r(c)n(king)f(calls)h(to)h(the)
+g(serv)n(er)291 4899 y(pro)n(viding)h(the)i(capabilit)n(y)-7
+b(,)40 b(the)e(receiv)n(er)f(of)g(the)i(capabilit)n(y)e
+Fo(must)45 b Fw(trust)37 b(the)i(serv)n(er)291 4998 y(pro)n(viding)26
+b(the)i(capabilit)n(y)-7 b(.)p eop end
+%%Page: 26 32
+TeXDict begin 26 31 bop 739 282 a Fw(26)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))739 515 y Fw(This)19 b(means)f(also:)31 b(If)19
+b(the)h(receiv)n(er)d(of)h(a)h(capabilit)n(y)f(do)r(es)g(not)h(trust)g
+(the)g(serv)n(er)e(pro)n(viding)739 615 y(the)28 b(capabilit)n(y)-7
+b(,)27 b(it)h Fo(must)h(not)35 b Fw(accept)27 b(it.)739
+748 y(The)43 b(consequence)g(is)g(that)h(normally)-7
+b(,)47 b(serv)n(ers)41 b(can)i(not)g(accept)h(capabilities)f(from)739
+847 y(clien)n(ts,)33 b(unless)f(they)g(are)g(pro)n(vided)f(b)n(y)g(a)h
+(sp)r(eci\014c)h(trusted)f(serv)n(er.)48 b(This)33 b(can)e(b)r(e)i(the)
+739 947 y Ft(task)26 b Fw(or)h Ft(auth)f Fw(serv)n(er)f(for)i(example.)
+739 1080 y(This)c(rule)h(is)f(ev)n(en)g(true)h(if)g(the)g(receiv)n(er)e
+(do)r(es)h(not)g(actually)g(w)n(an)n(t)g(to)h(use)f(the)h(capabilit)n
+(y)739 1180 y(for)c(an)n(ything.)33 b(Just)20 b(accepting)g(the)h
+(capabilit)n(y)e(requires)g(trusting)h(the)g(serv)n(er)f(pro)n(viding)
+739 1279 y(it)28 b(already)-7 b(.)739 1412 y(In)23 b(the)g(Hurd)g(on)f
+(Mac)n(h,)h(p)r(orts)g(\(whic)n(h)g(are)e(analogous)g(to)h
+(capabilities)g(in)h(this)g(con)n(text\))739 1512 y(can)28
+b(b)r(e)g(passed)f(around)g(freely)-7 b(.)38 b(There)28
+b(is)g(no)g(securit)n(y)f(risk)g(in)i(accepting)e(a)h(p)r(ort)g(from)
+739 1611 y(an)n(y)g(source,)g(b)r(ecause)h(the)h(k)n(ernel)e(implemen)n
+(ts)h(them)h(as)e(protected)h(ob)5 b(jects.)41 b(Using)29
+b(a)739 1711 y(p)r(ort)i(b)n(y)h(sending)f(blo)r(c)n(king)g(messages)f
+(to)i(it)g(requires)e(trust,)j(but)f(simply)g(storing)f(the)739
+1811 y(p)r(ort)c(on)h(the)g(serv)n(er)d(side)j(do)r(es)f(not.)739
+1943 y(This)c(is)h(di\013eren)n(t)g(in)g(the)g(Hurd)f(on)h(L4:)34
+b(A)24 b(serv)n(er)e(m)n(ust)h(not)h(accept)f(capabilities)g(unless)739
+2043 y(it)39 b(trusts)f(the)h(serv)n(er)e(pro)n(viding)g(them.)70
+b(Because)38 b(capabilities)g(are)f(used)i(for)f(man)n(y)739
+2143 y(di\013eren)n(t)e(purp)r(oses)f(\(remote)g(ob)5
+b(jects,)37 b(authen)n(tication,)h(iden)n(ti\014cation\),)g(one)d(has)g
+(to)739 2242 y(b)r(e)f(v)n(ery)e(careful)h(in)g(designing)g(the)g(in)n
+(terfaces.)53 b(The)34 b(Hurd)f(in)n(terfaces)g(on)g(Mac)n(h)f(use)739
+2342 y(p)r(orts)23 b(in)h(a)f(w)n(a)n(y)f(that)i(is)g(not)f(p)r
+(ossible)g(on)h(L4.)35 b(Suc)n(h)23 b(in)n(terfaces)g(need)h(to)f(b)r
+(e)h(redesigned.)739 2475 y(Often,)f(redesigning)e(suc)n(h)g(an)h(in)n
+(terface)f(also)g(\014xes)g(some)h(other)f(securit)n(y)g(problems)g
+(that)739 2574 y(exists)30 b(with)h(in)g(the)g(Hurd)g(on)f(L4,)h(in)g
+(particular)f(DoS)g(attac)n(ks.)45 b(A)31 b(go)r(o)r(d)f(part)g(of)h
+(this)739 2674 y(pap)r(er)e(is)h(ab)r(out)f(redesigning)f(the)i(Hurd)g
+(to)f(a)n(v)n(oid)f(storing)h(un)n(trusted)h(capabilities)f(on)739
+2774 y(the)f(serv)n(er)e(side.)946 2922 y Fm(Examples)e(are:)1052
+3058 y Fe(\017)42 b Fm(The)34 b(new)g(authen)n(tication)j(proto)r(col,)
+f(whic)n(h)e(eliminates)f(the)i(need)f(for)f(a)h(ren-)1129
+3137 y(dezv)n(ous)23 b(p)r(ort)e(and)h(is)e(not)i(only)f(faster,)g(but)
+h(also)f(do)r(es)h(not)f(require)g(the)h(serv)n(er)f(to)1129
+3216 y(blo)r(c)n(k)j(on)g(the)h(clien)n(t)f(an)n(ymore)g(\(see)h
+(section)f(6.1)g(on)g(page)h(51\).)1052 3322 y Fe(\017)42
+b Fm(The)29 b(signal)f(handling,)h(whic)n(h)g(do)r(es)f(not)h(require)f
+(the)h Fh(proc)g Fm(serv)n(er)f(to)h(hold)g(the)1129
+3401 y(signal)23 b(p)r(ort)h(for)f(ev)n(ery)i(task)f(an)n(ymore)g
+(\(see)h(section)f(6.2.1)g(on)g(page)h(54\).)1052 3507
+y Fe(\017)42 b Fm(The)26 b(new)g(exec)h(proto)r(col,)f(whic)n(h)g
+(eliminates)f(the)h(need)h(to)f(pass)f(all)g(capabilities)1129
+3586 y(that)31 b(need)f(to)g(b)r(e)g(transfered)g(to)g(the)h(new)e
+(executable)j(from)d(the)h(old)g(program)1129 3665 y(to)c(the)f
+(\014lesystem)h(serv)n(er,)e(and)h(then)h(to)g(the)f
+Fh(exec)h Fm(serv)n(er)f(\(see)h(section)f(6.2.3)g(on)1129
+3744 y(page)g(55\).)1052 3850 y Fe(\017)42 b Fm(The)27
+b(new)g(w)n(a)n(y)g(to)g(implemen)n(t)g(Unix)f(Domain)h(So)r(c)n(k)n
+(ets,)h(whic)n(h)f(don't)g(require)f(a)1129 3929 y(trusted)20
+b(system)f(serv)n(er,)g(so)f(that)i(descriptor)f(passing)g(\(whic)n(h)h
+(is)e(really)g(capabilit)n(y)1129 4008 y(passing\))24
+b(can)h(w)n(ork)e(\(see)i(section)f(6.3)g(on)g(page)h(58.)1052
+4114 y Fe(\017)42 b Fm(The)33 b(w)n(a)n(y)g(paren)n(t)g(and)g(c)n(hild)
+f(\014lesystem)h(are)g(link)n(ed)f(to)h(eac)n(h)h(other,)h(in)d(other)
+1129 4193 y(w)n(ords:)f(ho)n(w)24 b(moun)n(ting)h(a)e(\014lesystem)i(w)
+n(orks)e(\(see)h(section)h(6.5.1)f(on)g(page)g(59\).)1052
+4300 y Fe(\017)42 b Fm(The)23 b(replacemen)n(t)g(for)f(the)h
+Fh(file_reparent\(\))j Fm(RPC)c(\(see)h(section)h(6.5.2)e(on)g(page)
+1129 4378 y(60\).)739 4684 y Fn(3.2)135 b(Sync)l(hronous)44
+b(IPC)739 4899 y Fw(The)35 b(Hurd)g(only)g(needs)f(sync)n(hronous)f
+(IPC.)i(Async)n(hronous)e(IPC)i(is)g(usually)f(not)h(re-)739
+4998 y(quired.)h(An)28 b(exception)g(are)e(noti\014cations)h(\(see)h(b)
+r(elo)n(w\).)p eop end
+%%Page: 27 33
+TeXDict begin 27 32 bop 291 282 a Fq(3.3.)63 b(NOTIFICA)-7
+b(TIONS)1909 b Fw(27)291 515 y(There)35 b(are)f(p)r(ossibly)h(some)g
+(places)g(in)h(the)g(Hurd)g(source)e(co)r(de)h(where)g(async)n(hronous)
+291 615 y(IPC)23 b(is)g(assumed.)35 b(These)24 b(m)n(ust)g(b)r(e)g
+(replaced)f(with)h(di\013eren)n(t)g(strategies.)34 b(One)23
+b(example)291 715 y(is)k(the)h(implemen)n(tation)g(of)f(select\(\))h
+(in)g(the)g(GNU)h(C)e(library)-7 b(.)498 870 y Fm(A)31
+b(naiv)n(e)g(implemen)n(tation)h(w)n(ould)e(use)h(one)h(thread)f(p)r
+(er)g(capabilit)n(y)g(to)g(select)h(on.)52 b(A)498 949
+y(b)r(etter)21 b(one)g(w)n(ould)f(com)n(bine)g(all)g(capabilities)g
+(implemen)n(ted)g(b)n(y)h(the)f(same)g(serv)n(er)g(in)f(one)498
+1027 y(arra)n(y)24 b(and)g(use)g(one)g(thread)h(p)r(er)e(serv)n(er.)498
+1123 y(A)17 b(more)g(complex)h(sc)n(heme)g(migh)n(t)f(let)h(the)g(serv)
+n(er)f(pro)r(cess)g(select\(\))i(calls)e(async)n(hronously)498
+1202 y(and)24 b(rep)r(ort)g(the)h(result)e(bac)n(k)i(via)e
+(noti\014cations.)291 1377 y Fw(In)39 b(other)g(cases)f(the)h(Hurd)g
+(receiv)n(es)f(the)i(reply)e(async)n(hronously)f(from)i(sending)g(the)
+291 1477 y(message.)46 b(This)31 b(w)n(orks)f(\014ne)h(in)h(Mac)n(h,)g
+(b)r(ecause)f(send-once)f(righ)n(ts)g(are)h(used)g(as)f(reply)291
+1577 y(p)r(orts)36 b(and)g(Mac)n(h)g(guaran)n(tees)e(to)j(deliv)n(er)f
+(the)g(reply)g(message,)i(ignoring)d(the)i(k)n(ernel)291
+1676 y(queue)21 b(limit.)36 b(In)22 b(L4,)h(no)e(messages)f(are)h
+(queued)h(and)g(suc)n(h)f(places)g(need)h(to)g(b)r(e)g(rewritten)291
+1776 y(in)27 b(a)h(di\013eren)n(t)f(w)n(a)n(y)g(\(for)g(example)g
+(using)g(extra)g(threads\).)498 1931 y Fm(What)j(happ)r(ens)g(if)e(a)h
+(clien)n(t)g(do)r(es)g(not)h(go)f(in)n(to)g(the)h(receiv)n(e)f(phase)h
+(after)e(a)h(send,)h(but)498 2010 y(instead)23 b(do)r(es)g(another)g
+(send,)g(and)f(another)i(one,)e(quic)n(kly)h(man)n(y)g(sends,)f(as)g
+(fast)g(as)g(p)r(os-)498 2089 y(sible?)33 b(A)24 b(carelessly)g
+(written)h(serv)n(er)f(migh)n(t)g(create)i(w)n(ork)n(er)e(threads)h
+(for)e(eac)n(h)j(request.)498 2168 y(Instead,)20 b(the)e(serv)n(er)e
+(should)h(probably)h(reject)f(to)h(accept)h(a)e(request)h(from)e(a)h
+(clien)n(t)g(thread)498 2247 y(that)26 b(already)f(has)h(a)f(p)r
+(ending)g(request,)h(so)f(the)h(n)n(um)n(b)r(er)f(of)f(w)n(ork)n(er)h
+(threads)g(is)g(limited)498 2326 y(to)f(the)h(n)n(um)n(b)r(er)f(of)f
+(clien)n(t)h(threads.)498 2421 y(This)e(also)g(mak)n(es)h(in)n
+(terrupting)g(an)g(RPC)f(op)r(eration)h(easier)f(\(the)i(clien)n(t)f
+(thread)g(ID)f(can)498 2500 y(b)r(e)i(used)g(to)h(iden)n(tify)e(the)i
+(request)f(to)h(in)n(terrupt\).)291 2809 y Fn(3.3)135
+b(Noti\014cations)291 3027 y Fw(Noti\014cations)34 b(to)h(un)n(trusted)
+g(tasks)f(happ)r(en)h(frequen)n(tly)-7 b(.)59 b(One)35
+b(case)f(is)h(ob)5 b(ject)35 b(death)291 3126 y(noti\014cations,)19
+b(in)g(particular)e(task)h(death)g(noti\014cations.)33
+b(Other)18 b(cases)f(migh)n(t)i(b)r(e)f(select\(\))291
+3226 y(or)26 b(noti\014cations)h(of)h(c)n(hanges)e(to)h(the)h
+(\014lesystem.)291 3361 y(The)21 b(console)f(uses)h(noti\014cations)g
+(to)g(broadcast)f(c)n(hange)g(ev)n(en)n(ts)h(to)g(the)h(console)e(con)n
+(ten)n(t,)291 3461 y(but)25 b(it)g(also)e(uses)h(shared)g(memory)f(to)i
+(broadcast)e(the)h(actual)g(data,)h(so)f(not)g(all)h(noti\014ca-)291
+3560 y(tions)e(need)h(to)g(b)r(e)g(receiv)n(ed)e(for)h(functional)h(op)
+r(eration.)35 b(Still,)25 b(at)f(least)f(one)g(noti\014cation)291
+3660 y(is)33 b(queued)i(b)n(y)e(Mac)n(h,)i(and)f(this)g(is)g
+(su\016cien)n(t)g(for)g(the)g(console)f(to)h(w)n(ak)n(eup)f(whenev)n
+(er)291 3759 y(c)n(hanges)26 b(happ)r(ened,)i(ev)n(en)f(if)h(the)g(c)n
+(hanges)e(can)h(not)h(b)r(e)g(pro)r(cessed)e(immediately)-7
+b(.)291 3895 y(F)g(rom)31 b(the)i(serv)n(ers)d(p)r(oin)n(t)i(of)h
+(view,)g(noti\014cations)e(are)h(simply)g(messages)e(with)j(a)f(send)
+291 3994 y(and)27 b(xfer)g(timeout)h(of)g(0)f(and)g(without)i(a)e
+(receiv)n(e)f(phase.)291 4129 y(F)-7 b(or)28 b(the)h(clien)n(t,)g(ho)n
+(w)n(ev)n(er,)e(there)h(is)h(only)f(one)h(w)n(a)n(y)e(to)i(ensure)f
+(that)h(it)g(will)g(receiv)n(e)f(the)291 4229 y(noti\014cation:)40
+b(It)30 b(m)n(ust)g(ha)n(v)n(e)f(the)h(receiving)e(thread)i(in)g(the)g
+(receiv)n(e)e(phase)h(of)h(an)f(IPC.)291 4329 y(While)d(this)g(thread)g
+(is)g(pro)r(cessing)e(the)j(noti\014cation)e(\(ev)n(en)h(if)g(it)h(is)f
+(only)f(delegating)g(it\),)291 4428 y(it)34 b(migh)n(t)g(b)r(e)g
+(preempted)g(and)g(another)f(\(or)h(the)g(same\))g(serv)n(er)e(migh)n
+(t)i(try)g(to)f(send)h(a)291 4528 y(second)27 b(noti\014cation.)498
+4683 y Fm(It)35 b(is)e(an)h(op)r(en)g(c)n(hallenge)h(ho)n(w)f(the)h
+(clien)n(t)f(can)g(ensure)g(that)h(it)f(either)g(receiv)n(es)g(the)498
+4762 y(noti\014cation)e(or)e(at)g(least)h(kno)n(ws)f(that)h(it)f
+(missed)g(it,)h(while)e(the)i(serv)n(er)f(remains)f(sa)n(v)n(e)498
+4841 y(from)20 b(p)r(oten)n(tial)i(DoS)f(attac)n(ks.)32
+b(The)21 b(usual)g(strategy)-6 b(,)22 b(to)f(giv)n(e)g(receiv)n(ers)g
+(of)g(noti\014cations)498 4920 y(a)33 b(higher)h(sc)n(heduling)g
+(priorit)n(y)e(than)i(the)g(sender,)i(is)c(not)i(usable)f(in)g(a)h
+(system)f(with)498 4998 y(un)n(trusted)c(receiv)n(ers)g(\(lik)n(e)f
+(the)h(Hurd\).)44 b(The)28 b(b)r(est)h(strategy)g(determined)g(so)f
+(far)f(is)h(to)p eop end
+%%Page: 28 34
+TeXDict begin 28 33 bop 739 282 a Fw(28)489 b Fq(CHAPTER)27
+b(3.)64 b(INTER-PR)n(OCESS)26 b(COMMUNICA)-7 b(TION)28
+b(\(IPC\))946 515 y Fm(ha)n(v)n(e)i(the)g(serv)n(ers)f(retry)f(to)i
+(send)f(the)h(noti\014cation)g(sev)n(eral)f(times)g(with)g(small)f
+(dela)n(ys)946 594 y(in)n(b)r(et)n(w)n(een.)63 b(This)32
+b(can)j(increase)e(the)i(c)n(hance)g(that)f(a)g(clien)n(t)g(is)f(able)g
+(to)h(receiv)n(e)h(the)946 673 y(noti\014cation.)58 b(Ho)n(w)n(ev)n
+(er,)34 b(there)e(is)g(still)e(the)j(question)g(what)g(a)e(serv)n(er)h
+(can)h(do)f(if)f(the)946 752 y(clien)n(t)25 b(is)e(not)h(ready)-6
+b(.)946 847 y(An)20 b(alternativ)n(e)h(migh)n(t)f(b)r(e)g(a)g(global)g
+(trusted)g(noti\014cation)i(serv)n(er)d(that)i(runs)e(at)i(a)e(higher)
+946 926 y(sc)n(heduling)h(priorit)n(y)e(and)h(records)f(whic)n(h)h
+(serv)n(ers)f(ha)n(v)n(e)i(noti\014cations)g(for)e(whic)n(h)h(clien)n
+(ts,)946 1005 y(and)j(that)g(can)f(b)r(e)g(used)g(b)n(y)g(clien)n(ts)g
+(to)h(b)r(e)f(noti\014ed)h(of)e(p)r(ending)i(noti\014cations.)31
+b(Then)22 b(the)946 1084 y(clien)n(ts)i(can)h(p)r(oll)e(the)i
+(noti\014cations)g(from)d(the)j(serv)n(ers.)p eop end
+%%Page: 29 35
+TeXDict begin 29 34 bop 291 1172 a Fp(Chapter)64 b(4)291
+1622 y Fv(Threads)76 b(and)i(T)-19 b(asks)291 2087 y
+Fw(The)37 b Ft(task)e Fw(serv)n(er)g(will)i(pro)n(vide)f(the)i(abilit)n
+(y)e(to)h(create)f(tasks)h(and)f(threads,)j(and)e(to)291
+2187 y(destro)n(y)26 b(them.)498 2338 y Fm(In)18 b(L4,)h(only)f
+(threads)h(in)e(the)i(privileged)f(address)f(space)i(\(the)g(ro)r
+(otserv)n(er\))g(are)e(allo)n(w)n(ed)i(to)498 2417 y(manipulate)j
+(threads)f(and)h(address)f(spaces)g(\(using)g(the)h Fc(ThreadContr)o
+(ol)f Fm(and)g Fc(Sp)l(a)o(ce-)498 2496 y(Contr)o(ol)j
+Fm(system)h(calls\).)32 b(The)25 b Fh(task)g Fm(serv)n(er)f(will)e(use)
+j(the)g(system)f(call)g(wrapp)r(ers)g(pro-)498 2575 y(vided)g(b)n(y)g
+(the)h(ro)r(otserv)n(er,)e(see)h(section)h(2.6)f(on)g(page)g(7.)291
+2747 y Fw(The)j Ft(task)f Fw(serv)n(er)g(pro)n(vides)g(three)i
+(di\013eren)n(t)f(capabilit)n(y)g(t)n(yp)r(es.)291 2995
+y Fu(T)-8 b(ask)39 b(con)m(trol)g(capabilities)82 b Fw(If)34
+b(a)f(new)h(task)f(is)h(created,)g(it)g(is)g(alw)n(a)n(ys)d(asso)r
+(ciated)291 3095 y(with)24 b(a)g(task)f(con)n(trol)g(capabilit)n(y)-7
+b(.)35 b(The)24 b(task)g(con)n(trol)e(capabilit)n(y)i(can)f(b)r(e)i
+(used)f(to)g(create)291 3194 y(and)h(destro)n(y)g(threads)h(in)g(the)g
+(task,)g(and)g(destro)n(y)f(the)h(task)g(itself.)37 b(So)25
+b(the)i(task)e(con)n(trol)291 3294 y(capabilit)n(y)33
+b(giv)n(es)g(the)i(o)n(wner)e(of)h(a)g(task)g(con)n(trol)f(o)n(v)n(er)g
+(it.)57 b(T)-7 b(ask)33 b(con)n(trol)g(capabilities)291
+3394 y(ha)n(v)n(e)20 b(the)i(side)g(e\013ect)h(that)f(the)g(task)f(ID)i
+(of)e(this)h(task)g(is)f(not)h(reused,)h(as)e(long)g(as)g(the)h(task)
+291 3493 y(con)n(trol)i(capabilit)n(y)i(is)g(not)g(released.)35
+b(Th)n(us,)26 b(ha)n(ving)f(a)h(task)g(con)n(trol)f(capabilit)n(y)g
+(a\013ects)291 3593 y(the)e(global)e(namespace)h(of)h(task)f(IDs.)36
+b(If)23 b(a)f(task)h(is)f(destro)n(y)n(ed,)h(task)f(death)h
+(noti\014cations)291 3692 y(are)j(sen)n(t)i(to)f(holders)g(of)g(task)g
+(con)n(trol)g(capabilities)g(for)g(that)h(task.)498 3843
+y Fm(A)17 b(task)g(is)g(also)g(implicitely)f(destro)n(y)n(ed)i(when)g
+(the)g(last)f(task)g(con)n(trol)h(capabilit)n(y)g(reference)498
+3922 y(is)23 b(released.)291 4171 y Fu(T)-8 b(ask)39
+b(info)e(capabilities)82 b Fw(An)n(y)34 b(task)e(can)h(create)f(task)h
+(info)g(capabilities)g(for)f(other)291 4270 y(tasks.)i(Suc)n(h)22
+b(task)g(info)h(capabilities)f(are)f(used)i(mainly)f(in)h(the)g(IPC)f
+(system)g(\(see)g(section)291 4370 y(3)33 b(on)g(page)g(11\).)55
+b(T)-7 b(ask)33 b(info)h(capabilities)f(ha)n(v)n(e)g(the)h(side)g
+(e\013ect)g(that)g(the)g(task)g(ID)g(of)291 4470 y(this)26
+b(task)f(is)h(not)g(reused,)g(as)f(long)g(as)g(the)i(task)e(info)h
+(capabilit)n(y)f(is)h(not)g(released.)35 b(Th)n(us,)291
+4569 y(ha)n(ving)25 b(a)h(task)f(info)i(capabilit)n(y)e(a\013ects)h
+(the)h(global)e(namespace)g(of)i(task)e(IDs.)37 b(If)27
+b(a)e(task)291 4669 y(is)f(destro)n(y)n(ed,)g(task)f(death)i
+(noti\014cations)f(are)f(sen)n(t)i(to)f(holders)f(of)i(task)f(info)g
+(capabilities)291 4769 y(for)j(that)h(task.)498 4920
+y Fm(Because)22 b(of)f(that,)h(holding)f(task)h(info)e(capabilities)h
+(m)n(ust)g(b)r(e)h(restricted)f(someho)n(w.)31 b(Sev-)498
+4998 y(eral)23 b(strategies)i(can)f(b)r(e)g(tak)n(en:)1681
+5208 y Fw(29)p eop end
+%%Page: 30 36
+TeXDict begin 30 35 bop 739 282 a Fw(30)1278 b Fq(CHAPTER)27
+b(4.)64 b(THREADS)28 b(AND)h(T)-7 b(ASKS)1052 515 y Fe(\017)42
+b Fm(T)-6 b(ask)24 b(death)i(noti\014cations)g(can)e(b)r(e)h
+(monitored.)33 b(If)24 b(there)h(is)e(no)h(ac)n(kno)n(wdgemen)n(t)1129
+594 y(within)d(a)g(certain)g(time)g(p)r(erio)r(d,)f(the)i
+Fh(task)g Fm(serv)n(er)e(could)h(b)r(e)h(allo)n(w)n(ed)e(to)i(reuse)f
+(the)1129 673 y(task)27 b(ID)f(an)n(yw)n(a)n(y)-6 b(.)39
+b(This)26 b(is)f(not)i(a)f(go)r(o)r(d)h(strategy)g(b)r(ecause)g(it)f
+(can)h(considerably)1129 752 y(w)n(eak)n(en)j(the)f(securit)n(y)f(of)g
+(the)h(system)f(\(capabilities)h(migh)n(t)g(b)r(e)f(leak)n(ed)h(to)g
+(tasks)1129 831 y(whic)n(h)24 b(reuse)g(suc)n(h)g(a)g(task)g(ID)g
+(reclaimed)g(b)n(y)g(force\).)1052 938 y Fe(\017)42 b
+Fm(The)31 b(pro)r(c)g(serv)n(er)g(can)h(sho)n(w)f(dead)g(task)h(IDs)f
+(whic)n(h)g(are)g(not)g(released)h(y)n(et,)h(in)1129
+1017 y(analogy)c(to)f(the)g(zom)n(bie)g(pro)r(cesses)g(in)f(Unix.)43
+b(It)28 b(can)g(also)g(mak)n(e)g(a)n(v)l(ailable)g(the)1129
+1096 y(list)18 b(of)h(tasks)g(whic)n(h)g(prev)n(en)n(t)h(reusing)e(the)
+i(task)g(ID,)e(to)h(allo)n(w)g(users)f(or)g(the)i(system)1129
+1175 y(administrator)k(to)g(clean)g(up)g(man)n(ually)-6
+b(.)1052 1283 y Fe(\017)42 b Fm(Quotas)24 b(can)f(b)r(e)h(used)f(to)g
+(punish)g(users)g(whic)n(h)g(do)g(not)h(ac)n(kno)n(wledge)h(task)e
+(death)1129 1362 y(timely)-6 b(.)30 b(F)-6 b(or)21 b(example,)h(if)f
+(the)h(n)n(um)n(b)r(er)f(of)g(tasks)h(the)g(user)f(is)f(allo)n(w)n(ed)i
+(to)g(create)g(is)1129 1440 y(restricted,)27 b(the)h(task)f(info)f
+(caps)h(that)h(the)g(user)e(holds)h(for)e(dead)j(tasks)f(could)g(b)r(e)
+1129 1519 y(coun)n(ted)f(to)n(w)n(ard)e(that)h(limit.)1052
+1627 y Fe(\017)42 b Fm(An)n(y)19 b(task)h(could)f(b)r(e)g(restricted)g
+(to)h(as)f(man)n(y)g(task)g(ID)g(references)h(as)e(there)i(are)f(liv)n
+(e)1129 1706 y(tasks)28 b(in)f(the)h(system,)g(plus)f(some)h(slac)n(k.)
+42 b(That)28 b(w)n(ould)g(prev)n(en)n(t)g(the)g(task)g(from)1129
+1785 y(creating)21 b(new)f(task)g(info)f(caps)h(if)f(it)g(do)r(es)h
+(not)g(release)g(old)g(ones)g(from)e(death)j(tasks.)1129
+1864 y(The)27 b(slac)n(k)g(w)n(ould)f(b)r(e)h(pro)n(vided)g(to)g(not)g
+(unnecessarily)g(slo)n(w)f(do)n(wn)h(a)g(task)g(that)1129
+1942 y(pro)r(cesses)h(task)h(death)g(noti\014cations)g(async)n
+(hronously)g(to)f(making)g(connections)1129 2021 y(with)c(new)g(tasks.)
+946 2160 y(In)29 b(particular)e(the)i(last)e(t)n(w)n(o)i(approac)n(hes)
+g(should)f(pro)r(of)f(to)h(b)r(e)h(e\013ectiv)n(e)g(in)e(pro)n(viding)
+946 2239 y(an)d(incen)n(tiv)n(e)h(for)e(tasks)i(to)f(release)g(task)g
+(info)f(caps)h(they)h(do)f(not)h(need)f(an)n(ymore.)739
+2487 y Fu(T)-8 b(ask)32 b(manager)f(capabilit)m(y)84
+b Fw(A)28 b(task)e(is)h(a)g(relativ)n(ely)e(simple)i(ob)5
+b(ject,)27 b(compared)f(to)739 2586 y(a)d(full)i(blo)n(wn)e(POSIX)g
+(pro)r(cess,)h(for)f(example.)35 b(As)24 b(the)g Ft(task)f
+Fw(serv)n(er)f(is)h(enforced)g(system)739 2686 y(co)r(de,)35
+b(the)e(Hurd)h(do)r(es)f(not)g(imp)r(ose)g(POSIX)g(pro)r(cess)f(seman)n
+(tics)h(in)g(the)h(task)f(serv)n(er.)739 2785 y(Instead,)38
+b(POSIX)e(pro)r(cess)f(seman)n(tics)h(are)f(implemen)n(ted)i(in)g(a)f
+(di\013eren)n(t)g(serv)n(er,)h(the)739 2885 y(pro)r(c)c(serv)n(er)e
+(\(see)i(also)f(section)h(6.2)g(on)g(page)f(54\).)53
+b(T)-7 b(o)33 b(allo)n(w)g(the)g Ft(proc)f Fw(serv)n(er)f(to)j(do)739
+2985 y(its)26 b(w)n(ork,)g(it)h(needs)f(to)g(b)r(e)h(able)f(to)g(get)g
+(the)h(task)f(con)n(trol)f(capabilit)n(y)h(for)g(an)n(y)f(task,)h(and)
+739 3084 y(gather)h(other)i(statistics)f(ab)r(out)h(them.)40
+b(F)-7 b(urthermore,)28 b(there)h(m)n(ust)f(b)r(e)h(the)h(p)r
+(ossibilit)n(y)739 3184 y(to)35 b(install)g(quota)g(mec)n(hanisms)f
+(and)h(other)g(monitoring)f(systems.)59 b(The)35 b Ft(task)f
+Fw(serv)n(er)739 3284 y(pro)n(vides)26 b(a)h(task)g(manager)f
+(capabilit)n(y)-7 b(,)26 b(that)i(allo)n(ws)e(the)i(holder)f(of)g(that)
+h(capabilit)n(y)e(to)739 3383 y(con)n(trol)g(the)j(b)r(eha)n(viour)d
+(of)i(the)g Ft(task)e Fw(serv)n(er)g(and)i(get)g(access)e(to)i(the)g
+(information)f(and)739 3483 y(ob)5 b(jects)27 b(it)h(pro)n(vides.)946
+3633 y Fm(F)-6 b(or)21 b(example,)h(the)g(task)g(manager)g(capabilit)n
+(y)g(could)f(b)r(e)h(used)f(to)h(install)e(a)i(p)r(olicy)f(capa-)946
+3712 y(bilit)n(y)f(that)h(is)e(used)h(b)n(y)g(the)g Fh(task)h
+Fm(serv)n(er)e(to)h(mak)n(e)h(up)r(calls)e(to)h(a)g(p)r(olicy)g(serv)n
+(er)f(whenev)n(er)946 3790 y(a)j(new)g(task)g(or)e(thread)j(is)d
+(created.)32 b(The)22 b(p)r(olicy)f(serv)n(er)g(could)h(then)g
+(indicate)g(if)f(the)h(cre-)946 3869 y(ation)28 b(of)e(the)h(task)g(or)
+f(thread)i(is)d(allo)n(w)n(ed)i(b)n(y)g(that)h(user.)39
+b(F)-6 b(or)26 b(this)g(to)h(w)n(ork,)g(the)g Fh(task)946
+3948 y Fm(serv)n(er)f(itself)f(do)r(es)h(not)g(need)h(to)f(kno)n(w)g
+(ab)r(out)h(the)g(concept)g(of)f(a)g(user,)f(or)g(the)i(p)r(olicies)946
+4027 y(that)e(the)g(p)r(olicy)f(serv)n(er)f(implemen)n(ts.)946
+4120 y(No)n(w)28 b(that)h(I)f(am)g(writing)f(this,)h(I)g(realize)f
+(that)i(without)g(an)n(y)f(further)f(supp)r(ort)i(b)n(y)f(the)946
+4199 y Fh(task)f Fm(serv)n(er,)f(the)h(p)r(olicy)f(serv)n(er)f(w)n
+(ould)h(b)r(e)h(restricted)f(to)g(the)h(task)g(and)f(thread)h(ID)f(of)
+946 4278 y(the)k(caller)e(\(or)h(rather)f(the)i(task)f(con)n(trol)g
+(capabilit)n(y)h(used\))f(to)g(mak)n(e)g(its)g(decision.)46
+b(A)946 4357 y(more)31 b(capabilit)n(y)h(orien)n(ted)g(approac)n(h)g(w)
+n(ould)f(then)h(not)g(b)r(e)f(p)r(ossible.)53 b(This)30
+b(requires)946 4436 y(more)24 b(though)n(t.)946 4529
+y(The)h(whole)e(task)i(manager)f(in)n(terface)g(is)f(not)i(written)f(y)
+n(et.)739 4700 y Fw(When)29 b(creating)e(a)h(new)g(task,)g(the)h
+Ft(task)e Fw(serv)n(er)g(allo)r(cates)g(a)h(new)g(task)g(ID)h(for)f
+(it.)39 b(The)739 4799 y(task)27 b(ID)i(will)f(b)r(e)h(used)f(as)f(the)
+i(v)n(ersion)e(\014eld)h(of)g(the)g(thread)g(ID)h(of)f(all)g(threads)f
+(created)739 4899 y(in)32 b(the)h(task.)49 b(This)33
+b(allo)n(ws)d(the)j(recipien)n(t)e(of)h(a)g(message)f(to)h(v)n(erify)f
+(the)i(sender's)e(task)739 4998 y(ID)d(e\016cien)n(tly)g(and)f(easily)
+-7 b(.)p eop end
+%%Page: 31 37
+TeXDict begin 31 36 bop 291 282 a Fq(4.1.)63 b(A)n(CCOUNTING)2002
+b Fw(31)498 515 y Fm(The)23 b(v)n(ersion)g(\014eld)h(is)e(14)h(bit)g
+(on)h(32-bit)f(arc)n(hitectures,)h(and)f(32)h(bit)f(on)g(64)h(bit)f
+(arc)n(hitec-)498 594 y(tures.)45 b(Because)30 b(the)f(lo)n(w)n(er)f
+(six)g(bits)g(m)n(ust)h(not)g(b)r(e)f(all)g(zero)h(\(to)g(mak)n(e)g
+(global)f(thread)498 673 y(IDs)21 b(di\013eren)n(t)g(from)e(lo)r(cal)i
+(thread)g(IDs\),)h(the)f(n)n(um)n(b)r(er)g(of)f(a)n(v)l(ailable)h(task)
+g(IDs)g(is)e(2)2738 650 y Fi(14)2813 673 y Fe(\000)9
+b Fm(2)2912 650 y Fi(8)498 752 y Fm(resp.)31 b(2)710
+728 y Fi(32)791 752 y Fe(\000)16 b Fm(2)897 728 y Fi(2)931
+752 y Fm(6.)498 849 y(If)30 b(sev)n(eral)f(systems)h(are)g(running)g
+(in)f(parallel)g(on)h(the)h(same)f(host,)h(they)g(migh)n(t)f(share)498
+928 y(thread)25 b(IDs)e(b)n(y)h(enco)r(ding)h(the)g(system)f(ID)g(in)f
+(the)i(upp)r(er)f(bits)f(of)h(the)g(thread)h(n)n(um)n(b)r(er.)291
+1110 y Fw(T)-7 b(ask)27 b(IDs)g(will)h(b)r(e)h(reused)e(only)g(if)h
+(there)g(are)f(no)g(task)g(con)n(trol)g(or)f(info)i(capabilities)f(for)
+291 1210 y(that)f(task)g(ID)g(held)h(b)n(y)e(an)n(y)h(task)f(in)i(the)f
+(system.)37 b(T)-7 b(o)25 b(supp)r(ort)h(b)r(o)r(otstrapping)g(an)f
+(IPC)291 1309 y(connection)30 b(\(see)h(section)f(3.1.1)g(on)h(page)f
+(14\),)h(the)g Ft(task)f Fw(serv)n(er)f(will)i(dela)n(y)f(reusing)g(a)
+291 1409 y(task)d(ID)h(as)f(long)g(as)f(p)r(ossible.)498
+1570 y Fm(This)d(is)f(similar)g(to)i(ho)n(w)f(PIDs)h(are)f(generated)i
+(in)e(Unix.)31 b(Although)24 b(it)f(is)g(attempted)j(to)498
+1649 y(k)n(eep)g(PIDs)e(small)g(for)g(ease)h(of)f(use,)h(PIDs)f(are)h
+(not)g(reused)g(immediately)-6 b(.)34 b(Instead,)26 b(the)498
+1728 y(PID)k(is)e(incremen)n(ted)j(up)e(to)h(a)f(certain)h(maxim)n(um)f
+(n)n(um)n(b)r(er,)i(and)e(only)h(then)g(smaller)498 1807
+y(PID)24 b(v)l(alues)g(are)g(reused)g(again.)498 1904
+y(As)h(task)h(IDs)f(are)h(not)g(a)f(user)g(in)n(terface,)h(there)h(is)d
+(no)i(need)g(to)g(k)n(eep)h(them)f(small.)35 b(The)498
+1983 y(whole)22 b(a)n(v)l(ailable)g(range)f(can)i(b)r(e)e(used)h(to)g
+(dela)n(y)g(reusing)f(a)h(task)g(ID)f(as)h(long)f(as)h(p)r(ossible.)291
+2165 y Fw(When)k(creating)f(a)g(new)h(task,)f(the)i Ft(task)d
+Fw(serv)n(er)g(also)g(has)i(to)f(create)g(the)h(initial)g(thread.)291
+2265 y(This)36 b(thread)h(will)g(b)r(e)g(inactiv)n(e.)65
+b(Once)36 b(the)h(creation)f(and)h(activ)-5 b(ation)36
+b(of)h(the)h(initial)291 2364 y(thread)f(has)g(b)r(een)h(requested)f(b)
+n(y)g(the)h(user,)h(it)f(will)g(b)r(e)g(activ)-5 b(ated.)67
+b(When)38 b(the)g(user)291 2464 y(requests)24 b(to)h(destro)n(y)f(the)i
+(last)f(thread)g(in)g(a)g(task,)h(the)f Ft(task)f Fw(serv)n(er)g(mak)n
+(es)g(that)h(thread)291 2563 y(inactiv)n(e)i(again.)498
+2725 y Fm(In)g(L4,)g(an)g(address)g(space)g(can)g(only)g(b)r(e)g
+(implicitely)f(created)i(\(resp.)40 b(destro)n(y)n(ed\))28
+b(with)498 2804 y(the)d(\014rst)e(\(resp.)31 b(last\))25
+b(thread)f(in)f(that)i(address)f(space.)291 2986 y Fw(Some)29
+b(op)r(erations,)g(lik)n(e)g(starting)g(and)g(stopping)g(threads)g(in)h
+(a)f(task,)g(can)h(not)f(b)r(e)h(sup-)291 3086 y(p)r(orted)39
+b(b)n(y)f(the)i(task)e(serv)n(er,)j(but)e(ha)n(v)n(e)f(to)h(b)r(e)h
+(implemen)n(ted)f(lo)r(cally)g(in)g(eac)n(h)f(task)291
+3186 y(b)r(ecause)29 b(of)h(the)g(minimalit)n(y)g(of)g(L4.)43
+b(If)30 b(external)f(con)n(trol)g(o)n(v)n(er)f(the)i(threads)f(in)h(a)f
+(task)291 3285 y(at)e(this)h(lev)n(el)g(is)g(required,)f(the)h
+(debugger)e(in)n(terface)i(migh)n(t)f(b)r(e)i(used)f(\(see)f(section)h
+(7)f(on)291 3385 y(page)f(63\).)291 3704 y Fn(4.1)135
+b(Accoun)l(ting)291 3925 y Fw(W)-7 b(e)31 b(w)n(an)n(t)g(to)g(allo)n(w)
+f(the)h(users)g(of)g(the)g(system)g(to)g(use)h(the)f
+Ft(task)f Fw(serv)n(er)f(directly)-7 b(,)32 b(and)291
+4025 y(ignore)39 b(other)i(task)f(managemen)n(t)g(facilities)h(lik)n(e)
+g(the)g Ft(proc)f Fw(serv)n(er.)75 b(Ho)n(w)n(ev)n(er,)43
+b(the)291 4124 y(system)22 b(administrator)g(still)h(needs)g(to)g(b)r
+(e)g(able)g(to)g(iden)n(tify)h(the)f(user)f(who)h(created)f(suc)n(h)291
+4224 y(anon)n(ymous)k(tasks.)291 4362 y(F)-7 b(or)35
+b(this,)j(a)d(simple)h(accoun)n(ting)e(mec)n(hanism)h(is)h(pro)n(vided)
+f(b)n(y)g(the)h(task)f(serv)n(er.)59 b(An)291 4462 y(iden)n(ti\014er)22
+b(can)g(b)r(e)h(set)g(for)f(a)g(task)g(b)n(y)g(the)h(task)f(manager)f
+(capabilit)n(y)-7 b(,)23 b(whic)n(h)f(is)h(inherited)291
+4561 y(at)37 b(task)h(creation)e(time)j(from)e(the)h(paren)n(t)f(task.)
+67 b(This)38 b(accoun)n(ting)f(ID)h(can)g(not)g(b)r(e)291
+4661 y(c)n(hanged)26 b(without)i(the)g(task)f(manager)f(capabilit)n(y)
+-7 b(.)291 4799 y(The)36 b Ft(proc)f Fw(serv)n(er)f(sets)i(the)h
+(accoun)n(ting)e(ID)i(to)f(the)h(pro)r(cess)e(ID)i(\(PID\))g(of)f(the)g
+(task)291 4899 y(whenev)n(er)26 b(a)g(task)h(registers)e(itself)j(with)
+f(the)h Ft(proc)d Fw(serv)n(er.)35 b(This)27 b(means)g(that)g(all)g
+(tasks)291 4998 y(whic)n(h)33 b(do)g(not)h(register)e(themself)i(with)g
+(the)g Ft(proc)e Fw(serv)n(er)g(will)i(b)r(e)g(group)r(ed)f(together)p
+eop end
+%%Page: 32 38
+TeXDict begin 32 37 bop 739 282 a Fw(32)1278 b Fq(CHAPTER)27
+b(4.)64 b(THREADS)28 b(AND)h(T)-7 b(ASKS)739 515 y Fw(with)35
+b(the)f(\014rst)g(paren)n(t)g(task)g(that)g(did.)57 b(This)35
+b(allo)n(ws)e(to)h(easily)f(kill)h(all)g(unregistered)739
+615 y(tasks)27 b(together)f(with)i(its)g(registered)e(paren)n(t.)739
+750 y(The)i Ft(task)e Fw(serv)n(er)f(do)r(es)j(not)f(in)n(terpret)g(or)
+g(use)g(the)h(accoun)n(ting)f(ID)h(in)g(an)n(y)f(w)n(a)n(y)-7
+b(.)739 1061 y Fn(4.2)135 b(Pro)l(xy)45 b(T)-11 b(ask)45
+b(Serv)l(er)739 1278 y Fw(The)24 b Ft(task)e Fw(serv)n(er)h(can)g(b)r
+(e)i(safely)e(pro)n(xied,)h(and)g(the)g(users)g(of)g(suc)n(h)f(a)h(pro)
+n(xy)f(task)g(serv)n(er)739 1378 y(can)c(use)h(it)g(lik)n(e)f(the)h
+(real)f Ft(task)f Fw(serv)n(er,)h(ev)n(en)g(though)h(capabilities)f(w)n
+(ork)f(a)h(bit)h(di\013eren)n(tly)739 1477 y(for)27 b(the)h
+Ft(task)e Fw(serv)n(er)g(than)h(for)h(other)f(serv)n(ers.)739
+1613 y(The)g(problem)g(exists)f(b)r(ecause)h(the)h(pro)n(xy)d(task)i
+(serv)n(er)e(w)n(ould)i(hold)g(the)g(real)g(task)f(info)739
+1712 y(capabilities)d(for)h(the)g(task)g(info)g(capabilities)f(that)h
+(it)h(pro)n(vides)d(to)i(the)h(pro)n(xied)d(task.)36
+b(So)739 1812 y(if)d(the)f(pro)n(xy)f(task)g(serv)n(er)g(dies,)i(all)f
+(suc)n(h)g(task)f(info)i(capabilities)e(w)n(ould)h(b)r(e)g(released,)
+739 1912 y(and)f(the)g(tasks)f(using)g(the)i(pro)n(xy)d(task)h(serv)n
+(er)f(w)n(ould)i(b)r(ecome)g(insecure)f(and)g(op)r(en)h(to)739
+2011 y(attac)n(ks)26 b(b)n(y)i(imp)r(osters.)739 2147
+y(Ho)n(w)n(ev)n(er,)k(this)h(is)g(not)g(really)f(a)h(problem,)g(b)r
+(ecause)g(the)g(pro)n(xy)f(task)g(serv)n(er)f(will)i(also)739
+2246 y(pro)n(vide)h(pro)n(xy)g(ob)5 b(jects)36 b(for)f(all)g(task)g
+(con)n(trol)f(capabilities.)61 b(So)35 b(it)h(will)g(b)r(e)g(the)g
+(only)739 2346 y(task)31 b(whic)n(h)h(holds)f(task)h(con)n(trol)e
+(capabilities)h(for)h(the)g(tasks)f(that)h(use)g(it.)49
+b(When)33 b(the)739 2446 y(pro)n(xy)k(task)h(serv)n(er)f(dies,)42
+b(all)c(tasks)g(that)h(w)n(ere)f(created)g(with)h(it)h(will)f(b)r(e)g
+(destro)n(y)n(ed)739 2545 y(when)24 b(these)g(tak)f(con)n(trol)f
+(capabilities)h(are)g(released.)34 b(The)24 b(pro)n(xy)f(task)g(serv)n
+(er)f(is)h(a)g(vital)739 2645 y(system)f(comp)r(onen)n(t)h(for)f(the)h
+(tasks)f(that)i(use)e(it,)i(just)g(as)e(the)h(real)f
+Ft(task)f Fw(serv)n(er)g(is)i(a)f(vital)739 2744 y(system)27
+b(comp)r(onen)n(t)h(for)f(the)h(whole)f(system.)739 3055
+y Fn(4.3)135 b(Sc)l(heduling)739 3272 y Fw(The)26 b(task)g(serv)n(er)e
+(is)i(the)h(natural)f(place)f(to)h(implemen)n(t)h(a)f(simple,)h
+(initial)f(sc)n(heduler)g(for)739 3372 y(the)32 b(Hurd.)48
+b(A)32 b(\014rst)f(v)n(ersion)f(can)h(at)g(least)g(collect)g(some)g
+(information)g(ab)r(out)g(the)h(cpu)739 3472 y(time)c(of)g(a)f(task)g
+(and)h(its)g(threads.)36 b(Later)27 b(a)g(prop)r(er)g(sc)n(heduler)g
+(has)g(to)h(b)r(e)g(written)g(that)739 3571 y(also)e(has)h(SMP)h(supp)r
+(ort.)739 3707 y(The)g(sc)n(heduler)e(should)i(run)f(at)h(a)f(higher)g
+(priorit)n(y)f(than)i(normal)e(threads.)946 3863 y Fm(This)32
+b(migh)n(t)g(require)g(that)h(the)g(whole)f(task)h(serv)n(er)f(m)n(ust)
+g(run)g(at)g(a)g(higher)g(priorit)n(y)-6 b(,)946 3942
+y(whic)n(h)24 b(mak)n(es)g(sense)h(an)n(yw)n(a)n(y)-6
+b(.)946 4037 y(Not)23 b(m)n(uc)n(h)f(though)n(t)h(has)f(b)r(een)h(giv)n
+(en)f(to)g(the)h(sc)n(heduler)f(so)f(far.)30 b(This)21
+b(is)g(w)n(ork)h(that)h(still)946 4116 y(needs)i(to)f(b)r(e)g(done.)739
+4293 y Fw(There)29 b(is)g(no)g(w)n(a)n(y)f(to)h(get)g(at)g(the)g
+(\\system)g(time")g(in)h(L4,)f(it)h(is)f(assumed)f(that)i(no)f(time)739
+4392 y(is)35 b(sp)r(en)n(t)h(in)f(the)h(k)n(ernel)e(\(whic)n(h)i(is)f
+(mostly)g(true\).)60 b(So)35 b(system)g(time)h(will)f(alw)n(a)n(ys)f(b)
+r(e)739 4492 y(rep)r(orted)27 b(as)g(0)p Fs(:)p Fw(00,)f(or)h(0)p
+Fs(:)p Fw(01.)p eop end
+%%Page: 33 39
+TeXDict begin 33 38 bop 291 1178 a Fp(Chapter)64 b(5)291
+1633 y Fv(Virtual)77 b(Memory)291 1882 y(Managemen)-6
+b(t)498 2351 y Fo(The)26 b(mind)g(and)g(memory)g(ar)l(e)g(mor)l(e)f
+(sharply)i(exer)l(cise)l(d)f(in)g(c)l(ompr)l(ehending)498
+2451 y(another)31 b(man)-8 b('s)29 b(things)h(than)g(our)g(own.)1572
+2677 y(Timb)l(er)37 b Fw(or)27 b Fo(Disc)l(overies)36
+b Fw(b)n(y)27 b(Ben)h(Jonson)291 3001 y Fn(5.1)135 b(In)l(tro)t
+(duction)291 3225 y Fw(The)26 b(goal)e(of)i(an)g(op)r(erating)e(system)
+i(is)g(simply)-7 b(,)26 b(p)r(erhaps)f(reductiv)n(ely)-7
+b(,)26 b(stated:)36 b(manage)291 3324 y(the)20 b(a)n(v)-5
+b(ailable)18 b(resources.)33 b(In)20 b(other)f(w)n(ords,)h(it)g(is)g
+(the)g(op)r(erating)f(system's)g(job)h(to)g(dictate)291
+3424 y(the)i(p)r(olicy)f(for)h(obtaining)f(resources)f(and)h(to)h(pro)n
+(vide)e(mec)n(hanisms)h(to)h(use)g(them.)35 b(Most)291
+3523 y(resources)20 b(whic)n(h)j(the)g(op)r(erating)f(system)g(manages)
+f(are)h(sparse)f(resources,)h(for)g(instance)291 3623
+y(the)37 b(CPUs,)j(the)e(memory)f(and)g(the)h(v)-5 b(arious)36
+b(p)r(eripherals)g(including)i(graphics)e(cards)291 3723
+y(and)25 b(hard)g(driv)n(es.)35 b(An)n(y)26 b(giv)n(en)f(pro)r(cess,)f
+(therefore,)i(needs)f(to)h(comp)r(ete)f(with)h(the)g(other)291
+3822 y(pro)r(cesses)h(in)i(the)h(system)e(for)h(some)f(subset)h(of)g
+(the)g(a)n(v)-5 b(ailable)28 b(resources)f(at)i(an)n(y)f(giv)n(en)291
+3922 y(time.)36 b(As)23 b(can)h(b)r(e)g(imagined,)g(the)g(p)r(olicy)f
+(to)h(access)e(and)i(the)g(mec)n(hanisms)f(to)g(use)h(these)291
+4022 y(resources)h(determines)j(man)n(y)f(imp)r(ortan)n(t)g(c)n
+(haracteristics)e(of)j(the)g(system.)291 4161 y(A)34
+b(simple)g(single)f(user)g(system)h(ma)n(y)f(use)g(a)h(trivial)f
+(\014rst)g(come)h(\014rst)f(serv)n(e)g(p)r(olicy)g(for)291
+4261 y(allo)r(cating)26 b(resources,)g(a)h(device)h(abstraction)e(la)n
+(y)n(er)g(and)i(no)f(protection)g(domains.)37 b(Al-)291
+4361 y(though)23 b(this)i(design)e(ma)n(y)g(b)r(e)i(v)n(ery)d(ligh)n
+(t-w)n(eigh)n(t)h(and)h(the)g(thin)h(access)d(la)n(y)n(er)h(conduciv)n
+(e)291 4460 y(to)31 b(high)h(sp)r(eed,)i(this)e(design)g(will)g(only)g
+(w)n(ork)e(on)i(a)g(system)f(where)h(all)g(programs)d(can)291
+4560 y(b)r(e)f(trusted:)38 b(a)28 b(single)g(malicious)g(or)f(buggy)g
+(program)g(can)g(p)r(oten)n(tially)h(halt)h(all)f(others)291
+4659 y(from)22 b(making)h(progress)e(simply)i(b)n(y)g(refusing)g(to)g
+(yield)g(the)g(CPU)g(or)g(allo)r(cating)f(and)h(not)291
+4759 y(releasing)j(resources)f(in)j(a)f(timely)h(fashion.)291
+4899 y(The)19 b(Hurd,)i(lik)n(e)d(Unix,)k(aims)c(to)h(pro)n(vide)f
+(strong)g(protection)g(domains)h(thereb)n(y)f(prev)n(en)n(t-)291
+4998 y(ing)31 b(pro)r(cesses)e(from)i(acciden)n(tally)f(or)h
+(maliciously)f(harming)g(the)i(rest)e(of)i(the)f(system.)1681
+5208 y(33)p eop end
+%%Page: 34 40
+TeXDict begin 34 39 bop 739 282 a Fw(34)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)739
+515 y Fw(Unix)c(has)f(sho)n(wn)g(that)h(this)g(can)f(b)r(e)h(done)f
+(e\016cien)n(tly)-7 b(.)36 b(But)23 b(more)e(than)i(Unix,)h(the)f(Hurd)
+739 615 y(desires)c(to)h(iden)n(tify)g(pieces)g(of)g(the)g(system)g
+(whic)n(h)g(Unix)g(placed)g(in)g(the)h(k)n(ernel)e(but)h(whic)n(h)739
+715 y(need)32 b(not)g(b)r(e)g(there)g(as)f(they)h(could)g(b)r(e)g(done)
+g(in)g(user)f(space)g(and)h(pro)n(vide)f(additional)739
+814 y(user)23 b(\015exibilit)n(y)-7 b(.)35 b(Through)22
+b(our)h(exp)r(erience)g(and)g(analysis,)f(w)n(e)h(are)g(con)n(vinced)f
+(that)i(one)739 914 y(area)j(is)h(m)n(uc)n(h)g(of)g(the)g(virtual)g
+(memory)f(system:)38 b(tasks)27 b(are)g(often)i(allo)r(cating)e(as)g(m)
+n(uc)n(h)739 1013 y(memory)34 b(without)h(regard|b)r(ecause)e(Unix)i
+(pro)n(vides)e(them)i(with)h(no)e(mec)n(hanism)g(to)739
+1113 y(do)c(so|for)f(the)h(rest)g(of)g(the)h(system.)44
+b(But)31 b(it)f(is)g(not)h(a)e(co)r(op)r(erativ)n(e)g(mo)r(del)h(whic)n
+(h)h(w)n(e)739 1213 y(wish)d(to)h(em)n(brace)e(but)i(a)f(mo)r(del)h
+(whic)n(h)f(holds)g(the)h(users)f(of)g(the)h(resource)e(resp)r(onsible)
+739 1312 y(for)32 b(it)g(and)g(when)g(ask)n(ed)f(to)h(release)f(some)h
+(of)g(its)g(memory)g(will)g(or)f(violate)h(the)g(so)r(cial)739
+1412 y(con)n(tract)25 b(and)i(face)f(exile.)36 b(Not)27
+b(only)f(will)h(this)g(emp)r(o)n(w)n(er)e(users)h(but)h(it)g(will)g
+(force)f(them)739 1512 y(to)h(mak)n(e)g(smarter)f(decisions.)739
+1977 y Fl(5.1.1)112 b(Learning)39 b(from)f(Unix)739 2258
+y Fw(Unix)29 b(w)n(as)f(designed)g(as)g(a)h(m)n(ultiuser)f(timesharing)
+g(system)h(with)g(protection)f(domains)739 2358 y(thereb)n(y)33
+b(p)r(ermitting)g(pro)r(cess)f(separation,)h(i.e.)54
+b(allo)n(wing)32 b(di\013eren)n(t)h(users)f(to)h(concur-)739
+2457 y(ren)n(tly)c(run)h(pro)r(cesses)e(in)i(the)g(system)g(and)g(gain)
+f(access)f(to)i(resources)e(in)i(a)f(con)n(trolled)739
+2557 y(fashion)g(suc)n(h)h(that)g(an)n(y)f(one)h(pro)r(cess)f(cannot)g
+(h)n(urt)h(or)f(excessiv)n(ely)f(starv)n(e)h(an)n(y)g(other.)739
+2657 y(Unix)e(ac)n(hiev)n(ed)e(this)i(through)f(a)g(monolithic)h(k)n
+(ernel)e(design)i(wherein)f(b)r(oth)h(p)r(olicy)f(and)739
+2756 y(mec)n(hanism)40 b(are)f(pro)n(vided)g(b)n(y)h(the)h(k)n(ernel.)
+74 b(Due)41 b(to)f(the)h(limited)g(hardw)n(are)d(a)n(v)-5
+b(ail-)739 2856 y(able)23 b(at)g(the)h(time)g(and)f(the)h(state)f(of)g
+(Multics)2186 2826 y Fr(1)2224 2856 y Fw(,)h(Unix)g(imp)r(osed)f(a)g
+(strong)g(p)r(olicy)g(on)g(ho)n(w)739 2955 y(resources)c(could)i(b)r(e)
+h(used:)34 b(a)21 b(program)e(could)j(access)e(\014les,)i(ho)n(w)n(ev)n
+(er,)f(lo)n(w)n(er)f(lev)n(el)h(mec)n(h-)739 3055 y(anism)32
+b(suc)n(h)f(as)h(the)g(\014le)g(system,)h(the)f(virtual)g(\014le)g
+(system,)h(net)n(w)n(ork)e(proto)r(col)f(stac)n(ks)739
+3155 y(and)e(devices)g(driv)n(ers)g(all)g(existed)g(in)h(the)g(k)n
+(ernel)f(prop)r(er.)39 b(This)29 b(approac)n(h)d(made)j(sense)739
+3254 y(for)36 b(the)h(extremely)f(limited)h(hardw)n(are)e(that)i(Unix)g
+(w)n(as)f(targeted)f(for)h(in)h(the)g(1970s.)739 3354
+y(As)26 b(hardw)n(are)e(p)r(erformance)h(increased,)g(ho)n(w)n(ev)n
+(er,)f(a)i(separation)e(b)r(et)n(w)n(een)i(mec)n(hanism)739
+3454 y(and)d(p)r(olicy)h(nev)n(er)e(to)r(ok)h(place)g(and)h(to)r(da)n
+(y)e(Unix-lik)n(e)i(op)r(erating)e(systems)h(are)g(in)g(a)g(v)n(ery)739
+3553 y(similar)j(state)g(to)h(those)f(a)n(v)-5 b(ailable)25
+b(t)n(w)n(o)h(decades)g(ago;)f(certainly)-7 b(,)26 b(the)h(implemen)n
+(tations)739 3653 y(ha)n(v)n(e)22 b(b)r(een)h(v)-5 b(astly)22
+b(impro)n(v)n(ed)g(and)g(tuned,)j(ho)n(w)n(ev)n(er,)d(the)h(fundamen)n
+(tal)g(design)f(remains)739 3752 y(the)28 b(same.)739
+3954 y(One)h(of)h(the)h(most)e(imp)r(ortan)n(t)h(of)g(the)g(p)r
+(olicy/mec)n(hanism)f(couplings)g(in)h(the)g(k)n(ernel)f(is)739
+4053 y(the)h(virtual)e(memory)h(subsystem:)40 b(ev)n(ery)28
+b(comp)r(onen)n(t)h(in)h(the)g(system)f(needs)g(memory)739
+4153 y(for)e(a)h(v)-5 b(ariet)n(y)26 b(of)i(reasons)e(and)i(with)g
+(di\013eren)n(t)g(priorities.)36 b(The)28 b(system)g(m)n(ust)g(attempt)
+739 4252 y(to)e(meet)h(a)f(giv)n(en)g(allo)r(cation)f(criteria.)36
+b(Ho)n(w)n(ev)n(er,)24 b(as)i(the)h(k)n(ernel)f(do)r(es)g(not)g(and)h
+(cannot)739 4352 y(kno)n(w)e(ho)n(w)g(ho)n(w)g(a)g(task)g(will)g(use)h
+(its)g(memory)e(except)i(based)f(on)g(the)h(use)g(of)f(page)g(fault)739
+4452 y(statistics)33 b(is)g(b)r(ound)h(to)f(mak)n(e)g(sub-ideal)g
+(eviction)g(decisions.)53 b(It)34 b(is)f(in)h(part)f(through)739
+4551 y(y)n(ears)20 b(of)j(\014ne)f(tuning)h(that)f(Unix)h(is)f(able)g
+(to)g(p)r(erform)g(as)f(w)n(ell)h(as)g(it)g(do)r(es)g(for)g(the)h
+(general)739 4651 y(applications)k(whic)n(h)g(\014t)h(its)g(assumed)f
+(statistical)g(mo)r(del.)p 739 4842 1146 4 v 831 4896
+a Fi(1)866 4920 y Fm(Multics)19 b(w)n(as)g(seen)h(as)g(a)f(system)h
+(whic)n(h)g(w)n(ould)g(nev)n(er)g(realize)f(due)h(to)g(its)f(o)n(v)n
+(erly)h(am)n(bitious)f(feature)739 4998 y(set.)p eop
+end
+%%Page: 35 41
+TeXDict begin 35 40 bop 291 282 a Fq(5.2.)63 b(SELF)28
+b(P)-7 b(A)n(GING)2019 b Fw(35)291 515 y Fl(5.1.2)112
+b(Learning)39 b(from)f(Mac)m(h)291 715 y Fw(The)20 b(faults)g(of)g
+(Unix)g(b)r(ecame)g(clear)f(through)g(the)h(use)g(of)g(Mac)n(h.)34
+b(The)20 b(designers)f(of)h(Mac)n(h)291 815 y(observ)n(ed)30
+b(that)j(there)f(w)n(as)f(to)r(o)h(m)n(uc)n(h)g(mec)n(hanism)g(in)g
+(the)h(k)n(ernel)e(and)h(attempted)h(to)291 914 y(exp)r(ort)f(the)i
+(\014le)g(systems,)g(net)n(w)n(ork)e(stac)n(k)g(and)h(m)n(uc)n(h)g(of)h
+(the)f(system)g(API)g(in)n(to)h(user)291 1014 y(space)f(serv)n(ers.)56
+b(They)35 b(left)g(a)g(v)n(ery)e(p)r(o)n(w)n(erful)h(VMM)h(in)g(the)g
+(k)n(ernel)f(with)h(the)g(device)291 1113 y(driv)n(ers)23
+b(and)h(a)g(no)n(v)n(el)g(IPC)g(system.)35 b(Our)24 b(exp)r(erience)g
+(sho)n(ws)g(that)h(the)f(VMM)i(although)291 1213 y(v)n(ery)h
+(\015exible,)i(is)g(unable)g(to)f(mak)n(e)g(smart)g(paging)g
+(decisions:)38 b(b)r(ecause)29 b(Unix)g(w)n(as)e(tied)291
+1313 y(to)i(so)f(man)n(y)h(subsystems,)g(it)g(had)g(a)g(fair)g(kno)n
+(wledge)e(of)i(ho)n(w)g(a)g(lot)g(of)g(the)g(memory)g(in)291
+1412 y(the)j(system)f(w)n(as)g(b)r(eing)g(used.)49 b(It)32
+b(could)g(therefore)e(mak)n(e)h(go)r(o)r(d)g(guesses)f(ab)r(out)i(what)
+291 1512 y(memory)23 b(could)h(b)r(e)h(evicted)f(and)g(not)h(b)r(e)f
+(needed)h(in)f(the)h(near)e(future.)37 b(Mac)n(h,)24
+b(ho)n(w)n(ev)n(er,)291 1612 y(did)e(not)g(ha)n(v)n(e)e(this)i(adv)-5
+b(an)n(tage)21 b(and)g(relied)h(strictly)f(on)h(page)f(fault)h
+(statistics)f(and)h(access)291 1711 y(pattern)27 b(detection)h(for)f
+(its)h(page)e(eviction)i(p)r(olicy)-7 b(.)291 1854 y(Based)30
+b(on)h(this)g(observ)-5 b(ation,)30 b(it)i(is)f(imp)r(eritiv)n(e)g
+(that)g(the)h(page)e(eviction)h(sc)n(heme)f(ha)n(v)n(e)291
+1954 y(go)r(o)r(d)f(kno)n(wledge)g(ab)r(out)i(ho)n(w)e(pages)h(are)f(b)
+r(eing)i(used)f(as)g(it)g(only)g(requires)f(a)h(few)h(bad)291
+2053 y(decisions)39 b(to)h(destro)n(y)e(p)r(erformance.)74
+b(Th)n(us,)42 b(a)e(new)g(design)g(can)f(either)h(c)n(ho)r(ose)f(to)291
+2153 y(return)28 b(to)h(the)g(monolithic)g(design)f(and)h(add)g(ev)n
+(en)f(more)g(kno)n(wledge)g(to)h(the)g(k)n(ernel)f(to)291
+2253 y(increase)21 b(p)r(erformance)g(or)g(the)i(page)e(eviction)h(sc)n
+(heme)f(can)h(b)r(e)h(remo)n(v)n(e)d(from)i(the)h(k)n(ernel)291
+2352 y(completely)k(and)g(placed)h(in)g(user)f(space)f(and)i(mak)n(e)f
+(all)g(tasks)g(self)g(paged.)291 2643 y Fl(5.1.3)112
+b(F)-9 b(ollo)m(wing)38 b(the)f(Hurd)h(Philosoph)m(y)291
+2843 y Fw(As)30 b(the)h(Hurd)f(aims,)g(lik)n(e)g(Unix,)i(to)e(b)r(e)g
+(a)g(m)n(ultiuser)g(system)g(for)g(m)n(utually)g(un)n(trusted)291
+2943 y(users,)40 b(securit)n(y)d(is)i(an)f(absolute)g(necessit)n(y)-7
+b(.)68 b(But)39 b(it)g(is)f(not)h(the)f(ob)5 b(ject)39
+b(of)f(the)h(sys-)291 3042 y(tem)27 b(to)h(limit)g(users)e(excessiv)n
+(ely:)36 b(as)26 b(long)h(as)g(op)r(erations)f(can)h(b)r(e)h(done)f
+(securely)-7 b(,)27 b(they)291 3142 y(should)35 b(b)r(e)h(p)r
+(ermitted.)61 b(It)36 b(is)g(based)f(on)g(this)h(philosoph)n(y)f(that)g
+(w)n(e)h(ha)n(v)n(e)e(adopted)h(a)291 3242 y(self)c(paging)g(design)g
+(for)g(the)h(new)f(Hurd)h(VMM:)g(who)f(kno)n(ws)g(b)r(etter)h(ho)n(w)f
+(a)g(task)g(will)291 3341 y(use)c(its)h(memory)f(than)h(the)g(task)g
+(itself)6 b(?)38 b(This)28 b(is)g(clear)e(from)i(the)g(problems)f(that)
+h(ha)n(v)n(e)291 3441 y(b)r(een)f(encoun)n(tered)g(with)h(LR)n(U,)g
+(the)g(basic)e(page)h(evition)g(algorithm,)g(b)n(y)g(database)f(de-)291
+3540 y(v)n(elop)r(ers,)h(language)g(designers)g(implemen)n(ting)i
+(garbage)d(collectors)h(and)i(soft)f(realtime)291 3640
+y(application)d(dev)n(elop)r(ers)f(suc)n(h)h(as)g(m)n(ultimedia)h(dev)n
+(elop)r(ers:)34 b(they)26 b(all)f(wrestle)g(with)i(the)291
+3740 y(underlying)j(op)r(erating)g(system's)g(page)g(eviction)h(sc)n
+(heme.)47 b(By)30 b(putting)i(the)f(resp)r(onsi-)291
+3839 y(bilit)n(y)21 b(to)g(page)f(on)h(tasks)g(w)n(e)f(think)i(that)g
+(tasks)e(will)h(b)r(e)h(forced)f(to)g(mak)n(e)f(smart)h(decisions)291
+3939 y(as)27 b(they)g(can)h(only)f(h)n(urt)g(themselv)n(es.)291
+4272 y Fn(5.2)135 b(Self)45 b(P)l(aging)291 4500 y Fw(If)28
+b(memory)g(w)n(as)f(in\014nite)i(and)g(the)f(only)g(problem)g(w)n(as)g
+(w)n(orrying)e(ab)r(out)i(one)g(program)291 4600 y(accessing)h(the)i
+(memory)f(of)g(another,)h(memory)f(allo)r(cation)f(w)n(ould)i(b)r(e)g
+(trivial.)45 b(This)31 b(is)291 4700 y(not,)26 b(ho)n(w)n(ev)n(er,)e
+(the)j(case:)35 b(memory)25 b(is)h(visibly)g(\014nite)g(and)g(a)g(w)n
+(ell)f(designed)h(system)g(will)291 4799 y(exploit)21
+b(it)h(all.)35 b(As)22 b(memory)f(is)g(a)h(system)f(resource,)g(a)h
+(system)f(wide)h(memory)f(allo)r(cation)291 4899 y(p)r(olicy)i(m)n(ust)
+g(b)r(e)h(established)f(whic)n(h)g(maximizes)g(memory)g(usage)f
+(according)g(to)h(a)g(giv)n(en)291 4998 y(set)k(of)h(criteria.)p
+eop end
+%%Page: 36 42
+TeXDict begin 36 41 bop 739 282 a Fw(36)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)739
+515 y Fw(In)41 b(a)g(t)n(ypical)f(Unix-lik)n(e)h(VMM,)h(allo)r(cating)e
+(memory)g(\(e.g.)77 b(using)42 b Ft(sbrk)d Fw(or)i Ft(mmap)p
+Fw(\))739 615 y(do)r(es)31 b(not)h(allo)r(cate)f(ph)n(ysical)g(memory)g
+(but)i Ft(virtual)41 b(memory)p Fw(.)47 b(In)32 b(order)f(to)g
+(increase)739 715 y(the)37 b(amoun)n(t)g(of)g(memory)f(a)n(v)-5
+b(ailable)36 b(to)h(users,)i(the)e(k)n(ernel)f(uses)h(a)f
+Ft(backing)41 b(store)p Fw(,)739 814 y(t)n(ypically)d(a)h(hard)f(disk,)
+j(to)e(temp)r(orarily)f(free)g(ph)n(ysical)g(memory)g(thereb)n(y)h
+(allo)n(wing)739 914 y(other)24 b(pro)r(cesses)g(to)h(mak)n(e)f
+(progress.)34 b(The)25 b(sum)g(of)g(these)g(t)n(w)n(o)g(is)g(referred)e
+(to)i(as)g(virtual)739 1013 y(memory)-7 b(.)35 b(The)23
+b(use)h(of)f(bac)n(king)f(store)h(ensures)f(data)h(in)n(tegrit)n(y)g
+(when)g(ph)n(ysical)g(memory)739 1113 y(m)n(ust)h(b)r(e)g(freed)f(and)h
+(application)f(transparency)e(is)j(required.)35 b(A)23
+b(v)-5 b(ariet)n(y)23 b(of)h(criteria)e(are)739 1213
+y(used)j(to)f(determine)h(whic)n(h)f(frames)g(are)g Ft(paged)42
+b(out)p Fw(,)24 b(ho)n(w)n(ev)n(er,)f(most)i(often)f(some)h(form)739
+1312 y(of)e(a)g(priorit)n(y)f(based)h(least)g(recen)n(tly)f(used,)j(LR)
+n(U,)e(algorithm)f(is)h(applied.)36 b(Up)r(on)24 b Ft(memory)739
+1412 y(pressure)p Fw(,)29 b(the)i(system)g(steals)f(pages)g(from)h(lo)n
+(w)f(priorit)n(y)g(pro)r(cesses)f(whic)n(h)i(ha)n(v)n(e)f(not)739
+1512 y(b)r(een)e(used)f(recen)n(tly)g(or)g(drain)g(pages)g(from)g(an)g
+(in)n(ternal)g(cac)n(he.)739 1711 y(This)34 b(design)f(has)g(a)g(ma)5
+b(jor)33 b(problem:)48 b(the)34 b(k)n(ernel)f(has)g(to)h(evict)g(the)g
+(pages)e(but)j(only)739 1810 y(the)40 b(applications)f(kno)n(w)g(whic)n
+(h)h(pages)f(they)h(really)e(need)i(in)g(the)h(near)e(term.)73
+b(The)739 1910 y(k)n(ernel)34 b(could)g(ask)g(the)g(applications)g(for)
+g(this)h(data,)h(ho)n(w)n(ev)n(er,)e(it)h(is)f(unable)h(to)f(trust)739
+2010 y(the)28 b(applications)g(as)f(they)h(could,)h(for)e(instance,)h
+(not)g(resp)r(ond,)g(and)g(the)g(k)n(ernel)g(w)n(ould)739
+2109 y(ha)n(v)n(e)h(to)i(forcefully)g(evict)f(pages)g(an)n(yw)n(a)n(y)
+-7 b(.)44 b(As)31 b(suc)n(h,)g(the)h(k)n(ernel)d(relies)h(on)h(page)f
+(fault)739 2209 y(statistics)21 b(to)g(mak)n(e)f(pro)5
+b(jections)20 b(ab)r(out)h(ho)n(w)f(the)h(memory)g(will)g(b)r(e)g
+(used,)i(th)n(us)e(the)g(LR)n(U)739 2309 y(eviction)f(sc)n(heme.)34
+b(An)20 b(additional)g(result)g(of)g(this)g(sc)n(heme)g(is)g(that)g(as)
+g(applications)f(nev)n(er)739 2408 y(kno)n(w)28 b(if)i(mapp)r(ed)g
+(memory)e(is)h(in)g(core,)g(they)g(are)g(unable)g(to)g(mak)n(e)f
+(guaran)n(tees)f(ab)r(out)739 2508 y(deadlines.)739 2707
+y(These)37 b(problems)h(are)e(grounded)h(in)h(the)h(w)n(a)n(y)d(the)j
+(Unix)f(VMM)g(allo)r(cates)f(memory:)739 2807 y(it)g(do)r(es)g(not)g
+(allo)r(cate)f(ph)n(ysical)g(memory)g(but)i(virtual)e(memory)-7
+b(.)64 b(This)37 b(is)g(illustated)739 2906 y(b)n(y)g(the)g(follo)n
+(wing)g(scenario:)54 b(when)37 b(a)g(pro)r(cess)f(starts)h(and)g(b)r
+(egins)g(to)g(use)g(memory)-7 b(,)739 3006 y(the)38 b(allo)r(cator)e
+(will)i(happily)g(giv)n(e)e(it)j(all)e(of)h(memory)f(in)h(the)g(system)
+f(as)g(long)g(as)h(no)739 3106 y(other)22 b(pro)r(cess)g(w)n(an)n(ts)g
+(it.)36 b(What)24 b(happ)r(ens,)g(ho)n(w)n(ev)n(er,)e(when)h(a)g
+(second)f(memory)g(h)n(ungry)739 3205 y(pro)r(cess)h(starts)h(is)h
+(that)f(the)h(k)n(ernel)f(has)g(no)g(w)n(a)n(y)g(to)g(tak)n(e)g(bac)n
+(k)g(memory)g(it)h(allo)r(cated)e(to)739 3305 y(the)30
+b(\014rst)g(pro)r(cess.)43 b(A)n(t)30 b(this)h(p)r(oin)n(t,)g(it)f(has)
+g(t)n(w)n(o)f(options:)41 b(it)31 b(can)e(either)h(return)g(failure)739
+3404 y(to)e(the)g(second)f(pro)r(cess)g(or)g(it)h(can)g(steal)f(memory)
+g(from)h(the)g(\014rst)g(pro)r(cess)e(and)i(send)g(it)739
+3504 y(to)f(bac)n(king)g(store.)739 3703 y(One)d(w)n(a)n(y)g(to)h(solv)
+n(e)f(these)h(problems)f(is)g(to)h(ha)n(v)n(e)f(the)h(VMM)h(allo)r
+(cate)e(phsyical)g(memory)739 3803 y(and)32 b(mak)n(e)f(applications)g
+(completely)h(self-paged.)49 b(Th)n(us,)32 b(the)h(burden)f(of)g
+(paging)e(lies)739 3903 y(the)g(application)f(themselv)n(es.)42
+b(When)31 b(application)e(request)g(memory)-7 b(,)29
+b(they)h(no)g(longer)739 4002 y(request)37 b(virutal)h(memory)f(but)i
+(ph)n(ysical)e(memory)-7 b(.)68 b(Once)38 b(the)h(application)e(has)h
+(ex-)739 4102 y(hausted)d(its)h(a)n(v)-5 b(ailable)34
+b(frames,)j(it)f(is)f(its)h(resp)r(onsibilit)n(y)e(to)i(m)n(ultiplex)g
+(the)g(a)n(v)-5 b(ailable)739 4201 y(frames.)40 b(Th)n(us,)29
+b(virtual)f(memory)g(is)h(done)f(in)h(the)g(application)g(itself.)41
+b(It)29 b(is)g(imp)r(ortan)n(t)739 4301 y(to)35 b(note)g(that)g(a)g
+(standard)f(manager)f(or)h(managers)f(should)i(b)r(e)g(supplied)h(b)n
+(y)e(the)i(op-)739 4401 y(erating)e(system.)58 b(This)34
+b(is)h(imp)r(ortan)n(t)f(for)h(implemen)n(ting)g(something)f(lik)n(e)g
+(a)h(POSIX)739 4500 y(p)r(ersonalit)n(y)-7 b(.)38 b(This)29
+b(should)f(not,)h(ho)n(w)n(ev)n(er,)d(b)r(e)j(hard)f(co)r(ded:)38
+b(certain)28 b(application)g(ma)n(y)739 4600 y(greatly)c(b)r(ene\014t)i
+(b)n(y)f(b)r(eing)h(able)f(to)g(con)n(trol)f(their)h(o)n(wn)g(eviction)
+g(sc)n(hemes.)35 b(A)n(t)26 b(its)f(most)739 4700 y(basic)32
+b(lev)n(el,)h(hin)n(ts)f(could)g(b)r(e)h(pro)n(vided)e(to)i(the)f
+(manager)f(b)n(y)h(in)n(tro)r(ducing)g(exten)n(tions)739
+4799 y(on)k(basic)f(function)i(calls.)62 b(F)-7 b(or)35
+b(instance,)j Ft(malloc)c Fw(could)i(tak)n(e)g(an)f(extra)h(parameter)
+739 4899 y(indicating)f(the)g(class)f(of)h(data)g(b)r(eing)g(allo)r
+(cated.)58 b(These)35 b(class)f(w)n(ould)g(pro)n(vide)g(hin)n(ts)739
+4998 y(ab)r(out)27 b(the)h(exp)r(ected)g(usage)f(pattern)g(and)h(life)g
+(time)g(of)f(the)h(data.)p eop end
+%%Page: 37 43
+TeXDict begin 37 42 bop 291 282 a Fq(5.3.)63 b(BOOTSTRAP)2053
+b Fw(37)291 515 y Fn(5.3)135 b(Bo)t(otstrap)291 734 y
+Fw(When)32 b(the)f(Hurd)h(starts)f(up,)h(all)g(ph)n(ysical)e(memory)h
+(is)g(ev)n(en)n(tually)g(transfered)f(to)i(the)291 834
+y(ph)n(ysical)26 b(memory)h(serv)n(er)e(b)n(y)j(the)f(ro)r(ot)g(serv)n
+(er.)35 b(A)n(t)28 b(this)g(p)r(oin)n(t,)f(the)h(ph)n(ysical)f(memory)
+291 934 y(serv)n(er)e(will)j(con)n(trol)e(all)i(of)f(the)h(ph)n(ysical)
+f(pages)f(in)i(the)g(system.)291 1248 y Fn(5.4)135 b(Memory)45
+b(Allo)t(cation)h(P)l(olicy)291 1483 y Fl(5.4.1)112 b(Guaran)m(teed)39
+b(F)-9 b(rames)38 b(and)h(Extra)e(F)-9 b(rames)291 1674
+y Fw(The)33 b(ph)n(ysical)g(memory)g(serv)n(er)f(main)n(tains)h(a)h
+(concept)f(of)40 b Ft(guaranteed)g(frames)31 b Fw(and)291
+1774 y Ft(extra)41 b(frames)p Fw(.)k(The)31 b(former)f(are)g(virtual)g
+(frames)g(that)i(a)e(giv)n(en)g(task)h(is)g(guaran)n(teed)291
+1873 y(to)c(map)g(in)h(a)f(v)n(ery)f(short)h(amoun)n(t)g(of)g(time.)37
+b(Giv)n(en)28 b(this)f(predicate,)g(the)h(total)f(n)n(um)n(b)r(er)291
+1973 y(of)40 b(guaran)n(teed)f(frames)h(can)g(nev)n(er)g(exceed)g(the)h
+(total)f(n)n(um)n(b)r(er)g(of)h(ph)n(ysical)f(frames)291
+2072 y(in)c(the)g(system.)61 b(Extra)34 b(frames)h(are)g(frames)g(whic)
+n(h)h(are)f(giv)n(en)f(to)i(clien)n(ts)g(who)f(ha)n(v)n(e)291
+2172 y(reac)n(hed)d(their)i(guaran)n(teed)e(frame)i(allo)r(cation)e
+(limit.)57 b(The)34 b(ph)n(ysical)f(memory)g(serv)n(er)291
+2272 y(ma)n(y)i(request)g(that)h(a)f(clien)n(t)h(relinquish)f(a)h(n)n
+(um)n(b)r(er)f(of)h(extan)n(t)f(extra)g(frames)g(at)h(an)n(y)291
+2371 y(time.)72 b(The)40 b(clien)n(t)f(m)n(ust)h(return)f(the)h(frames)
+e(to)i(the)f(ph)n(ysical)g(memory)f(\(i.e.)73 b(free)291
+2471 y(them\))40 b(in)g(a)f(short)g(amoun)n(t)g(of)h(time.)74
+b(The)39 b(task)g(should)h(not)f(assume)g(that)h(it)g(has)291
+2571 y(enough)c(time)i(to)g(send)f(frames)g(to)g(bac)n(king)g(store.)65
+b(As)38 b(suc)n(h,)i(extra)c(frames)h(should)291 2670
+y(only)d(con)n(tain)f(reman)n(ufacturable)g(data)h(\(i.e.)58
+b(cac)n(hed)34 b(data\).)57 b(Should)35 b(a)f(task)g(fail)g(to)291
+2770 y(return)39 b(the)i(frames)e(in)i(a)e(reasonable)f(amoun)n(t)i(of)
+g(time,)k(it)d(risks)e(ha)n(ving)g(all)h(of)g(its)291
+2869 y(memory)23 b(dropp)r(ed|not)h(sw)n(app)r(ed)f(out)h(or)g(sa)n(v)n
+(ed)e(in)j(an)n(y)e(w)n(a)n(y|and)f(reclaimed)i(b)n(y)g(the)291
+2969 y(ph)n(ysical)k(memory)h(serv)n(er.)40 b(Note)30
+b(that)g(the)f(ph)n(ysical)g(memory)g(serv)n(er)e(do)r(es)i(not)h(kno)n
+(w)291 3069 y(if)h(a)g(giv)n(en)g(frame)f(is)h(considered)g(guaran)n
+(teed)e(or)i(extra:)43 b(it)32 b(kno)n(ws)e(that)h(a)g(giv)n(en)f(task)
+291 3168 y(has)24 b Fs(G)h Fw(guaran)n(teed)e(frames)h(and)g
+Fs(G)13 b Fw(+)g Fs(E)29 b Fw(allo)r(cated)24 b(frames,)h(and)f
+Fs(E)30 b Fw(extra)24 b(frames.)35 b(The)291 3268 y(distinction)j(b)r
+(et)n(w)n(een)g(guaran)n(teed)e(and)i(extra)f(frames)h(m)n(ust)g(b)r(e)
+g(made)g(b)n(y)g(the)g(task)291 3368 y(itself.)46 b(One)31
+b(strategy)e(is)i(to)f(remem)n(b)r(er)g(whic)n(h)h(frames)f(can)g(b)r
+(e)h(reman)n(ufactured)f(\(e.g.)291 3467 y(reread)j(from)h(disk)g(or)g
+(recalculated\))f(and)i(in)n(ternally)f(promote)f(them)i(to)g(guaran)n
+(teed)291 3567 y(frames)30 b(when)i(the)g(frame)f(b)r(ecomes)g(dirt)n
+(y)g(b)r(eing)h(careful)f(to)g(nev)n(er)g(ha)n(v)n(e)f(less)h(than)h
+Fs(E)291 3666 y Fw(clean)h(frames)g(in)h(the)g(task.)55
+b(Giv)n(en)33 b(these)h(seman)n(tics,)g(guan)n(teed)f(frames)g(should)h
+(not)291 3766 y(b)r(e)28 b(though)n(t)g(of)h(as)e(wired)h(\(e.g.)39
+b Ft(mlock)p Fw(ed)26 b(in)j(the)g(POSIX)e(sense\)|although)h(they)g
+(can)291 3866 y(ha)n(v)n(e)i(this)h(prop)r(ert)n(y|but)g(as)f(frames)h
+(whic)n(h)g(the)g(task)g(itself)h(m)n(ust)f(m)n(ultiplex.)48
+b(Th)n(us)291 3965 y(the)28 b(idea)f(of)g(self-paged)g(tasks.)291
+4102 y(Readers)37 b(familiar)h(with)h(VMS)g(will)f(see)g(striking)g
+(similarities)g(with)g(the)h(self-paging)291 4201 y(and)30
+b(guaran)n(teed)e(frame)i(paradigms.)42 b(This)30 b(is)g(not)h(without)
+f(reason.)43 b(Y)-7 b(et,)31 b(di\013erences)291 4301
+y(remain:)k(VMS)25 b(do)r(es)g(not)g(ha)n(v)n(e)e(extra)h(frames)h(and)
+f(the)i(n)n(um)n(b)r(er)e(of)h(guaran)n(teed)f(frames)291
+4401 y(is)29 b(\014xed)g(at)g(task)g(creation)f(time.)42
+b(F)-7 b(rames)29 b(returned)f(to)h(VMS)h(\(in)g(order)e(to)h(allo)r
+(cate)f(a)291 4500 y(new)h(frame\))g(are)f(placed)g(in)i(a)e(dirt)n(y)h
+(list)g(\(th)n(us)h(the)f(actual)g(m)n(ultiplexing)g(of)g(frames)f(is)
+291 4600 y(done)i(in)g(VMS,)h(not)g(in)g(user)e(space\))h(thereb)n(y)g
+(sim)n(ulating)g(a)g(t)n(w)n(o)g(lev)n(el)g(bac)n(king)f(store:)291
+4700 y(a)k(fast)g(memory)f(bac)n(king)h(store)f(where)h(frames)f(are)h
+(w)n(a)n(ylaid)f(and)h(sw)n(ap,)h(where)f(they)291 4799
+y(are)c(sen)n(t)h(to)g(when)g(su\016cien)n(t)h(memory)e(pressure)g
+(forces)g(them)i(out.)45 b(It)30 b(is)g(in)h(this)f(w)n(a)n(y)291
+4899 y(that)d(a)g(giv)n(en)f(task)h(ma)n(y)g(access)f(more)g(than)h
+(its)h(quota)e(of)i(memory)e(when)h(there)g(is)h(lo)n(w)291
+4998 y(memory)f(con)n(ten)n(tion)g(\(e.g.)39 b(if)29
+b(there)f(are)f(t)n(w)n(o)g(tasks)h(eac)n(h)f(with)i(100)e(frames)g
+(and)h(there)p eop end
+%%Page: 38 44
+TeXDict begin 38 43 bop 739 282 a Fw(38)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)739
+515 y Fw(are)k(1000)f(frames)h(in)i(the)f(system)g(for)f(tasks,)i(the)f
+(remaining)f(800)g(are)g(not)h(dorman)n(t\).)739 615
+y(Our)20 b(div)n(ergence)f(from)h(VMS)i(is)e(motiv)-5
+b(ated)21 b(b)n(y)f(the)h(lo)r(cation)f(of)h(\014le)g(systems)f(and)g
+(device)739 715 y(driv)n(ers)29 b(in)i(the)h(Hurd:)43
+b(unlik)n(e)31 b(in)g(VMS,)h(the)f(\014le)g(systems)f(and)h(device)g
+(driv)n(ers)e(are)h(in)739 814 y(user)k(space.)59 b(Th)n(us,)37
+b(the)f(cac)n(hing)e(that)h(w)n(as)f(b)r(eing)i(done)f(b)n(y)f(VMS)i
+(cannot)f(b)r(e)g(done)739 914 y(in)n(telligen)n(tly)27
+b(b)n(y)h(the)g(ph)n(ysical)e(memory)h(serv)n(er.)739
+1190 y Fl(5.4.2)112 b(An)38 b(External)f(Memory)h(P)m(olicy)f(Serv)m
+(er)739 1383 y Fw(The)29 b(n)n(um)n(b)r(er)g(of)g(guaran)n(teed)f
+(frames)g(that)h(a)g(giv)n(en)f(task)h(has)g(access)f(to)h(is)g(not)g
+(deter-)739 1483 y(mined)c(b)n(y)f(the)h(ph)n(ysical)f(memory)g(serv)n
+(er)f(but)i(b)n(y)g(the)g Ft(memory)41 b(policy)g(server)p
+Fw(.)33 b(This)739 1582 y(division)24 b(means)h(the)g(ph)n(ysical)g
+(memory)f(serv)n(er)f(need)i(only)g(concern)f(itself)h(with)h(allo)r
+(ca-)739 1682 y(tion)d(mec)n(hanisms;)h(all)f(p)r(olicy)g(decisions)f
+(are)h(delegated)f(to)h(the)h(p)r(olicy)f(serv)n(er)e(pro)n(vided)739
+1782 y(b)n(y)g(the)g(underlying)f(op)r(erating)g(system.)35
+b(\(An)21 b(imp)r(ortan)n(t)g(implication)g(is)g(that)g(although)739
+1881 y(tailored)26 b(for)g(Hurd)h(sp)r(eci\014c)f(needs,)h(the)g(ph)n
+(ysical)f(memory)g(serv)n(er)f(is)i(essen)n(tially)e(sepa-)739
+1981 y(rate)g(from)g(the)h(Hurd)g(and)f(can)g(b)r(e)h(used)g(b)n(y)f
+(other)g(op)r(erating)f(systems)h(running)h(on)f(the)739
+2080 y(L4)34 b(microk)n(ernel.\))55 b(It)35 b(is)f(the)h(memory)e(p)r
+(olicy)h(serv)n(er's)e(resp)r(onsibilit)n(y)i(to)g(determine)739
+2180 y(who)28 b(gets)h(ho)n(w)f(m)n(uc)n(h)h(memory)-7
+b(.)40 b(This)29 b(ma)n(y)f(b)r(e)h(calculated)g(as)f(a)g(function)i
+(of)f(the)g(user)739 2280 y(or)k(lo)r(oking)f(in)i(a)f(\014le)h(on)f
+(disk)g(for)g(e.g.)54 b(quotas.)g(As)33 b(can)h(b)r(e)g(seen)f(this)h
+(t)n(yp)r(e)f(of)h(data)739 2379 y(acquisition)26 b(could)g(add)g
+(signi\014can)n(t)g(complexit)n(y)g(to)g(the)h(ph)n(ysical)e(memory)h
+(serv)n(er)e(and)739 2479 y(require)j(blo)r(c)n(king)g(states)h(\(e.g.)
+39 b(w)n(aiting)27 b(for)h(a)g(read)f(op)r(eration)g(on)h(\014le)h
+(i/o\))e(and)h(could)739 2579 y(create)j(circular)f(dep)r(endencies.)50
+b(The)32 b(default)g(memory)f(p)r(olicy)h(serv)n(er's)e(mec)n(hanisms)
+739 2678 y(and)d(p)r(olicies)h(will)f(b)r(e)h(discussed)g(later.)739
+2816 y(The)23 b(ph)n(ysical)g(memory)f(serv)n(er)g(and)h(the)g(memory)g
+(p)r(olicy)g(serv)n(er)e(will)j(con)n(tain)e(a)h(shared)739
+2916 y(bu\013er)k(of)f(tupples)h(indexed)f(b)n(y)h(task)f(id)g(con)n
+(taining)g(the)h(n)n(um)n(b)r(er)f(of)g(allo)r(cated)g(frames,)739
+3016 y(the)j(n)n(um)n(b)r(er)f(of)h(guaran)n(teed)e(frame,)h(and)h(a)f
+(b)r(o)r(olean)g(indicating)g(whether)h(or)e(not)i(this)739
+3115 y(task)24 b(is)h(eligible)f(for)g(guaran)n(teed)f(frames.)35
+b(The)25 b(guaran)n(teed)e(frame)h(\014eld)h(and)g(the)g(extra)739
+3215 y(frame)39 b(predicate)f(ma)n(y)h(only)g(b)r(e)h(written)f(to)g(b)
+n(y)h(the)f(memory)g(p)r(olicy)g(serv)n(er.)70 b(The)739
+3314 y(n)n(um)n(b)r(er)36 b(of)h(allo)r(cated)f(frames)h(ma)n(y)f(only)
+g(b)r(e)h(written)h(to)e(b)n(y)h(the)g(ph)n(ysical)f(memory)739
+3414 y(serv)n(er.)e(This)27 b(sc)n(heme)e(means)h(that)h(no)f(lo)r(c)n
+(king)f(in)h(required.)36 b(\(On)26 b(some)g(arc)n(hitectures)739
+3514 y(where)d(a)f(read)h(of)g(a)g(giv)n(en)f(\014eld)i(cannot)f(b)r(e)
+g(p)r(erformed)g(in)h(a)f(single)f(op)r(eration,)h(the)h(read)739
+3613 y(ma)n(y)k(ha)n(v)n(e)g(to)h(b)r(e)g(done)g(t)n(wice.\))41
+b(The)29 b(memory)g(p)r(olicy)f(serv)n(er)g(m)n(ust)h(not)g(o)n(v)n(er)
+e(commit)739 3713 y(the)32 b(n)n(um)n(b)r(er)g(of)g(frames,)g(i.e.)50
+b(the)32 b(total)g(n)n(um)n(b)r(er)g(of)g(guaran)n(teed)e(frames)h(m)n
+(ust)h(nev)n(er)739 3813 y(exceed)27 b(the)h(n)n(um)n(b)r(er)f(of)h
+(frames)f(a)n(vilable)f(for)h(allo)r(cation.)739 3951
+y(Un)n(til)d(the)g(memory)e(p)r(olicy)h(serv)n(er)f(mak)n(es)g(the)i
+(in)n(tial)f(con)n(tact)g(with)h(the)g(ph)n(ysical)e(mem-)739
+4050 y(ory)39 b(serv)n(er,)h(memory)f(will)h(b)r(e)g(allo)r(cated)f(on)
+h(a)f(\014rst)h(come)f(\014rst)g(serv)n(e)g(basis.)72
+b(The)739 4150 y(memory)31 b(p)r(olicy)g(serv)n(er)f(shall)i(use)f(the)
+h(follo)n(wing)f(remote)g(pro)r(cedure)g(call)g(to)h(con)n(tact)739
+4250 y(the)c(ph)n(ysical)f(memory)f(serv)n(er:)946 4475
+y(error)p 1129 4475 25 4 v 28 w(t)i(pm)p 1332 4475 V
+30 w(get)p 1473 4475 V 30 w(con)n(trol)e(\(out)i(h)n(urd)p
+2131 4475 V 30 w(cap)p 2286 4475 V 29 w(t)g(con)n(trol\))739
+4700 y(This)36 b(function)g(will)h(succeed)e(the)i(\014rst)e(time)i(it)
+f(is)g(called)g(and)f(return)h(a)f(con)n(trol)g(ca-)739
+4799 y(pabilit)n(y)-7 b(.)48 b(It)31 b(will)h(fail)f(all)g(subsequen)n
+(t)g(times.)48 b(By)31 b(using)g(a)f(capabilit)n(y)-7
+b(,)32 b(the)g(acquiring)739 4899 y(task)d(ma)n(y)h(mo)n(v)n(e)f(or)g
+(cop)n(y)g(the)h(capabilit)n(y)g(to)f(another)h(task.)43
+b(This)30 b(p)r(ermits)g(replacing)739 4998 y(the)j(p)r(olicy)f(serv)n
+(er)f(on)h(a)g(liv)n(e)g(system.)51 b(A)n(t)33 b(this)g(p)r(oin)n(t,)h
+(the)f(ph)n(ysical)e(memory)h(serv)n(er)p eop end
+%%Page: 39 45
+TeXDict begin 39 44 bop 291 282 a Fq(5.5.)63 b(CONT)-7
+b(AINERS)2030 b Fw(39)291 515 y(will)35 b(b)r(egin)f(allo)r(cating)g
+(memory)g(according)f(to)i(the)g(describ)r(ed)g(proto)r(col.)57
+b(Note)35 b(that)291 615 y(the)d(inital)g(bu\013er)g(will)f(b)r(e)i
+(initialized)f(with)g(the)g(curren)n(t)f(total)g(allo)r(cations)g
+(while)h(the)291 715 y(guaran)n(teed)27 b(frames)h(will)h(b)r(e)h(set)f
+(to)f(zero.)40 b(The)29 b(memory)g(p)r(olicy)f(serv)n(er)f(m)n(ust)j
+(request)291 814 y(the)e(shared)e(p)r(olicy)i(bu\013er)f(as)g(so)r(on)g
+(as)g(p)r(ossible)g(and)h(adjust)g(these)f(v)-5 b(alues.)291
+949 y(The)28 b(shared)f(p)r(olicy)h(bu\013er)g(ma)n(y)g(b)r(e)g
+(obtained)g(from)g(the)g(ph)n(ysical)g(memory)f(serv)n(er)f(b)n(y)291
+1049 y(the)i(p)r(olicy)f(b)n(y)g(calling:)498 1263 y(error)p
+681 1263 25 4 v 28 w(t)h(pm)p 884 1263 V 30 w(get)p 1025
+1263 V 30 w(p)r(olicy)p 1272 1263 V 29 w(bu\013er)g(\(out)g(l4)p
+1784 1263 V 29 w(map)p 1970 1263 V 30 w(t)g(bu\013er\))291
+1478 y(The)d(returned)f(bu\013er)i(is)f(mapp)r(ed)g(with)h(read)e(and)h
+(write)g(access)f(in)n(to)g(the)i(p)r(olicy)f(mem-)291
+1577 y(ory)d(serv)n(er's)f(address)h(space.)35 b(It)24
+b(ma)n(y)e(need)i(to)f(b)r(e)h(resized)f(due)g(to)g(the)h(n)n(um)n(b)r
+(er)f(of)h(tasks)291 1677 y(in)29 b(the)g(system.)41
+b(When)29 b(this)h(is)f(the)g(case,)f(the)i(ph)n(ysical)e(memory)g
+(serv)n(er)f(shall)i(unmap)291 1777 y(the)j(bu\013er)h(from)f(the)g
+(memory)g(p)r(olicy)g(serv)n(er's)e(address)h(space)h(and)g(cop)n(y)f
+(the)i(bu\013er)291 1876 y(in)n(ternally)28 b(as)h(required.)41
+b(The)30 b(memory)e(p)r(olicy)h(serv)n(er)f(will)i(fault)f(on)g(the)h
+(memory)f(re-)291 1976 y(gion)h(on)h(its)g(next)g(access)f(and)g(it)i
+(ma)n(y)e(rerequest)g(the)h(bu\013er.)47 b(This)31 b(call)g(will)g
+(succeed)291 2075 y(when)c(the)h(sender)f(is)h(the)g(memory)f(p)r
+(olicy)g(serv)n(er,)f(it)i(will)g(fail)f(otherwise.)291
+2385 y Fn(5.5)135 b(Con)l(tainers)291 2602 y Fw(In)33
+b(a)f(monolithic)h(k)n(ernel,)g(other)f(than)h(through)f(pip)r(es,)j
+(little)e(data)g(is)f(exc)n(hanged)g(b)r(e-)291 2701
+y(t)n(w)n(een)g(tasks:)47 b(all)32 b(services)g(are)f(pro)n(vided)h(b)n
+(y)h(the)g(k)n(ernel,)g(a)g(trusted)g(en)n(tit)n(y)f(whic)n(h)h(is)291
+2801 y(able)26 b(to)g(directly)g(access)f(tasks')h(address)f(space.)36
+b(In)27 b(a)f(m)n(ultiserv)n(er)f(system,)h(most)g(data)291
+2900 y(acquisitions)36 b(come)i(from)f(user)h(space)f(serv)n(ers.)65
+b(As)38 b(suc)n(h,)i(p)r(o)n(w)n(erful)e(primativ)n(es)e(for)291
+3000 y(mo)n(ving)23 b(memory)h(around)f(is)h(an)h(absolute)e(necessit)n
+(y:)35 b(ph)n(ysical)23 b(cop)n(ying)h(m)n(ust)g(b)r(e)h(k)n(ept)291
+3100 y(to)i(an)h(absolute)g(minim)n(um)g(and)g(there)g(m)n(ust)g(b)r(e)
+h(a)e(w)n(a)n(y)g(to)h(use)g(and)g(preserv)n(e)e(cop)n(y)h(on)291
+3199 y(write)g(pages.)291 3334 y(Con)n(tainers)c(are)g(the)i(basic)f
+(abstraction)f(used)i(for)f(allo)r(cating,)g(addressing)f(and)h
+(sharing)291 3434 y(memory)-7 b(.)35 b(Conceptually)-7
+b(,)26 b(con)n(tainers)f(con)n(tain)h(a)g(set)g(of)g(in)n(tegers)f
+(iden)n(tifying)j Ft(virtual)291 3533 y(frame)p Fw(s)38
+b(in)j(the)h(ph)n(ysical)e(memory)g(serv)n(er.)74 b(A)42
+b(virtual)e(frame)g(references)g(a)h(ph)n(ysi-)291 3633
+y(cal)c(frame)h(but)h(is)f(not)g(b)r(ound)h(to)f(a)g(particular)e(ph)n
+(ysical)i(frame)f(\(thereb)n(y)h(allo)n(wing)291 3733
+y(the)32 b(ph)n(ysical)f(memory)h(serv)n(er)e(to)i(mo)n(v)n(e)f(the)h
+(con)n(ten)n(ts)g(b)r(et)n(w)n(een)g(ph)n(ysical)f(frames)g(for)291
+3832 y(page)25 b(blo)r(c)n(king,)h(assem)n(bly)f(of)i(DMA)g(arena)e
+(and)h(memory)g(defragmen)n(tation\).)35 b(Virtual)291
+3932 y(frames)d(are)g(th)n(us)g(the)i(sharing)d(mec)n(hanism)h(for)h
+(ph)n(ysical)f(frames.)52 b(Although)32 b(virtual)291
+4031 y(frames)23 b(cannot)g(b)r(e)h(copied,)g(their)g(con)n(ten)n(ts)f
+(ma)n(y)g(b)r(e)h(logically)e(copied)h(suc)n(h)h(that)g(a)f(new)291
+4131 y(virtual)j(frame)g(is)h(created)f(with)i(the)f(same)f(underlying)
+g(ph)n(ysical)g(frame.)37 b(Sharing)26 b(ma)n(y)291 4231
+y(b)r(e)i(either)f(real,)g(e.g.)36 b(System)28 b(V)g(shared)e(memory)-7
+b(,)27 b(or)g(logical,)f(e.g.)37 b(cop)n(y)27 b(on)g(write.)291
+4366 y(When)34 b(a)f(virtual)g(frame)g(is)g(allo)r(cated)g(in)n(to)g(a)
+h(con)n(tainer,)f(there)h(ma)n(y)f(b)r(e)h(no)f(ph)n(ysical)291
+4465 y(frame)22 b(asso)r(ciated)g(with)i(it.)36 b(The)23
+b(ph)n(ysical)g(memory)f(serv)n(er)f(guaran)n(tees)h(that)h(when)h(the)
+291 4565 y(con)n(ten)n(ts)j(of)i(the)g(virtual)f(frame)g(is)g(accessed)
+g(a)g(ph)n(ysical)f(frame)h(will)h(b)r(e)g(pro)n(vided)f(in)g(a)291
+4664 y(short)e(amoun)n(t)i(of)f(time)h(\(cf.)38 b(guaran)n(teed)26
+b(virtual)h(frames)g(ab)r(o)n(v)n(e\).)291 4799 y(Eac)n(h)j(virtual)i
+(frame)g(in)g(a)f(con)n(tainer)g(coun)n(ts)h(against)f(the)h(con)n
+(tainer's)f(o)n(wner's)f(total)291 4899 y(allo)r(cated)36
+b(frames.)65 b(Only)37 b(the)g(o)n(wner)f(of)h(a)g(con)n(tainer)f(ma)n
+(y)h(allo)r(cate)f(frames)g(in)n(to)h(a)291 4998 y(con)n(tainer.)p
+eop end
+%%Page: 40 46
+TeXDict begin 40 45 bop 739 282 a Fw(40)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)739
+515 y Fw(Con)n(tainers)20 b(only)i(hold)g(virtual)f(frames.)35
+b(When)22 b(the)g(con)n(ten)n(ts)g(of)g(a)f(frame)h(are)f(copied)g(to)
+739 615 y(bac)n(king)i(store,)h(no)g(asso)r(ciation)e(b)r(et)n(w)n(een)
+i(the)h(data)f(on)g(the)g(bac)n(king)f(store)g(and)h(the)h(the)739
+715 y(frame)i(iden)n(ti\014er)h(in)f(the)h(con)n(tainer)f(is)g(main)n
+(tained)g(b)n(y)h(the)g(ph)n(ysical)e(memory)h(serv)n(er.)739
+846 y(When)i(a)g(task)f(starts,)g(it)h(will)g(allo)r(cate)f(an)g
+(initial)h(con)n(tainer)f(and)g(sev)n(eral)f(frames)h(in)n(to)739
+945 y(it.)51 b(T)n(ypically)-7 b(,)32 b(the)h(total)e(amoun)n(t)h(of)g
+(memory)f(used)h(b)n(y)g(an)g(application)f(will)i(exceed)739
+1045 y(the)h(total)e(n)n(um)n(b)r(er)h(of)h(guaran)n(teed)d(frames.)53
+b(When)34 b(the)g(task)e(reac)n(hes)g(its)h(maxim)n(um)739
+1145 y(p)r(ermitted)d(allo)r(cation,)e(it)h(m)n(ust)g(reuse)g(an)f(a)n
+(v)-5 b(ailable)28 b(frame.)41 b(T)n(ypically)-7 b(,)28
+b(the)i(task)e(will)739 1244 y(c)n(ho)r(ose)21 b(a)g(victim)h(page,)h
+(unmap)f(an)n(y)f(pages)g(that)h(p)r(oin)n(t)g(to)g(the)g(asso)r
+(ciated)e(frame,)j(sw)n(ap)739 1344 y(the)e(frame)e(out,)j(mark)d(the)i
+(frame)f(as)f(sw)n(app)r(ed)h(out)g(and)h(sa)n(v)n(e)d(the)j(sw)n(ap)e
+(iden)n(ti\014er)h(in)h(the)739 1443 y(mapping)28 b(database.)38
+b(A)n(t)29 b(this)g(p)r(oin)n(t,)g(the)f(task)g(ma)n(y)g(reuse)g(the)g
+(frame.)39 b(This)29 b(example)739 1543 y(illustrates)24
+b(that)g(imagining)g(a)g(virtual)g(frame)f(as)h(b)r(ound)h(to)f(a)g
+(page)f(in)i(a)f(task's)f(address)739 1643 y(space)29
+b(for)g(its)h(en)n(tire)f(lifetime)i(is)e(incorrect.)42
+b(It)30 b(should)g(also)e(no)n(w)h(b)r(e)h(clear)f(that)h(when)739
+1742 y(the)36 b(data)e(is)i(ev)n(en)n(tually)e(brough)n(t)g(bac)n(k)h
+(in)n(to)g(memory)g(from)g(bac)n(king)f(store,)i(it)g(ma)n(y)739
+1842 y(reside)27 b(in)h(a)f(di\013eren)n(t)h(virtual)f(frame)g(\(as)g
+(w)n(ell)g(as)g(a)g(di\013eren)n(t)h(ph)n(ysical)f(frame\).)739
+1973 y(Con)n(tainers)c(are)h(used)h(for)f(passing)g(data)g(b)r(et)n(w)n
+(een)h(tasks.)35 b(T)n(ypically)24 b(there)h(will)g(b)r(e)g(t)n(w)n(o)
+739 2073 y(tasks,)31 b(a)g(clien)n(t)g(and)f(a)h(serv)n(er.)45
+b(L4)31 b(pro)n(vides)e(a)i(mec)n(hanism)f(to)h(map)g(pages)f(from)h
+(one)739 2172 y(address)k(space)g(to)h(another.)61 b(This)37
+b(mec)n(hanism)e(could)h(b)r(e)g(used)h(to)f(e.g.)61
+b(map)36 b(a)g(\014le)739 2272 y(in)n(to)g(a)f(clien)n(t)h(task's)f
+(address)g(space.)61 b(An)36 b(analysis)e(rev)n(eals)h(sev)n(eral)f
+(problems)h(with)739 2372 y(this)30 b(approac)n(h.)41
+b(If)30 b(the)g(serv)n(er)e(dies)h(b)r(efore)h(the)g(clien)n(t,)g(the)g
+(mappings)f(in)h(the)g(clien)n(t's)739 2471 y(address)i(space)g(will)i
+(suddenly)f(disapp)r(ear.)53 b(Similarly)-7 b(,)34 b(if)g(the)f(serv)n
+(er)f(is)h(malicious,)h(it)739 2571 y(ma)n(y)19 b(rev)n(ok)n(e)g(the)h
+(mappings)g(at)g(some)f(incon)n(v)n(enien)n(t)h(\(i.e.)35
+b(unreco)n(v)n(erable\))17 b(time)k(causing)739 2671
+y(the)28 b(clien)n(t)h(to)f(crash)f(or)g(unable)h(to)g(inform)g(the)h
+(user)e(of)i(the)f(c)n(hange.)38 b(Also,)28 b(if)g(a)g(serv)n(er)739
+2770 y(allo)r(cates)20 b(resources)f(on)i(b)r(ehalf)h(of)f(the)h(the)f
+(clien)n(t)h(it)f(b)r(ecomes)g(imp)r(ossible)g(to)h(do)e(system)739
+2870 y(wide)33 b(resource)f(accoun)n(ting)g(as)h(man)n(y)g(serv)n(ers)e
+(are)h(not)i(trusted)f(b)n(y)g(the)h(system.)54 b(All)739
+2969 y(of)32 b(these)f(problems)g(are)g(solv)n(ed)f(b)n(y)i(con)n
+(tainers.)47 b(When)33 b(a)e(clien)n(t)h(needs)f(to)h(read)f(data)739
+3069 y(from)26 b(a)g(serv)n(er,)f(it)i(creates)e(a)h(con)n(tainer,)f
+(adds)h(the)h(n)n(um)n(b)r(er)f(of)h(frames)f(that)g(the)h(serv)n(er)
+739 3169 y(will)38 b(require)e(for)h(the)h(op)r(eration)e(to)i(it)g
+(and)f(\014nally)h(shares)e(the)i(con)n(tainer)e(with)i(the)739
+3268 y(serv)n(er.)56 b(After)35 b(sending)f(a)g(request)g(to)g(the)h
+(serv)n(er,)g(the)g(serv)n(er)e(copies)g(the)i(data)f(in)n(to)739
+3368 y(the)29 b(pro)n(vided)e(con)n(tainer.)39 b(It)28
+b(is)h(imp)r(ortan)n(t)f(to)g(understand)h(that)f(the)h(serv)n(er)e(do)
+r(es)h(not)739 3468 y(\\\014ll")34 b(the)h(con)n(tainer:)49
+b(the)35 b(n)n(um)n(b)r(er)g(of)f(frames)g(remains)g(constan)n(t;)j
+(the)e(state)f(of)h(the)739 3567 y(bits)25 b(c)n(hanges.)35
+b(When)25 b(the)h(serv)n(er)d(returns)h(to)h(the)g(clien)n(t,)h(the)f
+(clien)n(t)g(rev)n(ok)n(es)e(the)i(share)739 3667 y(and)37
+b(is)h(no)n(w)f(able)g(to)g(map)h(the)g(frames)f(in)n(to)g(its)h
+(address)e(space)h(b)n(y)g(con)n(tacting)g(the)739 3766
+y(ph)n(ysical)d(memory)g(serv)n(er.)58 b(Should)35 b(the)g(serv)n(er)f
+(die,)j(the)e(clien)n(t)g(remains)f(une\013ected)739
+3866 y(as)e(the)h(data)f(liv)n(es)g(in)h(the)g(ph)n(ysical)e(memory)h
+(serv)n(er.)50 b(The)33 b(ph)n(ysical)e(memory)h(serv)n(er)739
+3966 y(is)g(also)g(trusted)h(th)n(us)f(if)h(a)g(task)f(is)g(malicious,)
+h(it)g(can)g(only)f(b)r(e)h(malicious)f(during)g(the)739
+4065 y(initial)27 b(cop)n(y)e(of)h(the)h(data)f(in)n(to)g(the)h(con)n
+(tainer,)e(i.e.)37 b(b)r(efore)26 b(the)h(clien)n(t)f(starts)g(using)g
+(the)739 4165 y(data)h(and)h(thereb)n(y)f(giving)g(the)h(clien)n(t)g
+(the)g(opp)r(ortunit)n(y)g(to)f(rep)r(ort)g(an)h(inconsistencies)739
+4265 y(to)34 b(the)i(caller.)57 b(Finally)-7 b(,)36 b(as)e(the)i
+(resources)c(are)i(allo)r(cated)g(b)n(y)g(the)h(clien)n(t)g(via)f
+(system)739 4364 y(serv)n(ers,)25 b(global)i(resource)f(accoun)n(ting)g
+(is)i(p)r(ossible.)739 4624 y Fl(5.5.1)112 b(The)38 b(Con)m(tainer)g
+(In)m(terface)739 4809 y Fu(Creating)32 b(Con)m(tainers)83
+b Fw(A)27 b(con)n(tainer)g(ma)n(y)g(b)r(e)h(created)e(using:)946
+4998 y(error)p 1129 4998 25 4 v 28 w(t)i(pm)p 1332 4998
+V 30 w(con)n(tainer)p 1698 4998 V 29 w(create)f(\(out)h(con)n(tainer)p
+2488 4998 V 28 w(t)g(con)n(tainer\))p eop end
+%%Page: 41 47
+TeXDict begin 41 46 bop 291 282 a Fq(5.5.)63 b(CONT)-7
+b(AINERS)2030 b Fw(41)291 515 y(A)35 b(con)n(tainer)p
+729 515 25 4 v 28 w(t)h(is,)h(for)d(all)h(in)n(ten)n(ts)g(and)f(purp)r
+(oses,)j(a)d(h)n(urd)p 2269 515 V 30 w(cap)p 2424 515
+V 29 w(t.)59 b(If)36 b(a)e(con)n(tainer)g(is)291 615
+y(shared)j(with)j(another)e(task,)j(the)e(second)f(task)g(ma)n(y)g
+(allo)r(cate)g(frames)g(whic)n(h)h(coun)n(t)291 715 y(against)30
+b(the)i(con)n(tainer's)d(o)n(wner's)h(total)i(allo)r(cated)e(pages.)47
+b(This)32 b(m)n(ust)f(b)r(e)h(used)f(with)291 814 y(care.)291
+1065 y Fu(Sharing)j(Con)m(tainers)83 b Fw(T)-7 b(o)30
+b(allo)n(w)f(another)g(task)g(to)h(access)f(the)h(con)n(ten)n(ts)f(of)h
+(a)g(con-)291 1164 y(tainer,)j(the)g(con)n(tainer)e(m)n(ust)i(b)r(e)g
+(shared.)51 b(Clearly)-7 b(,)33 b(it)g(is)f(not)h(desirable)e(to)i
+(gran)n(t)e(full)291 1264 y(access)c(to)i(the)g(con)n(tainer)f(to)h
+(the)g(remote)f(task:)39 b(trust)29 b(b)r(et)n(w)n(een)g(a)g(clien)n(t)
+g(and)f(a)h(serv)n(er)291 1364 y(m)n(ust)j(exist,)h(ho)n(w)n(ev)n(er,)e
+(that)i(trust)f(is)g(t)n(ypically)f(limited)i(in)g(b)r(oth)f
+(directions)g(\(neither)291 1463 y(the)24 b(clien)n(t)h(trusts)f(the)h
+(serv)n(er)d(fully)j(nor)e(do)r(es)h(the)h(serv)n(er)e(fully)h(trust)h
+(the)g(clien)n(t\).)36 b(Since)291 1563 y(clien)n(ts)26
+b(pro)n(vide)g(serv)n(er)f(with)j(the)f(resources)e(for)i(the)g(op)r
+(eration,)f(serv)n(ers)f(need)i(a)f(guar-)291 1662 y(an)n(tee)e(that)i
+(the)g(clien)n(t)g(will)f(not)h(touc)n(h)f(the)h(resources)d(while)j
+(it)f(is)h(in)f(a)g(critical)g(section.)291 1762 y(Horri\014c)i
+(results)g(can)h(emerge)f(if)h(this)h(happ)r(ens)f(during)f(a)h(DMA)h
+(op)r(eration.)37 b(Lik)n(ewise,)291 1862 y(clien)n(ts)31
+b(need)h(to)f(ha)n(v)n(e)f(the)i(abilit)n(y)f(to)h(cancel)f(an)g(exan)n
+(t)g(request)g(and)g(reclaim)g(shared)291 1961 y(resources)21
+b(if)k(the)f(serv)n(er)e(do)r(es)i(not)f(answ)n(er)g(in)h(a)f(timely)i
+(manner)e(thereb)n(y)g(also)g(prev)n(en)n(t-)291 2061
+y(ing)34 b(the)g(serv)n(er)f(from)h(b)r(eing)g(able)g(to)g(steal)g
+(resources.)55 b(In)34 b(b)r(oth)h(of)f(these)h(cases,)g(the)291
+2161 y(ph)n(ysical)30 b(memory)g(serv)n(er)f(acts)i(as)f(the)h(trusted)
+g(third)g(part)n(y)-7 b(.)47 b(The)31 b(ph)n(ysical)f(memory)291
+2260 y(serv)n(er)g(allo)n(ws)g(a)i(serv)n(er)e(to)i(lo)r(c)n(k)f(a)h
+(con)n(tainer)f(for)g(a)h(limited)g(amoun)n(t)g(of)g(time)g(during)291
+2360 y(whic)n(h)25 b(the)h(clien)n(t)g(ma)n(y)f(not)g(access)g(or)f
+(destro)n(y)h(the)h(resource.)34 b(A)n(t)26 b(an)n(y)f(other)g(time,)i
+(the)291 2459 y(clien)n(t)g(can)g(cancel)h(the)g(serv)n(er's)d(access)h
+(to)i(the)g(shared)f(resource.)291 2594 y(T)-7 b(o)23
+b(facilit)n(y)i(this,)g(a)f(second)f(class)h(capabilit)n(y)f(is)h(pro)n
+(vided)g(to)g(access)f(con)n(tainers.)34 b(Using)291
+2694 y(this)27 b(capabilit)n(y)-7 b(,)27 b(clien)n(ts)h(ma)n(y)f(not)g
+(allo)r(cate)g(or)g(deallo)r(cate)g(frames.)498 2909
+y(error)p 681 2909 V 28 w(t)39 b(pm)p 895 2909 V 31 w(con)n(tainer)p
+1262 2909 V 28 w(share)f(\(in)i(con)n(tainer)p 1996 2909
+V 28 w(t)g(con)n(tainer,)g(in)g(task)p 2755 2909 V 29
+w(t)f(re-)498 3008 y(mote,)28 b(out)f(con)n(tainer)p
+1217 3008 V 29 w(t)h(w)n(eak)p 1487 3008 V 29 w(ref)6
+b(\))291 3223 y Fo(we)l(ak)p 465 3223 26 4 v 31 w(r)l(ef)48
+b Fw(can)30 b(b)r(e)h(passed)e(to)i(the)f(sharee)f(using)h(the)h
+(normal)e(capabilit)n(y)h(passing)f(pro-)291 3322 y(to)r(col.)291
+3573 y Fu(Allo)s(cating)40 b(and)h(Deallo)s(cating)g(Memory)82
+b Fw(Virtual)36 b(frames)f(ma)n(y)g(b)r(e)h(allo)r(cated)291
+3673 y(in)n(to)27 b(a)g(con)n(tainer)f(using:)498 3887
+y(error)p 681 3887 25 4 v 28 w(t)38 b(pm)p 894 3887 V
+30 w(con)n(tainer)p 1260 3887 V 29 w(allo)r(cate)f(\(in)h(con)n(tainer)
+p 2081 3887 V 28 w(t)h(con)n(tainer,)g(in)f(frame)p 2891
+3887 V 29 w(t)498 3987 y(start,)27 b(in)h(out)g(in)n(t)g(coun)n(t,)f
+(in)h(in)n(t)g(\015ags\))291 4201 y Fo(start)35 b Fw(is)27
+b(the)h(\014rst)f(frame)g(iden)n(ti\014er)h(to)f(use)h(for)f(the)h(new)
+f(memory)-7 b(.)37 b(If)28 b Fo(c)l(ount)34 b Fw(is)28
+b(greater)291 4301 y(than)f(one)f(then)h(frames)g(will)g(b)r(e)g(allo)r
+(cated)f(in)h(the)g(subsequen)n(t)g Fs(count)17 b Fg(\000)f
+Fw(1)27 b(frame)f(iden-)291 4401 y(ti\014ers.)65 b(The)38
+b(n)n(um)n(b)r(er)f(of)g(frames)f(actually)h(allo)r(cated)g(is)g
+(returned)g(in)g Fo(c)l(ount)p Fw(.)65 b(If)38 b(an)291
+4500 y(iden)n(ti\014er)29 b(already)f(references)g(a)h(virtual)f
+(frame,)i Ft(EEXIST)c Fw(is)k(returned.)41 b Fo(\015ags)c
+Fw(is)29 b(a)g(bit-)291 4600 y(wise)k(or)g(of:)49 b Ft(CONT)p
+905 4600 27 4 v 30 w(ALLOC)p 1155 4600 V 29 w(PARTIAL)p
+Fw(,)31 b Ft(CONT)p 1722 4600 V 30 w(ALLOC)p 1972 4600
+V 29 w(SQUASH)g Fw(and)j Ft(CONT)p 2640 4600 V 30 w(ALLOC)p
+2890 4600 V 29 w(EXTRA)p Fw(.)291 4700 y(If)e Ft(CONT)p
+559 4700 V 30 w(ALLOC)p 809 4700 V 29 w(PARTIAL)23 b
+Fw(is)j(set)g(and)g(the)g(n)n(um)n(b)r(er)f(of)h(frames)f(whic)n(h)h
+(can)f(b)r(e)i(allo)r(cated)291 4799 y(b)r(efore)e(a)h(memory)f(allo)r
+(cation)g(error)f(o)r(ccurs)h(is)h(greater)e(than)i(one)g(but)g(less)g
+(than)g Fo(c)l(ount)291 4899 y Fw(then)36 b(the)h(maxim)n(um)f(n)n(um)n
+(b)r(er)g(of)g(frames)f(is)h(allo)r(cated,)i(coun)n(t)d(is)h(set)h(to)f
+(that)g(n)n(um-)291 4998 y(b)r(er)e(and)f(the)i(error)d(is)i(returned.)
+56 b(If)41 b Ft(CONT)p 1726 4998 V 30 w(ALLOC)p 1976
+4998 V 29 w(PARTIAL)31 b Fw(is)j(not)g(set)g(then)h(partial)p
+eop end
+%%Page: 42 48
+TeXDict begin 42 47 bop 739 282 a Fw(42)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)739
+515 y Fw(allo)r(cations)35 b(will)i(fail,)i(coun)n(t)e(will)g(b)r(e)g
+(set)f(to)h(0)f(and)h(an)f(error)f(will)i(b)r(e)g(returned.)64
+b(If)739 615 y Ft(CONT)p 920 615 27 4 v 30 w(ALLOC)p
+1170 615 V 29 w(SQUASH)23 b Fw(is)j(set)g(and)f(a)g(frame)h(iden)n
+(ti\014er)f(already)f(references)h(a)g(frame,)h(the)739
+715 y(virtual)f(frame)f(will)i(b)r(e)f(dropp)r(ed)g(and)g(its)h(con)n
+(ten)n(ts)e(lost.)36 b(Using)25 b(this)h(\015ag)e(is)h(dangerous)739
+814 y(and)30 b(b)r(e)g(a)g(sign)f(of)h(in)n(ternal)f(inconsistencies)g
+(in)i(the)f(task!)43 b(All)31 b(virtual)e(frames)g(should)739
+914 y(b)r(e)j(accoun)n(ted)g(for)f(b)n(y)h(the)g(task)g(and)g(deallo)r
+(cated)f(explicitly)-7 b(.)50 b(If)39 b Ft(CONT)p 3111
+914 V 30 w(ALLOC)p 3361 914 V 29 w(EXTRA)739 1013 y Fw(is)25
+b(set)g(then)h(extra)e(frames)g(ma)n(y)h(b)r(e)g(allo)r(cated)g
+(otherwise)f(the)h(ph)n(ysical)g(memory)f(serv)n(er)739
+1113 y(will)36 b(only)f(allo)r(cate)f(up)i(to)g(the)g(guaran)n(teed)e
+(virtual)h(frame)g(limit.)61 b(This)36 b(\015ag)e(should)739
+1213 y(only)c(b)r(e)h(used)g(b)n(y)f(tasks)g(able)g(to)g(handle)h(the)g
+(added)f(complexit)n(y)g(of)h(the)g(extra)f(frame)739
+1312 y(proto)r(col.)36 b(The)27 b(con)n(ten)n(ts)g(of)h(allo)r(cated)f
+(frames)f(is)i(unde\014ned.)739 1445 y(Deallo)r(cating)f(memory)g(is)g
+(done)g(using:)946 1646 y(error)p 1129 1646 25 4 v 28
+w(t)e(pm)p 1329 1646 V 30 w(con)n(tainer)p 1695 1646
+V 29 w(deallo)r(cate)e(\(in)i(con)n(tainer)p 2572 1646
+V 28 w(t)g(con)n(tainer,)e(in)i(frame)p 3339 1646 V 29
+w(t)946 1745 y(start,)j(in)f(out)h(in)n(t)g(coun)n(t,)f(in)h(in)n(t)g
+(\015ags\))739 1946 y(The)18 b(argumen)n(ts)f(ha)n(v)n(e)h(similar)f
+(meaning)h(as)g(those)g(in)g Ft(pm)p 2545 1946 27 4 v
+31 w(container)p 2972 1946 V 28 w(allocate)p Fw(.)30
+b Ft(CONT)p 3581 1946 V 30 w(DEALLOC)p 3919 1946 V 28
+w(PARTIAL)739 2046 y Fw(and)18 b Ft(CONT)p 1072 2046
+V 30 w(DEALLOC)p 1410 2046 V 28 w(SQUASH)e Fw(are)i(similar)f(to)h
+Ft(CONT)p 2379 2046 V 30 w(ALLOC)p 2629 2046 V 30 w(PARTIAL)d
+Fw(and)j Ft(CONT)p 3310 2046 V 30 w(ALLOC)p 3560 2046
+V 29 w(SQUASH)739 2145 y Fw(resp)r(ectiv)n(ely)-7 b(.)739
+2392 y Fu(Mapping)31 b(Memory)83 b Fw(The)27 b(ph)n(ysical)g(memory)g
+(serv)n(er)f(guaran)n(tees)f(that)j(a)g(mapping)739 2491
+y(op)r(eration)34 b(tak)n(es)g(a)h(short)g(amoun)n(t)g(of)g(time:)53
+b(no)35 b(guaran)n(tee)e(is)j(made)f(that)g(this)h(will)739
+2591 y(happ)r(en)23 b(immediately)g(as)f(the)g(underlying)h(ph)n
+(ysical)e(frames)h(ma)n(y)g(ha)n(v)n(e)f(to)i(b)r(e)g(allo)r(cated)739
+2691 y(in)31 b(whic)n(h)g(case)f(the)h(ph)n(ysical)f(memory)g(serv)n
+(er)f(ma)n(y)i(ha)n(v)n(e)e(to)i(b)r(e)g(reap)f(ph)n(ysical)g(pages)739
+2790 y(from)d(other)g(tasks')g(extra)g(frame)g(allo)r(cations.)739
+2923 y(The)35 b(ph)n(ysical)e(memory)h(serv)n(er)f(ma)n(y)h(unmap)h
+(pages)e(at)i(an)n(y)e(time.)59 b(This)35 b(allo)n(ws)e(the)739
+3023 y(ph)n(ysical)24 b(memory)g(serv)n(er)f(to)h(fucn)n(tionally)h(lo)
+r(c)n(k)f(the)h(con)n(ten)n(ts)f(of)g(the)i(frame)e(and)g(mo)n(v)n(e)
+739 3122 y(it)34 b(to)f(a)g(new)g(ph)n(ysical)f(frame.)54
+b(As)33 b(suc)n(h,)i(tasks)d(m)n(ust)h(b)r(e)h(prepared)e(to)h
+(reestablish)g(a)739 3222 y(mapping)h(with)g(the)g(ph)n(ysical)f
+(memory)h(serv)n(er)e(at)h(an)n(ytime.)56 b(The)34 b(ph)n(ysical)f
+(memory)739 3321 y(serv)n(er)26 b(is)h(not)h(a)f(registry)f(of)i
+(mappings:)36 b(it)28 b(is)f(a)h(cac)n(he.)739 3454 y(Read-only)d
+(mappings)h(ma)n(y)g(b)r(e)h(returned)f(when)g(read/write)f(mapping)h
+(are)g(requested:)739 3554 y(the)21 b(ph)n(ysical)f(memory)g(serv)n(er)
+g(will)h(nev)n(er)f(gran)n(t)f(a)i(read/write)e(mapping)i(if)g(the)h
+(frame)e(is)739 3653 y(mark)n(ed)j(cop)n(y)h(on)g(write.)36
+b(In)25 b(order)e(to)i(obtain)f(a)g(read/write)f(mapping)i(\(and)f(th)n
+(us)h(force)739 3753 y(the)32 b(cop)n(y)e(on)i(write\),)g(the)g(task)f
+(m)n(ust)h(add)f(the)h(enforced)f(write)g(\015ag)g(to)h(the)g(mapping)
+739 3853 y(request.)946 4053 y(error)p 1129 4053 25 4
+v 28 w(t)23 b(pm)p 1327 4053 V 30 w(con)n(tainer)p 1693
+4053 V 29 w(map)f(\(in)h(con)n(tainer)p 2361 4053 V 28
+w(t)g(con)n(tainer,)f(in)g(frame)p 3122 4053 V 30 w(t)g(start,)946
+4153 y(in)28 b(in)n(t)g(nr)p 1254 4153 V 30 w(frames,)f(in)h(in)n(t)f
+(\015ags\))739 4354 y(Flags)17 b(ma)n(y)h(is)g(a)g(bit)n(wise)h(or)e
+(of:)32 b Ft(CONT)p 1921 4354 27 4 v 30 w(MAP)p 2083
+4354 V 30 w(READ)p Fw(,)17 b Ft(CONT)p 2505 4354 V 30
+w(MAP)p 2667 4354 V 30 w(WRITE)f Fw(and)i Ft(CONT)p 3261
+4354 V 30 w(MAP)p 3423 4354 V 30 w(FORCE)p 3673 4354
+V 30 w(WRITE)p Fw(.)739 4453 y Ft(CONT)p 920 4453 V 30
+w(MAP)p 1082 4453 V 30 w(FORCE)p 1332 4453 V 29 w(WRITE)26
+b Fw(will)i(only)f(b)r(e)h(resp)r(ected)f(if)35 b Ft(CONT)p
+2685 4453 V 29 w(MAP)p 2846 4453 V 30 w(WRITE)26 b Fw(is)i(also)e(set.)
+739 4700 y Fu(Doing)33 b(It)i(All)e(A)m(t)i(Once)83 b
+Fw(When)30 b(reading)f(to)h(or)e(writing)i(data)f(from)g(a)g(serv)n
+(er,)g(the)739 4799 y(task)f(will)g(normally:)37 b(allo)r(cate)28
+b(a)f(new)i(con)n(tainer,)e(\014ll)i(it)f(with)h(memory)f(and)g(share)f
+(the)739 4899 y(con)n(tainer)22 b(with)i(the)g(serv)n(er.)34
+b(Since)24 b(this)g(is)f(suc)n(h)h(a)f(common)g(op)r(eration,)h(short)e
+(cuts)i(are)739 4998 y(pro)n(vided)i(to)i(reduce)f(the)h(required)f(n)n
+(um)n(b)r(er)g(of)h(rp)r(cs:)p eop end
+%%Page: 43 49
+TeXDict begin 43 48 bop 291 282 a Fq(5.5.)63 b(CONT)-7
+b(AINERS)2030 b Fw(43)498 515 y(error)p 681 515 25 4
+v 28 w(t)21 b(pm)p 877 515 V 31 w(con)n(tainer)p 1244
+515 V 28 w(create)p 1490 515 V 29 w(with)g(\(out)h(con)n(tainer)p
+2211 515 V 28 w(t)g(con)n(tainer,)f(in)g(in)g(in)n(t)498
+615 y(frame)p 709 615 V 30 w(coun)n(t,)27 b(out)g(con)n(tainer)p
+1473 615 V 29 w(t)h(w)n(eak)p 1743 615 V 29 w(ref)6 b(\))498
+855 y(error)p 681 855 V 28 w(t)27 b(pm)p 883 855 V 30
+w(con)n(tainer)p 1249 855 V 28 w(create)p 1495 855 V
+29 w(from)f(\(out)g(con)n(tainer)p 2233 855 V 29 w(t)g(con)n(tainer,)g
+(in)g(con-)498 954 y(tainer)p 716 954 V 29 w(t)19 b(source,)g(in)g
+(frame)p 1360 954 V 29 w(t)g(start,)h(in)e(in)n(t)h(coun)n(t,)h(out)e
+(con)n(tainer)p 2578 954 V 29 w(t)h(w)n(eak)p 2839 954
+V 28 w(ref)6 b(\))498 1194 y(error)p 681 1194 V 28 w(t)43
+b(pm)p 899 1194 V 30 w(con)n(tainer)p 1265 1194 V 28
+w(create)p 1511 1194 V 29 w(grather)e(\(out)h(con)n(tainer)p
+2376 1194 V 29 w(t)g(con)n(tainer,)j(in)498 1293 y(con)n(tainer)p
+839 1293 V 29 w(t)28 b(source,)e(in)i(frame)p 1508 1293
+V 29 w(t)g([])g(frames,)f(out)h(con)n(tainer)p 2444 1293
+V 28 w(t)g(w)n(eak)p 2713 1293 V 29 w(ref)6 b(\))291
+1571 y Fu(Cop)m(ying)46 b(Data)i(In)m(to)e(or)h(Out)f(of)h(Con)m
+(tainers)83 b Fw(It)40 b(is)h(p)r(ossible)f(to)g(cop)n(y)f(data)291
+1671 y(in)n(to)33 b(con)n(tainers)g(b)n(y)h(mapping)f(the)i(frames)e
+(in)h(question)g(and)g(using)g Ft(memcpy)p Fw(.)54 b(If)35
+b(this)291 1771 y(tec)n(hnique)20 b(is)h(used)g(there)f(is)h(no)f(easy)
+g(w)n(a)n(y)f(to)i(create)f(logical)f(copies)h(\(cop)n(y)g(on)h
+(write\):)33 b(an)291 1870 y(esp)r(ecially)d(imp)r(ortan)n(t)i(tec)n
+(hnique)f(for)g(sharing)f(executable)h(and)g(shared)f(library)g(text.)
+291 1970 y(A)35 b(family)g(of)g(functions)h(are)e(a)n(v)-5
+b(ailable)34 b(whic)n(h)h(logically)f(copies)g(the)i(con)n(ten)n(ts)e
+(of)h(one)291 2070 y(con)n(tainer)26 b(to)h(another:)498
+2309 y(error)p 681 2309 V 28 w(t)35 b(pm)p 891 2309 V
+31 w(con)n(tainer)p 1258 2309 V 28 w(cop)n(y)f(\(in)i(con)n(tainer)p
+1960 2309 V 29 w(t)f(src,)i(in)e(frame)p 2529 2309 V
+29 w(t)h(src)p 2729 2309 V 29 w(start,)498 2409 y(in)e(coun)n(tainer)p
+988 2409 V 29 w(t)g(dest,)h(in)g(frame)p 1599 2409 V
+29 w(t)f(dest)p 1842 2409 V 30 w(start,)h(in)f(in)n(t)g(frame)p
+2544 2409 V 29 w(coun)n(t,)h(out)498 2508 y(frame)p 709
+2508 V 30 w(t)27 b(frame)p 1004 2508 V 30 w(error\))498
+2748 y(error)p 681 2748 V 28 w(t)19 b(pm)p 875 2748 V
+30 w(con)n(tainer)p 1241 2748 V 28 w(cop)n(y)p 1436 2748
+V 29 w(scatter)f(\(in)h(con)n(tainer)p 2185 2748 V 28
+w(t)g(src,)h(in)e(frame)p 2703 2748 V 30 w(t)g(src)p
+2886 2748 V 29 w(start,)498 2848 y(in)h(coun)n(tainer)p
+973 2848 V 28 w(t)g(dest,)i(in)d(frame)p 1537 2848 V
+30 w(t)g([])h(dest)p 1830 2848 V 30 w(frames,)g(out)g(frame)p
+2486 2848 V 29 w(t)g(frame)p 2772 2848 V 29 w(error\))498
+3087 y(error)p 681 3087 V 28 w(t)38 b(pm)p 894 3087 V
+30 w(con)n(tainer)p 1260 3087 V 29 w(cop)n(y)p 1456 3087
+V 29 w(gather)f(\(in)h(con)n(tainer)p 2229 3087 V 29
+w(t)g(src,)h(in)g(frame)p 2807 3087 V 29 w(t)f([])498
+3187 y(src)p 606 3187 V 29 w(frames,)d(in)f(coun)n(tainer)p
+1417 3187 V 29 w(t)g(dest,)h(in)f(frame)p 2027 3187 V
+30 w(t)g(dest)p 2271 3187 V 30 w(start,)h(out)f(frame)p
+2891 3187 V 29 w(t)498 3286 y(frame)p 709 3286 V 30 w(error\))498
+3526 y(error)p 681 3526 V 28 w(t)19 b(pm)p 875 3526 V
+30 w(con)n(tainer)p 1241 3526 V 28 w(cop)n(y)p 1436 3526
+V 29 w(scatter)p 1711 3526 V 29 w(gather)f(\(in)h(con)n(tainer)p
+2446 3526 V 28 w(t)g(src,)g(in)g(frame)p 2964 3526 V
+29 w(t)498 3626 y([])42 b(src)p 694 3626 V 29 w(frames,)i(in)e(coun)n
+(tainer)p 1522 3626 V 29 w(t)f(dest,)46 b(in)41 b(frame)p
+2157 3626 V 30 w(t)g([])h(dest)p 2496 3626 V 30 w(frames,)i(out)498
+3725 y(frame)p 709 3725 V 30 w(t)27 b(frame)p 1004 3725
+V 30 w(error\))291 3965 y(If)36 b(a)g(frame)f(do)r(es)h(not)g(exist)g
+(in)g(the)h(source,)f(ENOENT.)g(If)g(a)g(frame)f(do)r(es)h(not)g(exist)
+291 4065 y(in)d(the)g(destination,)h(ENOMEM)e(is)h(returned.)52
+b(In)33 b(b)r(oth)g(cases,)g(the)h(frame)e(iden)n(ti\014er)291
+4164 y(causing)26 b(the)i(error)e(is)h(returned)g(in)h
+Fo(fr)l(ame)p 1659 4164 26 4 v 32 w(err)l(or)p Fw(.)291
+4442 y Fu(Lo)s(c)m(king)k(Con)m(tainers)f(and)i(Pinning)e(Memory)291
+4720 y(Finding)f(Deallo)s(cate)i(Memory)291 4998 y(Reusing)e(frames)83
+b Fw(release)p 1262 4998 25 4 v 28 w(data)p eop end
+%%Page: 44 50
+TeXDict begin 44 49 bop 739 282 a Fw(44)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)739
+515 y Fl(5.5.2)112 b(Mo)m(ving)39 b(Data)739 712 y Fw(Data)30
+b(will)g(b)r(e)g(mo)n(v)n(ed)g(around)f(using)g(con)n(tainers.)43
+b(Describ)r(e)30 b(ho)n(w)f(to)h(read)f(and)h(write.)739
+812 y(T)-7 b(ask)27 b(->)g(FS)h(->)g(Device)f(driv)n(ers.)36
+b(Lo)r(c)n(king)26 b(memory)-7 b(.)36 b(Cac)n(hing.)739
+952 y(It)d(is)g(imp)r(ortan)n(t)g(that)g(clien)n(ts)g(do)f(the)i(allo)r
+(cation)d(for)i(the)g(memory)f(whic)n(h)h(they)g(use:)739
+1052 y(not)c(the)g(serv)n(ers)e(doing)h(allo)r(cations)g(on)g(b)r
+(ehalf)i(on)e(clien)n(ts:)40 b(in)29 b(the)g(latter,)g(there)g(is)g(no)
+739 1152 y(w)n(a)n(y)d(to)i(do)f(resource)f(trac)n(king.)739
+1293 y(Discuss)31 b(mmap:)43 b(lo)r(cal)30 b(function)i(call.)46
+b(RPC)31 b(is)f(done)h(when)g(a)f(page)g(is)h(faulted:)44
+b(do)31 b(a)739 1392 y(read)d(from)h(the)g(fs)g(\(in)n(to)g(a)g(con)n
+(tainer\),)f(then)h(map)g(the)g(data)g(from)g(the)g(con)n(tainer)e(in)n
+(to)739 1492 y(the)h(AS)g(as)f(required.)739 1633 y(MAP)p
+939 1633 25 4 v 30 w(COPY)38 b(suc)n(ks:)58 b(fs)39 b(m)n(ust)g(sa)n(v)
+n(e)e(all)i(mo)r(di\014ed)g(data.)70 b(What)39 b(happ)r(ens)g(when)g(a)
+739 1732 y(100MB)23 b(\014le)h(is)g(completely)g(rewritten)f(\(or)h
+(1GB,)g(etc\)?)36 b(can)24 b(w)n(e)f(use)h(up)r(calls?)36
+b(If)25 b(w)n(e)e(do,)739 1832 y(the)32 b(fs)h(still)f(needs)g(to)g
+(hold)g(the)g(data)g(in)g(the)h(in)n(tern.)50 b(Can)32
+b(w)n(e)g(cop)n(y)f(the)h(\014le)h(on)e(disk)739 1932
+y(and)c(use)h(that)g(as)f(bac)n(king)f(store)h(\(think)h(ho)n(w)f
+(deleting)h(an)f(op)r(en)h(\014le)f(w)n(orks\).)739 2072
+y(Can)i(a)g(readonly)g(priv)-5 b(ate)29 b(mapping)g(once)g(faulted)h(b)
+r(e)g(dropp)r(ed)g(or)e(m)n(ust)i(w)n(e)f(promote)739
+2172 y(it)e(to)f(anon)n(ymous)e(memory)i(and)g(send)g(it)g(to)g(sw)n
+(ap)g(fearing)f(that)i(the)f(underlying)g(blo)r(c)n(k)739
+2272 y(migh)n(t)g(c)n(hange)g(b)r(et)n(w)n(een)g(dropping)g(it)h(and)f
+(rereading)f(it)h(\(e.g.)37 b(b)n(y)26 b(another)f(task)h(mo)r(di-)739
+2371 y(fying)h(the)h(\014le\)?)739 2698 y Fn(5.6)135
+b(Cac)l(hing)46 b(Store)f(Accesses)739 2923 y Fw(It)20
+b(need)h(not)f(b)r(e)g(explained)g(ho)n(w)f(cac)n(hing)g(accesses)g(to)
+h(stores)f(can)g(radically)g(impro)n(v)n(e)g(the)739
+3023 y(sp)r(eed)i(of)g(the)h(system.)34 b(In)21 b(a)g(monolithic)g(k)n
+(ernel)f(this)i(cac)n(he)e(is)h(added)g(to)g(b)n(y)f(the)i(readers,)739
+3123 y(i.e.)36 b(the)24 b(device)f(driv)n(ers,)g(supplemen)n(ted)h
+(with)g(metadata)f(from)g(the)h(\014le)g(systems)f(in)h(the)739
+3222 y(form)35 b(of)h(exp)r(ected)f(access)g(patterns)g(based)g(on)g
+(the)h(t)n(yp)r(e)g(of)f(data)g(and)g(ho)n(w)g(the)h(\014le)739
+3322 y(w)n(as)28 b(op)r(ened)i(and)f(managed)g(b)n(y)g(the)h(virtual)f
+(memory)g(manager.)41 b(In)30 b(our)e(design,)i(this)739
+3422 y(is)37 b(imp)r(ossible:)55 b(eac)n(h)36 b(comp)r(onen)n(t|eac)n
+(h)f(device)i(driv)n(er,)h(eac)n(h)e(\014le)h(system)f(and)h(the)739
+3521 y(ph)n(ysical)f(memory)h(manager|all)e(liv)n(e)i(in)g(their)g(o)n
+(wn)g(address)f(spaces;)41 b(additionally)739 3621 y(there)35
+b(will)g(rarely)f(b)r(e)h(m)n(utual)g(trust:)52 b(the)36
+b(ph)n(ysical)e(memory)g(serv)n(er)g(ma)n(y)g(not)h(trust)739
+3720 y(the)c(\014le)g(systems)f(nor)g(the)h(\\device)f(driv)n(ers")e
+(\(consider)i(a)g(net)n(w)n(ork)g(blo)r(c)n(k)g(device\).)46
+b(A)739 3820 y(cac)n(hing)26 b(mec)n(hanism)h(m)n(ust)h(b)r(e)g
+(designed.)739 3961 y(The)20 b(purp)r(ose)g(of)g(cac)n(hing)f(is)h
+(useful)h(for)f(m)n(ultiple)g(readers)f(of)h(a)g(giv)n(en)f(blo)r(c)n
+(k.)34 b(Sometimes)739 4061 y(this)24 b(is)g(the)h(same)f(task,)g(ho)n
+(w)n(ev)n(er,)f(more)g(often)i(it)f(is)g(m)n(ultiple)h(tasks.)35
+b(Th)n(us,)25 b(ha)n(ving)e(the)739 4160 y(cac)n(hing)k(sc)n(heme)i(in)
+g(eac)n(h)e(task)h(is)h(quite)g(di\016cult)g(as)f(tasks)g(do)h(not)f
+(trust)h(one)f(another)739 4260 y(and)h(furthermore,)g(tasks)g(can)g
+(die)h(at)f(an)n(y)g(time)h(thereb)n(y)f(dropping)g(their)g(cac)n(he.)
+42 b(The)739 4359 y(logical)19 b(place)i(to)f(put)i(the)f(cac)n(he)f
+(then)h(is)f(the)i(common)e(p)r(oin)n(t)h(of)f(access,)h(the)h(\014le)e
+(system.)739 4500 y(An)29 b(argumen)n(t)f(could)h(b)r(e)g(made)g(that)g
+(in)g(realit)n(y)-7 b(,)29 b(the)g(common)f(p)r(oin)n(t)h(of)g(access)f
+(is)h(the)739 4600 y(device)g(driv)n(er:)40 b(there)29
+b(can)h(b)r(e)g(m)n(ultiple)g(accessors)d(of)j(the)g(same)f(store.)42
+b(The)30 b(question)739 4700 y(m)n(ust)h(b)r(e)g(ask)n(ed:)41
+b(what)31 b(happ)r(ens)f(when)h(the)g(device)f(driv)n(er)g(is)g(made)g
+(the)h(cac)n(he)f(p)r(oin)n(t)739 4799 y(instead)j(of)g(the)h(\014le)f
+(system?)53 b(Logically)-7 b(,)33 b(a)g(large)f(tradeo\013)g(is)h(made)
+g(in)h(terms)f(of)g(the)739 4899 y(abilit)n(y)27 b(to)g(in)n(telligen)n
+(tly)g(decide)g(what)g(frame)g(to)g(k)n(eep)f(in)i(the)f(cac)n(he.)36
+b(The)27 b(\014le)g(system,)739 4998 y(for)c(instance,)h(has)f
+(meta-data)f(ab)r(out)i(ho)n(w)e(a)h(giv)n(en)g(frame)g(ma)n(y)g(b)r(e)
+g(used)h(based)f(on)g(ho)n(w)p eop end
+%%Page: 45 51
+TeXDict begin 45 50 bop 291 282 a Fq(5.6.)63 b(CA)n(CHING)29
+b(STORE)d(A)n(CCESSES)1413 b Fw(45)291 515 y(a)34 b(\014le)i(is)f(op)r
+(ened)h(and)f(ma)n(y)f(realize)h(that)g(some)g(frames)f(need)i(not)f(b)
+r(e)h(placed)f(in)h(the)291 615 y(cac)n(he)29 b(b)r(ecause)h(they)h
+(will)g(b)r(e)g(used)f(once)g(and)h(immediately)f(discarded.)45
+b(This)31 b(is)f(true)291 715 y(of)d(the)i(access)d(patterns)i(of)f(m)n
+(ultimedia)i(applications.)36 b(These)28 b(t)n(yp)r(es)g(of)f(hin)n(ts)
+h(ma)n(y)g(b)r(e)291 814 y(gathered)35 b(at)h(\014le)g(op)r(en)g(time.)
+63 b(The)36 b(class)f(of)h(data)g(is)g(another)f(w)n(a)n(y)f(the)j
+(\014le)f(system)291 914 y(is)j(able)h(to)f(predict)h(usage,)i(for)d
+(example,)k(it)d(understands)f(the)h(di\013erence)g(b)r(et)n(w)n(een)
+291 1013 y(meta-data|ino)r(des)28 b(and)h(directories|and)f(\014le)h
+(data.)42 b(A)29 b(\014le)h(system)f(is)g(also)f(able)h(to)291
+1113 y(an)n(ticipate)f(\014le-lev)n(el)h(access)f(patterns)g(whereas)g
+(a)h(device)g(driv)n(er)f(can)h(only)f(an)n(ticipate)291
+1213 y(blo)r(c)n(k-lev)n(el)f(access)g(patterns,)h(i.e.)40
+b(although)28 b(\014le)h(data)f(is)g(sometimes)g(sequen)n(tial,)g(it)h
+(is)291 1312 y(often)f(scattered)g(across)e(a)i(section)g(of)g(the)h
+(disk)f(due)h(to)f(fragmen)n(tation.)38 b(The)28 b(primary)291
+1412 y(w)n(a)n(y)i(a)h(the)g(device)g(driv)n(er)f(can)h(really)f
+(manage)h(its)g(cac)n(he)f(is)i(through)e(historical)g(data)291
+1512 y(in)c(the)i(form)e(of)g(previous)g(accesses)f(\(whic)n(h)i(is)g
+(itself)g(ev)n(en)f(more)g(limited)h(as)f(the)h(device)291
+1611 y(driv)n(er)i(is)i(uninformed)f(of)h(cac)n(he)f(hits)h(in)g(the)g
+(\014le)g(system)f(cac)n(he\).)46 b(This)31 b(t)n(yp)r(e)g(of)f(data)
+291 1711 y(implies)e(some)g(form)g(of)h(LR)n(U,)f(least)h(recen)n(tly)e
+(used,)i(eviction)f(sc)n(heme.)39 b(It)29 b(should)g(no)n(w)291
+1810 y(b)r(e)40 b(clear)e(that)i(the)g(\014le)g(system)f(can)h(mak)n(e)
+f(smarter)f(decisions)h(ab)r(out)g(what)h(whic)n(h)291
+1910 y(blo)r(c)n(ks)28 b(to)h(evict)h(due)g(to)f(its)g(abilit)n(y)g(to)
+h(mak)n(e)e(predictions)h(based)g(on)g(clien)n(t)h(hin)n(ts)f(and)291
+2010 y(its)e(greater)f(understanding)h(of)h(the)g(data)f(in)h(the)g
+(store.)291 2209 y(If)d(w)n(e)f(resign)f(ourselv)n(es)g(to)h(k)n
+(eeping)g(the)h(cac)n(he)f(only)g(in)h(the)g(\014le)f(system,)h(then)g
+(m)n(ultiple)291 2309 y(users)g(of)h(a)g(store)f(will)i(b)r(e)g(p)r
+(enalized)f(greatly:)35 b(a)26 b(blo)r(c)n(k)g(read)f(b)n(y)h(one)g
+(clien)n(t)g(will)h(alw)n(a)n(ys)291 2408 y(b)r(e)21
+b(reread)e(if)i(another)f(clien)n(t)h(requests)f(the)h(same)f(blo)r(c)n
+(k:)33 b(not)21 b(only)f(is)h(the)g(store)f(accessed)291
+2508 y(a)f(second)h(time,)i(but)e(t)n(wice)g(as)f(m)n(uc)n(h)h(memory)f
+(will)h(b)r(e)h(used)f(as)f(there)h(is)g(no)f(w)n(a)n(y)g(to)h(share)
+291 2607 y(the)k(frame)g(and)g(use)g(cop)n(y)f(on)h(write.)35
+b(Is)24 b(this)h(p)r(enalt)n(y)f(w)n(orth)f(the)i(added)f(in)n
+(telligence)g(in)291 2707 y(the)h(\014le)g(system?)35
+b(An)26 b(argumen)n(t)d(can)i(b)r(e)g(made)f(that)h(using)g(just)g(one)
+g(cac)n(hing)e(strategy)291 2807 y(is)g(sub)r(optimital)h(when)g(w)n(e)
+f(could)h(just)g(ha)n(v)n(e)e(t)n(w)n(o:)35 b(nothing)23
+b(stops)g(b)r(oth)h(the)g(\014le)g(system)291 2906 y(and)31
+b(the)i(device)e(driv)n(er)g(from)g(cac)n(hing)g(thereb)n(y)g(p)r
+(ermitting)i(the)f(former)f(to)g(con)n(tin)n(ue)291 3006
+y(to)g(main)n(tain)g(an)h(in)n(telligen)n(t)f(cac)n(he)g(and)g(the)h
+(device)f(driv)n(er)g(to)g(ha)n(v)n(e)f(its)i(simple)g(LR)n(U)291
+3106 y(cac)n(he.)56 b(This)35 b(argumen)n(t)e(o)n(v)n(erlo)r(oks)f(sev)
+n(eral)g(imp)r(ortan)n(t)j(implications)f(of)g(ha)n(ving)g(the)291
+3205 y(t)n(w)n(o)25 b(cac)n(hes.)35 b(First,)26 b(complexit)n(y)g(is)g
+(b)r(eing)g(added)g(to)g(the)h(device)f(driv)n(er)e(in)j(the)f(form)g
+(of)291 3305 y(a)g(list)h(of)f(frames)g(it)h(has)f(read)g(and)g(giv)n
+(en)g(out.)36 b(This)27 b(increase)e(in)i(memory)f(usage)f(has)h(a)291
+3404 y(secondary)18 b(e\013ect:)34 b(if)21 b(the)f(data)g(structures)g
+(b)r(ecome)g(large)f(\(as)h(it)g(certainly)g(will)h(for)e(large)291
+3504 y(activ)n(e)32 b(stores\),)j(it)e(will)h(b)r(e)g(imp)r(ossible)g
+(to)f(k)n(eep)g(the)h(device)f(driv)n(er)g(in)g(question)h(in)f(a)291
+3604 y(small)21 b(address)g(space)g(\(an)h(imp)r(ortan)n(t)f
+(optimization)h(on)f(arc)n(hitectures)g(without)h(tagged)291
+3703 y(TLBs,)29 b(table)g(lo)r(ok)f(aside)g(bu\013ers\).)42
+b(Second,)29 b(if)h(b)r(oth)f(the)h(\014le)f(system)g(and)g(the)g
+(device)291 3803 y(driv)n(er)19 b(k)n(eep)i(a)g(cac)n(he,)g(when)g(the)
+h(\014le)f(system)g(has)f(a)h(cac)n(he)f(miss,)i(the)g(device)f(driv)n
+(er)e(then)291 3903 y(c)n(hec)n(ks)31 b(its)i(cac)n(he)f(b)r(efore)g
+(going)f(to)i(disk.)52 b(The)32 b(device)h(driv)n(er)e(will)i(only)f
+(ev)n(er)g(ha)n(v)n(e)f(a)291 4002 y(cac)n(he)23 b(hit)h(if)h(there)f
+(are)f(m)n(ultiple)h(readers:)34 b(when)24 b(there)g(is)g(a)f(single)h
+(user)f(of)h(a)g(store,)g(the)291 4102 y(\014le)h(system's)g(cac)n(he)f
+(and)h(the)h(device)f(driv)n(er's)f(cac)n(he)g(will)i(b)r(e)f(iden)n
+(tical.)36 b(This)26 b(b)r(egs)f(the)291 4201 y(question:)41
+b(ho)n(w)29 b(often)h(will)h(there)e(b)r(e)i(m)n(ultiple)f(users)f(of)h
+(a)g(single)f(store?)43 b(The)30 b(answ)n(er)291 4301
+y(seems)j(to)i(b)r(e)f(v)n(ery)g(rarely:)48 b(assuming)34
+b(the)h(common)e(case)h(that)h(the)f(store)g(has)f(some)291
+4401 y(t)n(yp)r(e)25 b(of)g(\014le)g(system)g(on)g(it,)h(there)f(can)g
+(only)f(b)r(e)i(m)n(ultiple)g(users)e(if)h(all)g(users)g(are)f(readers)
+291 4500 y(\(note)j(that)g(not)f(ev)n(en)h(one)f(can)h(b)r(e)g(a)f
+(writer)g(as)g(this)i(implies)f(cac)n(he)f(consistency)g(issues)291
+4600 y(across)21 b(di\013eren)n(t)j(users)e(of)h(the)h(store\).)35
+b(Since)24 b(this)f(is)h(a)f(v)n(ery)f(rare)g(case,)h(w)n(e)g(argue)f
+(based)291 4700 y(on)k(the)i(philosoph)n(y)e(\\do)g(not)h(optimize)g
+(for)f(rare)g(cases")f(that)j(the)f(o)n(v)n(erhead)e(is)i(greater)291
+4799 y(than)38 b(the)h(p)r(oten)n(tial)g(pa)n(y)f(bac)n(k)g(from)g(the)
+h(optimization.)70 b(Ha)n(ving)38 b(m)n(ultiple)h(cac)n(hes)291
+4899 y(leads)28 b(to)h(a)g(further)g(problem:)39 b(a)29
+b(frame)f(is)h(really)f(not)h(evicted)g(from)g(the)h(system)e(un)n(til)
+291 4998 y(it)g(is)g(purged)g(from)f(all)h(cac)n(hes.)38
+b(Th)n(us)27 b(if)i(the)g(\014le)f(system)g(cac)n(he)f(is)h(smart)f
+(and)h(c)n(ho)r(oses)p eop end
+%%Page: 46 52
+TeXDict begin 46 51 bop 739 282 a Fw(46)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)739
+515 y Fw(the)g(b)r(etter)h(frames)e(to)h(evict,)g(the)g(co)r(oresp)r
+(onding)e(ph)n(ysical)i(frames)f(will)h(not)g(really)f(b)r(e)739
+615 y(freed)k(un)n(til)h(the)h(device)e(driv)n(er)f(also)h(drops)g(its)
+g(references)g(to)g(the)h(frames.)46 b(Th)n(us,)31 b(the)739
+715 y(e\013ectiv)n(eness)25 b(of)h(the)g(smarter)f(cac)n(hing)f
+(algorithm)h(is)h(imp)r(eded)g(b)n(y)g(the)g(device)g(driv)n(er's)739
+814 y(cac)n(hing)g(sc)n(heme.)37 b(Double)28 b(cac)n(hing)e(m)n(ust)i
+(b)r(e)g(a)n(v)n(oided.)739 1221 y Fl(5.6.1)112 b(Cac)m(hing)39
+b(in)e(the)h(File)g(System)739 1475 y Fw(W)-7 b(e)36
+b(ha)n(v)n(e)f(argued)g(ab)r(o)n(v)n(e)f(that)i(all)g(blo)r(c)n(k)f
+(cac)n(hing)g(will)h(b)r(e)h(done)e(at)h(the)g(\014le)g(system)739
+1575 y(la)n(y)n(er.)f(In)28 b(this)g(section,)f(w)n(e)g(detail)h(ho)n
+(w)f(the)h(cac)n(hing)e(will)i(w)n(ork.)739 1756 y(The)36
+b(\014le)h(system)f(allo)r(cates)f(extra)g(frames)h(as)f(long)h(as)f
+(it)i(can)f(and)g(adds)g(all)f(eligible)739 1856 y(frames)23
+b(to)g(the)h(cac)n(he)e(b)n(y)i(logically)e(cop)n(ying)g(them)i(in)n
+(to)f(a)g(lo)r(cal)g(con)n(tainer)f(\(data)h(whic)n(h)739
+1956 y(it)29 b(reasons)e(will)i(b)r(e)g(read)f(once)g(and)g(then)h
+(dropp)r(ed)g(ma)n(y)f(not)g(b)r(e)h(considered)f(eligible\).)739
+2055 y(When)h(the)g(ph)n(ysical)f(memory)g(serv)n(er)f(w)n(an)n(ts)h
+(frames)g(bac)n(k,)h(it)g(c)n(ho)r(oses)e(a)i(victim)g(with)739
+2155 y(extra)j(frames)g(and)h(asks)f(for)g(a)g(subset)h(of)g(them)g
+(bac)n(k.)52 b(If)34 b(a)e(task)g(has)h Fs(G)g Fw(guaran)n(teed)739
+2255 y(frames)i(and)h Fs(G)24 b Fw(+)g Fs(E)41 b Fw(frames)36
+b(allo)r(cated,)h(the)g(ph)n(ysical)e(memory)g(serv)n(er)f(can)i
+(request)739 2354 y(up)30 b(to)g Fs(E)36 b Fw(frames)29
+b(bac)n(k)g(from)h(the)g(task.)44 b(W)-7 b(e)31 b(recall)e(from)h(the)g
+(de\014nition)h(of)f(the)g(extra)739 2454 y(frames)h(that)i(extra)e
+(frames)h(m)n(ust)g(b)r(e)g(giv)n(en)g(bac)n(k)f(quic)n(kly)h(\(i.e.)51
+b(there)32 b(is)g(no)g(time)g(to)739 2553 y(send)27 b(them)i(to)e(sw)n
+(ap\).)739 2735 y(Although)h(a)f(task)g(c)n(ho)r(oses)f(a)h(frame)g(to)
+h(evict)f(from)g(its)h(cac)n(he,)f(it)h(do)r(es)f(not)h(mean)f(that)739
+2835 y(the)36 b(frame)f(will)h(b)r(e)h(reused)e(immediately)-7
+b(,)38 b(in)e(fact,)i(it)e(is)g(sometimes)f(that)h(case)f(that)739
+2934 y(the)30 b(frame)f(cannot)g(b)r(e)g(reused)g(at)g(all)g(as)g
+(another)g(task)f(has)h(a)g(reference)g(to)g(the)h(frame)739
+3034 y(\(in)37 b(the)g(form)f(of)h(a)f(logical)f(cop)n(y\).)63
+b(As)37 b(suc)n(h,)h(it)f(w)n(ould)f(b)r(e)h(nice)g(to)f(b)r(e)h(able)f
+(to)g(get)739 3134 y(frames)c(bac)n(k)f(that)i(migh)n(t)f(still)h(b)r
+(e)f(in)h(the)g(ph)n(ysical)e(memory)h(serv)n(er.)49
+b(The)32 b(follo)n(wing)739 3233 y(mec)n(hanism)27 b(is)h(th)n(us)f
+(pro)n(vided:)36 b(when)28 b(a)g(frame)f(is)g(returned)h(to)f(the)h(ph)
+n(ysical)f(memory)739 3333 y(serv)n(er,)35 b(the)g(reference)e(to)i
+(the)g(frame)f(is)h(turned)f(in)n(to)h(a)f(soft)h(reference.)57
+b(Only)34 b(when)739 3433 y(the)d(frame)g(is)f(actually)h(reused)f(b)n
+(y)g(the)i(ph)n(ysical)e(memory)g(serv)n(er)f(are)h(soft)g(references)
+739 3532 y(discarded.)35 b(A)26 b(task)f(is)g(able)g(to)g(con)n(v)n
+(ert)f(a)h(soft)h(reference)e(bac)n(k)h(to)g(a)g(hard)g(reference)g(b)n
+(y)739 3632 y(con)n(tacting)32 b(the)h(ph)n(ysical)f(memory)g(serv)n
+(er)f(and)h(asking)g(for)g(the)i(frame)e(bac)n(k.)52
+b(If)33 b(this)739 3731 y(op)r(eration)26 b(returns)h
+Ft(ENOEXIST)p Fw(,)d(the)k(frame)f(has)g(b)r(een)h(reused)f(and)g(the)h
+(frame)f(m)n(ust)h(b)r(e)739 3831 y(reman)n(ufactured)g(\(e.g.)40
+b(b)n(y)29 b(retrieving)f(it)h(from)f(bac)n(king)g(store\).)40
+b(This)29 b(op)r(eration)f(ma)n(y)739 3931 y(also)d(fail)h(and)f
+(return)h Ft(ENOMEM)d Fw(if)k(the)f(task)f(do)r(es)h(not)g(ha)n(v)n(e)e
+(enough)i(guaran)n(teed)e(frames)739 4030 y(and)j(there)h(are)e(no)i
+(extra)e(frames)h(a)n(v)-5 b(ailable.)946 4276 y Fm(There)30
+b(is)g(a)f(problem)h(here)g(in)g(the)g(form)f(of)g(name)i(space)f(p)r
+(ollution:)44 b(the)31 b(task)f(doing)946 4355 y(the)f(cac)n(hing)g
+(has)f(to)h(remem)n(b)r(er)e(the)i(mapping)f(of)g(blo)r(c)n(ks)g(to)h
+(con)n(tainer)g(iden)n(ti\014ers)f(in)946 4433 y(order)g(to)g(reco)n(v)
+n(er)h(the)f(soft)g(reference)g(but)h(the)g(task)f(has)g(no)g(w)n(a)n
+(y)g(to)h(kno)n(w)f(when)h(the)946 4512 y(ph)n(ysical)c(memory)f(serv)n
+(er)g(expires)h(a)f(giv)n(en)h(soft)g(reference.)34 b(Th)n(us,)24
+b(while)g(the)h(ph)n(ysical)946 4591 y(memory)32 b(serv)n(er)f(ma)n(y)h
+(drop)g(a)g(frame,)h(the)f(task)h(will)d(only)i(ev)n(er)g(kno)n(w)h
+(this)e(when)i(it)946 4670 y(tries)23 b(to)h(con)n(v)n(ert)h(the)f
+(soft)f(reference)g(to)h(a)f(hard)h(reference)f(and)h(fails)e(\(i.e.)31
+b(gets)24 b(a)f(cac)n(he)946 4749 y(miss\).)29 b(F)-6
+b(or)18 b(frames)g(whic)n(h)g(this)h(is)e(nev)n(er)i(done,)h(the)f
+(memorized)g(mapping)f(will)f(nev)n(er)i(b)r(e)946 4828
+y(in)n(v)l(alidated.)32 b(This)23 b(ma)n(y)g(not)h(b)r(e)f(a)h(problem)
+f(if)f(a)h(blo)r(c)n(k)g(o\013set)h(to)g(con)n(tainer)g(id)f(is)f
+(used,)946 4907 y(ho)n(w)n(ev)n(er,)j(if)e(hashing)i(is)e(done)j(or)d
+(some)i(other)f(mapping)h(of)f(blo)r(c)n(k)h(o\013sets)g(to)f(con)n
+(tainer)946 4986 y(iden)n(ti\014ers)g(is)f(used,)h(this)g(will)e(p)r
+(ollute)i(the)h(cac)n(he)g(con)n(tainer's)f(name)g(space.)p
+eop end
+%%Page: 47 53
+TeXDict begin 47 52 bop 291 282 a Fq(5.7.)63 b(THE)28
+b(MEMOR)-7 b(Y)27 b(POLICY)g(SER)-9 b(VER)1276 b Fw(47)291
+515 y Fl(5.6.2)112 b(Cac)m(hing)38 b(In)m(terfaces)291
+704 y Fw(The)d(ph)n(ysical)f(memory)h(serv)n(er)e(will)j(do)f(an)g(up)h
+(call)e(to)i(a)f(victim)g(task)g(requesting)f(a)291 803
+y(n)n(um)n(b)r(er)c(of)h(frames)f(bac)n(k.)45 b(The)31
+b(ph)n(ysical)f(memory)g(serv)n(er)f(ma)n(y)h(do)h(this)g(at)f(an)n(y)g
+(time)291 903 y(for)h(an)n(y)g(reason)f(and)h(it)h(exp)r(ects)g(to)g
+(receiv)n(e)e(the)i(frames)f(bac)n(k)g(from)g(the)h(task)f(within)291
+1002 y(a)g(short)g(amoun)n(t)g(of)g(time)h(\(the)h(victim)f(task)f
+(should)g(not)h(exp)r(ect)g(to)f(b)r(e)h(able)f(to)h(send)291
+1102 y(the)37 b(frames)g(to)g(bac)n(king)f(store)h(in)g(that)h(amoun)n
+(t)f(of)g(time\).)67 b(The)37 b(ph)n(ysical)g(memory)291
+1202 y(serv)n(er)28 b(will)j(nev)n(er)f(request)g(guaran)n(teed)e
+(frames.)45 b(As)31 b(suc)n(h,)g(this)g(n)n(um)n(b)r(er)f(will)h(alw)n
+(a)n(ys)291 1301 y(b)r(e)h(less)h(than)f(or)g(equal)g(to)g(the)h(n)n
+(um)n(b)r(er)f(of)h(allo)r(cated)e(frames)h(min)n(us)h(the)g(n)n(um)n
+(b)r(er)f(of)291 1401 y(guaran)n(teed)25 b(frames.)498
+1614 y(v)n(oid)i(pm)p 798 1614 25 4 v 30 w(return)p 1055
+1614 V 30 w(frames)f(\(in)j(in)n(t)e(coun)n(t\);)291
+1827 y(The)k(ph)n(ysical)g(memory)g(send)h(this)g(message)f(to)g(the)i
+(task's)e(memory)g(con)n(trol)f(thread.)291 1927 y(The)i(thread)f(m)n
+(ust)i(alw)n(a)n(ys)d(b)r(e)i(ready)g(to)g(receiv)n(e:)44
+b(the)33 b(ph)n(ysical)e(memory)g(serv)n(er)g(will)291
+2027 y(nev)n(er)23 b(w)n(ait)g(\(th)n(us,)i(the)g(thread)e(m)n(ust)h(b)
+r(e)h(in)f(the)g(receiving)f(state\).)36 b(If)24 b(the)h(thread)e(is)h
+(not)291 2126 y(ready)-7 b(,)30 b(the)h(ph)n(ysical)f(memory)f(serv)n
+(er)g(assumes)h(that)g(the)h(task)f(is)h(misb)r(eha)n(ving.)45
+b(The)291 2226 y(ph)n(ysical)29 b(memory)g(serv)n(er)f(do)r(es)h(not)h
+(w)n(ait)g(for)f(a)g(reply)-7 b(,)31 b(instead,)f(the)g(clien)n(t)g(m)n
+(ust)g(free)291 2325 y(the)e(frames)e(using)j Ft(pm)p
+1011 2325 27 4 v 30 w(release)p 1349 2325 V 29 w(frames)c
+Fw(as)i(describ)r(ed)g(ab)r(o)n(v)n(e.)291 2634 y Fn(5.7)135
+b(The)44 b(Memory)h(P)l(olicy)h(Serv)l(er)291 2851 y
+Fw(A)n(t)40 b(task)f(creation)g(time,)k(the)e(task)e(m)n(ust)h
+(negotiate)f(a)h(medium-term)g(con)n(tract)e(for)291
+2951 y(guaran)n(teed)29 b(frames)i(and)h(determine)f(if)i(it)f(shall)f
+(ha)n(v)n(e)f(access)h(to)g(extra)g(frames.)48 b(This)291
+3050 y(ma)n(y)28 b(b)r(e)i(renegotiated)f(later.)42 b(It)30
+b(m)n(ust)f(b)r(e)h(renegotiated)f(when)g(the)h(con)n(tract)f(expires.)
+291 3150 y(The)e(p)r(olicy)h(serv)n(er)d(will)j(giv)n(e)f(the)h(task)e
+(enough)h(time)h(to)g(send)f(frames)g(to)h(sw)n(ap)e(b)r(efore)291
+3250 y(committing)h(if)h(the)g(n)n(um)n(b)r(er)g(of)f(guaran)n(teed)f
+(frames)h(is)h(reduced.)291 3558 y Fn(5.8)135 b(Sending)45
+b(Data)h(to)f(Sw)l(ap)291 3775 y Fw(When)36 b(a)g(task)g(reac)n(hes)f
+(its)i(guaran)n(teed)d(frame)i(allo)r(cation,)i(it)e(m)n(ust)h(b)r
+(egin)f(to)h(reuse)291 3875 y(its)f(a)n(v)-5 b(ailable)35
+b(virtual)g(frames.)62 b(If)36 b(the)g(data)g(is)g(frames)f(is)h
+(precious)f(\(i.e.)63 b(not)36 b(easliy)291 3974 y(constructed)26
+b(b)n(y)h(e.g.)36 b(a)26 b(calculation)g(or)h(b)n(y)f(rereading)f(a)i
+(\014le\))g(then)h(the)f(task)f(will)i(w)n(an)n(t)291
+4074 y(to)j(sa)n(v)n(e)f(the)h(con)n(ten)n(ts)g(for)g(when)g(it)h(is)f
+(needed)h(in)f(the)h(future.)48 b(This)32 b(can)e(b)r(e)i(done)f(b)n(y)
+291 4174 y(sending)c(a)g(frame)g(to)h(bac)n(king)e(store.)498
+4387 y(error)p 681 4387 25 4 v 28 w(t)g(pm)p 882 4387
+V 30 w(sw)n(ap)f(\(in)h(con)n(tainer)p 1579 4387 V 28
+w(t)g(c,)g(in)g(con)n(tainer)p 2182 4387 V 28 w(frame)p
+2416 4387 V 30 w(t)g(frame,)f(in)h(in)n(t)498 4486 y(coun)n(t,)i(out)f
+([])h(sw)n(ap)p 1155 4486 V 29 w(ids\))291 4700 y(The)f(sw)n(ap)g(serv)
+n(er)f(resides)h(in)h(\(or)f(is)g(pro)n(xied)g(b)n(y\))h(the)g
+(phsyical)f(memory)g(serv)n(er.)35 b(This)291 4799 y(allo)n(ws)20
+b(the)i(logical)e(copies)h(of)g(frames)g(to)h(b)r(e)g(preserv)n(ed)e
+(across)f(the)j(sw)n(app)r(ed)f(out)h(p)r(erio)r(d)291
+4899 y(\(i.e.)47 b(logical)30 b(copies)h(are)f(not)h(lost)g(when)g(a)g
+(frame)f(is)h(sen)n(t)g(to)g(sw)n(ap\).)47 b(If)31 b(this)h(w)n(as)e
+(not)291 4998 y(the)g(case,)g(then)h(when)f(a)g(n)n(um)n(b)r(er)g(of)g
+(tasks)f(all)h(with)h(a)e(reference)h(to)g(a)f(giv)n(en)h(ph)n(ysical)p
+eop end
+%%Page: 48 54
+TeXDict begin 48 53 bop 739 282 a Fw(48)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)739
+515 y Fw(send)32 b(the)h(frame)f(to)h(sw)n(ap,)g(the)g(sw)n(ap)e(serv)n
+(er)g(w)n(ould)h(allo)r(cate)g(and)g(write)g(N)h(times)g(as)739
+615 y(opp)r(osed)e(to)g(once)h(when)f(all)h(of)f(the)h(tasks)f(ev)n(en)
+n(tually)g(release)f(an)n(y)h(references)f(to)i(the)739
+715 y(frame.)739 855 y(F)-7 b(rame)37 b(ma)n(y)h(not)g(b)r(e)h(sen)n(t)
+f(to)g(sw)n(ap)f(immediately)-7 b(.)69 b(Instead,)40
+b(they)e(are)g(k)n(ept)g(on)g(an)739 955 y(inactiv)n(e)26
+b(list)i(allo)n(wing)d(thereb)n(y)i(allo)n(wing)e(a)i(task)g(to)g(reco)
+n(v)n(er)d(the)k(con)n(ten)n(ts)e(of)h(a)g(frame)739
+1054 y(b)r(efore)20 b(it)i(is)f(\015ushed)g(to)f(sw)n(ap)g(\(that)i(is)
+f(to)f(sa)n(y)-7 b(,)22 b(sw)n(ap)e(op)r(erations)f(are)h(not)h(sync)n
+(hronous\).)739 1195 y(Since)34 b(there)f(ma)n(y)g(b)r(e)h(m)n(ultiple)
+g(references)f(to)g(a)g(virtual)g(frame,)i(it)f(is)g(recommended)739
+1295 y(that)24 b Ft(pm)p 1008 1295 27 4 v 30 w(container)p
+1434 1295 V 28 w(orphan)p 1726 1295 V 29 w(data)e Fw(b)r(e)i(called)f
+(b)r(efore)g(the)h(frame)f(is)h(reused)f(to)g(prev)n(en)n(t)739
+1394 y(gratuitous)28 b(cop)n(y)h(on)g(writes)g(from)g(b)r(egin)h(p)r
+(erformed.)42 b(It)30 b(also)e(imp)r(ortan)n(t)h(to)h(call)f(this)739
+1494 y(function)f(if)g(the)g(frame)f(w)n(as)g(b)r(eing)h(used)f(for)g
+(shared)g(memory)-7 b(.)739 1635 y(Sw)n(ap)27 b(quotas)g(\(put)h(the)g
+(p)r(olicy)g(in)f(the)h(memory)f(p)r(olicy)h(serv)n(er\).)739
+1961 y Fn(5.9)135 b(Self)46 b(P)l(aging)739 2186 y Fw(As)19
+b(already)f(explained,)i(tasks)e(are)g(self-paged.)34
+b(The)19 b(default)g(implemen)n(tation)g(pro)n(vided)739
+2285 y(with)30 b(the)f(h)n(urd)g(has)g(eac)n(h)f(thread)h(in)g(a)g
+(task)g(set)g(its)g(pager)f(\(i.e.)42 b(its)30 b(fault)f(handler\))g
+(to)739 2385 y(a)34 b(common)g(pager)g(thread)g(in)h(the)g(same)f
+(address)g(space.)58 b(This)34 b(thread)h(main)n(tains)f(a)739
+2485 y(mapping)40 b(database)f(whic)n(h)h(asso)r(ciates)f(virtual)h
+(addresses)e(with)j(either)f(a)g(frame)g(of)739 2584
+y(memory)32 b(in)i(a)f(con)n(tainer)f(or)h(information)f(on)i(ho)n(w)e
+(to)i(retriev)n(e)e(the)h(data,)i(e.g.)54 b(from)739
+2684 y(sw)n(ap)27 b(or)f(a)h(\014le)h(serv)n(er.)739
+2824 y(Normally)-7 b(,)29 b(there)g(is)g(a)f(single)h(primary)f(con)n
+(tainer)g(for)g(virtual)h(frames)g(that)g(is)g(created)739
+2924 y(at)j(start)h(up.)52 b(A)33 b(task)f(ma)n(y)g(c)n(ho)r(ose)g(to)g
+(use)h(more)f(con)n(tainers)f(and)i(generally)e(will)i(for)739
+3024 y(short)20 b(p)r(erio)r(ds)h(of)g(time)h(\(for)f(instance,)h(for)f
+(reading)f(to)h(and)g(writing)f(from)h(serv)n(ers\).)33
+b(The)739 3123 y(pager)20 b(m)n(ust)h(alw)n(a)n(ys)e(b)r(e)j(able)e(to)
+h(handle)g(m)n(ultiple)h(con)n(tainers.)33 b(When)22
+b(using)f(additional)739 3223 y(con)n(tainers,)k(frames)h(need)h(to)g
+(b)r(e)g(added)f(to)h(them)g(to)f(b)r(e)i(shared)d(with)i(the)g(serv)n
+(er.)35 b(The)739 3323 y(pager)26 b(m)n(ust)i(pro)n(vide)e(a)h(mec)n
+(hanism)g(to)h(allo)n(w)e(the)i(caller)f(to)g(steal)g(guaran)n(teed)f
+(frames)739 3422 y(for)h(this)h(purp)r(ose)f(and)g(return)g(them)i(up)r
+(on)e(deallo)r(cation)g(of)h(the)g(con)n(tainer.)739
+3706 y Fl(5.9.1)112 b(The)38 b(P)m(ager)739 3903 y Fw(The)h(pager)e
+(itself)j(ma)n(y)e(require)g(a)g(fair)h(amoun)n(t)f(of)h(memory)f(for)h
+(its)g(database)e(and)739 4002 y(all)29 b(of)h(the)g(co)r(de)g(and)g
+(supp)r(orting)f(libraries.)42 b(This)30 b(presen)n(ts)f(a)g(problem:)
+41 b(if)30 b(the)h(pager)739 4102 y(handles)19 b(page)g(faults,)j(who)e
+(will)g(handle)f(its)h(faults?)35 b(One)20 b(of)f(t)n(w)n(o)h
+(solutions)f(are)g(p)r(ossible:)739 4201 y(either)k(all)f(of)h(the)g
+(text)h(and)e(data)h(m)n(ust)g(b)r(e)g(wired)f(in)n(to)h(memory)f
+(\(thereb)n(y)h(reducing)f(the)739 4301 y(n)n(um)n(b)r(er)g(of)h
+(frames)f(a)n(v)-5 b(ailable)21 b(for)h(m)n(ultiplexing)h(application)e
+(memory\))i(or)e(the)i(pager)e(is)739 4401 y(itself)30
+b(paged.)42 b(The)30 b(default)g(self-pager)d(implemen)n(tation)j(uses)
+f(the)h(latter)f(option:)41 b(the)739 4500 y(pager,)33
+b(no)n(w)g(referred)f(to)h(as)g(the)h(primary)e(pager,)h(is)g(bac)n(k)n
+(ed)f(b)n(y)h(a)g(\014nal)h(pager.)52 b(The)739 4600
+y(\014nal)22 b(pager)f(only)h(maps)g(the)g(pagers)f(text)i(and)f(data)f
+(th)n(us)i(it)f(has)g(a)g(signi\014can)n(tly)f(smaller)739
+4700 y(memory)27 b(fo)r(otprin)n(t.)37 b(Care)27 b(m)n(ust)h(b)r(e)h
+(tak)n(en)e(to)h(b)r(e)g(sure)f(that)h(the)g(primary)f(pager)g(do)r(es)
+739 4799 y(not)21 b(acciden)n(tly)g(allo)r(cate)f(memory)h(from)f
+(common)h(memory)g(p)r(o)r(ols:)33 b(in)21 b(the)h(v)n(ery)e(least)h
+(it)739 4899 y(needs)h(its)h(o)n(wn)e(priv)-5 b(ate)22
+b Ft(malloc)e Fw(arena.)34 b(As)22 b(the)h(primary)e(pager)g(will)i
+(call,)g(for)e(instance,)739 4998 y(routines)j(to)g(manipulate)g
+(capabilities,)g(this)h(text)g(m)n(ust)f(b)r(e)h(bac)n(k)n(ed)e(b)n(y)h
+(the)g(\014nal)h(pager.)p eop end
+%%Page: 49 55
+TeXDict begin 49 54 bop 291 282 a Fq(5.9.)63 b(SELF)28
+b(P)-7 b(A)n(GING)2019 b Fw(49)291 515 y(Other)24 b(co)r(de)i(can)f
+(also,)f(ho)n(w)n(ev)n(er,)g(mak)n(es)h(calls)f(to)i(the)f(capabilit)n
+(y)g(library)-7 b(.)35 b(This)25 b(means)291 615 y(that)e(the)g
+(primary)f(pager)g(m)n(ust)h(also)f(ha)n(v)n(e)g(a)h(cop)n(y)f(of)h
+(these)g(mappings)f(in)i(its)f(database.)291 750 y(The)28
+b(purp)r(ose)g(of)g(the)h(\014nal)f(pager)f(is)h(to)g(allo)n(w)f(the)i
+(data)f(and)g(some)g(of)g(the)h(text)f(of)h(the)291 850
+y(primary)c(pager)g(to)i(b)r(e)g(sw)n(app)r(ed.)36 b(As)27
+b(suc)n(h,)g(the)g(\014nal)f(pager)g(m)n(ust)h(b)r(e)g(able)f(to)h(at)f
+(least)291 950 y(read)20 b(data)h(from)g(\014le)h(serv)n(ers)d(and)j
+(retriev)n(e)e(data)h(from)g(bac)n(king)f(store.)34 b(This)22
+b(ma)n(y)f(imply)291 1049 y(signi\014can)n(t)31 b(o)n(v)n(erlap)e(of)j
+(the)g(text)h(for)e(the)h(primary)f(and)h(\014nal)f(pagers.)48
+b(In)32 b(some)g(case,)291 1149 y(ho)n(w)n(ev)n(er,)d(it)i(ma)n(y)f(b)r
+(e)i(useful)f(to)g(ha)n(v)n(e)e(a)i(second)f(implemen)n(tation)h(of)g
+(a)f(function)h(only)291 1248 y(for)d(the)h(\014nal)f(pager)f(whic)n(h)
+i(is)f(optimized)h(for)f(size)g(or)g(a)n(v)n(oids)e(making)i(calls)g
+(to)h(certain)291 1348 y(libraries.)291 1600 y Fu(Managing)i(Mappings)
+291 1789 y Fw(Mappings)38 b(are)f(normally)h(made)g(via)h(calls)f(to)g
+Ft(mmap)p Fw(.)69 b(Unlik)n(e)39 b(in)f(Unix,)k(this)d(is)g(not)291
+1888 y(a)f(system)h(trap:)60 b(instead)39 b(it)g(is)g(almost)g(alw)n(a)
+n(ys)e(implemen)n(ted)i(lo)r(cally)-7 b(.)71 b Ft(mmap)38
+b Fw(m)n(ust)291 1988 y(asso)r(ciate)23 b(a)g(region)h(with)g(either)h
+(anon)n(ymous)d(memory)i(or)g(with)g(a)g(\014le)h(on)f(disk.)36
+b(This)24 b(is)291 2087 y(only)29 b(a)h(matter)f(of)h(creating)f(a)g
+(few)h(en)n(tries)g(in)g(the)g(mapping)g(database)e(so)i(that)g(faults)
+291 2187 y(will)d(brings)g(the)h(data)f(in)h(lazily)-7
+b(.)291 2322 y(Rather)24 b(than)h(ha)n(v)n(e)e(the)i(caller)f
+(manipulate)h(the)g(mapping)f(database)g(directly)-7
+b(,)25 b(instead,)291 2422 y(a)f(lo)r(cal)h(ip)r(c)g(sen)n(t)g(to)g
+(the)g(primary)f(pager.)35 b(If)25 b(there)g(is)g(only)f(ev)n(er)g(a)h
+(single)f(thread)h(whic)n(h)291 2522 y(manipulates)31
+b(the)i(mapping)e(database,)h(there)g(will)g(b)r(e)g(lo)r(c)n(king)f
+(requiremen)n(ts.)49 b(If)33 b(the)291 2621 y(pager)26
+b(thread)h(is)g(busy)-7 b(,)28 b(then)g(the)g(lo)r(cal)f(ip)r(c)h(call)
+f(blo)r(c)n(ks)g(in)h(the)g(k)n(ernel.)291 2757 y(It)e(is)g(not)h(alw)n
+(a)n(ys)d(useful)j(to)f(fault)h(memory)e(in)i(lazily:)35
+b(when)27 b(a)f(task)f(has)h(receiv)n(ed)f(data)291 2856
+y(from)19 b(a)h(serv)n(er,)g(it)g(will)h(normally)d(b)r(e)j(in)f(a)g
+(con)n(tainer)f(from)g(where)h(it)h(m)n(ust)f(b)r(e)g(consumed.)291
+2956 y(The)k(task)f(will)h(generally)e(map)i(the)g(con)n(tainer)f(in)n
+(to)h(memory)f(and)h(then)g(pro)r(ceed)f(to)h(use)291
+3056 y(or)g(at)h(least)g(cop)n(y)g(the)g(data)g(to)g(some)g(other)g(lo)
+r(cation.)35 b(Clearly)-7 b(,)25 b(the)h(faulting)f(the)h(pages)291
+3155 y(in)h(is)g(a)g(w)n(aste.)36 b(As)28 b(suc)n(h,)f(the)g(pager)f
+(should)h(pro)n(vide)g(a)g(mec)n(hanism)f(whic)n(h)i(allo)n(ws)e(the)
+291 3255 y(caller)34 b(to)i(not)f(only)g(establish)g(a)g(mapping)h
+(from)f(a)g(con)n(tainer)f(but)i(also)f(to)g(map)h(the)291
+3354 y(pages)26 b(immediately)i(in)g(the)g(address)e(space.)291
+3623 y Fl(5.9.2)112 b(Reusing)38 b(Virtual)f(F)-9 b(rames)291
+3812 y Fw(Multiplexing)39 b(frames:)59 b(sa)n(y)38 b(the)h(con)n(ten)n
+(ts)g(of)g(a)f(frame)h(are)f(sen)n(t)h(to)g(sw)n(ap)f(in)h(order)291
+3911 y(to)c(reuse)g(the)i(frame)e(for)g(something)h(else.)61
+b(The)36 b(frame)f(itself)i(m)n(ust)f(b)r(e)g(cleared,)h(i.e.)291
+4011 y(disasso)r(citated)26 b(with)i(an)n(y)f(logical)f(copies.)36
+b(This)28 b(is)g(done)f(using:)498 4229 y(error)p 681
+4229 25 4 v 28 w(t)19 b(pm)p 875 4229 V 30 w(release)p
+1147 4229 V 28 w(data)f(\(in)h(pm)p 1590 4229 V 30 w(con)n(tainer)p
+1956 4229 V 29 w(t)g(con)n(tainer,)g(in)f(pm)p 2616 4229
+V 30 w(frame)p 2852 4229 V 30 w(t[])498 4329 y(frames\))291
+4597 y Fl(5.9.3)112 b(T)-9 b(aking)38 b(Adv)-6 b(an)m(tage)38
+b(of)g(Self-P)m(aging)291 4786 y Fw(extend)27 b(mallo)r(c)h(via)f(e.g.)
+36 b(the)28 b(slab)f(mec)n(hanism,)g(extend)h(fop)r(en)g(\(ho)n(w)f(a)h
+(\014le)f(is)h(used\).)p eop end
+%%Page: 50 56
+TeXDict begin 50 55 bop 739 282 a Fw(50)740 b Fq(CHAPTER)27
+b(5.)64 b(VIR)-7 b(TUAL)29 b(MEMOR)-7 b(Y)27 b(MANA)n(GEMENT)p
+eop end
+%%Page: 51 57
+TeXDict begin 51 56 bop 291 1183 a Fp(Chapter)64 b(6)291
+1644 y Fv(The)77 b(POSIX)g(p)6 b(ersonalit)-6 b(y)291
+2120 y Fw(The)20 b(Hurd)h(o\013ers)f(a)h(POSIX)f(API)h(to)f(the)i(user)
+e(b)n(y)g(default.)35 b(This)21 b(is)g(implemen)n(ted)g(in)h(the)291
+2220 y(GNU)32 b(C)f(library)f(whic)n(h)h(uses)f(the)i(services)e(pro)n
+(vided)g(b)n(y)h(the)g(Hurd)h(serv)n(ers.)45 b(Sev)n(eral)291
+2320 y(system)27 b(serv)n(ers)e(supp)r(ort)j(the)g(C)f(library)-7
+b(.)291 2658 y Fn(6.1)135 b(Authen)l(tication)291 2889
+y Fw(Capabilities)35 b(are)f(a)h(go)r(o)r(d)g(w)n(a)n(y)g(to)g(giv)n(e)
+g(access)f(to)h(protected)h(ob)5 b(jects)35 b(and)g(services.)291
+2989 y(They)i(are)g(\015exible,)k(ligh)n(t)n(w)n(eigh)n(t)36
+b(and)i(generic.)67 b(Ho)n(w)n(ev)n(er,)38 b(Unix)g(traditionally)f
+(uses)291 3088 y(access)18 b(con)n(trol)f(lists)j(\(A)n(CL\))f(to)g
+(restrict)g(access)f(to)h(ob)5 b(jects)19 b(lik)n(e)f(\014les.)34
+b(An)n(y)20 b(task)e(running)291 3188 y(with)34 b(a)f(certain)h(user)f
+(ID)h(can)g(access)e(all)i(\014les)g(that)g(are)f(readable)g(for)g(the)
+h(user)f(with)291 3288 y(that)26 b(user)f(ID.)i(Although)f(all)g(ob)5
+b(jects)26 b(are)f(implemen)n(ted)i(as)e(capabilities)h(in)g(the)h
+(Hurd,)291 3387 y(the)h(Hurd)f(also)g(supp)r(orts)g(the)h(use)f(of)h
+(user)f(IDs)h(for)f(access)f(con)n(trol.)291 3532 y(The)41
+b(system)h(authen)n(tication)f(serv)n(er)f Ft(auth)h
+Fw(implemen)n(ts)h(the)g(Unix)g(authen)n(tication)291
+3632 y(sc)n(heme)34 b(using)h(capabilities.)59 b(It)35
+b(pro)n(vides)f(auth)h(capabilities,)h(whic)n(h)f(are)f(asso)r(ciated)
+291 3731 y(with)c(a)g(list)g(of)g(e\013ectiv)n(e)g(and)g(a)n(v)-5
+b(ailable)29 b(user)g(and)h(group)f(IDs.)45 b(The)30
+b(holder)g(of)g(suc)n(h)f(a)291 3831 y(capabilit)n(y)h(can)i(use)f(it)h
+(to)g(authen)n(ticate)f(itself)h(to)g(other)f(serv)n(ers,)g(using)g
+(the)h(proto)r(col)291 3931 y(b)r(elo)n(w.)291 4076 y(Of)25
+b(course,)h(these)f(other)h(serv)n(ers)e(m)n(ust)i(use)f(\(and)h
+(trust\))g(the)h(same)e Ft(auth)f Fw(serv)n(er)g(as)i(the)291
+4175 y(user.)35 b(Otherwise,)24 b(the)h(authen)n(tication)f(will)g
+(fail.)36 b(Once)24 b(a)g(capabilit)n(y)g(is)g(authen)n(ticated)291
+4275 y(in)k(the)g(serv)n(er,)e(the)i(serv)n(er)e(will)j(kno)n(w)e(the)h
+(user)f(IDs)h(of)g(the)g(clien)n(t,)g(and)g(can)g(use)f(them)291
+4374 y(to)g(v)-5 b(alidate)27 b(further)h(op)r(erations.)291
+4519 y(The)f Ft(auth)f Fw(serv)n(er)g(pro)n(vides)g(t)n(w)n(o)h(t)n(yp)
+r(es)h(of)f(capabilities:)291 4799 y Fu(Auth)k(capabilities)81
+b Fw(An)27 b(auth)g(capabilit)n(y)f(is)g(asso)r(ciated)f(with)i(four)f
+(v)n(ectors)f(of)i(IDs:)291 4899 y(The)g(e\013ectiv)n(e)g(user)g(and)g
+(group)g(IDs,)g(whic)n(h)h(should)f(b)r(e)h(used)f(b)n(y)g(other)g
+(serv)n(ers)e(to)j(au-)291 4998 y(then)n(ticate)i(op)r(erations)e(that)
+i(require)f(certain)g(user)h(or)f(group)f(IDs,)j(and)f(the)g(a)n(v)-5
+b(ailable)1681 5208 y(51)p eop end
+%%Page: 52 58
+TeXDict begin 52 57 bop 739 282 a Fw(52)1098 b Fq(CHAPTER)27
+b(6.)64 b(THE)28 b(POSIX)f(PERSONALITY)739 515 y Fw(user)j(and)g(group)
+g(IDs.)46 b(Av)-5 b(ailable)31 b(IDs)g(should)f(not)h(b)r(e)g(used)f
+(for)g(authen)n(tication)h(pur-)739 615 y(p)r(oses,)e(but)h(can)e(b)r
+(e)i(turned)f(in)n(to)g(e\013ectiv)n(e)g(IDs)h(b)n(y)f(the)g(holder)g
+(of)g(an)g(auth)g(capabilit)n(y)739 715 y(at)e(an)n(y)g(time.)739
+864 y(New)k(auth)f(capabilities)g(can)g(b)r(e)h(created)f(from)g
+(existing)g(auth)h(capabilities,)g(but)g(only)739 963
+y(if)25 b(the)g(requested)f(IDs)g(are)g(a)g(subsets)g(from)g(the)h
+(union)g(of)f(the)h(\(e\013ectiv)n(e)g(and)f(a)n(v)-5
+b(ailable\))739 1063 y(IDs)30 b(in)g(the)h(pro)n(vided)e(auth)h
+(capabilities.)43 b(If)31 b(an)f(auth)g(capabilit)n(y)f(has)g(an)h
+(e\013ectiv)n(e)g(or)739 1163 y(a)n(v)-5 b(ailable)26
+b(user)h(ID)h(0,)f(then)i(arbitrary)c(new)j(auth)g(ob)5
+b(jects)27 b(can)g(b)r(e)h(created)f(from)g(that.)739
+1456 y Fu(P)m(assp)s(ort)42 b(capabilities)82 b Fw(A)36
+b(passp)r(ort)f(capabilit)n(y)g(can)h(b)r(e)g(created)g(from)f(an)h
+(auth)739 1555 y(capabilit)n(y)30 b(and)g(is)g(only)g(v)-5
+b(alid)31 b(for)f(the)h(task)f(that)g(created)g(it.)46
+b(It)31 b(can)f(b)r(e)h(pro)n(vided)e(to)739 1655 y(a)h(serv)n(er)f(in)
+i(an)g(authen)n(tication)f(pro)r(cess)g(\(see)h(b)r(elo)n(w\).)46
+b(F)-7 b(or)30 b(the)h(clien)n(t,)h(the)f(passp)r(ort)739
+1755 y(capabilit)n(y)e(do)r(es)g(not)h(directly)f(implemen)n(t)h(an)n
+(y)f(useful)h(op)r(eration.)42 b(F)-7 b(or)29 b(the)h(serv)n(er,)e(it)
+739 1854 y(can)g(b)r(e)i(used)f(to)f(v)n(erify)g(the)i(iden)n(tit)n(y)f
+(of)g(a)f(user)g(and)h(read)f(out)h(the)g(e\013ectiv)n(e)g(user)f(and)
+739 1954 y(group)e(IDs.)739 2103 y(The)31 b(auth)f(serv)n(er)f(should)i
+(alw)n(a)n(ys)e(create)g(new)i(passp)r(ort)f(ob)5 b(jects)30
+b(for)g(di\013eren)n(t)h(tasks,)739 2203 y(ev)n(en)d(if)i(the)f
+(underlying)f(auth)h(ob)5 b(ject)29 b(is)g(the)g(same,)g(so)f(that)h(a)
+g(task)f(ha)n(ving)g(the)h(pass-)739 2302 y(p)r(ort)g(capabilit)n(y)f
+(can)g(not)h(sp)n(y)f(on)h(other)f(tasks)g(unless)h(they)g(w)n(ere)f
+(giv)n(en)g(the)h(passp)r(ort)739 2402 y(capabilit)n(y)e(b)n(y)g(that)h
+(task.)739 2712 y Fl(6.1.1)112 b(Authen)m(ticating)38
+b(a)g(clien)m(t)f(to)g(a)h(serv)m(er)739 2920 y Fw(A)28
+b(clien)n(t)g(can)f(authen)n(ticate)g(itself)h(to)g(a)f(serv)n(er)f
+(with)i(the)g(follo)n(wing)e(proto)r(col:)739 3213 y
+Fu(Preconditions)82 b Fw(The)23 b(clien)n(t)h Fs(C)30
+b Fw(has)22 b(an)h(auth)h(capabilit)n(y)e(implemen)n(ted)i(b)n(y)f(the)
+h Ft(auth)739 3313 y Fw(serv)n(er)33 b Fs(A)p Fw(.)61
+b(It)36 b(also)e(has)h(a)g(capabilit)n(y)f(implemen)n(ted)i(b)n(y)f
+(the)h(serv)n(er)d Fs(S)5 b Fw(.)60 b(It)36 b(w)n(an)n(ts)e(to)739
+3413 y(reauthen)n(ticate)27 b(this)i(capabilit)n(y)f(with)h(the)f(auth)
+h(capabilit)n(y)-7 b(,)28 b(so)g(the)g(serv)n(er)f(asso)r(ciates)739
+3512 y(the)h(new)g(user)e(and)i(group)e(IDs)i(with)g(it.)739
+3661 y(The)f(serv)n(er)f(also)h(has)g(an)g(auth)h(capabilit)n(y)e
+(implemen)n(ted)i(b)n(y)g(its)f(trusted)h Ft(auth)e Fw(serv)n(er.)739
+3761 y(F)-7 b(or)24 b(the)h(reauthen)n(tication)f(to)g(succeed,)h(the)g
+Ft(auth)e Fw(serv)n(er)g(of)i(the)g(clien)n(t)g(and)f(the)h(serv)n(er)
+739 3861 y(m)n(ust)h(b)r(e)g(iden)n(tical.)36 b(If)27
+b(this)f(is)g(the)g(case,)f(the)i(participating)e(tasks)g(hold)h(task)f
+(info)h(caps)739 3960 y(for)h(all)g(other)g(participating)g(tasks)g
+(\(b)r(ecause)g(of)h(the)g(capabilities)f(they)h(hold\).)840
+4212 y(1.)41 b(The)30 b(clien)n(t)f Fs(C)36 b Fw(requests)28
+b(the)h(passp)r(ort)g(capabilit)n(y)f(for)h(itself)g(from)g(the)h(auth)
+f(ca-)946 4311 y(pabilit)n(y)f(from)f Fs(A)p Fw(.)1129
+4506 y Fm(Normally)-6 b(,)18 b(the)i(clien)n(t)e(will)g(request)h(the)g
+(passp)r(ort)g(capabilit)n(y)g(only)g(once)g(and)g(store)1129
+4584 y(it)24 b(together)h(with)f(the)g(auth)h(capabilit)n(y)-6
+b(.)840 4799 y Fw(2.)41 b(The)22 b Ft(auth)f Fw(serv)n(er)f(receiv)n
+(es)g(the)i(request)f(and)h(creates)f(a)g(new)h(passp)r(ort)f
+(capabilit)n(y)946 4899 y(for)g(this)g(auth)g(capabilit)n(y)f(and)g
+(this)i(clien)n(t.)34 b(The)21 b(passp)r(ort)f(capabilit)n(y)g(is)h
+(returned)946 4998 y(to)28 b(the)g(user.)p eop end
+%%Page: 53 59
+TeXDict begin 53 58 bop 291 282 a Fq(6.1.)63 b(A)n(UTHENTICA)-7
+b(TION)1803 b Fw(53)392 515 y(3.)41 b(The)28 b(user)f(receiv)n(es)f
+(the)i(reply)f(from)g(the)h Ft(auth)e Fw(serv)n(er.)498
+665 y(It)36 b(then)f(sends)g(the)h(reauthen)n(tication)e(request)h(to)g
+(the)g(serv)n(er)f Fs(S)5 b Fw(,)37 b(whic)n(h)e(is)g(in-)498
+765 y(v)n(ok)n(ed)23 b(on)h(the)g(capabilit)n(y)g(the)g(clien)n(t)g(w)n
+(an)n(ts)f(to)h(reauthen)n(ticate.)35 b(It)25 b(pro)n(vides)e(the)498
+865 y(passp)r(ort)k(capabilit)n(y)g(as)f(an)i(argumen)n(t.)392
+1065 y(4.)41 b(The)20 b(serv)n(er)e Fs(S)24 b Fw(can)19
+b(accept)h(the)g(passp)r(ort)e(capabilit)n(y)-7 b(,)21
+b(if)f(it)g(v)n(eri\014es)e(that)i(it)g(is)g(really)498
+1165 y(implemen)n(ted)28 b(b)n(y)e(the)i Ft(auth)d Fw(serv)n(er)g(it)i
+(trusts.)37 b(If)27 b(the)g(clien)n(t)g(do)r(es)g(not)g(pro)n(vide)e(a)
+498 1265 y(passp)r(ort)g(capabilit)n(y)g(to)h(the)g(trusted)g
+Ft(auth)f Fw(serv)n(er,)f(the)j(authen)n(tication)e(pro)r(cess)498
+1364 y(is)j(ab)r(orted)f(with)h(an)f(error.)498 1514
+y(No)n(w)40 b(the)h(serv)n(er)e(can)h(send)h(a)f(request)g(to)g(the)h
+Ft(auth)e Fw(serv)n(er)g(to)h(v)-5 b(alidate)41 b(the)498
+1614 y(passp)r(ort)27 b(capabilit)n(y)-7 b(.)36 b(The)28
+b(RPC)f(is)g(in)n(v)n(ok)n(ed)f(on)i(the)g(passp)r(ort)e(capabilit)n(y)
+-7 b(.)392 1815 y(5.)41 b(The)25 b Ft(auth)e Fw(serv)n(er)g(receiv)n
+(es)h(the)h(v)-5 b(alidation)24 b(request)g(on)h(the)g(passp)r(ort)f
+(capabilit)n(y)498 1914 y(and)i(returns)f(the)i(task)e(ID)i(of)f(the)g
+(clien)n(t)g Fs(C)33 b Fw(that)26 b(this)g(passp)r(ort)f(b)r(elongs)h
+(to,)g(and)498 2014 y(the)31 b(e\013ectiv)n(e)g(user)f(and)h(group)f
+(IDs)h(for)f(the)h(auth)g(cap)f(to)h(whic)n(h)g(this)g(passp)r(ort)498
+2114 y(cap)c(b)r(elongs.)681 2319 y Fm(The)e(Hurd)f(on)i(Mac)n(h)f
+(returned)g(the)h(a)n(v)l(ailable)f(IDs)g(as)g(w)n(ell.)34
+b(This)24 b(feature)h(is)f(not)681 2398 y(used)29 b(an)n(ywhere)g(in)f
+(the)h(Hurd,)g(and)g(as)f(the)h(a)n(v)l(ailable)g(IDs)f(should)h(not)g
+(b)r(e)g(used)681 2476 y(for)22 b(authen)n(tication)27
+b(an)n(yw)n(a)n(y)-6 b(,)24 b(this)g(do)r(es)g(not)g(seem)g(to)g(b)r(e)
+g(useful.)30 b(If)24 b(it)f(is)g(needed,)681 2555 y(it)g(can)i(b)r(e)f
+(added)h(in)e(an)h(extended)i(v)n(ersion)d(of)h(the)g(v)l(alidation)h
+(RPC.)392 2781 y Fw(6.)41 b(The)f(serv)n(er)f(receiv)n(es)f(the)j(task)
+f(ID)g(and)g(the)h(e\013ectiv)n(e)f(user)g(and)g(group)f(IDs.)498
+2881 y(The)27 b(serv)n(er)e(no)n(w)h(v)n(eri\014es)f(that)i(the)g(task)
+f(ID)h(is)g(the)g(same)f(as)g(the)h(task)f(ID)h(of)g(the)498
+2981 y(sender)19 b(of)g(the)g(reauthen)n(tication)f(request.)33
+b(Only)19 b(then)h(w)n(as)e(the)h(reauthen)n(tication)498
+3080 y(request)35 b(made)h(b)n(y)g(the)g(o)n(wner)f(of)g(the)i(auth)f
+(cap.)61 b(It)36 b(can)g(then)g(return)f(a)h(new)498
+3180 y(capabilit)n(y)27 b(authen)n(ticated)g(with)i(the)f(new)f(user)g
+(and)h(group)e(IDs.)681 3385 y Fm(The)j(v)n(eri\014cation)g(of)f(the)h
+(clien)n(t's)g(task)g(ID)f(is)g(necessary)-6 b(.)46 b(As)28
+b(the)i(passp)r(ort)e(cap)681 3464 y(is)c(copied)i(to)f(other)h(tasks,)
+f(it)g(can)h(not)f(serv)n(e)h(as)e(a)h(pro)r(of)g(of)g(iden)n(tit)n(y)h
+(alone.)35 b(It)26 b(is)681 3543 y(of)f(course)g(absolutely)i(crucial)e
+(that)h(the)g(serv)n(er)f(holds)h(the)g(task)g(info)f(cap)h(for)e(the)
+681 3622 y(clien)n(t)h(task)h Fj(C)k Fm(for)24 b(the)i(whole)f(time)g
+(of)g(the)h(proto)r(col.)35 b(But)26 b(the)g(same)f(is)f(actually)681
+3700 y(true)g(for)f(an)n(y)h(RPC,)f(as)g(the)i(serv)n(er)e(needs)h(to)h
+(b)r(e)f(sure)f(that)i(the)f(reply)g(message)g(is)681
+3779 y(sen)n(t)g(to)g(the)h(sender)f(thread)h(\(and)f(not)h(an)n(y)f
+(imp)r(oster\).)392 4005 y Fw(7.)41 b(The)f(clien)n(t)g(receiv)n(es)f
+(the)h(reply)f(with)i(the)f(new,)j(reauthen)n(ticated)d(capabilit)n(y)
+-7 b(.)498 4105 y(Usually)29 b(this)g(capabilit)n(y)g(is)g(asso)r
+(ciated)e(in)j(the)f(serv)n(er)e(with)j(the)f(same)g(abstract)498
+4204 y(ob)5 b(ject,)28 b(but)g(di\013eren)n(t)f(user)g(creden)n(tials.)
+681 4410 y Fm(Of)k(course)i(a)f(new)g(capabilit)n(y)h(m)n(ust)f(b)r(e)h
+(created.)58 b(Otherwise,)33 b(all)f(other)g(users)681
+4489 y(holding)24 b(the)g(same)g(capabilit)n(y)g(w)n(ould)g(b)r(e)g
+(a\013ected)i(as)e(w)n(ell.)498 4714 y Fw(The)k(clien)n(t)f(can)h(no)n
+(w)f(deallo)r(cate)f(the)i(passp)r(ort)f(cap.)681 4920
+y Fm(As)c(said)g(b)r(efore,)h(normally)f(the)h(passp)r(ort)g(cap)h(is)e
+(cac)n(hed)i(b)n(y)f(the)g(clien)n(t)h(for)d(other)681
+4998 y(reauthen)n(tications.)p eop end
+%%Page: 54 60
+TeXDict begin 54 59 bop 739 282 a Fw(54)1098 b Fq(CHAPTER)27
+b(6.)64 b(THE)28 b(POSIX)f(PERSONALITY)739 515 y Fu(Result)82
+b Fw(The)27 b(clien)n(t)g Fs(C)33 b Fw(has)26 b(a)h(new)g(capabilit)n
+(y)f(that)h(is)g(authen)n(ticated)f(with)i(the)f(new)739
+615 y(e\013ectiv)n(e)35 b(user)g(and)h(group)e(IDs.)61
+b(The)35 b(serv)n(er)f(has)h(obtained)g(the)h(e\013ectiv)n(e)g(user)e
+(and)739 715 y(group)26 b(IDs)i(from)f(the)h Ft(auth)e
+Fw(serv)n(er)g(it)i(trusts.)946 885 y Fm(The)35 b(Hurd)f(on)g(Mac)n(h)h
+(uses)f(a)g(di\013eren)n(t)h(proto)r(col,)i(whic)n(h)d(is)g(more)g
+(complex)h(and)f(is)946 963 y(vulnerable)i(to)f(DoS)g(attac)n(ks.)66
+b(The)36 b(ab)r(o)n(v)n(e)g(proto)r(col)f(can)h(not)f(readily)g(b)r(e)g
+(used)g(on)946 1042 y(Mac)n(h,)24 b(b)r(ecause)h(the)g(sender)f(task)g
+(of)f(a)h(message)h(can)f(not)g(b)r(e)g(easily)g(iden)n(ti\014ed.)739
+1374 y Fn(6.2)135 b(Pro)t(cess)45 b(Managemen)l(t)739
+1602 y Fw(The)24 b Ft(proc)e Fw(serv)n(er)h(implemen)n(ts)h(Unix)g(pro)
+r(cess)f(seman)n(tics)g(in)i(the)f(Hurd)g(system.)36
+b(It)24 b(will)739 1702 y(also)30 b(assign)g(a)h(PID)g(to)h(eac)n(h)e
+(task)h(that)h(w)n(as)e(created)g(with)i(the)g Ft(task)e
+Fw(serv)n(er,)g(so)h(that)739 1801 y(the)h(o)n(wner)f(of)h(these)g
+(tasks,)h(and)f(the)g(system)g(administrator,)g(can)f(at)h(least)g
+(send)g(the)739 1901 y Ft(SIGKILL)25 b Fw(signal)h(to)i(them.)739
+2043 y(The)j Ft(proc)e Fw(serv)n(er)f(uses)j(the)g(task)f(manager)f
+(capabilit)n(y)h(from)g(the)h Ft(task)e Fw(serv)n(er)g(to)h(get)739
+2143 y(hold)d(of)h(the)g(information)f(ab)r(out)g(all)h(tasks)e(and)i
+(the)g(task)f(con)n(trol)f(caps.)946 2313 y Fm(The)19
+b Fh(proc)g Fm(serv)n(er)f(migh)n(t)g(also)g(b)r(e)g(the)h(natural)f
+(place)h(to)f(implemen)n(t)h(a)f(\014rst)g(p)r(olicy)g(serv)n(er)946
+2392 y(for)23 b(the)i Fh(task)g Fm(serv)n(er.)739 2682
+y Fl(6.2.1)112 b(Signals)739 2881 y Fw(Eac)n(h)23 b(pro)r(cess)h(can)g
+(register)g(the)h(thread)f(ID)h(of)g(a)f(signal)g(thread)g(with)i(the)f
+Ft(proc)e Fw(serv)n(er.)739 2980 y(The)28 b(pro)r(c)f(serv)n(er)g(will)
+h(giv)n(e)f(the)h(signal)g(thread)f(ID)i(to)f(an)n(y)f(other)g(task)h
+(whic)n(h)g(asks)f(for)739 3080 y(it.)946 3250 y Fm(The)e(thread)f(ID)g
+(can)g(b)r(e)g(guessed,)h(so)e(there)i(is)e(no)h(p)r(oin)n(t)g(in)f
+(protecting)i(it.)739 3441 y Fw(The)30 b(signal)f(thread)h(ID)h(can)e
+(then)i(b)r(e)g(used)f(b)n(y)f(a)h(task)g(to)g(con)n(tact)f(the)i(task)
+e(to)h(whic)n(h)739 3540 y(it)38 b(w)n(an)n(ts)e(to)i(send)f(a)g
+(signal.)66 b(The)38 b(task)f(m)n(ust)g(b)r(o)r(otstrap)g(its)h
+(connection)f(with)h(the)739 3640 y(in)n(tended)c(receiv)n(er)e(of)h
+(the)h(signal,)g(according)e(to)h(the)h(proto)r(col)f(describ)r(ed)g
+(in)h(section)739 3740 y(3.1.1)22 b(on)g(page)h(14.)34
+b(As)23 b(a)g(result,)h(it)f(will)g(receiv)n(e)f(the)i(signal)e
+(capabilit)n(y)g(of)h(the)g(receiving)739 3839 y(task.)739
+3982 y(The)41 b(sender)g(of)g(a)g(signal)g(m)n(ust)g(then)h(pro)n(vide)
+e(some)h(capabilit)n(y)g(that)g(pro)n(v)n(es)f(that)739
+4081 y(the)34 b(sender)f(is)g(allo)n(w)n(ed)g(to)g(send)h(the)g(signal)
+f(when)g(a)h(signal)e(is)i(p)r(osted)g(to)f(the)h(signal)739
+4181 y(capabilit)n(y)-7 b(.)55 b(F)-7 b(or)34 b(example,)h(the)f(o)n
+(wner)f(of)h(the)g(task)g(con)n(trol)f(cap)g(is)h(usually)g(allo)n(w)n
+(ed)739 4281 y(to)29 b(send)g(an)n(y)f(signal)g(to)h(it.)42
+b(Other)29 b(capabilities)f(migh)n(t)h(only)g(giv)n(e)f(p)r(ermission)g
+(to)h(send)739 4380 y(some)e(t)n(yp)r(es)g(of)h(signals.)946
+4550 y Fm(The)22 b(receiv)n(er)f(of)f(the)i(signal)f(decides)g(itself)f
+(whic)n(h)h(signals)g(to)g(accept)i(from)d(whic)n(h)h(other)946
+4629 y(tasks.)34 b(The)25 b(default)g(implemen)n(tation)h(in)e(the)h(C)
+g(library)e(pro)n(vides)i(POSIX)f(seman)n(tics,)946 4708
+y(plus)g(some)g(extensions.)739 4899 y Fw(Signal)j(handling)g(is)g(th)n
+(us)g(completely)g(implemen)n(ted)h(lo)r(cally)f(in)h(eac)n(h)e(task.)
+36 b(The)28 b Ft(proc)739 4998 y Fw(serv)n(er)e(only)h(serv)n(es)f(as)h
+(a)g(name-serv)n(er)e(for)i(the)h(thread)f(IDs)h(of)g(the)g(signal)e
+(threads.)p eop end
+%%Page: 55 61
+TeXDict begin 55 60 bop 291 282 a Fq(6.2.)63 b(PR)n(OCESS)27
+b(MANA)n(GEMENT)1534 b Fw(55)498 515 y Fm(The)32 b Fh(proc)h
+Fm(serv)n(er)f(can)g(not)h(hold)f(the)g(signal)g(capabilit)n(y)g
+(itself,)h(as)f(it)g(used)g(to)g(do)g(in)498 594 y(the)e(implemen)n
+(tation)f(on)g(Mac)n(h,)h(as)e(it)h(do)r(es)g(not)g(trust)g(the)g
+(tasks)g(implemen)n(ting)g(the)498 673 y(capabilit)n(y)-6
+b(.)33 b(But)24 b(this)g(is)g(not)g(a)h(problem,)e(as)h(the)h(sender)f
+(and)h(receiv)n(er)f(of)g(a)g(signal)f(can)498 752 y(negotiate)f(and)e
+(b)r(o)r(otstrap)h(the)f(connection)i(without)e(an)n(y)h(further)e
+(supp)r(ort)h(b)n(y)g(the)g Fh(proc)498 831 y Fm(serv)n(er.)498
+930 y(Also,)h(the)g Fh(proc)h Fm(serv)n(er)f(can)g(not)h(ev)n(en)g
+(hold)f(task)g(info)f(caps)i(to)f(supp)r(ort)h(the)f(sender)g(of)g(a)
+498 1009 y(signal)g(in)g(b)r(o)r(otstrapping)h(the)g(connection.)33
+b(This)20 b(means)i(that)g(there)g(is)f(a)g(race)g(b)r(et)n(w)n(een)498
+1088 y(lo)r(oking)k(up)h(the)g(signal)e(thread)i(ID)f(from)f(the)i(PID)
+f(in)g(the)h Fh(proc)g Fm(serv)n(er)e(and)i(acquiring)498
+1167 y(a)f(task)g(info)e(cap)i(for)f(the)h(task)g(ID)g(of)f(the)h
+(signal)f(receiv)n(er)g(in)g(the)h(sender.)34 b(Ho)n(w)n(ev)n(er,)24
+b(in)498 1245 y(Unix,)h(there)g(is)f(alw)n(a)n(ys)h(a)g(race)h(when)f
+(sending)h(a)f(signal)f(using)h Fh(kill)p Fm(.)36 b(The)25
+b(task)g(serv)n(er)498 1324 y(helps)f(the)g(users)g(a)f(bit)h(here)g(b)
+n(y)g(not)h(reusing)e(task)i(IDs)e(as)h(long)g(as)f(p)r(ossible.)291
+1517 y Fw(Some)29 b(signals)g(are)g(not)h(implemen)n(ted)h(b)n(y)e
+(sending)h(a)g(message)e(to)i(the)g(task.)44 b Ft(SIGKILL)291
+1616 y Fw(for)38 b(example)h(destro)n(ys)f(the)i(tasks)e(without)i(con)
+n(tacting)f(it)g(at)h(all.)72 b(This)39 b(feature)g(is)291
+1716 y(implemen)n(ted)28 b(in)g(the)g Ft(proc)e Fw(serv)n(er.)291
+1859 y(The)35 b(signal)f(capabilit)n(y)h(is)g(also)g(used)g(for)g
+(other)g(things,)i(lik)n(e)e(the)h(message)e(in)n(terface)291
+1959 y(\(whic)n(h)25 b(allo)n(ws)e(y)n(ou)h(to)h(manipulate)f(the)i(en)
+n(vironmen)n(t)d(v)-5 b(ariables)24 b(and)g Ft(auth)g
+Fw(capabilit)n(y)291 2058 y(of)j(a)g(running)h(task,)f(etc\).)291
+2351 y Fl(6.2.2)112 b(The)38 b Fb(fork\(\))h Fl(function)291
+2551 y Fw(T)-7 b(o)27 b(b)r(e)h(written.)291 2843 y Fl(6.2.3)112
+b(The)38 b Fb(exec)g Fl(functions)291 3043 y Fw(The)28
+b Ft(exec)e Fw(op)r(eration)h(will)i(b)r(e)f(done)g(lo)r(cally)f(in)i
+(a)e(task.)38 b(T)-7 b(raditionally)g(,)27 b Ft(exec)g
+Fw(o)n(v)n(erla)n(ys)291 3143 y(the)41 b(same)f(task)h(with)g(a)g(new)g
+(pro)r(cess)e(image,)44 b(b)r(ecause)c(creating)g(a)h(new)g(task)f(and)
+291 3242 y(transferring)f(the)i(asso)r(ciated)f(state)h(is)g(exp)r
+(ensiv)n(e.)77 b(In)41 b(L4,)j(only)d(the)h(threads)e(and)291
+3342 y(virtual)27 b(memory)h(mappings)g(are)f(actually)h(k)n(ernel)f
+(state)h(asso)r(ciated)f(with)i(a)f(task,)g(and)291 3441
+y(exactly)35 b(those)i(ha)n(v)n(e)e(to)h(b)r(e)h(destro)n(y)n(ed)e(b)n
+(y)j Ft(exec)d Fw(an)n(yw)n(a)n(y)-7 b(.)61 b(There)36
+b(is)h(a)f(lot)g(of)h(Hurd)291 3541 y(sp)r(eci\014c)23
+b(state)g(asso)r(ciated)f(with)h(a)g(task)f(\(capabilities,)i(for)f
+(example\),)h(but)g(it)f(is)g(di\016cult)291 3641 y(to)i(preserv)n(e)g
+(that.)36 b(There)26 b(are)e(securit)n(y)i(concerns,)f(b)r(ecause)g
+(POSIX)h(programs)d(do)j(not)291 3740 y(kno)n(w)j(ab)r(out)h(Hurd)g
+(features)g(lik)n(e)g(capabilities,)g(so)f(inheriting)h(all)g
+(capabilities)g(across)291 3840 y Ft(exec)c Fw(unconditionally)h(seems)
+g(dangerous.)498 4011 y Fm(One)c(could)g(think)g(that)h(if)e(a)h
+(program)f(is)g(not)h(Hurd-a)n(w)n(are,)f(then)i(it)f(will)e(not)i(mak)
+n(e)h(an)n(y)498 4090 y(use)c(of)g(capabilities)g(except)i(through)f
+(the)f(normal)g(POSIX)g(API,)f(and)i(th)n(us)f(there)h(are)f(no)498
+4169 y(capabilities)g(except)h(those)f(that)h(the)f(GNU)g(C)f(library)f
+(uses)i(itself,)f(whic)n(h)g Fh(exec)i Fm(can)f(tak)n(e)498
+4248 y(care)i(of.)30 b(Ho)n(w)n(ev)n(er,)23 b(this)e(is)g(only)h(true)g
+(if)f(co)r(de)h(that)h(is)e(not)i(Hurd-a)n(w)n(are)e(is)g(nev)n(er)h
+(mixed)498 4327 y(with)i(Hurd)e(sp)r(eci\014c)j(co)r(de,)f(ev)n(en)g
+(libraries)e(\(unless)h(the)h(library)f(in)n(timately)g(co)r(op)r
+(erates)498 4406 y(with)g(the)g(GNU)f(C)h(library\).)30
+b(This)21 b(w)n(ould)i(b)r(e)g(a)f(high)h(barrier)e(to)i(enable)h(Hurd)
+e(features)498 4485 y(in)h(otherwise)i(p)r(ortable)f(programs)f(and)h
+(libraries.)498 4584 y(It)d(is)f(b)r(etter)i(to)f(mak)n(e)g(all)f
+(POSIX)h(functions)g(safe)g(b)n(y)g(default)g(and)g(allo)n(w)f(for)g
+(extensions)498 4663 y(to)28 b(let)f(the)h(user)f(sp)r(ecify)g(whic)n
+(h)h(capabilities)f(b)r(esides)h(those)g(used)g(for)e(\014le)h
+(descriptors)498 4742 y(etc)e(to)f(b)r(e)g(inherited)g(b)n(y)g(the)h
+(new)f(executable.)498 4841 y(F)-6 b(or)26 b Fh(posix_spawn\(\))p
+Fm(,)k(this)c(is)f(straigh)n(t-forw)n(ard.)38 b(F)-6
+b(or)26 b Fh(exec)p Fm(,)h(it)f(is)g(not.)39 b(either)26
+b(sp)r(eci\014c)498 4920 y(capabilities)g(could)g(b)r(e)g(mark)n(es)g
+(as)f(\\do)i(not)f(close)g(on)g Fh(exec)p Fm(",)h(or)e(v)l(arian)n(ts)h
+(of)g(the)g Fh(exec)498 4998 y Fm(function)f(could)f(b)r(e)g(pro)n
+(vided)g(whic)n(h)g(tak)n(e)h(further)e(argumen)n(ts.)p
+eop end
+%%Page: 56 62
+TeXDict begin 56 61 bop 739 282 a Fw(56)1098 b Fq(CHAPTER)27
+b(6.)64 b(THE)28 b(POSIX)f(PERSONALITY)739 515 y Fw(There)21
+b(are)f(also)g(implemen)n(tation)i(obstacles)e(hindering)h(the)h(reuse)
+f(of)g(the)h(existing)f(task.)739 615 y(Only)29 b(lo)r(cal)g(threads)g
+(can)g(manipulate)g(the)h(virtual)f(memory)f(mappings,)i(and)f(there)g
+(is)739 715 y(a)35 b(lot)h(of)g(lo)r(cal)f(state)h(that)g(has)f(to)h(b)
+r(e)g(k)n(ept)f(somewhere)g(b)r(et)n(w)n(een)h(the)g(time)g(the)g(old)
+739 814 y(program)26 b(b)r(ecomes)i(defunct)h(and)g(the)f(new)h(binary)
+e(image)h(is)g(installed)g(and)h(used)f(\(not)739 914
+y(to)f(sp)r(eak)g(of)h(the)g(actual)f(program)f(snipp)r(et)i(that)g
+(runs)f(during)g(the)h(transition\).)739 1045 y(So)f(the)h(decision)f
+(w)n(as)f(made)h(to)g(alw)n(a)n(ys)f(create)g(a)h(new)h(task)e(with)i
+Ft(exec)p Fw(,)e(and)h(cop)n(y)g(the)739 1145 y(desired)32
+b(state)h(from)f(the)h(curren)n(t)f(task)h(to)f(the)i(new)e(task.)52
+b(This)33 b(is)g(a)f(clean)h(solution,)739 1244 y(b)r(ecause)j(a)g(new)
+g(task)g(will)g(alw)n(a)n(ys)f(start)g(out)i(without)f(an)n(y)g
+(capabilities)g(in)g(serv)n(ers,)739 1344 y(etc,)e(and)f(th)n(us)g
+(there)f(is)h(no)g(need)g(for)f(the)h(old)g(task)f(to)h(try)f(to)h
+(destro)n(y)e(all)i(unneeded)739 1444 y(capabilities)c(and)g(other)g
+(lo)r(cal)g(state)g(b)r(efore)g Ft(exec)p Fw(.)41 b(Also,)30
+b(in)g(case)e(the)i Ft(exec)e Fw(fails,)i(the)739 1543
+y(old)21 b(program)e(can)i(con)n(tin)n(ue)g(to)g(run,)h(ev)n(en)f(if)h
+(the)g Ft(exec)d Fw(fails)i(at)h(a)e(v)n(ery)h(late)g(p)r(oin)n(t)g
+(\(there)739 1643 y(is)27 b(no)h(\\p)r(oin)n(t)f(of)h(no)f(return")f
+(un)n(til)j(the)e(new)h(task)f(is)h(actually)f(up)h(and)f(running\).)
+739 1774 y(F)-7 b(or)22 b(suid)h(and)f(sgid)h(applications,)f(the)h
+(actual)g Ft(exec)e Fw(has)h(to)g(b)r(e)h(done)g(b)n(y)f(the)h
+(\014lesystem.)739 1874 y(Ho)n(w)n(ev)n(er,)29 b(the)i(\014lesystem)f
+(can)g(not)g(b)r(e)g(b)r(othered)h(to)f(also)f(transfer)g(all)h(the)h
+(user)e(state)739 1974 y(in)n(to)22 b(the)g(new)g(task.)34
+b(It)23 b(can)e(not)h(ev)n(en)g(do)f(that,)j(b)r(ecause)d(it)i(can)e
+(not)h(accept)g(capabilities)739 2073 y(implemen)n(ted)29
+b(b)n(y)g(un)n(trusted)g(serv)n(ers)e(from)i(the)g(user.)40
+b(Also,)29 b(the)h(\014lesystem)f(do)r(es)f(not)739 2173
+y(w)n(an)n(t)f(to)g(rely)g(on)g(the)g(new)h(task)f(to)g(b)r(e)h(co)r
+(op)r(erativ)n(e,)e(b)r(ecause)h(it)g(do)r(es)g(not)h(necessarily)739
+2272 y(trust)g(the)g(co)r(de,)f(if)h(is)g(is)f(o)n(wned)g(b)n(y)g(an)h
+(un)n(trusted)f(user.)840 2464 y(1.)41 b(The)30 b(user)f(creates)f(a)h
+(new)h(task)f(and)g(a)g(con)n(tainer)f(with)i(a)f(single)g(ph)n(ysical)
+g(page,)946 2563 y(and)h(mak)n(es)f(the)i Ft(exec)d Fw(call)i(to)g(the)
+g(\014le)g(capabilit)n(y)-7 b(,)30 b(pro)n(viding)f(the)h(task)g(con)n
+(trol)946 2663 y(capabilit)n(y)-7 b(.)36 b(Before)23
+b(that,)j(it)f(creates)f(a)g(task)g(info)h(capabilit)n(y)f(from)g(it)h
+(for)f(its)h(o)n(wn)946 2763 y(use.)840 2919 y(2.)41
+b(The)30 b(\014lesystem)f(c)n(hec)n(ks)g(p)r(ermission)f(and)i(then)g
+(rev)n(ok)n(es)d(all)i(other)g(users)g(on)g(the)946 3019
+y(task)f(con)n(trol)f(capabilit)n(y)-7 b(.)38 b(This)29
+b(will)f(rev)n(ok)n(e)e(the)j(users)f(access)f(to)h(the)g(task,)g(and)
+946 3119 y(will)j(fail)e(if)i(the)f(user)f(did)h(not)g(pro)n(vide)f(a)g
+(pristine)h(task)f(ob)5 b(ject.)44 b(\(It)30 b(is)g(assumed)946
+3218 y(that)35 b(the)f(\014lesystem)g(should)f(not)h(create)f(the)h
+(task)g(itself)g(so)f(the)i(user)e(can)g(not)946 3318
+y(use)28 b(suid/sgid)f(applications)f(to)i(escap)r(e)f(from)g(their)h
+(quota)f(restriction\).)840 3475 y(3.)41 b(Then)27 b(it)g(rev)n(ok)n
+(es)d(access)i(to)g(the)h(pro)n(vided)e(ph)n(ysical)h(page)g(and)g
+(writes)g(a)g(trusted)946 3574 y(startup)i(co)r(de)f(to)h(it.)840
+3731 y(4.)41 b(The)31 b(\014lesystem)f(will)g(also)g(prepare)f(all)g
+(capabilit)n(y)h(transactions)f(and)h(write)g(the)946
+3831 y(required)i(information)g(\(together)g(with)h(other)e(useful)i
+(information\))f(in)h(a)f(stac)n(k)946 3930 y(on)c(the)g(ph)n(ysical)e
+(page.)840 4087 y(5.)41 b(Then)33 b(it)g(creates)e(a)h(thread)g(in)h
+(the)g(task,)g(and)f(starts)g(it.)52 b(A)n(t)33 b(pagefault,)g(it)g
+(will)946 4187 y(pro)n(vide)27 b(the)h(ph)n(ysical)f(page.)840
+4344 y(6.)41 b(The)30 b(startup)f(co)r(de)h(on)f(the)h(ph)n(ysical)f
+(page)g(completes)g(the)h(capabilit)n(y)f(transfer.)946
+4443 y(It)38 b(will)g(also)f(install)g(a)h(small)f(pager)f(that)i(can)f
+(install)h(\014le)g(mappings)f(for)g(this)946 4543 y(binary)27
+b(image.)36 b(Then)28 b(it)g(jumps)g(to)g(the)g(en)n(try)f(p)r(oin)n
+(t.)840 4700 y(7.)41 b(The)33 b(\014lesystem)f(in)h(the)g(mean)n(while)
+f(has)g(done)h(all)f(it)h(can)f(do)h(to)f(help)h(the)g(task)946
+4799 y(startup.)46 b(It)31 b(will)f(pro)n(vide)g(the)h(con)n(ten)n(t)f
+(of)g(the)h(binary)f(or)f(script)i(via)f(paging)f(or)946
+4899 y(\014le)c(reads,)f(but)h(that)g(happ)r(ens)g(async)n(hronously)-7
+b(,)22 b(and)j(as)f(for)g(an)n(y)f(other)h(task.)36 b(So)946
+4998 y(the)28 b(\014lesystem)g(returns)f(to)g(the)h(clien)n(t.)p
+eop end
+%%Page: 57 63
+TeXDict begin 57 62 bop 291 282 a Fq(6.2.)63 b(PR)n(OCESS)27
+b(MANA)n(GEMENT)1534 b Fw(57)392 515 y(8.)41 b(The)29
+b(clien)n(t)g(can)g(then)h(send)f(its)g(un)n(trusted)g(information)g
+(to)f(the)i(new)f(task.)41 b(The)498 615 y(new)25 b(task)g(got)f(the)i
+(clien)n(t's)f(thread)f(ID)i(from)f(the)g(\014lesystem)g(\(p)r(ossibly)
+g(pro)n(vided)498 715 y(b)n(y)j(the)h(clien)n(t\),)f(and)h(th)n(us)f
+(kno)n(ws)f(to)h(whic)n(h)g(thread)g(it)h(should)f(listen.)39
+b(The)28 b(new)498 814 y(task)e(will)h(not)g(trust)f(this)h
+(information)f(ultimativ)n(ely)g(\(ie,)i(the)f(new)f(task)g(will)h(use)
+498 914 y(the)34 b(authen)n(tication,)g(ro)r(ot)f(directory)f(and)h
+(other)f(capabilities)h(it)h(got)f(from)g(the)498 1013
+y(\014lesystem\),)23 b(but)g(it)f(will)g(accept)f(all)h(capabilities)f
+(and)g(mak)n(e)g(prop)r(er)g(use)h(of)f(them.)392 1189
+y(9.)41 b(Then)20 b(the)g(new)g(task)f(will)h(send)f(a)h(message)e(to)h
+(pro)r(c)h(to)f(tak)n(e)g(o)n(v)n(er)f(the)i(old)f(PID)h(and)498
+1288 y(other)31 b(pro)r(cess)f(state.)48 b(Ho)n(w)31
+b(this)g(can)g(b)r(e)h(done)f(b)r(est)h(is)f(still)h(to)f(b)r(e)h
+(determined)498 1388 y(\(lik)n(ely)j(the)g(old)f(task)g(will)h(pro)n
+(vide)f(a)g(pro)r(cess)g(con)n(trol)f(capabilit)n(y)h(to)h(the)g(new)
+498 1487 y(task\).)i(A)n(t)28 b(that)g(momen)n(t,)f(the)h(old)g(task)f
+(is)g(desrto)n(y)n(ed)f(b)n(y)h(the)h(pro)r(c)f(serv)n(er.)291
+1717 y(This)f(is)h(a)f(coarse)f(and)i(incomplete)g(description,)f(but)h
+(it)h(sho)n(ws)d(the)i(general)f(idea.)36 b(The)291 1817
+y(details)27 b(will)h(dep)r(end)g(a)f(lot)h(on)f(the)h(actual)f
+(implemen)n(tation.)291 2083 y Fu(The)32 b(startup)g(information)291
+2279 y Fw(The)20 b(follo)n(wing)f(information)h(is)g(passed)f(to)h(the)
+h(new)f(task)g(b)n(y)g(the)h(paren)n(t)e(\(the)i(\014lesystem)291
+2379 y(in)27 b(the)h(suid)g(case\).)36 b(Ev)n(ery)26
+b(item)i(is)g(a)f(mac)n(hine)g(w)n(ord.)392 2609 y(1.)41
+b Ft(magic)498 2746 y Fw(The)28 b(\014rst)f(four)g(b)n(ytes)h(are)e
+Ft(E)p Fw(,)h Ft(X)p Fw(,)h Ft(E)p Fw(,)f Ft(C)p Fw(.)392
+2921 y(2.)41 b Ft(program)g(header)g(location)392 3096
+y Fw(3.)g Ft(program)g(header)g(size)498 3234 y Fw(The)33
+b(lo)r(cation)f(and)g(size)g(of)h(the)g(program)d(header.)51
+b(The)33 b(meaning)f(of)h(this)g(\014eld)498 3333 y(dep)r(ends)28
+b(on)f(the)h(binary)f(format.)392 3508 y(4.)41 b Ft(feature)g(flags)498
+3646 y Fw(This)34 b(bit-\014eld)g(indicates)g(whic)n(h)g(of)g(the)g
+(follo)n(wing)f(information)g(is)h(presen)n(t.)55 b(If)498
+3745 y(the)30 b(information)f(is)h(not)g(presen)n(t,)f(the)i(corresp)r
+(onding)c(mac)n(hine)j(w)n(ords)e(are)h(un-)498 3845
+y(de\014ned.)37 b(This)28 b(pro)n(vides)e(simple)i(v)n(ersion)e(con)n
+(trol.)681 4018 y Fm(They)e(could)g(also)g(b)r(e)g(unde\014ned.)392
+4212 y Fw(5.)41 b Ft(wortel)g(thread)g(ID)392 4387 y
+Fw(6.)g Ft(wortel)g(control)g(cap)h(ID)498 4525 y Fw(The)31
+b(thread)f(ID)h(of)g(the)g Ft(wortel)d Fw(ro)r(otserv)n(er,)h(and)h
+(the)h(lo)r(cal)g(ID)g(of)f(the)h Ft(wortel)498 4624
+y Fw(con)n(trol)g(cap.)52 b(The)32 b Ft(wortel)e Fw(con)n(trol)i(cap)g
+(allo)n(ws)f(the)i(user)f(to)g(mak)n(e)g(privileged)498
+4724 y(system)39 b(calls.)72 b(This)39 b(\014eld)g(is)h(only)e(presen)n
+(t)h(if)h(the)g(user)e(has)h(this)h(capabilit)n(y)-7
+b(.)498 4823 y(Usually)g(,)28 b(this)f(is)h(only)f(the)h(case)f(for)g
+(some)g(initial)h(serv)n(ers)d(at)j(b)r(o)r(otstrap.)392
+4998 y(7.)41 b Ft(physmem)g(thread)g(ID)p eop end
+%%Page: 58 64
+TeXDict begin 58 63 bop 739 282 a Fw(58)1098 b Fq(CHAPTER)27
+b(6.)64 b(THE)28 b(POSIX)f(PERSONALITY)840 515 y Fw(8.)41
+b Ft(physmem)g(control)g(cap)h(ID)946 657 y Fw(The)31
+b(thread)f(ID)h(ph)n(ysical)e(memory)h(serv)n(er,)f(and)h(the)h(lo)r
+(cal)f(ID)h(of)f(the)h Ft(physmem)946 756 y Fw(con)n(trol)25
+b(cap.)36 b(This)26 b(cap)f(can)h(b)r(e)g(used)g(to)g(manage)f(the)h
+(ph)n(ysical)f(memory)g(of)h(this)946 856 y(task.)840
+1039 y(9.)41 b Ft(physmem)g(startup)g(page)h(container)e(cap)i(ID)946
+1180 y Fw(The)34 b(con)n(tainer)f(cap)g(ID)i(for)e(the)h(startup)g(co)r
+(de,)h(con)n(taining)e(this)h(information,)946 1279 y(the)d(initial)g
+(pager,)f(and)h(other)f(startup)g(co)r(de.)45 b(This)31
+b(con)n(tainer)e(is)i(mapp)r(ed)f(in)n(to)946 1379 y(the)i(address)f
+(space)f(of)i(the)g(task)f(outside)g(of)h(the)g(actual)f(program,)f
+(and)i(can)f(b)r(e)946 1479 y(unmapp)r(ed)25 b(b)n(y)f(the)h(program)d
+(after)i(it)g(has)g(used)g(this)h(information)e(and)h(installed)946
+1578 y(its)i(o)n(wn)f(pager,)g(b)n(y)h(destro)n(ying)e(this)i(con)n
+(tainer,)f(to)g(reclaim)g(the)h(virtual)f(address)946
+1678 y(space)i(and)h(ph)n(ysical)e(memory)h(it)h(o)r(ccupies.)799
+1861 y(10.)40 b(\(More)27 b(to)h(come.\))739 2198 y Fn(6.3)135
+b(Unix)46 b(Domain)f(So)t(c)l(k)l(ets)739 2428 y Fw(In)40
+b(the)h(Hurd)f(on)g(Mac)n(h,)j(there)d(w)n(as)f(a)g(global)g(p\015o)r
+(cal)h(serv)n(er)f(that)h(pro)n(vided)f(unix)739 2528
+y(domain)g(so)r(c)n(k)n(ets)f(and)i(pip)r(es)g(to)f(all)h(users.)72
+b(This)39 b(will)h(not)g(w)n(ork)e(v)n(ery)h(w)n(ell)g(in)h(the)739
+2628 y(Hurd)30 b(on)h(L4,)f(b)r(ecause)g(for)g(descriptor)g(passing,)g
+(read:)41 b(capabilit)n(y)30 b(passing,)g(the)h(unix)739
+2727 y(domain)h(so)r(c)n(k)n(et)g(serv)n(er)f(needs)i(to)f(accept)h
+(capabilities)f(in)h(transit.)52 b(User)33 b(capabilities)739
+2827 y(are)d(often)h(implemen)n(ted)g(b)n(y)g(un)n(trusted)f(serv)n
+(ers,)g(though,)h(and)g(th)n(us)g(a)f(global)g(p\015o)r(cal)739
+2926 y(serv)n(er)c(running)h(as)g(ro)r(ot)g(can)g(not)g(accept)h(them.)
+739 3071 y(Ho)n(w)n(ev)n(er,)d(unix)h(domain)g(so)r(c)n(k)n(ets)g(and)g
+(pip)r(es)h(can)f(not)g(b)r(e)h(implemen)n(ted)g(lo)r(cally)f(in)h(the)
+739 3171 y(task.)51 b(An)33 b(external)f(task)f(is)i(needed)f(to)h
+(hold)f(bu\013ered)h(data)f(capabilities)g(in)h(transit.)739
+3270 y(in)e(theory)-7 b(,)31 b(a)g(new)g(task)f(could)h(b)r(e)h(used)e
+(for)h(ev)n(ery)f(pip)r(e)h(or)f(unix)h(domain)g(so)r(c)n(k)n(etpair.)
+739 3370 y(Ho)n(w)n(ev)n(er,)24 b(in)i(practice,)g(one)f(serv)n(er)g
+(for)g(eac)n(h)g(user)g(w)n(ould)h(su\016ce)g(and)f(p)r(erform)h(b)r
+(etter.)739 3514 y(This)e(w)n(orks,)f(b)r(ecause)h(access)f(to)h(Unix)h
+(Domain)f(So)r(c)n(k)n(ets)f(is)h(con)n(trolled)f(via)h(the)g
+(\014lesys-)739 3614 y(tem,)g(and)f(access)f(to)g(pip)r(es)i(is)e(con)n
+(trolled)g(via)g(\014le)h(descriptors,)g(usually)f(b)n(y)h
+(inheritance.)739 3713 y(F)-7 b(or)32 b(example,)h(if)g(a)e(\014fo)i
+(is)f(installed)g(as)g(a)g(passiv)n(e)f(translator)f(in)j(the)f
+(\014lesystem,)i(the)739 3813 y(\014rst)29 b(user)f(accessing)g(it)i
+(will)f(create)f(a)h(pip)r(e)h(in)f(his)g(p\015o)r(cal)g(serv)n(er.)40
+b(F)-7 b(rom)29 b(then)g(on,)h(an)739 3913 y(activ)n(e)25
+b(translator)f(m)n(ust)h(b)r(e)i(installed)e(in)h(the)g(no)r(de)g(that)
+g(redirects)f(an)n(y)f(other)i(users)e(to)739 4012 y(the)j(righ)n(t)e
+(p\015o)r(cal)h(serv)n(er)f(implemen)n(ting)h(this)h(\014fo.)36
+b(This)26 b(is)h(asymmetrical)e(in)h(that)h(the)739 4112
+y(\014rst)k(user)f(to)h(access)f(a)g(\014fo)h(will)g(implemen)n(t)h
+(it,)g(and)f(th)n(us)g(pa)n(y)f(the)i(costs)e(for)g(it.)48
+b(But)739 4212 y(it)28 b(do)r(es)g(not)g(seem)g(to)g(cause)f(an)n(y)h
+(particular)e(problems)i(in)g(implemen)n(ting)g(the)h(POSIX)739
+4311 y(seman)n(tics.)739 4456 y(The)h(GNU)i(C)e(library)f(can)h(con)n
+(tact)61 b(/serv)n(ers/so)r(c)n(k)n(et/p\015o)r(cal)25
+b(to)31 b(implemen)n(t)g(so)r(c)n(k)n(et-)739 4555 y(pair,)d(or)g
+(start)g(a)g(p\015o)r(cal)g(serv)n(er)f(for)h(this)h(task's)f(exclusiv)
+n(e)g(use)g(if)h(that)g(no)r(de)g(do)r(es)f(not)739 4655
+y(exist.)739 4799 y(All)j(this)f(are)f(optimizations:)42
+b(It)30 b(should)g(w)n(ork)f(to)h(ha)n(v)n(e)f(one)h(p\015o)r(cal)f
+(pro)r(cess)g(for)h(eac)n(h)739 4899 y(so)r(c)n(k)n(etpair.)j(Ho)n(w)n
+(ev)n(er,)23 b(p)r(erformance)f(should)h(b)r(e)g(b)r(etter)h(with)f(a)g
+(shared)f(p\015o)r(cal)h(serv)n(er,)739 4998 y(one)k(p)r(er)h(user.)p
+eop end
+%%Page: 59 65
+TeXDict begin 59 64 bop 291 282 a Fq(6.4.)63 b(PIPES)2341
+b Fw(59)291 515 y Fn(6.4)135 b(Pip)t(es)291 731 y Fw(Pip)r(es)35
+b(are)g(implemen)n(ted)h(using)h Ft(socketpair\(\))p
+Fw(,)c(that)j(means)f(as)g(unnamed)h(pair)f(of)291 831
+y(Unix)c(Domain)g(So)r(c)n(k)n(ets.)47 b(The)32 b Ft(pflocal)c
+Fw(serv)n(er)i(will)h(supp)r(ort)g(this)h(b)n(y)f(implemen)n(ting)291
+930 y(pip)r(e)d(seman)n(tics)f(on)g(the)h(so)r(c)n(k)n(etpair)e(if)i
+(requested.)498 1080 y Fm(It)g(w)n(as)f(considered)i(to)e(use)h(shared)
+g(memory)f(for)f(the)i(pip)r(e)g(implemen)n(tation.)43
+b(But)28 b(w)n(e)498 1159 y(are)21 b(not)h(a)n(w)n(are)g(of)f(a)g(lo)r
+(c)n(k-free)g(proto)r(col)h(using)f(shared)g(memory)g(with)g(m)n
+(ultiple)g(readers)498 1238 y(and)28 b(m)n(ultiple)f(writers.)42
+b(It)28 b(migh)n(t)g(b)r(e)g(p)r(ossible,)f(but)h(it)g(is)f(not)h(ob)n
+(vious)g(if)e(that)j(w)n(ould)498 1317 y(b)r(e)g(faster:)41
+b(Pip)r(es)28 b(are)h(normally)f(used)h(with)g Fh(read\(\))h
+Fm(and)f Fh(write\(\))p Fm(,)i(so)e(the)g(data)h(has)498
+1396 y(to)g(b)r(e)g(copied)h(from)e(and)h(to)g(the)h(supplied)e
+(bu\013er.)50 b(This)29 b(can)h(b)r(e)g(done)h(e\016cien)n(tly)f(in)498
+1475 y(L4)d(ev)n(en)g(across)f(address)g(spaces)h(using)f(string)g
+(items.)39 b(In)27 b(the)g(implemen)n(tation)g(using)498
+1554 y(so)r(c)n(k)n(ets,)38 b(the)d Fh(pflocal)h Fm(serv)n(er)e
+(handles)g(concurren)n(t)i(read)e(and)h(write)f(accesses)h(with)498
+1632 y(m)n(utual)24 b(exclusion.)291 1939 y Fn(6.5)135
+b(Filesystems)291 2171 y Fl(6.5.1)112 b(Directory)37
+b(lo)s(okup)h(across)g(\014lesystems)291 2359 y Fw(The)29
+b(Hurd)h(has)f(the)h(abilit)n(y)f(to)g(let)h(users)f(moun)n(t)g
+(\014lesystems)g(and)h(other)f(serv)n(ers)e(pro-)291
+2458 y(viding)g(a)g(\014lesystem-lik)n(e)g(in)n(terface.)36
+b(Suc)n(h)27 b(\014lesystem)h(serv)n(ers)d(are)i(called)g(translators.)
+291 2558 y(In)f(the)g(Hurd)g(on)f(GNU)i(Mac)n(h,)e(the)i(paren)n(t)e
+(\014lesystem)g(w)n(ould)h(automatically)e(start)i(up)291
+2657 y(suc)n(h)35 b(translators)e(from)i(passiv)n(e)g(translator)e
+(settings)j(in)g(the)g(ino)r(de.)60 b(It)36 b(w)n(ould)f(then)291
+2757 y(blo)r(c)n(k)26 b(un)n(til)h(the)g(c)n(hild)g(\014lesystem)f
+(sends)g(a)h(message)e(to)h(its)h(b)r(o)r(otstrap)f(p)r(ort)h(\(pro)n
+(vided)291 2857 y(b)n(y)d(the)h(paren)n(t)f(fs\))h(with)g(its)f(ro)r
+(ot)g(directory)g(p)r(ort.)35 b(This)25 b(ro)r(ot)f(directory)f(p)r
+(ort)h(can)g(then)291 2956 y(b)r(e)k(giv)n(en)e(to)i(an)n(y)f(clien)n
+(t)g(lo)r(oking)g(up)h(the)g(translated)f(no)r(de.)291
+3090 y(There)33 b(are)g(sev)n(eral)f(things)i(wrong)e(with)j(this)f(sc)
+n(heme,)h(whic)n(h)e(b)r(ecomes)h(apparen)n(t)f(in)291
+3189 y(the)25 b(Hurd)g(on)f(L4.)35 b(The)25 b(paren)n(t)f(\014lesystem)
+h(m)n(ust)g(b)r(e)g(careful)f(to)h(not)f(blo)r(c)n(k)h(on)f(creating)
+291 3289 y(the)29 b(c)n(hild)g(\014lesystem)g(task.)40
+b(It)30 b(m)n(ust)f(also)f(b)r(e)h(careful)g(to)g(not)g(blo)r(c)n(k)f
+(on)h(receiving)f(an)n(y)291 3389 y(ac)n(kno)n(wledgemen)n(t)i(or)i
+(startup)h(message)e(from)h(it.)53 b(F)-7 b(urthermore,)33
+b(it)g(can)f(not)h(accept)291 3488 y(the)26 b(ro)r(ot)g(directory)f
+(capabilit)n(y)g(from)h(the)g(c)n(hild)h(\014lesystem)f(and)g(forw)n
+(ard)e(it)j(to)f(clien)n(ts,)291 3588 y(as)h(they)g(are)g(p)r(oten)n
+(tially)g(not)h(trusted.)291 3721 y(The)21 b(latter)f(problem)h(can)f
+(b)r(e)i(solv)n(ed)e(the)h(follo)n(wing)f(w)n(a)n(y:)32
+b(The)21 b(\014lesystem)g(kno)n(ws)f(ab)r(out)291 3821
+y(the)30 b(serv)n(er)d(thread)j(in)g(the)g(c)n(hild)f(\014lesystem.)43
+b(It)30 b(also)f(implemen)n(ts)h(an)f(authen)n(tication)291
+3921 y(capabilit)n(y)f(that)i(represen)n(ts)d(the)j(abilit)n(y)f(to)g
+(access)f(the)i(c)n(hild)f(\014lesystem.)42 b(This)29
+b(capa-)291 4020 y(bilit)n(y)g(is)h(also)e(giv)n(en)h(to)h(the)g(c)n
+(hild)g(\014lesystem)f(at)h(startup)f(\(or)g(when)h(it)g(attac)n(hes)e
+(itself)291 4120 y(to)23 b(the)h(paren)n(t)f(\014lesystem\).)36
+b(On)23 b(clien)n(t)h(dir)p 1690 4120 25 4 v 30 w(lo)r(okup,)g(the)g
+(paren)n(t)f(\014lesystem)g(can)g(return)291 4220 y(the)37
+b(serv)n(er)p 663 4220 V 28 w(thread)f(and)h(the)g(authen)n(tication)f
+(capabilit)n(y)g(to)h(the)g(clien)n(t.)64 b(The)37 b(clien)n(t)291
+4319 y(can)26 b(use)g(that)i(to)e(initiate)h(a)g(connection)f(with)h
+(the)g(c)n(hild)g(\014lesystem)f(\(b)n(y)h(\014rst)g(building)291
+4419 y(up)37 b(a)g(connection,)i(then)f(sending)f(the)g(authen)n
+(tication)g(capabilit)n(y)f(from)h(the)h(paren)n(t)291
+4519 y(\014lesystem,)27 b(and)h(receiving)e(a)h(ro)r(ot)g(directory)f
+(capabilit)n(y)h(in)h(exc)n(hange\).)498 4669 y Fm(There)36
+b(is)f(a)g(race)h(here.)67 b(If)35 b(the)h(c)n(hild)g(\014lesystem)g
+(dies)f(and)h(the)g(paren)n(t)h(\014lesystem)498 4747
+y(pro)r(cesses)24 b(the)g(task)f(death)i(noti\014cation)f(and)g
+(releases)f(the)h(task)g(info)e(cap)i(for)e(the)i(c)n(hild)498
+4826 y(b)r(efore)30 b(the)g(user)f(acquires)g(its)h(o)n(wn)f(task)h
+(info)f(cap)h(for)f(the)h(c)n(hild,)g(then)h(an)e(imp)r(oster)498
+4905 y(migh)n(t)24 b(b)r(e)g(able)g(to)g(pretend)h(to)f(b)r(e)g(the)h
+(c)n(hild)f(\014lesystem)g(for)f(the)h(clien)n(t.)498
+4998 y(This)f(race)h(can)h(only)f(b)r(e)g(a)n(v)n(oided)g(b)n(y)g(a)g
+(more)g(complex)g(proto)r(col:)p eop end
+%%Page: 60 66
+TeXDict begin 60 65 bop 739 282 a Fw(60)1098 b Fq(CHAPTER)27
+b(6.)64 b(THE)28 b(POSIX)f(PERSONALITY)946 515 y Fm(V)-6
+b(arian)n(t)27 b(1:)37 b(The)27 b(user)g(has)f(to)h(acquire)g(the)h
+(task)f(info)f(cap)h(for)f(the)i(c)n(hild)e(fs,)g(and)h(then)946
+594 y(it)f(has)f(to)h(p)r(erform)f(the)h(lo)r(okup)g(again.)36
+b(If)26 b(then)g(the)g(thread)g(ID)g(is)f(for)f(the)i(task)g(it)g(got)
+946 673 y(the)i(task)e(ID)h(for)e(in)h(adv)l(ance,)j(it)d(can)h(go)f
+(on.)40 b(If)26 b(not,)h(it)f(has)g(to)h(retry)-6 b(.)39
+b(This)26 b(is)f(not)i(so)946 752 y(go)r(o)r(d)e(b)r(ecause)h(a)e
+(directory)g(lo)r(okup)g(is)g(usually)f(an)h(exp)r(ensiv)n(e)i(op)r
+(eration.)32 b(Ho)n(w)n(ev)n(er,)25 b(it)946 831 y(has)f(the)h(adv)l
+(an)n(tage)h(of)d(only)h(slo)n(wing)g(do)n(wn)g(the)g(rare)g(case.)946
+930 y(V)-6 b(arian)n(t)29 b(2:)42 b(The)29 b(clien)n(t)g(creates)h(an)f
+(empt)n(y)h(reference)f(con)n(tainer)h(in)e(the)i(task)f(serv)n(er,)946
+1009 y(whic)n(h)h(can)h(then)g(b)r(e)f(used)g(b)n(y)g(the)h(serv)n(er)e
+(to)h(\014ll)f(in)h(a)g(reference)g(to)g(the)h(c)n(hild's)e(task)946
+1088 y(ID.)j(Ho)n(w)n(ev)n(er,)i(the)f(clien)n(t)g(has)f(to)g(create)i
+(and)e(destro)n(y)h(suc)n(h)f(a)h(con)n(tainer)g(for)e(ev)n(ery)946
+1167 y(\014lesystem)22 b(where)f(it)g(excepts)i(it)d(could)i(b)r(e)f
+(redirected)h(to)f(another)h(\(that)h(means:)30 b(for)20
+b(all)946 1245 y(\014lesystems)29 b(for)e(whic)n(h)h(it)g(do)r(es)g
+(not)h(use)f Fh(O_NOTRANS)p Fm(\).)i(This)e(is)f(quite)h(an)h(o)n(v)n
+(erhead)g(to)946 1324 y(the)c(common)f(case.)946 1472
+y Fh(<marcus>)38 b(I)e(have)g(another)h(idea)946 1551
+y(<marcus>)h(the)e(client)h(does)g(not)f(give)g(a)g(container)946
+1630 y(<marcus>)i(server)f(sees)f(child)h(fs,)f(no)g(container)i(->)e
+(returns)h(O_NOTRANS)h(node)946 1709 y(<marcus>)g(then)e(client)h(sees)
+g(error,)g(uses)f(O_NOTRANS)i(node,)f("")f(and)g(container)946
+1788 y(<marcus>)i(problem)f(solved)946 1867 y(<marcus>)h(this)e(seems)h
+(to)f(be)g(the)g(optimum)946 1946 y(<neal>)h(hmm.)946
+2025 y(<neal>)g(So)f(lazily)h(supply)g(a)f(container.)946
+2103 y(<marcus>)i(yeah)946 2182 y(<neal>)f(Hoping)g(you)g(won't)f(need)
+h(one.)946 2261 y(<marcus>)h(and)e(the)g(server)h(helps)g(you)f(by)g
+(doing)h(as)f(much)g(as)g(it)g(can)g(usefully)946 2340
+y(<neal>)h(And)g(that)f(is)g(the)g(normal)h(case.)946
+2419 y(<neal>)g(Yeah,)g(that)g(seems)f(reasonable.)946
+2498 y(<marcus>)i(the)e(trick)h(is)f(that)g(the)g(server)h(won't)g
+(fail)f(completely)946 2577 y(<marcus>)i(it)e(will)g(give)h(you)f(at)g
+(least)g(the)h(underlying)h(node)739 2769 y Fw(The)32
+b(actual)f(creation)f(of)i(the)g(c)n(hild)g(\014lesystem)f(can)h(b)r(e)
+g(p)r(erformed)f(m)n(uc)n(h)h(lik)n(e)f(a)g(suid)739
+2869 y Ft(exec)p Fw(,)26 b(just)i(without)f(an)n(y)g(clien)n(t)g(to)g
+(follo)n(w)g(up)h(with)f(further)h(capabilities)e(and)i(startup)739
+2968 y(info.)63 b(The)36 b(only)g(problem)f(that)i(remains)e(is)h(ho)n
+(w)f(the)i(paren)n(t)e(\014lesystem)h(can)g(kno)n(w)739
+3068 y(whic)n(h)29 b(thread)f(in)i(the)f(c)n(hild)g(\014lesystem)g
+(implemen)n(ts)g(the)g(initial)h(handshak)n(e)d(proto)r(col)739
+3167 y(for)38 b(the)h(clien)n(ts)g(to)f(use.)70 b(The)39
+b(only)f(safe)g(w)n(a)n(y)g(here)g(seems)g(to)h(b)r(e)g(that)g(the)g
+(paren)n(t)739 3267 y(\014lesystem)26 b(requires)f(the)h(c)n(hild)h(to)
+f(use)g(the)g(main)g(thread)g(for)g(that,)h(or)e(that)h(the)h(paren)n
+(t)739 3367 y(\014lesystem)e(creates)g(a)g(second)g(thread)h(in)g(the)g
+(c)n(hild)g(at)f(startup)h(\(passing)f(its)g(thread)h(ID)739
+3466 y(in)32 b(the)h(startup)f(data\),)h(requiring)e(that)h(this)h
+(second)e(thread)h(is)g(used.)51 b(In)32 b(either)g(case)739
+3566 y(the)26 b(paren)n(t)e(\014lesystem)h(will)g(kno)n(w)g(the)g
+(thread)g(ID)h(in)f(adv)-5 b(ance)25 b(b)r(ecause)g(it)g(created)g(the)
+739 3666 y(thread)30 b(in)h(the)h(\014rst)e(place.)46
+b(This)31 b(lo)r(oks)f(a)g(bit)i(ugly)-7 b(,)31 b(and)g(violates)f(go)r
+(o)r(d)g(taste,)h(so)g(w)n(e)739 3765 y(migh)n(t)c(try)h(to)f(lo)r(ok)g
+(for)g(alternativ)n(e)f(solutions.)739 4057 y Fl(6.5.2)112
+b(Reparen)m(ting)739 4257 y Fw(The)27 b(Hurd)h(on)f(Mac)n(h)f(con)n
+(tains)h(a)f(curious)h(RPC,)g Ft(file_reparent)p Fw(,)22
+b(whic)n(h)27 b(allo)n(ws)f(y)n(ou)739 4357 y(to)j(create)f(a)h(new)h
+(capabilit)n(y)e(for)h(the)h(same)e(no)r(de,)i(with)g(the)g
+(di\013erence)f(that)g(the)h(new)739 4457 y(no)r(de)g(will)h(ha)n(v)n
+(e)e(a)h(supplied)h(capabilit)n(y)e(as)h(its)h(paren)n(t)e(no)r(de.)46
+b(A)30 b(directory)f(lo)r(okup)h(of)739 4556 y Ft(..)36
+b Fw(on)27 b(this)h(new)g(capabilit)n(y)f(w)n(ould)g(return)g(the)h
+(pro)n(vided)e(paren)n(t)h(capabilit)n(y)-7 b(.)739 4700
+y(This)29 b(function)g(is)g(used)f(b)n(y)h(the)g Ft(chroot\(\))d
+Fw(function,)j(whic)n(h)g(sets)f(the)i(paren)n(t)e(no)r(de)g(to)739
+4799 y(the)j(n)n(ull)h(capabilit)n(y)e(to)h(prev)n(en)n(t)g(escap)r(e)f
+(from)h(a)g Ft(chroot\(\))d Fw(en)n(vironmen)n(t.)47
+b(It)31 b(is)g(also)739 4899 y(used)25 b(b)n(y)f(the)h
+Ft(firmlink)c Fw(translator,)j(whic)n(h)g(is)h(a)f(cross)f(o)n(v)n(er)g
+(of)i(a)f(sym)n(b)r(olic)g(and)h(a)f(hard)739 4998 y(link:)37
+b(It)28 b(w)n(orks)e(lik)n(e)h(a)g(hard)g(link,)h(but)g(can)f(b)r(e)h
+(used)g(across)e(\014lesystems.)p eop end
+%%Page: 61 67
+TeXDict begin 61 66 bop 291 282 a Fq(6.5.)63 b(FILESYSTEMS)2002
+b Fw(61)291 515 y(A)23 b(\014rmlink)h(is)f(a)g(dangerous)e(thing.)36
+b(Because)22 b(the)i(\014lesystem)f(will)h(giv)n(e)e(no)h(indication)g
+(if)291 615 y(the)f(paren)n(t)g(no)r(de)g(it)g(returns)g(is)g(pro)n
+(vided)f(b)n(y)h(itself)h(or)e(some)g(other,)i(p)r(ossibly)f(un)n
+(trusted)291 715 y(\014lesystem,)j(the)h(user)f(migh)n(t)h(follo)n(w)e
+(the)i(paren)n(t)f(no)r(de)h(to)f(un)n(trusted)h(\014lesystems)f(with-)
+291 814 y(out)i(b)r(eing)h(a)n(w)n(are)d(of)j(it.)291
+950 y(In)k(the)h(Hurd)f(p)r(ort)g(to)g(L4,)h(the)f(\014lesystem)h(can)e
+(not)i(accept)e(un)n(trusted)i(paren)n(t)e(capa-)291
+1049 y(bilities)h(on)h(b)r(ehalf)g(of)f(the)h(user)f(an)n(ymore.)50
+b(The)33 b Ft(chroot\(\))c Fw(function)k(is)g(not)f(di\016cult)291
+1149 y(to)d(implemen)n(t)g(an)n(yw)n(a)n(y)-7 b(,)28
+b(as)h(no)g(real)f(capabilit)n(y)g(is)h(required.)41
+b(The)29 b(serv)n(er)f(can)h(just)h(b)r(e)291 1248 y(instructed)k(to)g
+(create)f(a)h(no)r(de)g(with)h(no)f(paren)n(t)f(no)r(de,)j(and)e(it)g
+(can)g(do)g(that)g(without)291 1348 y(problems.)h(Nev)n(ertheless,)26
+b(w)n(e)h(also)e(w)n(an)n(t)h(a)g(secure)g(v)n(ersion)f(of)i(the)g
+Ft(firmlink)c Fw(transla-)291 1448 y(tor.)37 b(This)28
+b(is)g(p)r(ossible)g(if)g(the)h(same)e(strategy)g(is)h(used)g(as)f(in)h
+(cross)f(\014lesystem)h(lo)r(okups.)291 1547 y(The)f(clien)n(t)g
+(registers)e(a)i(serv)n(er)e(thread)h(as)h(the)g(handler)f(for)h(the)g
+(paren)n(t)f(no)r(de,)i(and)f(the)291 1647 y(\014lesystem)36
+b(returns)g(a)g(capabilit)n(y)g(that)h(can)g(b)r(e)g(used)f(for)g
+(authen)n(tication)h(purp)r(oses.)291 1747 y(No)n(w,)22
+b(the)g(clien)n(t)g(still)g(needs)g(to)f(connect)h(this)g(to)g(the)g
+(new)g(paren)n(t)e(no)r(de.)35 b(Normally)-7 b(,)23 b(the)291
+1846 y(\014lesystem)e(pro)n(viding)f(the)i(new)g(paren)n(t)e(no)r(de)i
+(will)g(also)e(not)i(trust)f(the)h(other)f(\014lesystem,)291
+1946 y(and)30 b(th)n(us)h(can)g(not)g(accept)f(the)i(capabilit)n(y)e
+(that)h(should)g(b)r(e)g(used)g(for)f(authen)n(tication)291
+2045 y(purp)r(oses.)35 b(So)25 b(instead)f(creating)g(a)h(direct)g
+(link)g(from)g(the)g(one)g(\014lesystem)g(to)g(the)g(other,)291
+2145 y(the)32 b(\014rmlink)g(translator)f(m)n(ust)h(act)g(as)f(a)h
+(middle)h(man,)g(and)f(redirect)g(all)f(accesses)g(to)291
+2245 y(the)g(paren)n(t)f(no)r(de)g(\014rst)h(to)f(itself,)i(and)f(then)
+g(to)g(the)g(\014lesystem)f(pro)n(viding)g(the)h(paren)n(t)291
+2344 y(no)r(de.)55 b(F)-7 b(or)33 b(this,)i(it)f(m)n(ust)g(request)f(a)
+h(capabilit)n(y)e(from)i(that)g(\014lesystem)f(that)h(can)g(b)r(e)291
+2444 y(used)26 b(for)g(authen)n(tication)h(purp)r(oses)f(when)h(b)r(o)r
+(otstrapping)e(a)i(connection,)f(that)h(allo)n(ws)291
+2544 y(suc)n(h)g(a)g(b)r(o)r(otstrapping)g(clien)n(t)g(to)h(access)e
+(the)i(paren)n(t)f(no)r(de)h(directly)-7 b(.)291 2679
+y(This)25 b(also)f(\014xes)h(the)h(securit)n(y)f(issues,)g(b)r(ecause)g
+(no)n(w)g(an)n(y)f(mo)n(v)n(e)h(a)n(w)n(a)n(y)e(from)i(the)h
+(\014lesys-)291 2779 y(tem)41 b(pro)n(viding)e(the)i(reparen)n(ted)e
+(no)r(de)i(will)g(explicitely)f(go)g(\014rst)h(to)f(the)h
+Ft(firmlink)291 2878 y Fw(translator,)26 b(and)h(then)i(to)f(the)g
+(\014lesystem)g(pro)n(viding)e(the)i(paren)n(t)f(no)r(de.)38
+b(The)28 b(user)f(can)291 2978 y(th)n(us)37 b(mak)n(e)f(an)g(informed)h
+(decision)f(if)i(it)f(trusts)g(the)g Ft(firmlink)d Fw(translator)h(and)
+i(the)291 3077 y(\014lesystem)27 b(pro)n(viding)f(the)i(paren)n(t)f(no)
+r(de.)498 3234 y Fm(This)h(is)g(a)h(go)r(o)r(d)g(example)g(where)g(the)
+h(redesign)e(of)h(the)g(IPC)g(system)g(forces)f(us)h(to)g(\014x)498
+3312 y(a)e(securit)n(y)h(issue)e(and)i(pro)n(vides)f(a)g(deep)r(er)h
+(insigh)n(t)f(in)n(to)g(the)h(trust)f(issues)g(and)g(ho)n(w)h(to)498
+3391 y(solv)n(e)c(them.)p eop end
+%%Page: 62 68
+TeXDict begin 62 67 bop 739 282 a Fw(62)1098 b Fq(CHAPTER)27
+b(6.)64 b(THE)28 b(POSIX)f(PERSONALITY)p eop end
+%%Page: 63 69
+TeXDict begin 63 68 bop 291 1174 a Fp(Chapter)64 b(7)291
+1625 y Fv(Debugging)291 2092 y Fw(L4)26 b(do)r(es)h(not)f(supp)r(ort)h
+(debugging.)36 b(So)27 b(ev)n(ery)e(task)i(has)f(to)h(implemen)n(t)g(a)
+g(debug)g(in)n(ter-)291 2192 y(face)f(and)h(implemen)n(t)g(debugging)f
+(lo)r(cally)-7 b(.)36 b(gdb)27 b(needs)f(to)h(b)r(e)g(c)n(hanged)f(to)g
+(mak)n(e)g(use)h(of)291 2291 y(this)g(in)n(terface.)36
+b(Ho)n(w)26 b(to)g(p)r(erform)h(the)g(required)f(authen)n(tication,)g
+(and)h(ho)n(w)f(the)h(debug)291 2391 y(thread)j(is)h(adv)n(ertised)f
+(to)h(gdb,)g(and)g(ho)n(w)g(the)g(debug)g(in)n(terface)f(should)h(lo)r
+(ok)f(lik)n(e,)i(are)291 2491 y(all)27 b(op)r(en)h(questions.)1681
+5208 y(63)p eop end
+%%Page: 64 70
+TeXDict begin 64 69 bop 739 282 a Fw(64)1676 b Fq(CHAPTER)27
+b(7.)64 b(DEBUGGING)p eop end
+%%Page: 65 71
+TeXDict begin 65 70 bop 291 1186 a Fp(Chapter)64 b(8)291
+1649 y Fv(Device)77 b(Driv)-6 b(ers)291 2129 y Fw(This)27
+b(section)g(written)h(b)n(y)f(P)n(eter)g(De)h(Sc)n(hrijv)n(er)e(and)i
+(Daniel)f(W)-7 b(agner.)291 2475 y Fn(8.1)135 b(Requiremen)l(ts)415
+2706 y Fg(\017)41 b Fw(P)n(erformance:)35 b(Sp)r(eed)28
+b(is)f(imp)r(ortan)n(t!)415 2895 y Fg(\017)41 b Fw(P)n(ortabilit)n(y:)
+35 b(F)-7 b(ramew)n(ork)26 b(should)h(w)n(ork)f(on)i(di\013eren)n(t)f
+(arc)n(hitectures.)498 3039 y(Also:)37 b(Useable)27 b(in)h(a)f(not)h(h)
+n(urdisc)n(h)e(en)n(vironmen)n(t)h(with)h(only)f(small)g(c)n(hanges.)
+415 3228 y Fg(\017)41 b Fw(Flexibilit)n(y)415 3417 y
+Fg(\017)g Fw(Con)n(v)n(enien)n(t)27 b(in)n(terfaces)415
+3605 y Fg(\017)41 b Fw(Consistency)415 3794 y Fg(\017)g
+Fw(Safet)n(y:)c(driv)n(er)26 b(failure)h(should)h(ha)n(v)n(e)e(as)h
+(minimal)h(system)f(impact)h(as)f(p)r(ossible.)291 4141
+y Fn(8.2)135 b(Ov)l(erview)291 4375 y Fw(The)27 b(framew)n(ork)f
+(consists)h(of:)415 4600 y Fg(\017)41 b Fw(Bus)27 b(driv)n(ers)415
+4789 y Fg(\017)41 b Fw(Device)28 b(driv)n(ers)415 4978
+y Fg(\017)41 b Fw(Service)27 b(serv)n(ers)f(\(plugin)h(managers,)f
+Fs(!)1786 4990 y Fr(0)1823 4978 y Fw(,)i(dev)-5 b(a\))1681
+5208 y(65)p eop end
+%%Page: 66 72
+TeXDict begin 66 71 bop 739 282 a Fw(66)1468 b Fq(CHAPTER)27
+b(8.)64 b(DEVICE)28 b(DRIVERS)739 515 y Fl(8.2.1)112
+b(La)m(y)m(er)38 b(of)g(the)f(driv)m(ers)739 742 y Fw(The)25
+b(device)f(driv)n(er)g(framew)n(ork)f(consists)h(only)g(of)h(the)g(lo)n
+(w)n(er)e(lev)n(el)h(driv)n(ers)f(and)i(do)r(esn't)739
+842 y(need)h(to)g(ha)n(v)n(e)f(a)g(complicated)h(sc)n(heme)f(for)h
+(access)f(con)n(trol.)35 b(This)26 b(is)f(b)r(ecause)h(it)g(should)739
+941 y(b)r(e)20 b(p)r(ossible)f(to)g(share)f(devices,)j(e.g.)33
+b(for)19 b(neigh)n(b)r(our)g(Hurd.)34 b(The)19 b(authen)n(tication)g
+(is)g(done)739 1041 y(b)n(y)27 b(installing)f(a)h(virtual)f(driv)n(er)g
+(in)h(eac)n(h)f(OS/neighour)f(Hurd.)37 b(The)27 b(driv)n(er)e(framew)n
+(ork)739 1141 y(trusts)g(these)f(virtual)h(driv)n(ers.)34
+b(So)25 b(it's)g(p)r(ossible)f(for)h(a)f(non)h(Hurdish)g(system)f(to)h
+(use)g(the)739 1240 y(driv)n(er)h(framew)n(ork)g(just)i(b)n(y)f
+(implemen)n(ting)h(these)g(virtual)f(driv)n(ers.)739
+1403 y(Only)42 b(threads)g(whic)n(h)g(ha)n(v)n(e)f(registered)g(as)g
+(trusted)i(are)e(allo)n(w)n(ed)g(to)h(access)f(device)739
+1502 y(driv)n(ers.)35 b(The)26 b(c)n(hec)n(k)f(is)h(simply)h(done)f(b)n
+(y)g(c)n(hec)n(king)f(the)h(senders)g(ID)g(against)f(a)h(table)g(of)739
+1602 y(kno)n(wn)h(threads.)739 1951 y Fl(8.2.2)112 b(Address)38
+b(spaces)739 2178 y Fw(Driv)n(ers)27 b(alw)n(a)n(ys)g(reside)g(in)i
+(their)f(o)n(wn)g(AS.)h(The)f(o)n(v)n(erhead)f(for)h(cross)f(AS)h(IPC)g
+(is)h(small)739 2278 y(enough)e(to)g(do)h(so.)739 2627
+y Fl(8.2.3)112 b(Zero)38 b(cop)m(ying)g(and)h(DMA)739
+2854 y Fw(It)25 b(is)g(assumed)f(that)h(there)f(are)g(no)g
+(di\013erences)h(b)r(et)n(w)n(een)f(ph)n(ysical)g(memory)g(pages.)35
+b(F)-7 b(or)739 2954 y(example)24 b(eac)n(h)g(ph)n(ysical)g(memory)g
+(page)g(can)g(b)r(e)h(used)g(for)f(DMA)i(transfers.)35
+b(Of)24 b(course,)739 3054 y(older)j(hardw)n(are)e(lik)n(e)i(ISA)h
+(devices)g(can)f(so)g(not)g(b)r(e)h(supp)r(orted.)739
+3216 y(Still)35 b(some)g(supp)r(ort)f(for)h(ISA)g(devices)f(lik)n(e)h
+(serial)e(p)r(orts)i(and)f(PS/2)g(for)g(k)n(eyb)r(oard)f(is)739
+3316 y(needed.)739 3478 y(With)g(this)g(assumption,)g(the)f(device)g
+(driv)n(er)f(framew)n(ork)g(can)g(b)r(e)i(giv)n(en)f(an)n(y)f(ph)n
+(ysical)739 3578 y(memory)c(page)g(for)g(DMA)i(op)r(eration.)37
+b(This)27 b(ph)n(ysical)g(memory)g(page)g(m)n(ust)h(b)r(e)h(pinned)739
+3677 y(do)n(wn.)739 3840 y(If)k(an)f(application)g(w)n(an)n(ts)g(to)h
+(send)f(or)g(receiv)n(e)g(data)g(to/from)g(a)g(device)g(driv)n(er)g(it)
+h(has)739 3939 y(to)f(tell)g(the)g(virtual)g(driv)n(er)e(the)j(page)e
+(on)g(whic)n(h)h(the)h(op)r(eration)e(has)g(to)h(b)r(e)g(executed.)739
+4039 y(Since)c(the)h(application)e(do)r(esn't)h(kno)n(w)f(the)i
+(virtual-real)d(memory)h(mapping,)h(it)h(has)e(to)739
+4139 y(ask)j(the)i(ph)n(ysical)f(memory)f(manager)g(for)h(the)h(real)e
+(memory)h(address)f(of)i(the)f(page)g(in)739 4238 y(question.)k(If)23
+b(the)g(page)f(is)g(not)h(directly)g(mapp)r(ed)g(from)f(the)h(ph)n
+(ysical)f(memory)g(manager)739 4338 y(the)35 b(application)e(asks)g
+(the)i(mapp)r(er)f(\(another)g(application)f(whic)n(h)i(has)e(mapp)r
+(ed)i(this)739 4438 y(memory)f(region)f(to)i(the)g(\014rst)f
+(application\))h(to)f(resolv)n(e)f(the)i(mapping.)58
+b(This)35 b(can)f(b)r(e)739 4537 y(done)27 b(recursiv)n(ely)-7
+b(.)35 b(Normally)-7 b(,)26 b(this)i(resolving)d(of)i(a)g(mapping)g
+(can)f(b)r(e)i(sp)r(ed)f(up)h(using)f(a)739 4637 y(cac)n(he)g
+(services,)f(since)h(a)h(small)f(n)n(um)n(b)r(er)g(of)h(pages)e(are)h
+(reused)g(v)n(ery)f(often.)739 4799 y(With)32 b(the)g(sc)n(heme,)g(the)
+g(driv)n(ers)e(do)h(not)h(ha)n(v)n(e)e(to)h(tak)n(e)g(sp)r(ecial)g
+(care)g(of)g(zero)f(cop)n(ying)739 4899 y(if)h(there)e(is)i(only)e(one)
+h(virtual)g(driv)n(er.)43 b(When)31 b(there)f(is)g(more)f(than)h(one)g
+(virtual)g(driv)n(er)739 4998 y(pages)c(ha)n(v)n(e)h(to)g(b)r(e)h
+(copied)g(for)f(all)g(other)g(virtual)g(driv)n(ers.)p
+eop end
+%%Page: 67 73
+TeXDict begin 67 72 bop 291 282 a Fq(8.3.)63 b(BUS)28
+b(DRIVERS)2013 b Fw(67)291 515 y Fl(8.2.4)112 b(Ph)m(ysical)38
+b(v)m(ersus)g(logical)g(device)g(view)291 703 y Fw(The)31
+b(device)g(driv)n(er)f(framew)n(ork)g(will)i(only)f(o\013er)f(a)h(ph)n
+(ysical)g(device)g(view.)48 b(Ie.)h(it)32 b(will)291
+803 y(b)r(e)41 b(a)g(tree)f(with)i(devices)e(as)g(the)i(lea)n(v)n(es)d
+(connected)i(b)n(y)g(v)-5 b(arious)39 b(bus)i(tec)n(hnologies.)291
+903 y(An)n(y)34 b(logical)e(view)i(and)g(naming)g(p)r(ersistence)g
+(will)g(ha)n(v)n(e)f(to)h(b)r(e)g(build)h(on)f(top)g(of)g(this)291
+1002 y(\(translator\).)291 1268 y Fl(8.2.5)112 b(Things)38
+b(for)g(the)f(future)415 1454 y Fg(\017)k Fw(In)n(teraction)27
+b(with)h(the)g(task)f(serv)n(er)f(\(e.g.)36 b(listings)28
+b(driv)n(er)e(threads)h(with)h(ps,etc.\))415 1618 y Fg(\017)41
+b Fw(P)n(o)n(w)n(ermanagemen)n(t)291 1926 y Fn(8.3)135
+b(Bus)44 b(Driv)l(ers)291 2143 y Fw(A)36 b(bus)g(driv)n(er)e(is)i(resp)
+r(onsible)f(to)h(manage)f(the)h(bus)g(and)g(pro)n(vide)f(access)g(to)g
+(devices)291 2242 y(connected)28 b(to)g(it.)40 b(In)29
+b(practice)e(it)i(means)f(a)g(bus)h(driv)n(er)e(has)h(to)g(p)r(erform)g
+(the)h(follo)n(wing)291 2342 y(tasks:)415 2554 y Fg(\017)41
+b Fw(Handle)28 b(hotplug)f(ev)n(en)n(ts)498 2685 y(Busses)39
+b(whic)n(h)g(do)g(not)g(supp)r(ort)g(hotplugging,)i(will)f(treated)f
+(as)f(if)i(there)f(is)g(1)498 2785 y(insertion)e(ev)n(en)n(t)g(for)g
+(ev)n(ery)f(device)h(connected)g(to)g(it)h(when)g(the)f(bus)h(driv)n
+(er)e(is)498 2885 y(started.)f(Driv)n(ers)23 b(whic)n(h)g(don't)h(supp)
+r(ort)g(autoprobing)e(of)i(devices)f(will)h(probably)498
+2984 y(ha)n(v)n(e)f(to)h(read)f(some)g(con\014guration)f(data)i(from)g
+(a)f(\014le)2218 2954 y Fr(1)2279 2984 y Fw(or)g(if)i(the)f(driv)n(er)f
+(is)h(needed)498 3084 y(for)37 b(b)r(o)r(otstrapping)f(con\014guration)
+g(can)h(b)r(e)g(giv)n(en)g(as)f(argumen)n(t)g(on)h(its)h(stac)n(k.)498
+3184 y(In)28 b(some)g(cases)e(the)j(bus)f(do)r(esn't)g(generate)e
+(insertion/remo)n(v)-5 b(al)26 b(ev)n(en)n(ts,)h(but)h(can)498
+3283 y(still)e(supp)r(ort)f(some)f(form)h(of)g(hotplug)g(functionalit)n
+(y)g(if)h(the)g(user)e(tells)i(the)f(driv)n(er)498 3383
+y(when)j(a)f(c)n(hange)g(to)g(the)h(bus)g(con\014guration)e(has)h(happ)
+r(ened)h(\(eg.)36 b(SCSI\).)415 3547 y Fg(\017)41 b Fw(Con\014gure)27
+b(clien)n(t)g(device)h(driv)n(ers)498 3678 y(The)d(bus)f(driv)n(er)f
+(should)h(start)g(the)h(appropriate)e(clien)n(t)h(device)h(driv)n(er)e
+(translator)498 3778 y(when)d(an)f(insertion)g(ev)n(en)n(t)h(is)f
+(detected.)35 b(It)20 b(should)f(also)g(pro)n(vide)f(the)i(clien)n(t)g
+(device)498 3878 y(driv)n(er)28 b(with)i(all)f(necessary)f
+(con\014guration)g(info,)i(so)e(it)i(can)f(access)g(the)g(device)g(it)
+498 3977 y(needs.)49 b(This)32 b(con\014guration)e(data)h(t)n(ypically)
+g(consists)g(of)g(the)h(bus)g(addresses)e(of)498 4077
+y(the)g(device)g(and)g(p)r(ossibly)f(IR)n(Q)g(n)n(um)n(b)r(ers)h(or)e
+(DMA)j(c)n(hannel)e(ID's.)44 b(The)30 b(device)498 4176
+y(driv)n(er)c(is)i(loaded)f(b)n(y)g(the)h(asso)r(ciated)e(plugin)i
+(manager.)415 4340 y Fg(\017)41 b Fw(Pro)n(vide)26 b(access)g(to)i
+(devices)498 4472 y(This)d(means)g(the)g(bus)g(driv)n(er)f(should)h(b)r
+(e)g(able)g(to)f(p)r(erform)h(a)f(bus)i(transaction)d(on)498
+4572 y(b)r(ehalf)i(of)g(a)g(clien)n(t)g(device)f(driv)n(er.)35
+b(In)25 b(some)f(cases)g(this)h(in)n(v)n(olv)n(es)e(sending)i(a)f(mes-)
+498 4671 y(sage)e(and)g(w)n(aiting)g(for)h(reply)f(\(eg.)35
+b(SCSI,)23 b(USB,)g(IEEE)f(1394,)g(Fibre)g(Channel,...\).)498
+4771 y(The)i(driv)n(er)e(should)h(pro)n(vide)f(send/receiv)n(e)g
+(message)g(primitiv)n(es)h(in)g(this)h(case.)35 b(In)p
+291 4842 1146 4 v 383 4896 a Fi(1)418 4920 y Fm(It)20
+b(migh)n(t)h(b)r(e)f(a)h(go)r(o)r(d)g(idea,)f(if)f(the)i(device)h(driv)
+n(er)d(has)h(no)h(notion)g(ho)n(w)f(the)h(con\014guraiton)h(is)e
+(stored.)291 4998 y(It)k(just)g(asks)f(the)i(bus)f(driv)n(er)f(whic)n
+(h)g(should)h(kno)n(w)h(ho)n(w)f(to)g(get)g(the)h(con\014guration.)p
+eop end
+%%Page: 68 74
+TeXDict begin 68 73 bop 739 282 a Fw(68)1468 b Fq(CHAPTER)27
+b(8.)64 b(DEVICE)28 b(DRIVERS)946 515 y Fw(other)37 b(cases)g(devices)f
+(on)h(the)h(bus)g(can)f(b)r(e)g(accessed)g(b)n(y)g(memory)f(accesses)g
+(or)946 615 y(b)n(y)c(using)f(sp)r(ecial)g(I/O)f(instructions.)48
+b(In)31 b(this)h(case)e(the)i(driv)n(er)e(should)h(pro)n(vide)946
+715 y(mapping)h(and)g(unmapping)g(primitiv)n(es)g(so)f(a)h(clien)n(t)g
+(device)g(driv)n(er)f(can)g(get)h(ac-)946 814 y(cess)d(to)g(the)g
+(memory)g(range)f(or)g(is)h(allo)n(w)n(ed)f(to)h(access)e(the)j(I/O)e
+(addresses.)40 b(The)946 914 y(clien)n(t)24 b(device)g(driv)n(er)f
+(should)g(use)h(a)g(library)-7 b(,)23 b(whic)n(h)h(is)g(bus)g(dep)r
+(endan)n(t,)h(to)e(access)946 1013 y(the)32 b(device)e(on)h(the)g(bus.)
+47 b(This)31 b(library)e(hides)i(the)g(platform)g(sp)r(eci\014c)g
+(details)f(of)946 1113 y(accessing)d(the)h(bus.)863 1310
+y Fg(\017)41 b Fw(Rescans)946 1458 y(F)-7 b(urthermore)34
+b(the)i(bus)f(driv)n(er)e(m)n(ust)i(also)f(supp)r(ort)h(rescans)f(for)g
+(hardw)n(are.)57 b(It)946 1558 y(migh)n(t)33 b(b)r(e)g(that)g(not)g
+(all)f(driv)n(ers)f(are)h(found)h(during)f(b)r(o)r(otstrapping)g(and)g
+(hence)946 1657 y(later)20 b(on)g(driv)n(ers)f(could)h(b)r(e)h(loaded.)
+33 b(This)21 b(is)f(done)g(b)n(y)g(generating)f(new)h(attac)n(h)g(no-)
+946 1757 y(ti\014cation,)i(whic)n(h)e(are)f(sen)n(t)h(to)g(the)h(bus's)
+f(plugin)g(manager.)33 b(The)20 b(plugin)g(manager)946
+1857 y(then)31 b(loads)e(a)h(new)g(driv)n(er,)g(if)g(p)r(ossible.)44
+b(A)31 b(prob)r(e)f(fun)n(tion)g(is)g(not)g(needed)g(since)946
+1956 y(all)i(supp)r(orted)g(hardw)n(are)e(can)i(b)r(e)g(iden)n
+(ti\014ed)h(b)n(y)e(v)n(endor/device)f(iden)n(ti\014cation)946
+2056 y(\(unlik)n(e)37 b(ISA)g(hardw)n(are\).)62 b(F)-7
+b(or)36 b(hardw)n(are)f(busses)h(whic)n(h)g(don't)h(supp)r(ort)g(suc)n
+(h)946 2156 y(iden)n(ti\014cation)i(only)f(static)h(con\014guration)e
+(is)h(p)r(ossible)g(\(con\014guration)g(scripts)946 2255
+y(etc.\))739 2573 y Fl(8.3.1)112 b(Ro)s(ot)37 b(bus)h(driv)m(er)739
+2785 y Fw(The)28 b(ro)r(ot)e(bus)i(is)g(the)f(en)n(tryp)r(oin)n(t)h(to)
+f(lo)r(ok)g(up)h(devices.)739 3103 y Fl(8.3.2)112 b(Generic)38
+b(Bus)g(Driv)m(er)739 3315 y Fw(Op)r(erations:)863 3549
+y Fg(\017)j Fw(notify)28 b(\(attac)n(h,)g(detac)n(h\))863
+3746 y Fg(\017)41 b Fw(string)27 b(en)n(umerate)739 4064
+y Fl(8.3.3)112 b(ISA)37 b(Bus)h(Driv)m(er)739 4276 y
+Fw(Inherits)27 b(from:)863 4510 y Fg(\017)41 b Fw(Generic)28
+b(Bus)f(Driv)n(er)739 4744 y(Op)r(erations:)863 4978
+y Fg(\017)41 b Fw(\(none\))p eop end
+%%Page: 69 75
+TeXDict begin 69 74 bop 291 282 a Fq(8.4.)63 b(DEVICE)28
+b(DRIVERS)1851 b Fw(69)291 515 y Fl(8.3.4)112 b(PCI)37
+b(Bus)g(Driv)m(er)291 704 y Fw(Inherits)27 b(from:)415
+906 y Fg(\017)41 b Fw(Generic)27 b(Bus)h(Driv)n(er)291
+1108 y(Op)r(erations:)415 1310 y Fg(\017)41 b Fw(map)p
+660 1310 25 4 v 30 w(mmio:)c(map)27 b(a)g(PCI)h(BAR)f(for)g(MMIO)415
+1476 y Fg(\017)41 b Fw(map)p 660 1476 V 30 w(io:)36 b(map)28
+b(a)f(PCI)g(BAR)h(for)f(I/O)415 1642 y Fg(\017)41 b Fw(map)p
+660 1642 V 30 w(mem:)c(map)28 b(a)f(PCI)g(BAR)h(for)f(memory)415
+1808 y Fg(\017)41 b Fw(read)p 661 1808 V 29 w(mmio)p
+893 1808 V 30 w(8,16,32,64:)34 b(read)26 b(from)i(a)f(MMIO)g(register)
+415 1975 y Fg(\017)41 b Fw(write)p 688 1975 V 30 w(mmio)p
+921 1975 V 30 w(8,16,32,64:)33 b(write)28 b(to)f(a)g(MMIO)h(register)
+415 2141 y Fg(\017)41 b Fw(read)p 661 2141 V 29 w(io)p
+755 2141 V 30 w(8,16,32,64:)33 b(read)27 b(from)g(an)h(IO)f(register)
+415 2307 y Fg(\017)41 b Fw(write)p 688 2307 V 30 w(io)p
+783 2307 V 29 w(8,16,32,64:)34 b(write)27 b(to)h(an)f(IO)g(register)415
+2473 y Fg(\017)41 b Fw(read)p 661 2473 V 29 w(con\014g)p
+903 2473 V 29 w(8,16,32,?:)35 b(read)27 b(from)g(a)g(PCI)g(con\014g)g
+(register)415 2639 y Fg(\017)41 b Fw(write)p 688 2639
+V 30 w(con\014g)p 931 2639 V 29 w(8,16,32,?:)35 b(write)27
+b(to)h(a)f(PCI)g(con\014g)g(register)415 2805 y Fg(\017)41
+b Fw(allo)r(c)p 672 2805 V 29 w(dma)p 858 2805 V 30 w(mem\(for)28
+b(non)g(zero)g(cop)n(ying\):)37 b(allo)r(cate)27 b(main)h(memory)g
+(useable)f(for)498 2905 y(DMA)415 3071 y Fg(\017)41 b
+Fw(free)p 635 3071 V 30 w(dma)p 822 3071 V 29 w(mem)21
+b(\(for)g(non)f(zero)f(cop)n(ying\):)33 b(free)20 b(main)g(memory)g
+(useable)g(for)g(DMA)415 3237 y Fg(\017)41 b Fw(prepare)p
+777 3237 V 29 w(dma)p 963 3237 V 29 w(read:)35 b(write)24
+b(bac)n(k)f(CPU)h(cac)n(helines)f(for)h(DMAable)h(memory)e(area)415
+3403 y Fg(\017)41 b Fw(sync)p 663 3403 V 30 w(dma)p 850
+3403 V 29 w(write:)c(discard)27 b(CPU)g(cac)n(helines)g(for)g(DMAable)h
+(memory)f(area)415 3570 y Fg(\017)41 b Fw(allo)r(c)p
+672 3570 V 29 w(consisten)n(t)p 1060 3570 V 30 w(mem:)c(allo)r(cate)27
+b(memory)g(whic)n(h)h(is)f(consisten)n(t)g(b)r(et)n(w)n(een)h(CPU)498
+3669 y(and)g(device)415 3835 y Fg(\017)41 b Fw(free)p
+635 3835 V 30 w(consisten)n(t)p 1024 3835 V 29 w(mem:)h(free)30
+b(memory)g(whic)n(h)g(is)g(consisten)n(t)g(b)r(et)n(w)n(een)g(CPU)g
+(and)498 3935 y(device)415 4101 y Fg(\017)41 b Fw(get)p
+614 4101 V 30 w(irq)p 744 4101 V 29 w(mapping)23 b(\(A,B,C,D\):)h(get)e
+(the)i(IR)n(Q)e(matc)n(hing)g(the)h(INT\(A,B,C,D\))i(line)291
+4412 y Fn(8.4)135 b(Device)46 b(Driv)l(ers)291 4646 y
+Fl(8.4.1)112 b(Classes)415 4832 y Fg(\017)41 b Fw(c)n(haracter:)35
+b(This)28 b(the)f(standard)g(tt)n(y)h(as)f(kno)n(wn)g(in)h(the)g(Unix)f
+(en)n(vironmen)n(t.)415 4998 y Fg(\017)41 b Fw(blo)r(c)n(k)p
+eop end
+%%Page: 70 76
+TeXDict begin 70 75 bop 739 282 a Fw(70)1468 b Fq(CHAPTER)27
+b(8.)64 b(DEVICE)28 b(DRIVERS)863 515 y Fg(\017)41 b
+Fw(h)n(uman)28 b(input:)38 b(Keyb)r(oard,)26 b(mouse,)h(...)863
+688 y Fg(\017)41 b Fw(pac)n(k)n(et)27 b(switc)n(hed)h(net)n(w)n(ork)863
+862 y Fg(\017)41 b Fw(circuit)28 b(switc)n(hed)f(net)n(w)n(ork)863
+1035 y Fg(\017)41 b Fw(framebu\013er)863 1208 y Fg(\017)g
+Fw(streaming)27 b(audio)863 1381 y Fg(\017)41 b Fw(streaming)27
+b(video)863 1554 y Fg(\017)41 b Fw(solid)28 b(state)f(storage:)35
+b(\015ash)27 b(memory)739 1834 y Fl(8.4.2)112 b(Human)39
+b(input)f(devices)g(\(HID\))e(and)i(the)f(console)739
+2028 y Fw(The)j(HIDs)g(and)g(the)g(console)f(are)g(critical)g(for)h
+(user)f(in)n(teraction)g(with)h(the)g(system.)739 2128
+y(F)-7 b(urthmore,)40 b(the)e(console)e(should)i(b)r(e)g(w)n(orking)e
+(as)h(so)r(ons)g(as)g(p)r(ossible)g(to)g(giv)n(e)g(feed-)739
+2228 y(bac)n(k.)e(Log)23 b(messages)f(whic)n(h)i(are)f(send)h(to)g(the)
+g(console)f(b)r(efore)h(the)g(hardw)n(are)e(has)i(b)r(een)739
+2327 y(initialized)k(should)f(b)r(e)h(bu\013ered.)739
+2607 y Fl(8.4.3)112 b(Generic)38 b(Device)g(Driv)m(er)739
+2801 y Fw(Op)r(erations:)863 3010 y Fg(\017)j Fw(init)29
+b(:)37 b(prepare)26 b(hardw)n(are)f(for)i(use)863 3184
+y Fg(\017)41 b Fw(start)27 b(:)37 b(start)27 b(normal)g(op)r(eration)
+863 3357 y Fg(\017)41 b Fw(stop)28 b(:)37 b(stop)27 b(normal)g(op)r
+(eration)863 3530 y Fg(\017)41 b Fw(deinit)29 b(:)37
+b(sh)n(utdo)n(wn)27 b(hardw)n(are)863 3703 y Fg(\017)41
+b Fw(c)n(hange)p 1199 3703 25 4 v 29 w(irq)p 1328 3703
+V 29 w(p)r(eer)28 b(:)37 b(c)n(hange)26 b(p)r(eer)i(thread)f(to)g
+(propagate)f(irq)h(message)f(to.)739 3983 y Fl(8.4.4)112
+b(ISA)37 b(Devices)739 4177 y Fw(Inherits)27 b(from:)863
+4386 y Fg(\017)41 b Fw(Generic)28 b(Device)f(Driv)n(er)739
+4595 y(Supp)r(orted)h(devices)863 4805 y Fg(\017)41 b
+Fw(Keyb)r(oard)27 b(\(ps2\))863 4978 y Fg(\017)41 b Fw(Serial)27
+b(p)r(ort)h(\(mainly)f(for)h(debugging)e(purp)r(osses\))p
+eop end
+%%Page: 71 77
+TeXDict begin 71 76 bop 291 282 a Fq(8.5.)63 b(SER)-9
+b(VICE)27 b(SER)-9 b(VERS)1816 b Fw(71)291 515 y Fl(8.4.5)112
+b(PCI)37 b(Devices)291 732 y Fw(Inherits)27 b(from:)415
+973 y Fg(\017)41 b Fw(Generic)27 b(Device)h(Driv)n(er)291
+1213 y(Supp)r(orted)f(devices:)415 1453 y Fg(\017)41
+b Fw(blo)r(c)n(k)27 b(devices)291 1823 y Fn(8.5)135 b(Service)45
+b(Serv)l(ers)291 2085 y Fl(8.5.1)112 b(Plugin)38 b(Manager)291
+2302 y Fw(Eac)n(h)24 b(bus)h(driv)n(er)f(has)h(a)f(handle/reference)g
+(to)h(whic)n(h)g(insert/remo)n(v)n(e)e(ev)n(en)n(ts)i(are)f(send.)291
+2402 y(The)g(o)n(wner)f(of)i(the)g(handle/refence)e(m)n(ust)i(then)g
+(tak)n(e)f(appropriate)f(action)h(lik)n(e)g(loading)291
+2502 y(the)k(driv)n(ers.)35 b(These)27 b(actors)f(are)h(called)g
+(plugin)h(managers.)291 2657 y(The)f(plugin)h(manager)e(is)h(also)g
+(the)h(pager)e(for)h(the)h(loaded)f(driv)n(er.)498 2852
+y Fm(Ob)n(viously)-6 b(,)24 b(the)i(plugin)e(manager)h(needs)g(some)f
+(sort)g(of)g(exec)i(format)e(supp)r(ort.)34 b(Ma)n(yb)r(e)498
+2930 y(it's)23 b(o)n(wn)h(ELF)g(loader.)291 3258 y Fl(8.5.2)112
+b(Dev)-6 b(a)291 3475 y Fw(Dev)h(a)35 b(stands)h(for)f
+Fo(Devic)l(e)j(A)l(c)l(c)l(ess)e(Server)p Fw(.)62 b(This)35
+b(serv)n(er)f(implemen)n(ts)i(basic)f(services)291 3575
+y(for)29 b(the)h(device)f(driv)n(er)g(framew)n(ork)e(lik)n(e)j(thread)f
+(creation,)g(thread)g(deletion,)i(etc.)43 b(The)291 3675
+y(device)19 b(driv)n(er)f(framew)n(ork)f(itself)j(do)r(esn't)f(dep)r
+(end)h(on)g(an)n(y)e(Hurd)i(co)r(de.)33 b(The)20 b(in)n(teraction)291
+3774 y(with)28 b(the)g(Hurd)f(system)h(will)g(b)r(e)g(abstracted)e(b)n
+(y)h(dev)-5 b(a.)291 3930 y(Whic)n(h)27 b(services)g(m)n(ust)g(dev)-5
+b(a)28 b(pro)n(vide:)415 4170 y Fg(\017)41 b Fw(task/thread)26
+b(manipulation)h(\(create,)h(deletion\))415 4373 y Fg(\017)41
+b Fw(memory)27 b(\(de\)allo)r(cation)g(\(virtual,)g(ph)n(ysical\))415
+4576 y Fg(\017)41 b Fw(io)27 b(p)r(orts)415 4779 y Fg(\017)41
+b Fw(driv)n(er)26 b(\(un\)loading)415 4982 y Fg(\017)41
+b Fw(b)r(o)r(otstrapping)p eop end
+%%Page: 72 78
+TeXDict begin 72 77 bop 739 282 a Fw(72)1468 b Fq(CHAPTER)27
+b(8.)64 b(DEVICE)28 b(DRIVERS)739 515 y Fl(8.5.3)112
+b Fa(!)1142 530 y Fm(0)739 701 y Fs(!)791 713 y Fr(0)860
+701 y Fw(is)33 b(a)f(system-cen)n(tral)f(IR)n(Q-logic)g(serv)n(er.)50
+b(It)33 b(runs)f(in)g(the)h(privileged)f(AS)h(space)f(in)739
+801 y(order)26 b(to)i(b)r(e)g(allo)n(w)n(ed)e(rerouting)g(IR)n(Q)h
+(IPC.)739 933 y(If)j(an)g(IR)n(Q)f(is)h(shared)f(b)r(et)n(w)n(een)h
+(sev)n(eral)f(devices,)h(the)g(driv)n(ers)f(are)g(daisy)g(c)n(hained)g
+(and)739 1032 y(ha)n(v)n(e)d(to)i(notify)g(their)f(p)r(eers)g(if)h(an)g
+(IR)n(Q)f(IPC)g(has)g(arriv)n(ed.)739 1164 y(F)-7 b(or)27
+b(more)g(details)g(see)g(h)n(ttp://os.inf.tu-dresden.de/)2503
+1142 y(~)2501 1164 y(hohm)n(uth/prj/omega0.ps.gz)739
+1296 y(Op)r(erations:)863 1479 y Fg(\017)41 b Fw(attac)n(h)p
+1180 1479 25 4 v 30 w(irq)27 b(:)37 b(attac)n(h)27 b(an)g(ISR)h(thread)
+f(to)g(the)h(IR)n(Q)863 1638 y Fg(\017)41 b Fw(detac)n(h)p
+1189 1638 V 30 w(irq)27 b(:)37 b(detac)n(h)27 b(an)g(ISR)h(thread)f
+(from)h(the)g(IR)n(Q)739 1941 y Fn(8.6)135 b(Resource)46
+b(Managemen)l(t)739 2172 y Fl(8.6.1)112 b(IR)m(Q)37 b(handling)739
+2358 y Fu(IR)m(Q)32 b(based)f(in)m(terrupt)i(v)m(ectors)739
+2543 y Fw(Some)22 b(CPU)f(arc)n(hitectures)g(\(eg)g(68k,)h(IA32\))g
+(can)f(directly)h(jump)h(to)e(an)h(in)n(terrupt)g(v)n(ector)739
+2643 y(dep)r(ending)31 b(on)f(the)h(IR)n(Q)f(n)n(um)n(b)r(er.)46
+b(This)30 b(is)h(t)n(ypically)f(the)h(case)f(on)g(CISC)h(CPU's.)45
+b(In)739 2743 y(this)19 b(case)f(there)h(is)g(some)g(priorization)e(sc)
+n(heme.)33 b(On)19 b(IA32)g(for)f(example,)i(the)g(lo)n(w)n(est)e(IR)n
+(Q)739 2842 y(n)n(um)n(b)r(er)33 b(has)g(the)h(highest)g(priorit)n(y)-7
+b(.)53 b(Sometimes)34 b(the)f(priorities)g(are)f(programmable.)739
+2942 y(Most)24 b(RISC)h(CPU's)g(ha)n(v)n(e)e(only)h(a)h(few)g(in)n
+(terrupt)f(v)n(ectors)f(whic)n(h)i(are)f(connected)g(exter-)739
+3042 y(nal)f(IR)n(Qs.)35 b(\(t)n(ypically)23 b(1)h(or)f(2\).)35
+b(This)24 b(means)f(the)h(IR)n(Q)f(handler)g(should)h(read)e(a)i
+(register)739 3141 y(in)j(the)g(in)n(terrupt)g(con)n(troller)d(to)j
+(determine)g(whic)n(h)g(IR)n(Q)f(handler)g(has)g(to)h(b)r(e)g
+(executed.)739 3241 y(Sometimes)d(the)g(hardw)n(are)e(assists)g(here)i
+(b)n(y)f(pro)n(viding)g(a)g(register)f(whic)n(h)i(indicates)g(the)739
+3340 y(highest)j(priorit)n(y)g(in)n(terrupt)g(according)f(to)h(some)g
+(\(programmable\))f(sc)n(heme.)739 3585 y Fu(IR)m(Q)32
+b(ac)m(kno)m(wlegdemen)m(t)739 3771 y Fw(The)38 b(IR)n(Q)f(ac)n(kno)n
+(wledgemen)n(t)e(is)j(done)f(in)h(t)n(w)n(o)f(steps.)67
+b(First)38 b(inform)f(the)h(hardw)n(are)739 3871 y(ab)r(out)e(the)h
+(successful)g(IR)n(Q)f(acceptance.)63 b(Then)36 b(inform)h(the)g(ISRs)f
+(ab)r(out)h(the)g(IR)n(Q)739 3970 y(ev)n(en)n(t.)739
+4215 y Fu(Edge)31 b(v)m(ersus)h(lev)m(el)f(triggered)g(IR)m(Qs)739
+4401 y Fw(Edge)25 b(triggered)g(IR)n(Qs)h(t)n(ypically)g(don't)h(need)f
+(explicit)h(ac)n(kno)n(wledgmen)n(t)d(b)n(y)j(the)f(CPU)739
+4500 y(at)j(the)h(device)g(lev)n(el.)42 b(Y)-7 b(ou)30
+b(can)f(just)i(ac)n(kno)n(wledge)c(them)j(at)g(the)g(in)n(terrupt)f
+(con)n(troller)739 4600 y(lev)n(el.)64 b(Lev)n(el)37
+b(triggered)e(IR)n(Qs)h(t)n(ypically)g(need)h(to)g(explicitly)g(ac)n
+(kno)n(wledged)e(b)n(y)i(the)739 4700 y(CPU)e(at)h(the)g(device)g(lev)n
+(el.)60 b(The)36 b(CPU)g(has)f(to)h(read)e(or)h(write)h(a)f(register)f
+(from)i(the)739 4799 y(IR)n(Q)c(generating)f(p)r(eripheral)h(to)h(mak)n
+(e)f(the)h(IR)n(Q)f(go)g(a)n(w)n(a)n(y)-7 b(.)50 b(If)34
+b(this)f(is)f(not)h(done,)h(the)739 4899 y(IR)n(Q)25
+b(handler)g(will)h(b)r(e)g(reen)n(tered)f(immediatly)h(after)f(it)h
+(ended,)g(e\013ectiv)n(ely)g(creating)f(an)739 4998 y(endless)i(lo)r
+(op.)37 b(Another)27 b(w)n(a)n(y)f(of)i(prev)n(en)n(ting)e(this)i(w)n
+(ould)f(b)r(e)h(to)g(mask)f(the)h(IR)n(Q.)p eop end
+%%Page: 73 79
+TeXDict begin 73 78 bop 291 282 a Fq(8.6.)63 b(RESOUR)n(CE)27
+b(MANA)n(GEMENT)1457 b Fw(73)291 515 y Fu(Multiple)30
+b(in)m(terrupt)i(con)m(trollers)291 731 y Fw(Some)21
+b(systems)f(ha)n(v)n(e)g(m)n(ultiple)i(in)n(terrupt)f(con)n(trollers)e
+(in)i(cascade.)34 b(This)21 b(is)g(for)f(example)291
+831 y(the)25 b(case)f(on)g(a)g(PC,)h(where)f(y)n(ou)g(ha)n(v)n(e)f(2)i
+(8259)d(in)n(terrupt)j(con)n(trollers.)34 b(The)25 b(second)f(con-)291
+931 y(troller)f(is)h(connected)h(to)f(the)h(IR)n(Q)f(2)g(pin)h(of)f
+(the)h(\014rst)f(con)n(troller.)34 b(It)25 b(is)f(also)g(common)g(in)
+291 1030 y(non)i(PC)g(systems)f(whic)n(h)i(still)f(use)g(some)g
+(standard)g(PC)f(comp)r(onen)n(ts)h(suc)n(h)g(as)g(a)g(Sup)r(er)291
+1130 y(IO)31 b(con)n(troller.)47 b(In)32 b(this)g(case)f(the)h(2)f
+(8259's)e(are)i(connected)h(to)f(1)g(pin)h(of)g(the)g(primary)291
+1230 y(in)n(terrupt)j(con)n(troller.)58 b(Imp)r(ortan)n(t)35
+b(for)g(the)h(soft)n(w)n(are)e(here)h(is)g(that)h(y)n(ou)f(need)g(to)h
+(ac-)291 1329 y(kno)n(wledge)23 b(IR)n(Q's)g(at)i(eac)n(h)e(con)n
+(troller.)34 b(So)24 b(to)h(ac)n(kno)n(wledge)d(an)i(IR)n(Q)g(from)g
+(the)h(second)291 1429 y(8259)h(connected)h(to)h(the)g(\014rst)g(8259)e
+(connected)h(to)h(another)f(in)n(terrupt)h(con)n(troller,)e(y)n(ou)291
+1528 y(ha)n(v)n(e)32 b(to)i(giv)n(e)f(an)g(A)n(CK)g(command)h(to)f(eac)
+n(h)g(of)h(those)f(con)n(trollers.)53 b(Another)34 b(imp)r(ort)291
+1628 y(fact)27 b(is)h(that)g(on)f(the)h(PC)f(arc)n(hitecture)f(the)i
+(order)f(of)g(the)h(A)n(CKs)f(is)h(imp)r(ortan)n(t.)291
+1938 y Fu(Shared)k(IR)m(Qs)291 2154 y Fw(Some)f(systems)g(ha)n(v)n(e)g
+(shared)f(IR)n(Qs.)49 b(In)31 b(this)h(case)f(the)h(IR)n(Q)f(handler)g
+(has)h(to)f(lo)r(ok)g(at)291 2253 y(all)c(devices)g(using)g(the)h(same)
+f(IR)n(Q...)291 2563 y Fu(IR)m(Q)k(priorities)291 2779
+y Fw(All)25 b(IR)n(Qs)e(on)h(L4)g(ha)n(v)n(e)g(priorities,)g(so)f(if)i
+(an)f(IR)n(Q)g(o)r(ccurs)g(an)n(y)g(IR)n(Q)f(lo)n(w)n(er)g(then)i(the)g
+(\014rst)291 2879 y(IR)n(Q)k(will)h(b)r(e)h(blo)r(c)n(k)n(ed)e(un)n
+(til)h(the)h(\014rst)e(IR)n(Q)h(has)f(b)r(een)i(ac)n(kno)n(wlegded.)42
+b(ISR)30 b(priorities)291 2979 y(m)n(ust)j(m)n(uc)n(h)g(the)h(hardw)n
+(are)e(priorit)n(y)g(\(danger)g(of)i(priorit)n(y)e(in)n(v)n(ersion\).)
+53 b(F)-7 b(urthermore)291 3078 y(the)28 b(IR)n(Q)f(ac)n(kno)n
+(wledgmen)n(t)e(order)i(is)g(imp)r(ortan)n(t.)291 3233
+y(The)h(8259)e(also)h(supp)r(orts)h(a)g(sp)r(eci\014c)g(IR)n(Q)f(ac)n
+(kno)n(wledge)f(iirc.)38 b(But,)29 b(this)g(sc)n(heme)e(do)r(es)291
+3333 y(not)g(w)n(ork)e(in)i(most)g(lev)n(el)g(triggered)e(IR)n(Q)h(en)n
+(vironmen)n(ts.)36 b(In)27 b(these)g(en)n(vironmen)n(ts)f(y)n(ou)291
+3432 y(m)n(ust)d(ac)n(kno)n(wledge)f(\(or)g(mask\))i(the)g(IR)n(Q)f(b)r
+(efore)g(lea)n(ving)f(the)i(IR)n(Q)f(handler,)h(otherwise)291
+3532 y(the)i(CPU)f(will)h(immediately)g(reen)n(ter)f(the)h(IR)n(Q)g
+(handler,)f(e\013ectiv)n(ely)h(creating)f(an)g(end-)291
+3631 y(less)i(lo)r(op.)38 b(In)28 b(this)h(case)e(L4)g(w)n(ould)h(ha)n
+(v)n(e)f(to)h(mask)f(the)i(IR)n(Q.)e(The)h(IR)n(Q)g(thread)f(w)n(ould)
+291 3731 y(ha)n(v)n(e)f(to)h(unmask)h(it)g(after)f(ac)n(kno)n
+(wledgemen)n(t)e(and)j(pro)r(cessing.)291 4041 y Fu(IR)m(Q)j(handling)g
+(b)m(y)i(L4/x86)291 4257 y Fw(The)27 b(L4)g(k)n(ernel)g(do)r(es)g
+(handle)h(IR)n(Q)f(ac)n(kno)n(wlegdmen)n(t.)291 4583
+y Fl(8.6.2)112 b(Memory)291 4799 y Fw(If)20 b(no)h(ph)n(ysical)e
+(memory)h(pages)f(are)h(pro)n(vided)f(b)n(y)h(the)h(OS)g(the)f(device)h
+(driv)n(er)e(framew)n(ork)291 4899 y(allo)r(ces)24 b(pages)h(from)g
+(the)h(ph)n(ysical)e(memory)h(manager.)35 b(The)25 b(device)h(driv)n
+(er)e(framew)n(ork)291 4998 y(has)j(at)g(no)g(p)r(oin)n(t)h(of)g(time)g
+(to)f(handle)h(an)n(y)f(virtual)g(to)g(ph)n(ysical)g(page)g(mapping.)p
+eop end
+%%Page: 74 80
+TeXDict begin 74 79 bop 739 282 a Fw(74)1468 b Fq(CHAPTER)27
+b(8.)64 b(DEVICE)28 b(DRIVERS)739 515 y Fn(8.7)135 b(Bo)t(otstrapping)
+739 746 y Fw(The)23 b(device)h(driv)n(er)e(framew)n(ork)f(will)j(b)r(e)
+g(started)e(b)n(y)h(dev)-5 b(a,)25 b(whic)n(h)e(is)g(started)g(b)n(y)g
+(w)n(ortel.)739 846 y(All)29 b(driv)n(ers)e(and)h(serv)n(ers)e(\(e.g.)
+39 b(the)29 b(plugin)g(manager\))e(are)g(stored)h(in)h(a)f(arc)n(hiv)n
+(e)e(whic)n(h)739 945 y(will)i(b)r(e)g(extracted)f(b)n(y)g(dev)-5
+b(a.)739 1241 y Fl(8.7.1)112 b(dev)-6 b(a)739 1443 y
+Fw(F)f(or)32 b(b)r(o)r(otstrapping)h(dev)-5 b(a)33 b(will)g(only)g(ha)n
+(v)n(e)e(a)i(subset)g(of)g(driv)n(ers)f(ready)-7 b(.)52
+b(As)33 b(so)r(on)g(the)739 1543 y(\014lesystem)e(runs)g(dev)-5
+b(a)32 b(can)f(ask)g(for)g(driv)n(ers)f(from)h(the)h(harddisk.)48
+b(If)32 b(new)f(driv)n(ers)f(are)739 1642 y(a)n(v)-5
+b(ailable)20 b(it)h(has)g(to)g(inform)g(the)g(plugin)h(manager)d(to)i
+(ask)f(for)h(unresolv)n(ed)f(driv)n(ers)f(again.)739
+1787 y(Dev)-5 b(a)25 b(starts)f(as)h(\014rst)f(task)h(a)f(plugin)i
+(serv)n(er.)34 b(The)25 b(plugin)g(serv)n(er)e(do)r(es)i(then)g(the)h
+(rest)e(of)739 1887 y(the)k(b)r(o)r(otstrapping)f(pro)r(cess.)739
+2183 y Fl(8.7.2)112 b(Plugin)38 b(Manager)739 2385 y
+Fw(A)28 b(Plugin)f(manager)f(handles)h(driv)n(er)f(loading)h(for)g
+(devices.)36 b(It)28 b(asks)f(dev)-5 b(a)27 b(for)g(driv)n(ers.)739
+2530 y(The)32 b(\014rst)g(plugin)g(serv)n(er)e(do)r(es)i(also)f(some)h
+(b)r(o)r(otstrapping.)49 b(First,)34 b(it)e(starts)g(the)g(ro)r(ot)739
+2629 y(bus)c(driv)n(er.)739 2967 y Fn(8.8)135 b(Order)45
+b(of)g(implemen)l(tation)840 3195 y Fw(1.)c(dev)-5 b(a,)28
+b(plugin)g(manager)840 3378 y(2.)41 b(ro)r(ot)27 b(bus)h(serv)n(er)840
+3561 y(3.)41 b(p)r(ci)29 b(bus)840 3745 y(4.)41 b(isa)27
+b(bus)840 3928 y(5.)41 b(serial)27 b(p)r(ort)g(\(isa)h(bus\))840
+4111 y(6.)41 b(console)739 4450 y Fn(8.9)135 b(Scenarios)739
+4697 y Fl(8.9.1)112 b(Insert)37 b(Ev)m(en)m(t)739 4899
+y Fw(If)j(a)f(simple)g(hardw)n(are)e(device)i(is)g(found)h(the)g(ddf)g
+(will)f(load)g(a)g(driv)n(er)f(for)g(the)i(new)739 4998
+y(hardw)n(are)25 b(device)j(as)f(follo)n(ws)f(\(see)i(Figure)f(8.1\):)p
+eop end
+%%Page: 75 81
+TeXDict begin 75 80 bop 291 282 a Fq(8.9.)63 b(SCENARIOS)2099
+b Fw(75)296 3573 y @beginspecial 0 @llx 0 @lly 428 @urx
+327 @ury 3424 @rwi @setspecial
+%%BeginDocument: ddf_insert_event.eps
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: ddf_insert_event.fig
+%%Creator: /usr/bin/fig2dev Version 3.2 Patchlevel 4
+%%CreationDate: Wed Jun 29 20:29:27 2005
+%%For: address@hidden ()
+%%BoundingBox: 0 0 428 327
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 327 moveto 0 0 lineto 428 0 lineto 428 327 lineto closepath clip 
newpath
+-98.5 382.7 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+  bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+  4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+10 setmiterlimit
+0 slj 0 slc
+ 0.06299 0.06299 sc
+%
+% Fig objects follow
+%
+% 
+% here starts figure with depth 60
+% Polyline
+7.500 slw
+n 5625 1125 m 6525 1125 l 6525 5175 l 5625 5175 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+5640 1380 m 5640 1320 l 5489 1320 l 5609 1350 l 5489 1380 l cp
+eoclip
+n 4050 1350 m
+ 5625 1350 l gs col0 s gr gr
+
+% arrowhead
+n 5489 1380 m 5609 1350 l 5489 1320 l 5489 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+4035 1545 m 4035 1605 l 4186 1605 l 4066 1575 l 4186 1545 l cp
+eoclip
+n 5625 1575 m
+ 4050 1575 l gs col0 s gr gr
+
+% arrowhead
+n 4186 1545 m 4066 1575 l 4186 1605 l 4186 1545 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7215 1380 m 7215 1320 l 7064 1320 l 7184 1350 l 7064 1380 l cp
+eoclip
+n 6525 1350 m
+ 7200 1350 l gs col0 s gr gr
+
+% arrowhead
+n 7064 1380 m 7184 1350 l 7064 1320 l 7064 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+6510 1545 m 6510 1605 l 6661 1605 l 6541 1575 l 6661 1545 l cp
+eoclip
+n 7200 1575 m
+ 6525 1575 l gs col0 s gr gr
+
+% arrowhead
+n 6661 1545 m 6541 1575 l 6661 1605 l 6661 1545 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+5640 2505 m 5640 2445 l 5489 2445 l 5609 2475 l 5489 2505 l cp
+eoclip
+n 4050 2475 m
+ 5625 2475 l gs col0 s gr gr
+
+% arrowhead
+n 5489 2505 m 5609 2475 l 5489 2445 l 5489 2505 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7215 2505 m 7215 2445 l 7064 2445 l 7184 2475 l 7064 2505 l cp
+eoclip
+n 6525 2475 m
+ 7200 2475 l gs col0 s gr gr
+
+% arrowhead
+n 7064 2505 m 7184 2475 l 7064 2445 l 7064 2505 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+6510 2670 m 6510 2730 l 6661 2730 l 6541 2700 l 6661 2670 l cp
+eoclip
+n 7200 2700 m
+ 6525 2700 l gs col0 s gr gr
+
+% arrowhead
+n 6661 2670 m 6541 2700 l 6661 2730 l 6661 2670 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+4035 2670 m 4035 2730 l 4186 2730 l 4066 2700 l 4186 2670 l cp
+eoclip
+n 5625 2700 m
+ 4050 2700 l gs col0 s gr gr
+
+% arrowhead
+n 4186 2670 m 4066 2700 l 4186 2730 l 4186 2670 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+5640 3630 m 5640 3570 l 5489 3570 l 5609 3600 l 5489 3630 l cp
+eoclip
+n 4050 3600 m
+ 5625 3600 l gs col0 s gr gr
+
+% arrowhead
+n 5489 3630 m 5609 3600 l 5489 3570 l 5489 3630 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7215 3630 m 7215 3570 l 7064 3570 l 7184 3600 l 7064 3630 l cp
+eoclip
+n 6525 3600 m
+ 7200 3600 l gs col0 s gr gr
+
+% arrowhead
+n 7064 3630 m 7184 3600 l 7064 3570 l 7064 3630 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+6510 3795 m 6510 3855 l 6661 3855 l 6541 3825 l 6661 3795 l cp
+eoclip
+n 7200 3825 m
+ 6525 3825 l gs col0 s gr gr
+
+% arrowhead
+n 6661 3795 m 6541 3825 l 6661 3855 l 6661 3795 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+4035 3795 m 4035 3855 l 4186 3855 l 4066 3825 l 4186 3795 l cp
+eoclip
+n 5625 3825 m
+ 4050 3825 l gs col0 s gr gr
+
+% arrowhead
+n 4186 3795 m 4066 3825 l 4186 3855 l 4186 3795 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7620 4515 m 7680 4515 l 7680 4364 l 7650 4484 l 7620 4364 l cp
+eoclip
+n 7650 4050 m
+ 7650 4500 l gs col0 s gr gr
+
+% arrowhead
+n 7620 4364 m 7650 4484 l 7680 4364 l 7620 4364 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7905 4035 m 7845 4035 l 7845 4186 l 7875 4066 l 7905 4186 l cp
+eoclip
+n 7875 4500 m
+ 7875 4050 l gs col0 s gr gr
+
+% arrowhead
+n 7905 4186 m 7875 4066 l 7845 4186 l 7905 4186 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+2280 5160 m 2220 5160 l 2220 5311 l 2250 5191 l 2280 5311 l cp
+eoclip
+n 7650 5175 m 7650 5400 l 2250 5400 l
+ 2250 5175 l gs col0 s gr gr
+
+% arrowhead
+n 2280 5311 m 2250 5191 l 2220 5311 l 2280 5311 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+7905 5160 m 7845 5160 l 7845 5311 l 7875 5191 l 7905 5311 l cp
+eoclip
+n 2025 5175 m 2025 5625 l 7875 5625 l
+ 7875 5175 l gs col0 s gr gr
+
+% arrowhead
+n 7905 5311 m 7875 5191 l 7845 5311 l 7905 5311 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 7200 1125 m 8100 1125 l 8100 1800 l 7200 1800 l
+ cp gs col0 s gr 
+% Polyline
+n 7200 2250 m 8100 2250 l 8100 2925 l 7200 2925 l
+ cp gs col0 s gr 
+% Polyline
+n 7200 3375 m 8100 3375 l 8100 4050 l 7200 4050 l
+ cp gs col0 s gr 
+% Polyline
+n 7200 4500 m 8100 4500 l 8100 5175 l 7200 5175 l
+ cp gs col0 s gr 
+% Polyline
+ [60] 0 sd
+n 6300 900 m 8325 900 l 8325 5850 l 6300 5850 l
+ cp gs col0 s gr  [] 0 sd
+% Polyline
+n 4500 4050 m 5400 4050 l 5400 5175 l 4500 5175 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+4035 4245 m 4035 4305 l 4186 4305 l 4066 4275 l 4186 4245 l cp
+eoclip
+n 4500 4275 m
+ 4050 4275 l gs col0 s gr gr
+
+% arrowhead
+n 4186 4245 m 4066 4275 l 4186 4305 l 4186 4245 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 3375 1125 m 4050 1125 l 4050 5175 l 3375 5175 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+3390 1380 m 3390 1320 l 3239 1320 l 3359 1350 l 3239 1380 l cp
+eoclip
+n 2700 1350 m
+ 3375 1350 l gs col0 s gr gr
+
+% arrowhead
+n 3239 1380 m 3359 1350 l 3239 1320 l 3239 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 1800 1125 m 2700 1125 l 2700 2250 l 1800 2250 l
+ cp gs col0 s gr 
+% Polyline
+n 1800 2610 m 2700 2610 l 2700 3735 l 1800 3735 l
+ cp gs col0 s gr 
+% Polyline
+n 1800 4050 m 2700 4050 l 2700 5175 l 1800 5175 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+2100 2235 m 2040 2235 l 2040 2386 l 2070 2266 l 2100 2386 l cp
+eoclip
+n 2070 2610 m
+ 2070 2250 l gs col0 s gr gr
+
+% arrowhead
+n 2100 2386 m 2070 2266 l 2040 2386 l 2100 2386 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+ [60] 0 sd
+n 1575 900 m 5850 900 l 5850 5850 l 1575 5850 l
+ cp gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 5400 4725 m
+ 3375 4725 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 4500 5175 m
+ 4050 5175 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 2700 5175 m
+ 3375 4275 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 1800 4725 m 2700 4725 l
+ 3375 3825 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 3375 3825 m
+ 4050 3825 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 3375 4275 m
+ 4050 4275 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 1800 3150 m 2700 3150 l 3375 2925 l
+ 4050 2925 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 2700 3735 m 3375 3510 l
+ 4050 3510 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 1800 1800 m 2700 1800 l
+ 3375 2025 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 3375 2025 m
+ 4050 2025 l gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 2700 2250 m 3375 2475 l
+ 4050 2475 l gs col0 s gr  [] 0 sd
+/Times-Roman ff 180.00 scf sf
+2250 2475 m
+gs 1 -1 sc (1.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3150 1260 m
+gs 1 -1 sc (2.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5400 3375 m
+gs 1 -1 sc (3.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5400 2250 m
+gs 1 -1 sc (16.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5400 1125 m
+gs 1 -1 sc (11.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 1800 m
+gs 1 -1 sc (14.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 2925 m
+gs 1 -1 sc (20.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 4050 m
+gs 1 -1 sc (10.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 4500 m
+gs 1 -1 sc (15.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6975 1125 m
+gs 1 -1 sc (12.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6975 2250 m
+gs 1 -1 sc (17.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6750 2925 m
+gs 1 -1 sc (18.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6750 1800 m
+gs 1 -1 sc (13.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6975 3375 m
+gs 1 -1 sc (4.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+6750 4050 m
+gs 1 -1 sc (9.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7425 4275 m
+gs 1 -1 sc (5.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+8100 4275 m
+gs 1 -1 sc (8.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+8100 5400 m
+gs 1 -1 sc (7.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+2475 5400 m
+gs 1 -1 sc (6.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4275 4950 m
+gs 1 -1 sc (21.) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1575 6075 m
+gs 1 -1 sc (ddf) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+8010 6075 m
+gs 1 -1 sc (hurd) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1890 1530 m
+gs 1 -1 sc (Root Bus) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1890 1755 m
+gs 1 -1 sc (Driver) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1845 2880 m
+gs 1 -1 sc (PCI Bus) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1845 3105 m
+gs 1 -1 sc (Driver) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1935 4365 m
+gs 1 -1 sc (IDE) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1935 4590 m
+gs 1 -1 sc (Driver) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4590 4365 m
+gs 1 -1 sc (NIC) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+4590 4590 m
+gs 1 -1 sc (Driver) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3465 1530 m
+gs 1 -1 sc (PLM) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5850 1530 m
+gs 1 -1 sc (Deva) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7245 1485 m
+gs 1 -1 sc (wortel) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7245 2610 m
+gs 1 -1 sc (physmem) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7290 3780 m
+gs 1 -1 sc (ext2) col0 sh gr
+/Times-Roman ff 180.00 scf sf
+7290 4815 m
+gs 1 -1 sc (ddwrapper) col0 sh gr
+% here ends figure;
+$F2psEnd
+rs
+showpage
+
+%%EndDocument
+ @endspecial 291 3839 a(Figure)21 b(8.1:)34 b(A)22 b(new)h(hardw)n(are)
+d(device)i(is)g(detected)h(\(a)f(net)n(w)n(ork)f(card\))h(b)n(y)g(the)h
+(PCI)f(ro)r(ot)291 3938 y(bus)30 b(driv)n(er.)45 b(The)30
+b(PCI)g(ro)r(ot)g(bus)g(driv)n(er)g(initiates)g(the)h(loading)f(of)g
+(the)h(correct)e(driv)n(er)291 4038 y(for)e(the)h(new)f(hardw)n(are)f
+(device.)p eop end
+%%Page: 76 82
+TeXDict begin 76 81 bop 739 282 a Fw(76)1468 b Fq(CHAPTER)27
+b(8.)64 b(DEVICE)28 b(DRIVERS)840 515 y Fw(1.)41 b(The)35
+b(PCI)f(Bus)g(Driv)n(er)g(detects)h(a)f(hardw)n(are)e(device)j(for)f
+(whic)n(h)g(no)h(driv)n(er)e(has)946 615 y(b)r(een)d(loaded)e(y)n(et.)
+40 b(It)29 b(generates)f(an)g(insert)h(ev)n(en)n(t)f(whic)n(h)h(it)g
+(sends)g(to)f(one)h(\(all?\))946 715 y(registered)22
+b(en)n(tit)n(y)-7 b(.)36 b(The)23 b(in)n(terface)f(for)h(the)g(ev)n(en)
+n(t)g(handler)g(has)f(not)h(b)r(een)h(decided)946 814
+y(y)n(et.)840 969 y(2.)41 b(The)33 b(Ro)r(ot)f(Bus)g(Driv)n(er)g
+(receiv)n(es)e(the)j(ev)n(en)n(t)f(signal.)50 b(Note)33
+b(it)f(is)h(not)f(necessary)946 1068 y(that)41 b(the)h(Ro)r(ot)e(Bus)h
+(Driv)n(er)e(handles)i(the)g(insert)g(signal)e(for)i(all)f(driv)n(ers.)
+75 b(It)946 1168 y(forw)n(ards)26 b(the)i(signal)f(to)g(the/a)g(Plugin)
+g(Manager)f(\(PLM\).)840 1322 y(3.)41 b(The/a)24 b(Plugin)g(Manager)f
+(\(PLM\))i(asks)e(Dev)-5 b(a)25 b(to)f(load)g(the)h(driv)n(er)e(binary)
+h(for)g(the)946 1422 y(new)k(device.)840 1576 y(4.)41
+b(Dev)-5 b(a)29 b(forw)n(ards)d(the)i(loading)f(request)h(to)f(the)i
+(ext2)e(\014lesystem)h(pro)r(cess.)37 b(During)946 1676
+y(b)r(o)r(otstrapping)25 b(Dev)-5 b(a)26 b(will)g(handle)f(the)h
+(request)f(b)n(y)g(itself.)37 b(Dev)-5 b(a)26 b(has)f(an)g(arc)n(hiv)n
+(e)946 1776 y(of)j(driv)n(ers)e(loaded)h(b)n(y)g(grub.)840
+1930 y(5.)41 b(The)36 b(ext2)f(pro)r(cess)f(decides)i(where)f(it)h
+(\014nds)f(the)h(device)g(driv)n(er)e(binary)g(\(blo)r(c)n(k)946
+2030 y(address\))840 2184 y(6.)41 b(The)34 b(ddwrapp)r(er)e(\(device)i
+(driv)n(er)e(wrapp)r(er\))g(forw)n(ards)g(the)i(read)e(call)h(from)g
+(the)946 2284 y(ext2)28 b(pro)r(cess)e(to)i(the)g(IDE)f(Driv)n(er.)840
+2438 y(7.)41 b(After)f(c)n(hec)n(king)e(if)h(the)g(caller)f(is)h(allo)n
+(w)n(ed)f(start)g(a)g(read)g(command,)k(the)d(IDE)946
+2538 y(Driv)n(er)27 b(reads)g(the)h(device)f(driv)n(er)f(from)h(the)h
+(disk.)840 2692 y(8.)41 b(The)28 b(IDE)g(Driv)n(er)e(returns)h(the)h
+(data.)840 2847 y(9.)41 b(ddwrapp)r(er)19 b(returns)f(the)i(data.)33
+b(XXX)20 b(This)g(migh)n(t)f(b)r(e)g(wrong.)33 b(IFR)n(C,)19
+b(the)h(data)e(is)946 2946 y(returned)25 b(in)g(a)g(con)n(tainer)e(and)
+i(only)f(the)i(handle)f(of)f(the)i(con)n(tainer)d(is)i(transfered.)799
+3101 y(10.)40 b(Ext2)27 b(returns)g(the)h(device)f(driv)n(er)g
+(\(data\).)799 3255 y(11.)40 b(Dev)-5 b(a)28 b(returns)f(the)h(device)f
+(driv)n(er)g(\(data\).)799 3409 y(12.)40 b(Ask)28 b(Dev)-5
+b(a)28 b(to)f(create)g(a)g(new)h(address)e(space.)799
+3564 y(13.)40 b(Dev)-5 b(a)28 b(asks)f(w)n(ortel)f(to)i(create)e(new)i
+(address)e(space.)799 3718 y(14.)40 b(w)n(ortel)27 b(returns)g(\\a)g
+(new)g(address)g(space".)799 3873 y(15.)40 b(Dev)-5 b(a)28
+b(returns)f(\\a)g(new)g(address)g(space".)799 4027 y(16.)40
+b(PLM)30 b(is)f(registered)g(as)g(pagefault)g(handler)g(for)g(the)h
+(new)g(driv)n(er)e(address)h(space.)946 4127 y(The)f(b)r(o)r(otstrap)f
+(thread)g(starts)g(to)g(run)h(and)f(generates)f(a)i(page)e(fault.)799
+4281 y(17.)40 b(PLM)28 b(asks)e(Dev)-5 b(a)28 b(for)f(memory)-7
+b(.)799 4436 y(18.)40 b(Dev)-5 b(a)28 b(asks)f(ph)n(ysmem)g(for)g
+(memory)-7 b(.)799 4590 y(19.)40 b(ph)n(ysmem)28 b(returns)f(memory)g
+(pages.)799 4744 y(20.)40 b(Dev)-5 b(a)28 b(returns)f(memory)g(pages.)
+799 4899 y(21.)40 b(PLM)e(maps)f(the)h(device)g(driv)n(er)e(binary)h
+(in)n(to)h(the)g(address)e(space)h(of)h(the)g(new)946
+4998 y(driv)n(er.)p eop end
+%%Page: 77 83
+TeXDict begin 77 82 bop 291 282 a Fq(8.9.)63 b(SCENARIOS)2099
+b Fw(77)298 3049 y @beginspecial 0 @llx 0 @lly 342 @urx
+314 @ury 3420 @rwi @setspecial
+%%BeginDocument: ddf_several_plms.eps
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: ddf_several_plms.fig
+%%Creator: /usr/bin/fig2dev Version 3.2 Patchlevel 4
+%%CreationDate: Wed Jun 29 20:29:27 2005
+%%For: address@hidden ()
+%%BoundingBox: 0 0 342 314
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 314 moveto 0 0 lineto 342 0 lineto 342 314 lineto closepath clip 
newpath
+-55.9 340.9 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add
+  4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+  bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+  4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+10 setmiterlimit
+0 slj 0 slc
+ 0.06299 0.06299 sc
+%
+% Fig objects follow
+%
+% 
+% here starts figure with depth 50
+% Polyline
+7.500 slw
+gs  clippath
+4035 1320 m 4035 1380 l 4186 1380 l 4066 1350 l 4186 1320 l cp
+4965 1380 m 4965 1320 l 4814 1320 l 4934 1350 l 4814 1380 l cp
+eoclip
+n 4950 1350 m
+ 4050 1350 l gs col0 s gr gr
+
+% arrowhead
+n 4814 1380 m 4934 1350 l 4814 1320 l 4814 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% arrowhead
+n 4186 1320 m 4066 1350 l 4186 1380 l 4186 1320 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+3165 1380 m 3165 1320 l 3014 1320 l 3134 1350 l 3014 1380 l cp
+eoclip
+n 2250 1350 m
+ 3150 1350 l gs col0 s gr gr
+
+% arrowhead
+n 3014 1380 m 3134 1350 l 3014 1320 l 3014 1380 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 1350 900 m 2250 900 l 2250 1980 l 1350 1980 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+1830 1965 m 1770 1965 l 1770 2116 l 1800 1996 l 1830 2116 l cp
+eoclip
+n 1800 2430 m
+ 1800 1980 l gs col0 s gr gr
+
+% arrowhead
+n 1830 2116 m 1800 1996 l 1770 2116 l 1830 2116 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 1350 2430 m 2250 2430 l 2250 3420 l 1350 3420 l
+ cp gs col0 s gr 
+% Polyline
+n 3150 900 m 4050 900 l 4050 3420 l 3150 3420 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+3570 3885 m 3630 3885 l 3630 3734 l 3600 3854 l 3570 3734 l cp
+eoclip
+n 3600 3420 m
+ 3600 3870 l gs col0 s gr gr
+
+% arrowhead
+n 3570 3734 m 3600 3854 l 3630 3734 l 3570 3734 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 1350 3870 m 2250 3870 l 2250 4860 l 1350 4860 l
+ cp gs col0 s gr 
+% Polyline
+n 3150 3870 m 4050 3870 l 4050 4860 l 3150 4860 l
+ cp gs col0 s gr 
+% Polyline
+gs  clippath
+2235 4110 m 2235 4170 l 2386 4170 l 2266 4140 l 2386 4110 l cp
+3165 4170 m 3165 4110 l 3014 4110 l 3134 4140 l 3014 4170 l cp
+eoclip
+n 3150 4140 m
+ 2250 4140 l gs col0 s gr gr
+
+% arrowhead
+n 3014 4170 m 3134 4140 l 3014 4110 l 3014 4170 l  cp gs 0.00 setgray ef gr  
col0 s
+% arrowhead
+n 2386 4110 m 2266 4140 l 2386 4170 l 2386 4110 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+gs  clippath
+4965 4170 m 4965 4110 l 4814 4110 l 4934 4140 l 4814 4170 l cp
+4035 4110 m 4035 4170 l 4186 4170 l 4066 4140 l 4186 4110 l cp
+eoclip
+n 4050 4140 m
+ 4950 4140 l gs col0 s gr gr
+
+% arrowhead
+n 4186 4110 m 4066 4140 l 4186 4170 l 4186 4110 l  cp gs 0.00 setgray ef gr  
col0 s
+% arrowhead
+n 4814 4170 m 4934 4140 l 4814 4110 l 4814 4170 l  cp gs 0.00 setgray ef gr  
col0 s
+% Polyline
+n 4950 900 m 5850 900 l 5850 4950 l 4950 4950 l
+ cp gs col0 s gr 
+% Polyline
+ [15 45] 45 sd
+n 1125 675 m 4275 675 l 4275 3510 l 1125 3510 l
+ cp gs col0 s gr  [] 0 sd
+% Polyline
+ [15 45] 45 sd
+n 1125 3780 m 4275 3780 l 4275 4995 l 1125 4995 l
+ cp gs col0 s gr  [] 0 sd
+% Polyline
+n 900 450 m 6300 450 l 6300 5400 l 900 5400 l
+ cp gs col0 s gr 
+/Times-Roman ff 180.00 scf sf
+1800 1350 m
+gs 1 -1 sc (Root Bus) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 1605 m
+gs 1 -1 sc (Driver) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3600 1350 m
+gs 1 -1 sc (Default) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3600 1605 m
+gs 1 -1 sc (PLM) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+5400 1350 m
+gs 1 -1 sc (Deva) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 2700 m
+gs 1 -1 sc (PCI) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 2880 m
+gs 1 -1 sc (Root) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 3060 m
+gs 1 -1 sc (Driver) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3600 4185 m
+gs 1 -1 sc (Special) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+3600 4410 m
+gs 1 -1 sc (PLM) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1800 4230 m
+gs 1 -1 sc (NIC) dup sw pop 2 div neg 0 rm  col0 sh gr
+/Times-Roman ff 180.00 scf sf
+1125 5310 m
+gs 1 -1 sc (ddf) col0 sh gr
+% here ends figure;
+$F2psEnd
+rs
+showpage
+
+%%EndDocument
+ @endspecial 291 3315 a(Figure)24 b(8.2:)35 b(F)-7 b(or)25
+b(the)h(new)f(NIC)h(driv)n(er)e(a)g(sp)r(ecialised)h(plugin)h(manager)d
+(is)i(loaded)g(\014rst.)291 3580 y Fl(8.9.2)112 b(Sev)m(eral)38
+b(Plugin)g(Managers)291 3769 y Fw(F)-7 b(or)36 b(certain)g(driv)n(ers)f
+(it)i(mak)n(es)f(sense)g(to)h(ha)n(v)n(e)e(sp)r(ecialised)i(plugin)f
+(managers.)63 b(The)291 3868 y(default)35 b(plugin)h(manger)e(\(dPLM\))
+h(has)g(to)g(b)r(e)h(ask)n(ed)e(to)h(create)g(a)g(new)g(plugin)g(man-)
+291 3968 y(ager.)53 b(It)34 b(is)g(loaded)f(lik)n(e)g(a)h(normal)e
+(driv)n(er.)54 b(The)34 b(default)g(plugin)g(manager)e(will)i(also)291
+4068 y(act)i(as)f(pager)g(for)h(the)h(new)g(plugin)f(manager.)62
+b(When)37 b(the)f(new)h(plugin)f(manager)f(is)291 4167
+y(activ)-5 b(ated)28 b(it)h(registers)e(itself)j(to)e(the)i(Dev)-5
+b(a)28 b(as)h(new)f(plugin)h(manager.)39 b(Dev)-5 b(a)29
+b(will)g(send)291 4267 y(all)e(signals/messages)d(from)j(outside)h(of)f
+(the)h(ddf)h(to)e(all)g(registered)g(plugin)g(managers.)p
+eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF
diff -Naur hurd-l4/doc/hurd-on-l4.toc hurd-l4-new/doc/hurd-on-l4.toc
--- hurd-l4/doc/hurd-on-l4.toc  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/hurd-on-l4.toc      2005-07-13 18:30:52.326796432 +0200
@@ -0,0 +1,135 @@
+\contentsline {chapter}{\numberline {1}Introduction}{1}
+\contentsline {section}{\numberline {1.1}Genesis}{1}
+\contentsline {section}{\numberline {1.2}Work In Progress}{3}
+\contentsline {chapter}{\numberline {2}Booting}{5}
+\contentsline {section}{\numberline {2.1}System bootstrap}{5}
+\contentsline {subsection}{\numberline {2.1.1}Booting the ia32}{5}
+\contentsline {section}{\numberline {2.2}The loader \texttt {laden}}{6}
+\contentsline {section}{\numberline {2.3}The L4 kernel}{7}
+\contentsline {section}{\numberline {2.4}The initial server $\sigma _0$}{7}
+\contentsline {section}{\numberline {2.5}The initial server $\sigma _1$}{7}
+\contentsline {section}{\numberline {2.6}The rootserver wortel}{7}
+\contentsline {section}{\numberline {2.7}The physical memory server physmem}{8}
+\contentsline {section}{\numberline {2.8}The task server}{9}
+\contentsline {section}{\numberline {2.9}The device access server deva}{10}
+\contentsline {section}{\numberline {2.10}The device access server archive}{10}
+\contentsline {section}{\numberline {2.11}The root filesystem}{10}
+\contentsline {chapter}{\numberline {3}Inter-process communication (IPC)}{11}
+\contentsline {section}{\numberline {3.1}Capabilities}{13}
+\contentsline {subsection}{\numberline {3.1.1}Bootstrapping a client-server 
connection}{14}
+\contentsline {paragraph}{Preconditions}{15}
+\contentsline {paragraph}{Result}{16}
+\contentsline {subsection}{\numberline {3.1.2}Returning a capability from a 
server to a client}{17}
+\contentsline {subsection}{\numberline {3.1.3}Copying a capability from one 
client to another task}{17}
+\contentsline {paragraph}{Preconditions}{17}
+\contentsline {paragraph}{Result}{20}
+\contentsline {paragraph}{The server $S$ dies}{21}
+\contentsline {paragraph}{The client $C$ dies}{21}
+\contentsline {paragraph}{The destination task $D$ dies}{22}
+\contentsline {paragraph}{The client $C$ and the destination task $D$ die}{22}
+\contentsline {paragraph}{The client $C$ and the server $S$ die}{22}
+\contentsline {paragraph}{The destination task $D$ and the server $S$ die}{22}
+\contentsline {paragraph}{The client $C$, the destination task $D$ and the 
server $S$ die}{23}
+\contentsline {paragraph}{The client $C$ is malicious}{23}
+\contentsline {paragraph}{The destination task $D$ is malicious}{24}
+\contentsline {paragraph}{The client $C$ and the destination task $D$ are 
malicious}{25}
+\contentsline {subsection}{\numberline {3.1.4}The trust rule}{25}
+\contentsline {section}{\numberline {3.2}Synchronous IPC}{26}
+\contentsline {section}{\numberline {3.3}Notifications}{27}
+\contentsline {chapter}{\numberline {4}Threads and Tasks}{29}
+\contentsline {paragraph}{Task control capabilities}{29}
+\contentsline {paragraph}{Task info capabilities}{29}
+\contentsline {paragraph}{Task manager capability}{30}
+\contentsline {section}{\numberline {4.1}Accounting}{31}
+\contentsline {section}{\numberline {4.2}Proxy Task Server}{32}
+\contentsline {section}{\numberline {4.3}Scheduling}{32}
+\contentsline {chapter}{\numberline {5}Virtual Memory Management}{33}
+\contentsline {section}{\numberline {5.1}Introduction}{33}
+\contentsline {subsection}{\numberline {5.1.1}Learning from Unix}{34}
+\contentsline {subsection}{\numberline {5.1.2}Learning from Mach}{35}
+\contentsline {subsection}{\numberline {5.1.3}Following the Hurd 
Philosophy}{35}
+\contentsline {section}{\numberline {5.2}Self Paging}{35}
+\contentsline {section}{\numberline {5.3}Bootstrap}{37}
+\contentsline {section}{\numberline {5.4}Memory Allocation Policy}{37}
+\contentsline {subsection}{\numberline {5.4.1}Guaranteed Frames and Extra 
Frames}{37}
+\contentsline {subsection}{\numberline {5.4.2}An External Memory Policy 
Server}{38}
+\contentsline {section}{\numberline {5.5}Containers}{39}
+\contentsline {subsection}{\numberline {5.5.1}The Container Interface}{40}
+\contentsline {paragraph}{Creating Containers}{40}
+\contentsline {paragraph}{Sharing Containers}{41}
+\contentsline {paragraph}{Allocating and Deallocating Memory}{41}
+\contentsline {paragraph}{Mapping Memory}{42}
+\contentsline {paragraph}{Doing It All At Once}{42}
+\contentsline {paragraph}{Copying Data Into or Out of Containers}{43}
+\contentsline {paragraph}{Locking Containers and Pinning Memory}{43}
+\contentsline {paragraph}{Finding Deallocate Memory}{43}
+\contentsline {paragraph}{Reusing frames}{43}
+\contentsline {subsection}{\numberline {5.5.2}Moving Data}{44}
+\contentsline {section}{\numberline {5.6}Caching Store Accesses}{44}
+\contentsline {subsection}{\numberline {5.6.1}Caching in the File System}{46}
+\contentsline {subsection}{\numberline {5.6.2}Caching Interfaces}{47}
+\contentsline {section}{\numberline {5.7}The Memory Policy Server}{47}
+\contentsline {section}{\numberline {5.8}Sending Data to Swap}{47}
+\contentsline {section}{\numberline {5.9}Self Paging}{48}
+\contentsline {subsection}{\numberline {5.9.1}The Pager}{48}
+\contentsline {subsubsection}{Managing Mappings}{49}
+\contentsline {subsection}{\numberline {5.9.2}Reusing Virtual Frames}{49}
+\contentsline {subsection}{\numberline {5.9.3}Taking Advantage of 
Self-Paging}{49}
+\contentsline {chapter}{\numberline {6}The POSIX personality}{51}
+\contentsline {section}{\numberline {6.1}Authentication}{51}
+\contentsline {paragraph}{Auth capabilities}{51}
+\contentsline {paragraph}{Passport capabilities}{52}
+\contentsline {subsection}{\numberline {6.1.1}Authenticating a client to a 
server}{52}
+\contentsline {paragraph}{Preconditions}{52}
+\contentsline {paragraph}{Result}{54}
+\contentsline {section}{\numberline {6.2}Process Management}{54}
+\contentsline {subsection}{\numberline {6.2.1}Signals}{54}
+\contentsline {subsection}{\numberline {6.2.2}The \texttt {fork()} 
function}{55}
+\contentsline {subsection}{\numberline {6.2.3}The \texttt {exec} functions}{55}
+\contentsline {subsubsection}{The startup information}{57}
+\contentsline {section}{\numberline {6.3}Unix Domain Sockets}{58}
+\contentsline {section}{\numberline {6.4}Pipes}{59}
+\contentsline {section}{\numberline {6.5}Filesystems}{59}
+\contentsline {subsection}{\numberline {6.5.1}Directory lookup across 
filesystems}{59}
+\contentsline {subsection}{\numberline {6.5.2}Reparenting}{60}
+\contentsline {chapter}{\numberline {7}Debugging}{63}
+\contentsline {chapter}{\numberline {8}Device Drivers}{65}
+\contentsline {section}{\numberline {8.1}Requirements}{65}
+\contentsline {section}{\numberline {8.2}Overview}{65}
+\contentsline {subsection}{\numberline {8.2.1}Layer of the drivers}{66}
+\contentsline {subsection}{\numberline {8.2.2}Address spaces}{66}
+\contentsline {subsection}{\numberline {8.2.3}Zero copying and DMA}{66}
+\contentsline {subsection}{\numberline {8.2.4}Physical versus logical device 
view}{67}
+\contentsline {subsection}{\numberline {8.2.5}Things for the future}{67}
+\contentsline {section}{\numberline {8.3}Bus Drivers}{67}
+\contentsline {subsection}{\numberline {8.3.1}Root bus driver}{68}
+\contentsline {subsection}{\numberline {8.3.2}Generic Bus Driver}{68}
+\contentsline {subsection}{\numberline {8.3.3}ISA Bus Driver}{68}
+\contentsline {subsection}{\numberline {8.3.4}PCI Bus Driver}{69}
+\contentsline {section}{\numberline {8.4}Device Drivers}{69}
+\contentsline {subsection}{\numberline {8.4.1}Classes}{69}
+\contentsline {subsection}{\numberline {8.4.2}Human input devices (HID) and 
the console}{70}
+\contentsline {subsection}{\numberline {8.4.3}Generic Device Driver}{70}
+\contentsline {subsection}{\numberline {8.4.4}ISA Devices}{70}
+\contentsline {subsection}{\numberline {8.4.5}PCI Devices}{71}
+\contentsline {section}{\numberline {8.5}Service Servers}{71}
+\contentsline {subsection}{\numberline {8.5.1}Plugin Manager}{71}
+\contentsline {subsection}{\numberline {8.5.2}Deva}{71}
+\contentsline {subsection}{\numberline {8.5.3}$\omega _0$}{72}
+\contentsline {section}{\numberline {8.6}Resource Management}{72}
+\contentsline {subsection}{\numberline {8.6.1}IRQ handling}{72}
+\contentsline {subsubsection}{IRQ based interrupt vectors}{72}
+\contentsline {subsubsection}{IRQ acknowlegdement}{72}
+\contentsline {subsubsection}{Edge versus level triggered IRQs}{72}
+\contentsline {subsubsection}{Multiple interrupt controllers}{73}
+\contentsline {subsubsection}{Shared IRQs}{73}
+\contentsline {subsubsection}{IRQ priorities}{73}
+\contentsline {subsubsection}{IRQ handling by L4/x86}{73}
+\contentsline {subsection}{\numberline {8.6.2}Memory}{73}
+\contentsline {section}{\numberline {8.7}Bootstrapping}{74}
+\contentsline {subsection}{\numberline {8.7.1}deva}{74}
+\contentsline {subsection}{\numberline {8.7.2}Plugin Manager}{74}
+\contentsline {section}{\numberline {8.8}Order of implementation}{74}
+\contentsline {section}{\numberline {8.9}Scenarios}{74}
+\contentsline {subsection}{\numberline {8.9.1}Insert Event}{74}
+\contentsline {subsection}{\numberline {8.9.2}Several Plugin Managers}{77}
diff -Naur hurd-l4/doc/introduction.aux hurd-l4-new/doc/introduction.aux
--- hurd-l4/doc/introduction.aux        1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/introduction.aux    2005-07-13 18:30:52.327796280 +0200
@@ -0,0 +1,25 @@
+\relax 
address@hidden {chapter}{\numberline {1}Introduction}{1}}
address@hidden {10\p@ }}
address@hidden {10\p@ }}
address@hidden {section}{\numberline {1.1}Genesis}{1}}
address@hidden {section}{\numberline {1.2}Work In Progress}{3}}
address@hidden
+\setcounter{page}{4}
+\setcounter{equation}{0}
+\setcounter{enumi}{0}
+\setcounter{enumii}{0}
+\setcounter{enumiii}{0}
+\setcounter{enumiv}{0}
+\setcounter{footnote}{0}
+\setcounter{mpfootnote}{0}
+\setcounter{part}{0}
+\setcounter{chapter}{1}
+\setcounter{section}{2}
+\setcounter{subsection}{0}
+\setcounter{subsubsection}{0}
+\setcounter{paragraph}{0}
+\setcounter{subparagraph}{0}
+\setcounter{figure}{0}
+\setcounter{table}{0}
+}
diff -Naur hurd-l4/doc/ipc.aux hurd-l4-new/doc/ipc.aux
--- hurd-l4/doc/ipc.aux 1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/ipc.aux     2005-07-13 18:30:52.327796280 +0200
@@ -0,0 +1,47 @@
+\relax 
address@hidden {chapter}{\numberline {3}Inter-process communication (IPC)}{11}}
address@hidden {10\p@ }}
address@hidden {10\p@ }}
+\newlabel{ipc}{{3}{11}}
address@hidden {section}{\numberline {3.1}Capabilities}{13}}
address@hidden {subsection}{\numberline {3.1.1}Bootstrapping a client-server 
connection}{14}}
+\newlabel{ipcbootstrap}{{3.1.1}{14}}
address@hidden {paragraph}{Preconditions}{15}}
address@hidden {paragraph}{Result}{16}}
address@hidden {subsection}{\numberline {3.1.2}Returning a capability from a 
server to a client}{17}}
address@hidden {subsection}{\numberline {3.1.3}Copying a capability from one 
client to another task}{17}}
address@hidden {paragraph}{Preconditions}{17}}
+\newlabel{copycapout}{{8}{20}}
address@hidden {paragraph}{Result}{20}}
address@hidden {paragraph}{The server $S$ dies}{21}}
address@hidden {paragraph}{The client $C$ dies}{21}}
address@hidden {paragraph}{The destination task $D$ dies}{22}}
address@hidden {paragraph}{The client $C$ and the destination task $D$ die}{22}}
address@hidden {paragraph}{The client $C$ and the server $S$ die}{22}}
address@hidden {paragraph}{The destination task $D$ and the server $S$ die}{22}}
address@hidden {paragraph}{The client $C$, the destination task $D$ and the 
server $S$ die}{23}}
address@hidden {paragraph}{The client $C$ is malicious}{23}}
address@hidden {paragraph}{The destination task $D$ is malicious}{24}}
address@hidden {paragraph}{The client $C$ and the destination task $D$ are 
malicious}{25}}
address@hidden {subsection}{\numberline {3.1.4}The trust rule}{25}}
address@hidden {section}{\numberline {3.2}Synchronous IPC}{26}}
address@hidden {section}{\numberline {3.3}Notifications}{27}}
address@hidden
+\setcounter{page}{29}
+\setcounter{equation}{0}
+\setcounter{enumi}{9}
+\setcounter{enumii}{0}
+\setcounter{enumiii}{0}
+\setcounter{enumiv}{0}
+\setcounter{footnote}{0}
+\setcounter{mpfootnote}{0}
+\setcounter{part}{0}
+\setcounter{chapter}{3}
+\setcounter{section}{3}
+\setcounter{subsection}{0}
+\setcounter{subsubsection}{0}
+\setcounter{paragraph}{0}
+\setcounter{subparagraph}{0}
+\setcounter{figure}{0}
+\setcounter{table}{0}
+}
diff -Naur hurd-l4/doc/Makefile.in hurd-l4-new/doc/Makefile.in
--- hurd-l4/doc/Makefile.in     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/Makefile.in 2005-07-13 18:30:52.328796128 +0200
@@ -0,0 +1,422 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for the manual.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Neal H. Walfield
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = doc
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(pkgdatadir)"
+pkgdataDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(pkgdata_DATA)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+pkgdata_DATA = hurd-on-l4.dvi hurd-on-l4.ps hurd-on-l4.pdf
+EXTRA_DIST = ${fig_files} ${eps_files} ${tex_files} hurd-on-l4.ps 
hurd-on-l4.pdf
+tex_files = hurd-on-l4.tex \
+       introduction.tex \
+       booting.tex \
+       ipc.tex \
+       threads-tasks.tex \
+       vmm.tex \
+       posix.tex \
+       debugging.tex \
+       device-drivers.tex
+
+fig_files = ddf_insert_event.fig ddf_several_plms.fig
+eps_files = $(patsubst %.fig,%.eps,${fig_files})
+eps_cleanfiles = ${eps_files}
+SUFFIXES = .ps .dvi .tex .eps .fig .pdf
+MAINTAINERCLEANFILES = ${eps_cleanfiles}
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .ps .dvi .tex .eps .fig .pdf
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  doc/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  doc/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-pkgdataDATA: $(pkgdata_DATA)
+       @$(NORMAL_INSTALL)
+       test -z "$(pkgdatadir)" || $(mkdir_p) "$(DESTDIR)$(pkgdatadir)"
+       @list='$(pkgdata_DATA)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(pkgdataDATA_INSTALL) '$$d$$p' 
'$(DESTDIR)$(pkgdatadir)/$$f'"; \
+         $(pkgdataDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgdatadir)/$$f"; \
+       done
+
+uninstall-pkgdataDATA:
+       @$(NORMAL_UNINSTALL)
+       @list='$(pkgdata_DATA)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(pkgdatadir)/$$f'"; \
+         rm -f "$(DESTDIR)$(pkgdatadir)/$$f"; \
+       done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(DATA)
+installdirs:
+       for dir in "$(DESTDIR)$(pkgdatadir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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."
+       -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-pkgdataDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-pkgdataDATA
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+       distclean-generic distdir dvi dvi-am html html-am info info-am \
+       install install-am install-data install-data-am install-exec \
+       install-exec-am install-info install-info-am install-man \
+       install-pkgdataDATA install-strip installcheck installcheck-am \
+       installdirs maintainer-clean maintainer-clean-generic \
+       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+       uninstall-am uninstall-info-am uninstall-pkgdataDATA
+
+
+# _DEPENDENCIES does not work with _DATA.
+hurd-on-l4.dvi: ${eps_files} ${tex_files}
+
+.tex.dvi:
+       TEXINPUTS="$(srcdir):$(TEXINPUTS)" $(LATEX) $< -o $@ ; \
+       while egrep "^LaTeX Warning:.*Rerun to" \
+           `echo $< | sed -e 's/.*\///' -e 's/.tex$$/.log/'`; do \
+         rm -f $(subst $<,.tex,.log); \
+         TEXINPUTS="$(srcdir):$(TEXINPUTS)" $(LATEX) $< -o $@; \
+       done
+
+.dvi.ps:
+       $(DVIPS) -o $@ $<
+
+.ps.pdf:
+       $(PS2PDF) $<
+
+.fig.eps:
+       $(FIG2DEV) -L eps $< $@
+
+clean:
+       rm -f *.aux *.ps *.dvi *.pdf *.log *.toc
+# 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 -Naur hurd-l4/doc/posix.aux hurd-l4-new/doc/posix.aux
--- hurd-l4/doc/posix.aux       1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/posix.aux   2005-07-13 18:30:52.329795976 +0200
@@ -0,0 +1,46 @@
+\relax 
address@hidden {chapter}{\numberline {6}The POSIX personality}{51}}
address@hidden {10\p@ }}
address@hidden {10\p@ }}
address@hidden {section}{\numberline {6.1}Authentication}{51}}
+\newlabel{auth}{{6.1}{51}}
address@hidden {paragraph}{Auth capabilities}{51}}
address@hidden {paragraph}{Passport capabilities}{52}}
address@hidden {subsection}{\numberline {6.1.1}Authenticating a client to a 
server}{52}}
address@hidden {paragraph}{Preconditions}{52}}
address@hidden {paragraph}{Result}{54}}
address@hidden {section}{\numberline {6.2}Process Management}{54}}
+\newlabel{proc}{{6.2}{54}}
address@hidden {subsection}{\numberline {6.2.1}Signals}{54}}
+\newlabel{signals}{{6.2.1}{54}}
address@hidden {subsection}{\numberline {6.2.2}The \texttt  {fork()} 
function}{55}}
address@hidden {subsection}{\numberline {6.2.3}The \texttt  {exec} 
functions}{55}}
+\newlabel{exec}{{6.2.3}{55}}
address@hidden {subsubsection}{The startup information}{57}}
address@hidden {section}{\numberline {6.3}Unix Domain Sockets}{58}}
+\newlabel{unixdomainsockets}{{6.3}{58}}
address@hidden {section}{\numberline {6.4}Pipes}{59}}
address@hidden {section}{\numberline {6.5}Filesystems}{59}}
address@hidden {subsection}{\numberline {6.5.1}Directory lookup across 
filesystems}{59}}
+\newlabel{xfslookup}{{6.5.1}{59}}
address@hidden {subsection}{\numberline {6.5.2}Reparenting}{60}}
+\newlabel{reparenting}{{6.5.2}{60}}
address@hidden
+\setcounter{page}{62}
+\setcounter{equation}{0}
+\setcounter{enumi}{10}
+\setcounter{enumii}{0}
+\setcounter{enumiii}{0}
+\setcounter{enumiv}{0}
+\setcounter{footnote}{0}
+\setcounter{mpfootnote}{0}
+\setcounter{part}{0}
+\setcounter{chapter}{6}
+\setcounter{section}{5}
+\setcounter{subsection}{2}
+\setcounter{subsubsection}{0}
+\setcounter{paragraph}{0}
+\setcounter{subparagraph}{0}
+\setcounter{figure}{0}
+\setcounter{table}{0}
+}
diff -Naur hurd-l4/doc/threads-tasks.aux hurd-l4-new/doc/threads-tasks.aux
--- hurd-l4/doc/threads-tasks.aux       1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/threads-tasks.aux   2005-07-13 18:30:52.329795976 +0200
@@ -0,0 +1,31 @@
+\relax 
address@hidden {chapter}{\numberline {4}Threads and Tasks}{29}}
address@hidden {10\p@ }}
address@hidden {10\p@ }}
address@hidden {paragraph}{Task control capabilities}{29}}
+\newlabel{taskinfocap}{{4}{29}}
address@hidden {paragraph}{Task info capabilities}{29}}
address@hidden {paragraph}{Task manager capability}{30}}
address@hidden {section}{\numberline {4.1}Accounting}{31}}
address@hidden {section}{\numberline {4.2}Proxy Task Server}{32}}
+\newlabel{proxytaskserver}{{4.2}{32}}
address@hidden {section}{\numberline {4.3}Scheduling}{32}}
address@hidden
+\setcounter{page}{33}
+\setcounter{equation}{0}
+\setcounter{enumi}{9}
+\setcounter{enumii}{0}
+\setcounter{enumiii}{0}
+\setcounter{enumiv}{0}
+\setcounter{footnote}{0}
+\setcounter{mpfootnote}{0}
+\setcounter{part}{0}
+\setcounter{chapter}{4}
+\setcounter{section}{3}
+\setcounter{subsection}{0}
+\setcounter{subsubsection}{0}
+\setcounter{paragraph}{0}
+\setcounter{subparagraph}{0}
+\setcounter{figure}{0}
+\setcounter{table}{0}
+}
diff -Naur hurd-l4/doc/vmm.aux hurd-l4-new/doc/vmm.aux
--- hurd-l4/doc/vmm.aux 1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/doc/vmm.aux     2005-07-13 18:30:52.330795824 +0200
@@ -0,0 +1,54 @@
+\relax 
address@hidden {chapter}{\numberline {5}Virtual Memory Management}{33}}
address@hidden {10\p@ }}
address@hidden {10\p@ }}
address@hidden {section}{\numberline {5.1}Introduction}{33}}
address@hidden {subsection}{\numberline {5.1.1}Learning from Unix}{34}}
address@hidden {subsection}{\numberline {5.1.2}Learning from Mach}{35}}
address@hidden {subsection}{\numberline {5.1.3}Following the Hurd 
Philosophy}{35}}
address@hidden {section}{\numberline {5.2}Self Paging}{35}}
address@hidden {section}{\numberline {5.3}Bootstrap}{37}}
address@hidden {section}{\numberline {5.4}Memory Allocation Policy}{37}}
address@hidden {subsection}{\numberline {5.4.1}Guaranteed Frames and Extra 
Frames}{37}}
address@hidden {subsection}{\numberline {5.4.2}An External Memory Policy 
Server}{38}}
address@hidden {section}{\numberline {5.5}Containers}{39}}
address@hidden {subsection}{\numberline {5.5.1}The Container Interface}{40}}
address@hidden {paragraph}{Creating Containers}{40}}
address@hidden {paragraph}{Sharing Containers}{41}}
address@hidden {paragraph}{Allocating and Deallocating Memory}{41}}
address@hidden {paragraph}{Mapping Memory}{42}}
address@hidden {paragraph}{Doing It All At Once}{42}}
address@hidden {paragraph}{Copying Data Into or Out of Containers}{43}}
address@hidden {paragraph}{Locking Containers and Pinning Memory}{43}}
address@hidden {paragraph}{Finding Deallocate Memory}{43}}
address@hidden {paragraph}{Reusing frames}{43}}
address@hidden {subsection}{\numberline {5.5.2}Moving Data}{44}}
address@hidden {section}{\numberline {5.6}Caching Store Accesses}{44}}
address@hidden {subsection}{\numberline {5.6.1}Caching in the File System}{46}}
address@hidden {subsection}{\numberline {5.6.2}Caching Interfaces}{47}}
address@hidden {section}{\numberline {5.7}The Memory Policy Server}{47}}
address@hidden {section}{\numberline {5.8}Sending Data to Swap}{47}}
address@hidden {section}{\numberline {5.9}Self Paging}{48}}
address@hidden {subsection}{\numberline {5.9.1}The Pager}{48}}
address@hidden {subsubsection}{Managing Mappings}{49}}
address@hidden {subsection}{\numberline {5.9.2}Reusing Virtual Frames}{49}}
address@hidden {subsection}{\numberline {5.9.3}Taking Advantage of 
Self-Paging}{49}}
address@hidden
+\setcounter{page}{50}
+\setcounter{equation}{0}
+\setcounter{enumi}{9}
+\setcounter{enumii}{0}
+\setcounter{enumiii}{0}
+\setcounter{enumiv}{0}
+\setcounter{footnote}{1}
+\setcounter{mpfootnote}{0}
+\setcounter{part}{0}
+\setcounter{chapter}{5}
+\setcounter{section}{9}
+\setcounter{subsection}{3}
+\setcounter{subsubsection}{0}
+\setcounter{paragraph}{0}
+\setcounter{subparagraph}{0}
+\setcounter{figure}{0}
+\setcounter{table}{0}
+}
diff -Naur hurd-l4/hurd/CVS/Entries hurd-l4-new/hurd/CVS/Entries
--- hurd-l4/hurd/CVS/Entries    2005-07-13 18:31:27.019522336 +0200
+++ hurd-l4-new/hurd/CVS/Entries        2005-07-13 18:30:52.330795824 +0200
@@ -1,6 +1,6 @@
-/ChangeLog/1.14/Sun Jan 30 19:45:15 2005//
-/Makefile.am/1.2/Tue Jan 25 23:48:57 2005//
-/headers.m4/1.2/Tue Oct 26 03:12:57 2004//
-/startup.h/1.6/Sun Jan 30 19:45:15 2005//
-/types.h/1.8/Wed Dec  1 18:12:21 2004//
+/ChangeLog/1.14/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.2/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.2/Wed Jul 13 15:55:51 2005//
+/startup.h/1.6/Wed Jul 13 15:55:51 2005//
+/types.h/1.8/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/hurd/Makefile.in hurd-l4-new/hurd/Makefile.in
--- hurd-l4/hurd/Makefile.in    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/hurd/Makefile.in        2005-07-13 18:30:52.331795672 +0200
@@ -0,0 +1,433 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for hurd.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free
+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = hurd
+DIST_COMMON = $(includehurd_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/startup.h $(srcdir)/types.h \
+       ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(includehurddir)"
+includehurdHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(includehurd_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+includehurddir = $(includedir)/hurd
+includehurd_HEADERS = startup.h types.h
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  hurd/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  hurd/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-includehurdHEADERS: $(includehurd_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includehurddir)" || $(mkdir_p) "$(DESTDIR)$(includehurddir)"
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(includehurdHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includehurddir)/$$f'"; \
+         $(includehurdHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+uninstall-includehurdHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(includehurddir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(includehurddir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-includehurdHEADERS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-includehurdHEADERS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-includehurdHEADERS install-info install-info-am \
+       install-man install-strip installcheck installcheck-am \
+       installdirs maintainer-clean maintainer-clean-generic \
+       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
+       uninstall uninstall-am uninstall-includehurdHEADERS \
+       uninstall-info-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 -Naur hurd-l4/INSTALL hurd-l4-new/INSTALL
--- hurd-l4/INSTALL     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/INSTALL 2005-07-13 18:30:52.331795672 +0200
@@ -0,0 +1,236 @@
+Installation Instructions
+*************************
+
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
+Software Foundation, Inc.
+
+This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it.
+
+Basic Installation
+==================
+
+These are generic installation instructions.
+
+   The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation.  It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions.  Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+   It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring.  (Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.)
+
+   If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release.  If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+   The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'.  You only need
+`configure.ac' if you want to change it or regenerate `configure' using
+a newer version of `autoconf'.
+
+The simplest way to compile this package is:
+
+  1. `cd' to the directory containing the package's source code and type
+     `./configure' to configure the package for your system.  If you're
+     using `csh' on an old version of System V, you might need to type
+     `sh ./configure' instead to prevent `csh' from trying to execute
+     `configure' itself.
+
+     Running `configure' takes awhile.  While running, it prints some
+     messages telling which features it is checking for.
+
+  2. Type `make' to compile the package.
+
+  3. Optionally, type `make check' to run any self-tests that come with
+     the package.
+
+  4. Type `make install' to install the programs and any data files and
+     documentation.
+
+  5. You can remove the program binaries and object files from the
+     source code directory by typing `make clean'.  To also remove the
+     files that `configure' created (so you can compile the package for
+     a different kind of computer), type `make distclean'.  There is
+     also a `make maintainer-clean' target, but that is intended mainly
+     for the package's developers.  If you use it, you may have to get
+     all sorts of other programs in order to regenerate files that came
+     with the distribution.
+
+Compilers and Options
+=====================
+
+Some systems require unusual options for compilation or linking that the
+`configure' script does not know about.  Run `./configure --help' for
+details on some of the pertinent environment variables.
+
+   You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment.  Here
+is an example:
+
+     ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+
+   *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory.  To do this, you must use a version of `make' that
+supports the `VPATH' variable, such as GNU `make'.  `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script.  `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+   If you have to use a `make' that does not support the `VPATH'
+variable, you have to compile the package for one architecture at a
+time in the source code directory.  After you have installed the
+package for one architecture, use `make distclean' before reconfiguring
+for another architecture.
+
+Installation Names
+==================
+
+By default, `make install' will install the package's files in
+`/usr/local/bin', `/usr/local/man', etc.  You can specify an
+installation prefix other than `/usr/local' by giving `configure' the
+option `--prefix=PREFIX'.
+
+   You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files.  If you
+give `configure' the option `--exec-prefix=PREFIX', the package will
+use PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files will still use the regular prefix.
+
+   In addition, if you use an unusual directory layout you can give
+options like `--bindir=DIR' to specify different values for particular
+kinds of files.  Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+   If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System).  The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+   For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Specifying the System Type
+==========================
+
+There may be some features `configure' cannot figure out automatically,
+but needs to determine by the type of machine the package will run on.
+Usually, assuming the package is built to be run on the _same_
+architectures, `configure' can figure that out, but if it prints a
+message saying it cannot guess the machine type, give it the
+`--build=TYPE' option.  TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+     CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+     OS KERNEL-OS
+
+   See the file `config.sub' for the possible values of each field.  If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+   If you are _building_ compiler tools for cross-compiling, you should
+use the `--target=TYPE' option to select the type of system they will
+produce code for.
+
+   If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+If you want to set default values for `configure' scripts to share, you
+can create a site shell script called `config.site' that gives default
+values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists.  Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+Variables not defined in a site shell script can be set in the
+environment passed to `configure'.  However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost.  In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'.  For example:
+
+     ./configure CC=/usr/local2/bin/gcc
+
+causes the specified `gcc' to be used as the C compiler (unless it is
+overridden in the site shell script).  Here is a another example:
+
+     /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
+Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
+configuration-related scripts to be executed by `/bin/bash'.
+
+`configure' Invocation
+======================
+
+`configure' recognizes the following options to control how it operates.
+
+`--help'
+`-h'
+     Print a summary of the options to `configure', and exit.
+
+`--version'
+`-V'
+     Print the version of Autoconf used to generate the `configure'
+     script, and exit.
+
+`--cache-file=FILE'
+     Enable the cache: use and save the results of the tests in FILE,
+     traditionally `config.cache'.  FILE defaults to `/dev/null' to
+     disable caching.
+
+`--config-cache'
+`-C'
+     Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+     Do not print messages saying which checks are being made.  To
+     suppress all normal output, redirect it to `/dev/null' (any error
+     messages will still be shown).
+
+`--srcdir=DIR'
+     Look for the package's source code in directory DIR.  Usually
+     `configure' can determine that directory automatically.
+
+`configure' also accepts some other, not widely useful, options.  Run
+`configure --help' for more details.
+
diff -Naur hurd-l4/install-sh hurd-l4-new/install-sh
--- hurd-l4/install-sh  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/install-sh      2005-07-13 18:30:52.332795520 +0200
@@ -0,0 +1,323 @@
+#!/bin/sh
+# install - install a program, script, or datafile
+
+scriptversion=2005-02-02.21
+
+# This originates from X11R5 (mit/util/scripts/install.sh), which was
+# later released in X11R6 (xc/config/util/install.sh) with the
+# following copyright and license.
+#
+# Copyright (C) 1994 X Consortium
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name of the X Consortium shall not
+# be used in advertising or otherwise to promote the sale, use or other deal-
+# ings in this Software without prior written authorization from the X Consor-
+# tium.
+#
+#
+# FSF changes to this file are in the public domain.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch.  It can only install one file at a time, a restriction
+# shared with many OS's install programs.
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit="${DOITPROG-}"
+
+# put in absolute paths if you don't have them in your path; or use env. vars.
+
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
+
+chmodcmd="$chmodprog 0755"
+chowncmd=
+chgrpcmd=
+stripcmd=
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
+src=
+dst=
+dir_arg=
+dstarg=
+no_target_directory=
+
+usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+   or: $0 [OPTION]... SRCFILES... DIRECTORY
+   or: $0 [OPTION]... -t DIRECTORY SRCFILES...
+   or: $0 [OPTION]... -d DIRECTORIES...
+
+In the 1st form, copy SRCFILE to DSTFILE.
+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
+In the 4th, create DIRECTORIES.
+
+Options:
+-c         (ignored)
+-d         create directories instead of installing files.
+-g GROUP   $chgrpprog installed files to GROUP.
+-m MODE    $chmodprog installed files to MODE.
+-o USER    $chownprog installed files to USER.
+-s         $stripprog installed files.
+-t DIRECTORY  install into DIRECTORY.
+-T         report an error if DSTFILE is a directory.
+--help     display this help and exit.
+--version  display version info and exit.
+
+Environment variables override the default commands:
+  CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+"
+
+while test -n "$1"; do
+  case $1 in
+    -c) shift
+        continue;;
+
+    -d) dir_arg=true
+        shift
+        continue;;
+
+    -g) chgrpcmd="$chgrpprog $2"
+        shift
+        shift
+        continue;;
+
+    --help) echo "$usage"; exit $?;;
+
+    -m) chmodcmd="$chmodprog $2"
+        shift
+        shift
+        continue;;
+
+    -o) chowncmd="$chownprog $2"
+        shift
+        shift
+        continue;;
+
+    -s) stripcmd=$stripprog
+        shift
+        continue;;
+
+    -t) dstarg=$2
+       shift
+       shift
+       continue;;
+
+    -T) no_target_directory=true
+       shift
+       continue;;
+
+    --version) echo "$0 $scriptversion"; exit $?;;
+
+    *)  # When -d is used, all remaining arguments are directories to create.
+       # When -t is used, the destination is already specified.
+       test -n "$dir_arg$dstarg" && break
+        # Otherwise, the last argument is the destination.  Remove it from 
address@hidden
+       for arg
+       do
+          if test -n "$dstarg"; then
+           # $@ is not empty: it contains at least $arg.
+           set fnord "$@" "$dstarg"
+           shift # fnord
+         fi
+         shift # arg
+         dstarg=$arg
+       done
+       break;;
+  esac
+done
+
+if test -z "$1"; then
+  if test -z "$dir_arg"; then
+    echo "$0: no input file specified." >&2
+    exit 1
+  fi
+  # It's OK to call `install-sh -d' without argument.
+  # This can happen when creating conditional directories.
+  exit 0
+fi
+
+for src
+do
+  # Protect names starting with `-'.
+  case $src in
+    -*) src=./$src ;;
+  esac
+
+  if test -n "$dir_arg"; then
+    dst=$src
+    src=
+
+    if test -d "$dst"; then
+      mkdircmd=:
+      chmodcmd=
+    else
+      mkdircmd=$mkdirprog
+    fi
+  else
+    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
+    # might cause directories to be created, which would be especially bad
+    # if $src (and thus $dsttmp) contains '*'.
+    if test ! -f "$src" && test ! -d "$src"; then
+      echo "$0: $src does not exist." >&2
+      exit 1
+    fi
+
+    if test -z "$dstarg"; then
+      echo "$0: no destination specified." >&2
+      exit 1
+    fi
+
+    dst=$dstarg
+    # Protect names starting with `-'.
+    case $dst in
+      -*) dst=./$dst ;;
+    esac
+
+    # If destination is a directory, append the input filename; won't work
+    # if double slashes aren't ignored.
+    if test -d "$dst"; then
+      if test -n "$no_target_directory"; then
+       echo "$0: $dstarg: Is a directory" >&2
+       exit 1
+      fi
+      dst=$dst/`basename "$src"`
+    fi
+  fi
+
+  # This sed command emulates the dirname command.
+  dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
+
+  # Make sure that the destination directory exists.
+
+  # Skip lots of stat calls in the usual case.
+  if test ! -d "$dstdir"; then
+    defaultIFS='
+        '
+    IFS="${IFS-$defaultIFS}"
+
+    oIFS=$IFS
+    # Some sh's can't handle IFS=/ for some reason.
+    IFS='%'
+    set x `echo "$dstdir" | sed -e 's@/@address@hidden' -e 'address@hidden@/@'`
+    shift
+    IFS=$oIFS
+
+    pathcomp=
+
+    while test $# -ne 0 ; do
+      pathcomp=$pathcomp$1
+      shift
+      if test ! -d "$pathcomp"; then
+        $mkdirprog "$pathcomp"
+       # mkdir can fail with a `File exist' error in case several
+       # install-sh are creating the directory concurrently.  This
+       # is OK.
+       test -d "$pathcomp" || exit
+      fi
+      pathcomp=$pathcomp/
+    done
+  fi
+
+  if test -n "$dir_arg"; then
+    $doit $mkdircmd "$dst" \
+      && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
+      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
+      && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
+      && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
+
+  else
+    dstfile=`basename "$dst"`
+
+    # Make a couple of temp file names in the proper directory.
+    dsttmp=$dstdir/_inst.$$_
+    rmtmp=$dstdir/_rm.$$_
+
+    # Trap to clean up those temp files at exit.
+    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
+    trap '(exit $?); exit' 1 2 13 15
+
+    # Copy the file name to the temp name.
+    $doit $cpprog "$src" "$dsttmp" &&
+
+    # and set any options; do chmod last to preserve setuid bits.
+    #
+    # If any of these fail, we abort the whole thing.  If we want to
+    # ignore errors from any of these, just make sure not to ignore
+    # errors from the above "$doit $cpprog $src $dsttmp" command.
+    #
+    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
+      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
+      && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
+      && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
+
+    # Now rename the file to the real destination.
+    { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
+      || {
+          # The rename failed, perhaps because mv can't rename something else
+          # to itself, or perhaps because mv is so ancient that it does not
+          # support -f.
+
+          # Now remove or move aside any old file at destination location.
+          # We try this two ways since rm can't unlink itself on some
+          # systems and the destination file might be busy for other
+          # reasons.  In this case, the final cleanup might fail but the new
+          # file should still install successfully.
+          {
+            if test -f "$dstdir/$dstfile"; then
+              $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
+              || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
+              || {
+                echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
+                (exit 1); exit 1
+              }
+            else
+              :
+            fi
+          } &&
+
+          # Now rename the file to the real destination.
+          $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
+        }
+    }
+  fi || { (exit 1); exit 1; }
+done
+
+# The final little trick to "correctly" pass the exit status to the exit trap.
+{
+  (exit 0); exit 0
+}
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff -Naur hurd-l4/laden/CVS/Entries hurd-l4-new/laden/CVS/Entries
--- hurd-l4/laden/CVS/Entries   2005-07-13 18:31:27.396465032 +0200
+++ hurd-l4-new/laden/CVS/Entries       2005-07-13 18:30:52.332795520 +0200
@@ -1,23 +1,23 @@
-/ChangeLog/1.20/Sat Jan 22 00:09:06 2005//
-/Makefile.am/1.11/Wed Nov 17 16:31:17 2004//
-/README/1.3/Fri Sep 19 17:49:59 2003//
-/config.m4/1.2/Sat Jan 22 00:09:06 2005//
-/elf.h/1.3/Thu Sep 25 00:29:14 2003//
-/ia32-cmain.c/1.14/Wed Nov 17 16:21:39 2004//
-/ia32-crt0.S/1.1/Sat Jul 26 17:26:09 2003//
-/ia32-output.c/1.3/Fri Sep 19 17:49:59 2003//
-/ia32-shutdown.c/1.3/Sun Sep  7 22:13:04 2003//
-/kip-fixup.c/1.5/Tue Mar 16 03:37:32 2004//
-/laden.c/1.11/Fri Jan  7 11:36:38 2005//
-/laden.h/1.11/Tue Mar 16 03:37:32 2004//
-/loader.c/1.15/Mon Mar 29 23:23:31 2004//
-/loader.h/1.3/Tue Mar 16 03:37:32 2004//
-/multiboot.h/1.2/Thu Sep  4 01:29:35 2003//
-/output-none.c/1.3/Sun Sep  7 22:13:04 2003//
-/output-serial.c/1.3/Sun Sep 21 22:25:16 2003//
-/output-vga.c/1.4/Fri Sep 19 17:49:59 2003//
-/output.c/1.7/Fri Sep 19 17:49:59 2003//
-/output.h/1.7/Fri Jan  7 11:11:46 2005//
-/shutdown.c/1.1/Sun Sep  7 20:56:46 2003//
-/shutdown.h/1.3/Mon Sep  8 14:23:17 2003//
+/ChangeLog/1.20/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.11/Wed Jul 13 15:55:51 2005//
+/README/1.3/Wed Jul 13 15:55:51 2005//
+/config.m4/1.2/Wed Jul 13 15:55:51 2005//
+/elf.h/1.3/Wed Jul 13 15:55:51 2005//
+/ia32-cmain.c/1.14/Wed Jul 13 15:55:51 2005//
+/ia32-crt0.S/1.1/Wed Jul 13 15:55:51 2005//
+/ia32-output.c/1.3/Wed Jul 13 15:55:51 2005//
+/ia32-shutdown.c/1.3/Wed Jul 13 15:55:51 2005//
+/kip-fixup.c/1.5/Wed Jul 13 15:55:51 2005//
+/laden.c/1.11/Wed Jul 13 15:55:51 2005//
+/laden.h/1.11/Wed Jul 13 15:55:51 2005//
+/loader.c/1.15/Wed Jul 13 15:55:51 2005//
+/loader.h/1.3/Wed Jul 13 15:55:51 2005//
+/multiboot.h/1.2/Wed Jul 13 15:55:51 2005//
+/output-none.c/1.3/Wed Jul 13 15:55:51 2005//
+/output-serial.c/1.3/Wed Jul 13 15:55:51 2005//
+/output-vga.c/1.4/Wed Jul 13 15:55:51 2005//
+/output.c/1.7/Wed Jul 13 15:55:51 2005//
+/output.h/1.7/Wed Jul 13 15:55:51 2005//
+/shutdown.c/1.1/Wed Jul 13 15:55:51 2005//
+/shutdown.h/1.3/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/laden/Makefile.in hurd-l4-new/laden/Makefile.in
--- hurd-l4/laden/Makefile.in   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/laden/Makefile.in       2005-07-13 18:30:52.333795368 +0200
@@ -0,0 +1,670 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for laden.
+# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = $(laden_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+boot_PROGRAMS = laden$(EXEEXT)
+subdir = laden
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+       ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bootdir)"
+bootPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(boot_PROGRAMS)
+am__laden_SOURCES_DIST = multiboot.h ia32-crt0.S ia32-cmain.c \
+       ia32-output.c output-vga.c output-serial.c ia32-shutdown.c \
+       output.h output.c output-none.c shutdown.h shutdown.c elf.h \
+       loader.h loader.c laden.h laden.c kip-fixup.c
address@hidden@am__objects_1 = ia32-crt0.$(OBJEXT) \
address@hidden@ laden-ia32-cmain.$(OBJEXT) \
address@hidden@ laden-ia32-output.$(OBJEXT) \
address@hidden@ laden-output-vga.$(OBJEXT) \
address@hidden@ laden-output-serial.$(OBJEXT) \
address@hidden@ laden-ia32-shutdown.$(OBJEXT)
+am_laden_OBJECTS = $(am__objects_1) laden-output.$(OBJEXT) \
+       laden-output-none.$(OBJEXT) laden-shutdown.$(OBJEXT) \
+       laden-loader.$(OBJEXT) laden-laden.$(OBJEXT) \
+       laden-kip-fixup.$(OBJEXT)
+laden_OBJECTS = $(am_laden_OBJECTS)
+laden_DEPENDENCIES = ../libc-parts/libc-parts.a
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CCASCOMPILE = $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS)
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(laden_SOURCES)
+DIST_SOURCES = $(am__laden_SOURCES_DIST)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@ARCH_SOURCES = multiboot.h ia32-crt0.S ia32-cmain.c \
address@hidden@    ia32-output.c output-vga.c output-serial.c ia32-shutdown.c
+
+bootdir = $(prefix)/boot
+laden_CPPFLAGS = -I$(srcdir) -I$(top_builddir)/include \
+       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)
+
+laden_SOURCES = $(ARCH_SOURCES)                                \
+       output.h output.c output-none.c                         \
+       shutdown.h shutdown.c                                   \
+       elf.h loader.h loader.c                                 \
+       laden.h laden.c kip-fixup.c
+
+laden_LDFLAGS = -u_start -e_start -N -nostdlib address@hidden@
+laden_LDADD = -lgcc ../libc-parts/libc-parts.a
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  laden/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  laden/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-bootPROGRAMS: $(boot_PROGRAMS)
+       @$(NORMAL_INSTALL)
+       test -z "$(bootdir)" || $(mkdir_p) "$(DESTDIR)$(bootdir)"
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+         ; then \
+           f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) '$$p' 
'$(DESTDIR)$(bootdir)/$$f'"; \
+          $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) "$$p" 
"$(DESTDIR)$(bootdir)/$$f" || exit 1; \
+         else :; fi; \
+       done
+
+uninstall-bootPROGRAMS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         f=`echo "$$p" | sed 
's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f '$(DESTDIR)$(bootdir)/$$f'"; \
+         rm -f "$(DESTDIR)$(bootdir)/$$f"; \
+       done
+
+clean-bootPROGRAMS:
+       -test -z "$(boot_PROGRAMS)" || rm -f $(boot_PROGRAMS)
+laden$(EXEEXT): $(laden_OBJECTS) $(laden_DEPENDENCIES) 
+       @rm -f laden$(EXEEXT)
+       $(LINK) $(laden_LDFLAGS) $(laden_OBJECTS) $(laden_LDADD) $(LIBS)
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.S.o:
+       $(CCASCOMPILE) -c $<
+
+.S.obj:
+       $(CCASCOMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+laden-ia32-cmain.o: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-ia32-cmain.o -MD 
-MP -MF "$(DEPDIR)/laden-ia32-cmain.Tpo" -c -o laden-ia32-cmain.o `test -f 
'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-ia32-cmain.Tpo" 
"$(DEPDIR)/laden-ia32-cmain.Po"; else rm -f "$(DEPDIR)/laden-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='laden-ia32-cmain.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-ia32-cmain.o `test -f 
'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c
+
+laden-ia32-cmain.obj: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-ia32-cmain.obj 
-MD -MP -MF "$(DEPDIR)/laden-ia32-cmain.Tpo" -c -o laden-ia32-cmain.obj `if 
test -f 'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-ia32-cmain.Tpo" 
"$(DEPDIR)/laden-ia32-cmain.Po"; else rm -f "$(DEPDIR)/laden-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='laden-ia32-cmain.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-ia32-cmain.obj `if test -f 
'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`
+
+laden-ia32-output.o: ia32-output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-ia32-output.o 
-MD -MP -MF "$(DEPDIR)/laden-ia32-output.Tpo" -c -o laden-ia32-output.o `test 
-f 'ia32-output.c' || echo '$(srcdir)/'`ia32-output.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-ia32-output.Tpo" 
"$(DEPDIR)/laden-ia32-output.Po"; else rm -f "$(DEPDIR)/laden-ia32-output.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-output.c' 
object='laden-ia32-output.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-ia32-output.o `test -f 
'ia32-output.c' || echo '$(srcdir)/'`ia32-output.c
+
+laden-ia32-output.obj: ia32-output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-ia32-output.obj 
-MD -MP -MF "$(DEPDIR)/laden-ia32-output.Tpo" -c -o laden-ia32-output.obj `if 
test -f 'ia32-output.c'; then $(CYGPATH_W) 'ia32-output.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-output.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-ia32-output.Tpo" 
"$(DEPDIR)/laden-ia32-output.Po"; else rm -f "$(DEPDIR)/laden-ia32-output.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-output.c' 
object='laden-ia32-output.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-ia32-output.obj `if test -f 
'ia32-output.c'; then $(CYGPATH_W) 'ia32-output.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-output.c'; fi`
+
+laden-output-vga.o: output-vga.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-output-vga.o -MD 
-MP -MF "$(DEPDIR)/laden-output-vga.Tpo" -c -o laden-output-vga.o `test -f 
'output-vga.c' || echo '$(srcdir)/'`output-vga.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-output-vga.Tpo" 
"$(DEPDIR)/laden-output-vga.Po"; else rm -f "$(DEPDIR)/laden-output-vga.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-vga.c' 
object='laden-output-vga.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-output-vga.o `test -f 
'output-vga.c' || echo '$(srcdir)/'`output-vga.c
+
+laden-output-vga.obj: output-vga.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-output-vga.obj 
-MD -MP -MF "$(DEPDIR)/laden-output-vga.Tpo" -c -o laden-output-vga.obj `if 
test -f 'output-vga.c'; then $(CYGPATH_W) 'output-vga.c'; else $(CYGPATH_W) 
'$(srcdir)/output-vga.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-output-vga.Tpo" 
"$(DEPDIR)/laden-output-vga.Po"; else rm -f "$(DEPDIR)/laden-output-vga.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-vga.c' 
object='laden-output-vga.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-output-vga.obj `if test -f 
'output-vga.c'; then $(CYGPATH_W) 'output-vga.c'; else $(CYGPATH_W) 
'$(srcdir)/output-vga.c'; fi`
+
+laden-output-serial.o: output-serial.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-output-serial.o 
-MD -MP -MF "$(DEPDIR)/laden-output-serial.Tpo" -c -o laden-output-serial.o 
`test -f 'output-serial.c' || echo '$(srcdir)/'`output-serial.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-output-serial.Tpo" 
"$(DEPDIR)/laden-output-serial.Po"; else rm -f 
"$(DEPDIR)/laden-output-serial.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-serial.c' 
object='laden-output-serial.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-output-serial.o `test -f 
'output-serial.c' || echo '$(srcdir)/'`output-serial.c
+
+laden-output-serial.obj: output-serial.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
laden-output-serial.obj -MD -MP -MF "$(DEPDIR)/laden-output-serial.Tpo" -c -o 
laden-output-serial.obj `if test -f 'output-serial.c'; then $(CYGPATH_W) 
'output-serial.c'; else $(CYGPATH_W) '$(srcdir)/output-serial.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-output-serial.Tpo" 
"$(DEPDIR)/laden-output-serial.Po"; else rm -f 
"$(DEPDIR)/laden-output-serial.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-serial.c' 
object='laden-output-serial.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-output-serial.obj `if test -f 
'output-serial.c'; then $(CYGPATH_W) 'output-serial.c'; else $(CYGPATH_W) 
'$(srcdir)/output-serial.c'; fi`
+
+laden-ia32-shutdown.o: ia32-shutdown.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-ia32-shutdown.o 
-MD -MP -MF "$(DEPDIR)/laden-ia32-shutdown.Tpo" -c -o laden-ia32-shutdown.o 
`test -f 'ia32-shutdown.c' || echo '$(srcdir)/'`ia32-shutdown.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-ia32-shutdown.Tpo" 
"$(DEPDIR)/laden-ia32-shutdown.Po"; else rm -f 
"$(DEPDIR)/laden-ia32-shutdown.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-shutdown.c' 
object='laden-ia32-shutdown.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-ia32-shutdown.o `test -f 
'ia32-shutdown.c' || echo '$(srcdir)/'`ia32-shutdown.c
+
+laden-ia32-shutdown.obj: ia32-shutdown.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
laden-ia32-shutdown.obj -MD -MP -MF "$(DEPDIR)/laden-ia32-shutdown.Tpo" -c -o 
laden-ia32-shutdown.obj `if test -f 'ia32-shutdown.c'; then $(CYGPATH_W) 
'ia32-shutdown.c'; else $(CYGPATH_W) '$(srcdir)/ia32-shutdown.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-ia32-shutdown.Tpo" 
"$(DEPDIR)/laden-ia32-shutdown.Po"; else rm -f 
"$(DEPDIR)/laden-ia32-shutdown.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-shutdown.c' 
object='laden-ia32-shutdown.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-ia32-shutdown.obj `if test -f 
'ia32-shutdown.c'; then $(CYGPATH_W) 'ia32-shutdown.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-shutdown.c'; fi`
+
+laden-output.o: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-output.o -MD -MP 
-MF "$(DEPDIR)/laden-output.Tpo" -c -o laden-output.o `test -f 'output.c' || 
echo '$(srcdir)/'`output.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-output.Tpo" 
"$(DEPDIR)/laden-output.Po"; else rm -f "$(DEPDIR)/laden-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='laden-output.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-output.o `test -f 'output.c' || 
echo '$(srcdir)/'`output.c
+
+laden-output.obj: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-output.obj -MD 
-MP -MF "$(DEPDIR)/laden-output.Tpo" -c -o laden-output.obj `if test -f 
'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-output.Tpo" 
"$(DEPDIR)/laden-output.Po"; else rm -f "$(DEPDIR)/laden-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='laden-output.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-output.obj `if test -f 
'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`
+
+laden-output-none.o: output-none.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-output-none.o 
-MD -MP -MF "$(DEPDIR)/laden-output-none.Tpo" -c -o laden-output-none.o `test 
-f 'output-none.c' || echo '$(srcdir)/'`output-none.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-output-none.Tpo" 
"$(DEPDIR)/laden-output-none.Po"; else rm -f "$(DEPDIR)/laden-output-none.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-none.c' 
object='laden-output-none.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-output-none.o `test -f 
'output-none.c' || echo '$(srcdir)/'`output-none.c
+
+laden-output-none.obj: output-none.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-output-none.obj 
-MD -MP -MF "$(DEPDIR)/laden-output-none.Tpo" -c -o laden-output-none.obj `if 
test -f 'output-none.c'; then $(CYGPATH_W) 'output-none.c'; else $(CYGPATH_W) 
'$(srcdir)/output-none.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-output-none.Tpo" 
"$(DEPDIR)/laden-output-none.Po"; else rm -f "$(DEPDIR)/laden-output-none.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-none.c' 
object='laden-output-none.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-output-none.obj `if test -f 
'output-none.c'; then $(CYGPATH_W) 'output-none.c'; else $(CYGPATH_W) 
'$(srcdir)/output-none.c'; fi`
+
+laden-shutdown.o: shutdown.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-shutdown.o -MD 
-MP -MF "$(DEPDIR)/laden-shutdown.Tpo" -c -o laden-shutdown.o `test -f 
'shutdown.c' || echo '$(srcdir)/'`shutdown.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-shutdown.Tpo" 
"$(DEPDIR)/laden-shutdown.Po"; else rm -f "$(DEPDIR)/laden-shutdown.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='shutdown.c' 
object='laden-shutdown.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-shutdown.o `test -f 'shutdown.c' 
|| echo '$(srcdir)/'`shutdown.c
+
+laden-shutdown.obj: shutdown.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-shutdown.obj -MD 
-MP -MF "$(DEPDIR)/laden-shutdown.Tpo" -c -o laden-shutdown.obj `if test -f 
'shutdown.c'; then $(CYGPATH_W) 'shutdown.c'; else $(CYGPATH_W) 
'$(srcdir)/shutdown.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-shutdown.Tpo" 
"$(DEPDIR)/laden-shutdown.Po"; else rm -f "$(DEPDIR)/laden-shutdown.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='shutdown.c' 
object='laden-shutdown.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-shutdown.obj `if test -f 
'shutdown.c'; then $(CYGPATH_W) 'shutdown.c'; else $(CYGPATH_W) 
'$(srcdir)/shutdown.c'; fi`
+
+laden-loader.o: loader.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-loader.o -MD -MP 
-MF "$(DEPDIR)/laden-loader.Tpo" -c -o laden-loader.o `test -f 'loader.c' || 
echo '$(srcdir)/'`loader.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-loader.Tpo" 
"$(DEPDIR)/laden-loader.Po"; else rm -f "$(DEPDIR)/laden-loader.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='loader.c' 
object='laden-loader.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-loader.o `test -f 'loader.c' || 
echo '$(srcdir)/'`loader.c
+
+laden-loader.obj: loader.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-loader.obj -MD 
-MP -MF "$(DEPDIR)/laden-loader.Tpo" -c -o laden-loader.obj `if test -f 
'loader.c'; then $(CYGPATH_W) 'loader.c'; else $(CYGPATH_W) 
'$(srcdir)/loader.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-loader.Tpo" 
"$(DEPDIR)/laden-loader.Po"; else rm -f "$(DEPDIR)/laden-loader.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='loader.c' 
object='laden-loader.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-loader.obj `if test -f 
'loader.c'; then $(CYGPATH_W) 'loader.c'; else $(CYGPATH_W) 
'$(srcdir)/loader.c'; fi`
+
+laden-laden.o: laden.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-laden.o -MD -MP 
-MF "$(DEPDIR)/laden-laden.Tpo" -c -o laden-laden.o `test -f 'laden.c' || echo 
'$(srcdir)/'`laden.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-laden.Tpo" 
"$(DEPDIR)/laden-laden.Po"; else rm -f "$(DEPDIR)/laden-laden.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='laden.c' object='laden-laden.o' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-laden.o `test -f 'laden.c' || 
echo '$(srcdir)/'`laden.c
+
+laden-laden.obj: laden.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-laden.obj -MD 
-MP -MF "$(DEPDIR)/laden-laden.Tpo" -c -o laden-laden.obj `if test -f 
'laden.c'; then $(CYGPATH_W) 'laden.c'; else $(CYGPATH_W) '$(srcdir)/laden.c'; 
fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-laden.Tpo" 
"$(DEPDIR)/laden-laden.Po"; else rm -f "$(DEPDIR)/laden-laden.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='laden.c' 
object='laden-laden.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-laden.obj `if test -f 'laden.c'; 
then $(CYGPATH_W) 'laden.c'; else $(CYGPATH_W) '$(srcdir)/laden.c'; fi`
+
+laden-kip-fixup.o: kip-fixup.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-kip-fixup.o -MD 
-MP -MF "$(DEPDIR)/laden-kip-fixup.Tpo" -c -o laden-kip-fixup.o `test -f 
'kip-fixup.c' || echo '$(srcdir)/'`kip-fixup.c; \
address@hidden@ then mv -f "$(DEPDIR)/laden-kip-fixup.Tpo" 
"$(DEPDIR)/laden-kip-fixup.Po"; else rm -f "$(DEPDIR)/laden-kip-fixup.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='kip-fixup.c' 
object='laden-kip-fixup.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-kip-fixup.o `test -f 
'kip-fixup.c' || echo '$(srcdir)/'`kip-fixup.c
+
+laden-kip-fixup.obj: kip-fixup.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(laden_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT laden-kip-fixup.obj 
-MD -MP -MF "$(DEPDIR)/laden-kip-fixup.Tpo" -c -o laden-kip-fixup.obj `if test 
-f 'kip-fixup.c'; then $(CYGPATH_W) 'kip-fixup.c'; else $(CYGPATH_W) 
'$(srcdir)/kip-fixup.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/laden-kip-fixup.Tpo" 
"$(DEPDIR)/laden-kip-fixup.Po"; else rm -f "$(DEPDIR)/laden-kip-fixup.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='kip-fixup.c' 
object='laden-kip-fixup.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(laden_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o laden-kip-fixup.obj `if test -f 
'kip-fixup.c'; then $(CYGPATH_W) 'kip-fixup.c'; else $(CYGPATH_W) 
'$(srcdir)/kip-fixup.c'; fi`
+uninstall-info-am:
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(PROGRAMS)
+installdirs:
+       for dir in "$(DESTDIR)$(bootdir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-bootPROGRAMS clean-generic 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-bootPROGRAMS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-bootPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-bootPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-bootPROGRAMS \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-bootPROGRAMS uninstall-info-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 -Naur hurd-l4/libc/CVS/Entries hurd-l4-new/libc/CVS/Entries
--- hurd-l4/libc/CVS/Entries    2005-07-13 18:31:34.613367896 +0200
+++ hurd-l4-new/libc/CVS/Entries        2005-07-13 18:30:52.334795216 +0200
@@ -1,6 +1,6 @@
-/ChangeLog/1.17/Wed Feb 23 20:55:17 2005//
-/Makefile.am/1.8/Sun Feb  6 19:56:14 2005//
-/README/1.5/Wed Feb 23 20:55:17 2005//
-/gcc-3.4.3-i686-gnu.dpatch/1.1/Fri Jan 28 05:55:45 2005//
 D/hurd-l4////
 D/patches////
+/ChangeLog/1.17/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.8/Wed Jul 13 15:55:51 2005//
+/README/1.5/Wed Jul 13 15:55:51 2005//
+/gcc-3.4.3-i686-gnu.dpatch/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libc/hurd-l4/CVS/Entries hurd-l4-new/libc/hurd-l4/CVS/Entries
--- hurd-l4/libc/hurd-l4/CVS/Entries    2005-07-13 18:31:34.613367896 +0200
+++ hurd-l4-new/libc/hurd-l4/CVS/Entries        2005-07-13 18:30:52.334795216 
+0200
@@ -1,5 +1,5 @@
-/Makeconfig/1.1/Sun Jan 23 21:30:41 2005//
-/Makefile/1.1/Sun Jan 23 21:30:41 2005//
-/configure/1.1/Sun Jan 23 21:30:41 2005//
-/configure.in/1.1/Sun Jan 23 21:30:41 2005//
 D/sysdeps////
+/Makeconfig/1.1/Wed Jul 13 15:55:51 2005//
+/Makefile/1.1/Wed Jul 13 15:55:51 2005//
+/configure/1.1/Wed Jul 13 15:55:51 2005//
+/configure.in/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libc/hurd-l4/sysdeps/l4/CVS/Entries 
hurd-l4-new/libc/hurd-l4/sysdeps/l4/CVS/Entries
--- hurd-l4/libc/hurd-l4/sysdeps/l4/CVS/Entries 2005-07-13 18:31:34.613367896 
+0200
+++ hurd-l4-new/libc/hurd-l4/sysdeps/l4/CVS/Entries     2005-07-13 
18:30:52.334795216 +0200
@@ -1,8 +1,8 @@
-/getclktck.c/1.1/Mon Jan 31 01:59:49 2005//
-/getpagesize.c/1.3/Thu Jan 27 18:16:50 2005//
-/gettimeofday.c/1.1/Sun Jan 30 23:26:43 2005//
-/nanosleep.c/1.1/Sun Jan 30 23:26:43 2005//
-/sched_yield.c/1.1/Sun Jan 30 23:26:43 2005//
-/sleep.c/1.1/Sun Jan 30 23:26:43 2005//
-/usleep.c/1.1/Sun Jan 30 23:26:43 2005//
 D/hurd////
+/getclktck.c/1.1/Wed Jul 13 15:55:51 2005//
+/getpagesize.c/1.3/Wed Jul 13 15:55:51 2005//
+/gettimeofday.c/1.1/Wed Jul 13 15:55:51 2005//
+/nanosleep.c/1.1/Wed Jul 13 15:55:51 2005//
+/sched_yield.c/1.1/Wed Jul 13 15:55:51 2005//
+/sleep.c/1.1/Wed Jul 13 15:55:51 2005//
+/usleep.c/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libc/hurd-l4/sysdeps/l4/hurd/bits/CVS/Entries 
hurd-l4-new/libc/hurd-l4/sysdeps/l4/hurd/bits/CVS/Entries
--- hurd-l4/libc/hurd-l4/sysdeps/l4/hurd/bits/CVS/Entries       2005-07-13 
18:31:27.768408488 +0200
+++ hurd-l4-new/libc/hurd-l4/sysdeps/l4/hurd/bits/CVS/Entries   2005-07-13 
18:30:52.335795064 +0200
@@ -1,8 +1,8 @@
-/errno.h/1.1/Sun Jan 23 21:30:40 2005//
-/fcntl.h/1.1/Sun Jan 23 21:30:40 2005//
-/local_lim.h/1.1/Sun Jan 23 21:30:40 2005//
-/mman.h/1.1/Sun Jan 23 21:30:40 2005//
-/posix_opt.h/1.1/Sun Jan 23 21:30:40 2005//
-/stat.h/1.1/Sun Jan 23 21:30:40 2005//
-/typesizes.h/1.1/Sun Jan 23 21:30:40 2005//
+/errno.h/1.1/Wed Jul 13 15:55:51 2005//
+/fcntl.h/1.1/Wed Jul 13 15:55:51 2005//
+/local_lim.h/1.1/Wed Jul 13 15:55:51 2005//
+/mman.h/1.1/Wed Jul 13 15:55:51 2005//
+/posix_opt.h/1.1/Wed Jul 13 15:55:51 2005//
+/stat.h/1.1/Wed Jul 13 15:55:51 2005//
+/typesizes.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libc/hurd-l4/sysdeps/l4/hurd/CVS/Entries 
hurd-l4-new/libc/hurd-l4/sysdeps/l4/hurd/CVS/Entries
--- hurd-l4/libc/hurd-l4/sysdeps/l4/hurd/CVS/Entries    2005-07-13 
18:31:34.613367896 +0200
+++ hurd-l4-new/libc/hurd-l4/sysdeps/l4/hurd/CVS/Entries        2005-07-13 
18:30:52.335795064 +0200
@@ -1,43 +1,43 @@
-/Implies/1.1/Sun Jan 23 21:30:41 2005//
-/Makeconfig/1.1/Thu Jan 27 16:28:41 2005//
-/Makefile/1.2/Thu Jan 27 16:28:41 2005//
-/_G_config.h/1.1/Sun Jan 23 21:30:41 2005//
-/_exit.c/1.1/Sun Jan 23 21:30:41 2005//
-/brk.c/1.1/Thu Jan 27 16:28:41 2005//
-/closedir.c/1.1/Sun Jan 23 21:30:41 2005//
-/dirfd.c/1.1/Sun Jan 23 21:30:41 2005//
-/dirstream.h/1.1/Sun Jan 23 21:30:41 2005//
-/enbl-secure.c/1.1/Thu Jan 27 16:28:41 2005//
-/execve.c/1.1/Sun Jan 23 21:30:41 2005//
-/exit-thread.c/1.1/Sun Jan 23 21:30:41 2005//
-/fork.c/1.1/Sun Jan 23 21:30:41 2005//
-/fstatfs.c/1.1/Sun Jan 23 21:30:41 2005//
-/fstatfs64.c/1.1/Sun Jan 23 21:30:41 2005//
-/fstatvfs.c/1.1/Sun Jan 23 21:30:41 2005//
-/fstatvfs64.c/1.1/Sun Jan 23 21:30:41 2005//
-/fxstat.c/1.1/Sun Jan 23 21:30:41 2005//
-/fxstat64.c/1.2/Mon Jan 31 00:41:25 2005//
-/getdtsz.c/1.1/Sun Jan 23 21:30:40 2005//
-/getegid.c/1.1/Sun Jan 23 21:30:40 2005//
-/geteuid.c/1.1/Sun Jan 23 21:30:40 2005//
-/getppid.c/1.1/Sun Jan 23 21:30:40 2005//
-/isatty.c/1.1/Mon Jan 31 00:41:25 2005//
-/lxstat.c/1.1/Sun Jan 23 21:30:40 2005//
-/lxstat64.c/1.1/Sun Jan 23 21:30:40 2005//
-/mremap.c/1.1/Sun Jan 23 21:30:40 2005//
-/opendir.c/1.1/Sun Jan 23 21:30:40 2005//
-/read.c/1.1/Sun Jan 30 19:48:10 2005//
-/readdir.c/1.1/Sun Jan 23 21:30:40 2005//
-/readdir_r.c/1.1/Sun Jan 23 21:30:40 2005//
-/rewinddir.c/1.1/Sun Jan 23 21:30:40 2005//
-/sigaction.c/1.1/Thu Jan 27 04:20:56 2005//
-/sigprocmask.c/1.1/Thu Jan 27 04:20:56 2005//
-/syscall.c/1.1/Sun Jan 23 21:30:40 2005//
-/telldir.c/1.1/Sun Jan 23 21:30:40 2005//
-/uname.c/1.1/Sun Jan 23 21:30:40 2005//
-/write.c/1.1/Sun Jan 30 19:48:10 2005//
-/xstat.c/1.1/Sun Jan 23 21:30:40 2005//
-/xstat64.c/1.1/Sun Jan 23 21:30:40 2005//
 D/bits////
 D/i386////
 D/sys////
+/Implies/1.1/Wed Jul 13 15:55:51 2005//
+/Makeconfig/1.1/Wed Jul 13 15:55:51 2005//
+/Makefile/1.2/Wed Jul 13 15:55:51 2005//
+/_G_config.h/1.1/Wed Jul 13 15:55:51 2005//
+/_exit.c/1.1/Wed Jul 13 15:55:51 2005//
+/brk.c/1.1/Wed Jul 13 15:55:51 2005//
+/closedir.c/1.1/Wed Jul 13 15:55:51 2005//
+/dirfd.c/1.1/Wed Jul 13 15:55:51 2005//
+/dirstream.h/1.1/Wed Jul 13 15:55:51 2005//
+/enbl-secure.c/1.1/Wed Jul 13 15:55:51 2005//
+/execve.c/1.1/Wed Jul 13 15:55:51 2005//
+/exit-thread.c/1.1/Wed Jul 13 15:55:51 2005//
+/fork.c/1.1/Wed Jul 13 15:55:51 2005//
+/fstatfs.c/1.1/Wed Jul 13 15:55:51 2005//
+/fstatfs64.c/1.1/Wed Jul 13 15:55:51 2005//
+/fstatvfs.c/1.1/Wed Jul 13 15:55:51 2005//
+/fstatvfs64.c/1.1/Wed Jul 13 15:55:51 2005//
+/fxstat.c/1.1/Wed Jul 13 15:55:51 2005//
+/fxstat64.c/1.2/Wed Jul 13 15:55:51 2005//
+/getdtsz.c/1.1/Wed Jul 13 15:55:51 2005//
+/getegid.c/1.1/Wed Jul 13 15:55:51 2005//
+/geteuid.c/1.1/Wed Jul 13 15:55:51 2005//
+/getppid.c/1.1/Wed Jul 13 15:55:51 2005//
+/isatty.c/1.1/Wed Jul 13 15:55:51 2005//
+/lxstat.c/1.1/Wed Jul 13 15:55:51 2005//
+/lxstat64.c/1.1/Wed Jul 13 15:55:51 2005//
+/mremap.c/1.1/Wed Jul 13 15:55:51 2005//
+/opendir.c/1.1/Wed Jul 13 15:55:51 2005//
+/read.c/1.1/Wed Jul 13 15:55:51 2005//
+/readdir.c/1.1/Wed Jul 13 15:55:51 2005//
+/readdir_r.c/1.1/Wed Jul 13 15:55:51 2005//
+/rewinddir.c/1.1/Wed Jul 13 15:55:51 2005//
+/sigaction.c/1.1/Wed Jul 13 15:55:51 2005//
+/sigprocmask.c/1.1/Wed Jul 13 15:55:51 2005//
+/syscall.c/1.1/Wed Jul 13 15:55:51 2005//
+/telldir.c/1.1/Wed Jul 13 15:55:51 2005//
+/uname.c/1.1/Wed Jul 13 15:55:51 2005//
+/write.c/1.1/Wed Jul 13 15:55:51 2005//
+/xstat.c/1.1/Wed Jul 13 15:55:51 2005//
+/xstat64.c/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libc/hurd-l4/sysdeps/l4/hurd/i386/CVS/Entries 
hurd-l4-new/libc/hurd-l4/sysdeps/l4/hurd/i386/CVS/Entries
--- hurd-l4/libc/hurd-l4/sysdeps/l4/hurd/i386/CVS/Entries       2005-07-13 
18:31:27.770408184 +0200
+++ hurd-l4-new/libc/hurd-l4/sysdeps/l4/hurd/i386/CVS/Entries   2005-07-13 
18:30:52.336794912 +0200
@@ -1,3 +1,3 @@
-/init-first.c/1.1/Thu Jan 27 16:28:40 2005//
-/static-start.S/1.1/Thu Jan 27 16:28:40 2005//
+/init-first.c/1.1/Wed Jul 13 15:55:51 2005//
+/static-start.S/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libc/hurd-l4/sysdeps/l4/hurd/sys/CVS/Entries 
hurd-l4-new/libc/hurd-l4/sysdeps/l4/hurd/sys/CVS/Entries
--- hurd-l4/libc/hurd-l4/sysdeps/l4/hurd/sys/CVS/Entries        2005-07-13 
18:31:27.771408032 +0200
+++ hurd-l4-new/libc/hurd-l4/sysdeps/l4/hurd/sys/CVS/Entries    2005-07-13 
18:30:52.336794912 +0200
@@ -1,2 +1,2 @@
-/param.h/1.1/Sun Jan 23 21:30:40 2005//
+/param.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libc/Makefile.in hurd-l4-new/libc/Makefile.in
--- hurd-l4/libc/Makefile.in    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libc/Makefile.in        2005-07-13 18:30:52.337794760 +0200
@@ -0,0 +1,535 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libc
+# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = libc.c
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libc
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+       ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+LIBRARIES = $(noinst_LIBRARIES)
+ARFLAGS = cru
+libc_a_AR = $(AR) $(ARFLAGS)
+libc_a_LIBADD =
+libc_a_SOURCES = libc.c
+libc_a_OBJECTS = libc.$(OBJEXT)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = libc.c
+DIST_SOURCES = libc.c
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+noinst_LIBRARIES = libc.a
+patch_files = 00-configure-touch.patch 01-configure.in-base-os.patch \
+       02-configure.in-add-ons-generic.patch \
+       03-sysdeps-generic-bits-socket-h.patch \
+       04-sysdeps-generic-bits-sigcontext-h.patch \
+       05-sysdeps-generic-getpeername.patch \
+       06-sysdeps-generic-open.patch \
+       07-sysdeps-generic-fcntl.patch \
+       08-sysdeps-generic-dl-sysdep.patch \
+       10-sysdeps-generic-lseek.patch \
+       50-nptl-hurd-l4.patch \
+       51-nptl-hurd-l4-tls.patch
+
+patches = $(addprefix patches/, $(patch_files))
+hurd_l4_sysdeps_l4_hurd = bits/errno.h bits/fcntl.h bits/local_lim.h \
+       bits/mman.h bits/posix_opt.h bits/stat.h bits/typesizes.h \
+       brk.c closedir.c dirfd.c dirstream.h enbl-secure.c \
+       execve.c _exit.c exit-thread.c \
+       fork.c fstatfs64.c fstatfs.c fstatvfs64.c fstatvfs.c fxstat64.c \
+       fxstat.c _G_config.h getdtsz.c getegid.c geteuid.c \
+       getppid.c Implies i386/init-first.c i386/static-start.S \
+       isatty.c lxstat64.c lxstat.c Makeconfig Makefile \
+       mremap.c opendir.c read.c readdir.c readdir_r.c rewinddir.c \
+       sigaction.c sigprocmask.c \
+       sys/param.h syscall.c telldir.c uname.c write.c xstat64.c xstat.c
+
+hurd_l4_sysdeps_l4 = getpagesize.c sched_yield.c usleep.c \
+       getclktck.c gettimeofday.c nanosleep.c sleep.c
+
+hurd_l4 = configure configure.in Makeconfig Makefile \
+       $(addprefix sysdeps/l4/,$(hurd_l4_sysdeps_l4)) \
+       $(addprefix sysdeps/l4/hurd/,$(hurd_l4_sysdeps_l4_hurd))
+
+hurd_l4_add_on = $(addprefix hurd-l4/, $(hurd_l4))
+EXTRA_DIST = $(patches) $(hurd_l4_add_on) gcc-3.4.3-i686-gnu.dpatch
+
+# The GNU C library version that we build against.
+glibc_repository = :pserver:address@hidden:/cvs/glibc
+glibc_module = libc
+glibc_version = 2005-01-23
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libc/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libc/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+clean-noinstLIBRARIES:
+       -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/hurd-l4 $(distdir)/patches
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES)
+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-noinstLIBRARIES 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-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-info-am
+
+
+libc-cvs:
+       test ! -e libc || (echo "GNU C library already checked out." && false)
+       cvs -z3 -d $(glibc_repository) \
+               co -D $(glibc_version) -d libc $(glibc_module)
+
+libc-checkout-stamp:
+       test -e libc || (echo "You must setup the libc source (see README)." \
+                       && false)
+       touch libc-checkout-stamp
+
+libc-patch-stamp: libc-checkout-stamp
+       for p in $(patches) ; do \
+               (cd libc; sh ../$(srcdir)/$${p}) || exit 1 ; \
+       done
+       touch libc-patch-stamp
+
+# FIXME: Order should be reversed.
+rpatch:
+       for p in $(patches) ; do \
+               (cd libc; sh ../$(srcdir)/$${p} -R) || exit 1 ; \
+       done
+       rm libc-patch-stamp
+
+libc-add-on-stamp: libc-checkout-stamp
+       for f in $(hurd_l4_add_on) ; do \
+               install -D $(srcdir)/$${f} libc/$${f} ; \
+       done
+       touch libc-add-on-stamp
+
+libc-configure-stamp: libc-patch-stamp libc-add-on-stamp
+       test ! -e libc-build || (echo "Build dir already exists." && false)
+       mkdir libc-build
+       (cd libc-build && ../libc/configure --disable-shared \
+       --disable-profile --without-cvs --enable-add-ons=nptl,hurd-l4 \
+       --prefix=$(prefix) --build=$(build_alias) --host=$(host_alias))
+       touch libc-configure-stamp
+
+libc-build-stamp: libc-configure-stamp
+       (cd libc-build; make)
+       touch libc-build-stamp
+
+libc.a: libc-build-stamp
+       ln -sf libc-build/libc.a libc.a
+
+# clean:
+#      rm -fR libc.a libc-build
+#
+# distclean:
+#      rm -fR libc
+# 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 -Naur hurd-l4/libc/patches/CVS/Entries hurd-l4-new/libc/patches/CVS/Entries
--- hurd-l4/libc/patches/CVS/Entries    2005-07-13 18:31:28.890237944 +0200
+++ hurd-l4-new/libc/patches/CVS/Entries        2005-07-13 18:30:52.337794760 
+0200
@@ -1,13 +1,13 @@
-/00-configure-touch.patch/1.1/Sun Jan 23 21:30:40 2005//
-/01-configure.in-base-os.patch/1.1/Sun Jan 23 21:30:40 2005//
-/02-configure.in-add-ons-generic.patch/1.1/Sun Jan 23 21:30:40 2005//
-/03-sysdeps-generic-bits-socket-h.patch/1.1/Sun Jan 23 21:30:40 2005//
-/04-sysdeps-generic-bits-sigcontext-h.patch/1.1/Sun Jan 23 21:30:40 2005//
-/05-sysdeps-generic-getpeername.patch/1.1/Sun Jan 23 21:30:40 2005//
-/06-sysdeps-generic-open.patch/1.1/Sun Jan 23 21:30:40 2005//
-/07-sysdeps-generic-fcntl.patch/1.1/Sun Jan 23 21:30:40 2005//
-/08-sysdeps-generic-dl-sysdep.patch/1.1/Thu Jan 27 15:50:09 2005//
-/10-sysdeps-generic-lseek.patch/1.1/Sun Feb  6 19:56:14 2005//
-/50-nptl-hurd-l4.patch/1.1/Sun Jan 23 21:30:40 2005//
-/51-nptl-hurd-l4-tls.patch/1.1/Thu Jan 27 16:06:22 2005//
+/00-configure-touch.patch/1.1/Wed Jul 13 15:55:51 2005//
+/01-configure.in-base-os.patch/1.1/Wed Jul 13 15:55:51 2005//
+/02-configure.in-add-ons-generic.patch/1.1/Wed Jul 13 15:55:51 2005//
+/03-sysdeps-generic-bits-socket-h.patch/1.1/Wed Jul 13 15:55:51 2005//
+/04-sysdeps-generic-bits-sigcontext-h.patch/1.1/Wed Jul 13 15:55:51 2005//
+/05-sysdeps-generic-getpeername.patch/1.1/Wed Jul 13 15:55:51 2005//
+/06-sysdeps-generic-open.patch/1.1/Wed Jul 13 15:55:51 2005//
+/07-sysdeps-generic-fcntl.patch/1.1/Wed Jul 13 15:55:51 2005//
+/08-sysdeps-generic-dl-sysdep.patch/1.1/Wed Jul 13 15:55:51 2005//
+/10-sysdeps-generic-lseek.patch/1.1/Wed Jul 13 15:55:51 2005//
+/50-nptl-hurd-l4.patch/1.1/Wed Jul 13 15:55:51 2005//
+/51-nptl-hurd-l4-tls.patch/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libc-parts/CVS/Entries hurd-l4-new/libc-parts/CVS/Entries
--- hurd-l4/libc-parts/CVS/Entries      2005-07-13 18:31:29.021218032 +0200
+++ hurd-l4-new/libc-parts/CVS/Entries  2005-07-13 18:30:52.337794760 +0200
@@ -1,14 +1,14 @@
-/ChangeLog/1.6/Wed Jan 12 10:33:39 2005//
-/Makefile.am/1.6/Thu Mar 18 03:16:50 2004//
-/README/1.1/Sat Sep 13 00:25:51 2003//
-/assert.h/1.6/Wed Jan 12 10:33:39 2005//
-/c-ctype.c/1.1/Fri Sep 19 17:06:49 2003//
-/c-ctype.h/1.1/Fri Sep 19 17:06:49 2003//
-/ctype.h/1.1/Fri Sep 19 17:06:49 2003//
-/errno.c/1.1/Fri Sep 19 17:06:49 2003//
-/errno.h/1.1/Fri Sep 19 17:06:49 2003//
-/strtol.c/1.1/Fri Sep 19 17:06:49 2003//
-/strtoll.c/1.1/Fri Sep 19 17:06:49 2003//
-/strtoul.c/1.1/Fri Sep 19 17:06:49 2003//
-/strtoull.c/1.1/Fri Sep 19 17:06:49 2003//
+/ChangeLog/1.6/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.6/Wed Jul 13 15:55:51 2005//
+/README/1.1/Wed Jul 13 15:55:51 2005//
+/assert.h/1.6/Wed Jul 13 15:55:51 2005//
+/c-ctype.c/1.1/Wed Jul 13 15:55:51 2005//
+/c-ctype.h/1.1/Wed Jul 13 15:55:51 2005//
+/ctype.h/1.1/Wed Jul 13 15:55:51 2005//
+/errno.c/1.1/Wed Jul 13 15:55:51 2005//
+/errno.h/1.1/Wed Jul 13 15:55:51 2005//
+/strtol.c/1.1/Wed Jul 13 15:55:51 2005//
+/strtoll.c/1.1/Wed Jul 13 15:55:51 2005//
+/strtoul.c/1.1/Wed Jul 13 15:55:51 2005//
+/strtoull.c/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libc-parts/Makefile.in hurd-l4-new/libc-parts/Makefile.in
--- hurd-l4/libc-parts/Makefile.in      1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libc-parts/Makefile.in  2005-07-13 18:30:52.339794456 +0200
@@ -0,0 +1,487 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libc-parts.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = $(libc_parts_a_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libc-parts
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+       ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+LIBRARIES = $(noinst_LIBRARIES)
+ARFLAGS = cru
+libc_parts_a_AR = $(AR) $(ARFLAGS)
+libc_parts_a_DEPENDENCIES = $($(routines_varname))
+am_libc_parts_a_OBJECTS = c-ctype.$(OBJEXT) errno.$(OBJEXT) \
+       strtol.$(OBJEXT) strtoll.$(OBJEXT) strtoul.$(OBJEXT) \
+       strtoull.$(OBJEXT)
+libc_parts_a_OBJECTS = $(am_libc_parts_a_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libc_parts_a_SOURCES)
+DIST_SOURCES = $(libc_parts_a_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+noinst_LIBRARIES = libc-parts.a
+libc_parts_a_SOURCES = assert.h ctype.h c-ctype.h c-ctype.c    \
+       errno.h errno.c                                         \
+       strtol.c strtoll.c strtoul.c strtoull.c
+
+
+# For the following routines we want to take the possibly optimized
+# versions from the target's GNU C library, rather than duplicating
+# the generic code here.
+routines := memcpy memmove memset bcopy bzero memchr rawmemchr \
+       strstr strtok strchr strchrnul strcpy stpcpy strcat     \
+       strcmp strncmp strlen strnlen                           \
+       atoi atoll strtoimax strtoumax                          \
+       htonl htons ntohl ntohs ffs
+
+
+# We have to find all modules in the archive which contain the above
+# functions.
+routines_subexp := 's/^\($(shell echo $(routines) \
+       | $(SED) -e 's/ \+/\\|/g')\) in \(.*\)$$/\2/p'
+
+routines_objects := $(shell $(NM) --print-armap @STATIC_GLIBC@ 2>/dev/null \
+       | $(SED) -n -e $(routines_subexp) | $(SORT) -u)
+
+
+# This stupid trick seems to be necessary to avoid early expansion of
+# routines_objects in Makefile.in by automake, which doesn't work at all.
+routines_varname := routines_objects
+libc_parts_a_LIBADD = $($(routines_varname))
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libc-parts/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libc-parts/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+clean-noinstLIBRARIES:
+       -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
+libc-parts.a: $(libc_parts_a_OBJECTS) $(libc_parts_a_DEPENDENCIES) 
+       -rm -f libc-parts.a
+       $(libc_parts_a_AR) libc-parts.a $(libc_parts_a_OBJECTS) 
$(libc_parts_a_LIBADD)
+       $(RANLIB) libc-parts.a
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES)
+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-noinstLIBRARIES 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-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-info-am
+
+
+$(routines_objects): %.$(OBJEXT): @STATIC_GLIBC@
+       $(AR) -x $< $@
+# 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 -Naur hurd-l4/libhurd-btree/CVS/Entries 
hurd-l4-new/libhurd-btree/CVS/Entries
--- hurd-l4/libhurd-btree/CVS/Entries   2005-07-13 18:31:29.166195992 +0200
+++ hurd-l4-new/libhurd-btree/CVS/Entries       2005-07-13 18:30:52.340794304 
+0200
@@ -1,7 +1,7 @@
-/ChangeLog/1.2/Thu Jan  6 16:51:22 2005//
-/Makefile.am/1.1/Sat Dec 25 14:57:32 2004//
-/btree-test.c/1.2/Thu Jan  6 16:51:22 2005//
-/btree.c/1.1/Sat Dec 25 14:57:32 2004//
-/btree.h/1.2/Thu Jan  6 16:51:22 2005//
-/headers.m4/1.1/Sat Dec 25 14:57:32 2004//
+/ChangeLog/1.2/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.1/Wed Jul 13 15:55:51 2005//
+/btree-test.c/1.2/Wed Jul 13 15:55:51 2005//
+/btree.c/1.1/Wed Jul 13 15:55:51 2005//
+/btree.h/1.2/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libhurd-btree/Makefile.in 
hurd-l4-new/libhurd-btree/Makefile.in
--- hurd-l4/libhurd-btree/Makefile.in   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libhurd-btree/Makefile.in       2005-07-13 18:30:52.340794304 
+0200
@@ -0,0 +1,515 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libhurd-btree.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Neal H. Walfield <address@hidden>.
+#
+# This file is part of the GNU Hurd.
+#
+# The GNU Hurd is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with the GNU Hurd; see the file COPYING.  If not, write to
+# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139,
+# USA.  */
+
+
+SOURCES = $(libhurd_btree_a_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libhurd-btree
+DIST_COMMON = $(includehurd_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/btree.h ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"
+libLIBRARIES_INSTALL = $(INSTALL_DATA)
+LIBRARIES = $(lib_LIBRARIES)
+ARFLAGS = cru
+libhurd_btree_a_AR = $(AR) $(ARFLAGS)
+libhurd_btree_a_LIBADD =
+am_libhurd_btree_a_OBJECTS = btree.$(OBJEXT)
+libhurd_btree_a_OBJECTS = $(am_libhurd_btree_a_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libhurd_btree_a_SOURCES)
+DIST_SOURCES = $(libhurd_btree_a_SOURCES)
+includehurdHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(includehurd_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+lib_LIBRARIES = libhurd-btree.a
+includehurddir = $(includedir)/hurd
+includehurd_HEADERS = btree.h
+AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/libc-parts
+libhurd_btree_a_SOURCES = btree.h btree.c
+EXTRA_DIST = btree-test.c
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libhurd-btree/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libhurd-btree/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLIBRARIES: $(lib_LIBRARIES)
+       @$(NORMAL_INSTALL)
+       test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           f=$(am__strip_dir) \
+           echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+           $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+         else :; fi; \
+       done
+       @$(POST_INSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           p=$(am__strip_dir) \
+           echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
+           $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+         else :; fi; \
+       done
+
+uninstall-libLIBRARIES:
+       @$(NORMAL_UNINSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         p=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+         rm -f "$(DESTDIR)$(libdir)/$$p"; \
+       done
+
+clean-libLIBRARIES:
+       -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+libhurd-btree.a: $(libhurd_btree_a_OBJECTS) $(libhurd_btree_a_DEPENDENCIES) 
+       -rm -f libhurd-btree.a
+       $(libhurd_btree_a_AR) libhurd-btree.a $(libhurd_btree_a_OBJECTS) 
$(libhurd_btree_a_LIBADD)
+       $(RANLIB) libhurd-btree.a
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+install-includehurdHEADERS: $(includehurd_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includehurddir)" || $(mkdir_p) "$(DESTDIR)$(includehurddir)"
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(includehurdHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includehurddir)/$$f'"; \
+         $(includehurdHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+uninstall-includehurdHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(includehurddir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES) $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-libLIBRARIES 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-includehurdHEADERS
+
+install-exec-am: install-libLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-libLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am \
+       install-includehurdHEADERS install-info install-info-am \
+       install-libLIBRARIES install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+# 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 -Naur hurd-l4/libhurd-cap/CVS/Entries hurd-l4-new/libhurd-cap/CVS/Entries
--- hurd-l4/libhurd-cap/CVS/Entries     2005-07-13 18:31:29.171195232 +0200
+++ hurd-l4-new/libhurd-cap/CVS/Entries 2005-07-13 18:30:52.341794152 +0200
@@ -1,9 +1,9 @@
-/ChangeLog/1.1/Fri Jan  7 10:27:50 2005//
-/Makefile.am/1.2/Sun Sep 21 18:12:46 2003//
-/cap-intern.h/1.1/Sat Aug 16 19:46:16 2003//
-/cap-move.c/1.4/Mon Sep 15 18:09:45 2003//
-/cap-user.c/1.9/Tue Mar 16 03:38:05 2004//
-/cap.c/1.7/Fri Jan  7 10:27:50 2005//
-/cap.h/1.6/Mon Sep 15 18:09:45 2003//
-/headers.m4/1.2/Mon Sep 22 21:32:25 2003//
+/ChangeLog/1.1/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.2/Wed Jul 13 15:55:51 2005//
+/cap-intern.h/1.1/Wed Jul 13 15:55:51 2005//
+/cap-move.c/1.4/Wed Jul 13 15:55:51 2005//
+/cap-user.c/1.9/Wed Jul 13 15:55:51 2005//
+/cap.c/1.7/Wed Jul 13 15:55:51 2005//
+/cap.h/1.6/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libhurd-cap/Makefile.in hurd-l4-new/libhurd-cap/Makefile.in
--- hurd-l4/libhurd-cap/Makefile.in     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libhurd-cap/Makefile.in 2005-07-13 18:30:52.342794000 +0200
@@ -0,0 +1,515 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libhurd-cap.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free
+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+
+SOURCES = $(libhurd_cap_a_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libhurd-cap
+DIST_COMMON = $(includehurd_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/cap.h ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"
+libLIBRARIES_INSTALL = $(INSTALL_DATA)
+LIBRARIES = $(lib_LIBRARIES)
+ARFLAGS = cru
+libhurd_cap_a_AR = $(AR) $(ARFLAGS)
+libhurd_cap_a_LIBADD =
+am_libhurd_cap_a_OBJECTS = cap.$(OBJEXT) cap-user.$(OBJEXT)
+libhurd_cap_a_OBJECTS = $(am_libhurd_cap_a_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libhurd_cap_a_SOURCES)
+DIST_SOURCES = $(libhurd_cap_a_SOURCES)
+includehurdHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(includehurd_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+lib_LIBRARIES = libhurd-cap.a
+includehurddir = $(includedir)/hurd
+includehurd_HEADERS = cap.h
+AM_CPPFLAGS = -I$(top_builddir)/include
+libhurd_cap_a_SOURCES = cap.h cap.c cap-user.c #cap-move.c
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libhurd-cap/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libhurd-cap/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLIBRARIES: $(lib_LIBRARIES)
+       @$(NORMAL_INSTALL)
+       test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           f=$(am__strip_dir) \
+           echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+           $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+         else :; fi; \
+       done
+       @$(POST_INSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           p=$(am__strip_dir) \
+           echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
+           $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+         else :; fi; \
+       done
+
+uninstall-libLIBRARIES:
+       @$(NORMAL_UNINSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         p=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+         rm -f "$(DESTDIR)$(libdir)/$$p"; \
+       done
+
+clean-libLIBRARIES:
+       -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+libhurd-cap.a: $(libhurd_cap_a_OBJECTS) $(libhurd_cap_a_DEPENDENCIES) 
+       -rm -f libhurd-cap.a
+       $(libhurd_cap_a_AR) libhurd-cap.a $(libhurd_cap_a_OBJECTS) 
$(libhurd_cap_a_LIBADD)
+       $(RANLIB) libhurd-cap.a
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+install-includehurdHEADERS: $(includehurd_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includehurddir)" || $(mkdir_p) "$(DESTDIR)$(includehurddir)"
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(includehurdHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includehurddir)/$$f'"; \
+         $(includehurdHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+uninstall-includehurdHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(includehurddir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES) $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-libLIBRARIES 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-includehurdHEADERS
+
+install-exec-am: install-libLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-libLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am \
+       install-includehurdHEADERS install-info install-info-am \
+       install-libLIBRARIES install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+# 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 -Naur hurd-l4/libhurd-cap-server/CVS/Entries 
hurd-l4-new/libhurd-cap-server/CVS/Entries
--- hurd-l4/libhurd-cap-server/CVS/Entries      2005-07-13 18:31:29.678118168 
+0200
+++ hurd-l4-new/libhurd-cap-server/CVS/Entries  2005-07-13 18:30:52.342794000 
+0200
@@ -1,32 +1,32 @@
-/ChangeLog/1.40/Tue Mar  8 17:39:09 2005//
-/Makefile.am/1.10/Tue Mar  8 17:39:09 2005//
-/README/1.6/Mon Jan 10 21:26:18 2005//
-/bucket-create.c/1.6/Thu Dec  2 17:46:51 2004//
-/bucket-free.c/1.2/Fri Apr  2 01:24:01 2004//
-/bucket-inhibit.c/1.3/Mon Nov  1 20:33:18 2004//
-/bucket-inject.c/1.5/Wed Dec  1 18:12:20 2004//
-/bucket-manage-mt.c/1.17/Tue Mar  8 17:39:09 2005//
-/bucket-worker-alloc.c/1.1/Mon Oct 25 15:27:29 2004//
-/cap-server-intern.h/1.12/Tue Mar  8 17:39:09 2005//
-/cap-server.h/1.15/Tue Mar  8 17:39:09 2005//
-/class-alloc.c/1.4/Mon Nov  1 20:54:00 2004//
-/class-create.c/1.6/Tue Nov 30 17:47:08 2004//
-/class-destroy.c/1.3/Thu Apr  1 01:50:40 2004//
-/class-free.c/1.1/Thu Apr  1 01:50:40 2004//
-/class-inhibit.c/1.3/Thu Apr  8 00:40:38 2004//
-/class-init.c/1.6/Wed Jan 12 10:33:39 2005//
-/client-create.c/1.10/Fri Jan  7 10:27:50 2005//
-/client-inhibit.c/1.4/Tue Oct 19 18:32:10 2004//
-/client-release.c/1.7/Thu Dec  2 17:46:51 2004//
-/ctx-cap-use.c/1.1/Tue Mar  8 17:39:09 2005//
-/headers.m4/1.4/Thu Apr  1 01:50:39 2004//
-/obj-copy-out.c/1.5/Wed Dec  1 18:12:20 2004//
-/obj-dealloc.c/1.2/Fri Oct 29 03:18:50 2004//
-/obj-drop.c/1.1/Thu Apr  1 01:50:39 2004//
-/obj-entry-space.c/1.2/Fri Jan  7 10:27:50 2005//
-/obj-inhibit.c/1.4/Tue Oct 19 18:32:10 2004//
-/table.c/1.4/Mon Nov  1 16:39:24 2004//
-/table.h/1.4/Mon Nov  1 16:39:24 2004//
-/task-death.c/1.2/Thu Apr  8 00:40:38 2004//
-/task-death.h/1.2/Thu Mar 25 16:09:59 2004//
+/ChangeLog/1.40/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.10/Wed Jul 13 15:55:51 2005//
+/README/1.6/Wed Jul 13 15:55:51 2005//
+/bucket-create.c/1.6/Wed Jul 13 15:55:51 2005//
+/bucket-free.c/1.2/Wed Jul 13 15:55:51 2005//
+/bucket-inhibit.c/1.3/Wed Jul 13 15:55:51 2005//
+/bucket-inject.c/1.5/Wed Jul 13 15:55:51 2005//
+/bucket-manage-mt.c/1.17/Wed Jul 13 15:55:51 2005//
+/bucket-worker-alloc.c/1.1/Wed Jul 13 15:55:51 2005//
+/cap-server-intern.h/1.12/Wed Jul 13 15:55:51 2005//
+/cap-server.h/1.15/Wed Jul 13 15:55:51 2005//
+/class-alloc.c/1.4/Wed Jul 13 15:55:51 2005//
+/class-create.c/1.6/Wed Jul 13 15:55:51 2005//
+/class-destroy.c/1.3/Wed Jul 13 15:55:51 2005//
+/class-free.c/1.1/Wed Jul 13 15:55:51 2005//
+/class-inhibit.c/1.3/Wed Jul 13 15:55:51 2005//
+/class-init.c/1.6/Wed Jul 13 15:55:51 2005//
+/client-create.c/1.10/Wed Jul 13 15:55:51 2005//
+/client-inhibit.c/1.4/Wed Jul 13 15:55:51 2005//
+/client-release.c/1.7/Wed Jul 13 15:55:51 2005//
+/ctx-cap-use.c/1.1/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.4/Wed Jul 13 15:55:51 2005//
+/obj-copy-out.c/1.5/Wed Jul 13 15:55:51 2005//
+/obj-dealloc.c/1.2/Wed Jul 13 15:55:51 2005//
+/obj-drop.c/1.1/Wed Jul 13 15:55:51 2005//
+/obj-entry-space.c/1.2/Wed Jul 13 15:55:51 2005//
+/obj-inhibit.c/1.4/Wed Jul 13 15:55:51 2005//
+/table.c/1.4/Wed Jul 13 15:55:51 2005//
+/table.h/1.4/Wed Jul 13 15:55:51 2005//
+/task-death.c/1.2/Wed Jul 13 15:55:51 2005//
+/task-death.h/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libhurd-cap-server/Makefile.in 
hurd-l4-new/libhurd-cap-server/Makefile.in
--- hurd-l4/libhurd-cap-server/Makefile.in      1970-01-01 01:00:00.000000000 
+0100
+++ hurd-l4-new/libhurd-cap-server/Makefile.in  2005-07-13 18:30:52.358791568 
+0200
@@ -0,0 +1,561 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libhurd-cap-server.
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free
+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+
+SOURCES = $(libhurd_cap_server_a_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libhurd-cap-server
+DIST_COMMON = README $(includehurd_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/cap-server.h ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"
+libLIBRARIES_INSTALL = $(INSTALL_DATA)
+LIBRARIES = $(lib_LIBRARIES)
+ARFLAGS = cru
+libhurd_cap_server_a_AR = $(AR) $(ARFLAGS)
+libhurd_cap_server_a_LIBADD =
+am_libhurd_cap_server_a_OBJECTS = table.$(OBJEXT) task-death.$(OBJEXT) \
+       class-init.$(OBJEXT) class-create.$(OBJEXT) \
+       class-destroy.$(OBJEXT) class-free.$(OBJEXT) \
+       class-alloc.$(OBJEXT) class-inhibit.$(OBJEXT) \
+       obj-dealloc.$(OBJEXT) obj-drop.$(OBJEXT) obj-inhibit.$(OBJEXT) \
+       obj-entry-space.$(OBJEXT) obj-copy-out.$(OBJEXT) \
+       client-create.$(OBJEXT) client-release.$(OBJEXT) \
+       client-inhibit.$(OBJEXT) bucket-create.$(OBJEXT) \
+       bucket-free.$(OBJEXT) bucket-inhibit.$(OBJEXT) \
+       bucket-manage-mt.$(OBJEXT) bucket-worker-alloc.$(OBJEXT) \
+       bucket-inject.$(OBJEXT) ctx-cap-use.$(OBJEXT)
+libhurd_cap_server_a_OBJECTS = $(am_libhurd_cap_server_a_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libhurd_cap_server_a_SOURCES)
+DIST_SOURCES = $(libhurd_cap_server_a_SOURCES)
+includehurdHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(includehurd_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+lib_LIBRARIES = libhurd-cap-server.a
+includehurddir = $(includedir)/hurd
+includehurd_HEADERS = cap-server.h
+
+# FIXME: Build a special libhurd-ihash.a using libc-parts for the rootservers,
+# and a normal for everybody else.
+AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/libc-parts
+AM_CFLAGS = -std=gnu99
+libhurd_cap_server_a_SOURCES = table.h table.c                         \
+       task-death.h task-death.c                                       \
+       cap-server-intern.h class-init.c class-create.c                 \
+       class-destroy.c class-free.c                                    \
+       class-alloc.c class-inhibit.c                                   \
+       obj-dealloc.c obj-drop.c obj-inhibit.c                          \
+       obj-entry-space.c obj-copy-out.c                                \
+       client-create.c client-release.c client-inhibit.c               \
+       bucket-create.c bucket-free.c bucket-inhibit.c                  \
+       bucket-manage-mt.c bucket-worker-alloc.c bucket-inject.c        \
+       ctx-cap-use.c
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  
libhurd-cap-server/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libhurd-cap-server/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLIBRARIES: $(lib_LIBRARIES)
+       @$(NORMAL_INSTALL)
+       test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           f=$(am__strip_dir) \
+           echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+           $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+         else :; fi; \
+       done
+       @$(POST_INSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           p=$(am__strip_dir) \
+           echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
+           $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+         else :; fi; \
+       done
+
+uninstall-libLIBRARIES:
+       @$(NORMAL_UNINSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         p=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+         rm -f "$(DESTDIR)$(libdir)/$$p"; \
+       done
+
+clean-libLIBRARIES:
+       -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+libhurd-cap-server.a: $(libhurd_cap_server_a_OBJECTS) 
$(libhurd_cap_server_a_DEPENDENCIES) 
+       -rm -f libhurd-cap-server.a
+       $(libhurd_cap_server_a_AR) libhurd-cap-server.a 
$(libhurd_cap_server_a_OBJECTS) $(libhurd_cap_server_a_LIBADD)
+       $(RANLIB) libhurd-cap-server.a
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+install-includehurdHEADERS: $(includehurd_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includehurddir)" || $(mkdir_p) "$(DESTDIR)$(includehurddir)"
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(includehurdHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includehurddir)/$$f'"; \
+         $(includehurdHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+uninstall-includehurdHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(includehurddir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES) $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-libLIBRARIES 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-includehurdHEADERS
+
+install-exec-am: install-libLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-libLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am \
+       install-includehurdHEADERS install-info install-info-am \
+       install-libLIBRARIES install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+# 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 -Naur hurd-l4/libhurd-ihash/CVS/Entries 
hurd-l4-new/libhurd-ihash/CVS/Entries
--- hurd-l4/libhurd-ihash/CVS/Entries   2005-07-13 18:31:29.810098104 +0200
+++ hurd-l4-new/libhurd-ihash/CVS/Entries       2005-07-13 18:30:52.359791416 
+0200
@@ -1,6 +1,6 @@
-/ChangeLog/1.8/Wed Apr 21 21:35:39 2004//
-/Makefile.am/1.4/Fri Mar 19 23:50:17 2004//
-/headers.m4/1.3/Mon Sep 22 21:35:37 2003//
-/ihash.c/1.7/Fri Apr  9 14:39:36 2004//
-/ihash.h/1.11/Wed Apr 21 21:35:39 2004//
+/ChangeLog/1.8/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.4/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.3/Wed Jul 13 15:55:51 2005//
+/ihash.c/1.7/Wed Jul 13 15:55:51 2005//
+/ihash.h/1.11/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libhurd-ihash/Makefile.in 
hurd-l4-new/libhurd-ihash/Makefile.in
--- hurd-l4/libhurd-ihash/Makefile.in   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libhurd-ihash/Makefile.in       2005-07-13 18:30:52.360791264 
+0200
@@ -0,0 +1,518 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libhurd-ihash.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free
+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+
+SOURCES = $(libhurd_ihash_a_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libhurd-ihash
+DIST_COMMON = $(includehurd_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/ihash.h ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"
+libLIBRARIES_INSTALL = $(INSTALL_DATA)
+LIBRARIES = $(lib_LIBRARIES)
+ARFLAGS = cru
+libhurd_ihash_a_AR = $(AR) $(ARFLAGS)
+libhurd_ihash_a_LIBADD =
+am_libhurd_ihash_a_OBJECTS = ihash.$(OBJEXT)
+libhurd_ihash_a_OBJECTS = $(am_libhurd_ihash_a_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libhurd_ihash_a_SOURCES)
+DIST_SOURCES = $(libhurd_ihash_a_SOURCES)
+includehurdHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(includehurd_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+lib_LIBRARIES = libhurd-ihash.a
+includehurddir = $(includedir)/hurd
+includehurd_HEADERS = ihash.h
+
+# FIXME: Build a special libhurd-ihash.a using libc-parts for the rootservers,
+# and a normal for everybody else.
+AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/libc-parts
+AM_CFLAGS = -std=gnu99
+libhurd_ihash_a_SOURCES = ihash.h ihash.c
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libhurd-ihash/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libhurd-ihash/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLIBRARIES: $(lib_LIBRARIES)
+       @$(NORMAL_INSTALL)
+       test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           f=$(am__strip_dir) \
+           echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+           $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+         else :; fi; \
+       done
+       @$(POST_INSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           p=$(am__strip_dir) \
+           echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
+           $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+         else :; fi; \
+       done
+
+uninstall-libLIBRARIES:
+       @$(NORMAL_UNINSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         p=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+         rm -f "$(DESTDIR)$(libdir)/$$p"; \
+       done
+
+clean-libLIBRARIES:
+       -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+libhurd-ihash.a: $(libhurd_ihash_a_OBJECTS) $(libhurd_ihash_a_DEPENDENCIES) 
+       -rm -f libhurd-ihash.a
+       $(libhurd_ihash_a_AR) libhurd-ihash.a $(libhurd_ihash_a_OBJECTS) 
$(libhurd_ihash_a_LIBADD)
+       $(RANLIB) libhurd-ihash.a
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+install-includehurdHEADERS: $(includehurd_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includehurddir)" || $(mkdir_p) "$(DESTDIR)$(includehurddir)"
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(includehurdHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includehurddir)/$$f'"; \
+         $(includehurdHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+uninstall-includehurdHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(includehurddir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES) $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-libLIBRARIES 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-includehurdHEADERS
+
+install-exec-am: install-libLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-libLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am \
+       install-includehurdHEADERS install-info install-info-am \
+       install-libLIBRARIES install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+# 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 -Naur hurd-l4/libhurd-mm/CVS/Entries hurd-l4-new/libhurd-mm/CVS/Entries
--- hurd-l4/libhurd-mm/CVS/Entries      2005-07-13 18:31:29.911082752 +0200
+++ hurd-l4-new/libhurd-mm/CVS/Entries  2005-07-13 18:30:52.360791264 +0200
@@ -1,20 +1,20 @@
-/ChangeLog/1.5/Wed Apr  6 16:30:37 2005//
-/Makefile.am/1.2/Wed Apr  6 16:30:37 2005//
-/README/1.1/Tue Jan 11 18:15:26 2005//
-/anonymous.c/1.1/Wed Apr  6 16:30:37 2005//
-/anonymous.h/1.1/Wed Apr  6 16:30:37 2005//
-/as.c/1.1/Wed Apr  6 16:30:37 2005//
-/core.c/1.1/Wed Apr  6 16:30:37 2005//
-/headers.m4/1.2/Wed Apr  6 16:30:37 2005//
-/map.c/1.3/Wed Apr  6 16:30:37 2005//
-/memory.c/1.1/Wed Apr  6 16:30:37 2005//
-/mm-init.c/1.2/Wed Apr  6 16:30:37 2005//
-/mm.h/1.2/Wed Apr  6 16:30:37 2005//
-/pager.c/1.3/Wed Apr  6 16:30:37 2005//
-/physmem-user.c/1.4/Wed Apr  6 16:30:37 2005//
-/physmem-user.h/1.3/Wed Apr  6 16:30:37 2005//
-/priv.h/1.2/Wed Apr  6 16:30:37 2005//
-/store.c/1.1/Wed Apr  6 16:30:37 2005//
-/vm.c/1.2/Wed Apr  6 16:30:37 2005//
-/vm.h/1.2/Wed Apr  6 16:30:37 2005//
+/ChangeLog/1.5/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.2/Wed Jul 13 15:55:51 2005//
+/README/1.1/Wed Jul 13 15:55:51 2005//
+/anonymous.c/1.1/Wed Jul 13 15:55:51 2005//
+/anonymous.h/1.1/Wed Jul 13 15:55:51 2005//
+/as.c/1.1/Wed Jul 13 15:55:51 2005//
+/core.c/1.1/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.2/Wed Jul 13 15:55:51 2005//
+/map.c/1.3/Wed Jul 13 15:55:51 2005//
+/memory.c/1.1/Wed Jul 13 15:55:51 2005//
+/mm-init.c/1.2/Wed Jul 13 15:55:51 2005//
+/mm.h/1.2/Wed Jul 13 15:55:51 2005//
+/pager.c/1.3/Wed Jul 13 15:55:51 2005//
+/physmem-user.c/1.4/Wed Jul 13 15:55:51 2005//
+/physmem-user.h/1.3/Wed Jul 13 15:55:51 2005//
+/priv.h/1.2/Wed Jul 13 15:55:51 2005//
+/store.c/1.1/Wed Jul 13 15:55:51 2005//
+/vm.c/1.2/Wed Jul 13 15:55:51 2005//
+/vm.h/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libhurd-mm/Makefile.in hurd-l4-new/libhurd-mm/Makefile.in
--- hurd-l4/libhurd-mm/Makefile.in      1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libhurd-mm/Makefile.in  2005-07-13 18:30:52.361791112 +0200
@@ -0,0 +1,536 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libhurd-mm.
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+# Written by Neal H. Walfield
+#
+# This file is part of the GNU Hurd.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free
+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+
+SOURCES = $(libhurd_mm_a_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libhurd-mm
+DIST_COMMON = README $(includehurd_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/anonymous.h $(srcdir)/mm.h \
+       $(srcdir)/vm.h ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"
+libLIBRARIES_INSTALL = $(INSTALL_DATA)
+LIBRARIES = $(lib_LIBRARIES)
+ARFLAGS = cru
+libhurd_mm_a_AR = $(AR) $(ARFLAGS)
+libhurd_mm_a_LIBADD =
+am_libhurd_mm_a_OBJECTS = mm-init.$(OBJEXT) as.$(OBJEXT) vm.$(OBJEXT) \
+       store.$(OBJEXT) map.$(OBJEXT) memory.$(OBJEXT) pager.$(OBJEXT) \
+       core.$(OBJEXT) anonymous.$(OBJEXT) physmem-user.$(OBJEXT)
+libhurd_mm_a_OBJECTS = $(am_libhurd_mm_a_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libhurd_mm_a_SOURCES)
+DIST_SOURCES = $(libhurd_mm_a_SOURCES)
+includehurdHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(includehurd_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+lib_LIBRARIES = libhurd-mm.a
+includehurddir = $(includedir)/hurd
+includehurd_HEADERS = mm.h vm.h
+AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/libc-parts
+AM_CFLAGS = 
+libhurd_mm_a_SOURCES = mm.h mm-init.c          \
+       as.c                                    \
+       vm.h vm.c                               \
+       priv.h                                  \
+       store.c map.c memory.c                  \
+       pager.c                                 \
+       core.c                                  \
+       anonymous.c anonymous.h                 \
+       physmem-user.h physmem-user.c
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libhurd-mm/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libhurd-mm/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLIBRARIES: $(lib_LIBRARIES)
+       @$(NORMAL_INSTALL)
+       test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           f=$(am__strip_dir) \
+           echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+           $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+         else :; fi; \
+       done
+       @$(POST_INSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           p=$(am__strip_dir) \
+           echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
+           $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+         else :; fi; \
+       done
+
+uninstall-libLIBRARIES:
+       @$(NORMAL_UNINSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         p=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+         rm -f "$(DESTDIR)$(libdir)/$$p"; \
+       done
+
+clean-libLIBRARIES:
+       -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+libhurd-mm.a: $(libhurd_mm_a_OBJECTS) $(libhurd_mm_a_DEPENDENCIES) 
+       -rm -f libhurd-mm.a
+       $(libhurd_mm_a_AR) libhurd-mm.a $(libhurd_mm_a_OBJECTS) 
$(libhurd_mm_a_LIBADD)
+       $(RANLIB) libhurd-mm.a
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+install-includehurdHEADERS: $(includehurd_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includehurddir)" || $(mkdir_p) "$(DESTDIR)$(includehurddir)"
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(includehurdHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includehurddir)/$$f'"; \
+         $(includehurdHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+uninstall-includehurdHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(includehurddir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES) $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-libLIBRARIES 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-includehurdHEADERS
+
+install-exec-am: install-libLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-libLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am \
+       install-includehurdHEADERS install-info install-info-am \
+       install-libLIBRARIES install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+# 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 -Naur hurd-l4/libhurd-slab/CVS/Entries hurd-l4-new/libhurd-slab/CVS/Entries
--- hurd-l4/libhurd-slab/CVS/Entries    2005-07-13 18:31:30.042062840 +0200
+++ hurd-l4-new/libhurd-slab/CVS/Entries        2005-07-13 18:30:52.361791112 
+0200
@@ -1,7 +1,7 @@
-/ChangeLog/1.14/Wed Jun 22 10:18:09 2005//
-/Makefile.am/1.2/Sun Mar 21 17:35:36 2004//
-/README/1.4/Fri Jan  7 10:27:50 2005//
-/headers.m4/1.4/Mon Sep 22 21:34:23 2003//
-/slab.c/1.15/Fri Jan  7 10:27:50 2005//
-/slab.h/1.12/Wed Jun 22 10:18:09 2005//
+/ChangeLog/1.14/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.2/Wed Jul 13 15:55:51 2005//
+/README/1.4/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.4/Wed Jul 13 15:55:51 2005//
+/slab.c/1.15/Wed Jul 13 15:55:51 2005//
+/slab.h/1.12/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libhurd-slab/Makefile.in hurd-l4-new/libhurd-slab/Makefile.in
--- hurd-l4/libhurd-slab/Makefile.in    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libhurd-slab/Makefile.in        2005-07-13 18:30:52.362790960 
+0200
@@ -0,0 +1,517 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libhurd-slab.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free
+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+
+SOURCES = $(libhurd_slab_a_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libhurd-slab
+DIST_COMMON = README $(includehurd_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/slab.h ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"
+libLIBRARIES_INSTALL = $(INSTALL_DATA)
+LIBRARIES = $(lib_LIBRARIES)
+ARFLAGS = cru
+libhurd_slab_a_AR = $(AR) $(ARFLAGS)
+libhurd_slab_a_LIBADD =
+am_libhurd_slab_a_OBJECTS = slab.$(OBJEXT)
+libhurd_slab_a_OBJECTS = $(am_libhurd_slab_a_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libhurd_slab_a_SOURCES)
+DIST_SOURCES = $(libhurd_slab_a_SOURCES)
+includehurdHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(includehurd_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+lib_LIBRARIES = libhurd-slab.a
+includehurddir = $(includedir)/hurd
+includehurd_HEADERS = slab.h
+
+# FIXME: Build a special libhurd-ihash.a using libc-parts for the rootservers,
+# and a normal for everybody else.
+AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/libc-parts
+libhurd_slab_a_SOURCES = slab.h slab.c
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libhurd-slab/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libhurd-slab/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLIBRARIES: $(lib_LIBRARIES)
+       @$(NORMAL_INSTALL)
+       test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           f=$(am__strip_dir) \
+           echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+           $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+         else :; fi; \
+       done
+       @$(POST_INSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           p=$(am__strip_dir) \
+           echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
+           $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+         else :; fi; \
+       done
+
+uninstall-libLIBRARIES:
+       @$(NORMAL_UNINSTALL)
+       @list='$(lib_LIBRARIES)'; for p in $$list; do \
+         p=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+         rm -f "$(DESTDIR)$(libdir)/$$p"; \
+       done
+
+clean-libLIBRARIES:
+       -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+libhurd-slab.a: $(libhurd_slab_a_OBJECTS) $(libhurd_slab_a_DEPENDENCIES) 
+       -rm -f libhurd-slab.a
+       $(libhurd_slab_a_AR) libhurd-slab.a $(libhurd_slab_a_OBJECTS) 
$(libhurd_slab_a_LIBADD)
+       $(RANLIB) libhurd-slab.a
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+install-includehurdHEADERS: $(includehurd_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includehurddir)" || $(mkdir_p) "$(DESTDIR)$(includehurddir)"
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(includehurdHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includehurddir)/$$f'"; \
+         $(includehurdHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+uninstall-includehurdHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(includehurd_HEADERS)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(includehurddir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includehurddir)/$$f"; \
+       done
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES) $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includehurddir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-libLIBRARIES 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-includehurdHEADERS
+
+install-exec-am: install-libLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-libLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am \
+       install-includehurdHEADERS install-info install-info-am \
+       install-libLIBRARIES install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-includehurdHEADERS uninstall-info-am \
+       uninstall-libLIBRARIES
+
+# 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 -Naur hurd-l4/libl4/CVS/Entries hurd-l4-new/libl4/CVS/Entries
--- hurd-l4/libl4/CVS/Entries   2005-07-13 18:31:34.612368048 +0200
+++ hurd-l4-new/libl4/CVS/Entries       2005-07-13 18:30:52.362790960 +0200
@@ -1,10 +1,10 @@
-/ChangeLog/1.88/Thu Apr  7 11:14:50 2005//
-/Makefile.am/1.10/Wed Feb  9 04:12:31 2005//
-/README/1.11/Wed Feb  9 04:12:31 2005//
-/TODO/1.5/Wed Feb  9 04:12:31 2005//
-/headers.m4/1.8/Sat Jan 22 02:19:59 2005//
-/l4.h/1.5/Sat Jan 22 02:19:59 2005//
 D/ia32////
 D/l4////
 D/powerpc////
 D/tests////
+/ChangeLog/1.88/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.10/Wed Jul 13 15:55:51 2005//
+/README/1.11/Wed Jul 13 15:55:51 2005//
+/TODO/1.5/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.8/Wed Jul 13 15:55:51 2005//
+/l4.h/1.5/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libl4/ia32/CVS/Entries hurd-l4-new/libl4/ia32/CVS/Entries
--- hurd-l4/libl4/ia32/CVS/Entries      2005-07-13 18:31:34.611368200 +0200
+++ hurd-l4-new/libl4/ia32/CVS/Entries  2005-07-13 18:30:52.363790808 +0200
@@ -1,2 +1,2 @@
-/Makefile.am/1.5/Sat Jan 22 02:19:59 2005//
 D/l4////
+/Makefile.am/1.5/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libl4/ia32/l4/bits/compat/CVS/Entries 
hurd-l4-new/libl4/ia32/l4/bits/compat/CVS/Entries
--- hurd-l4/libl4/ia32/l4/bits/compat/CVS/Entries       2005-07-13 
18:31:30.253030768 +0200
+++ hurd-l4-new/libl4/ia32/l4/bits/compat/CVS/Entries   2005-07-13 
18:30:52.363790808 +0200
@@ -1,5 +1,5 @@
-/arch.h/1.1/Sat Jan 22 02:19:59 2005//
-/ipc.h/1.1/Tue Mar 16 03:34:03 2004//
-/misc.h/1.1/Tue Mar 16 03:34:03 2004//
-/space.h/1.1/Tue Mar 16 03:34:03 2004//
+/arch.h/1.1/Wed Jul 13 15:55:51 2005//
+/ipc.h/1.1/Wed Jul 13 15:55:51 2005//
+/misc.h/1.1/Wed Jul 13 15:55:51 2005//
+/space.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libl4/ia32/l4/bits/CVS/Entries 
hurd-l4-new/libl4/ia32/l4/bits/CVS/Entries
--- hurd-l4/libl4/ia32/l4/bits/CVS/Entries      2005-07-13 18:31:34.610368352 
+0200
+++ hurd-l4-new/libl4/ia32/l4/bits/CVS/Entries  2005-07-13 18:30:52.363790808 
+0200
@@ -1,13 +1,13 @@
-/arch.h/1.2/Thu Jan 27 04:13:47 2005//
-/ipc.h/1.4/Tue Mar 16 03:34:03 2004//
-/kip.h/1.4/Tue Mar 16 03:34:03 2004//
-/math.h/1.6/Tue Mar 16 03:34:03 2004//
-/misc.h/1.4/Tue Mar 16 03:34:03 2004//
-/space.h/1.5/Tue Mar 16 03:34:03 2004//
-/stubs-init.h/1.5/Sat Jan 22 02:19:59 2005//
-/stubs.h/1.4/Sat Jan 22 02:19:59 2005//
-/syscall.h/1.10/Wed Feb  9 04:12:31 2005//
-/types.h/1.5/Mon Mar 29 23:23:30 2004//
-/vregs.h/1.9/Tue Feb 15 18:27:46 2005//
 D/compat////
 D/gnu////
+/arch.h/1.2/Wed Jul 13 15:55:51 2005//
+/ipc.h/1.4/Wed Jul 13 15:55:51 2005//
+/kip.h/1.4/Wed Jul 13 15:55:51 2005//
+/math.h/1.6/Wed Jul 13 15:55:51 2005//
+/misc.h/1.4/Wed Jul 13 15:55:51 2005//
+/space.h/1.5/Wed Jul 13 15:55:51 2005//
+/stubs-init.h/1.5/Wed Jul 13 15:55:51 2005//
+/stubs.h/1.4/Wed Jul 13 15:55:51 2005//
+/syscall.h/1.10/Wed Jul 13 15:55:51 2005//
+/types.h/1.5/Wed Jul 13 15:55:51 2005//
+/vregs.h/1.9/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libl4/ia32/l4/bits/gnu/CVS/Entries 
hurd-l4-new/libl4/ia32/l4/bits/gnu/CVS/Entries
--- hurd-l4/libl4/ia32/l4/bits/gnu/CVS/Entries  2005-07-13 18:31:30.257030160 
+0200
+++ hurd-l4-new/libl4/ia32/l4/bits/gnu/CVS/Entries      2005-07-13 
18:30:52.364790656 +0200
@@ -1,6 +1,6 @@
-/arch.h/1.1/Sat Jan 22 02:19:59 2005//
-/ipc.h/1.1/Tue Mar 16 03:34:03 2004//
-/kip.h/1.1/Tue Mar 16 03:34:03 2004//
-/misc.h/1.1/Tue Mar 16 03:34:03 2004//
-/space.h/1.2/Sun Mar 21 17:36:47 2004//
+/arch.h/1.1/Wed Jul 13 15:55:51 2005//
+/ipc.h/1.1/Wed Jul 13 15:55:51 2005//
+/kip.h/1.1/Wed Jul 13 15:55:51 2005//
+/misc.h/1.1/Wed Jul 13 15:55:51 2005//
+/space.h/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libl4/ia32/Makefile.in hurd-l4-new/libl4/ia32/Makefile.in
--- hurd-l4/libl4/ia32/Makefile.in      1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libl4/ia32/Makefile.in  2005-07-13 18:30:52.364790656 +0200
@@ -0,0 +1,442 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libl4/ia32.
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libl4/ia32
+DIST_COMMON = $(nobase_include_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(includedir)"
+nobase_includeHEADERS_INSTALL = $(install_sh_DATA)
+HEADERS = $(nobase_include_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+nobase_include_HEADERS = l4/bits/types.h                       \
+       l4/bits/math.h l4/bits/vregs.h l4/bits/syscall.h        \
+       l4/bits/stubs.h l4/bits/stubs-init.h                    \
+       l4/bits/kip.h l4/bits/space.h l4/bits/ipc.h             \
+       l4/bits/misc.h  l4/bits/arch.h                          \
+       l4/bits/compat/ipc.h l4/bits/compat/misc.h              \
+       l4/bits/compat/space.h l4/bits/compat/arch.h            \
+       l4/bits/gnu/ipc.h l4/bits/gnu/kip.h l4/bits/gnu/misc.h  \
+       l4/bits/gnu/space.h l4/bits/gnu/arch.h
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libl4/ia32/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libl4/ia32/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-nobase_includeHEADERS: $(nobase_include_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includedir)" || $(mkdir_p) "$(DESTDIR)$(includedir)"
+       @$(am__vpath_adj_setup) \
+       list='$(nobase_include_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         $(am__vpath_adj) \
+         echo " $(nobase_includeHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includedir)/$$f'"; \
+         $(nobase_includeHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includedir)/$$f"; \
+       done
+
+uninstall-nobase_includeHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @$(am__vpath_adj_setup) \
+       list='$(nobase_include_HEADERS)'; for p in $$list; do \
+         $(am__vpath_adj) \
+         echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includedir)/$$f"; \
+       done
+
+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)
+       $(mkdir_p) $(distdir)/l4/bits $(distdir)/l4/bits/compat 
$(distdir)/l4/bits/gnu
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(includedir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-nobase_includeHEADERS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-nobase_includeHEADERS
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man \
+       install-nobase_includeHEADERS install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-am \
+       uninstall-nobase_includeHEADERS
+
+# 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 -Naur hurd-l4/libl4/l4/compat/CVS/Entries 
hurd-l4-new/libl4/l4/compat/CVS/Entries
--- hurd-l4/libl4/l4/compat/CVS/Entries 2005-07-13 18:31:30.555984712 +0200
+++ hurd-l4-new/libl4/l4/compat/CVS/Entries     2005-07-13 18:30:52.365790504 
+0200
@@ -1,11 +1,11 @@
-/ipc.h/1.1/Tue Mar 16 03:34:03 2004//
-/kip.h/1.2/Thu Feb 10 04:08:24 2005//
-/message.h/1.1/Tue Mar 16 03:34:03 2004//
-/misc.h/1.2/Thu Oct  7 17:56:25 2004//
-/schedule.h/1.2/Wed Oct  6 19:05:42 2004//
-/sigma0.h/1.2/Wed Feb 23 00:31:38 2005//
-/space.h/1.7/Thu Feb 24 01:09:46 2005//
-/syscall.h/1.2/Wed Oct  6 15:13:02 2004//
-/thread.h/1.3/Thu Oct 28 03:55:34 2004//
-/types.h/1.6/Thu Oct 28 03:55:34 2004//
+/ipc.h/1.1/Wed Jul 13 15:55:51 2005//
+/kip.h/1.2/Wed Jul 13 15:55:51 2005//
+/message.h/1.1/Wed Jul 13 15:55:51 2005//
+/misc.h/1.2/Wed Jul 13 15:55:51 2005//
+/schedule.h/1.2/Wed Jul 13 15:55:51 2005//
+/sigma0.h/1.2/Wed Jul 13 15:55:51 2005//
+/space.h/1.7/Wed Jul 13 15:55:51 2005//
+/syscall.h/1.2/Wed Jul 13 15:55:51 2005//
+/thread.h/1.3/Wed Jul 13 15:55:51 2005//
+/types.h/1.6/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libl4/l4/CVS/Entries hurd-l4-new/libl4/l4/CVS/Entries
--- hurd-l4/libl4/l4/CVS/Entries        2005-07-13 18:31:34.610368352 +0200
+++ hurd-l4-new/libl4/l4/CVS/Entries    2005-07-13 18:30:52.365790504 +0200
@@ -1,22 +1,22 @@
-/arch.h/1.1/Sat Jan 22 02:19:59 2005//
-/features.h/1.1/Tue Mar 16 03:34:03 2004//
-/globals.h/1.3/Tue Mar 16 03:34:03 2004//
-/init.h/1.3/Tue Mar 16 03:34:03 2004//
-/ipc.h/1.12/Thu Apr  7 11:14:49 2005//
-/kip.h/1.12/Thu Feb 10 04:08:24 2005//
-/math.h/1.6/Mon Mar 29 23:23:30 2004//
-/message.h/1.1/Tue Mar 16 03:34:03 2004//
-/misc.h/1.5/Wed Feb  9 04:07:00 2005//
-/pagefault.h/1.2/Wed Feb  9 04:07:00 2005//
-/schedule.h/1.7/Tue Feb  8 01:31:34 2005//
-/sigma0.h/1.2/Wed Feb 23 00:31:39 2005//
-/space.h/1.8/Wed Oct  6 15:13:02 2004//
-/stubs-init.h/1.3/Tue Mar 16 03:34:03 2004//
-/stubs.h/1.3/Tue Mar 16 03:34:03 2004//
-/syscall.h/1.7/Tue Feb 22 22:14:31 2005//
-/thread-start.h/1.2/Sat Apr 10 03:46:11 2004//
-/thread.h/1.9/Wed Oct  6 19:05:43 2004//
-/types.h/1.10/Mon Mar 29 23:23:30 2004//
-/vregs.h/1.2/Tue Mar 16 03:34:03 2004//
 D/compat////
 D/gnu////
+/arch.h/1.1/Wed Jul 13 15:55:51 2005//
+/features.h/1.1/Wed Jul 13 15:55:51 2005//
+/globals.h/1.3/Wed Jul 13 15:55:51 2005//
+/init.h/1.3/Wed Jul 13 15:55:51 2005//
+/ipc.h/1.12/Wed Jul 13 15:55:51 2005//
+/kip.h/1.12/Wed Jul 13 15:55:51 2005//
+/math.h/1.6/Wed Jul 13 15:55:51 2005//
+/message.h/1.1/Wed Jul 13 15:55:51 2005//
+/misc.h/1.5/Wed Jul 13 15:55:51 2005//
+/pagefault.h/1.2/Wed Jul 13 15:55:51 2005//
+/schedule.h/1.7/Wed Jul 13 15:55:51 2005//
+/sigma0.h/1.2/Wed Jul 13 15:55:51 2005//
+/space.h/1.8/Wed Jul 13 15:55:51 2005//
+/stubs-init.h/1.3/Wed Jul 13 15:55:51 2005//
+/stubs.h/1.3/Wed Jul 13 15:55:51 2005//
+/syscall.h/1.7/Wed Jul 13 15:55:51 2005//
+/thread-start.h/1.2/Wed Jul 13 15:55:51 2005//
+/thread.h/1.9/Wed Jul 13 15:55:51 2005//
+/types.h/1.10/Wed Jul 13 15:55:51 2005//
+/vregs.h/1.2/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libl4/l4/gnu/CVS/Entries hurd-l4-new/libl4/l4/gnu/CVS/Entries
--- hurd-l4/libl4/l4/gnu/CVS/Entries    2005-07-13 18:31:30.697963128 +0200
+++ hurd-l4-new/libl4/l4/gnu/CVS/Entries        2005-07-13 18:30:52.366790352 
+0200
@@ -1,14 +1,14 @@
-/ipc.h/1.12/Sat Jan 22 18:19:10 2005//
-/kip.h/1.5/Thu Feb 10 04:08:23 2005//
-/math.h/1.1/Tue Mar 16 03:34:03 2004//
-/message.h/1.1/Tue Mar 16 03:34:03 2004//
-/misc.h/1.2/Thu Oct  7 17:56:08 2004//
-/pagefault.h/1.1/Sat Apr 10 03:53:45 2004//
-/schedule.h/1.6/Tue Feb  8 01:30:08 2005//
-/sigma0.h/1.2/Wed Feb 23 00:31:38 2005//
-/space.h/1.9/Fri Jan 21 21:12:36 2005//
-/syscall.h/1.3/Tue Feb 22 22:14:31 2005//
-/thread-start.h/1.1/Sat Apr 10 03:10:46 2004//
-/thread.h/1.5/Thu Oct 28 19:20:59 2004//
-/types.h/1.3/Thu Oct 28 19:20:04 2004//
+/ipc.h/1.12/Wed Jul 13 15:55:51 2005//
+/kip.h/1.5/Wed Jul 13 15:55:51 2005//
+/math.h/1.1/Wed Jul 13 15:55:51 2005//
+/message.h/1.1/Wed Jul 13 15:55:51 2005//
+/misc.h/1.2/Wed Jul 13 15:55:51 2005//
+/pagefault.h/1.1/Wed Jul 13 15:55:51 2005//
+/schedule.h/1.6/Wed Jul 13 15:55:51 2005//
+/sigma0.h/1.2/Wed Jul 13 15:55:51 2005//
+/space.h/1.9/Wed Jul 13 15:55:51 2005//
+/syscall.h/1.3/Wed Jul 13 15:55:51 2005//
+/thread-start.h/1.1/Wed Jul 13 15:55:51 2005//
+/thread.h/1.5/Wed Jul 13 15:55:51 2005//
+/types.h/1.3/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libl4/Makefile.in hurd-l4-new/libl4/Makefile.in
--- hurd-l4/libl4/Makefile.in   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libl4/Makefile.in       2005-07-13 18:30:52.366790352 +0200
@@ -0,0 +1,587 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libl4.
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libl4
+DIST_COMMON = README $(include_HEADERS) $(nobase_include_HEADERS) \
+       $(srcdir)/Makefile.am $(srcdir)/Makefile.in $(srcdir)/l4.h \
+       ChangeLog TODO
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+       html-recursive info-recursive install-data-recursive \
+       install-exec-recursive install-info-recursive \
+       install-recursive installcheck-recursive installdirs-recursive \
+       pdf-recursive ps-recursive uninstall-info-recursive \
+       uninstall-recursive
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(includedir)" "$(DESTDIR)$(includedir)"
+includeHEADERS_INSTALL = $(INSTALL_HEADER)
+nobase_includeHEADERS_INSTALL = $(install_sh_DATA)
+HEADERS = $(include_HEADERS) $(nobase_include_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = ia32 powerpc tests
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@ARCH_SUBDIR = ia32
address@hidden@ARCH_SUBDIR = powerpc
+SUBDIRS = $(ARCH_SUBDIR) tests
+
+# Header files that must be provided by all interfaces.
+common_headers := ipc.h kip.h message.h misc.h schedule.h space.h      \
+       syscall.h thread.h types.h sigma0.h
+
+# Interface-specific header files.
+gnu_headers := $(common_headers) math.h pagefault.h thread-start.h
+compat_headers := $(common_headers)
+
+# Main libl4 header files.
+l4_headers = features.h globals.h init.h ipc.h kip.h math.h message.h  \
+       misc.h pagefault.h schedule.h space.h stubs-init.h stubs.h      \
+       syscall.h thread.h thread-start.h types.h vregs.h sigma0.h      \
+       arch.h
+
+include_HEADERS = l4.h
+nobase_include_HEADERS = $(addprefix l4/, $(l4_headers))       \
+       $(addprefix l4/gnu/, $(gnu_headers))                    \
+       $(addprefix l4/compat/, $(compat_headers))
+
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libl4/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libl4/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-includeHEADERS: $(include_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includedir)" || $(mkdir_p) "$(DESTDIR)$(includedir)"
+       @list='$(include_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=$(am__strip_dir) \
+         echo " $(includeHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includedir)/$$f'"; \
+         $(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \
+       done
+
+uninstall-includeHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(include_HEADERS)'; for p in $$list; do \
+         f=$(am__strip_dir) \
+         echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includedir)/$$f"; \
+       done
+install-nobase_includeHEADERS: $(nobase_include_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includedir)" || $(mkdir_p) "$(DESTDIR)$(includedir)"
+       @$(am__vpath_adj_setup) \
+       list='$(nobase_include_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         $(am__vpath_adj) \
+         echo " $(nobase_includeHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includedir)/$$f'"; \
+         $(nobase_includeHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includedir)/$$f"; \
+       done
+
+uninstall-nobase_includeHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @$(am__vpath_adj_setup) \
+       list='$(nobase_include_HEADERS)'; for p in $$list; do \
+         $(am__vpath_adj) \
+         echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includedir)/$$f"; \
+       done
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+#     (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+       @failcom='exit 1'; \
+       for f in x $$MAKEFLAGS; do \
+         case $$f in \
+           *=* | --[!k]*);; \
+           *k*) failcom='fail=yes';; \
+         esac; \
+       done; \
+       dot_seen=no; \
+       target=`echo $@ | sed s/-recursive//`; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         echo "Making $$target in $$subdir"; \
+         if test "$$subdir" = "."; then \
+           dot_seen=yes; \
+           local_target="$$target-am"; \
+         else \
+           local_target="$$target"; \
+         fi; \
+         (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         || eval $$failcom; \
+       done; \
+       if test "$$dot_seen" = "no"; then \
+         $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+       fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+       @failcom='exit 1'; \
+       for f in x $$MAKEFLAGS; do \
+         case $$f in \
+           *=* | --[!k]*);; \
+           *k*) failcom='fail=yes';; \
+         esac; \
+       done; \
+       dot_seen=no; \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       rev=''; for subdir in $$list; do \
+         if test "$$subdir" = "."; then :; else \
+           rev="$$subdir $$rev"; \
+         fi; \
+       done; \
+       rev="$$rev ."; \
+       target=`echo $@ | sed s/-recursive//`; \
+       for subdir in $$rev; do \
+         echo "Making $$target in $$subdir"; \
+         if test "$$subdir" = "."; then \
+           local_target="$$target-am"; \
+         else \
+           local_target="$$target"; \
+         fi; \
+         (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         || eval $$failcom; \
+       done && test -z "$$fail"
+tags-recursive:
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); 
\
+       done
+ctags-recursive:
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) 
ctags); \
+       done
+
+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: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
+       if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+         include_option=--etags-include; \
+         empty_fix=.; \
+       else \
+         include_option=--include; \
+         empty_fix=; \
+       fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           test ! -f $$subdir/TAGS || \
+             tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       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: ctags-recursive $(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)
+       $(mkdir_p) $(distdir)/l4 $(distdir)/l4/compat $(distdir)/l4/gnu
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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
+       list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           test -d "$(distdir)/$$subdir" \
+           || $(mkdir_p) "$(distdir)/$$subdir" \
+           || exit 1; \
+           distdir=`$(am__cd) $(distdir) && pwd`; \
+           top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+           (cd $$subdir && \
+             $(MAKE) $(AM_MAKEFLAGS) \
+               top_distdir="$$top_distdir" \
+               distdir="$$distdir/$$subdir" \
+               distdir) \
+             || exit 1; \
+         fi; \
+       done
+check-am: all-am
+check: check-recursive
+all-am: Makefile $(HEADERS)
+installdirs: installdirs-recursive
+installdirs-am:
+       for dir in "$(DESTDIR)$(includedir)" "$(DESTDIR)$(includedir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+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-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am: install-includeHEADERS install-nobase_includeHEADERS
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-includeHEADERS uninstall-info-am \
+       uninstall-nobase_includeHEADERS
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+       clean clean-generic clean-recursive ctags ctags-recursive \
+       distclean distclean-generic distclean-recursive distclean-tags \
+       distdir dvi dvi-am html html-am info info-am install \
+       install-am install-data install-data-am install-exec \
+       install-exec-am install-includeHEADERS install-info \
+       install-info-am install-man install-nobase_includeHEADERS \
+       install-strip installcheck installcheck-am installdirs \
+       installdirs-am maintainer-clean maintainer-clean-generic \
+       maintainer-clean-recursive mostlyclean mostlyclean-generic \
+       mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+       uninstall uninstall-am uninstall-includeHEADERS \
+       uninstall-info-am uninstall-nobase_includeHEADERS
+
+# 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 -Naur hurd-l4/libl4/powerpc/CVS/Entries 
hurd-l4-new/libl4/powerpc/CVS/Entries
--- hurd-l4/libl4/powerpc/CVS/Entries   2005-07-13 18:31:34.610368352 +0200
+++ hurd-l4-new/libl4/powerpc/CVS/Entries       2005-07-13 18:30:52.367790200 
+0200
@@ -1,2 +1,2 @@
-/Makefile.am/1.2/Tue Mar 16 03:34:03 2004//
 D/l4////
+/Makefile.am/1.2/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libl4/powerpc/l4/bits/compat/CVS/Entries 
hurd-l4-new/libl4/powerpc/l4/bits/compat/CVS/Entries
--- hurd-l4/libl4/powerpc/l4/bits/compat/CVS/Entries    2005-07-13 
18:31:30.708961456 +0200
+++ hurd-l4-new/libl4/powerpc/l4/bits/compat/CVS/Entries        2005-07-13 
18:30:52.367790200 +0200
@@ -1,4 +1,4 @@
-/ipc.h/1.1/Tue Mar 16 03:34:03 2004//
-/misc.h/1.1/Tue Mar 16 03:34:03 2004//
-/space.h/1.1/Tue Mar 16 03:34:03 2004//
+/ipc.h/1.1/Wed Jul 13 15:55:51 2005//
+/misc.h/1.1/Wed Jul 13 15:55:51 2005//
+/space.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libl4/powerpc/l4/bits/CVS/Entries 
hurd-l4-new/libl4/powerpc/l4/bits/CVS/Entries
--- hurd-l4/libl4/powerpc/l4/bits/CVS/Entries   2005-07-13 18:31:34.609368504 
+0200
+++ hurd-l4-new/libl4/powerpc/l4/bits/CVS/Entries       2005-07-13 
18:30:52.367790200 +0200
@@ -1,12 +1,12 @@
-/ipc.h/1.2/Tue Mar 16 03:34:03 2004//
-/kip.h/1.2/Tue Mar 16 03:34:03 2004//
-/math.h/1.4/Tue Aug  3 11:40:32 2004//
-/misc.h/1.2/Tue Mar 16 03:34:03 2004//
-/space.h/1.2/Tue Mar 16 03:34:03 2004//
-/stubs-init.h/1.2/Thu Oct 16 11:55:51 2003//
-/stubs.h/1.2/Thu Sep 25 13:35:44 2003//
-/syscall.h/1.8/Thu Oct  7 17:56:25 2004//
-/types.h/1.3/Mon Mar 29 23:23:30 2004//
-/vregs.h/1.4/Sat Jan 22 17:52:51 2005//
 D/compat////
 D/gnu////
+/ipc.h/1.2/Wed Jul 13 15:55:51 2005//
+/kip.h/1.2/Wed Jul 13 15:55:51 2005//
+/math.h/1.4/Wed Jul 13 15:55:51 2005//
+/misc.h/1.2/Wed Jul 13 15:55:51 2005//
+/space.h/1.2/Wed Jul 13 15:55:51 2005//
+/stubs-init.h/1.2/Wed Jul 13 15:55:51 2005//
+/stubs.h/1.2/Wed Jul 13 15:55:51 2005//
+/syscall.h/1.8/Wed Jul 13 15:55:51 2005//
+/types.h/1.3/Wed Jul 13 15:55:51 2005//
+/vregs.h/1.4/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libl4/powerpc/l4/bits/gnu/CVS/Entries 
hurd-l4-new/libl4/powerpc/l4/bits/gnu/CVS/Entries
--- hurd-l4/libl4/powerpc/l4/bits/gnu/CVS/Entries       2005-07-13 
18:31:30.711961000 +0200
+++ hurd-l4-new/libl4/powerpc/l4/bits/gnu/CVS/Entries   2005-07-13 
18:30:52.368790048 +0200
@@ -1,5 +1,5 @@
-/ipc.h/1.1/Tue Mar 16 03:34:03 2004//
-/kip.h/1.1/Tue Mar 16 03:34:03 2004//
-/misc.h/1.1/Tue Mar 16 03:34:03 2004//
-/space.h/1.1/Tue Mar 16 03:34:03 2004//
+/ipc.h/1.1/Wed Jul 13 15:55:51 2005//
+/kip.h/1.1/Wed Jul 13 15:55:51 2005//
+/misc.h/1.1/Wed Jul 13 15:55:51 2005//
+/space.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libl4/powerpc/Makefile.in 
hurd-l4-new/libl4/powerpc/Makefile.in
--- hurd-l4/libl4/powerpc/Makefile.in   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libl4/powerpc/Makefile.in       2005-07-13 18:30:52.369789896 
+0200
@@ -0,0 +1,442 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libl4/powerpc.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libl4/powerpc
+DIST_COMMON = $(nobase_include_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(includedir)"
+nobase_includeHEADERS_INSTALL = $(install_sh_DATA)
+HEADERS = $(nobase_include_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+nobase_include_HEADERS = l4/bits/types.h                       \
+       l4/bits/math.h l4/bits/vregs.h l4/bits/syscall.h        \
+       l4/bits/stubs.h l4/bits/stubs-init.h                    \
+       l4/bits/kip.h l4/bits/space.h l4/bits/ipc.h             \
+       l4/bits/misc.h                                          \
+       l4/bits/compat/ipc.h l4/bits/compat/misc.h              \
+       l4/bits/compat/space.h                                  \
+       l4/bits/gnu/ipc.h l4/bits/gnu/kip.h l4/bits/gnu/misc.h  \
+       l4/bits/compat/space.h
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libl4/powerpc/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libl4/powerpc/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-nobase_includeHEADERS: $(nobase_include_HEADERS)
+       @$(NORMAL_INSTALL)
+       test -z "$(includedir)" || $(mkdir_p) "$(DESTDIR)$(includedir)"
+       @$(am__vpath_adj_setup) \
+       list='$(nobase_include_HEADERS)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         $(am__vpath_adj) \
+         echo " $(nobase_includeHEADERS_INSTALL) '$$d$$p' 
'$(DESTDIR)$(includedir)/$$f'"; \
+         $(nobase_includeHEADERS_INSTALL) "$$d$$p" 
"$(DESTDIR)$(includedir)/$$f"; \
+       done
+
+uninstall-nobase_includeHEADERS:
+       @$(NORMAL_UNINSTALL)
+       @$(am__vpath_adj_setup) \
+       list='$(nobase_include_HEADERS)'; for p in $$list; do \
+         $(am__vpath_adj) \
+         echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
+         rm -f "$(DESTDIR)$(includedir)/$$f"; \
+       done
+
+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)
+       $(mkdir_p) $(distdir)/l4/bits $(distdir)/l4/bits/compat 
$(distdir)/l4/bits/gnu
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+installdirs:
+       for dir in "$(DESTDIR)$(includedir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-nobase_includeHEADERS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-nobase_includeHEADERS
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man \
+       install-nobase_includeHEADERS install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-am \
+       uninstall-nobase_includeHEADERS
+
+# 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 -Naur hurd-l4/libl4/tests/CVS/Entries hurd-l4-new/libl4/tests/CVS/Entries
--- hurd-l4/libl4/tests/CVS/Entries     2005-07-13 18:31:30.828943216 +0200
+++ hurd-l4-new/libl4/tests/CVS/Entries 2005-07-13 18:30:52.369789896 +0200
@@ -1,6 +1,6 @@
-/Makefile.am/1.2/Tue Feb 15 18:27:46 2005//
-/README/1.2/Mon Feb 21 03:10:49 2005//
-/environment.h/1.4/Fri Feb 18 03:58:08 2005//
-/t-l4-kip.c/1.5/Mon Feb 21 03:10:49 2005//
-/t-l4-message.c/1.2/Fri Feb 18 03:58:08 2005//
+/Makefile.am/1.2/Wed Jul 13 15:55:51 2005//
+/README/1.2/Wed Jul 13 15:55:51 2005//
+/environment.h/1.4/Wed Jul 13 15:55:51 2005//
+/t-l4-kip.c/1.5/Wed Jul 13 15:55:51 2005//
+/t-l4-message.c/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libl4/tests/Makefile.in hurd-l4-new/libl4/tests/Makefile.in
--- hurd-l4/libl4/tests/Makefile.in     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libl4/tests/Makefile.in 2005-07-13 18:30:52.370789744 +0200
@@ -0,0 +1,533 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libl4/tests.
+# Copyright (C) 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+
+SOURCES = t-l4-kip.c t-l4-message.c
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+noinst_PROGRAMS = $(am__EXEEXT_1)
+subdir = libl4/tests
+DIST_COMMON = README $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__EXEEXT_1 = t-l4-kip$(EXEEXT) t-l4-message$(EXEEXT)
+PROGRAMS = $(noinst_PROGRAMS)
+t_l4_kip_SOURCES = t-l4-kip.c
+t_l4_kip_OBJECTS = t-l4-kip.$(OBJEXT)
+t_l4_kip_LDADD = $(LDADD)
+t_l4_message_SOURCES = t-l4-message.c
+t_l4_message_OBJECTS = t-l4-message.$(OBJEXT)
+t_l4_message_LDADD = $(LDADD)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = t-l4-kip.c t-l4-message.c
+DIST_SOURCES = t-l4-kip.c t-l4-message.c
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+TESTS = t-l4-kip t-l4-message
+noinst_HEADERS = environment.h
+AM_CPPFLAGS = -I$(top_builddir)/include
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libl4/tests/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libl4/tests/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+clean-noinstPROGRAMS:
+       -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS)
+t-l4-kip$(EXEEXT): $(t_l4_kip_OBJECTS) $(t_l4_kip_DEPENDENCIES) 
+       @rm -f t-l4-kip$(EXEEXT)
+       $(LINK) $(t_l4_kip_LDFLAGS) $(t_l4_kip_OBJECTS) $(t_l4_kip_LDADD) 
$(LIBS)
+t-l4-message$(EXEEXT): $(t_l4_message_OBJECTS) $(t_l4_message_DEPENDENCIES) 
+       @rm -f t-l4-message$(EXEEXT)
+       $(LINK) $(t_l4_message_LDFLAGS) $(t_l4_message_OBJECTS) 
$(t_l4_message_LDADD) $(LIBS)
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+
+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
+
+check-TESTS: $(TESTS)
+       @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+       srcdir=$(srcdir); export srcdir; \
+       list='$(TESTS)'; \
+       if test -n "$$list"; then \
+         for tst in $$list; do \
+           if test -f ./$$tst; then dir=./; \
+           elif test -f $$tst; then dir=; \
+           else dir="$(srcdir)/"; fi; \
+           if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+             all=`expr $$all + 1`; \
+             case " $(XFAIL_TESTS) " in \
+             *" $$tst "*) \
+               xpass=`expr $$xpass + 1`; \
+               failed=`expr $$failed + 1`; \
+               echo "XPASS: $$tst"; \
+             ;; \
+             *) \
+               echo "PASS: $$tst"; \
+             ;; \
+             esac; \
+           elif test $$? -ne 77; then \
+             all=`expr $$all + 1`; \
+             case " $(XFAIL_TESTS) " in \
+             *" $$tst "*) \
+               xfail=`expr $$xfail + 1`; \
+               echo "XFAIL: $$tst"; \
+             ;; \
+             *) \
+               failed=`expr $$failed + 1`; \
+               echo "FAIL: $$tst"; \
+             ;; \
+             esac; \
+           else \
+             skip=`expr $$skip + 1`; \
+             echo "SKIP: $$tst"; \
+           fi; \
+         done; \
+         if test "$$failed" -eq 0; then \
+           if test "$$xfail" -eq 0; then \
+             banner="All $$all tests passed"; \
+           else \
+             banner="All $$all tests behaved as expected ($$xfail expected 
failures)"; \
+           fi; \
+         else \
+           if test "$$xpass" -eq 0; then \
+             banner="$$failed of $$all tests failed"; \
+           else \
+             banner="$$failed of $$all tests did not behave as expected 
($$xpass unexpected passes)"; \
+           fi; \
+         fi; \
+         dashes="$$banner"; \
+         skipped=""; \
+         if test "$$skip" -ne 0; then \
+           skipped="($$skip tests were not run)"; \
+           test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+             dashes="$$skipped"; \
+         fi; \
+         report=""; \
+         if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+           report="Please report to $(PACKAGE_BUGREPORT)"; \
+           test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+             dashes="$$report"; \
+         fi; \
+         dashes=`echo "$$dashes" | sed s/./=/g`; \
+         echo "$$dashes"; \
+         echo "$$banner"; \
+         test -z "$$skipped" || echo "$$skipped"; \
+         test -z "$$report" || echo "$$report"; \
+         echo "$$dashes"; \
+         test "$$failed" -eq 0; \
+       else :; fi
+
+distdir: $(DISTFILES)
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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
+       $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile $(PROGRAMS) $(HEADERS)
+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-noinstPROGRAMS 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-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
+       clean-generic clean-noinstPROGRAMS ctags distclean \
+       distclean-compile distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-info-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 -Naur hurd-l4/libpthread/CVS/Entries hurd-l4-new/libpthread/CVS/Entries
--- hurd-l4/libpthread/CVS/Entries      2005-07-13 18:31:34.609368504 +0200
+++ hurd-l4-new/libpthread/CVS/Entries  2005-07-13 18:30:52.371789592 +0200
@@ -1,8 +1,8 @@
-/ChangeLog/1.11/Tue Feb  8 16:17:13 2005//
-/Makefile.am/1.2/Fri Mar 19 04:18:42 2004//
-/TODO/1.1/Thu Mar 18 02:44:20 2004//
-/headers.m4/1.2/Fri Oct 29 01:00:59 2004//
 D/include////
 D/pthread////
 D/sysdeps////
 D/tests////
+/ChangeLog/1.11/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.2/Wed Jul 13 15:55:51 2005//
+/TODO/1.1/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.2/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libpthread/include/CVS/Entries 
hurd-l4-new/libpthread/include/CVS/Entries
--- hurd-l4/libpthread/include/CVS/Entries      2005-07-13 18:31:34.609368504 
+0200
+++ hurd-l4-new/libpthread/include/CVS/Entries  2005-07-13 18:30:52.372789440 
+0200
@@ -1,4 +1,4 @@
-/libc-symbols.h/1.1/Thu Mar 18 02:44:20 2004//
-/pthread.h/1.1/Thu Mar 18 02:44:20 2004//
-/set-hooks.h/1.1/Thu Mar 18 02:44:20 2004//
 D/pthread////
+/libc-symbols.h/1.1/Wed Jul 13 15:55:51 2005//
+/pthread.h/1.1/Wed Jul 13 15:55:51 2005//
+/set-hooks.h/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libpthread/include/pthread/CVS/Entries 
hurd-l4-new/libpthread/include/pthread/CVS/Entries
--- hurd-l4/libpthread/include/pthread/CVS/Entries      2005-07-13 
18:31:31.175890472 +0200
+++ hurd-l4-new/libpthread/include/pthread/CVS/Entries  2005-07-13 
18:30:52.372789440 +0200
@@ -1,2 +1,2 @@
-/pthread.h/1.1/Thu Mar 18 02:44:20 2004//
+/pthread.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/Makefile.in hurd-l4-new/libpthread/Makefile.in
--- hurd-l4/libpthread/Makefile.in      1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/libpthread/Makefile.in  2005-07-13 18:30:52.373789288 +0200
@@ -0,0 +1,745 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for libpthread.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = $(libpthread_a_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = libpthread
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog \
+       TODO
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+LIBRARIES = $(noinst_LIBRARIES)
+ARFLAGS = cru
+libpthread_a_AR = $(AR) $(ARFLAGS)
+libpthread_a_LIBADD =
+am_libpthread_a_OBJECTS = pt-attr.$(OBJEXT) pt-attr-destroy.$(OBJEXT) \
+       pt-attr-getdetachstate.$(OBJEXT) \
+       pt-attr-getguardsize.$(OBJEXT) \
+       pt-attr-getinheritsched.$(OBJEXT) \
+       pt-attr-getschedparam.$(OBJEXT) \
+       pt-attr-getschedpolicy.$(OBJEXT) pt-attr-getscope.$(OBJEXT) \
+       pt-attr-getstack.$(OBJEXT) pt-attr-getstackaddr.$(OBJEXT) \
+       pt-attr-getstacksize.$(OBJEXT) pt-attr-init.$(OBJEXT) \
+       pt-attr-setdetachstate.$(OBJEXT) \
+       pt-attr-setguardsize.$(OBJEXT) \
+       pt-attr-setinheritsched.$(OBJEXT) \
+       pt-attr-setschedparam.$(OBJEXT) \
+       pt-attr-setschedpolicy.$(OBJEXT) pt-attr-setscope.$(OBJEXT) \
+       pt-attr-setstack.$(OBJEXT) pt-attr-setstackaddr.$(OBJEXT) \
+       pt-attr-setstacksize.$(OBJEXT) pt-attr.$(OBJEXT) \
+       pt-barrier-destroy.$(OBJEXT) pt-barrier-init.$(OBJEXT) \
+       pt-barrier-wait.$(OBJEXT) pt-barrier.$(OBJEXT) \
+       pt-barrierattr-destroy.$(OBJEXT) pt-barrierattr-init.$(OBJEXT) \
+       pt-barrierattr-getpshared.$(OBJEXT) \
+       pt-barrierattr-setpshared.$(OBJEXT) \
+       pt-destroy-specific.$(OBJEXT) pt-init-specific.$(OBJEXT) \
+       pt-key-create.$(OBJEXT) pt-key-delete.$(OBJEXT) \
+       pt-getspecific.$(OBJEXT) pt-setspecific.$(OBJEXT) \
+       pt-once.$(OBJEXT) pt-alloc.$(OBJEXT) pt-create.$(OBJEXT) \
+       pt-create-np.$(OBJEXT) pt-pool-np.$(OBJEXT) pt-equal.$(OBJEXT) \
+       pt-dealloc.$(OBJEXT) pt-detach.$(OBJEXT) pt-exit.$(OBJEXT) \
+       pt-initialize.$(OBJEXT) pt-join.$(OBJEXT) pt-self.$(OBJEXT) \
+       pt-sigmask.$(OBJEXT) pt-spin-inlines.$(OBJEXT) \
+       pt-cleanup.$(OBJEXT) pt-setcancelstate.$(OBJEXT) \
+       pt-setcanceltype.$(OBJEXT) pt-testcancel.$(OBJEXT) \
+       pt-cancel.$(OBJEXT) pt-mutexattr.$(OBJEXT) \
+       pt-mutexattr-destroy.$(OBJEXT) pt-mutexattr-init.$(OBJEXT) \
+       pt-mutexattr-getprioceiling.$(OBJEXT) \
+       pt-mutexattr-getprotocol.$(OBJEXT) \
+       pt-mutexattr-getpshared.$(OBJEXT) \
+       pt-mutexattr-gettype.$(OBJEXT) \
+       pt-mutexattr-setprioceiling.$(OBJEXT) \
+       pt-mutexattr-setprotocol.$(OBJEXT) \
+       pt-mutexattr-setpshared.$(OBJEXT) \
+       pt-mutexattr-settype.$(OBJEXT) pt-mutex-init.$(OBJEXT) \
+       pt-mutex-destroy.$(OBJEXT) pt-mutex-lock.$(OBJEXT) \
+       pt-mutex-trylock.$(OBJEXT) pt-mutex-timedlock.$(OBJEXT) \
+       pt-mutex-unlock.$(OBJEXT) pt-mutex-getprioceiling.$(OBJEXT) \
+       pt-mutex-setprioceiling.$(OBJEXT) pt-rwlock-attr.$(OBJEXT) \
+       pt-rwlockattr-init.$(OBJEXT) pt-rwlockattr-destroy.$(OBJEXT) \
+       pt-rwlockattr-getpshared.$(OBJEXT) \
+       pt-rwlockattr-setpshared.$(OBJEXT) pt-rwlock-init.$(OBJEXT) \
+       pt-rwlock-destroy.$(OBJEXT) pt-rwlock-rdlock.$(OBJEXT) \
+       pt-rwlock-tryrdlock.$(OBJEXT) pt-rwlock-trywrlock.$(OBJEXT) \
+       pt-rwlock-wrlock.$(OBJEXT) pt-rwlock-timedrdlock.$(OBJEXT) \
+       pt-rwlock-timedwrlock.$(OBJEXT) pt-rwlock-unlock.$(OBJEXT) \
+       pt-cond.$(OBJEXT) pt-condattr-init.$(OBJEXT) \
+       pt-condattr-destroy.$(OBJEXT) pt-condattr-getclock.$(OBJEXT) \
+       pt-condattr-getpshared.$(OBJEXT) \
+       pt-condattr-setclock.$(OBJEXT) \
+       pt-condattr-setpshared.$(OBJEXT) pt-cond-destroy.$(OBJEXT) \
+       pt-cond-init.$(OBJEXT) pt-cond-brdcast.$(OBJEXT) \
+       pt-cond-signal.$(OBJEXT) pt-cond-wait.$(OBJEXT) \
+       pt-cond-timedwait.$(OBJEXT) pt-stack-alloc.$(OBJEXT) \
+       pt-thread-alloc.$(OBJEXT) pt-thread-start.$(OBJEXT) \
+       pt-thread-halt.$(OBJEXT) pt-thread-init.$(OBJEXT) \
+       pt-getconcurrency.$(OBJEXT) pt-setconcurrency.$(OBJEXT) \
+       pt-block.$(OBJEXT) pt-timedblock.$(OBJEXT) pt-wakeup.$(OBJEXT) \
+       pt-docancel.$(OBJEXT) pt-sysdep.$(OBJEXT) pt-setup.$(OBJEXT) \
+       pt-machdep.$(OBJEXT) pt-spin.$(OBJEXT) \
+       pt-sigstate-init.$(OBJEXT) pt-sigstate-destroy.$(OBJEXT) \
+       pt-sigstate.$(OBJEXT) pt-atfork.$(OBJEXT) pt-kill.$(OBJEXT) \
+       pt-getcpuclockid.$(OBJEXT) pt-getschedparam.$(OBJEXT) \
+       pt-setschedparam.$(OBJEXT) pt-setschedprio.$(OBJEXT)
+libpthread_a_OBJECTS = $(am_libpthread_a_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libpthread_a_SOURCES)
+DIST_SOURCES = $(libpthread_a_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@arch = ia32
address@hidden@arch = powerpc
+
+# The source files is scattered over several directories.  Add 
+# all these directories to the vpath.
+SYSDEP_PATH = $(srcdir)/sysdeps/l4/hurd/${arch}        \
+        $(srcdir)/sysdeps/l4/${arch}           \
+        $(srcdir)/sysdeps/l4/hurd              \
+        $(srcdir)/sysdeps/l4                   \
+        $(srcdir)/sysdeps/hurd                 \
+        $(srcdir)/sysdeps/${arch}              \
+        $(srcdir)/sysdeps/generic              \
+        $(srcdir)/sysdeps/posix                \
+        $(srcdir)/pthread                      \
+        $(srcdir)/include
+
+AM_CPPFLAGS = -I$(top_builddir)/include -D_GNU_SOURCE=1 -I$(srcdir)/pthread \
+  -I$(top_srcdir)/libc-parts $(addprefix -I, $(SYSDEP_PATH)) \
+  -imacros $(srcdir)/include/libc-symbols.h
+
+
+# Sources.
+SYSDEPS := lockfile.c
+noinst_LIBRARIES = libpthread.a
+libpthread_a_SOURCES = pt-attr.c pt-attr-destroy.c pt-attr-getdetachstate.c \
+       pt-attr-getguardsize.c pt-attr-getinheritsched.c                    \
+       pt-attr-getschedparam.c pt-attr-getschedpolicy.c pt-attr-getscope.c \
+       pt-attr-getstack.c pt-attr-getstackaddr.c pt-attr-getstacksize.c    \
+       pt-attr-init.c pt-attr-setdetachstate.c pt-attr-setguardsize.c      \
+       pt-attr-setinheritsched.c pt-attr-setschedparam.c                   \
+       pt-attr-setschedpolicy.c pt-attr-setscope.c pt-attr-setstack.c      \
+       pt-attr-setstackaddr.c pt-attr-setstacksize.c pt-attr.c             \
+       pt-barrier-destroy.c pt-barrier-init.c pt-barrier-wait.c            \
+       pt-barrier.c pt-barrierattr-destroy.c pt-barrierattr-init.c         \
+       pt-barrierattr-getpshared.c pt-barrierattr-setpshared.c             \
+       pt-destroy-specific.c pt-init-specific.c                            \
+       pt-key-create.c pt-key-delete.c                                     \
+       pt-getspecific.c pt-setspecific.c                                   \
+       pt-once.c                                                           \
+       pt-alloc.c                                                          \
+       pt-create.c                                                         \
+       pt-create-np.c                                                      \
+       pt-pool-np.c                                                        \
+       pt-equal.c                                                          \
+       pt-dealloc.c                                                        \
+       pt-detach.c                                                         \
+       pt-exit.c                                                           \
+       pt-initialize.c                                                     \
+       pt-join.c                                                           \
+       pt-self.c                                                           \
+       pt-sigmask.c                                                        \
+       pt-spin-inlines.c                                                   \
+       pt-cleanup.c                                                        \
+       pt-setcancelstate.c                                                 \
+       pt-setcanceltype.c                                                  \
+       pt-testcancel.c                                                     \
+       pt-cancel.c                                                         \
+       pt-mutexattr.c                                                      \
+       pt-mutexattr-destroy.c pt-mutexattr-init.c                          \
+       pt-mutexattr-getprioceiling.c pt-mutexattr-getprotocol.c            \
+       pt-mutexattr-getpshared.c pt-mutexattr-gettype.c                    \
+       pt-mutexattr-setprioceiling.c pt-mutexattr-setprotocol.c            \
+       pt-mutexattr-setpshared.c pt-mutexattr-settype.c                    \
+       pt-mutex-init.c pt-mutex-destroy.c                                  \
+       pt-mutex-lock.c pt-mutex-trylock.c pt-mutex-timedlock.c             \
+       pt-mutex-unlock.c                                                   \
+       pt-mutex-getprioceiling.c pt-mutex-setprioceiling.c                 \
+       pt-rwlock-attr.c                                                    \
+       pt-rwlockattr-init.c pt-rwlockattr-destroy.c                        \
+       pt-rwlockattr-getpshared.c pt-rwlockattr-setpshared.c               \
+       pt-rwlock-init.c pt-rwlock-destroy.c                                \
+       pt-rwlock-rdlock.c pt-rwlock-tryrdlock.c                            \
+       pt-rwlock-trywrlock.c pt-rwlock-wrlock.c                            \
+       pt-rwlock-timedrdlock.c pt-rwlock-timedwrlock.c                     \
+       pt-rwlock-unlock.c                                                  \
+       pt-cond.c                                                           \
+       pt-condattr-init.c pt-condattr-destroy.c                            \
+       pt-condattr-getclock.c pt-condattr-getpshared.c                     \
+       pt-condattr-setclock.c pt-condattr-setpshared.c                     \
+       pt-cond-destroy.c pt-cond-init.c                                    \
+       pt-cond-brdcast.c                                                   \
+       pt-cond-signal.c                                                    \
+       pt-cond-wait.c                                                      \
+       pt-cond-timedwait.c                                                 \
+       pt-stack-alloc.c                                                    \
+       pt-thread-alloc.c                                                   \
+       pt-thread-start.c                                                   \
+       pt-thread-halt.c                                                    \
+       pt-thread-init.c                                                    \
+       pt-getconcurrency.c pt-setconcurrency.c                             \
+       pt-block.c                                                          \
+       pt-timedblock.c                                                     \
+       pt-wakeup.c                                                         \
+       pt-docancel.c                                                       \
+       pt-sysdep.c                                                         \
+       pt-setup.c                                                          \
+       pt-machdep.c                                                        \
+       pt-spin.c                                                           \
+       pt-sigstate-init.c                                                  \
+       pt-sigstate-destroy.c                                               \
+       pt-sigstate.c                                                       \
+       pt-atfork.c                                                         \
+       pt-kill.c                                                           \
+       pt-getcpuclockid.c                                                  \
+       pt-getschedparam.c pt-setschedparam.c pt-setschedprio.c
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  libpthread/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libpthread/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+clean-noinstLIBRARIES:
+       -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
+libpthread.a: $(libpthread_a_OBJECTS) $(libpthread_a_DEPENDENCIES) 
+       -rm -f libpthread.a
+       $(libpthread_a_AR) libpthread.a $(libpthread_a_OBJECTS) 
$(libpthread_a_LIBADD)
+       $(RANLIB) libpthread.a
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(LIBRARIES)
+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-noinstLIBRARIES 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-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-info-am
+
+vpath %.c $(SYSDEP_PATH)
+# 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 -Naur hurd-l4/libpthread/pthread/CVS/Entries 
hurd-l4-new/libpthread/pthread/CVS/Entries
--- hurd-l4/libpthread/pthread/CVS/Entries      2005-07-13 18:31:31.323867976 
+0200
+++ hurd-l4-new/libpthread/pthread/CVS/Entries  2005-07-13 18:30:52.374789136 
+0200
@@ -1,19 +1,19 @@
-/Versions/1.1/Thu Mar 18 02:44:20 2004//
-/cthreads-compat.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-alloc.c/1.4/Tue Nov  2 03:52:19 2004//
-/pt-cancel.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-cleanup.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-create.c/1.3/Mon Nov  1 17:28:42 2004//
-/pt-dealloc.c/1.2/Mon Nov  1 17:04:00 2004//
-/pt-detach.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-exit.c/1.2/Mon Nov  1 17:04:00 2004//
-/pt-initialize.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-internal.h/1.3/Mon Nov  1 17:28:42 2004//
-/pt-join.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-self.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setcancelstate.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setcanceltype.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-sigmask.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-spin-inlines.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-testcancel.c/1.1/Thu Mar 18 02:44:20 2004//
+/Versions/1.1/Wed Jul 13 15:55:51 2005//
+/cthreads-compat.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-alloc.c/1.4/Wed Jul 13 15:55:51 2005//
+/pt-cancel.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-cleanup.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-create.c/1.3/Wed Jul 13 15:55:51 2005//
+/pt-dealloc.c/1.2/Wed Jul 13 15:55:51 2005//
+/pt-detach.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-exit.c/1.2/Wed Jul 13 15:55:51 2005//
+/pt-initialize.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-internal.h/1.3/Wed Jul 13 15:55:51 2005//
+/pt-join.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-self.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setcancelstate.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setcanceltype.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-sigmask.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-spin-inlines.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-testcancel.c/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/generic/bits/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/generic/bits/CVS/Entries
--- hurd-l4/libpthread/sysdeps/generic/bits/CVS/Entries 2005-07-13 
18:31:31.483843656 +0200
+++ hurd-l4-new/libpthread/sysdeps/generic/bits/CVS/Entries     2005-07-13 
18:30:52.374789136 +0200
@@ -1,16 +1,16 @@
-/barrier-attr.h/1.1/Thu Mar 18 02:44:20 2004//
-/barrier.h/1.1/Thu Mar 18 02:44:20 2004//
-/cancelation.h/1.1/Thu Mar 18 02:44:20 2004//
-/condition-attr.h/1.1/Thu Mar 18 02:44:20 2004//
-/condition.h/1.2/Tue Nov  2 03:52:17 2004//
-/mutex-attr.h/1.1/Thu Mar 18 02:44:20 2004//
-/mutex.h/1.2/Tue Mar 23 03:43:49 2004//
-/once.h/1.1/Thu Mar 18 02:44:20 2004//
-/pthread.h/1.1/Thu Mar 18 02:44:20 2004//
-/pthreadtypes.h/1.1/Thu Mar 18 02:44:20 2004//
-/rwlock-attr.h/1.1/Thu Mar 18 02:44:20 2004//
-/rwlock.h/1.1/Thu Mar 18 02:44:20 2004//
-/thread-attr.h/1.1/Thu Mar 18 02:44:20 2004//
-/thread-barrier.h/1.1/Thu Mar 18 02:44:20 2004//
-/thread-specific.h/1.1/Thu Mar 18 02:44:20 2004//
+/barrier-attr.h/1.1/Wed Jul 13 15:55:51 2005//
+/barrier.h/1.1/Wed Jul 13 15:55:51 2005//
+/cancelation.h/1.1/Wed Jul 13 15:55:51 2005//
+/condition-attr.h/1.1/Wed Jul 13 15:55:51 2005//
+/condition.h/1.2/Wed Jul 13 15:55:51 2005//
+/mutex-attr.h/1.1/Wed Jul 13 15:55:51 2005//
+/mutex.h/1.2/Wed Jul 13 15:55:51 2005//
+/once.h/1.1/Wed Jul 13 15:55:51 2005//
+/pthread.h/1.1/Wed Jul 13 15:55:51 2005//
+/pthreadtypes.h/1.1/Wed Jul 13 15:55:51 2005//
+/rwlock-attr.h/1.1/Wed Jul 13 15:55:51 2005//
+/rwlock.h/1.1/Wed Jul 13 15:55:51 2005//
+/thread-attr.h/1.1/Wed Jul 13 15:55:51 2005//
+/thread-barrier.h/1.1/Wed Jul 13 15:55:51 2005//
+/thread-specific.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/generic/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/generic/CVS/Entries
--- hurd-l4/libpthread/sysdeps/generic/CVS/Entries      2005-07-13 
18:31:34.608368656 +0200
+++ hurd-l4-new/libpthread/sysdeps/generic/CVS/Entries  2005-07-13 
18:30:52.374789136 +0200
@@ -1,92 +1,92 @@
-/pt-atfork.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getdetachstate.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getguardsize.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getinheritsched.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getschedparam.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getschedpolicy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getscope.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getstack.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getstackaddr.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-getstacksize.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setdetachstate.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setguardsize.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setinheritsched.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setschedparam.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setschedpolicy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setscope.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setstack.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setstackaddr.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr-setstacksize.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-attr.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-barrier-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-barrier-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-barrier-wait.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-barrier.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-barrierattr-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-barrierattr-getpshared.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-barrierattr-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-barrierattr-setpshared.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-cond-brdcast.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-cond-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-cond-init.c/1.2/Tue Nov  2 03:52:19 2004//
-/pt-cond-signal.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-cond-timedwait.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-cond-wait.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-cond.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-condattr-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-condattr-getclock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-condattr-getpshared.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-condattr-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-condattr-setclock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-condattr-setpshared.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-destroy-specific.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-equal.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-getconcurrency.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-getcpuclockid.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-getschedparam.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-getspecific.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-init-specific.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-key-create.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-key-delete.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-key.h/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutex-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutex-getprioceiling.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutex-init.c/1.2/Tue Mar 23 03:43:49 2004//
-/pt-mutex-lock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutex-setprioceiling.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutex-timedlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutex-trylock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutex-unlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-getprioceiling.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-getprotocol.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-getpshared.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-gettype.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-setprioceiling.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-setprotocol.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-setpshared.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr-settype.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-mutexattr.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-once.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-attr.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-rdlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-timedrdlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-timedwrlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-tryrdlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-trywrlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-unlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlock-wrlock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlockattr-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlockattr-getpshared.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlockattr-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-rwlockattr-setpshared.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setconcurrency.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setschedparam.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setschedprio.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setspecific.c/1.1/Thu Mar 18 02:44:20 2004//
 D/bits////
+/pt-atfork.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getdetachstate.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getguardsize.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getinheritsched.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getschedparam.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getschedpolicy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getscope.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getstack.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getstackaddr.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-getstacksize.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setdetachstate.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setguardsize.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setinheritsched.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setschedparam.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setschedpolicy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setscope.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setstack.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setstackaddr.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr-setstacksize.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-attr.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-barrier-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-barrier-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-barrier-wait.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-barrier.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-barrierattr-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-barrierattr-getpshared.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-barrierattr-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-barrierattr-setpshared.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-cond-brdcast.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-cond-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-cond-init.c/1.2/Wed Jul 13 15:55:51 2005//
+/pt-cond-signal.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-cond-timedwait.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-cond-wait.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-cond.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-condattr-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-condattr-getclock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-condattr-getpshared.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-condattr-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-condattr-setclock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-condattr-setpshared.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-destroy-specific.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-equal.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-getconcurrency.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-getcpuclockid.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-getschedparam.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-getspecific.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-init-specific.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-key-create.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-key-delete.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-key.h/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutex-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutex-getprioceiling.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutex-init.c/1.2/Wed Jul 13 15:55:51 2005//
+/pt-mutex-lock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutex-setprioceiling.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutex-timedlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutex-trylock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutex-unlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-getprioceiling.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-getprotocol.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-getpshared.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-gettype.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-setprioceiling.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-setprotocol.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-setpshared.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr-settype.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-mutexattr.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-once.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-attr.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-rdlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-timedrdlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-timedwrlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-tryrdlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-trywrlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-unlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlock-wrlock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlockattr-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlockattr-getpshared.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlockattr-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-rwlockattr-setpshared.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setconcurrency.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setschedparam.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setschedprio.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setspecific.c/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libpthread/sysdeps/hurd/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/hurd/CVS/Entries
--- hurd-l4/libpthread/sysdeps/hurd/CVS/Entries 2005-07-13 18:31:34.608368656 
+0200
+++ hurd-l4-new/libpthread/sysdeps/hurd/CVS/Entries     2005-07-13 
18:30:52.375788984 +0200
@@ -1,9 +1,9 @@
-/pt-destroy-specific.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-getspecific.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-init-specific.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-key-create.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-key-delete.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-key.h/1.1/Thu Mar 18 02:44:20 2004//
-/pt-kill.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setspecific.c/1.1/Thu Mar 18 02:44:20 2004//
+/pt-destroy-specific.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-getspecific.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-init-specific.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-key-create.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-key-delete.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-key.h/1.1/Wed Jul 13 15:55:51 2005//
+/pt-kill.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setspecific.c/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/ia32/bits/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/ia32/bits/CVS/Entries
--- hurd-l4/libpthread/sysdeps/ia32/bits/CVS/Entries    2005-07-13 
18:31:31.507840008 +0200
+++ hurd-l4-new/libpthread/sysdeps/ia32/bits/CVS/Entries        2005-07-13 
18:30:52.375788984 +0200
@@ -1,4 +1,4 @@
-/atomic.h/1.1/Thu Mar 18 02:44:20 2004//
-/memory.h/1.1/Thu Mar 18 02:44:20 2004//
-/spin-lock.h/1.1/Thu Mar 18 02:44:20 2004//
+/atomic.h/1.1/Wed Jul 13 15:55:51 2005//
+/memory.h/1.1/Wed Jul 13 15:55:51 2005//
+/spin-lock.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/ia32/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/ia32/CVS/Entries
--- hurd-l4/libpthread/sysdeps/ia32/CVS/Entries 2005-07-13 18:31:34.607368808 
+0200
+++ hurd-l4-new/libpthread/sysdeps/ia32/CVS/Entries     2005-07-13 
18:30:52.375788984 +0200
@@ -1,3 +1,3 @@
-/machine-sp.h/1.1/Thu Mar 18 02:44:20 2004//
-/pt-machdep.h/1.1/Thu Mar 18 02:44:20 2004//
 D/bits////
+/machine-sp.h/1.1/Wed Jul 13 15:55:51 2005//
+/pt-machdep.h/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libpthread/sysdeps/l4/bits/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/l4/bits/CVS/Entries
--- hurd-l4/libpthread/sysdeps/l4/bits/CVS/Entries      2005-07-13 
18:31:31.516838640 +0200
+++ hurd-l4-new/libpthread/sysdeps/l4/bits/CVS/Entries  2005-07-13 
18:30:52.376788832 +0200
@@ -1,2 +1,2 @@
-/pthread-np.h/1.2/Fri Mar 19 04:18:42 2004//
+/pthread-np.h/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/l4/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/l4/CVS/Entries
--- hurd-l4/libpthread/sysdeps/l4/CVS/Entries   2005-07-13 18:31:34.607368808 
+0200
+++ hurd-l4-new/libpthread/sysdeps/l4/CVS/Entries       2005-07-13 
18:30:52.376788832 +0200
@@ -1,15 +1,15 @@
-/pt-block.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-create-np.c/1.2/Mon Nov  1 17:04:00 2004//
-/pt-docancel.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-pool-np.c/1.2/Fri Mar 19 04:26:42 2004//
-/pt-spin.c/1.3/Thu Mar 18 02:58:51 2004//
-/pt-stack-alloc.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-start.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-thread-alloc.c/1.3/Wed Jan 12 10:33:39 2005//
-/pt-thread-halt.c/1.2/Fri Mar 19 04:18:42 2004//
-/pt-thread-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-thread-start.c/1.3/Thu Mar 18 02:58:51 2004//
-/pt-timedblock.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-wakeup.c/1.1/Thu Mar 18 02:44:20 2004//
 D/bits////
 D/hurd////
+/pt-block.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-create-np.c/1.2/Wed Jul 13 15:55:51 2005//
+/pt-docancel.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-pool-np.c/1.2/Wed Jul 13 15:55:51 2005//
+/pt-spin.c/1.3/Wed Jul 13 15:55:51 2005//
+/pt-stack-alloc.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-start.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-thread-alloc.c/1.3/Wed Jul 13 15:55:51 2005//
+/pt-thread-halt.c/1.2/Wed Jul 13 15:55:51 2005//
+/pt-thread-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-thread-start.c/1.3/Wed Jul 13 15:55:51 2005//
+/pt-timedblock.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-wakeup.c/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libpthread/sysdeps/l4/hurd/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/l4/hurd/CVS/Entries
--- hurd-l4/libpthread/sysdeps/l4/hurd/CVS/Entries      2005-07-13 
18:31:34.607368808 +0200
+++ hurd-l4-new/libpthread/sysdeps/l4/hurd/CVS/Entries  2005-07-13 
18:30:52.376788832 +0200
@@ -1,8 +1,8 @@
-/pt-kill.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-sigstate-destroy.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-sigstate-init.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-sigstate.c/1.2/Wed Jan 12 10:33:39 2005//
-/pt-sysdep.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-sysdep.h/1.2/Tue Feb  8 16:17:13 2005//
 D/ia32////
 D/powerpc////
+/pt-kill.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-sigstate-destroy.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-sigstate-init.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-sigstate.c/1.2/Wed Jul 13 15:55:51 2005//
+/pt-sysdep.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-sysdep.h/1.2/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libpthread/sysdeps/l4/hurd/ia32/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/l4/hurd/ia32/CVS/Entries
--- hurd-l4/libpthread/sysdeps/l4/hurd/ia32/CVS/Entries 2005-07-13 
18:31:31.595826632 +0200
+++ hurd-l4-new/libpthread/sysdeps/l4/hurd/ia32/CVS/Entries     2005-07-13 
18:30:52.377788680 +0200
@@ -1,3 +1,3 @@
-/pt-machdep.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setup.c/1.1/Thu Mar 18 02:44:20 2004//
+/pt-machdep.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setup.c/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/l4/hurd/powerpc/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/l4/hurd/powerpc/CVS/Entries
--- hurd-l4/libpthread/sysdeps/l4/hurd/powerpc/CVS/Entries      2005-07-13 
18:31:31.597826328 +0200
+++ hurd-l4-new/libpthread/sysdeps/l4/hurd/powerpc/CVS/Entries  2005-07-13 
18:30:52.378788528 +0200
@@ -1,3 +1,3 @@
-/pt-machdep.c/1.1/Thu Mar 18 02:44:20 2004//
-/pt-setup.c/1.1/Thu Mar 18 02:44:20 2004//
+/pt-machdep.c/1.1/Wed Jul 13 15:55:51 2005//
+/pt-setup.c/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/posix/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/posix/CVS/Entries
--- hurd-l4/libpthread/sysdeps/posix/CVS/Entries        2005-07-13 
18:31:31.609824504 +0200
+++ hurd-l4-new/libpthread/sysdeps/posix/CVS/Entries    2005-07-13 
18:30:52.378788528 +0200
@@ -1,2 +1,2 @@
-/pt-spin.c/1.2/Tue Feb  8 16:17:13 2005//
+/pt-spin.c/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/powerpc/bits/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/powerpc/bits/CVS/Entries
--- hurd-l4/libpthread/sysdeps/powerpc/bits/CVS/Entries 2005-07-13 
18:31:31.613823896 +0200
+++ hurd-l4-new/libpthread/sysdeps/powerpc/bits/CVS/Entries     2005-07-13 
18:30:52.378788528 +0200
@@ -1,5 +1,5 @@
-/atomic.h/1.1/Thu Mar 18 02:44:20 2004//
-/machine-lock.h/1.1/Thu Mar 18 02:44:20 2004//
-/memory.h/1.1/Thu Mar 18 02:44:20 2004//
-/spin-lock.h/1.1/Thu Mar 18 02:44:20 2004//
+/atomic.h/1.1/Wed Jul 13 15:55:51 2005//
+/machine-lock.h/1.1/Wed Jul 13 15:55:51 2005//
+/memory.h/1.1/Wed Jul 13 15:55:51 2005//
+/spin-lock.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/libpthread/sysdeps/powerpc/CVS/Entries 
hurd-l4-new/libpthread/sysdeps/powerpc/CVS/Entries
--- hurd-l4/libpthread/sysdeps/powerpc/CVS/Entries      2005-07-13 
18:31:34.606368960 +0200
+++ hurd-l4-new/libpthread/sysdeps/powerpc/CVS/Entries  2005-07-13 
18:30:52.378788528 +0200
@@ -1,3 +1,3 @@
-/machine-sp.h/1.1/Thu Mar 18 02:44:20 2004//
-/pt-machdep.h/1.1/Thu Mar 18 02:44:20 2004//
 D/bits////
+/machine-sp.h/1.1/Wed Jul 13 15:55:51 2005//
+/pt-machdep.h/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/libpthread/tests/CVS/Entries 
hurd-l4-new/libpthread/tests/CVS/Entries
--- hurd-l4/libpthread/tests/CVS/Entries        2005-07-13 18:31:31.626821920 
+0200
+++ hurd-l4-new/libpthread/tests/CVS/Entries    2005-07-13 18:30:52.379788376 
+0200
@@ -1,18 +1,18 @@
-/Makefile/1.1/Thu Mar 18 02:44:20 2004//
-/test-1.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-10.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-11.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-12.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-13.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-14.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-15.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-16.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-2.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-3.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-4.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-5.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-6.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-7.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-8.c/1.1/Thu Mar 18 02:44:20 2004//
-/test-9.c/1.1/Thu Mar 18 02:44:20 2004//
+/Makefile/1.1/Wed Jul 13 15:55:51 2005//
+/test-1.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-10.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-11.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-12.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-13.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-14.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-15.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-16.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-2.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-3.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-4.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-5.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-6.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-7.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-8.c/1.1/Wed Jul 13 15:55:51 2005//
+/test-9.c/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/Makefile.idl4 hurd-l4-new/Makefile.idl4
--- hurd-l4/Makefile.idl4       1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/Makefile.idl4   2005-07-13 18:30:52.379788376 +0200
@@ -0,0 +1,8 @@
+%_client.h: %.idl
+       $(IDL4) $(IDL4FLAGS) -c $<
+
+%_server.h: %.idl
+       $(IDL4) $(IDL4FLAGS) -s $<
+
+clean-local:
+       rm -f *_server.h *_client.h
diff -Naur hurd-l4/Makefile.in hurd-l4-new/Makefile.in
--- hurd-l4/Makefile.in 1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/Makefile.in     2005-07-13 18:30:52.380788224 +0200
@@ -0,0 +1,766 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for hurd-l4.
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = .
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/config.h.in \
+       $(top_srcdir)/configure $(top_srcdir)/libl4/l4/arch.h \
+       $(top_srcdir)/libl4/l4/compat/ipc.h \
+       $(top_srcdir)/libl4/l4/compat/kip.h \
+       $(top_srcdir)/libl4/l4/compat/message.h \
+       $(top_srcdir)/libl4/l4/compat/misc.h \
+       $(top_srcdir)/libl4/l4/compat/schedule.h \
+       $(top_srcdir)/libl4/l4/compat/sigma0.h \
+       $(top_srcdir)/libl4/l4/compat/space.h \
+       $(top_srcdir)/libl4/l4/compat/syscall.h \
+       $(top_srcdir)/libl4/l4/compat/thread.h \
+       $(top_srcdir)/libl4/l4/compat/types.h \
+       $(top_srcdir)/libl4/l4/features.h \
+       $(top_srcdir)/libl4/l4/globals.h \
+       $(top_srcdir)/libl4/l4/gnu/ipc.h \
+       $(top_srcdir)/libl4/l4/gnu/kip.h \
+       $(top_srcdir)/libl4/l4/gnu/math.h \
+       $(top_srcdir)/libl4/l4/gnu/message.h \
+       $(top_srcdir)/libl4/l4/gnu/misc.h \
+       $(top_srcdir)/libl4/l4/gnu/pagefault.h \
+       $(top_srcdir)/libl4/l4/gnu/schedule.h \
+       $(top_srcdir)/libl4/l4/gnu/sigma0.h \
+       $(top_srcdir)/libl4/l4/gnu/space.h \
+       $(top_srcdir)/libl4/l4/gnu/syscall.h \
+       $(top_srcdir)/libl4/l4/gnu/thread-start.h \
+       $(top_srcdir)/libl4/l4/gnu/thread.h \
+       $(top_srcdir)/libl4/l4/gnu/types.h \
+       $(top_srcdir)/libl4/l4/init.h $(top_srcdir)/libl4/l4/ipc.h \
+       $(top_srcdir)/libl4/l4/kip.h $(top_srcdir)/libl4/l4/math.h \
+       $(top_srcdir)/libl4/l4/message.h $(top_srcdir)/libl4/l4/misc.h \
+       $(top_srcdir)/libl4/l4/pagefault.h \
+       $(top_srcdir)/libl4/l4/schedule.h \
+       $(top_srcdir)/libl4/l4/sigma0.h $(top_srcdir)/libl4/l4/space.h \
+       $(top_srcdir)/libl4/l4/stubs-init.h \
+       $(top_srcdir)/libl4/l4/stubs.h \
+       $(top_srcdir)/libl4/l4/syscall.h \
+       $(top_srcdir)/libl4/l4/thread-start.h \
+       $(top_srcdir)/libl4/l4/thread.h $(top_srcdir)/libl4/l4/types.h \
+       $(top_srcdir)/libl4/l4/vregs.h \
+       $(top_srcdir)/libpthread/include/pthread.h \
+       $(top_srcdir)/libpthread/include/pthread/pthread.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/barrier-attr.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/barrier.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/cancelation.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/condition-attr.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/condition.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/mutex-attr.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/mutex.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/once.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/pthread.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/pthreadtypes.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/rwlock-attr.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/rwlock.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/thread-attr.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/thread-barrier.h \
+       $(top_srcdir)/libpthread/sysdeps/generic/bits/thread-specific.h \
+       $(top_srcdir)/libpthread/sysdeps/l4/bits/pthread-np.h AUTHORS \
+       COPYING ChangeLog INSTALL NEWS THANKS TODO compile \
+       config.guess config.sub depcomp install-sh missing
+subdir = .
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+       $(ACLOCAL_M4)
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno configure.status.lineno
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES = include/l4.h include/l4/features.h \
+       include/l4/globals.h include/l4/init.h include/l4/ipc.h \
+       include/l4/kip.h include/l4/math.h include/l4/message.h \
+       include/l4/misc.h include/l4/arch.h include/l4/pagefault.h \
+       include/l4/schedule.h include/l4/space.h \
+       include/l4/stubs-init.h include/l4/stubs.h \
+       include/l4/syscall.h include/l4/thread.h \
+       include/l4/thread-start.h include/l4/types.h \
+       include/l4/vregs.h include/l4/sigma0.h include/l4/compat/ipc.h \
+       include/l4/compat/kip.h include/l4/compat/message.h \
+       include/l4/compat/misc.h include/l4/compat/schedule.h \
+       include/l4/compat/space.h include/l4/compat/syscall.h \
+       include/l4/compat/thread.h include/l4/compat/types.h \
+       include/l4/compat/sigma0.h include/l4/gnu/ipc.h \
+       include/l4/gnu/kip.h include/l4/gnu/math.h \
+       include/l4/gnu/message.h include/l4/gnu/misc.h \
+       include/l4/gnu/pagefault.h include/l4/gnu/schedule.h \
+       include/l4/gnu/space.h include/l4/gnu/syscall.h \
+       include/l4/gnu/thread.h include/l4/gnu/thread-start.h \
+       include/l4/gnu/types.h include/l4/gnu/sigma0.h \
+       include/l4/bits/ipc.h include/l4/bits/kip.h \
+       include/l4/bits/math.h include/l4/bits/misc.h \
+       include/l4/bits/arch.h include/l4/bits/space.h \
+       include/l4/bits/stubs.h include/l4/bits/stubs-init.h \
+       include/l4/bits/syscall.h include/l4/bits/types.h \
+       include/l4/bits/vregs.h include/l4/bits/compat/ipc.h \
+       include/l4/bits/compat/misc.h include/l4/bits/compat/arch.h \
+       include/l4/bits/compat/space.h include/l4/bits/gnu/ipc.h \
+       include/l4/bits/gnu/kip.h include/l4/bits/gnu/misc.h \
+       include/l4/bits/gnu/arch.h include/l4/bits/gnu/space.h \
+       include/atomic.h include/bits/atomic.h include/compiler.h \
+       include/hurd/types.h include/hurd/startup.h \
+       include/hurd/ihash.h include/hurd/btree.h include/hurd/slab.h \
+       include/hurd/cap.h include/hurd/cap-server.h include/hurd/mm.h \
+       include/hurd/vm.h include/hurd/anonymous.h include/pthread.h \
+       include/pthread/pthread.h include/bits/memory.h \
+       include/bits/spin-lock.h include/bits/pthreadtypes.h \
+       include/bits/barrier-attr.h include/bits/barrier.h \
+       include/bits/cancelation.h include/bits/condition-attr.h \
+       include/bits/condition.h include/bits/mutex-attr.h \
+       include/bits/mutex.h include/bits/once.h \
+       include/bits/pthread.h include/bits/rwlock-attr.h \
+       include/bits/rwlock.h include/bits/thread-attr.h \
+       include/bits/thread-barrier.h include/bits/thread-specific.h \
+       include/bits/pthread-np.h include/hurd/wortel.h \
+       include/hurd/physmem.h
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+       html-recursive info-recursive install-data-recursive \
+       install-exec-recursive install-info-recursive \
+       install-recursive installcheck-recursive installdirs-recursive \
+       pdf-recursive ps-recursive uninstall-info-recursive \
+       uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = libl4 platform hurd libhurd-ihash libhurd-btree \
+       libhurd-slab libhurd-cap libhurd-cap-server libhurd-mm \
+       libpthread libc-parts laden wortel physmem task deva ruth libc \
+       doc
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+am__remove_distdir = \
+  { test ! -d $(distdir) \
+    || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
+         && rm -fr $(distdir); }; }
+DIST_ARCHIVES = $(distdir).tar.gz
+GZIP_ENV = --best
+distuninstallcheck_listfiles = find . -type f -print
+distcleancheck_listfiles = find . -type f -print
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@LIBC_SUBDIRS = 
address@hidden@LIBC_SUBDIRS = libc
+SUBDIRS = libl4 platform                               \
+       hurd libhurd-ihash libhurd-btree libhurd-slab   \
+       libhurd-cap libhurd-cap-server                  \
+       libhurd-mm                                      \
+       libpthread                                      \
+       libc-parts laden wortel physmem task deva ruth  \
+       $(LIBC_SUBDIRS)                                 \
+       doc
+
+all: config.h
+       $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
+.SUFFIXES:
+am--refresh:
+       @:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  
$(am__configure_deps)
+       @for dep in $?; do \
+         case '$(am__configure_deps)' in \
+           *$$dep*) \
+             echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
+             cd $(srcdir) && $(AUTOMAKE) --gnu  \
+               && exit 0; \
+             exit 1;; \
+         esac; \
+       done; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+       @case '$?' in \
+         *config.status*) \
+           echo ' $(SHELL) ./config.status'; \
+           $(SHELL) ./config.status;; \
+         *) \
+           echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ 
$(am__depfiles_maybe)'; \
+           cd $(top_builddir) && $(SHELL) ./config.status $@ 
$(am__depfiles_maybe);; \
+       esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure 
$(CONFIG_STATUS_DEPENDENCIES)
+       $(SHELL) ./config.status --recheck
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(srcdir) && $(AUTOCONF)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+
+config.h: stamp-h1
+       @if test ! -f $@; then \
+         rm -f stamp-h1; \
+         $(MAKE) stamp-h1; \
+       else :; fi
+
+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
+       @rm -f stamp-h1
+       cd $(top_builddir) && $(SHELL) ./config.status config.h
+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) 
+       cd $(top_srcdir) && $(AUTOHEADER)
+       rm -f stamp-h1
+       touch $@
+
+distclean-hdr:
+       -rm -f config.h stamp-h1
+uninstall-info-am:
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+#     (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+       @failcom='exit 1'; \
+       for f in x $$MAKEFLAGS; do \
+         case $$f in \
+           *=* | --[!k]*);; \
+           *k*) failcom='fail=yes';; \
+         esac; \
+       done; \
+       dot_seen=no; \
+       target=`echo $@ | sed s/-recursive//`; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         echo "Making $$target in $$subdir"; \
+         if test "$$subdir" = "."; then \
+           dot_seen=yes; \
+           local_target="$$target-am"; \
+         else \
+           local_target="$$target"; \
+         fi; \
+         (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         || eval $$failcom; \
+       done; \
+       if test "$$dot_seen" = "no"; then \
+         $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+       fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+       @failcom='exit 1'; \
+       for f in x $$MAKEFLAGS; do \
+         case $$f in \
+           *=* | --[!k]*);; \
+           *k*) failcom='fail=yes';; \
+         esac; \
+       done; \
+       dot_seen=no; \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       rev=''; for subdir in $$list; do \
+         if test "$$subdir" = "."; then :; else \
+           rev="$$subdir $$rev"; \
+         fi; \
+       done; \
+       rev="$$rev ."; \
+       target=`echo $@ | sed s/-recursive//`; \
+       for subdir in $$rev; do \
+         echo "Making $$target in $$subdir"; \
+         if test "$$subdir" = "."; then \
+           local_target="$$target-am"; \
+         else \
+           local_target="$$target"; \
+         fi; \
+         (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         || eval $$failcom; \
+       done && test -z "$$fail"
+tags-recursive:
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); 
\
+       done
+ctags-recursive:
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) 
ctags); \
+       done
+
+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: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
+       if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+         include_option=--etags-include; \
+         empty_fix=.; \
+       else \
+         include_option=--include; \
+         empty_fix=; \
+       fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           test ! -f $$subdir/TAGS || \
+             tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS) config.h.in $(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: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
+       list='$(SOURCES) $(HEADERS) config.h.in $(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)
+       $(am__remove_distdir)
+       mkdir $(distdir)
+       $(mkdir_p) $(distdir)/hurd $(distdir)/laden $(distdir)/libhurd-btree 
$(distdir)/libhurd-cap $(distdir)/libhurd-cap-server $(distdir)/libhurd-ihash 
$(distdir)/libhurd-mm $(distdir)/libhurd-slab $(distdir)/libl4 
$(distdir)/libl4/l4 $(distdir)/libl4/l4/compat $(distdir)/libl4/l4/gnu 
$(distdir)/libpthread $(distdir)/libpthread/include 
$(distdir)/libpthread/include/pthread 
$(distdir)/libpthread/sysdeps/generic/bits 
$(distdir)/libpthread/sysdeps/l4/bits $(distdir)/physmem $(distdir)/platform 
$(distdir)/wortel
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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
+       list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           test -d "$(distdir)/$$subdir" \
+           || $(mkdir_p) "$(distdir)/$$subdir" \
+           || exit 1; \
+           distdir=`$(am__cd) $(distdir) && pwd`; \
+           top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+           (cd $$subdir && \
+             $(MAKE) $(AM_MAKEFLAGS) \
+               top_distdir="$$top_distdir" \
+               distdir="$$distdir/$$subdir" \
+               distdir) \
+             || exit 1; \
+         fi; \
+       done
+       -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+         ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+         ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+         ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} 
\; \
+       || chmod -R a+r $(distdir)
+dist-gzip: distdir
+       tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c 
>$(distdir).tar.gz
+       $(am__remove_distdir)
+
+dist-bzip2: distdir
+       tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+       $(am__remove_distdir)
+
+dist-tarZ: distdir
+       tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
+       $(am__remove_distdir)
+
+dist-shar: distdir
+       shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+       $(am__remove_distdir)
+
+dist-zip: distdir
+       -rm -f $(distdir).zip
+       zip -rq $(distdir).zip $(distdir)
+       $(am__remove_distdir)
+
+dist dist-all: distdir
+       tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c 
>$(distdir).tar.gz
+       $(am__remove_distdir)
+
+# This target untars the dist file and tries a VPATH configuration.  Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+       case '$(DIST_ARCHIVES)' in \
+       *.tar.gz*) \
+         GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+       *.tar.bz2*) \
+         bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+       *.tar.Z*) \
+         uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
+       *.shar.gz*) \
+         GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+       *.zip*) \
+         unzip $(distdir).zip ;;\
+       esac
+       chmod -R a-w $(distdir); chmod a+w $(distdir)
+       mkdir $(distdir)/_build
+       mkdir $(distdir)/_inst
+       chmod a-w $(distdir)
+       dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 
's,^[^:\\/]:[\\/],/,'` \
+         && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+         && cd $(distdir)/_build \
+         && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+           $(DISTCHECK_CONFIGURE_FLAGS) \
+         && $(MAKE) $(AM_MAKEFLAGS) \
+         && $(MAKE) $(AM_MAKEFLAGS) dvi \
+         && $(MAKE) $(AM_MAKEFLAGS) check \
+         && $(MAKE) $(AM_MAKEFLAGS) install \
+         && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+         && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+         && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" 
\
+               distuninstallcheck \
+         && chmod -R a-w "$$dc_install_base" \
+         && ({ \
+              (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
+              && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
+              && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
+              && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
+                   distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
+             } || { rm -rf "$$dc_destdir"; exit 1; }) \
+         && rm -rf "$$dc_destdir" \
+         && $(MAKE) $(AM_MAKEFLAGS) dist \
+         && rm -rf $(DIST_ARCHIVES) \
+         && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+       $(am__remove_distdir)
+       @(echo "$(distdir) archives ready for distribution: "; \
+         list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
+         sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
+distuninstallcheck:
+       @cd $(distuninstallcheck_dir) \
+       && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+          || { echo "ERROR: files left after uninstall:" ; \
+               if test -n "$(DESTDIR)"; then \
+                 echo "  (check DESTDIR support)"; \
+               fi ; \
+               $(distuninstallcheck_listfiles) ; \
+               exit 1; } >&2
+distcleancheck: distclean
+       @if test '$(srcdir)' = . ; then \
+         echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+         exit 1 ; \
+       fi
+       @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+         || { echo "ERROR: files left in build directory after distclean:" ; \
+              $(distcleancheck_listfiles) ; \
+              exit 1; } >&2
+check-am: all-am
+check: check-recursive
+all-am: Makefile config.h
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+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-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+       -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-hdr distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+       -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+       -rm -rf $(top_srcdir)/autom4te.cache
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
+       check-am clean clean-generic clean-recursive ctags \
+       ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \
+       dist-tarZ dist-zip distcheck distclean distclean-generic \
+       distclean-hdr distclean-recursive distclean-tags \
+       distcleancheck distdir distuninstallcheck dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs installdirs-am maintainer-clean \
+       maintainer-clean-generic maintainer-clean-recursive \
+       mostlyclean mostlyclean-generic mostlyclean-recursive pdf \
+       pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
+       uninstall-info-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 -Naur hurd-l4/missing hurd-l4-new/missing
--- hurd-l4/missing     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/missing 2005-07-13 18:30:52.381788072 +0200
@@ -0,0 +1,357 @@
+#! /bin/sh
+# Common stub for a few missing GNU programs while installing.
+
+scriptversion=2005-02-08.22
+
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+#   Free Software Foundation, Inc.
+# Originally by Fran,cois Pinard <address@hidden>, 1996.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+if test $# -eq 0; then
+  echo 1>&2 "Try \`$0 --help' for more information"
+  exit 1
+fi
+
+run=:
+
+# In the cases where this matters, `missing' is being run in the
+# srcdir already.
+if test -f configure.ac; then
+  configure_ac=configure.ac
+else
+  configure_ac=configure.in
+fi
+
+msg="missing on your system"
+
+case "$1" in
+--run)
+  # Try to run requested program, and just exit if it succeeds.
+  run=
+  shift
+  "$@" && exit 0
+  # Exit code 63 means version mismatch.  This often happens
+  # when the user try to use an ancient version of a tool on
+  # a file that requires a minimum version.  In this case we
+  # we should proceed has if the program had been absent, or
+  # if --run hadn't been passed.
+  if test $? = 63; then
+    run=:
+    msg="probably too old"
+  fi
+  ;;
+
+  -h|--h|--he|--hel|--help)
+    echo "\
+$0 [OPTION]... PROGRAM [ARGUMENT]...
+
+Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+error status if there is no known handling for PROGRAM.
+
+Options:
+  -h, --help      display this help and exit
+  -v, --version   output version information and exit
+  --run           try to run the given command, and emulate it if it fails
+
+Supported PROGRAM values:
+  aclocal      touch file \`aclocal.m4'
+  autoconf     touch file \`configure'
+  autoheader   touch file \`config.h.in'
+  automake     touch all \`Makefile.in' files
+  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
+  flex         create \`lex.yy.c', if possible, from existing .c
+  help2man     touch the output file
+  lex          create \`lex.yy.c', if possible, from existing .c
+  makeinfo     touch the output file
+  tar          try tar, gnutar, gtar, then tar without non-portable flags
+  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
+
+Send bug reports to <address@hidden>."
+    exit $?
+    ;;
+
+  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
+    echo "missing $scriptversion (GNU Automake)"
+    exit $?
+    ;;
+
+  -*)
+    echo 1>&2 "$0: Unknown \`$1' option"
+    echo 1>&2 "Try \`$0 --help' for more information"
+    exit 1
+    ;;
+
+esac
+
+# Now exit if we have it, but it failed.  Also exit now if we
+# don't have it and --version was passed (most likely to detect
+# the program).
+case "$1" in
+  lex|yacc)
+    # Not GNU programs, they don't have --version.
+    ;;
+
+  tar)
+    if test -n "$run"; then
+       echo 1>&2 "ERROR: \`tar' requires --run"
+       exit 1
+    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+       exit 1
+    fi
+    ;;
+
+  *)
+    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
+       # We have it, but it failed.
+       exit 1
+    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+       # Could not run --version or --help.  This is probably someone
+       # running `$TOOL --version' or `$TOOL --help' to check whether
+       # $TOOL exists and not knowing $TOOL uses missing.
+       exit 1
+    fi
+    ;;
+esac
+
+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
+case "$1" in
+  aclocal*)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
+         to install the \`Automake' and \`Perl' packages.  Grab them from
+         any GNU archive site."
+    touch aclocal.m4
+    ;;
+
+  autoconf)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified \`${configure_ac}'.  You might want to install the
+         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
+         archive site."
+    touch configure
+    ;;
+
+  autoheader)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
+         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
+         from any GNU archive site."
+    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' 
${configure_ac}`
+    test -z "$files" && files="config.h"
+    touch_files=
+    for f in $files; do
+      case "$f" in
+      *:*) touch_files="$touch_files "`echo "$f" |
+                                      sed -e 's/^[^:]*://' -e 's/:.*//'`;;
+      *) touch_files="$touch_files $f.in";;
+      esac
+    done
+    touch $touch_files
+    ;;
+
+  automake*)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
+         You might want to install the \`Automake' and \`Perl' packages.
+         Grab them from any GNU archive site."
+    find . -type f -name Makefile.am -print |
+          sed 's/\.am$/.in/' |
+          while read f; do touch "$f"; done
+    ;;
+
+  autom4te)
+    echo 1>&2 "\
+WARNING: \`$1' is needed, but is $msg.
+         You might have modified some files without having the
+         proper tools for further handling them.
+         You can get \`$1' as part of \`Autoconf' from any GNU
+         archive site."
+
+    file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
+    test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+    if test -f "$file"; then
+       touch $file
+    else
+       test -z "$file" || exec >$file
+       echo "#! /bin/sh"
+       echo "# Created by GNU Automake missing as a replacement of"
+       echo "#  $ $@"
+       echo "exit 0"
+       chmod +x $file
+       exit 1
+    fi
+    ;;
+
+  bison|yacc)
+    echo 1>&2 "\
+WARNING: \`$1' $msg.  You should only need it if
+         you modified a \`.y' file.  You may need the \`Bison' package
+         in order for those modifications to take effect.  You can get
+         \`Bison' from any GNU archive site."
+    rm -f y.tab.c y.tab.h
+    if [ $# -ne 1 ]; then
+        eval LASTARG="\${$#}"
+       case "$LASTARG" in
+       *.y)
+           SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
+           if [ -f "$SRCFILE" ]; then
+                cp "$SRCFILE" y.tab.c
+           fi
+           SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
+           if [ -f "$SRCFILE" ]; then
+                cp "$SRCFILE" y.tab.h
+           fi
+         ;;
+       esac
+    fi
+    if [ ! -f y.tab.h ]; then
+       echo >y.tab.h
+    fi
+    if [ ! -f y.tab.c ]; then
+       echo 'main() { return 0; }' >y.tab.c
+    fi
+    ;;
+
+  lex|flex)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified a \`.l' file.  You may need the \`Flex' package
+         in order for those modifications to take effect.  You can get
+         \`Flex' from any GNU archive site."
+    rm -f lex.yy.c
+    if [ $# -ne 1 ]; then
+        eval LASTARG="\${$#}"
+       case "$LASTARG" in
+       *.l)
+           SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
+           if [ -f "$SRCFILE" ]; then
+                cp "$SRCFILE" lex.yy.c
+           fi
+         ;;
+       esac
+    fi
+    if [ ! -f lex.yy.c ]; then
+       echo 'main() { return 0; }' >lex.yy.c
+    fi
+    ;;
+
+  help2man)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+        you modified a dependency of a manual page.  You may need the
+        \`Help2man' package in order for those modifications to take
+        effect.  You can get \`Help2man' from any GNU archive site."
+
+    file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+    if test -z "$file"; then
+       file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
+    fi
+    if [ -f "$file" ]; then
+       touch $file
+    else
+       test -z "$file" || exec >$file
+       echo ".ab help2man is required to generate this page"
+       exit 1
+    fi
+    ;;
+
+  makeinfo)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified a \`.texi' or \`.texinfo' file, or any other file
+         indirectly affecting the aspect of the manual.  The spurious
+         call might also be the consequence of using a buggy \`make' (AIX,
+         DU, IRIX).  You might want to install the \`Texinfo' package or
+         the \`GNU make' package.  Grab either from any GNU archive site."
+    # The file to touch is that specified with -o ...
+    file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+    if test -z "$file"; then
+      # ... or it is the one specified with @setfilename ...
+      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+      file=`sed -n '/address@hidden/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
+      # ... or it is derived from the source name (dir/f.texi becomes f.info)
+      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
+    fi
+    touch $file
+    ;;
+
+  tar)
+    shift
+
+    # We have already tried tar in the generic part.
+    # Look for gnutar/gtar before invocation to avoid ugly error
+    # messages.
+    if (gnutar --version > /dev/null 2>&1); then
+       gnutar "$@" && exit 0
+    fi
+    if (gtar --version > /dev/null 2>&1); then
+       gtar "$@" && exit 0
+    fi
+    firstarg="$1"
+    if shift; then
+       case "$firstarg" in
+       *o*)
+           firstarg=`echo "$firstarg" | sed s/o//`
+           tar "$firstarg" "$@" && exit 0
+           ;;
+       esac
+       case "$firstarg" in
+       *h*)
+           firstarg=`echo "$firstarg" | sed s/h//`
+           tar "$firstarg" "$@" && exit 0
+           ;;
+       esac
+    fi
+
+    echo 1>&2 "\
+WARNING: I can't seem to be able to run \`tar' with the given arguments.
+         You may want to install GNU tar or Free paxutils, or check the
+         command line arguments."
+    exit 1
+    ;;
+
+  *)
+    echo 1>&2 "\
+WARNING: \`$1' is needed, and is $msg.
+         You might have modified some files without having the
+         proper tools for further handling them.  Check the \`README' file,
+         it often tells you about the needed prerequisites for installing
+         this package.  You may also peek at any GNU archive site, in case
+         some other package would contain this missing \`$1' program."
+    exit 1
+    ;;
+esac
+
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff -Naur hurd-l4/physmem/CVS/Entries hurd-l4-new/physmem/CVS/Entries
--- hurd-l4/physmem/CVS/Entries 2005-07-13 18:31:32.605673112 +0200
+++ hurd-l4-new/physmem/CVS/Entries     2005-07-13 18:30:52.381788072 +0200
@@ -1,21 +1,21 @@
-/ChangeLog/1.40/Fri Jun 24 18:50:42 2005//
-/Makefile.am/1.18/Tue Jan 11 18:15:26 2005//
-/README/1.2/Tue Jan 11 18:15:26 2005//
-/config.m4/1.2/Fri Mar 19 20:04:17 2004//
-/container.c/1.17/Wed Apr  6 14:07:29 2005//
-/frame-entry.c/1.4/Wed Jun 22 10:18:09 2005//
-/frame.c/1.4/Wed Jun 22 10:18:09 2005//
-/headers.m4/1.1/Wed Apr  6 14:07:29 2005//
-/ia32-cmain.c/1.5/Wed Apr  6 14:07:29 2005//
-/ia32-crt0.S/1.2/Fri Sep 12 18:15:19 2003//
-/malloc-wrap.c/1.3/Mon Oct 25 13:32:32 2004//
-/malloc.c/1.1/Mon Sep 22 13:32:15 2003//
-/mmap.c/1.1/Wed Sep 24 22:13:56 2003//
-/output.c/1.7/Mon Apr 26 21:19:22 2004//
-/output.h/1.6/Fri Jan  7 11:11:46 2005//
-/physmem.c/1.27/Fri Jun 24 18:50:42 2005//
-/physmem.h/1.11/Wed Apr  6 14:07:29 2005//
-/priv.h/1.2/Wed Jun 22 10:18:09 2005//
-/zalloc.c/1.9/Tue Jan 11 18:15:26 2005//
-/zalloc.h/1.1/Wed Sep 17 01:16:53 2003//
+/ChangeLog/1.40/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.18/Wed Jul 13 15:55:51 2005//
+/README/1.2/Wed Jul 13 15:55:51 2005//
+/config.m4/1.2/Wed Jul 13 15:55:51 2005//
+/container.c/1.17/Wed Jul 13 15:55:51 2005//
+/frame-entry.c/1.4/Wed Jul 13 15:55:51 2005//
+/frame.c/1.4/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.1/Wed Jul 13 15:55:51 2005//
+/ia32-cmain.c/1.5/Wed Jul 13 15:55:51 2005//
+/ia32-crt0.S/1.2/Wed Jul 13 15:55:51 2005//
+/malloc-wrap.c/1.3/Wed Jul 13 15:55:51 2005//
+/malloc.c/1.1/Wed Jul 13 15:55:51 2005//
+/mmap.c/1.1/Wed Jul 13 15:55:51 2005//
+/output.c/1.7/Wed Jul 13 15:55:51 2005//
+/output.h/1.6/Wed Jul 13 15:55:51 2005//
+/physmem.c/1.27/Wed Jul 13 15:55:51 2005//
+/physmem.h/1.11/Wed Jul 13 15:55:51 2005//
+/priv.h/1.2/Wed Jul 13 15:55:51 2005//
+/zalloc.c/1.9/Wed Jul 13 15:55:51 2005//
+/zalloc.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/physmem/Makefile.in hurd-l4-new/physmem/Makefile.in
--- hurd-l4/physmem/Makefile.in 1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/physmem/Makefile.in     2005-07-13 18:30:52.382787920 +0200
@@ -0,0 +1,662 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for the physical memory server.
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = $(physmem_SOURCES) $(EXTRA_physmem_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+boot_PROGRAMS = physmem$(EXEEXT)
+subdir = physmem
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+       $(srcdir)/physmem.h ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bootdir)"
+bootPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(boot_PROGRAMS)
+am__physmem_SOURCES_DIST = ia32-crt0.S ia32-cmain.c output.h output.c \
+       zalloc.h zalloc.c mmap.c malloc-wrap.c physmem.h physmem.c \
+       container.c frame-entry.c frame.c
address@hidden@am__objects_1 = ia32-crt0.$(OBJEXT) \
address@hidden@ physmem-ia32-cmain.$(OBJEXT)
+am_physmem_OBJECTS = $(am__objects_1) physmem-output.$(OBJEXT) \
+       physmem-zalloc.$(OBJEXT) physmem-mmap.$(OBJEXT) \
+       physmem-malloc-wrap.$(OBJEXT) physmem-physmem.$(OBJEXT) \
+       physmem-container.$(OBJEXT) physmem-frame-entry.$(OBJEXT) \
+       physmem-frame.$(OBJEXT)
+physmem_OBJECTS = $(am_physmem_OBJECTS)
+physmem_DEPENDENCIES = ../libhurd-cap-server/libhurd-cap-server.a \
+       ../libhurd-slab/libhurd-slab.a ../libpthread/libpthread.a \
+       ../libhurd-ihash/libhurd-ihash.a \
+       ../libhurd-btree/libhurd-btree.a ../libc-parts/libc-parts.a
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CCASCOMPILE = $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS)
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(physmem_SOURCES) $(EXTRA_physmem_SOURCES)
+DIST_SOURCES = $(am__physmem_SOURCES_DIST) $(EXTRA_physmem_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@ARCH_SOURCES = ia32-crt0.S ia32-cmain.c
+bootdir = $(prefix)/boot
+physmem_CPPFLAGS = -I$(top_builddir)/include                   \
+       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)
+
+physmem_SOURCES = $(ARCH_SOURCES)                              \
+       output.h output.c                                       \
+       zalloc.h zalloc.c mmap.c malloc-wrap.c                  \
+       physmem.h physmem.c container.c frame-entry.c frame.c
+
+
+# Doug Lea's malloc is included by malloc-wrap.c.
+EXTRA_physmem_SOURCES = malloc.c
+physmem_LDFLAGS = -u_start -e_start -N -nostdlib \
+       address@hidden@
+
+physmem_LDADD = ../libhurd-cap-server/libhurd-cap-server.a     \
+       ../libhurd-slab/libhurd-slab.a                          \
+       ../libpthread/libpthread.a                              \
+       ../libhurd-ihash/libhurd-ihash.a                        \
+       ../libhurd-btree/libhurd-btree.a                        \
+       ../libc-parts/libc-parts.a -lgcc
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  physmem/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  physmem/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-bootPROGRAMS: $(boot_PROGRAMS)
+       @$(NORMAL_INSTALL)
+       test -z "$(bootdir)" || $(mkdir_p) "$(DESTDIR)$(bootdir)"
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+         ; then \
+           f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) '$$p' 
'$(DESTDIR)$(bootdir)/$$f'"; \
+          $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) "$$p" 
"$(DESTDIR)$(bootdir)/$$f" || exit 1; \
+         else :; fi; \
+       done
+
+uninstall-bootPROGRAMS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         f=`echo "$$p" | sed 
's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f '$(DESTDIR)$(bootdir)/$$f'"; \
+         rm -f "$(DESTDIR)$(bootdir)/$$f"; \
+       done
+
+clean-bootPROGRAMS:
+       -test -z "$(boot_PROGRAMS)" || rm -f $(boot_PROGRAMS)
+physmem$(EXEEXT): $(physmem_OBJECTS) $(physmem_DEPENDENCIES) 
+       @rm -f physmem$(EXEEXT)
+       $(LINK) $(physmem_LDFLAGS) $(physmem_OBJECTS) $(physmem_LDADD) $(LIBS)
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.S.o:
+       $(CCASCOMPILE) -c $<
+
+.S.obj:
+       $(CCASCOMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+physmem-ia32-cmain.o: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-ia32-cmain.o 
-MD -MP -MF "$(DEPDIR)/physmem-ia32-cmain.Tpo" -c -o physmem-ia32-cmain.o `test 
-f 'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-ia32-cmain.Tpo" 
"$(DEPDIR)/physmem-ia32-cmain.Po"; else rm -f 
"$(DEPDIR)/physmem-ia32-cmain.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='physmem-ia32-cmain.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-ia32-cmain.o `test -f 'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c
+
+physmem-ia32-cmain.obj: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
physmem-ia32-cmain.obj -MD -MP -MF "$(DEPDIR)/physmem-ia32-cmain.Tpo" -c -o 
physmem-ia32-cmain.obj `if test -f 'ia32-cmain.c'; then $(CYGPATH_W) 
'ia32-cmain.c'; else $(CYGPATH_W) '$(srcdir)/ia32-cmain.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-ia32-cmain.Tpo" 
"$(DEPDIR)/physmem-ia32-cmain.Po"; else rm -f 
"$(DEPDIR)/physmem-ia32-cmain.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='physmem-ia32-cmain.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-ia32-cmain.obj `if test -f 'ia32-cmain.c'; then $(CYGPATH_W) 
'ia32-cmain.c'; else $(CYGPATH_W) '$(srcdir)/ia32-cmain.c'; fi`
+
+physmem-output.o: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-output.o -MD 
-MP -MF "$(DEPDIR)/physmem-output.Tpo" -c -o physmem-output.o `test -f 
'output.c' || echo '$(srcdir)/'`output.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-output.Tpo" 
"$(DEPDIR)/physmem-output.Po"; else rm -f "$(DEPDIR)/physmem-output.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='physmem-output.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-output.o 
`test -f 'output.c' || echo '$(srcdir)/'`output.c
+
+physmem-output.obj: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-output.obj 
-MD -MP -MF "$(DEPDIR)/physmem-output.Tpo" -c -o physmem-output.obj `if test -f 
'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-output.Tpo" 
"$(DEPDIR)/physmem-output.Po"; else rm -f "$(DEPDIR)/physmem-output.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='physmem-output.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-output.obj 
`if test -f 'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`
+
+physmem-zalloc.o: zalloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-zalloc.o -MD 
-MP -MF "$(DEPDIR)/physmem-zalloc.Tpo" -c -o physmem-zalloc.o `test -f 
'zalloc.c' || echo '$(srcdir)/'`zalloc.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-zalloc.Tpo" 
"$(DEPDIR)/physmem-zalloc.Po"; else rm -f "$(DEPDIR)/physmem-zalloc.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='zalloc.c' 
object='physmem-zalloc.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-zalloc.o 
`test -f 'zalloc.c' || echo '$(srcdir)/'`zalloc.c
+
+physmem-zalloc.obj: zalloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-zalloc.obj 
-MD -MP -MF "$(DEPDIR)/physmem-zalloc.Tpo" -c -o physmem-zalloc.obj `if test -f 
'zalloc.c'; then $(CYGPATH_W) 'zalloc.c'; else $(CYGPATH_W) 
'$(srcdir)/zalloc.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-zalloc.Tpo" 
"$(DEPDIR)/physmem-zalloc.Po"; else rm -f "$(DEPDIR)/physmem-zalloc.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='zalloc.c' 
object='physmem-zalloc.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-zalloc.obj 
`if test -f 'zalloc.c'; then $(CYGPATH_W) 'zalloc.c'; else $(CYGPATH_W) 
'$(srcdir)/zalloc.c'; fi`
+
+physmem-mmap.o: mmap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-mmap.o -MD 
-MP -MF "$(DEPDIR)/physmem-mmap.Tpo" -c -o physmem-mmap.o `test -f 'mmap.c' || 
echo '$(srcdir)/'`mmap.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-mmap.Tpo" 
"$(DEPDIR)/physmem-mmap.Po"; else rm -f "$(DEPDIR)/physmem-mmap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='mmap.c' object='physmem-mmap.o' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-mmap.o 
`test -f 'mmap.c' || echo '$(srcdir)/'`mmap.c
+
+physmem-mmap.obj: mmap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-mmap.obj -MD 
-MP -MF "$(DEPDIR)/physmem-mmap.Tpo" -c -o physmem-mmap.obj `if test -f 
'mmap.c'; then $(CYGPATH_W) 'mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap.c'; 
fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-mmap.Tpo" 
"$(DEPDIR)/physmem-mmap.Po"; else rm -f "$(DEPDIR)/physmem-mmap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='mmap.c' 
object='physmem-mmap.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-mmap.obj 
`if test -f 'mmap.c'; then $(CYGPATH_W) 'mmap.c'; else $(CYGPATH_W) 
'$(srcdir)/mmap.c'; fi`
+
+physmem-malloc-wrap.o: malloc-wrap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
physmem-malloc-wrap.o -MD -MP -MF "$(DEPDIR)/physmem-malloc-wrap.Tpo" -c -o 
physmem-malloc-wrap.o `test -f 'malloc-wrap.c' || echo 
'$(srcdir)/'`malloc-wrap.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-malloc-wrap.Tpo" 
"$(DEPDIR)/physmem-malloc-wrap.Po"; else rm -f 
"$(DEPDIR)/physmem-malloc-wrap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc-wrap.c' 
object='physmem-malloc-wrap.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-malloc-wrap.o `test -f 'malloc-wrap.c' || echo 
'$(srcdir)/'`malloc-wrap.c
+
+physmem-malloc-wrap.obj: malloc-wrap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
physmem-malloc-wrap.obj -MD -MP -MF "$(DEPDIR)/physmem-malloc-wrap.Tpo" -c -o 
physmem-malloc-wrap.obj `if test -f 'malloc-wrap.c'; then $(CYGPATH_W) 
'malloc-wrap.c'; else $(CYGPATH_W) '$(srcdir)/malloc-wrap.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-malloc-wrap.Tpo" 
"$(DEPDIR)/physmem-malloc-wrap.Po"; else rm -f 
"$(DEPDIR)/physmem-malloc-wrap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc-wrap.c' 
object='physmem-malloc-wrap.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-malloc-wrap.obj `if test -f 'malloc-wrap.c'; then $(CYGPATH_W) 
'malloc-wrap.c'; else $(CYGPATH_W) '$(srcdir)/malloc-wrap.c'; fi`
+
+physmem-physmem.o: physmem.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-physmem.o 
-MD -MP -MF "$(DEPDIR)/physmem-physmem.Tpo" -c -o physmem-physmem.o `test -f 
'physmem.c' || echo '$(srcdir)/'`physmem.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-physmem.Tpo" 
"$(DEPDIR)/physmem-physmem.Po"; else rm -f "$(DEPDIR)/physmem-physmem.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='physmem.c' 
object='physmem-physmem.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-physmem.o 
`test -f 'physmem.c' || echo '$(srcdir)/'`physmem.c
+
+physmem-physmem.obj: physmem.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-physmem.obj 
-MD -MP -MF "$(DEPDIR)/physmem-physmem.Tpo" -c -o physmem-physmem.obj `if test 
-f 'physmem.c'; then $(CYGPATH_W) 'physmem.c'; else $(CYGPATH_W) 
'$(srcdir)/physmem.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-physmem.Tpo" 
"$(DEPDIR)/physmem-physmem.Po"; else rm -f "$(DEPDIR)/physmem-physmem.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='physmem.c' 
object='physmem-physmem.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-physmem.obj `if test -f 'physmem.c'; then $(CYGPATH_W) 'physmem.c'; 
else $(CYGPATH_W) '$(srcdir)/physmem.c'; fi`
+
+physmem-container.o: container.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-container.o 
-MD -MP -MF "$(DEPDIR)/physmem-container.Tpo" -c -o physmem-container.o `test 
-f 'container.c' || echo '$(srcdir)/'`container.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-container.Tpo" 
"$(DEPDIR)/physmem-container.Po"; else rm -f "$(DEPDIR)/physmem-container.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='container.c' 
object='physmem-container.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-container.o `test -f 'container.c' || echo '$(srcdir)/'`container.c
+
+physmem-container.obj: container.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
physmem-container.obj -MD -MP -MF "$(DEPDIR)/physmem-container.Tpo" -c -o 
physmem-container.obj `if test -f 'container.c'; then $(CYGPATH_W) 
'container.c'; else $(CYGPATH_W) '$(srcdir)/container.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-container.Tpo" 
"$(DEPDIR)/physmem-container.Po"; else rm -f "$(DEPDIR)/physmem-container.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='container.c' 
object='physmem-container.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-container.obj `if test -f 'container.c'; then $(CYGPATH_W) 
'container.c'; else $(CYGPATH_W) '$(srcdir)/container.c'; fi`
+
+physmem-frame-entry.o: frame-entry.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
physmem-frame-entry.o -MD -MP -MF "$(DEPDIR)/physmem-frame-entry.Tpo" -c -o 
physmem-frame-entry.o `test -f 'frame-entry.c' || echo 
'$(srcdir)/'`frame-entry.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-frame-entry.Tpo" 
"$(DEPDIR)/physmem-frame-entry.Po"; else rm -f 
"$(DEPDIR)/physmem-frame-entry.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='frame-entry.c' 
object='physmem-frame-entry.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-frame-entry.o `test -f 'frame-entry.c' || echo 
'$(srcdir)/'`frame-entry.c
+
+physmem-frame-entry.obj: frame-entry.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
physmem-frame-entry.obj -MD -MP -MF "$(DEPDIR)/physmem-frame-entry.Tpo" -c -o 
physmem-frame-entry.obj `if test -f 'frame-entry.c'; then $(CYGPATH_W) 
'frame-entry.c'; else $(CYGPATH_W) '$(srcdir)/frame-entry.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-frame-entry.Tpo" 
"$(DEPDIR)/physmem-frame-entry.Po"; else rm -f 
"$(DEPDIR)/physmem-frame-entry.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='frame-entry.c' 
object='physmem-frame-entry.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
physmem-frame-entry.obj `if test -f 'frame-entry.c'; then $(CYGPATH_W) 
'frame-entry.c'; else $(CYGPATH_W) '$(srcdir)/frame-entry.c'; fi`
+
+physmem-frame.o: frame.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-frame.o -MD 
-MP -MF "$(DEPDIR)/physmem-frame.Tpo" -c -o physmem-frame.o `test -f 'frame.c' 
|| echo '$(srcdir)/'`frame.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-frame.Tpo" 
"$(DEPDIR)/physmem-frame.Po"; else rm -f "$(DEPDIR)/physmem-frame.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='frame.c' 
object='physmem-frame.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-frame.o 
`test -f 'frame.c' || echo '$(srcdir)/'`frame.c
+
+physmem-frame.obj: frame.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-frame.obj 
-MD -MP -MF "$(DEPDIR)/physmem-frame.Tpo" -c -o physmem-frame.obj `if test -f 
'frame.c'; then $(CYGPATH_W) 'frame.c'; else $(CYGPATH_W) '$(srcdir)/frame.c'; 
fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-frame.Tpo" 
"$(DEPDIR)/physmem-frame.Po"; else rm -f "$(DEPDIR)/physmem-frame.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='frame.c' 
object='physmem-frame.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-frame.obj 
`if test -f 'frame.c'; then $(CYGPATH_W) 'frame.c'; else $(CYGPATH_W) 
'$(srcdir)/frame.c'; fi`
+
+physmem-malloc.o: malloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-malloc.o -MD 
-MP -MF "$(DEPDIR)/physmem-malloc.Tpo" -c -o physmem-malloc.o `test -f 
'malloc.c' || echo '$(srcdir)/'`malloc.c; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-malloc.Tpo" 
"$(DEPDIR)/physmem-malloc.Po"; else rm -f "$(DEPDIR)/physmem-malloc.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc.c' 
object='physmem-malloc.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-malloc.o 
`test -f 'malloc.c' || echo '$(srcdir)/'`malloc.c
+
+physmem-malloc.obj: malloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT physmem-malloc.obj 
-MD -MP -MF "$(DEPDIR)/physmem-malloc.Tpo" -c -o physmem-malloc.obj `if test -f 
'malloc.c'; then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/physmem-malloc.Tpo" 
"$(DEPDIR)/physmem-malloc.Po"; else rm -f "$(DEPDIR)/physmem-malloc.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc.c' 
object='physmem-malloc.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(physmem_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o physmem-malloc.obj 
`if test -f 'malloc.c'; then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc.c'; fi`
+uninstall-info-am:
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(PROGRAMS)
+installdirs:
+       for dir in "$(DESTDIR)$(bootdir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-bootPROGRAMS clean-generic 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-bootPROGRAMS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-bootPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-bootPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-bootPROGRAMS \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-bootPROGRAMS uninstall-info-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 -Naur hurd-l4/platform/alpha/bits/CVS/Entries 
hurd-l4-new/platform/alpha/bits/CVS/Entries
--- hurd-l4/platform/alpha/bits/CVS/Entries     2005-07-13 18:31:32.611672200 
+0200
+++ hurd-l4-new/platform/alpha/bits/CVS/Entries 2005-07-13 18:30:52.383787768 
+0200
@@ -1,2 +1,2 @@
-/atomic.h/1.1/Fri Oct 29 01:00:58 2004//
+/atomic.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/platform/alpha/CVS/Entries 
hurd-l4-new/platform/alpha/CVS/Entries
--- hurd-l4/platform/alpha/CVS/Entries  2005-07-13 18:31:34.605369112 +0200
+++ hurd-l4-new/platform/alpha/CVS/Entries      2005-07-13 18:30:52.383787768 
+0200
@@ -1,2 +1,2 @@
-/Makefile.am/1.1/Fri Oct 29 01:00:58 2004//
 D/bits////
+/Makefile.am/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/platform/alpha/Makefile hurd-l4-new/platform/alpha/Makefile
--- hurd-l4/platform/alpha/Makefile     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/platform/alpha/Makefile 2005-07-13 18:30:52.384787616 +0200
@@ -0,0 +1,401 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# platform/alpha/Makefile.  Generated from Makefile.in by configure.
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
+
+
+# Makefile.am - Makefile template for platform/alpha.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = .
+top_srcdir = ../..
+
+pkgdatadir = $(datadir)/hurd
+pkglibdir = $(libdir)/hurd
+pkgincludedir = $(includedir)/hurd
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = /bin/install -c
+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 = i686-pc-linux-gnu
+host_triplet = i686-pc-linux-gnu
+subdir = platform/alpha
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run aclocal-1.9
+AMDEP_FALSE = #
+AMDEP_TRUE = 
+AMTAR = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run tar
+AR = ar
+ARCH_ALPHA_FALSE = #
+ARCH_ALPHA_TRUE = 
+ARCH_AMD64_FALSE = #
+ARCH_AMD64_TRUE = 
+ARCH_IA32_FALSE = #
+ARCH_IA32_TRUE = 
+ARCH_IA64_FALSE = #
+ARCH_IA64_TRUE = 
+ARCH_POWERPC64_FALSE = #
+ARCH_POWERPC64_TRUE = 
+ARCH_POWERPC_FALSE = 
+ARCH_POWERPC_TRUE = #
+AUTOCONF = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run autoconf
+AUTOHEADER = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run autoheader
+AUTOMAKE = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run automake-1.9
+AWK = gawk
+CC = i686-pc-linux-gnu-gcc
+CCAS = i686-pc-linux-gnu-gcc
+CCASFLAGS = -std=gnu99 -Wall -g -O3 -I/usr/local/include
+CCDEPMODE = depmode=gcc3
+CFLAGS = -std=gnu99 -Wall -g -O3 -I/usr/local/include
+CPPFLAGS = 
+CYGPATH_W = echo
+DEFS = -DHAVE_CONFIG_H
+DEPDIR = .deps
+DVIPS = /usr/bin/dvips
+ECHO_C = 
+ECHO_N = -n
+ECHO_T = 
+EXEEXT = 
+FIG2DEV = /usr/bin/fig2dev
+HURD_LADEN_LOAD_ADDRESS = 0x190000
+HURD_PHYSMEM_LOAD_ADDRESS = 0x400000
+HURD_WORTEL_LOAD_ADDRESS = 0x300000
+IDL4 = /usr/local/bin/idl4
+IDL4CONFIG = /usr/local/bin/idl4-config
+IDL4FLAGS =  -i V4_GNU -p generic -T -fctypes -C "$(COMPILE) 
$($(subdir)_CPPFLAGS)"
+INSTALL_DATA = ${INSTALL} -m 644
+INSTALL_PROGRAM = ${INSTALL}
+INSTALL_SCRIPT = ${INSTALL}
+INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
+LATEX = /usr/bin/latex
+LDFLAGS = 
+LIBOBJS = 
+LIBS = 
+LTLIBOBJS = 
+MAINT = 
+MAINTAINER_MODE_FALSE = #
+MAINTAINER_MODE_TRUE = 
+MAKEINFO = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run makeinfo
+NM = nm
+OBJEXT = o
+PACKAGE = hurd
+PACKAGE_BUGREPORT = address@hidden
+PACKAGE_NAME = hurd
+PACKAGE_STRING = hurd 0.0
+PACKAGE_TARNAME = hurd
+PACKAGE_VERSION = 0.0
+PATH_SEPARATOR = :
+PS2PDF = /usr/bin/ps2pdf
+RANLIB = ranlib
+SED = /bin/sed
+SET_MAKE = 
+SHELL = /bin/sh
+SORT = /bin/sort
+STATIC_GLIBC = 
/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../i686-pc-linux-gnu/lib/libc.a
+STRIP = 
+VERSION = 0.0
+WITH_LIBC_FALSE = 
+WITH_LIBC_TRUE = #
+ac_ct_AR = ar
+ac_ct_CC = i686-pc-linux-gnu-gcc
+ac_ct_NM = nm
+ac_ct_RANLIB = ranlib
+ac_ct_STRIP = 
+ac_pt_IDL4 = /usr/local/bin/idl4
+ac_pt_IDL4CONFIG = /usr/local/bin/idl4-config
+am__fastdepCC_FALSE = #
+am__fastdepCC_TRUE = 
+am__include = include
+am__leading_dot = .
+am__quote = 
+am__tar = ${AMTAR} chof - "$$tardir"
+am__untar = ${AMTAR} xf -
+bindir = ${exec_prefix}/bin
+build = i686-pc-linux-gnu
+build_alias = i686-pc-linux-gnu
+build_cpu = i686
+build_os = linux-gnu
+build_vendor = pc
+datadir = ${prefix}/share
+exec_prefix = ${prefix}
+host = i686-pc-linux-gnu
+host_alias = 
+host_cpu = i686
+host_os = linux-gnu
+host_vendor = pc
+includedir = ${prefix}/include
+infodir = ${prefix}/info
+install_sh = /home/ness/src/hurd/hurd-l4-new/install-sh
+libdir = ${exec_prefix}/lib
+libexecdir = ${exec_prefix}/libexec
+localstatedir = ${prefix}/var
+mandir = ${prefix}/man
+mkdir_p = mkdir -p --
+oldincludedir = /usr/include
+prefix = /usr/local/l4
+program_transform_name = s,x,x,
+sbindir = ${exec_prefix}/sbin
+sharedstatedir = ${prefix}/com
+sysconfdir = ${prefix}/etc
+target_alias = 
+noinst_HEADERS = bits/atomic.h
+all: all-am
+
+.SUFFIXES:
+$(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) --gnu  platform/alpha/Makefile'; 
\
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/alpha/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
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/bits
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/platform/alpha/Makefile.in 
hurd-l4-new/platform/alpha/Makefile.in
--- hurd-l4/platform/alpha/Makefile.in  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/platform/alpha/Makefile.in      2005-07-13 18:30:52.384787616 
+0200
@@ -0,0 +1,401 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for platform/alpha.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = platform/alpha
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+noinst_HEADERS = bits/atomic.h
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  platform/alpha/Makefile'; 
\
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/alpha/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/bits
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/platform/amd64/bits/CVS/Entries 
hurd-l4-new/platform/amd64/bits/CVS/Entries
--- hurd-l4/platform/amd64/bits/CVS/Entries     2005-07-13 18:31:32.614671744 
+0200
+++ hurd-l4-new/platform/amd64/bits/CVS/Entries 2005-07-13 18:30:52.385787464 
+0200
@@ -1,2 +1,2 @@
-/atomic.h/1.1/Fri Oct 29 01:00:58 2004//
+/atomic.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/platform/amd64/CVS/Entries 
hurd-l4-new/platform/amd64/CVS/Entries
--- hurd-l4/platform/amd64/CVS/Entries  2005-07-13 18:31:34.605369112 +0200
+++ hurd-l4-new/platform/amd64/CVS/Entries      2005-07-13 18:30:52.385787464 
+0200
@@ -1,2 +1,2 @@
-/Makefile.am/1.1/Fri Oct 29 01:00:58 2004//
 D/bits////
+/Makefile.am/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/platform/amd64/Makefile hurd-l4-new/platform/amd64/Makefile
--- hurd-l4/platform/amd64/Makefile     1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/platform/amd64/Makefile 2005-07-13 18:30:52.386787312 +0200
@@ -0,0 +1,401 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# platform/amd64/Makefile.  Generated from Makefile.in by configure.
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
+
+
+# Makefile.am - Makefile template for platform/amd64.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = .
+top_srcdir = ../..
+
+pkgdatadir = $(datadir)/hurd
+pkglibdir = $(libdir)/hurd
+pkgincludedir = $(includedir)/hurd
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = /bin/install -c
+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 = i686-pc-linux-gnu
+host_triplet = i686-pc-linux-gnu
+subdir = platform/amd64
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run aclocal-1.9
+AMDEP_FALSE = #
+AMDEP_TRUE = 
+AMTAR = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run tar
+AR = ar
+ARCH_ALPHA_FALSE = #
+ARCH_ALPHA_TRUE = 
+ARCH_AMD64_FALSE = #
+ARCH_AMD64_TRUE = 
+ARCH_IA32_FALSE = #
+ARCH_IA32_TRUE = 
+ARCH_IA64_FALSE = #
+ARCH_IA64_TRUE = 
+ARCH_POWERPC64_FALSE = #
+ARCH_POWERPC64_TRUE = 
+ARCH_POWERPC_FALSE = 
+ARCH_POWERPC_TRUE = #
+AUTOCONF = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run autoconf
+AUTOHEADER = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run autoheader
+AUTOMAKE = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run automake-1.9
+AWK = gawk
+CC = i686-pc-linux-gnu-gcc
+CCAS = i686-pc-linux-gnu-gcc
+CCASFLAGS = -std=gnu99 -Wall -g -O3 -I/usr/local/include
+CCDEPMODE = depmode=gcc3
+CFLAGS = -std=gnu99 -Wall -g -O3 -I/usr/local/include
+CPPFLAGS = 
+CYGPATH_W = echo
+DEFS = -DHAVE_CONFIG_H
+DEPDIR = .deps
+DVIPS = /usr/bin/dvips
+ECHO_C = 
+ECHO_N = -n
+ECHO_T = 
+EXEEXT = 
+FIG2DEV = /usr/bin/fig2dev
+HURD_LADEN_LOAD_ADDRESS = 0x190000
+HURD_PHYSMEM_LOAD_ADDRESS = 0x400000
+HURD_WORTEL_LOAD_ADDRESS = 0x300000
+IDL4 = /usr/local/bin/idl4
+IDL4CONFIG = /usr/local/bin/idl4-config
+IDL4FLAGS =  -i V4_GNU -p generic -T -fctypes -C "$(COMPILE) 
$($(subdir)_CPPFLAGS)"
+INSTALL_DATA = ${INSTALL} -m 644
+INSTALL_PROGRAM = ${INSTALL}
+INSTALL_SCRIPT = ${INSTALL}
+INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
+LATEX = /usr/bin/latex
+LDFLAGS = 
+LIBOBJS = 
+LIBS = 
+LTLIBOBJS = 
+MAINT = 
+MAINTAINER_MODE_FALSE = #
+MAINTAINER_MODE_TRUE = 
+MAKEINFO = ${SHELL} /home/ness/src/hurd/hurd-l4-new/missing --run makeinfo
+NM = nm
+OBJEXT = o
+PACKAGE = hurd
+PACKAGE_BUGREPORT = address@hidden
+PACKAGE_NAME = hurd
+PACKAGE_STRING = hurd 0.0
+PACKAGE_TARNAME = hurd
+PACKAGE_VERSION = 0.0
+PATH_SEPARATOR = :
+PS2PDF = /usr/bin/ps2pdf
+RANLIB = ranlib
+SED = /bin/sed
+SET_MAKE = 
+SHELL = /bin/sh
+SORT = /bin/sort
+STATIC_GLIBC = 
/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../i686-pc-linux-gnu/lib/libc.a
+STRIP = 
+VERSION = 0.0
+WITH_LIBC_FALSE = 
+WITH_LIBC_TRUE = #
+ac_ct_AR = ar
+ac_ct_CC = i686-pc-linux-gnu-gcc
+ac_ct_NM = nm
+ac_ct_RANLIB = ranlib
+ac_ct_STRIP = 
+ac_pt_IDL4 = /usr/local/bin/idl4
+ac_pt_IDL4CONFIG = /usr/local/bin/idl4-config
+am__fastdepCC_FALSE = #
+am__fastdepCC_TRUE = 
+am__include = include
+am__leading_dot = .
+am__quote = 
+am__tar = ${AMTAR} chof - "$$tardir"
+am__untar = ${AMTAR} xf -
+bindir = ${exec_prefix}/bin
+build = i686-pc-linux-gnu
+build_alias = i686-pc-linux-gnu
+build_cpu = i686
+build_os = linux-gnu
+build_vendor = pc
+datadir = ${prefix}/share
+exec_prefix = ${prefix}
+host = i686-pc-linux-gnu
+host_alias = 
+host_cpu = i686
+host_os = linux-gnu
+host_vendor = pc
+includedir = ${prefix}/include
+infodir = ${prefix}/info
+install_sh = /home/ness/src/hurd/hurd-l4-new/install-sh
+libdir = ${exec_prefix}/lib
+libexecdir = ${exec_prefix}/libexec
+localstatedir = ${prefix}/var
+mandir = ${prefix}/man
+mkdir_p = mkdir -p --
+oldincludedir = /usr/include
+prefix = /usr/local/l4
+program_transform_name = s,x,x,
+sbindir = ${exec_prefix}/sbin
+sharedstatedir = ${prefix}/com
+sysconfdir = ${prefix}/etc
+target_alias = 
+noinst_HEADERS = bits/atomic.h
+all: all-am
+
+.SUFFIXES:
+$(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) --gnu  platform/amd64/Makefile'; 
\
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/amd64/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
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/bits
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/platform/amd64/Makefile.in 
hurd-l4-new/platform/amd64/Makefile.in
--- hurd-l4/platform/amd64/Makefile.in  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/platform/amd64/Makefile.in      2005-07-13 18:30:52.386787312 
+0200
@@ -0,0 +1,401 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for platform/amd64.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = platform/amd64
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+noinst_HEADERS = bits/atomic.h
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  platform/amd64/Makefile'; 
\
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/amd64/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/bits
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/platform/CVS/Entries hurd-l4-new/platform/CVS/Entries
--- hurd-l4/platform/CVS/Entries        2005-07-13 18:31:34.605369112 +0200
+++ hurd-l4-new/platform/CVS/Entries    2005-07-13 18:30:52.387787160 +0200
@@ -1,12 +1,12 @@
-/ChangeLog/1.3/Tue Nov 30 10:34:16 2004//
-/Makefile.am/1.1/Fri Oct 29 01:00:58 2004//
-/README/1.2/Fri Oct 29 03:17:09 2004//
-/atomic.h/1.1/Fri Oct 29 01:00:58 2004//
-/compiler.h/1.1/Tue Nov 30 10:34:16 2004//
-/headers.m4/1.2/Tue Nov 30 10:34:16 2004//
 D/alpha////
 D/amd64////
 D/ia32////
 D/ia64////
 D/powerpc////
 D/powerpc64////
+/ChangeLog/1.3/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.1/Wed Jul 13 15:55:51 2005//
+/README/1.2/Wed Jul 13 15:55:51 2005//
+/atomic.h/1.1/Wed Jul 13 15:55:51 2005//
+/compiler.h/1.1/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.2/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/platform/ia32/bits/CVS/Entries 
hurd-l4-new/platform/ia32/bits/CVS/Entries
--- hurd-l4/platform/ia32/bits/CVS/Entries      2005-07-13 18:31:32.616671440 
+0200
+++ hurd-l4-new/platform/ia32/bits/CVS/Entries  2005-07-13 18:30:52.387787160 
+0200
@@ -1,2 +1,2 @@
-/atomic.h/1.1/Fri Oct 29 01:00:58 2004//
+/atomic.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/platform/ia32/CVS/Entries 
hurd-l4-new/platform/ia32/CVS/Entries
--- hurd-l4/platform/ia32/CVS/Entries   2005-07-13 18:31:34.605369112 +0200
+++ hurd-l4-new/platform/ia32/CVS/Entries       2005-07-13 18:30:52.387787160 
+0200
@@ -1,2 +1,2 @@
-/Makefile.am/1.1/Fri Oct 29 01:00:58 2004//
 D/bits////
+/Makefile.am/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/platform/ia32/Makefile.in 
hurd-l4-new/platform/ia32/Makefile.in
--- hurd-l4/platform/ia32/Makefile.in   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/platform/ia32/Makefile.in       2005-07-13 18:30:52.388787008 
+0200
@@ -0,0 +1,401 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for platform/ia32.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = platform/ia32
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+noinst_HEADERS = bits/atomic.h
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  platform/ia32/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/ia32/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/bits
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/platform/ia64/bits/CVS/Entries 
hurd-l4-new/platform/ia64/bits/CVS/Entries
--- hurd-l4/platform/ia64/bits/CVS/Entries      2005-07-13 18:31:32.618671136 
+0200
+++ hurd-l4-new/platform/ia64/bits/CVS/Entries  2005-07-13 18:30:52.388787008 
+0200
@@ -1,2 +1,2 @@
-/atomic.h/1.1/Fri Oct 29 01:00:58 2004//
+/atomic.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/platform/ia64/CVS/Entries 
hurd-l4-new/platform/ia64/CVS/Entries
--- hurd-l4/platform/ia64/CVS/Entries   2005-07-13 18:31:34.605369112 +0200
+++ hurd-l4-new/platform/ia64/CVS/Entries       2005-07-13 18:30:52.388787008 
+0200
@@ -1,2 +1,2 @@
-/Makefile.am/1.1/Fri Oct 29 01:00:58 2004//
 D/bits////
+/Makefile.am/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/platform/ia64/Makefile.in 
hurd-l4-new/platform/ia64/Makefile.in
--- hurd-l4/platform/ia64/Makefile.in   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/platform/ia64/Makefile.in       2005-07-13 18:30:52.389786856 
+0200
@@ -0,0 +1,401 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for platform/ia64.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = platform/ia64
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+noinst_HEADERS = bits/atomic.h
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  platform/ia64/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/ia64/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/bits
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/platform/Makefile.in hurd-l4-new/platform/Makefile.in
--- hurd-l4/platform/Makefile.in        1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/platform/Makefile.in    2005-07-13 18:30:52.390786704 +0200
@@ -0,0 +1,522 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for platform.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = platform
+DIST_COMMON = README $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/atomic.h $(srcdir)/compiler.h \
+       ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+       html-recursive info-recursive install-data-recursive \
+       install-exec-recursive install-info-recursive \
+       install-recursive installcheck-recursive installdirs-recursive \
+       pdf-recursive ps-recursive uninstall-info-recursive \
+       uninstall-recursive
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = ia32 ia64 powerpc64 powerpc
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@ARCH_ALPHA = alpha
address@hidden@ARCH_AMD64 = amd64
address@hidden@ARCH_SUBDIR = ia32
address@hidden@ARCH_SUBDIR = ia64
address@hidden@ARCH_SUBDIR = powerpc64
address@hidden@ARCH_SUBDIR = powerpc
+SUBDIRS = $(ARCH_SUBDIR)
+
+# Main platform header files.
+noinst_HEADERS = atomic.h
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  platform/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+#     (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+       @failcom='exit 1'; \
+       for f in x $$MAKEFLAGS; do \
+         case $$f in \
+           *=* | --[!k]*);; \
+           *k*) failcom='fail=yes';; \
+         esac; \
+       done; \
+       dot_seen=no; \
+       target=`echo $@ | sed s/-recursive//`; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         echo "Making $$target in $$subdir"; \
+         if test "$$subdir" = "."; then \
+           dot_seen=yes; \
+           local_target="$$target-am"; \
+         else \
+           local_target="$$target"; \
+         fi; \
+         (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         || eval $$failcom; \
+       done; \
+       if test "$$dot_seen" = "no"; then \
+         $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+       fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+       @failcom='exit 1'; \
+       for f in x $$MAKEFLAGS; do \
+         case $$f in \
+           *=* | --[!k]*);; \
+           *k*) failcom='fail=yes';; \
+         esac; \
+       done; \
+       dot_seen=no; \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       rev=''; for subdir in $$list; do \
+         if test "$$subdir" = "."; then :; else \
+           rev="$$subdir $$rev"; \
+         fi; \
+       done; \
+       rev="$$rev ."; \
+       target=`echo $@ | sed s/-recursive//`; \
+       for subdir in $$rev; do \
+         echo "Making $$target in $$subdir"; \
+         if test "$$subdir" = "."; then \
+           local_target="$$target-am"; \
+         else \
+           local_target="$$target"; \
+         fi; \
+         (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         || eval $$failcom; \
+       done && test -z "$$fail"
+tags-recursive:
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); 
\
+       done
+ctags-recursive:
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) 
ctags); \
+       done
+
+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: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
+       if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+         include_option=--etags-include; \
+         empty_fix=.; \
+       else \
+         include_option=--include; \
+         empty_fix=; \
+       fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           test ! -f $$subdir/TAGS || \
+             tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       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: ctags-recursive $(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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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
+       list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           test -d "$(distdir)/$$subdir" \
+           || $(mkdir_p) "$(distdir)/$$subdir" \
+           || exit 1; \
+           distdir=`$(am__cd) $(distdir) && pwd`; \
+           top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+           (cd $$subdir && \
+             $(MAKE) $(AM_MAKEFLAGS) \
+               top_distdir="$$top_distdir" \
+               distdir="$$distdir/$$subdir" \
+               distdir) \
+             || exit 1; \
+         fi; \
+       done
+check-am: all-am
+check: check-recursive
+all-am: Makefile $(HEADERS)
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+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-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+       clean clean-generic clean-recursive ctags ctags-recursive \
+       distclean distclean-generic distclean-recursive distclean-tags \
+       distdir dvi dvi-am html html-am info info-am install \
+       install-am install-data install-data-am install-exec \
+       install-exec-am install-info install-info-am install-man \
+       install-strip installcheck installcheck-am installdirs \
+       installdirs-am maintainer-clean maintainer-clean-generic \
+       maintainer-clean-recursive mostlyclean mostlyclean-generic \
+       mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+       uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/platform/powerpc/bits/CVS/Entries 
hurd-l4-new/platform/powerpc/bits/CVS/Entries
--- hurd-l4/platform/powerpc/bits/CVS/Entries   2005-07-13 18:31:32.686660800 
+0200
+++ hurd-l4-new/platform/powerpc/bits/CVS/Entries       2005-07-13 
18:30:52.390786704 +0200
@@ -1,2 +1,2 @@
-/atomic.h/1.2/Fri Oct 29 03:17:09 2004//
+/atomic.h/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/platform/powerpc/CVS/Entries 
hurd-l4-new/platform/powerpc/CVS/Entries
--- hurd-l4/platform/powerpc/CVS/Entries        2005-07-13 18:31:34.604369264 
+0200
+++ hurd-l4-new/platform/powerpc/CVS/Entries    2005-07-13 18:30:52.390786704 
+0200
@@ -1,2 +1,2 @@
-/Makefile.am/1.1/Fri Oct 29 01:00:58 2004//
 D/bits////
+/Makefile.am/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/platform/powerpc/Makefile.in 
hurd-l4-new/platform/powerpc/Makefile.in
--- hurd-l4/platform/powerpc/Makefile.in        1970-01-01 01:00:00.000000000 
+0100
+++ hurd-l4-new/platform/powerpc/Makefile.in    2005-07-13 18:30:52.391786552 
+0200
@@ -0,0 +1,401 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for platform/powerpc.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = platform/powerpc
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+noinst_HEADERS = bits/atomic.h
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  
platform/powerpc/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/powerpc/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/bits
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/platform/powerpc64/bits/CVS/Entries 
hurd-l4-new/platform/powerpc64/bits/CVS/Entries
--- hurd-l4/platform/powerpc64/bits/CVS/Entries 2005-07-13 18:31:32.688660496 
+0200
+++ hurd-l4-new/platform/powerpc64/bits/CVS/Entries     2005-07-13 
18:30:52.392786400 +0200
@@ -1,2 +1,2 @@
-/atomic.h/1.2/Fri Oct 29 03:17:09 2004//
+/atomic.h/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/platform/powerpc64/CVS/Entries 
hurd-l4-new/platform/powerpc64/CVS/Entries
--- hurd-l4/platform/powerpc64/CVS/Entries      2005-07-13 18:31:34.604369264 
+0200
+++ hurd-l4-new/platform/powerpc64/CVS/Entries  2005-07-13 18:30:52.392786400 
+0200
@@ -1,2 +1,2 @@
-/Makefile.am/1.1/Fri Oct 29 01:00:58 2004//
 D/bits////
+/Makefile.am/1.1/Wed Jul 13 15:55:51 2005//
diff -Naur hurd-l4/platform/powerpc64/Makefile.in 
hurd-l4-new/platform/powerpc64/Makefile.in
--- hurd-l4/platform/powerpc64/Makefile.in      1970-01-01 01:00:00.000000000 
+0100
+++ hurd-l4-new/platform/powerpc64/Makefile.in  2005-07-13 18:30:52.392786400 
+0200
@@ -0,0 +1,401 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for platform/powerpc64.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = platform/powerpc64
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+noinst_HEADERS = bits/atomic.h
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  
platform/powerpc64/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  platform/powerpc64/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/bits
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(HEADERS)
+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 mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       ctags distclean distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-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 -Naur hurd-l4/README.idl4 hurd-l4-new/README.idl4
--- hurd-l4/README.idl4 1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/README.idl4     2005-07-13 18:30:52.421781992 +0200
@@ -0,0 +1,20559 @@
+If configure failes and attemps you to read this,
+you use the official version of idl4 that has some
+issues. To correct this, you can use this readme as
+a patch:
+$ cd /my/path/to/sources/of/idl4-1.0.2
+$ patch -p1 < /my/path/to/README.idl4
+After that, simply build idl4 (./configure, make,
+make install)
+NOTE: There are some issues, but since I'm working hard
+      on this since weeks, I symply can't see it any more.
+      It would be nice if s.o. fixes the issues and ports
+      some of the servers while I'm on vacation.
+      If you find problems, tell me, but please give me
+      an example how the generated code should look like.
+      -some temporary files aren't deleted. This shouldn't
+       be hard to fix, so please do so.
+      -there is sth. wrong with Makfile.idl4: it doesn't
+       work, because *_client.h and *_server.h aren't
+       listed as dependencies if they not exist, but they
+       don't exist if we build first time. Build them
+       manually or fix Makefile.idl4. I put files generated
+       by me in the right place, but that's not what we want.
+      -is the _discard fn called if needed? I guess no.
+
+diff -Naur idl4-1.0.2/aclocal.m4 idl4/aclocal.m4
+--- idl4-1.0.2/aclocal.m4      2003-11-03 22:37:46.000000000 +0100
++++ idl4/aclocal.m4    2005-07-10 08:06:22.464321656 +0200
+@@ -1,4 +1,4 @@
+-# generated automatically by aclocal 1.7.2 -*- Autoconf -*-
++# generated automatically by aclocal 1.7.9 -*- Autoconf -*-
+ 
+ # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
+ # Free Software Foundation, Inc.
+@@ -16,7 +16,7 @@
+ # This macro actually does too much some checks are only needed if
+ # your package does certain things.  But this isn't really a big deal.
+ 
+-# Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ 
+ # This program is free software; you can redistribute it and/or modify
+@@ -34,14 +34,7 @@
+ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ # 02111-1307, USA.
+ 
+-# serial 8
+-
+-# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+-# written in clear, in which case automake, when reading aclocal.m4,
+-# will think it sees a *use*, and therefore will trigger all it's
+-# C support machinery.  Also note that it means that autoscan, seeing
+-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+-
++# serial 10
+ 
+ AC_PREREQ([2.54])
+ 
+@@ -86,8 +79,8 @@
+  AC_SUBST([PACKAGE], [$1])dnl
+  AC_SUBST([VERSION], [$2])],
+ [_AM_SET_OPTIONS([$1])dnl
+- AC_SUBST([PACKAGE], [AC_PACKAGE_TARNAME])dnl
+- AC_SUBST([VERSION], [AC_PACKAGE_VERSION])])dnl
++ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
++ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
+ 
+ _AM_IF_OPTION([no-define],,
+ [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+@@ -108,6 +101,7 @@
+ # some platforms.
+ AC_REQUIRE([AC_PROG_AWK])dnl
+ AC_REQUIRE([AC_PROG_MAKE_SET])dnl
++AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+ 
+ _AM_IF_OPTION([no-dependencies],,
+ [AC_PROVIDE_IFELSE([AC_PROG_CC],
+@@ -130,7 +124,16 @@
+ # loop where config.status creates the headers, so we can generate
+ # our stamp files there.
+ AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
+-[_am_stamp_count=`expr ${_am_stamp_count-0} + 1`
++[# Compute $1's index in $config_headers.
++_am_stamp_count=1
++for _am_header in $config_headers :; do
++  case $_am_header in
++    $1 | $1:* )
++      break ;;
++    * )
++      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
++  esac
++done
+ echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+ 
+ # Copyright 2002  Free Software Foundation, Inc.
+@@ -160,7 +163,7 @@
+ # Call AM_AUTOMAKE_VERSION so it can be traced.
+ # This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+ AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+-       [AM_AUTOMAKE_VERSION([1.7.2])])
++       [AM_AUTOMAKE_VERSION([1.7.9])])
+ 
+ # Helper functions for option handling.                    -*- Autoconf -*-
+ 
+@@ -446,9 +449,42 @@
+ INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+ AC_SUBST([INSTALL_STRIP_PROGRAM])])
+ 
+-# serial 4                                            -*- Autoconf -*-
++#                                                          -*- Autoconf -*-
++# Copyright (C) 2003  Free Software Foundation, Inc.
+ 
+-# Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
++# This program is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2, or (at your option)
++# any later version.
++
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++# GNU General Public License for more details.
++
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
++# 02111-1307, USA.
++
++# serial 1
++
++# Check whether the underlying file-system supports filenames
++# with a leading dot.  For instance MS-DOS doesn't.
++AC_DEFUN([AM_SET_LEADING_DOT],
++[rm -rf .tst 2>/dev/null
++mkdir .tst 2>/dev/null
++if test -d .tst; then
++  am__leading_dot=.
++else
++  am__leading_dot=_
++fi
++rmdir .tst 2>/dev/null
++AC_SUBST([am__leading_dot])])
++
++# serial 5                                            -*- Autoconf -*-
++
++# Copyright (C) 1999, 2000, 2001, 2002, 2003  Free Software Foundation, Inc.
+ 
+ # This program is free software; you can redistribute it and/or modify
+ # it under the terms of the GNU General Public License as published by
+@@ -509,18 +545,32 @@
+   # using a relative directory.
+   cp "$am_depcomp" conftest.dir
+   cd conftest.dir
++  # We will build objects and dependencies in a subdirectory because
++  # it helps to detect inapplicable dependency modes.  For instance
++  # both Tru64's cc and ICC support -MD to output dependencies as a
++  # side effect of compilation, but ICC will put the dependencies in
++  # the current directory while Tru64 will put them in the object
++  # directory.
++  mkdir sub
+ 
+   am_cv_$1_dependencies_compiler_type=none
+   if test "$am_compiler_list" = ""; then
+      am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
+   fi
+   for depmode in $am_compiler_list; do
++    # Setup a source with many dependencies, because some compilers
++    # like to wrap large dependency lists on column 80 (with \), and
++    # we should not choose a depcomp mode which is confused by this.
++    #
+     # We need to recreate these files for each test, as the compiler may
+     # overwrite some of them when testing with obscure command lines.
+     # This happens at least with the AIX C compiler.
+-    echo '#include "conftest.h"' > conftest.c
+-    echo 'int i;' > conftest.h
+-    echo "${am__include} ${am__quote}conftest.Po${am__quote}" > confmf
++    : > sub/conftest.c
++    for i in 1 2 3 4 5 6; do
++      echo '#include "conftst'$i'.h"' >> sub/conftest.c
++      : > sub/conftst$i.h
++    done
++    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+ 
+     case $depmode in
+     nosideeffect)
+@@ -538,13 +588,20 @@
+     # mode.  It turns out that the SunPro C++ compiler does not properly
+     # handle `-M -o', and we need to detect this.
+     if depmode=$depmode \
+-       source=conftest.c object=conftest.o \
+-       depfile=conftest.Po tmpdepfile=conftest.TPo \
+-       $SHELL ./depcomp $depcc -c -o conftest.o conftest.c >/dev/null 2>&1 &&
+-       grep conftest.h conftest.Po > /dev/null 2>&1 &&
++       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
++       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
++       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
++         >/dev/null 2>conftest.err &&
++       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
++       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+-      am_cv_$1_dependencies_compiler_type=$depmode
+-      break
++      # icc doesn't choke on unknown options, it will just issue warnings
++      # (even with -Werror).  So we grep stderr for any message
++      # that says an option was ignored.
++      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
++        am_cv_$1_dependencies_compiler_type=$depmode
++        break
++      fi
+     fi
+   done
+ 
+@@ -566,16 +623,8 @@
+ # Choose a directory name for dependency files.
+ # This macro is AC_REQUIREd in _AM_DEPENDENCIES
+ AC_DEFUN([AM_SET_DEPDIR],
+-[rm -f .deps 2>/dev/null
+-mkdir .deps 2>/dev/null
+-if test -d .deps; then
+-  DEPDIR=.deps
+-else
+-  # MS-DOS does not allow filenames that begin with a dot.
+-  DEPDIR=_deps
+-fi
+-rmdir .deps 2>/dev/null
+-AC_SUBST([DEPDIR])
++[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
++AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+ ])
+ 
+ 
+@@ -679,7 +728,7 @@
+ 
+ # Check to see how 'make' treats includes.    -*- Autoconf -*-
+ 
+-# Copyright (C) 2001, 2002 Free Software Foundation, Inc.
++# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ 
+ # This program is free software; you can redistribute it and/or modify
+ # it under the terms of the GNU General Public License as published by
+@@ -704,8 +753,9 @@
+ AC_DEFUN([AM_MAKE_INCLUDE],
+ [am_make=${MAKE-make}
+ cat > confinc << 'END'
+-doit:
++am__doit:
+       @echo done
++.PHONY: am__doit
+ END
+ # If we don't find an include directive, just comment out the code.
+ AC_MSG_CHECKING([for style of include used by $am_make])
+@@ -733,9 +783,9 @@
+       _am_result=BSD
+    fi
+ fi
+-AC_SUBST(am__include)
+-AC_SUBST(am__quote)
+-AC_MSG_RESULT($_am_result)
++AC_SUBST([am__include])
++AC_SUBST([am__quote])
++AC_MSG_RESULT([$_am_result])
+ rm -f confinc confmf
+ ])
+ 
+diff -Naur idl4-1.0.2/AUTHORS idl4/AUTHORS
+--- idl4-1.0.2/AUTHORS 2002-05-21 10:07:38.000000000 +0200
++++ idl4/AUTHORS       2005-07-12 21:50:14.341594080 +0200
+@@ -1,3 +1,6 @@
+ Andreas Haeberlen originally designed and implemented IDL4.
+ 
+ Espen Skoglund added the autoconf-based build process.
++
++Tom Bachmann did some bugfix and added V4_GNU backend aswell
++as the options -M -C and -T.
+diff -Naur idl4-1.0.2/autom4te.cache/output.0 idl4/autom4te.cache/output.0
+--- idl4-1.0.2/autom4te.cache/output.0 1970-01-01 01:00:00.000000000 +0100
++++ idl4/autom4te.cache/output.0       2005-07-10 08:06:23.544157496 +0200
+@@ -0,0 +1,5933 @@
address@hidden:@! /bin/sh
address@hidden:@ Guess values for system-dependent variables and create 
Makefiles.
address@hidden:@ Generated by GNU Autoconf 2.59.
address@hidden:@ 
address@hidden:@ Copyright (C) 2003 Free Software Foundation, Inc.
address@hidden:@ This configure script is free software; the Free Software 
Foundation
address@hidden:@ gives unlimited permission to copy, distribute and modify it.
++## --------------------- ##
++## M4sh Initialization.  ##
++## --------------------- ##
++
++# Be Bourne compatible
++if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
++  emulate sh
++  NULLCMD=:
++  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
++  # is contrary to our usage.  Disable this feature.
++  alias -g '${1+"$@"}'='"$@"'
++elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
++  set -o posix
++fi
++DUALCASE=1; export DUALCASE # for MKS sh
++
++# Support unset when possible.
++if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
++  as_unset=unset
++else
++  as_unset=false
++fi
++
++
++# Work around bugs in pre-3.0 UWIN ksh.
++$as_unset ENV MAIL MAILPATH
++PS1='$ '
++PS2='> '
++PS4='+ '
++
++# NLS nuisances.
++for as_var in \
++  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
++  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
++  LC_TELEPHONE LC_TIME
++do
++  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
++    eval $as_var=C; export $as_var
++  else
++    $as_unset $as_var
++  fi
++done
++
++# Required to use basename.
++if expr a : '\(a\)' >/dev/null 2>&1; then
++  as_expr=expr
++else
++  as_expr=false
++fi
++
++if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
++  as_basename=basename
++else
++  as_basename=false
++fi
++
++
++# Name of the executable.
++as_me=`$as_basename "$0" ||
++$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
++       X"$0" : 'X\(//\)$' \| \
++       X"$0" : 'X\(/\)$' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X/"$0" |
++    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
++        /^X\/\(\/\/\)$/{ s//\1/; q; }
++        /^X\/\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++
++
++# PATH needs CR, and LINENO needs CR and PATH.
++# Avoid depending upon Character Ranges.
++as_cr_letters='abcdefghijklmnopqrstuvwxyz'
++as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
++as_cr_Letters=$as_cr_letters$as_cr_LETTERS
++as_cr_digits='0123456789'
++as_cr_alnum=$as_cr_Letters$as_cr_digits
++
++# The user is always right.
++if test "${PATH_SEPARATOR+set}" != set; then
++  echo "#! /bin/sh" >conf$$.sh
++  echo  "exit 0"   >>conf$$.sh
++  chmod +x conf$$.sh
++  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
++    PATH_SEPARATOR=';'
++  else
++    PATH_SEPARATOR=:
++  fi
++  rm -f conf$$.sh
++fi
++
++
++  as_lineno_1=$LINENO
++  as_lineno_2=$LINENO
++  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++  test "x$as_lineno_1" != "x$as_lineno_2" &&
++  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
++  # Find who we are.  Look in the path if we contain no path at all
++  # relative or not.
++  case $0 in
++    *[\\/]* ) as_myself=$0 ;;
++    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
++done
++
++       ;;
++  esac
++  # We did not find ourselves, most probably we were run as `sh COMMAND'
++  # in which case we are not to be found in the path.
++  if test "x$as_myself" = x; then
++    as_myself=$0
++  fi
++  if test ! -f "$as_myself"; then
++    { echo "$as_me: error: cannot find myself; rerun with an absolute path" 
>&2
++   { (exit 1); exit 1; }; }
++  fi
++  case $CONFIG_SHELL in
++  '')
++    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for as_base in sh bash ksh sh5; do
++       case $as_dir in
++       /*)
++         if ("$as_dir/$as_base" -c '
++  as_lineno_1=$LINENO
++  as_lineno_2=$LINENO
++  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++  test "x$as_lineno_1" != "x$as_lineno_2" &&
++  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
++           $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { 
BASH_ENV=; export BASH_ENV; }
++           $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
++           CONFIG_SHELL=$as_dir/$as_base
++           export CONFIG_SHELL
++           exec "$CONFIG_SHELL" "$0" ${1+"$@"}
++         fi;;
++       esac
++       done
++done
++;;
++  esac
++
++  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
++  # uniformly replaced by the line number.  The first 'sed' inserts a
++  # line-number line before each line; the second 'sed' does the real
++  # work.  The second script uses 'N' to pair each line-number line
++  # with the numbered line, and appends trailing '-' during
++  # substitution so that $LINENO is not a special case at line end.
++  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
++  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
++  sed '=' <$as_myself |
++    sed '
++      N
++      s,$,-,
++      : loop
++      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
++      t loop
++      s,-$,,
++      s,^['$as_cr_digits']*\n,,
++    ' >$as_me.lineno &&
++  chmod +x $as_me.lineno ||
++    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX 
shell" >&2
++   { (exit 1); exit 1; }; }
++
++  # Don't try to exec as it changes $[0], causing all sort of problems
++  # (the dirname of $[0] is not the place where we might find the
++  # original and so on.  Autoconf is especially sensible to this).
++  . ./$as_me.lineno
++  # Exit status is that of the last command.
++  exit
++}
++
++
++case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
++  *c*,-n*) ECHO_N= ECHO_C='
++' ECHO_T='    ' ;;
++  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
++  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
++esac
++
++if expr a : '\(a\)' >/dev/null 2>&1; then
++  as_expr=expr
++else
++  as_expr=false
++fi
++
++rm -f conf$$ conf$$.exe conf$$.file
++echo >conf$$.file
++if ln -s conf$$.file conf$$ 2>/dev/null; then
++  # We could just check for DJGPP; but this test a) works b) is more generic
++  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
++  if test -f conf$$.exe; then
++    # Don't use ln at all; we don't have any links
++    as_ln_s='cp -p'
++  else
++    as_ln_s='ln -s'
++  fi
++elif ln conf$$.file conf$$ 2>/dev/null; then
++  as_ln_s=ln
++else
++  as_ln_s='cp -p'
++fi
++rm -f conf$$ conf$$.exe conf$$.file
++
++if mkdir -p . 2>/dev/null; then
++  as_mkdir_p=:
++else
++  test -d ./-p && rmdir ./-p
++  as_mkdir_p=false
++fi
++
++as_executable_p="test -f"
++
++# Sed expression to map a string onto a valid CPP name.
++as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
++
++# Sed expression to map a string onto a valid variable name.
++as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
++
++
++# IFS
++# We need space, tab and new line, in precisely that order.
++as_nl='
++'
++IFS="         $as_nl"
++
++# CDPATH.
++$as_unset CDPATH
++
++
++# Name of the host.
++# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
++# so uname gets run too.
++ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
++
++exec 6>&1
++
++#
++# Initializations.
++#
++ac_default_prefix=/usr/local
++ac_config_libobj_dir=.
++cross_compiling=no
++subdirs=
++MFLAGS=
++MAKEFLAGS=
++SHELL=${CONFIG_SHELL-/bin/sh}
++
++# Maximum number of lines to put in a shell here document.
++# This variable seems obsolete.  It should probably be removed, and
++# only ac_max_sed_lines should be used.
++: ${ac_max_here_lines=38}
++
++# Identity of this package.
++PACKAGE_NAME=
++PACKAGE_TARNAME=
++PACKAGE_VERSION=
++PACKAGE_STRING=
++PACKAGE_BUGREPORT=
++
++ac_unique_file="src/base/main.cc"
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME 
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix 
program_transform_name bindir sbindir libexecdir datadir sysconfdir 
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir 
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS 
INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL 
AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP 
INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot CC CFLAGS LDFLAGS CPPFLAGS 
ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE 
AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS 
ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CCAS CCASFLAGS 
RANLIB ac_ct_RANLIB LEX LEXLIB LEX_OUTPUT_ROOT YACC LN_S LATEX BIBTEX DVIPS 
DVIPDF HAS_LATEX_TRUE HAS_LATEX_FALSE HAS_DVIPS_TRUE HAS_DVIPS_FALSE 
HAS_DVIPDF_TRUE HAS_DVIPDF_FALSE WITH_TESTSUITE_TRUE WITH_TESTSUITE_FALSE 
WITH_HAZELNUT_TRUE WITH_HAZELNUT_FALSE WITH_EXAMPLES_TRUE WITH_EXAMPLES_FALSE 
WITH_PISTACHIO_IA32_TRUE WITH_PISTACHIO_IA32_FALSE WITH_PISTACHIO_IA64_TRUE 
WITH_PISTACHIO_IA64_FALSE WITH_PISTACHIO_ARM_TRUE WITH_PISTACHIO_ARM_FALSE 
WITH_PISTACHIO_MIPS64_TRUE WITH_PISTACHIO_MIPS64_FALSE 
WITH_PISTACHIO_ALPHA_TRUE WITH_PISTACHIO_ALPHA_FALSE 
WITH_PISTACHIO_POWERPC_TRUE WITH_PISTACHIO_POWERPC_FALSE WITH_FIASCO_TRUE 
WITH_FIASCO_FALSE TESTSUITE_DIR HAZELNUT_DIR PISTACHIO_IA32_DIR 
PISTACHIO_IA64_DIR PISTACHIO_ARM_DIR PISTACHIO_MIPS64_DIR PISTACHIO_ALPHA_DIR 
PISTACHIO_POWERPC_DIR FIASCO_DIR WITH_TOOLCHAIN_IA32_TRUE 
WITH_TOOLCHAIN_IA32_FALSE WITH_TOOLCHAIN_IA64_TRUE WITH_TOOLCHAIN_IA64_FALSE 
WITH_TOOLCHAIN_ARM_TRUE WITH_TOOLCHAIN_ARM_FALSE WITH_TOOLCHAIN_ALPHA_TRUE 
WITH_TOOLCHAIN_ALPHA_FALSE WITH_TOOLCHAIN_MIPS64_TRUE 
WITH_TOOLCHAIN_MIPS64_FALSE WITH_TOOLCHAIN_POWERPC_TRUE 
WITH_TOOLCHAIN_POWERPC_FALSE IA32_PREFIX IA64_PREFIX ARM_PREFIX ALPHA_PREFIX 
MIPS64_PREFIX POWERPC_PREFIX NEED_GETOPT_LONG_TRUE NEED_GETOPT_LONG_FALSE 
MAINTAINERCLEANFILES LIB@&address@hidden LTLIBOBJS'
++ac_subst_files=''
++
++# Initialize some variables set by options.
++ac_init_help=
++ac_init_version=false
++# The variables have the same names as the options, with
++# dashes changed to underlines.
++cache_file=/dev/null
++exec_prefix=NONE
++no_create=
++no_recursion=
++prefix=NONE
++program_prefix=NONE
++program_suffix=NONE
++program_transform_name=s,x,x,
++silent=
++site=
++srcdir=
++verbose=
++x_includes=NONE
++x_libraries=NONE
++
++# Installation directory options.
++# These are left unexpanded so users can "make install exec_prefix=/foo"
++# and all the variables that are supposed to be based on exec_prefix
++# by default will actually change.
++# Use braces instead of parens because sh, perl, etc. also accept them.
++bindir='${exec_prefix}/bin'
++sbindir='${exec_prefix}/sbin'
++libexecdir='${exec_prefix}/libexec'
++datadir='${prefix}/share'
++sysconfdir='${prefix}/etc'
++sharedstatedir='${prefix}/com'
++localstatedir='${prefix}/var'
++libdir='${exec_prefix}/lib'
++includedir='${prefix}/include'
++oldincludedir='/usr/include'
++infodir='${prefix}/info'
++mandir='${prefix}/man'
++
++ac_prev=
++for ac_option
++do
++  # If the previous option needs an argument, assign it.
++  if test -n "$ac_prev"; then
++    eval "$ac_prev=\$ac_option"
++    ac_prev=
++    continue
++  fi
++
++  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
++
++  # Accept the important Cygnus configure options, so we can diagnose typos.
++
++  case $ac_option in
++
++  -bindir | --bindir | --bindi | --bind | --bin | --bi)
++    ac_prev=bindir ;;
++  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
++    bindir=$ac_optarg ;;
++
++  -build | --build | --buil | --bui | --bu)
++    ac_prev=build_alias ;;
++  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
++    build_alias=$ac_optarg ;;
++
++  -cache-file | --cache-file | --cache-fil | --cache-fi \
++  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
++    ac_prev=cache_file ;;
++  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
++  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | 
--c=*)
++    cache_file=$ac_optarg ;;
++
++  --config-cache | -C)
++    cache_file=config.cache ;;
++
++  -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
++    ac_prev=datadir ;;
++  -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
++  | --da=*)
++    datadir=$ac_optarg ;;
++
++  -disable-* | --disable-*)
++    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
++    # Reject names that are not valid shell variable names.
++    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
++   { (exit 1); exit 1; }; }
++    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
++    eval "enable_$ac_feature=no" ;;
++
++  -enable-* | --enable-*)
++    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
++    # Reject names that are not valid shell variable names.
++    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
++   { (exit 1); exit 1; }; }
++    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
++    case $ac_option in
++      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
++      *) ac_optarg=yes ;;
++    esac
++    eval "enable_$ac_feature='$ac_optarg'" ;;
++
++  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
++  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
++  | --exec | --exe | --ex)
++    ac_prev=exec_prefix ;;
++  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
++  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
++  | --exec=* | --exe=* | --ex=*)
++    exec_prefix=$ac_optarg ;;
++
++  -gas | --gas | --ga | --g)
++    # Obsolete; use --with-gas.
++    with_gas=yes ;;
++
++  -help | --help | --hel | --he | -h)
++    ac_init_help=long ;;
++  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
++    ac_init_help=recursive ;;
++  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
++    ac_init_help=short ;;
++
++  -host | --host | --hos | --ho)
++    ac_prev=host_alias ;;
++  -host=* | --host=* | --hos=* | --ho=*)
++    host_alias=$ac_optarg ;;
++
++  -includedir | --includedir | --includedi | --included | --include \
++  | --includ | --inclu | --incl | --inc)
++    ac_prev=includedir ;;
++  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* 
\
++  | --includ=* | --inclu=* | --incl=* | --inc=*)
++    includedir=$ac_optarg ;;
++
++  -infodir | --infodir | --infodi | --infod | --info | --inf)
++    ac_prev=infodir ;;
++  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
++    infodir=$ac_optarg ;;
++
++  -libdir | --libdir | --libdi | --libd)
++    ac_prev=libdir ;;
++  -libdir=* | --libdir=* | --libdi=* | --libd=*)
++    libdir=$ac_optarg ;;
++
++  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
++  | --libexe | --libex | --libe)
++    ac_prev=libexecdir ;;
++  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* 
\
++  | --libexe=* | --libex=* | --libe=*)
++    libexecdir=$ac_optarg ;;
++
++  -localstatedir | --localstatedir | --localstatedi | --localstated \
++  | --localstate | --localstat | --localsta | --localst \
++  | --locals | --local | --loca | --loc | --lo)
++    ac_prev=localstatedir ;;
++  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
++  | --localstate=* | --localstat=* | --localsta=* | --localst=* \
++  | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
++    localstatedir=$ac_optarg ;;
++
++  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
++    ac_prev=mandir ;;
++  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
++    mandir=$ac_optarg ;;
++
++  -nfp | --nfp | --nf)
++    # Obsolete; use --without-fp.
++    with_fp=no ;;
++
++  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
++  | --no-cr | --no-c | -n)
++    no_create=yes ;;
++
++  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
++  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
++    no_recursion=yes ;;
++
++  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
++  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
++  | --oldin | --oldi | --old | --ol | --o)
++    ac_prev=oldincludedir ;;
++  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
++  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
++  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
++    oldincludedir=$ac_optarg ;;
++
++  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
++    ac_prev=prefix ;;
++  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
++    prefix=$ac_optarg ;;
++
++  -program-prefix | --program-prefix | --program-prefi | --program-pref \
++  | --program-pre | --program-pr | --program-p)
++    ac_prev=program_prefix ;;
++  -program-prefix=* | --program-prefix=* | --program-prefi=* \
++  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
++    program_prefix=$ac_optarg ;;
++
++  -program-suffix | --program-suffix | --program-suffi | --program-suff \
++  | --program-suf | --program-su | --program-s)
++    ac_prev=program_suffix ;;
++  -program-suffix=* | --program-suffix=* | --program-suffi=* \
++  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
++    program_suffix=$ac_optarg ;;
++
++  -program-transform-name | --program-transform-name \
++  | --program-transform-nam | --program-transform-na \
++  | --program-transform-n | --program-transform- \
++  | --program-transform | --program-transfor \
++  | --program-transfo | --program-transf \
++  | --program-trans | --program-tran \
++  | --progr-tra | --program-tr | --program-t)
++    ac_prev=program_transform_name ;;
++  -program-transform-name=* | --program-transform-name=* \
++  | --program-transform-nam=* | --program-transform-na=* \
++  | --program-transform-n=* | --program-transform-=* \
++  | --program-transform=* | --program-transfor=* \
++  | --program-transfo=* | --program-transf=* \
++  | --program-trans=* | --program-tran=* \
++  | --progr-tra=* | --program-tr=* | --program-t=*)
++    program_transform_name=$ac_optarg ;;
++
++  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
++  | -silent | --silent | --silen | --sile | --sil)
++    silent=yes ;;
++
++  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
++    ac_prev=sbindir ;;
++  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
++  | --sbi=* | --sb=*)
++    sbindir=$ac_optarg ;;
++
++  -sharedstatedir | --sharedstatedir | --sharedstatedi \
++  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
++  | --sharedst | --shareds | --shared | --share | --shar \
++  | --sha | --sh)
++    ac_prev=sharedstatedir ;;
++  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
++  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
++  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
++  | --sha=* | --sh=*)
++    sharedstatedir=$ac_optarg ;;
++
++  -site | --site | --sit)
++    ac_prev=site ;;
++  -site=* | --site=* | --sit=*)
++    site=$ac_optarg ;;
++
++  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
++    ac_prev=srcdir ;;
++  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
++    srcdir=$ac_optarg ;;
++
++  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
++  | --syscon | --sysco | --sysc | --sys | --sy)
++    ac_prev=sysconfdir ;;
++  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* 
\
++  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
++    sysconfdir=$ac_optarg ;;
++
++  -target | --target | --targe | --targ | --tar | --ta | --t)
++    ac_prev=target_alias ;;
++  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
++    target_alias=$ac_optarg ;;
++
++  -v | -verbose | --verbose | --verbos | --verbo | --verb)
++    verbose=yes ;;
++
++  -version | --version | --versio | --versi | --vers | -V)
++    ac_init_version=: ;;
++
++  -with-* | --with-*)
++    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
++    # Reject names that are not valid shell variable names.
++    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid package name: $ac_package" >&2
++   { (exit 1); exit 1; }; }
++    ac_package=`echo $ac_package| sed 's/-/_/g'`
++    case $ac_option in
++      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
++      *) ac_optarg=yes ;;
++    esac
++    eval "with_$ac_package='$ac_optarg'" ;;
++
++  -without-* | --without-*)
++    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
++    # Reject names that are not valid shell variable names.
++    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid package name: $ac_package" >&2
++   { (exit 1); exit 1; }; }
++    ac_package=`echo $ac_package | sed 's/-/_/g'`
++    eval "with_$ac_package=no" ;;
++
++  --x)
++    # Obsolete; use --with-x.
++    with_x=yes ;;
++
++  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
++  | --x-incl | --x-inc | --x-in | --x-i)
++    ac_prev=x_includes ;;
++  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* 
\
++  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
++    x_includes=$ac_optarg ;;
++
++  -x-libraries | --x-libraries | --x-librarie | --x-librari \
++  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
++    ac_prev=x_libraries ;;
++  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
++  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
++    x_libraries=$ac_optarg ;;
++
++  -*) { echo "$as_me: error: unrecognized option: $ac_option
++Try \`$0 --help' for more information." >&2
++   { (exit 1); exit 1; }; }
++    ;;
++
++  *=*)
++    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
++    # Reject names that are not valid shell variable names.
++    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
++   { (exit 1); exit 1; }; }
++    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
++    eval "$ac_envvar='$ac_optarg'"
++    export $ac_envvar ;;
++
++  *)
++    # FIXME: should be removed in autoconf 3.0.
++    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++    : ${build_alias=$ac_option} ${host_alias=$ac_option} 
${target_alias=$ac_option}
++    ;;
++
++  esac
++done
++
++if test -n "$ac_prev"; then
++  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
++  { echo "$as_me: error: missing argument to $ac_option" >&2
++   { (exit 1); exit 1; }; }
++fi
++
++# Be sure to have absolute paths.
++for ac_var in exec_prefix prefix
++do
++  eval ac_val=$`echo $ac_var`
++  case $ac_val in
++    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
++    *)  { echo "$as_me: error: expected an absolute directory name for 
--$ac_var: $ac_val" >&2
++   { (exit 1); exit 1; }; };;
++  esac
++done
++
++# Be sure to have absolute paths.
++for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
++            localstatedir libdir includedir oldincludedir infodir mandir
++do
++  eval ac_val=$`echo $ac_var`
++  case $ac_val in
++    [\\/$]* | ?:[\\/]* ) ;;
++    *)  { echo "$as_me: error: expected an absolute directory name for 
--$ac_var: $ac_val" >&2
++   { (exit 1); exit 1; }; };;
++  esac
++done
++
++# There might be people who depend on the old broken behavior: `$host'
++# used to hold the argument of --host etc.
++# FIXME: To remove some day.
++build=$build_alias
++host=$host_alias
++target=$target_alias
++
++# FIXME: To remove some day.
++if test "x$host_alias" != x; then
++  if test "x$build_alias" = x; then
++    cross_compiling=maybe
++    echo "$as_me: WARNING: If you wanted to set the --build type, don't use 
--host.
++    If a cross compiler is detected then cross compile mode will be used." >&2
++  elif test "x$build_alias" != "x$host_alias"; then
++    cross_compiling=yes
++  fi
++fi
++
++ac_tool_prefix=
++test -n "$host_alias" && ac_tool_prefix=$host_alias-
++
++test "$silent" = yes && exec 6>/dev/null
++
++
++# Find the source files, if location was not specified.
++if test -z "$srcdir"; then
++  ac_srcdir_defaulted=yes
++  # Try the directory containing this script, then its parent.
++  ac_confdir=`(dirname "$0") 2>/dev/null ||
++$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$0" : 'X\(//\)[^/]' \| \
++       X"$0" : 'X\(//\)$' \| \
++       X"$0" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$0" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++  srcdir=$ac_confdir
++  if test ! -r $srcdir/$ac_unique_file; then
++    srcdir=..
++  fi
++else
++  ac_srcdir_defaulted=no
++fi
++if test ! -r $srcdir/$ac_unique_file; then
++  if test "$ac_srcdir_defaulted" = yes; then
++    { echo "$as_me: error: cannot find sources ($ac_unique_file) in 
$ac_confdir or .." >&2
++   { (exit 1); exit 1; }; }
++  else
++    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" 
>&2
++   { (exit 1); exit 1; }; }
++  fi
++fi
++(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
++  { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not 
work" >&2
++   { (exit 1); exit 1; }; }
++srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
++ac_env_build_alias_set=${build_alias+set}
++ac_env_build_alias_value=$build_alias
++ac_cv_env_build_alias_set=${build_alias+set}
++ac_cv_env_build_alias_value=$build_alias
++ac_env_host_alias_set=${host_alias+set}
++ac_env_host_alias_value=$host_alias
++ac_cv_env_host_alias_set=${host_alias+set}
++ac_cv_env_host_alias_value=$host_alias
++ac_env_target_alias_set=${target_alias+set}
++ac_env_target_alias_value=$target_alias
++ac_cv_env_target_alias_set=${target_alias+set}
++ac_cv_env_target_alias_value=$target_alias
++ac_env_CC_set=${CC+set}
++ac_env_CC_value=$CC
++ac_cv_env_CC_set=${CC+set}
++ac_cv_env_CC_value=$CC
++ac_env_CFLAGS_set=${CFLAGS+set}
++ac_env_CFLAGS_value=$CFLAGS
++ac_cv_env_CFLAGS_set=${CFLAGS+set}
++ac_cv_env_CFLAGS_value=$CFLAGS
++ac_env_LDFLAGS_set=${LDFLAGS+set}
++ac_env_LDFLAGS_value=$LDFLAGS
++ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
++ac_cv_env_LDFLAGS_value=$LDFLAGS
++ac_env_CPPFLAGS_set=${CPPFLAGS+set}
++ac_env_CPPFLAGS_value=$CPPFLAGS
++ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
++ac_cv_env_CPPFLAGS_value=$CPPFLAGS
++ac_env_CXX_set=${CXX+set}
++ac_env_CXX_value=$CXX
++ac_cv_env_CXX_set=${CXX+set}
++ac_cv_env_CXX_value=$CXX
++ac_env_CXXFLAGS_set=${CXXFLAGS+set}
++ac_env_CXXFLAGS_value=$CXXFLAGS
++ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set}
++ac_cv_env_CXXFLAGS_value=$CXXFLAGS
++
++#
++# Report the --help message.
++#
++if test "$ac_init_help" = "long"; then
++  # Omit some internal or obsolete options to make the list less imposing.
++  # This message is too long to be a string in the A/UX 3.1 sh.
++  cat <<_ACEOF
++\`configure' configures this package to adapt to many kinds of systems.
++
++Usage: $0 [OPTION]... [VAR=VALUE]...
++
++To assign environment variables (e.g., CC, CFLAGS...), specify them as
++VAR=VALUE.  See below for descriptions of some of the useful variables.
++
++Defaults for the options are specified in brackets.
++
++Configuration:
++  -h, --help              display this help and exit
++      --help=short        display options specific to this package
++      --help=recursive    display the short help of all the included packages
++  -V, --version           display version information and exit
++  -q, --quiet, --silent   do not print \`checking...' messages
++      --cache-file=FILE   cache test results in FILE [disabled]
++  -C, --config-cache      alias for \`--cache-file=config.cache'
++  -n, --no-create         do not create output files
++      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
++
++_ACEOF
++
++  cat <<_ACEOF
++Installation directories:
++  --prefix=PREFIX         install architecture-independent files in PREFIX
++                        [$ac_default_prefix]
++  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
++                        [PREFIX]
++
++By default, \`make install' will install all the files in
++\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
++an installation prefix other than \`$ac_default_prefix' using \`--prefix',
++for instance \`--prefix=\$HOME'.
++
++For better control, use the options below.
++
++Fine tuning of the installation directories:
++  --bindir=DIR           user executables [EPREFIX/bin]
++  --sbindir=DIR          system admin executables [EPREFIX/sbin]
++  --libexecdir=DIR       program executables [EPREFIX/libexec]
++  --datadir=DIR          read-only architecture-independent data 
[PREFIX/share]
++  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
++  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
++  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
++  --libdir=DIR           object code libraries [EPREFIX/lib]
++  --includedir=DIR       C header files [PREFIX/include]
++  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
++  --infodir=DIR          info documentation [PREFIX/info]
++  --mandir=DIR           man documentation [PREFIX/man]
++_ACEOF
++
++  cat <<\_ACEOF
++
++Program names:
++  --program-prefix=PREFIX            prepend PREFIX to installed program names
++  --program-suffix=SUFFIX            append SUFFIX to installed program names
++  --program-transform-name=PROGRAM   run sed PROGRAM on installed program 
names
++_ACEOF
++fi
++
++if test -n "$ac_init_help"; then
++
++  cat <<\_ACEOF
++
++Optional Features:
++  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
++  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
++  --disable-dependency-tracking Speeds up one-time builds
++  --enable-dependency-tracking  Do not reject slow dependency extractors
++
++Optional Packages:
++  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
++  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
++  --with-examples              build the example programs
++  --with-testdir=DIR           path where testsuite is installed
++  --with-hazelnut=DIR          path to Hazelnut source tree
++  --with-pistachio-ia32=DIR    path to Pistachio user build directory (IA32)
++  --with-pistachio-ia64=DIR    path to Pistachio user build directory (IA64)
++  --with-pistachio-arm=DIR     path to Pistachio user build directory (ARM)
++  --with-pistachio-mips64=DIR  path to Pistachio user build directory (MIPS64)
++  --with-pistachio-alpha=DIR   path to Pistachio user build directory (Alpha)
++  --with-pistachio-powerpc=DIR path to Pistachio user build directory 
(PowerPC)
++  --with-fiasco=DIR            path to Fiasco source tree
++  --with-gcc-ia32=PREFIX       prefix for the IA32 toolchain
++  --with-gcc-ia64=PREFIX       prefix for the IA64 toolchain
++  --with-gcc-arm=PREFIX        prefix for the ARM toolchain
++  --with-gcc-alpha=PREFIX      prefix for the Alpha toolchain
++  --with-gcc-mips64=PREFIX     prefix for the MIPS64 toolchain
++  --with-gcc-powerpc=PREFIX    prefix for the PowerPC toolchain
++
++Some influential environment variables:
++  CC          C compiler command
++  CFLAGS      C compiler flags
++  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
++              nonstandard directory <lib dir>
++  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
++              headers in a nonstandard directory <include dir>
++  CXX         C++ compiler command
++  CXXFLAGS    C++ compiler flags
++
++Use these variables to override the choices made by `configure' or to help
++it to find libraries and programs with nonstandard names/locations.
++
++_ACEOF
++fi
++
++if test "$ac_init_help" = "recursive"; then
++  # If there are subdirs, report their specific --help.
++  ac_popdir=`pwd`
++  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
++    test -d $ac_dir || continue
++    ac_builddir=.
++
++if test "$ac_dir" != .; then
++  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
++  # A "../" for each directory in $ac_dir_suffix.
++  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
++else
++  ac_dir_suffix= ac_top_builddir=
++fi
++
++case $srcdir in
++  .)  # No --srcdir option.  We are building in place.
++    ac_srcdir=.
++    if test -z "$ac_top_builddir"; then
++       ac_top_srcdir=.
++    else
++       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
++    fi ;;
++  [\\/]* | ?:[\\/]* )  # Absolute path.
++    ac_srcdir=$srcdir$ac_dir_suffix;
++    ac_top_srcdir=$srcdir ;;
++  *) # Relative path.
++    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
++    ac_top_srcdir=$ac_top_builddir$srcdir ;;
++esac
++
++# Do not use `cd foo && pwd` to compute absolute paths, because
++# the directories may not exist.
++case `pwd` in
++.) ac_abs_builddir="$ac_dir";;
++*)
++  case "$ac_dir" in
++  .) ac_abs_builddir=`pwd`;;
++  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
++  *) ac_abs_builddir=`pwd`/"$ac_dir";;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_builddir=${ac_top_builddir}.;;
++*)
++  case ${ac_top_builddir}. in
++  .) ac_abs_top_builddir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
++  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_srcdir=$ac_srcdir;;
++*)
++  case $ac_srcdir in
++  .) ac_abs_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
++  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_srcdir=$ac_top_srcdir;;
++*)
++  case $ac_top_srcdir in
++  .) ac_abs_top_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
++  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
++  esac;;
++esac
++
++    cd $ac_dir
++    # Check for guested configure; otherwise get Cygnus style configure.
++    if test -f $ac_srcdir/configure.gnu; then
++      echo
++      $SHELL $ac_srcdir/configure.gnu  --help=recursive
++    elif test -f $ac_srcdir/configure; then
++      echo
++      $SHELL $ac_srcdir/configure  --help=recursive
++    elif test -f $ac_srcdir/configure.ac ||
++         test -f $ac_srcdir/configure.in; then
++      echo
++      $ac_configure --help
++    else
++      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
++    fi
++    cd $ac_popdir
++  done
++fi
++
++test -n "$ac_init_help" && exit 0
++if $ac_init_version; then
++  cat <<\_ACEOF
++
++Copyright (C) 2003 Free Software Foundation, Inc.
++This configure script is free software; the Free Software Foundation
++gives unlimited permission to copy, distribute and modify it.
++_ACEOF
++  exit 0
++fi
++exec 5>config.log
++cat >&5 <<_ACEOF
++This file contains any messages produced by compilers while
++running configure, to aid debugging if configure makes a mistake.
++
++It was created by $as_me, which was
++generated by GNU Autoconf 2.59.  Invocation command line was
++
++  $ $0 $@
++
++_ACEOF
++{
++cat <<_ASUNAME
address@hidden:@@%:@ --------- @%:@@%:@
address@hidden:@@%:@ Platform. @%:@@%:@
address@hidden:@@%:@ --------- @%:@@%:@
++
++hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
++uname -m = `(uname -m) 2>/dev/null || echo unknown`
++uname -r = `(uname -r) 2>/dev/null || echo unknown`
++uname -s = `(uname -s) 2>/dev/null || echo unknown`
++uname -v = `(uname -v) 2>/dev/null || echo unknown`
++
++/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
++/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
++
++/bin/arch              = `(/bin/arch) 2>/dev/null              || echo 
unknown`
++/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo 
unknown`
++/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo 
unknown`
++hostinfo               = `(hostinfo) 2>/dev/null               || echo 
unknown`
++/bin/machine           = `(/bin/machine) 2>/dev/null           || echo 
unknown`
++/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo 
unknown`
++/bin/universe          = `(/bin/universe) 2>/dev/null          || echo 
unknown`
++
++_ASUNAME
++
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  echo "PATH: $as_dir"
++done
++
++} >&5
++
++cat >&5 <<_ACEOF
++
++
address@hidden:@@%:@ ----------- @%:@@%:@
address@hidden:@@%:@ Core tests. @%:@@%:@
address@hidden:@@%:@ ----------- @%:@@%:@
++
++_ACEOF
++
++
++# Keep a trace of the command line.
++# Strip out --no-create and --no-recursion so they do not pile up.
++# Strip out --silent because we don't want to record it for future runs.
++# Also quote any args containing shell meta-characters.
++# Make two passes to allow for proper duplicate-argument suppression.
++ac_configure_args=
++ac_configure_args0=
++ac_configure_args1=
++ac_sep=
++ac_must_keep_next=false
++for ac_pass in 1 2
++do
++  for ac_arg
++  do
++    case $ac_arg in
++    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
++    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
++    | -silent | --silent | --silen | --sile | --sil)
++      continue ;;
++    *" "*|*"  "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
++      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
++    esac
++    case $ac_pass in
++    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
++    2)
++      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
++      if test $ac_must_keep_next = true; then
++      ac_must_keep_next=false # Got value, back to normal.
++      else
++      case $ac_arg in
++        *=* | --config-cache | -C | -disable-* | --disable-* \
++        | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
++        | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
++        | -with-* | --with-* | -without-* | --without-* | --x)
++          case "$ac_configure_args0 " in
++            "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
++          esac
++          ;;
++        -* ) ac_must_keep_next=true ;;
++      esac
++      fi
++      ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
++      # Get rid of the leading space.
++      ac_sep=" "
++      ;;
++    esac
++  done
++done
++$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { 
ac_configure_args0=; export ac_configure_args0; }
++$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { 
ac_configure_args1=; export ac_configure_args1; }
++
++# When interrupted or exit'd, cleanup temporary files, and complete
++# config.log.  We remove comments because anyway the quotes in there
++# would cause problems or look ugly.
++# WARNING: Be sure not to use single quotes in there, as some shells,
++# such as our DU 5.0 friend, will then `close' the trap.
++trap 'exit_status=$?
++  # Save into config.log some information that might help in debugging.
++  {
++    echo
++
++    cat <<\_ASBOX
address@hidden:@@%:@ ---------------- @%:@@%:@
address@hidden:@@%:@ Cache variables. @%:@@%:@
address@hidden:@@%:@ ---------------- @%:@@%:@
++_ASBOX
++    echo
++    # The following way of writing the cache mishandles newlines in values,
++{
++  (set) 2>&1 |
++    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
++    *ac_space=\ *)
++      sed -n \
++      "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
++        
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
++      ;;
++    *)
++      sed -n \
++      "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
++      ;;
++    esac;
++}
++    echo
++
++    cat <<\_ASBOX
address@hidden:@@%:@ ----------------- @%:@@%:@
address@hidden:@@%:@ Output variables. @%:@@%:@
address@hidden:@@%:@ ----------------- @%:@@%:@
++_ASBOX
++    echo
++    for ac_var in $ac_subst_vars
++    do
++      eval ac_val=$`echo $ac_var`
++      echo "$ac_var='"'"'$ac_val'"'"'"
++    done | sort
++    echo
++
++    if test -n "$ac_subst_files"; then
++      cat <<\_ASBOX
address@hidden:@@%:@ ------------- @%:@@%:@
address@hidden:@@%:@ Output files. @%:@@%:@
address@hidden:@@%:@ ------------- @%:@@%:@
++_ASBOX
++      echo
++      for ac_var in $ac_subst_files
++      do
++      eval ac_val=$`echo $ac_var`
++      echo "$ac_var='"'"'$ac_val'"'"'"
++      done | sort
++      echo
++    fi
++
++    if test -s confdefs.h; then
++      cat <<\_ASBOX
address@hidden:@@%:@ ----------- @%:@@%:@
address@hidden:@@%:@ confdefs.h. @%:@@%:@
address@hidden:@@%:@ ----------- @%:@@%:@
++_ASBOX
++      echo
++      sed "/^$/d" confdefs.h | sort
++      echo
++    fi
++    test "$ac_signal" != 0 &&
++      echo "$as_me: caught signal $ac_signal"
++    echo "$as_me: exit $exit_status"
++  } >&5
++  rm -f core *.core &&
++  rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
++    exit $exit_status
++     ' 0
++for ac_signal in 1 2 13 15; do
++  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
++done
++ac_signal=0
++
++# confdefs.h avoids OS command line length limits that DEFS can exceed.
++rm -rf conftest* confdefs.h
++# AIX cpp loses on an empty file, so make sure it contains at least a newline.
++echo >confdefs.h
++
++# Predefined preprocessor variables.
++
++cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_NAME "$PACKAGE_NAME"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_VERSION "$PACKAGE_VERSION"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_STRING "$PACKAGE_STRING"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
++_ACEOF
++
++
++# Let the site file select an alternate cache file if it wants to.
++# Prefer explicitly selected file to automatically selected ones.
++if test -z "$CONFIG_SITE"; then
++  if test "x$prefix" != xNONE; then
++    CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
++  else
++    CONFIG_SITE="$ac_default_prefix/share/config.site 
$ac_default_prefix/etc/config.site"
++  fi
++fi
++for ac_site_file in $CONFIG_SITE; do
++  if test -r "$ac_site_file"; then
++    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
++echo "$as_me: loading site script $ac_site_file" >&6;}
++    sed 's/^/| /' "$ac_site_file" >&5
++    . "$ac_site_file"
++  fi
++done
++
++if test -r "$cache_file"; then
++  # Some versions of bash will fail to source /dev/null (special
++  # files actually), so we avoid doing that.
++  if test -f "$cache_file"; then
++    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
++echo "$as_me: loading cache $cache_file" >&6;}
++    case $cache_file in
++      [\\/]* | ?:[\\/]* ) . $cache_file;;
++      *)                      . ./$cache_file;;
++    esac
++  fi
++else
++  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
++echo "$as_me: creating cache $cache_file" >&6;}
++  >$cache_file
++fi
++
++# Check that the precious variables saved in the cache have kept the same
++# value.
++ac_cache_corrupted=false
++for ac_var in `(set) 2>&1 |
++             sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
++  eval ac_old_set=\$ac_cv_env_${ac_var}_set
++  eval ac_new_set=\$ac_env_${ac_var}_set
++  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
++  eval ac_new_val="\$ac_env_${ac_var}_value"
++  case $ac_old_set,$ac_new_set in
++    set,)
++      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in 
the previous run" >&5
++echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous 
run" >&2;}
++      ac_cache_corrupted=: ;;
++    ,set)
++      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous 
run" >&5
++echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
++      ac_cache_corrupted=: ;;
++    ,);;
++    *)
++      if test "x$ac_old_val" != "x$ac_new_val"; then
++      { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the 
previous run:" >&5
++echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
++      { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
++echo "$as_me:   former value:  $ac_old_val" >&2;}
++      { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
++echo "$as_me:   current value: $ac_new_val" >&2;}
++      ac_cache_corrupted=:
++      fi;;
++  esac
++  # Pass precious variables to config.status.
++  if test "$ac_new_set" = set; then
++    case $ac_new_val in
++    *" "*|*"  "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
++      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
++    *) ac_arg=$ac_var=$ac_new_val ;;
++    esac
++    case " $ac_configure_args " in
++      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
++      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
++    esac
++  fi
++done
++if $ac_cache_corrupted; then
++  { echo "$as_me:$LINENO: error: changes in the environment can compromise 
the build" >&5
++echo "$as_me: error: changes in the environment can compromise the build" 
>&2;}
++  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm 
$cache_file' and start over" >&5
++echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start 
over" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS 
conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++am__api_version="1.7"
++ac_aux_dir=
++for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
++  if test -f $ac_dir/install-sh; then
++    ac_aux_dir=$ac_dir
++    ac_install_sh="$ac_aux_dir/install-sh -c"
++    break
++  elif test -f $ac_dir/install.sh; then
++    ac_aux_dir=$ac_dir
++    ac_install_sh="$ac_aux_dir/install.sh -c"
++    break
++  elif test -f $ac_dir/shtool; then
++    ac_aux_dir=$ac_dir
++    ac_install_sh="$ac_aux_dir/shtool install -c"
++    break
++  fi
++done
++if test -z "$ac_aux_dir"; then
++  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in 
$srcdir $srcdir/.. $srcdir/../.." >&5
++echo "$as_me: error: cannot find install-sh or install.sh in $srcdir 
$srcdir/.. $srcdir/../.." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++ac_config_guess="$SHELL $ac_aux_dir/config.guess"
++ac_config_sub="$SHELL $ac_aux_dir/config.sub"
++ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
++
++# Find a good install program.  We prefer a C program (faster),
++# so one script is as good as another.  But avoid the broken or
++# incompatible versions:
++# SysV /etc/install, /usr/sbin/install
++# SunOS /usr/etc/install
++# IRIX /sbin/install
++# AIX /bin/install
++# AmigaOS /C/install, which installs bootblocks on floppy discs
++# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
++# AFS /usr/afsws/bin/install, which mishandles nonexistent args
++# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
++# OS/2's system install, which has a completely different semantic
++# ./install, which can be erroneously created by make from ./install.sh.
++echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
++echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
++if test -z "$INSTALL"; then
++if test "${ac_cv_path_install+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  # Account for people who put trailing slashes in PATH elements.
++case $as_dir/ in
++  ./ | .// | /cC/* | \
++  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
++  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
++  /usr/ucb/* ) ;;
++  *)
++    # OSF1 and SCO ODT 3.0 have their own names for install.
++    # Don't use installbsd from OSF since it installs stuff as root
++    # by default.
++    for ac_prog in ginstall scoinst install; do
++      for ac_exec_ext in '' $ac_executable_extensions; do
++      if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
++        if test $ac_prog = install &&
++          grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
++          # AIX install.  It has an incompatible calling convention.
++          :
++        elif test $ac_prog = install &&
++          grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
++          # program-specific install script used by HP pwplus--don't use.
++          :
++        else
++          ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
++          break 3
++        fi
++      fi
++      done
++    done
++    ;;
++esac
++done
++
++
++fi
++  if test "${ac_cv_path_install+set}" = set; then
++    INSTALL=$ac_cv_path_install
++  else
++    # As a last resort, use the slow shell script.  We don't cache a
++    # path for INSTALL within a source directory, because that will
++    # break other packages using the cache if that directory is
++    # removed, or if the path is relative.
++    INSTALL=$ac_install_sh
++  fi
++fi
++echo "$as_me:$LINENO: result: $INSTALL" >&5
++echo "${ECHO_T}$INSTALL" >&6
++
++# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
++# It thinks the first close brace ends the variable substitution.
++test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
++
++test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
++
++test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
++
++echo "$as_me:$LINENO: checking whether build environment is sane" >&5
++echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
++# Just in case
++sleep 1
++echo timestamp > conftest.file
++# Do `set' in a subshell so we don't clobber the current shell's
++# arguments.  Must try -L first in case configure is actually a
++# symlink; some systems play weird games with the mod time of symlinks
++# (eg FreeBSD returns the mod time of the symlink's containing
++# directory).
++if (
++   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
++   if test "$*" = "X"; then
++      # -L didn't work.
++      set X `ls -t $srcdir/configure conftest.file`
++   fi
++   rm -f conftest.file
++   if test "$*" != "X $srcdir/configure conftest.file" \
++      && test "$*" != "X conftest.file $srcdir/configure"; then
++
++      # If neither matched, then we have a broken ls.  This can happen
++      # if, for instance, CONFIG_SHELL is bash and it inherits a
++      # broken ls alias from the environment.  This has actually
++      # happened.  Such a system could not be considered "sane".
++      { { echo "$as_me:$LINENO: error: ls -t appears to fail.  Make sure 
there is not a broken
++alias in your environment" >&5
++echo "$as_me: error: ls -t appears to fail.  Make sure there is not a broken
++alias in your environment" >&2;}
++   { (exit 1); exit 1; }; }
++   fi
++
++   test "$2" = conftest.file
++   )
++then
++   # Ok.
++   :
++else
++   { { echo "$as_me:$LINENO: error: newly created file is older than 
distributed files!
++Check your system clock" >&5
++echo "$as_me: error: newly created file is older than distributed files!
++Check your system clock" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++test "$program_prefix" != NONE &&
++  program_transform_name="s,^,$program_prefix,;$program_transform_name"
++# Use a double $ so make ignores it.
++test "$program_suffix" != NONE &&
++  program_transform_name="s,\$,$program_suffix,;$program_transform_name"
++# Double any \ or $.  echo might interpret backslashes.
++# By default was `s,x,x', remove it if useless.
++cat <<\_ACEOF >conftest.sed
++s/[\\$]/&&/g;s/;s,x,x,$//
++_ACEOF
++program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
++rm conftest.sed
++
++
++# expand $ac_aux_dir to an absolute path
++am_aux_dir=`cd $ac_aux_dir && pwd`
++
++test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
++# Use eval to expand $SHELL
++if eval "$MISSING --run true"; then
++  am_missing_run="$MISSING --run "
++else
++  am_missing_run=
++  { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" 
>&5
++echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
++fi
++
++for ac_prog in gawk mawk nawk awk
++do
++  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_AWK+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$AWK"; then
++  ac_cv_prog_AWK="$AWK" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_AWK="$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++AWK=$ac_cv_prog_AWK
++if test -n "$AWK"; then
++  echo "$as_me:$LINENO: result: $AWK" >&5
++echo "${ECHO_T}$AWK" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  test -n "$AWK" && break
++done
++
++echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
++echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
++set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
++if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.make <<\_ACEOF
++all:
++      @echo 'ac_maketemp="$(MAKE)"'
++_ACEOF
++# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
++eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
++if test -n "$ac_maketemp"; then
++  eval ac_cv_prog_make_${ac_make}_set=yes
++else
++  eval ac_cv_prog_make_${ac_make}_set=no
++fi
++rm -f conftest.make
++fi
++if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
++  echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++  SET_MAKE=
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++  SET_MAKE="MAKE=${MAKE-make}"
++fi
++
++rm -rf .tst 2>/dev/null
++mkdir .tst 2>/dev/null
++if test -d .tst; then
++  am__leading_dot=.
++else
++  am__leading_dot=_
++fi
++rmdir .tst 2>/dev/null
++
++ # test to see if srcdir already configured
++if test "`cd $srcdir && pwd`" != "`pwd`" &&
++   test -f $srcdir/config.status; then
++  { { echo "$as_me:$LINENO: error: source directory already configured; run 
\"make distclean\" there first" >&5
++echo "$as_me: error: source directory already configured; run \"make 
distclean\" there first" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++# test whether we have cygpath
++if test -z "$CYGPATH_W"; then
++  if (cygpath --version) >/dev/null 2>/dev/null; then
++    CYGPATH_W='cygpath -w'
++  else
++    CYGPATH_W=echo
++  fi
++fi
++
++
++# Define the identity of the package.
++ PACKAGE=idl4
++ VERSION=1.0.2
++
++
++cat >>confdefs.h <<_ACEOF
address@hidden:@define PACKAGE "$PACKAGE"
++_ACEOF
++
++ 
++cat >>confdefs.h <<_ACEOF
address@hidden:@define VERSION "$VERSION"
++_ACEOF
++
++# Some tools Automake needs.
++
++ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
++
++
++AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
++
++
++AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
++
++
++AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
++
++
++MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
++
++
++AMTAR=${AMTAR-"${am_missing_run}tar"}
++
++install_sh=${install_sh-"$am_aux_dir/install-sh"}
++
++# Installed binaries are usually stripped using `strip' when the user
++# run `make install-strip'.  However `strip' might not be the right
++# tool to use in cross-compilation environments, therefore Automake
++# will honor the `STRIP' environment variable to overrule this program.
++if test "$cross_compiling" != no; then
++  if test -n "$ac_tool_prefix"; then
++  # Extract the first word of "${ac_tool_prefix}strip", so it can be a 
program name with args.
++set dummy ${ac_tool_prefix}strip; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_STRIP+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$STRIP"; then
++  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++STRIP=$ac_cv_prog_STRIP
++if test -n "$STRIP"; then
++  echo "$as_me:$LINENO: result: $STRIP" >&5
++echo "${ECHO_T}$STRIP" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_STRIP"; then
++  ac_ct_STRIP=$STRIP
++  # Extract the first word of "strip", so it can be a program name with args.
++set dummy strip; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_STRIP"; then
++  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_STRIP="strip"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++  test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":"
++fi
++fi
++ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
++if test -n "$ac_ct_STRIP"; then
++  echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
++echo "${ECHO_T}$ac_ct_STRIP" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  STRIP=$ac_ct_STRIP
++else
++  STRIP="$ac_cv_prog_STRIP"
++fi
++
++fi
++INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
++
++# We need awk for the "check" target.  The system "awk" is bad on
++# some platforms.
++
++
++
++          ac_config_headers="$ac_config_headers config.h"
++
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS 
conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++if test -n "$ac_tool_prefix"; then
++  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program 
name with args.
++set dummy ${ac_tool_prefix}gcc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$CC"; then
++  ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_CC="${ac_tool_prefix}gcc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++  echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_CC"; then
++  ac_ct_CC=$CC
++  # Extract the first word of "gcc", so it can be a program name with args.
++set dummy gcc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_CC"; then
++  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_CC="gcc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  CC=$ac_ct_CC
++else
++  CC="$ac_cv_prog_CC"
++fi
++
++if test -z "$CC"; then
++  if test -n "$ac_tool_prefix"; then
++  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program 
name with args.
++set dummy ${ac_tool_prefix}cc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$CC"; then
++  ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_CC="${ac_tool_prefix}cc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++  echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_CC"; then
++  ac_ct_CC=$CC
++  # Extract the first word of "cc", so it can be a program name with args.
++set dummy cc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_CC"; then
++  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_CC="cc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  CC=$ac_ct_CC
++else
++  CC="$ac_cv_prog_CC"
++fi
++
++fi
++if test -z "$CC"; then
++  # Extract the first word of "cc", so it can be a program name with args.
++set dummy cc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$CC"; then
++  ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++  ac_prog_rejected=no
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
++       ac_prog_rejected=yes
++       continue
++     fi
++    ac_cv_prog_CC="cc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++if test $ac_prog_rejected = yes; then
++  # We found a bogon in the path, so make sure we never use it.
++  set dummy $ac_cv_prog_CC
++  shift
++  if test address@hidden:@ != 0; then
++    # We chose a different compiler from the bogus one.
++    # However, it has the same basename, so the bogon will be chosen
++    # first if we set CC to just the basename; use the full file name.
++    shift
++    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
++  fi
++fi
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++  echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$CC"; then
++  if test -n "$ac_tool_prefix"; then
++  for ac_prog in cl
++  do
++    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a 
program name with args.
++set dummy $ac_tool_prefix$ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$CC"; then
++  ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++  echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++    test -n "$CC" && break
++  done
++fi
++if test -z "$CC"; then
++  ac_ct_CC=$CC
++  for ac_prog in cl
++do
++  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_CC"; then
++  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_CC="$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  test -n "$ac_ct_CC" && break
++done
++
++  CC=$ac_ct_CC
++fi
++
++fi
++
++
++test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler 
found in \$PATH
++See \`config.log' for more details." >&5
++echo "$as_me: error: no acceptable C compiler found in \$PATH
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++
++# Provide some information about the compiler.
++echo "$as_me:$LINENO:" \
++     "checking for C compiler version" >&5
++ac_compiler=`set X $ac_compile; echo $2`
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
++  (eval $ac_compiler --version </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
++  (eval $ac_compiler -v </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
++  (eval $ac_compiler -V </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++ac_clean_files_save=$ac_clean_files
++ac_clean_files="$ac_clean_files a.out a.exe b.out"
++# Try to create an executable without -o first, disregard a.out.
++# It will help us diagnose broken compilers, and finding out an intuition
++# of exeext.
++echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
++echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
++ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
++if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
++  (eval $ac_link_default) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; then
++  # Find the output, starting from the most likely.  This scheme is
++# not robust to junk in `.', hence go to wildcards (a.*) only as a last
++# resort.
++
++# Be careful to initialize this variable, since it used to be cached.
++# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
++ac_cv_exeext=
++# b.out is created by i960 compilers.
++for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* 
b.out
++do
++  test -f "$ac_file" || continue
++  case $ac_file in
++    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj )
++      ;;
++    conftest.$ac_ext )
++      # This is the source file.
++      ;;
++    [ab].out )
++      # We found the default executable, but exeext='' is most
++      # certainly right.
++      break;;
++    *.* )
++      ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
++      # FIXME: I believe we export ac_cv_exeext for Libtool,
++      # but it would be cool to find out if it's true.  Does anybody
++      # maintain Libtool? --akim.
++      export ac_cv_exeext
++      break;;
++    * )
++      break;;
++  esac
++done
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
++See \`config.log' for more details." >&5
++echo "$as_me: error: C compiler cannot create executables
++See \`config.log' for more details." >&2;}
++   { (exit 77); exit 77; }; }
++fi
++
++ac_exeext=$ac_cv_exeext
++echo "$as_me:$LINENO: result: $ac_file" >&5
++echo "${ECHO_T}$ac_file" >&6
++
++# Check the compiler produces executables we can run.  If not, either
++# the compiler is broken, or we cross compile.
++echo "$as_me:$LINENO: checking whether the C compiler works" >&5
++echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
++# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
++# If not cross compiling, check that we can run a simple program.
++if test "$cross_compiling" != yes; then
++  if { ac_try='./$ac_file'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++    cross_compiling=no
++  else
++    if test "$cross_compiling" = maybe; then
++      cross_compiling=yes
++    else
++      { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
++If you meant to cross compile, use \`--host'.
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot run C compiled programs.
++If you meant to cross compile, use \`--host'.
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++    fi
++  fi
++fi
++echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++
++rm -f a.out a.exe conftest$ac_cv_exeext b.out
++ac_clean_files=$ac_clean_files_save
++# Check the compiler produces executables we can run.  If not, either
++# the compiler is broken, or we cross compile.
++echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
++echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
++echo "$as_me:$LINENO: result: $cross_compiling" >&5
++echo "${ECHO_T}$cross_compiling" >&6
++
++echo "$as_me:$LINENO: checking for suffix of executables" >&5
++echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; then
++  # If both `conftest.exe' and `conftest' are `present' (well, observable)
++# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
++# work properly (i.e., refer to `conftest.exe'), while it won't with
++# `rm'.
++for ac_file in conftest.exe conftest conftest.*; do
++  test -f "$ac_file" || continue
++  case $ac_file in
++    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj ) ;;
++    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
++        export ac_cv_exeext
++        break;;
++    * ) break;;
++  esac
++done
++else
++  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: 
cannot compile and link
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot compute suffix of executables: cannot compile and 
link
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++rm -f conftest$ac_cv_exeext
++echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
++echo "${ECHO_T}$ac_cv_exeext" >&6
++
++rm -f conftest.$ac_ext
++EXEEXT=$ac_cv_exeext
++ac_exeext=$EXEEXT
++echo "$as_me:$LINENO: checking for suffix of object files" >&5
++echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
++if test "${ac_cv_objext+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.o conftest.obj
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; then
++  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
++  case $ac_file in
++    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
++    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
++       break;;
++  esac
++done
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: 
cannot compile
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot compute suffix of object files: cannot compile
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++rm -f conftest.$ac_cv_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
++echo "${ECHO_T}$ac_cv_objext" >&6
++OBJEXT=$ac_cv_objext
++ac_objext=$OBJEXT
++echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
++echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
++if test "${ac_cv_c_compiler_gnu+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++#ifndef __GNUC__
++       choke me
++#endif
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_compiler_gnu=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_compiler_gnu=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++ac_cv_c_compiler_gnu=$ac_compiler_gnu
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
++echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
++GCC=`test $ac_compiler_gnu = yes && echo yes`
++ac_test_CFLAGS=${CFLAGS+set}
++ac_save_CFLAGS=$CFLAGS
++CFLAGS="-g"
++echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
++echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
++if test "${ac_cv_prog_cc_g+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_prog_cc_g=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_prog_cc_g=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
++echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
++if test "$ac_test_CFLAGS" = set; then
++  CFLAGS=$ac_save_CFLAGS
++elif test $ac_cv_prog_cc_g = yes; then
++  if test "$GCC" = yes; then
++    CFLAGS="-g -O2"
++  else
++    CFLAGS="-g"
++  fi
++else
++  if test "$GCC" = yes; then
++    CFLAGS="-O2"
++  else
++    CFLAGS=
++  fi
++fi
++echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
++echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
++if test "${ac_cv_prog_cc_stdc+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_prog_cc_stdc=no
++ac_save_CC=$CC
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <stdarg.h>
++#include <stdio.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
++struct buf { int x; };
++FILE * (*rcsopen) (struct buf *, struct stat *, int);
++static char *e (p, i)
++     char **p;
++     int i;
++{
++  return p[i];
++}
++static char *f (char * (*g) (char **, int), char **p, ...)
++{
++  char *s;
++  va_list v;
++  va_start (v,p);
++  s = g (p, va_arg (v,int));
++  va_end (v);
++  return s;
++}
++
++/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
++   function prototypes and stuff, but not '\xHH' hex character constants.
++   These don't provoke an error unfortunately, instead are silently treated
++   as 'x'.  The following induces an error, until -std1 is added to get
++   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
++   array size at least.  It's necessary to write '\x00'==0 to get something
++   that's true only with -std1.  */
++int osf4_cc_array ['\x00' == 0 ? 1 : -1];
++
++int test (int i, double x);
++struct s1 {int (*f) (int a);};
++struct s2 {int (*f) (double a);};
++int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), 
int, int);
++int argc;
++char **argv;
++int
++main ()
++{
++return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
++  ;
++  return 0;
++}
++_ACEOF
++# Don't try gcc -ansi; that turns off useful extensions and
++# breaks some systems' header files.
++# AIX                 -qlanglvl=ansi
++# Ultrix and OSF/1    -std1
++# HP-UX 10.20 and later       -Ae
++# HP-UX older versions        -Aa -D_HPUX_SOURCE
++# SVR4                        -Xc -D__EXTENSIONS__
++for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc 
-D__EXTENSIONS__"
++do
++  CC="$ac_save_CC $ac_arg"
++  rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_prog_cc_stdc=$ac_arg
++break
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext 
++done
++rm -f conftest.$ac_ext conftest.$ac_objext
++CC=$ac_save_CC
++
++fi
++
++case "x$ac_cv_prog_cc_stdc" in
++  x|xno)
++    echo "$as_me:$LINENO: result: none needed" >&5
++echo "${ECHO_T}none needed" >&6 ;;
++  *)
++    echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
++echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
++    CC="$CC $ac_cv_prog_cc_stdc" ;;
++esac
++
++# Some people use a C++ compiler to compile C.  Since we use `exit',
++# in C++ we need to declare it.  In case someone uses the same compiler
++# for both compiling C and C++ we need to have the C++ compiler decide
++# the declaration of exit, since it's the most demanding environment.
++cat >conftest.$ac_ext <<_ACEOF
address@hidden:@ifndef __cplusplus
++  choke me
address@hidden:@endif
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  for ac_declaration in \
++   '' \
++   'extern "C" void std::exit (int) throw (); using std::exit;' \
++   'extern "C" void std::exit (int); using std::exit;' \
++   'extern "C" void exit (int) throw ();' \
++   'extern "C" void exit (int);' \
++   'void exit (int);'
++do
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_declaration
address@hidden:@include <stdlib.h>
++int
++main ()
++{
++exit (42);
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  :
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++continue
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_declaration
++int
++main ()
++{
++exit (42);
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  break
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++done
++rm -f conftest*
++if test -n "$ac_declaration"; then
++  echo '#ifdef __cplusplus' >>confdefs.h
++  echo $ac_declaration      >>confdefs.h
++  echo '#endif'             >>confdefs.h
++fi
++
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS 
conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++DEPDIR="${am__leading_dot}deps"
++
++          ac_config_commands="$ac_config_commands depfiles"
++
++
++am_make=${MAKE-make}
++cat > confinc << 'END'
++am__doit:
++      @echo done
++.PHONY: am__doit
++END
++# If we don't find an include directive, just comment out the code.
++echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
++echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6
++am__include="#"
++am__quote=
++_am_result=none
++# First try GNU make style include.
++echo "include confinc" > confmf
++# We grep out `Entering directory' and `Leaving directory'
++# messages which can occur if `w' ends up in MAKEFLAGS.
++# In particular we don't look at `^make:' because GNU make might
++# be invoked under some other name (usually "gmake"), in which
++# case it prints its new name instead of `make'.
++if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = 
"done"; then
++   am__include=include
++   am__quote=
++   _am_result=GNU
++fi
++# Now try BSD make style include.
++if test "$am__include" = "#"; then
++   echo '.include "confinc"' > confmf
++   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
++      am__include=.include
++      am__quote="\""
++      _am_result=BSD
++   fi
++fi
++
++
++echo "$as_me:$LINENO: result: $_am_result" >&5
++echo "${ECHO_T}$_am_result" >&6
++rm -f confinc confmf
++
++# Check whether --enable-dependency-tracking or --disable-dependency-tracking 
was given.
++if test "${enable_dependency_tracking+set}" = set; then
++  enableval="$enable_dependency_tracking"
++  
++fi; 
++if test "x$enable_dependency_tracking" != xno; then
++  am_depcomp="$ac_aux_dir/depcomp"
++  AMDEPBACKSLASH='\'
++fi
++
++
++if test "x$enable_dependency_tracking" != xno; then
++  AMDEP_TRUE=
++  AMDEP_FALSE='#'
++else
++  AMDEP_TRUE='#'
++  AMDEP_FALSE=
++fi
++
++
++
++
++depcc="$CC"   am_compiler_list=
++
++echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
++echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
++if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
++  # We make a subdir and do the tests there.  Otherwise we can end up
++  # making bogus files that we don't know about and never remove.  For
++  # instance it was reported that on HP-UX the gcc test will end up
++  # making a dummy file named `D' -- because `-MD' means `put the output
++  # in D'.
++  mkdir conftest.dir
++  # Copy depcomp to subdir because otherwise we won't find it if we're
++  # using a relative directory.
++  cp "$am_depcomp" conftest.dir
++  cd conftest.dir
++  # We will build objects and dependencies in a subdirectory because
++  # it helps to detect inapplicable dependency modes.  For instance
++  # both Tru64's cc and ICC support -MD to output dependencies as a
++  # side effect of compilation, but ICC will put the dependencies in
++  # the current directory while Tru64 will put them in the object
++  # directory.
++  mkdir sub
++
++  am_cv_CC_dependencies_compiler_type=none
++  if test "$am_compiler_list" = ""; then
++     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
++  fi
++  for depmode in $am_compiler_list; do
++    # Setup a source with many dependencies, because some compilers
++    # like to wrap large dependency lists on column 80 (with \), and
++    # we should not choose a depcomp mode which is confused by this.
++    #
++    # We need to recreate these files for each test, as the compiler may
++    # overwrite some of them when testing with obscure command lines.
++    # This happens at least with the AIX C compiler.
++    : > sub/conftest.c
++    for i in 1 2 3 4 5 6; do
++      echo '#include "conftst'$i'.h"' >> sub/conftest.c
++      : > sub/conftst$i.h
++    done
++    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
++
++    case $depmode in
++    nosideeffect)
++      # after this tag, mechanisms are not by side-effect, so they'll
++      # only be used when explicitly requested
++      if test "x$enable_dependency_tracking" = xyes; then
++      continue
++      else
++      break
++      fi
++      ;;
++    none) break ;;
++    esac
++    # We check with `-c' and `-o' for the sake of the "dashmstdout"
++    # mode.  It turns out that the SunPro C++ compiler does not properly
++    # handle `-M -o', and we need to detect this.
++    if depmode=$depmode \
++       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
++       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
++       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
++         >/dev/null 2>conftest.err &&
++       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
++       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
++       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
++      # icc doesn't choke on unknown options, it will just issue warnings
++      # (even with -Werror).  So we grep stderr for any message
++      # that says an option was ignored.
++      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
++        am_cv_CC_dependencies_compiler_type=$depmode
++        break
++      fi
++    fi
++  done
++
++  cd ..
++  rm -rf conftest.dir
++else
++  am_cv_CC_dependencies_compiler_type=none
++fi
++
++fi
++echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
++echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
++CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
++
++
++
++if 
++  test "x$enable_dependency_tracking" != xno \
++  && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
++  am__fastdepCC_TRUE=
++  am__fastdepCC_FALSE='#'
++else
++  am__fastdepCC_TRUE='#'
++  am__fastdepCC_FALSE=
++fi
++
++
++ac_ext=cc
++ac_cpp='$CXXCPP $CPPFLAGS'
++ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS 
conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
++if test -n "$ac_tool_prefix"; then
++  for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
++  do
++    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a 
program name with args.
++set dummy $ac_tool_prefix$ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CXX+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$CXX"; then
++  ac_cv_prog_CXX="$CXX" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++CXX=$ac_cv_prog_CXX
++if test -n "$CXX"; then
++  echo "$as_me:$LINENO: result: $CXX" >&5
++echo "${ECHO_T}$CXX" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++    test -n "$CXX" && break
++  done
++fi
++if test -z "$CXX"; then
++  ac_ct_CXX=$CXX
++  for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
++do
++  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_CXX"; then
++  ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_CXX="$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
++if test -n "$ac_ct_CXX"; then
++  echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5
++echo "${ECHO_T}$ac_ct_CXX" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  test -n "$ac_ct_CXX" && break
++done
++test -n "$ac_ct_CXX" || ac_ct_CXX="g++"
++
++  CXX=$ac_ct_CXX
++fi
++
++
++# Provide some information about the compiler.
++echo "$as_me:$LINENO:" \
++     "checking for C++ compiler version" >&5
++ac_compiler=`set X $ac_compile; echo $2`
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
++  (eval $ac_compiler --version </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
++  (eval $ac_compiler -v </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
++  (eval $ac_compiler -V </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++
++echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5
++echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" 
>&6
++if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++#ifndef __GNUC__
++       choke me
++#endif
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_cxx_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_compiler_gnu=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_compiler_gnu=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5
++echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6
++GXX=`test $ac_compiler_gnu = yes && echo yes`
++ac_test_CXXFLAGS=${CXXFLAGS+set}
++ac_save_CXXFLAGS=$CXXFLAGS
++CXXFLAGS="-g"
++echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5
++echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6
++if test "${ac_cv_prog_cxx_g+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_cxx_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_prog_cxx_g=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_prog_cxx_g=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
++echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
++if test "$ac_test_CXXFLAGS" = set; then
++  CXXFLAGS=$ac_save_CXXFLAGS
++elif test $ac_cv_prog_cxx_g = yes; then
++  if test "$GXX" = yes; then
++    CXXFLAGS="-g -O2"
++  else
++    CXXFLAGS="-g"
++  fi
++else
++  if test "$GXX" = yes; then
++    CXXFLAGS="-O2"
++  else
++    CXXFLAGS=
++  fi
++fi
++for ac_declaration in \
++   '' \
++   'extern "C" void std::exit (int) throw (); using std::exit;' \
++   'extern "C" void std::exit (int); using std::exit;' \
++   'extern "C" void exit (int) throw ();' \
++   'extern "C" void exit (int);' \
++   'void exit (int);'
++do
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_declaration
address@hidden:@include <stdlib.h>
++int
++main ()
++{
++exit (42);
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_cxx_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  :
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++continue
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_declaration
++int
++main ()
++{
++exit (42);
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_cxx_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  break
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++done
++rm -f conftest*
++if test -n "$ac_declaration"; then
++  echo '#ifdef __cplusplus' >>confdefs.h
++  echo $ac_declaration      >>confdefs.h
++  echo '#endif'             >>confdefs.h
++fi
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS 
conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++depcc="$CXX"  am_compiler_list=
++
++echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
++echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
++if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
++  # We make a subdir and do the tests there.  Otherwise we can end up
++  # making bogus files that we don't know about and never remove.  For
++  # instance it was reported that on HP-UX the gcc test will end up
++  # making a dummy file named `D' -- because `-MD' means `put the output
++  # in D'.
++  mkdir conftest.dir
++  # Copy depcomp to subdir because otherwise we won't find it if we're
++  # using a relative directory.
++  cp "$am_depcomp" conftest.dir
++  cd conftest.dir
++  # We will build objects and dependencies in a subdirectory because
++  # it helps to detect inapplicable dependency modes.  For instance
++  # both Tru64's cc and ICC support -MD to output dependencies as a
++  # side effect of compilation, but ICC will put the dependencies in
++  # the current directory while Tru64 will put them in the object
++  # directory.
++  mkdir sub
++
++  am_cv_CXX_dependencies_compiler_type=none
++  if test "$am_compiler_list" = ""; then
++     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
++  fi
++  for depmode in $am_compiler_list; do
++    # Setup a source with many dependencies, because some compilers
++    # like to wrap large dependency lists on column 80 (with \), and
++    # we should not choose a depcomp mode which is confused by this.
++    #
++    # We need to recreate these files for each test, as the compiler may
++    # overwrite some of them when testing with obscure command lines.
++    # This happens at least with the AIX C compiler.
++    : > sub/conftest.c
++    for i in 1 2 3 4 5 6; do
++      echo '#include "conftst'$i'.h"' >> sub/conftest.c
++      : > sub/conftst$i.h
++    done
++    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
++
++    case $depmode in
++    nosideeffect)
++      # after this tag, mechanisms are not by side-effect, so they'll
++      # only be used when explicitly requested
++      if test "x$enable_dependency_tracking" = xyes; then
++      continue
++      else
++      break
++      fi
++      ;;
++    none) break ;;
++    esac
++    # We check with `-c' and `-o' for the sake of the "dashmstdout"
++    # mode.  It turns out that the SunPro C++ compiler does not properly
++    # handle `-M -o', and we need to detect this.
++    if depmode=$depmode \
++       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
++       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
++       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
++         >/dev/null 2>conftest.err &&
++       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
++       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
++       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
++      # icc doesn't choke on unknown options, it will just issue warnings
++      # (even with -Werror).  So we grep stderr for any message
++      # that says an option was ignored.
++      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
++        am_cv_CXX_dependencies_compiler_type=$depmode
++        break
++      fi
++    fi
++  done
++
++  cd ..
++  rm -rf conftest.dir
++else
++  am_cv_CXX_dependencies_compiler_type=none
++fi
++
++fi
++echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5
++echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6
++CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
++
++
++
++if 
++  test "x$enable_dependency_tracking" != xno \
++  && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
++  am__fastdepCXX_TRUE=
++  am__fastdepCXX_FALSE='#'
++else
++  am__fastdepCXX_TRUE='#'
++  am__fastdepCXX_FALSE=
++fi
++
++
++# By default we simply use the C compiler to build assembly code.
++
++: ${CCAS='$(CC)'}
++# Set ASFLAGS if not already set.
++: ${CCASFLAGS='$(CFLAGS)'}
++
++
++if test -n "$ac_tool_prefix"; then
++  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a 
program name with args.
++set dummy ${ac_tool_prefix}ranlib; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_RANLIB+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$RANLIB"; then
++  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++RANLIB=$ac_cv_prog_RANLIB
++if test -n "$RANLIB"; then
++  echo "$as_me:$LINENO: result: $RANLIB" >&5
++echo "${ECHO_T}$RANLIB" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_RANLIB"; then
++  ac_ct_RANLIB=$RANLIB
++  # Extract the first word of "ranlib", so it can be a program name with args.
++set dummy ranlib; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_RANLIB"; then
++  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_RANLIB="ranlib"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
++fi
++fi
++ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
++if test -n "$ac_ct_RANLIB"; then
++  echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
++echo "${ECHO_T}$ac_ct_RANLIB" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  RANLIB=$ac_ct_RANLIB
++else
++  RANLIB="$ac_cv_prog_RANLIB"
++fi
++
++
++for ac_prog in flex lex
++do
++  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_LEX+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$LEX"; then
++  ac_cv_prog_LEX="$LEX" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_LEX="$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++LEX=$ac_cv_prog_LEX
++if test -n "$LEX"; then
++  echo "$as_me:$LINENO: result: $LEX" >&5
++echo "${ECHO_T}$LEX" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  test -n "$LEX" && break
++done
++test -n "$LEX" || LEX=":"
++
++if test -z "$LEXLIB"
++then
++  echo "$as_me:$LINENO: checking for yywrap in -lfl" >&5
++echo $ECHO_N "checking for yywrap in -lfl... $ECHO_C" >&6
++if test "${ac_cv_lib_fl_yywrap+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_check_lib_save_LIBS=$LIBS
++LIBS="-lfl  $LIBS"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char yywrap ();
++int
++main ()
++{
++yywrap ();
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_lib_fl_yywrap=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_lib_fl_yywrap=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++echo "$as_me:$LINENO: result: $ac_cv_lib_fl_yywrap" >&5
++echo "${ECHO_T}$ac_cv_lib_fl_yywrap" >&6
++if test $ac_cv_lib_fl_yywrap = yes; then
++  LEXLIB="-lfl"
++else
++  echo "$as_me:$LINENO: checking for yywrap in -ll" >&5
++echo $ECHO_N "checking for yywrap in -ll... $ECHO_C" >&6
++if test "${ac_cv_lib_l_yywrap+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_check_lib_save_LIBS=$LIBS
++LIBS="-ll  $LIBS"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char yywrap ();
++int
++main ()
++{
++yywrap ();
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_lib_l_yywrap=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_lib_l_yywrap=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++echo "$as_me:$LINENO: result: $ac_cv_lib_l_yywrap" >&5
++echo "${ECHO_T}$ac_cv_lib_l_yywrap" >&6
++if test $ac_cv_lib_l_yywrap = yes; then
++  LEXLIB="-ll"
++fi
++
++fi
++
++fi
++
++if test "x$LEX" != "x:"; then
++  echo "$as_me:$LINENO: checking lex output file root" >&5
++echo $ECHO_N "checking lex output file root... $ECHO_C" >&6
++if test "${ac_cv_prog_lex_root+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  # The minimal lex program is just a single line: %%.  But some broken lexes
++# (Solaris, I think it was) want two %% lines, so accommodate them.
++cat >conftest.l <<_ACEOF
++%%
++%%
++_ACEOF
++{ (eval echo "$as_me:$LINENO: \"$LEX conftest.l\"") >&5
++  (eval $LEX conftest.l) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++if test -f lex.yy.c; then
++  ac_cv_prog_lex_root=lex.yy
++elif test -f lexyy.c; then
++  ac_cv_prog_lex_root=lexyy
++else
++  { { echo "$as_me:$LINENO: error: cannot find output from $LEX; giving up" 
>&5
++echo "$as_me: error: cannot find output from $LEX; giving up" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_lex_root" >&5
++echo "${ECHO_T}$ac_cv_prog_lex_root" >&6
++rm -f conftest.l
++LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
++
++echo "$as_me:$LINENO: checking whether yytext is a pointer" >&5
++echo $ECHO_N "checking whether yytext is a pointer... $ECHO_C" >&6
++if test "${ac_cv_prog_lex_yytext_pointer+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  # POSIX says lex can declare yytext either as a pointer or an array; the
++# default is implementation-dependent. Figure out which it is, since
++# not all implementations provide the %pointer and %array declarations.
++ac_cv_prog_lex_yytext_pointer=no
++echo 'extern char *yytext;' >>$LEX_OUTPUT_ROOT.c
++ac_save_LIBS=$LIBS
++LIBS="$LIBS $LEXLIB"
++cat >conftest.$ac_ext <<_ACEOF
++`cat $LEX_OUTPUT_ROOT.c`
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_prog_lex_yytext_pointer=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_save_LIBS
++rm -f "${LEX_OUTPUT_ROOT}.c"
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_lex_yytext_pointer" >&5
++echo "${ECHO_T}$ac_cv_prog_lex_yytext_pointer" >&6
++if test $ac_cv_prog_lex_yytext_pointer = yes; then
++  
++cat >>confdefs.h <<\_ACEOF
address@hidden:@define YYTEXT_POINTER 1
++_ACEOF
++
++fi
++
++fi
++if test "$LEX" = :; then
++  LEX=${am_missing_run}flex
++fi
++for ac_prog in 'bison -y' byacc
++do
++  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_YACC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$YACC"; then
++  ac_cv_prog_YACC="$YACC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_YACC="$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++YACC=$ac_cv_prog_YACC
++if test -n "$YACC"; then
++  echo "$as_me:$LINENO: result: $YACC" >&5
++echo "${ECHO_T}$YACC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  test -n "$YACC" && break
++done
++test -n "$YACC" || YACC="yacc"
++
++echo "$as_me:$LINENO: checking whether ln -s works" >&5
++echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
++LN_S=$as_ln_s
++if test "$LN_S" = "ln -s"; then
++  echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++else
++  echo "$as_me:$LINENO: result: no, using $LN_S" >&5
++echo "${ECHO_T}no, using $LN_S" >&6
++fi
++
++# Extract the first word of "latex", so it can be a program name with args.
++set dummy latex; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_LATEX+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$LATEX"; then
++  ac_cv_prog_LATEX="$LATEX" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_LATEX="latex"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++LATEX=$ac_cv_prog_LATEX
++if test -n "$LATEX"; then
++  echo "$as_me:$LINENO: result: $LATEX" >&5
++echo "${ECHO_T}$LATEX" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++# Extract the first word of "bibtex", so it can be a program name with args.
++set dummy bibtex; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_BIBTEX+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$BIBTEX"; then
++  ac_cv_prog_BIBTEX="$BIBTEX" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_BIBTEX="bibtex"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++BIBTEX=$ac_cv_prog_BIBTEX
++if test -n "$BIBTEX"; then
++  echo "$as_me:$LINENO: result: $BIBTEX" >&5
++echo "${ECHO_T}$BIBTEX" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++# Extract the first word of "dvips", so it can be a program name with args.
++set dummy dvips; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_DVIPS+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$DVIPS"; then
++  ac_cv_prog_DVIPS="$DVIPS" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_DVIPS="dvips"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++DVIPS=$ac_cv_prog_DVIPS
++if test -n "$DVIPS"; then
++  echo "$as_me:$LINENO: result: $DVIPS" >&5
++echo "${ECHO_T}$DVIPS" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++for ac_prog in dvipdfm dvipdf
++do
++  # Extract the first word of "$ac_prog", so it can be a program name with 
args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_DVIPDF+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$DVIPDF"; then
++  ac_cv_prog_DVIPDF="$DVIPDF" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_DVIPDF="$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++DVIPDF=$ac_cv_prog_DVIPDF
++if test -n "$DVIPDF"; then
++  echo "$as_me:$LINENO: result: $DVIPDF" >&5
++echo "${ECHO_T}$DVIPDF" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  test -n "$DVIPDF" && break
++done
++test -n "$DVIPDF" || DVIPDF="$REJECT"
++
++
++
++
++if test "x$LATEX" != "x" -a "x$BIBTEX" != "x"; then
++  HAS_LATEX_TRUE=
++  HAS_LATEX_FALSE='#'
++else
++  HAS_LATEX_TRUE='#'
++  HAS_LATEX_FALSE=
++fi
++
++
++
++if test "x$DVIPS" != "x"; then
++  HAS_DVIPS_TRUE=
++  HAS_DVIPS_FALSE='#'
++else
++  HAS_DVIPS_TRUE='#'
++  HAS_DVIPS_FALSE=
++fi
++
++
++
++if test "x$DVIPDF" != "x"; then
++  HAS_DVIPDF_TRUE=
++  HAS_DVIPDF_FALSE='#'
++else
++  HAS_DVIPDF_TRUE='#'
++  HAS_DVIPDF_FALSE=
++fi
++
++
++
++
++# Check whether --with-examples or --without-examples was given.
++if test "${with_examples+set}" = set; then
++  withval="$with_examples"
++  WITH_EXAMPLES="yes"
++fi; 
++
++
++# Check whether --with-testdir or --without-testdir was given.
++if test "${with_testdir+set}" = set; then
++  withval="$with_testdir"
++  TESTSUITE_DIR="$withval"
++else
++  TESTSUITE_DIR="/tftpboot"
++fi; 
++
++
++# Check whether --with-hazelnut or --without-hazelnut was given.
++if test "${with_hazelnut+set}" = set; then
++  withval="$with_hazelnut"
++  WITH_HAZELNUT="yes" HAZELNUT_DIR="$withval"
++fi; 
++
++
++# Check whether --with-pistachio-ia32 or --without-pistachio-ia32 was given.
++if test "${with_pistachio_ia32+set}" = set; then
++  withval="$with_pistachio_ia32"
++  WITH_PISTACHIO_IA32="yes" PISTACHIO_IA32_DIR="$withval"
++fi; 
++
++
++# Check whether --with-pistachio-ia64 or --without-pistachio-ia64 was given.
++if test "${with_pistachio_ia64+set}" = set; then
++  withval="$with_pistachio_ia64"
++  WITH_PISTACHIO_IA64="yes" PISTACHIO_IA64_DIR="$withval"
++fi; 
++        
++
++# Check whether --with-pistachio-arm or --without-pistachio-arm was given.
++if test "${with_pistachio_arm+set}" = set; then
++  withval="$with_pistachio_arm"
++  WITH_PISTACHIO_ARM="yes" PISTACHIO_ARM_DIR="$withval"
++fi; 
++        
++
++# Check whether --with-pistachio-mips64 or --without-pistachio-mips64 was 
given.
++if test "${with_pistachio_mips64+set}" = set; then
++  withval="$with_pistachio_mips64"
++  WITH_PISTACHIO_MIPS64="yes" PISTACHIO_MIPS64_DIR="$withval"
++fi; 
++        
++
++# Check whether --with-pistachio-alpha or --without-pistachio-alpha was given.
++if test "${with_pistachio_alpha+set}" = set; then
++  withval="$with_pistachio_alpha"
++  WITH_PISTACHIO_ALPHA="yes" PISTACHIO_ALPHA_DIR="$withval"
++fi; 
++        
++
++# Check whether --with-pistachio-powerpc or --without-pistachio-powerpc was 
given.
++if test "${with_pistachio_powerpc+set}" = set; then
++  withval="$with_pistachio_powerpc"
++  WITH_PISTACHIO_POWERPC="yes" PISTACHIO_POWERPC_DIR="$withval"
++fi; 
++        
++
++# Check whether --with-fiasco or --without-fiasco was given.
++if test "${with_fiasco+set}" = set; then
++  withval="$with_fiasco"
++  WITH_FIASCO="yes" FIASCO_DIR="$withval"
++fi; 
++
++
++
++if test "x$WITH_HAZELNUT" != "x" ||
++              test "x$WITH_PISTACHIO_IA32" != "x" ||
++              test "x$WITH_PISTACHIO_IA64" != "x" ||
++              test "x$WITH_PISTACHIO_ARM" != "x" ||
++              test "x$WITH_PISTACHIO_MIPS64" != "x" ||
++              test "x$WITH_PISTACHIO_ALPHA" != "x" ||
++              test "x$WITH_PISTACHIO_POWERPC" != "x" ||
++              test "x$WITH_FIASCO" != "x"; then
++  WITH_TESTSUITE_TRUE=
++  WITH_TESTSUITE_FALSE='#'
++else
++  WITH_TESTSUITE_TRUE='#'
++  WITH_TESTSUITE_FALSE=
++fi
++
++
++
++if test x$WITH_HAZELNUT = xyes; then
++  WITH_HAZELNUT_TRUE=
++  WITH_HAZELNUT_FALSE='#'
++else
++  WITH_HAZELNUT_TRUE='#'
++  WITH_HAZELNUT_FALSE=
++fi
++
++
++
++if test x$WITH_EXAMPLES = xyes; then
++  WITH_EXAMPLES_TRUE=
++  WITH_EXAMPLES_FALSE='#'
++else
++  WITH_EXAMPLES_TRUE='#'
++  WITH_EXAMPLES_FALSE=
++fi
++
++
++
++if test x$WITH_PISTACHIO_IA32 = xyes; then
++  WITH_PISTACHIO_IA32_TRUE=
++  WITH_PISTACHIO_IA32_FALSE='#'
++else
++  WITH_PISTACHIO_IA32_TRUE='#'
++  WITH_PISTACHIO_IA32_FALSE=
++fi
++
++
++
++if test x$WITH_PISTACHIO_IA64   = xyes; then
++  WITH_PISTACHIO_IA64_TRUE=
++  WITH_PISTACHIO_IA64_FALSE='#'
++else
++  WITH_PISTACHIO_IA64_TRUE='#'
++  WITH_PISTACHIO_IA64_FALSE=
++fi
++
++
++
++if test x$WITH_PISTACHIO_ARM = xyes; then
++  WITH_PISTACHIO_ARM_TRUE=
++  WITH_PISTACHIO_ARM_FALSE='#'
++else
++  WITH_PISTACHIO_ARM_TRUE='#'
++  WITH_PISTACHIO_ARM_FALSE=
++fi
++
++
++
++if test x$WITH_PISTACHIO_MIPS64 = xyes; then
++  WITH_PISTACHIO_MIPS64_TRUE=
++  WITH_PISTACHIO_MIPS64_FALSE='#'
++else
++  WITH_PISTACHIO_MIPS64_TRUE='#'
++  WITH_PISTACHIO_MIPS64_FALSE=
++fi
++
++
++
++if test x$WITH_PISTACHIO_ALPHA = xyes; then
++  WITH_PISTACHIO_ALPHA_TRUE=
++  WITH_PISTACHIO_ALPHA_FALSE='#'
++else
++  WITH_PISTACHIO_ALPHA_TRUE='#'
++  WITH_PISTACHIO_ALPHA_FALSE=
++fi
++
++
++
++if test x$WITH_PISTACHIO_POWERPC = xyes; then
++  WITH_PISTACHIO_POWERPC_TRUE=
++  WITH_PISTACHIO_POWERPC_FALSE='#'
++else
++  WITH_PISTACHIO_POWERPC_TRUE='#'
++  WITH_PISTACHIO_POWERPC_FALSE=
++fi
++
++
++
++if test x$WITH_FIASCO = xyes; then
++  WITH_FIASCO_TRUE=
++  WITH_FIASCO_FALSE='#'
++else
++  WITH_FIASCO_TRUE='#'
++  WITH_FIASCO_FALSE=
++fi
++
++
++
++
++
++
++
++
++
++
++
++
++
++# Check whether --with-gcc-ia32 or --without-gcc-ia32 was given.
++if test "${with_gcc_ia32+set}" = set; then
++  withval="$with_gcc_ia32"
++  WITH_TOOLCHAIN_IA32="yes" IA32_PREFIX="$withval"
++fi; 
++
++
++# Check whether --with-gcc-ia64 or --without-gcc-ia64 was given.
++if test "${with_gcc_ia64+set}" = set; then
++  withval="$with_gcc_ia64"
++  WITH_TOOLCHAIN_IA64="yes" IA64_PREFIX="$withval"
++fi; 
++
++
++# Check whether --with-gcc-arm or --without-gcc-arm was given.
++if test "${with_gcc_arm+set}" = set; then
++  withval="$with_gcc_arm"
++  WITH_TOOLCHAIN_ARM="yes" ARM_PREFIX="$withval"
++fi; 
++
++
++# Check whether --with-gcc-alpha or --without-gcc-alpha was given.
++if test "${with_gcc_alpha+set}" = set; then
++  withval="$with_gcc_alpha"
++  WITH_TOOLCHAIN_ALPHA="yes" ALPHA_PREFIX="$withval"
++fi; 
++
++
++# Check whether --with-gcc-mips64 or --without-gcc-mips64 was given.
++if test "${with_gcc_mips64+set}" = set; then
++  withval="$with_gcc_mips64"
++  WITH_TOOLCHAIN_MIPS64="yes" MIPS64_PREFIX="$withval"
++fi; 
++
++
++# Check whether --with-gcc-powerpc or --without-gcc-powerpc was given.
++if test "${with_gcc_powerpc+set}" = set; then
++  withval="$with_gcc_powerpc"
++  WITH_TOOLCHAIN_POWERPC="yes" POWERPC_PREFIX="$withval"
++fi; 
++
++
++
++if test x$WITH_TOOLCHAIN_IA32 = xyes; then
++  WITH_TOOLCHAIN_IA32_TRUE=
++  WITH_TOOLCHAIN_IA32_FALSE='#'
++else
++  WITH_TOOLCHAIN_IA32_TRUE='#'
++  WITH_TOOLCHAIN_IA32_FALSE=
++fi
++
++
++
++if test x$WITH_TOOLCHAIN_IA64 = xyes; then
++  WITH_TOOLCHAIN_IA64_TRUE=
++  WITH_TOOLCHAIN_IA64_FALSE='#'
++else
++  WITH_TOOLCHAIN_IA64_TRUE='#'
++  WITH_TOOLCHAIN_IA64_FALSE=
++fi
++
++
++
++if test x$WITH_TOOLCHAIN_ARM = xyes; then
++  WITH_TOOLCHAIN_ARM_TRUE=
++  WITH_TOOLCHAIN_ARM_FALSE='#'
++else
++  WITH_TOOLCHAIN_ARM_TRUE='#'
++  WITH_TOOLCHAIN_ARM_FALSE=
++fi
++
++
++
++if test x$WITH_TOOLCHAIN_ALPHA = xyes; then
++  WITH_TOOLCHAIN_ALPHA_TRUE=
++  WITH_TOOLCHAIN_ALPHA_FALSE='#'
++else
++  WITH_TOOLCHAIN_ALPHA_TRUE='#'
++  WITH_TOOLCHAIN_ALPHA_FALSE=
++fi
++
++
++
++if test x$WITH_TOOLCHAIN_MIPS64 = xyes; then
++  WITH_TOOLCHAIN_MIPS64_TRUE=
++  WITH_TOOLCHAIN_MIPS64_FALSE='#'
++else
++  WITH_TOOLCHAIN_MIPS64_TRUE='#'
++  WITH_TOOLCHAIN_MIPS64_FALSE=
++fi
++
++
++
++if test x$WITH_TOOLCHAIN_POWERPC = xyes; then
++  WITH_TOOLCHAIN_POWERPC_TRUE=
++  WITH_TOOLCHAIN_POWERPC_FALSE='#'
++else
++  WITH_TOOLCHAIN_POWERPC_TRUE='#'
++  WITH_TOOLCHAIN_POWERPC_FALSE=
++fi
++
++
++
++
++
++
++
++
++
++for ac_func in getopt_long
++do
++as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
++echo "$as_me:$LINENO: checking for $ac_func" >&5
++echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
++if eval "test \"\${$as_ac_var+set}\" = set"; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++/* Define $ac_func to an innocuous variant, in case <limits.h> declares 
$ac_func.
++   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
++#define $ac_func innocuous_$ac_func
++
++/* System header to define __stub macros and hopefully few prototypes,
++    which can conflict with char $ac_func (); below.
++    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++    <limits.h> exists even on freestanding compilers.  */
++
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
++
++#undef $ac_func
++
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++{
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char $ac_func ();
++/* The GNU C library defines this for functions which it implements
++    to always fail with ENOSYS.  Some functions are actually named
++    something starting with __ and the normal name is an alias.  */
++#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
++choke me
++#else
++char (*f) () = $ac_func;
++#endif
++#ifdef __cplusplus
++}
++#endif
++
++int
++main ()
++{
++return f != $ac_func;
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  eval "$as_ac_var=yes"
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++eval "$as_ac_var=no"
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
++echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
++if test `eval echo '${'$as_ac_var'}'` = yes; then
++  cat >>confdefs.h <<_ACEOF
address@hidden:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
++_ACEOF
++ 
++fi
++done
++
++
++
++if test x$ac_cv_func_getopt_long = xno; then
++  NEED_GETOPT_LONG_TRUE=
++  NEED_GETOPT_LONG_FALSE='#'
++else
++  NEED_GETOPT_LONG_TRUE='#'
++  NEED_GETOPT_LONG_FALSE=
++fi
++
++
++
++MAINTAINERCLEANFILES="$MAINTAINERCLEANFILES Makefile.in"
++
++
++
++CPPFLAGS="$CPPFLAGS -I\$(top_srcdir)/src/include"
++
++
++
++                                                                              
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                        
ac_config_files="$ac_config_files idl4-config Makefile doc/Makefile 
doc/manual/Makefile examples/Makefile examples/weaver/Makefile 
examples/test/Makefile examples/test/idl/Makefile 
examples/test/v2-ia32/Makefile examples/test/v2-ia32-generic/Makefile 
examples/test/x0-ia32/Makefile examples/test/x0-ia32-generic/Makefile 
examples/test/x0-arm-generic/Makefile examples/test/v4-ia32/Makefile 
examples/test/v4-ia32-generic/Makefile examples/test/v4-ia32-cs/Makefile 
examples/test/v4-ia64/Makefile examples/test/v4-ia64-generic/Makefile 
examples/test/v4-alpha-generic/Makefile 
examples/test/v4-mips64-generic/Makefile 
examples/test/v4-powerpc-generic/Makefile src/Makefile src/aoi/Makefile 
src/arch/Makefile src/arch/v2/Makefile src/arch/v2/ia32/Makefile 
src/arch/v4/Makefile src/arch/v4/ia32/Makefile src/arch/v4/ia64/Makefile 
src/arch/v4_gnu/Makefile src/arch/x0/Makefile src/arch/x0/ia32/Makefile 
src/base/Makefile src/base/lib/Makefile src/be/Makefile src/be/ops/Makefile 
src/be/types/Makefile src/cast/Makefile src/fe/Makefile src/fe/c++/Makefile 
src/fe/idl/Makefile src/fe/lib/Makefile src/test/Makefile 
src/test/glue/Makefile src/test/glue/v2-ia32/Makefile 
src/test/glue/x0-ia32/Makefile src/test/glue/x0-arm/Makefile 
src/test/glue/v4-ia32/Makefile src/test/glue/v4-ia64/Makefile 
src/test/glue/v4-alpha/Makefile src/test/glue/v4-mips64/Makefile 
src/test/glue/v4-powerpc/Makefile src/include/Makefile 
src/include/user/Makefile src/include/user/idl4/Makefile"
++cat >confcache <<\_ACEOF
++# This file is a shell script that caches the results of configure
++# tests run on this system so they can be shared between configure
++# scripts and configure runs, see configure's option --config-cache.
++# It is not useful on other systems.  If it contains results you don't
++# want to keep, you may remove or edit it.
++#
++# config.status only pays attention to the cache file if you give it
++# the --recheck option to rerun configure.
++#
++# `ac_cv_env_foo' variables (set or unset) will be overridden when
++# loading this file, other *unset* `ac_cv_foo' will be assigned the
++# following values.
++
++_ACEOF
++
++# The following way of writing the cache mishandles newlines in values,
++# but we know of no workaround that is simple, portable, and efficient.
++# So, don't put newlines in cache variables' values.
++# Ultrix sh set writes to stderr and can't be redirected directly,
++# and sets the high bit in the cache file unless we assign to the vars.
++{
++  (set) 2>&1 |
++    case `(ac_space=' '; set | grep ac_space) 2>&1` in
++    *ac_space=\ *)
++      # `set' does not quote correctly, so add quotes (double-quote
++      # substitution turns \\\\ into \\, and sed turns \\ into \).
++      sed -n \
++      "s/'/'\\\\''/g;
++        s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
++      ;;
++    *)
++      # `set' quotes correctly as required by POSIX, so do not add quotes.
++      sed -n \
++      "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
++      ;;
++    esac;
++} |
++  sed '
++     t clear
++     : clear
++     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
++     t end
++     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
++     : end' >>confcache
++if diff $cache_file confcache >/dev/null 2>&1; then :; else
++  if test -w $cache_file; then
++    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
++    cat confcache >$cache_file
++  else
++    echo "not updating unwritable cache $cache_file"
++  fi
++fi
++rm -f confcache
++
++test "x$prefix" = xNONE && prefix=$ac_default_prefix
++# Let make expand exec_prefix.
++test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
++
++# VPATH may cause trouble with some makes, so we remove $(srcdir),
++# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
++# trailing colons and then remove the whole line if VPATH becomes empty
++# (actually we leave an empty line to preserve line numbers).
++if test "x$srcdir" = x.; then
++  ac_vpsub='/^[        ]*VPATH[        ]*=/{
++s/:*\$(srcdir):*/:/;
++s/:*\${srcdir}:*/:/;
++s/:address@hidden@:*/:/;
++s/^\([^=]*=[   ]*\):*/\1/;
++s/:*$//;
++s/^[^=]*=[     ]*$//;
++}'
++fi
++
++DEFS=-DHAVE_CONFIG_H
++
++ac_libobjs=
++ac_ltlibobjs=
++for ac_i in : $LIB@&address@hidden; do test "x$ac_i" = x: && continue
++  # 1. Remove the extension, and $U if already installed.
++  ac_i=`echo "$ac_i" |
++       sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
++  # 2. Add them.
++  ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
++  ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
++done
++LIB@&address@hidden
++
++LTLIBOBJS=$ac_ltlibobjs
++
++
++if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"AMDEP\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCXX\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"am__fastdepCXX\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${HAS_LATEX_TRUE}" && test -z "${HAS_LATEX_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"HAS_LATEX\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"HAS_LATEX\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${HAS_DVIPS_TRUE}" && test -z "${HAS_DVIPS_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"HAS_DVIPS\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"HAS_DVIPS\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${HAS_DVIPDF_TRUE}" && test -z "${HAS_DVIPDF_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"HAS_DVIPDF\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"HAS_DVIPDF\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_TESTSUITE_TRUE}" && test -z "${WITH_TESTSUITE_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_TESTSUITE\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_TESTSUITE\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_HAZELNUT_TRUE}" && test -z "${WITH_HAZELNUT_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_HAZELNUT\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_HAZELNUT\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_EXAMPLES_TRUE}" && test -z "${WITH_EXAMPLES_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_EXAMPLES\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_EXAMPLES\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_PISTACHIO_IA32_TRUE}" && test -z 
"${WITH_PISTACHIO_IA32_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_PISTACHIO_IA32\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_PISTACHIO_IA32\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_PISTACHIO_IA64_TRUE}" && test -z 
"${WITH_PISTACHIO_IA64_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_PISTACHIO_IA64\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_PISTACHIO_IA64\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_PISTACHIO_ARM_TRUE}" && test -z 
"${WITH_PISTACHIO_ARM_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_PISTACHIO_ARM\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_PISTACHIO_ARM\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_PISTACHIO_MIPS64_TRUE}" && test -z 
"${WITH_PISTACHIO_MIPS64_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_PISTACHIO_MIPS64\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_PISTACHIO_MIPS64\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_PISTACHIO_ALPHA_TRUE}" && test -z 
"${WITH_PISTACHIO_ALPHA_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_PISTACHIO_ALPHA\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_PISTACHIO_ALPHA\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_PISTACHIO_POWERPC_TRUE}" && test -z 
"${WITH_PISTACHIO_POWERPC_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_PISTACHIO_POWERPC\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_PISTACHIO_POWERPC\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_FIASCO_TRUE}" && test -z "${WITH_FIASCO_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_FIASCO\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_FIASCO\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_TOOLCHAIN_IA32_TRUE}" && test -z 
"${WITH_TOOLCHAIN_IA32_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_TOOLCHAIN_IA32\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_TOOLCHAIN_IA32\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_TOOLCHAIN_IA64_TRUE}" && test -z 
"${WITH_TOOLCHAIN_IA64_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_TOOLCHAIN_IA64\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_TOOLCHAIN_IA64\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_TOOLCHAIN_ARM_TRUE}" && test -z 
"${WITH_TOOLCHAIN_ARM_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_TOOLCHAIN_ARM\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_TOOLCHAIN_ARM\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_TOOLCHAIN_ALPHA_TRUE}" && test -z 
"${WITH_TOOLCHAIN_ALPHA_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_TOOLCHAIN_ALPHA\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_TOOLCHAIN_ALPHA\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_TOOLCHAIN_MIPS64_TRUE}" && test -z 
"${WITH_TOOLCHAIN_MIPS64_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_TOOLCHAIN_MIPS64\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_TOOLCHAIN_MIPS64\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${WITH_TOOLCHAIN_POWERPC_TRUE}" && test -z 
"${WITH_TOOLCHAIN_POWERPC_FALSE}"; then
++  { { echo "$as_me:$LINENO: error: conditional \"WITH_TOOLCHAIN_POWERPC\" was 
never defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"WITH_TOOLCHAIN_POWERPC\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++if test -z "${NEED_GETOPT_LONG_TRUE}" && test -z "${NEED_GETOPT_LONG_FALSE}"; 
then
++  { { echo "$as_me:$LINENO: error: conditional \"NEED_GETOPT_LONG\" was never 
defined.
++Usually this means the macro was only invoked conditionally." >&5
++echo "$as_me: error: conditional \"NEED_GETOPT_LONG\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++: ${CONFIG_STATUS=./config.status}
++ac_clean_files_save=$ac_clean_files
++ac_clean_files="$ac_clean_files $CONFIG_STATUS"
++{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
++echo "$as_me: creating $CONFIG_STATUS" >&6;}
++cat >$CONFIG_STATUS <<_ACEOF
++#! $SHELL
++# Generated by $as_me.
++# Run this file to recreate the current configuration.
++# Compiler output produced by configure, useful for debugging
++# configure, is in config.log if it exists.
++
++debug=false
++ac_cs_recheck=false
++ac_cs_silent=false
++SHELL=\${CONFIG_SHELL-$SHELL}
++_ACEOF
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++## --------------------- ##
++## M4sh Initialization.  ##
++## --------------------- ##
++
++# Be Bourne compatible
++if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
++  emulate sh
++  NULLCMD=:
++  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
++  # is contrary to our usage.  Disable this feature.
++  alias -g '${1+"$@"}'='"$@"'
++elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
++  set -o posix
++fi
++DUALCASE=1; export DUALCASE # for MKS sh
++
++# Support unset when possible.
++if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
++  as_unset=unset
++else
++  as_unset=false
++fi
++
++
++# Work around bugs in pre-3.0 UWIN ksh.
++$as_unset ENV MAIL MAILPATH
++PS1='$ '
++PS2='> '
++PS4='+ '
++
++# NLS nuisances.
++for as_var in \
++  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
++  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
++  LC_TELEPHONE LC_TIME
++do
++  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
++    eval $as_var=C; export $as_var
++  else
++    $as_unset $as_var
++  fi
++done
++
++# Required to use basename.
++if expr a : '\(a\)' >/dev/null 2>&1; then
++  as_expr=expr
++else
++  as_expr=false
++fi
++
++if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
++  as_basename=basename
++else
++  as_basename=false
++fi
++
++
++# Name of the executable.
++as_me=`$as_basename "$0" ||
++$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
++       X"$0" : 'X\(//\)$' \| \
++       X"$0" : 'X\(/\)$' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X/"$0" |
++    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
++        /^X\/\(\/\/\)$/{ s//\1/; q; }
++        /^X\/\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++
++
++# PATH needs CR, and LINENO needs CR and PATH.
++# Avoid depending upon Character Ranges.
++as_cr_letters='abcdefghijklmnopqrstuvwxyz'
++as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
++as_cr_Letters=$as_cr_letters$as_cr_LETTERS
++as_cr_digits='0123456789'
++as_cr_alnum=$as_cr_Letters$as_cr_digits
++
++# The user is always right.
++if test "${PATH_SEPARATOR+set}" != set; then
++  echo "#! /bin/sh" >conf$$.sh
++  echo  "exit 0"   >>conf$$.sh
++  chmod +x conf$$.sh
++  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
++    PATH_SEPARATOR=';'
++  else
++    PATH_SEPARATOR=:
++  fi
++  rm -f conf$$.sh
++fi
++
++
++  as_lineno_1=$LINENO
++  as_lineno_2=$LINENO
++  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++  test "x$as_lineno_1" != "x$as_lineno_2" &&
++  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
++  # Find who we are.  Look in the path if we contain no path at all
++  # relative or not.
++  case $0 in
++    *[\\/]* ) as_myself=$0 ;;
++    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
++done
++
++       ;;
++  esac
++  # We did not find ourselves, most probably we were run as `sh COMMAND'
++  # in which case we are not to be found in the path.
++  if test "x$as_myself" = x; then
++    as_myself=$0
++  fi
++  if test ! -f "$as_myself"; then
++    { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an 
absolute path" >&5
++echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
++   { (exit 1); exit 1; }; }
++  fi
++  case $CONFIG_SHELL in
++  '')
++    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for as_base in sh bash ksh sh5; do
++       case $as_dir in
++       /*)
++         if ("$as_dir/$as_base" -c '
++  as_lineno_1=$LINENO
++  as_lineno_2=$LINENO
++  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++  test "x$as_lineno_1" != "x$as_lineno_2" &&
++  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
++           $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { 
BASH_ENV=; export BASH_ENV; }
++           $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
++           CONFIG_SHELL=$as_dir/$as_base
++           export CONFIG_SHELL
++           exec "$CONFIG_SHELL" "$0" ${1+"$@"}
++         fi;;
++       esac
++       done
++done
++;;
++  esac
++
++  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
++  # uniformly replaced by the line number.  The first 'sed' inserts a
++  # line-number line before each line; the second 'sed' does the real
++  # work.  The second script uses 'N' to pair each line-number line
++  # with the numbered line, and appends trailing '-' during
++  # substitution so that $LINENO is not a special case at line end.
++  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
++  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
++  sed '=' <$as_myself |
++    sed '
++      N
++      s,$,-,
++      : loop
++      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
++      t loop
++      s,-$,,
++      s,^['$as_cr_digits']*\n,,
++    ' >$as_me.lineno &&
++  chmod +x $as_me.lineno ||
++    { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with 
a POSIX shell" >&5
++echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" 
>&2;}
++   { (exit 1); exit 1; }; }
++
++  # Don't try to exec as it changes $[0], causing all sort of problems
++  # (the dirname of $[0] is not the place where we might find the
++  # original and so on.  Autoconf is especially sensible to this).
++  . ./$as_me.lineno
++  # Exit status is that of the last command.
++  exit
++}
++
++
++case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
++  *c*,-n*) ECHO_N= ECHO_C='
++' ECHO_T='    ' ;;
++  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
++  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
++esac
++
++if expr a : '\(a\)' >/dev/null 2>&1; then
++  as_expr=expr
++else
++  as_expr=false
++fi
++
++rm -f conf$$ conf$$.exe conf$$.file
++echo >conf$$.file
++if ln -s conf$$.file conf$$ 2>/dev/null; then
++  # We could just check for DJGPP; but this test a) works b) is more generic
++  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
++  if test -f conf$$.exe; then
++    # Don't use ln at all; we don't have any links
++    as_ln_s='cp -p'
++  else
++    as_ln_s='ln -s'
++  fi
++elif ln conf$$.file conf$$ 2>/dev/null; then
++  as_ln_s=ln
++else
++  as_ln_s='cp -p'
++fi
++rm -f conf$$ conf$$.exe conf$$.file
++
++if mkdir -p . 2>/dev/null; then
++  as_mkdir_p=:
++else
++  test -d ./-p && rmdir ./-p
++  as_mkdir_p=false
++fi
++
++as_executable_p="test -f"
++
++# Sed expression to map a string onto a valid CPP name.
++as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
++
++# Sed expression to map a string onto a valid variable name.
++as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
++
++
++# IFS
++# We need space, tab and new line, in precisely that order.
++as_nl='
++'
++IFS="         $as_nl"
++
++# CDPATH.
++$as_unset CDPATH
++
++exec 6>&1
++
++# Open the log real soon, to keep \$[0] and so on meaningful, and to
++# report actual input values of CONFIG_FILES etc. instead of their
++# values after options handling.  Logging --version etc. is OK.
++exec 5>>config.log
++{
++  echo
++  sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
address@hidden:@@%:@ Running $as_me. @%:@@%:@
++_ASBOX
++} >&5
++cat >&5 <<_CSEOF
++
++This file was extended by $as_me, which was
++generated by GNU Autoconf 2.59.  Invocation command line was
++
++  CONFIG_FILES    = $CONFIG_FILES
++  CONFIG_HEADERS  = $CONFIG_HEADERS
++  CONFIG_LINKS    = $CONFIG_LINKS
++  CONFIG_COMMANDS = $CONFIG_COMMANDS
++  $ $0 $@
++
++_CSEOF
++echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
++echo >&5
++_ACEOF
++
++# Files that config.status was made for.
++if test -n "$ac_config_files"; then
++  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_headers"; then
++  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_links"; then
++  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_commands"; then
++  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
++fi
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++
++ac_cs_usage="\
++\`$as_me' instantiates files from templates according to the
++current configuration.
++
++Usage: $0 [OPTIONS] [FILE]...
++
++  -h, --help       print this help, then exit
++  -V, --version    print version number, then exit
++  -q, --quiet      do not print progress messages
++  -d, --debug      don't remove temporary files
++      --recheck    update $as_me by reconfiguring in the same conditions
++  --file=FILE[:TEMPLATE]
++                 instantiate the configuration file FILE
++  --header=FILE[:TEMPLATE]
++                 instantiate the configuration header FILE
++
++Configuration files:
++$config_files
++
++Configuration headers:
++$config_headers
++
++Configuration commands:
++$config_commands
++
++Report bugs to <address@hidden>."
++_ACEOF
++
++cat >>$CONFIG_STATUS <<_ACEOF
++ac_cs_version="\\
++config.status
++configured by $0, generated by GNU Autoconf 2.59,
++  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
++
++Copyright (C) 2003 Free Software Foundation, Inc.
++This config.status script is free software; the Free Software Foundation
++gives unlimited permission to copy, distribute and modify it."
++srcdir=$srcdir
++INSTALL="$INSTALL"
++_ACEOF
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++# If no file are specified by the user, then we need to provide default
++# value.  By we need to know if files were specified by the user.
++ac_need_defaults=:
++while test $# != 0
++do
++  case $1 in
++  --*=*)
++    ac_option=`expr "x$1" : 'x\([^=]*\)='`
++    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
++    ac_shift=:
++    ;;
++  -*)
++    ac_option=$1
++    ac_optarg=$2
++    ac_shift=shift
++    ;;
++  *) # This is not an option, so the user has probably given explicit
++     # arguments.
++     ac_option=$1
++     ac_need_defaults=false;;
++  esac
++
++  case $ac_option in
++  # Handling of the options.
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
++  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
++    ac_cs_recheck=: ;;
++  --version | --vers* | -V )
++    echo "$ac_cs_version"; exit 0 ;;
++  --he | --h)
++    # Conflict between --help and --header
++    { { echo "$as_me:$LINENO: error: ambiguous option: $1
++Try \`$0 --help' for more information." >&5
++echo "$as_me: error: ambiguous option: $1
++Try \`$0 --help' for more information." >&2;}
++   { (exit 1); exit 1; }; };;
++  --help | --hel | -h )
++    echo "$ac_cs_usage"; exit 0 ;;
++  --debug | --d* | -d )
++    debug=: ;;
++  --file | --fil | --fi | --f )
++    $ac_shift
++    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
++    ac_need_defaults=false;;
++  --header | --heade | --head | --hea )
++    $ac_shift
++    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
++    ac_need_defaults=false;;
++  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
++  | -silent | --silent | --silen | --sile | --sil | --si | --s)
++    ac_cs_silent=: ;;
++
++  # This is an error.
++  -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
++Try \`$0 --help' for more information." >&5
++echo "$as_me: error: unrecognized option: $1
++Try \`$0 --help' for more information." >&2;}
++   { (exit 1); exit 1; }; } ;;
++
++  *) ac_config_targets="$ac_config_targets $1" ;;
++
++  esac
++  shift
++done
++
++ac_configure_extra_args=
++
++if $ac_cs_silent; then
++  exec 6>/dev/null
++  ac_configure_extra_args="$ac_configure_extra_args --silent"
++fi
++
++_ACEOF
++cat >>$CONFIG_STATUS <<_ACEOF
++if \$ac_cs_recheck; then
++  echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " 
--no-create --no-recursion" >&6
++  exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create 
--no-recursion
++fi
++
++_ACEOF
++
++cat >>$CONFIG_STATUS <<_ACEOF
++#
++# INIT-COMMANDS section.
++#
++
++AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
++
++_ACEOF
++
++
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++for ac_config_target in $ac_config_targets
++do
++  case "$ac_config_target" in
++  # Handling of arguments.
++  "idl4-config" ) CONFIG_FILES="$CONFIG_FILES idl4-config" ;;
++  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
++  "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
++  "doc/manual/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/manual/Makefile" ;;
++  "examples/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
++  "examples/weaver/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/weaver/Makefile" ;;
++  "examples/test/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/Makefile" ;;
++  "examples/test/idl/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/idl/Makefile" ;;
++  "examples/test/v2-ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v2-ia32/Makefile" ;;
++  "examples/test/v2-ia32-generic/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v2-ia32-generic/Makefile" ;;
++  "examples/test/x0-ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/x0-ia32/Makefile" ;;
++  "examples/test/x0-ia32-generic/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/x0-ia32-generic/Makefile" ;;
++  "examples/test/x0-arm-generic/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/x0-arm-generic/Makefile" ;;
++  "examples/test/v4-ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v4-ia32/Makefile" ;;
++  "examples/test/v4-ia32-generic/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v4-ia32-generic/Makefile" ;;
++  "examples/test/v4-ia32-cs/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v4-ia32-cs/Makefile" ;;
++  "examples/test/v4-ia64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v4-ia64/Makefile" ;;
++  "examples/test/v4-ia64-generic/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v4-ia64-generic/Makefile" ;;
++  "examples/test/v4-alpha-generic/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v4-alpha-generic/Makefile" ;;
++  "examples/test/v4-mips64-generic/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v4-mips64-generic/Makefile" ;;
++  "examples/test/v4-powerpc-generic/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
examples/test/v4-powerpc-generic/Makefile" ;;
++  "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
++  "src/aoi/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/aoi/Makefile" ;;
++  "src/arch/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/arch/Makefile" ;;
++  "src/arch/v2/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/arch/v2/Makefile" 
;;
++  "src/arch/v2/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/v2/ia32/Makefile" ;;
++  "src/arch/v4/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/arch/v4/Makefile" 
;;
++  "src/arch/v4/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/v4/ia32/Makefile" ;;
++  "src/arch/v4/ia64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/v4/ia64/Makefile" ;;
++  "src/arch/v4_gnu/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/v4_gnu/Makefile" ;;
++  "src/arch/x0/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/arch/x0/Makefile" 
;;
++  "src/arch/x0/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/x0/ia32/Makefile" ;;
++  "src/base/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/base/Makefile" ;;
++  "src/base/lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/base/lib/Makefile" ;;
++  "src/be/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/be/Makefile" ;;
++  "src/be/ops/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/be/ops/Makefile" ;;
++  "src/be/types/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/be/types/Makefile" ;;
++  "src/cast/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/cast/Makefile" ;;
++  "src/fe/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/fe/Makefile" ;;
++  "src/fe/c++/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/fe/c++/Makefile" ;;
++  "src/fe/idl/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/fe/idl/Makefile" ;;
++  "src/fe/lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/fe/lib/Makefile" ;;
++  "src/test/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test/Makefile" ;;
++  "src/test/glue/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/Makefile" ;;
++  "src/test/glue/v2-ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/v2-ia32/Makefile" ;;
++  "src/test/glue/x0-ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/x0-ia32/Makefile" ;;
++  "src/test/glue/x0-arm/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/x0-arm/Makefile" ;;
++  "src/test/glue/v4-ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/v4-ia32/Makefile" ;;
++  "src/test/glue/v4-ia64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/v4-ia64/Makefile" ;;
++  "src/test/glue/v4-alpha/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/v4-alpha/Makefile" ;;
++  "src/test/glue/v4-mips64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/v4-mips64/Makefile" ;;
++  "src/test/glue/v4-powerpc/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/test/glue/v4-powerpc/Makefile" ;;
++  "src/include/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/include/Makefile" 
;;
++  "src/include/user/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/include/user/Makefile" ;;
++  "src/include/user/idl4/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/include/user/idl4/Makefile" ;;
++  "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
++  "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
++  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
++echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
++   { (exit 1); exit 1; }; };;
++  esac
++done
++
++# If the user did not use the arguments to specify the items to instantiate,
++# then the envvar interface is used.  Set only those that are not.
++# We use the long form for the default assignment because of an extremely
++# bizarre bug on SunOS 4.1.3.
++if $ac_need_defaults; then
++  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
++  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
++  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
++fi
++
++# Have a temporary directory for convenience.  Make it in the build tree
++# simply because there is no reason to put it here, and in addition,
++# creating and moving files from /tmp can sometimes cause problems.
++# Create a temporary directory, and hook for its removal unless debugging.
++$debug ||
++{
++  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
++  trap '{ (exit 1); exit 1; }' 1 2 13 15
++}
++
++# Create a (secure) tmp directory for tmp files.
++
++{
++  tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
++  test -n "$tmp" && test -d "$tmp"
++}  ||
++{
++  tmp=./confstat$$-$RANDOM
++  (umask 077 && mkdir $tmp)
++} ||
++{
++   echo "$me: cannot create a temporary directory in ." >&2
++   { (exit 1); exit 1; }
++}
++
++_ACEOF
++
++cat >>$CONFIG_STATUS <<_ACEOF
++
++#
++# CONFIG_FILES section.
++#
++
++# No need to generate the scripts if there are no CONFIG_FILES.
++# This happens for instance when ./config.status config.h
++if test -n "\$CONFIG_FILES"; then
++  # Protect against being on the right side of a sed subst in config.status.
++  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
++   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
++s,@SHELL@,$SHELL,;t t
++s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
++s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
++s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
++s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
++s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
++s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
++s,@exec_prefix@,$exec_prefix,;t t
++s,@prefix@,$prefix,;t t
++s,@program_transform_name@,$program_transform_name,;t t
++s,@bindir@,$bindir,;t t
++s,@sbindir@,$sbindir,;t t
++s,@libexecdir@,$libexecdir,;t t
++s,@datadir@,$datadir,;t t
++s,@sysconfdir@,$sysconfdir,;t t
++s,@sharedstatedir@,$sharedstatedir,;t t
++s,@localstatedir@,$localstatedir,;t t
++s,@libdir@,$libdir,;t t
++s,@includedir@,$includedir,;t t
++s,@oldincludedir@,$oldincludedir,;t t
++s,@infodir@,$infodir,;t t
++s,@mandir@,$mandir,;t t
++s,@build_alias@,$build_alias,;t t
++s,@host_alias@,$host_alias,;t t
++s,@target_alias@,$target_alias,;t t
++s,@DEFS@,$DEFS,;t t
++s,@ECHO_C@,$ECHO_C,;t t
++s,@ECHO_N@,$ECHO_N,;t t
++s,@ECHO_T@,$ECHO_T,;t t
++s,@LIBS@,$LIBS,;t t
++s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
++s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
++s,@INSTALL_DATA@,$INSTALL_DATA,;t t
++s,@CYGPATH_W@,$CYGPATH_W,;t t
++s,@PACKAGE@,$PACKAGE,;t t
++s,@VERSION@,$VERSION,;t t
++s,@ACLOCAL@,$ACLOCAL,;t t
++s,@AUTOCONF@,$AUTOCONF,;t t
++s,@AUTOMAKE@,$AUTOMAKE,;t t
++s,@AUTOHEADER@,$AUTOHEADER,;t t
++s,@MAKEINFO@,$MAKEINFO,;t t
++s,@AMTAR@,$AMTAR,;t t
++s,@install_sh@,$install_sh,;t t
++s,@STRIP@,$STRIP,;t t
++s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
++s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
++s,@AWK@,$AWK,;t t
++s,@SET_MAKE@,$SET_MAKE,;t t
++s,@am__leading_dot@,$am__leading_dot,;t t
++s,@CC@,$CC,;t t
++s,@CFLAGS@,$CFLAGS,;t t
++s,@LDFLAGS@,$LDFLAGS,;t t
++s,@CPPFLAGS@,$CPPFLAGS,;t t
++s,@ac_ct_CC@,$ac_ct_CC,;t t
++s,@EXEEXT@,$EXEEXT,;t t
++s,@OBJEXT@,$OBJEXT,;t t
++s,@DEPDIR@,$DEPDIR,;t t
++s,@am__include@,$am__include,;t t
++s,@am__quote@,$am__quote,;t t
++s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t
++s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
++s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
++s,@CCDEPMODE@,$CCDEPMODE,;t t
++s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
++s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
++s,@CXX@,$CXX,;t t
++s,@CXXFLAGS@,$CXXFLAGS,;t t
++s,@ac_ct_CXX@,$ac_ct_CXX,;t t
++s,@CXXDEPMODE@,$CXXDEPMODE,;t t
++s,@am__fastdepCXX_TRUE@,$am__fastdepCXX_TRUE,;t t
++s,@am__fastdepCXX_FALSE@,$am__fastdepCXX_FALSE,;t t
++s,@CCAS@,$CCAS,;t t
++s,@CCASFLAGS@,$CCASFLAGS,;t t
++s,@RANLIB@,$RANLIB,;t t
++s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
++s,@LEX@,$LEX,;t t
++s,@LEXLIB@,$LEXLIB,;t t
++s,@LEX_OUTPUT_ROOT@,$LEX_OUTPUT_ROOT,;t t
++s,@YACC@,$YACC,;t t
++s,@LN_S@,$LN_S,;t t
++s,@LATEX@,$LATEX,;t t
++s,@BIBTEX@,$BIBTEX,;t t
++s,@DVIPS@,$DVIPS,;t t
++s,@DVIPDF@,$DVIPDF,;t t
++s,@HAS_LATEX_TRUE@,$HAS_LATEX_TRUE,;t t
++s,@HAS_LATEX_FALSE@,$HAS_LATEX_FALSE,;t t
++s,@HAS_DVIPS_TRUE@,$HAS_DVIPS_TRUE,;t t
++s,@HAS_DVIPS_FALSE@,$HAS_DVIPS_FALSE,;t t
++s,@HAS_DVIPDF_TRUE@,$HAS_DVIPDF_TRUE,;t t
++s,@HAS_DVIPDF_FALSE@,$HAS_DVIPDF_FALSE,;t t
++s,@WITH_TESTSUITE_TRUE@,$WITH_TESTSUITE_TRUE,;t t
++s,@WITH_TESTSUITE_FALSE@,$WITH_TESTSUITE_FALSE,;t t
++s,@WITH_HAZELNUT_TRUE@,$WITH_HAZELNUT_TRUE,;t t
++s,@WITH_HAZELNUT_FALSE@,$WITH_HAZELNUT_FALSE,;t t
++s,@WITH_EXAMPLES_TRUE@,$WITH_EXAMPLES_TRUE,;t t
++s,@WITH_EXAMPLES_FALSE@,$WITH_EXAMPLES_FALSE,;t t
++s,@WITH_PISTACHIO_IA32_TRUE@,$WITH_PISTACHIO_IA32_TRUE,;t t
++s,@WITH_PISTACHIO_IA32_FALSE@,$WITH_PISTACHIO_IA32_FALSE,;t t
++s,@WITH_PISTACHIO_IA64_TRUE@,$WITH_PISTACHIO_IA64_TRUE,;t t
++s,@WITH_PISTACHIO_IA64_FALSE@,$WITH_PISTACHIO_IA64_FALSE,;t t
++s,@WITH_PISTACHIO_ARM_TRUE@,$WITH_PISTACHIO_ARM_TRUE,;t t
++s,@WITH_PISTACHIO_ARM_FALSE@,$WITH_PISTACHIO_ARM_FALSE,;t t
++s,@WITH_PISTACHIO_MIPS64_TRUE@,$WITH_PISTACHIO_MIPS64_TRUE,;t t
++s,@WITH_PISTACHIO_MIPS64_FALSE@,$WITH_PISTACHIO_MIPS64_FALSE,;t t
++s,@WITH_PISTACHIO_ALPHA_TRUE@,$WITH_PISTACHIO_ALPHA_TRUE,;t t
++s,@WITH_PISTACHIO_ALPHA_FALSE@,$WITH_PISTACHIO_ALPHA_FALSE,;t t
++s,@WITH_PISTACHIO_POWERPC_TRUE@,$WITH_PISTACHIO_POWERPC_TRUE,;t t
++s,@WITH_PISTACHIO_POWERPC_FALSE@,$WITH_PISTACHIO_POWERPC_FALSE,;t t
++s,@WITH_FIASCO_TRUE@,$WITH_FIASCO_TRUE,;t t
++s,@WITH_FIASCO_FALSE@,$WITH_FIASCO_FALSE,;t t
++s,@TESTSUITE_DIR@,$TESTSUITE_DIR,;t t
++s,@HAZELNUT_DIR@,$HAZELNUT_DIR,;t t
++s,@PISTACHIO_IA32_DIR@,$PISTACHIO_IA32_DIR,;t t
++s,@PISTACHIO_IA64_DIR@,$PISTACHIO_IA64_DIR,;t t
++s,@PISTACHIO_ARM_DIR@,$PISTACHIO_ARM_DIR,;t t
++s,@PISTACHIO_MIPS64_DIR@,$PISTACHIO_MIPS64_DIR,;t t
++s,@PISTACHIO_ALPHA_DIR@,$PISTACHIO_ALPHA_DIR,;t t
++s,@PISTACHIO_POWERPC_DIR@,$PISTACHIO_POWERPC_DIR,;t t
++s,@FIASCO_DIR@,$FIASCO_DIR,;t t
++s,@WITH_TOOLCHAIN_IA32_TRUE@,$WITH_TOOLCHAIN_IA32_TRUE,;t t
++s,@WITH_TOOLCHAIN_IA32_FALSE@,$WITH_TOOLCHAIN_IA32_FALSE,;t t
++s,@WITH_TOOLCHAIN_IA64_TRUE@,$WITH_TOOLCHAIN_IA64_TRUE,;t t
++s,@WITH_TOOLCHAIN_IA64_FALSE@,$WITH_TOOLCHAIN_IA64_FALSE,;t t
++s,@WITH_TOOLCHAIN_ARM_TRUE@,$WITH_TOOLCHAIN_ARM_TRUE,;t t
++s,@WITH_TOOLCHAIN_ARM_FALSE@,$WITH_TOOLCHAIN_ARM_FALSE,;t t
++s,@WITH_TOOLCHAIN_ALPHA_TRUE@,$WITH_TOOLCHAIN_ALPHA_TRUE,;t t
++s,@WITH_TOOLCHAIN_ALPHA_FALSE@,$WITH_TOOLCHAIN_ALPHA_FALSE,;t t
++s,@WITH_TOOLCHAIN_MIPS64_TRUE@,$WITH_TOOLCHAIN_MIPS64_TRUE,;t t
++s,@WITH_TOOLCHAIN_MIPS64_FALSE@,$WITH_TOOLCHAIN_MIPS64_FALSE,;t t
++s,@WITH_TOOLCHAIN_POWERPC_TRUE@,$WITH_TOOLCHAIN_POWERPC_TRUE,;t t
++s,@WITH_TOOLCHAIN_POWERPC_FALSE@,$WITH_TOOLCHAIN_POWERPC_FALSE,;t t
++s,@IA32_PREFIX@,$IA32_PREFIX,;t t
++s,@IA64_PREFIX@,$IA64_PREFIX,;t t
++s,@ARM_PREFIX@,$ARM_PREFIX,;t t
++s,@ALPHA_PREFIX@,$ALPHA_PREFIX,;t t
++s,@MIPS64_PREFIX@,$MIPS64_PREFIX,;t t
++s,@POWERPC_PREFIX@,$POWERPC_PREFIX,;t t
++s,@NEED_GETOPT_LONG_TRUE@,$NEED_GETOPT_LONG_TRUE,;t t
++s,@NEED_GETOPT_LONG_FALSE@,$NEED_GETOPT_LONG_FALSE,;t t
++s,@MAINTAINERCLEANFILES@,$MAINTAINERCLEANFILES,;t t
++s,@LIB@&address@hidden@,$LIB@&address@hidden,;t t
++s,@LTLIBOBJS@,$LTLIBOBJS,;t t
++CEOF
++
++_ACEOF
++
++  cat >>$CONFIG_STATUS <<\_ACEOF
++  # Split the substitutions into bite-sized pieces for seds with
++  # small command number limits, like on Digital OSF/1 and HP-UX.
++  ac_max_sed_lines=48
++  ac_sed_frag=1 # Number of current file.
++  ac_beg=1 # First line for current file.
++  ac_end=$ac_max_sed_lines # Line after last line for current file.
++  ac_more_lines=:
++  ac_sed_cmds=
++  while $ac_more_lines; do
++    if test $ac_beg -gt 1; then
++      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
++    else
++      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
++    fi
++    if test ! -s $tmp/subs.frag; then
++      ac_more_lines=false
++    else
++      # The purpose of the label and of the branching condition is to
++      # speed up the sed processing (if there are no `@' at all, there
++      # is no need to browse any of the substitutions).
++      # These are the two extra sed commands mentioned above.
++      (echo ':t
++  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) 
>$tmp/subs-$ac_sed_frag.sed
++      if test -z "$ac_sed_cmds"; then
++      ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
++      else
++      ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
++      fi
++      ac_sed_frag=`expr $ac_sed_frag + 1`
++      ac_beg=$ac_end
++      ac_end=`expr $ac_end + $ac_max_sed_lines`
++    fi
++  done
++  if test -z "$ac_sed_cmds"; then
++    ac_sed_cmds=cat
++  fi
++fi # test -n "$CONFIG_FILES"
++
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
++for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
++  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
++  case $ac_file in
++  - | *:- | *:-:* ) # input from stdin
++      cat >$tmp/stdin
++      ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++      ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++      ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++  * )   ac_file_in=$ac_file.in ;;
++  esac
++
++  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
++  ac_dir=`(dirname "$ac_file") 2>/dev/null ||
++$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$ac_file" : 'X\(//\)[^/]' \| \
++       X"$ac_file" : 'X\(//\)$' \| \
++       X"$ac_file" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$ac_file" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++  { if $as_mkdir_p; then
++    mkdir -p "$ac_dir"
++  else
++    as_dir="$ac_dir"
++    as_dirs=
++    while test ! -d "$as_dir"; do
++      as_dirs="$as_dir $as_dirs"
++      as_dir=`(dirname "$as_dir") 2>/dev/null ||
++$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$as_dir" : 'X\(//\)[^/]' \| \
++       X"$as_dir" : 'X\(//\)$' \| \
++       X"$as_dir" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$as_dir" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++    done
++    test ! -n "$as_dirs" || mkdir $as_dirs
++  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
++echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
++   { (exit 1); exit 1; }; }; }
++
++  ac_builddir=.
++
++if test "$ac_dir" != .; then
++  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
++  # A "../" for each directory in $ac_dir_suffix.
++  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
++else
++  ac_dir_suffix= ac_top_builddir=
++fi
++
++case $srcdir in
++  .)  # No --srcdir option.  We are building in place.
++    ac_srcdir=.
++    if test -z "$ac_top_builddir"; then
++       ac_top_srcdir=.
++    else
++       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
++    fi ;;
++  [\\/]* | ?:[\\/]* )  # Absolute path.
++    ac_srcdir=$srcdir$ac_dir_suffix;
++    ac_top_srcdir=$srcdir ;;
++  *) # Relative path.
++    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
++    ac_top_srcdir=$ac_top_builddir$srcdir ;;
++esac
++
++# Do not use `cd foo && pwd` to compute absolute paths, because
++# the directories may not exist.
++case `pwd` in
++.) ac_abs_builddir="$ac_dir";;
++*)
++  case "$ac_dir" in
++  .) ac_abs_builddir=`pwd`;;
++  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
++  *) ac_abs_builddir=`pwd`/"$ac_dir";;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_builddir=${ac_top_builddir}.;;
++*)
++  case ${ac_top_builddir}. in
++  .) ac_abs_top_builddir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
++  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_srcdir=$ac_srcdir;;
++*)
++  case $ac_srcdir in
++  .) ac_abs_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
++  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_srcdir=$ac_top_srcdir;;
++*)
++  case $ac_top_srcdir in
++  .) ac_abs_top_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
++  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
++  esac;;
++esac
++
++
++  case $INSTALL in
++  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
++  *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
++  esac
++
++  if test x"$ac_file" != x-; then
++    { echo "$as_me:$LINENO: creating $ac_file" >&5
++echo "$as_me: creating $ac_file" >&6;}
++    rm -f "$ac_file"
++  fi
++  # Let's still pretend it is `configure' which instantiates (i.e., don't
++  # use $as_me), people would be surprised to read:
++  #    /* config.h.  Generated by config.status.  */
++  if test x"$ac_file" = x-; then
++    configure_input=
++  else
++    configure_input="$ac_file.  "
++  fi
++  configure_input=$configure_input"Generated from `echo $ac_file_in |
++                                   sed 's,.*/,,'` by configure."
++
++  # First look for the input files in the build tree, otherwise in the
++  # src tree.
++  ac_file_inputs=`IFS=:
++    for f in $ac_file_in; do
++      case $f in
++      -) echo $tmp/stdin ;;
++      [\\/$]*)
++       # Absolute (can't be DOS-style, as IFS=:)
++       test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
++echo "$as_me: error: cannot find input file: $f" >&2;}
++   { (exit 1); exit 1; }; }
++       echo "$f";;
++      *) # Relative
++       if test -f "$f"; then
++         # Build tree
++         echo "$f"
++       elif test -f "$srcdir/$f"; then
++         # Source tree
++         echo "$srcdir/$f"
++       else
++         # /dev/null tree
++         { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
++echo "$as_me: error: cannot find input file: $f" >&2;}
++   { (exit 1); exit 1; }; }
++       fi;;
++      esac
++    done` || { (exit 1); exit 1; }
++_ACEOF
++cat >>$CONFIG_STATUS <<_ACEOF
++  sed "$ac_vpsub
++$extrasub
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
++:t
++/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
++s,@configure_input@,$configure_input,;t t
++s,@srcdir@,$ac_srcdir,;t t
++s,@abs_srcdir@,$ac_abs_srcdir,;t t
++s,@top_srcdir@,$ac_top_srcdir,;t t
++s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
++s,@builddir@,$ac_builddir,;t t
++s,@abs_builddir@,$ac_abs_builddir,;t t
++s,@top_builddir@,$ac_top_builddir,;t t
++s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
++s,@INSTALL@,$ac_INSTALL,;t t
++" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
++  rm -f $tmp/stdin
++  if test x"$ac_file" != x-; then
++    mv $tmp/out $ac_file
++  else
++    cat $tmp/out
++    rm -f $tmp/out
++  fi
++
++done
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
++
++#
++# CONFIG_HEADER section.
++#
++
++# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
++# NAME is the cpp macro being defined and VALUE is the value it is being 
given.
++#
++# ac_d sets the value in "#define NAME VALUE" lines.
++ac_dA='s,^\([  ]*\)#\([        ]*define[       ][      ]*\)'
++ac_dB='[       ].*$,\1#\2'
++ac_dC=' '
++ac_dD=',;t'
++# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
++ac_uA='s,^\([  ]*\)#\([        ]*\)undef\([    ][      ]*\)'
++ac_uB='$,\1#\2define\3'
++ac_uC=' '
++ac_uD=',;t'
++
++for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
++  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
++  case $ac_file in
++  - | *:- | *:-:* ) # input from stdin
++      cat >$tmp/stdin
++      ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++      ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++      ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++  * )   ac_file_in=$ac_file.in ;;
++  esac
++
++  test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
++echo "$as_me: creating $ac_file" >&6;}
++
++  # First look for the input files in the build tree, otherwise in the
++  # src tree.
++  ac_file_inputs=`IFS=:
++    for f in $ac_file_in; do
++      case $f in
++      -) echo $tmp/stdin ;;
++      [\\/$]*)
++       # Absolute (can't be DOS-style, as IFS=:)
++       test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
++echo "$as_me: error: cannot find input file: $f" >&2;}
++   { (exit 1); exit 1; }; }
++       # Do quote $f, to prevent DOS paths from being IFS'd.
++       echo "$f";;
++      *) # Relative
++       if test -f "$f"; then
++         # Build tree
++         echo "$f"
++       elif test -f "$srcdir/$f"; then
++         # Source tree
++         echo "$srcdir/$f"
++       else
++         # /dev/null tree
++         { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
++echo "$as_me: error: cannot find input file: $f" >&2;}
++   { (exit 1); exit 1; }; }
++       fi;;
++      esac
++    done` || { (exit 1); exit 1; }
++  # Remove the trailing spaces.
++  sed 's/[     ]*$//' $ac_file_inputs >$tmp/in
++
++_ACEOF
++
++# Transform confdefs.h into two sed scripts, `conftest.defines' and
++# `conftest.undefs', that substitutes the proper values into
++# config.h.in to produce config.h.  The first handles `#define'
++# templates, and the second `#undef' templates.
++# And first: Protect against being on the right side of a sed subst in
++# config.status.  Protect against being in an unquoted here document
++# in config.status.
++rm -f conftest.defines conftest.undefs
++# Using a here document instead of a string reduces the quoting nightmare.
++# Putting comments in sed scripts is not portable.
++#
++# `end' is used to avoid that the second main sed command (meant for
++# 0-ary CPP macros) applies to n-ary macro definitions.
++# See the Autoconf documentation for `clear'.
++cat >confdef2sed.sed <<\_ACEOF
++s/[\\&,]/\\&/g
++s,[\\$`],\\&,g
++t clear
++: clear
++s,^[   ]*#[    ]*define[       ][      ]*\([^  (][^    (]*\)\(([^)]*)\)[      
 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
++t end
++s,^[   ]*#[    ]*define[       ][      ]*\([^  ][^     ]*\)[   
]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
++: end
++_ACEOF
++# If some macros were called several times there might be several times
++# the same #defines, which is useless.  Nevertheless, we may not want to
++# sort them, since we want the *last* AC-DEFINE to be honored.
++uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
++sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
++rm -f confdef2sed.sed
++
++# This sed command replaces #undef with comments.  This is necessary, for
++# example, in the case of _POSIX_SOURCE, which is predefined and required
++# on some systems where configure will not decide to define it.
++cat >>conftest.undefs <<\_ACEOF
++s,^[   ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
++_ACEOF
++
++# Break up conftest.defines because some shells have a limit on the size
++# of here documents, and old seds have small limits too (100 cmds).
++echo '  # Handle all the #define templates only if necessary.' 
>>$CONFIG_STATUS
++echo '  if grep "^[    ]*#[    ]*define" $tmp/in >/dev/null; then' 
>>$CONFIG_STATUS
++echo '  # If there are no defines, we may have an empty if/fi' 
>>$CONFIG_STATUS
++echo '  :' >>$CONFIG_STATUS
++rm -f conftest.tail
++while grep . conftest.defines >/dev/null
++do
++  # Write a limited-size here document to $tmp/defines.sed.
++  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
++  # Speed up: don't consider the non `#define' lines.
++  echo '/^[    ]*#[    ]*define/!b' >>$CONFIG_STATUS
++  # Work around the forget-to-reset-the-flag bug.
++  echo 't clr' >>$CONFIG_STATUS
++  echo ': clr' >>$CONFIG_STATUS
++  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
++  echo 'CEOF
++  sed -f $tmp/defines.sed $tmp/in >$tmp/out
++  rm -f $tmp/in
++  mv $tmp/out $tmp/in
++' >>$CONFIG_STATUS
++  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
++  rm -f conftest.defines
++  mv conftest.tail conftest.defines
++done
++rm -f conftest.defines
++echo '  fi # grep' >>$CONFIG_STATUS
++echo >>$CONFIG_STATUS
++
++# Break up conftest.undefs because some shells have a limit on the size
++# of here documents, and old seds have small limits too (100 cmds).
++echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
++rm -f conftest.tail
++while grep . conftest.undefs >/dev/null
++do
++  # Write a limited-size here document to $tmp/undefs.sed.
++  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
++  # Speed up: don't consider the non `#undef'
++  echo '/^[    ]*#[    ]*undef/!b' >>$CONFIG_STATUS
++  # Work around the forget-to-reset-the-flag bug.
++  echo 't clr' >>$CONFIG_STATUS
++  echo ': clr' >>$CONFIG_STATUS
++  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
++  echo 'CEOF
++  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
++  rm -f $tmp/in
++  mv $tmp/out $tmp/in
++' >>$CONFIG_STATUS
++  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
++  rm -f conftest.undefs
++  mv conftest.tail conftest.undefs
++done
++rm -f conftest.undefs
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++  # Let's still pretend it is `configure' which instantiates (i.e., don't
++  # use $as_me), people would be surprised to read:
++  #    /* config.h.  Generated by config.status.  */
++  if test x"$ac_file" = x-; then
++    echo "/* Generated by configure.  */" >$tmp/config.h
++  else
++    echo "/* $ac_file.  Generated by configure.  */" >$tmp/config.h
++  fi
++  cat $tmp/in >>$tmp/config.h
++  rm -f $tmp/in
++  if test x"$ac_file" != x-; then
++    if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
++      { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
++echo "$as_me: $ac_file is unchanged" >&6;}
++    else
++      ac_dir=`(dirname "$ac_file") 2>/dev/null ||
++$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$ac_file" : 'X\(//\)[^/]' \| \
++       X"$ac_file" : 'X\(//\)$' \| \
++       X"$ac_file" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$ac_file" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++      { if $as_mkdir_p; then
++    mkdir -p "$ac_dir"
++  else
++    as_dir="$ac_dir"
++    as_dirs=
++    while test ! -d "$as_dir"; do
++      as_dirs="$as_dir $as_dirs"
++      as_dir=`(dirname "$as_dir") 2>/dev/null ||
++$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$as_dir" : 'X\(//\)[^/]' \| \
++       X"$as_dir" : 'X\(//\)$' \| \
++       X"$as_dir" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$as_dir" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++    done
++    test ! -n "$as_dirs" || mkdir $as_dirs
++  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
++echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
++   { (exit 1); exit 1; }; }; }
++
++      rm -f $ac_file
++      mv $tmp/config.h $ac_file
++    fi
++  else
++    cat $tmp/config.h
++    rm -f $tmp/config.h
++  fi
++# Compute $ac_file's index in $config_headers.
++_am_stamp_count=1
++for _am_header in $config_headers :; do
++  case $_am_header in
++    $ac_file | $ac_file:* )
++      break ;;
++    * )
++      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
++  esac
++done
++echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null ||
++$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X$ac_file : 'X\(//\)[^/]' \| \
++       X$ac_file : 'X\(//\)$' \| \
++       X$ac_file : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X$ac_file |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`/stamp-h$_am_stamp_count
++done
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
++
++#
++# CONFIG_COMMANDS section.
++#
++for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
++  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
++  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
++  ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
++$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$ac_dest" : 'X\(//\)[^/]' \| \
++       X"$ac_dest" : 'X\(//\)$' \| \
++       X"$ac_dest" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$ac_dest" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++  { if $as_mkdir_p; then
++    mkdir -p "$ac_dir"
++  else
++    as_dir="$ac_dir"
++    as_dirs=
++    while test ! -d "$as_dir"; do
++      as_dirs="$as_dir $as_dirs"
++      as_dir=`(dirname "$as_dir") 2>/dev/null ||
++$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$as_dir" : 'X\(//\)[^/]' \| \
++       X"$as_dir" : 'X\(//\)$' \| \
++       X"$as_dir" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$as_dir" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++    done
++    test ! -n "$as_dirs" || mkdir $as_dirs
++  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
++echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
++   { (exit 1); exit 1; }; }; }
++
++  ac_builddir=.
++
++if test "$ac_dir" != .; then
++  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
++  # A "../" for each directory in $ac_dir_suffix.
++  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
++else
++  ac_dir_suffix= ac_top_builddir=
++fi
++
++case $srcdir in
++  .)  # No --srcdir option.  We are building in place.
++    ac_srcdir=.
++    if test -z "$ac_top_builddir"; then
++       ac_top_srcdir=.
++    else
++       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
++    fi ;;
++  [\\/]* | ?:[\\/]* )  # Absolute path.
++    ac_srcdir=$srcdir$ac_dir_suffix;
++    ac_top_srcdir=$srcdir ;;
++  *) # Relative path.
++    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
++    ac_top_srcdir=$ac_top_builddir$srcdir ;;
++esac
++
++# Do not use `cd foo && pwd` to compute absolute paths, because
++# the directories may not exist.
++case `pwd` in
++.) ac_abs_builddir="$ac_dir";;
++*)
++  case "$ac_dir" in
++  .) ac_abs_builddir=`pwd`;;
++  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
++  *) ac_abs_builddir=`pwd`/"$ac_dir";;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_builddir=${ac_top_builddir}.;;
++*)
++  case ${ac_top_builddir}. in
++  .) ac_abs_top_builddir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
++  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_srcdir=$ac_srcdir;;
++*)
++  case $ac_srcdir in
++  .) ac_abs_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
++  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_srcdir=$ac_top_srcdir;;
++*)
++  case $ac_top_srcdir in
++  .) ac_abs_top_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
++  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
++  esac;;
++esac
++
++
++  { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
++echo "$as_me: executing $ac_dest commands" >&6;}
++  case $ac_dest in
++    depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
++  # Strip MF so we end up with the name of the file.
++  mf=`echo "$mf" | sed -e 's/:.*$//'`
++  # Check whether this is an Automake generated Makefile or not.
++  # We used to match only the files named `Makefile.in', but
++  # some people rename them; so instead we look at the file content.
++  # Grep'ing the first line is not enough: some people post-process
++  # each Makefile.in and add a new line on top of each file to say so.
++  # So let's grep whole file.
++  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
++    dirpart=`(dirname "$mf") 2>/dev/null ||
++$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$mf" : 'X\(//\)[^/]' \| \
++       X"$mf" : 'X\(//\)$' \| \
++       X"$mf" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$mf" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++  else
++    continue
++  fi
++  grep '^DEP_FILES *= *[^ @%:@]' < "$mf" > /dev/null || continue
++  # Extract the definition of DEP_FILES from the Makefile without
++  # running `make'.
++  DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
++  test -z "$DEPDIR" && continue
++  # When using ansi2knr, U may be empty or an underscore; expand it
++  U=`sed -n -e '/^U = / s///p' < "$mf"`
++  test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
++  # We invoke sed twice because it is the simplest approach to
++  # changing $(DEPDIR) to its actual value in the expansion.
++  for file in `sed -n -e '
++    /^DEP_FILES = .*\\\\$/ {
++      s/^DEP_FILES = //
++      :loop
++      s/\\\\$//
++      p
++      n
++      /\\\\$/ b loop
++      p
++    }
++    /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
++       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
++    # Make sure the directory exists.
++    test -f "$dirpart/$file" && continue
++    fdir=`(dirname "$file") 2>/dev/null ||
++$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$file" : 'X\(//\)[^/]' \| \
++       X"$file" : 'X\(//\)$' \| \
++       X"$file" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$file" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++    { if $as_mkdir_p; then
++    mkdir -p $dirpart/$fdir
++  else
++    as_dir=$dirpart/$fdir
++    as_dirs=
++    while test ! -d "$as_dir"; do
++      as_dirs="$as_dir $as_dirs"
++      as_dir=`(dirname "$as_dir") 2>/dev/null ||
++$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$as_dir" : 'X\(//\)[^/]' \| \
++       X"$as_dir" : 'X\(//\)$' \| \
++       X"$as_dir" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$as_dir" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++    done
++    test ! -n "$as_dirs" || mkdir $as_dirs
++  fi || { { echo "$as_me:$LINENO: error: cannot create directory 
$dirpart/$fdir" >&5
++echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;}
++   { (exit 1); exit 1; }; }; }
++
++    # echo "creating $dirpart/$file"
++    echo '# dummy' > "$dirpart/$file"
++  done
++done
++ ;;
++  esac
++done
++_ACEOF
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++
++{ (exit 0); exit 0; }
++_ACEOF
++chmod +x $CONFIG_STATUS
++ac_clean_files=$ac_clean_files_save
++
++
++# configure is writing to config.log, and then calls config.status.
++# config.status does its own redirection, appending to config.log.
++# Unfortunately, on DOS this fails, as config.log is still kept open
++# by configure, so config.status won't be able to write to it; its
++# output is simply discarded.  So we exec the FD to /dev/null,
++# effectively closing config.log, so it can be properly (re)opened and
++# appended to by config.status.  When coming back to configure, we
++# need to make the FD available again.
++if test "$no_create" != yes; then
++  ac_cs_success=:
++  ac_config_status_args=
++  test "$silent" = yes &&
++    ac_config_status_args="$ac_config_status_args --quiet"
++  exec 5>/dev/null
++  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
++  exec 5>>config.log
++  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
++  # would make configure fail if this is the last instruction.
++  $ac_cs_success || { (exit 1); exit 1; }
++fi
++
+diff -Naur idl4-1.0.2/autom4te.cache/requests idl4/autom4te.cache/requests
+--- idl4-1.0.2/autom4te.cache/requests 1970-01-01 01:00:00.000000000 +0100
++++ idl4/autom4te.cache/requests       2005-07-11 16:14:11.988797064 +0200
+@@ -0,0 +1,117 @@
++# This file was generated.
++# It contains the lists of macros which have been traced.
++# It can be safely removed.
++
address@hidden = (
++             bless( [
++                      '0',
++                      1,
++                      [
++                        '/usr/share/autoconf'
++                      ],
++                      [
++                        '/usr/share/autoconf/autoconf/autoconf.m4f',
++                        'aclocal.m4',
++                        'configure.in'
++                      ],
++                      {
++                        'm4_pattern_forbid' => 1,
++                        'AC_CONFIG_LIBOBJ_DIR' => 1,
++                        'AC_C_VOLATILE' => 1,
++                        'AC_TYPE_OFF_T' => 1,
++                        'AC_FUNC_CLOSEDIR_VOID' => 1,
++                        'AC_REPLACE_FNMATCH' => 1,
++                        'AC_PROG_LIBTOOL' => 1,
++                        'AC_FUNC_STAT' => 1,
++                        'AC_FUNC_WAIT3' => 1,
++                        'AC_HEADER_TIME' => 1,
++                        'AC_FUNC_LSTAT' => 1,
++                        'AC_STRUCT_TM' => 1,
++                        'AM_AUTOMAKE_VERSION' => 1,
++                        'AC_FUNC_GETMNTENT' => 1,
++                        'AC_TYPE_MODE_T' => 1,
++                        'AC_FUNC_STRTOD' => 1,
++                        'AC_CHECK_HEADERS' => 1,
++                        'AC_FUNC_STRNLEN' => 1,
++                        'm4_sinclude' => 1,
++                        'AC_PROG_CXX' => 1,
++                        'AC_PATH_X' => 1,
++                        'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1,
++                        'AC_PROG_AWK' => 1,
++                        '_m4_warn' => 1,
++                        'AC_HEADER_STDC' => 1,
++                        'AC_HEADER_MAJOR' => 1,
++                        'AC_FUNC_ERROR_AT_LINE' => 1,
++                        'AC_PROG_GCC_TRADITIONAL' => 1,
++                        'AC_LIBSOURCE' => 1,
++                        'AC_FUNC_MBRTOWC' => 1,
++                        'AC_STRUCT_ST_BLOCKS' => 1,
++                        'AC_TYPE_SIGNAL' => 1,
++                        'AC_TYPE_UID_T' => 1,
++                        'AC_PROG_MAKE_SET' => 1,
++                        'AC_CONFIG_AUX_DIR' => 1,
++                        'm4_pattern_allow' => 1,
++                        'sinclude' => 1,
++                        'AC_DEFINE_TRACE_LITERAL' => 1,
++                        'AC_FUNC_STRERROR_R' => 1,
++                        'AC_PROG_CC' => 1,
++                        'AC_DECL_SYS_SIGLIST' => 1,
++                        'AC_FUNC_FORK' => 1,
++                        'AC_FUNC_STRCOLL' => 1,
++                        'AC_FUNC_VPRINTF' => 1,
++                        'AC_PROG_YACC' => 1,
++                        'AC_INIT' => 1,
++                        'AC_STRUCT_TIMEZONE' => 1,
++                        'AC_FUNC_CHOWN' => 1,
++                        'AC_SUBST' => 1,
++                        'AC_FUNC_ALLOCA' => 1,
++                        'AC_CANONICAL_HOST' => 1,
++                        'AC_FUNC_GETPGRP' => 1,
++                        'AC_PROG_RANLIB' => 1,
++                        'AM_INIT_AUTOMAKE' => 1,
++                        'AC_FUNC_SETPGRP' => 1,
++                        'AC_CONFIG_SUBDIRS' => 1,
++                        'AC_FUNC_MMAP' => 1,
++                        'AC_FUNC_REALLOC' => 1,
++                        'AC_TYPE_SIZE_T' => 1,
++                        'AC_CONFIG_LINKS' => 1,
++                        'AC_CHECK_TYPES' => 1,
++                        'AC_CHECK_MEMBERS' => 1,
++                        'AM_MAINTAINER_MODE' => 1,
++                        'AC_FUNC_UTIME_NULL' => 1,
++                        'AC_FUNC_SELECT_ARGTYPES' => 1,
++                        'AC_HEADER_STAT' => 1,
++                        'AC_FUNC_STRFTIME' => 1,
++                        'AC_PROG_CPP' => 1,
++                        'AC_C_INLINE' => 1,
++                        'AC_PROG_LEX' => 1,
++                        'AC_C_CONST' => 1,
++                        'AC_TYPE_PID_T' => 1,
++                        'AM_ENABLE_MULTILIB' => 1,
++                        'AC_CONFIG_FILES' => 1,
++                        'include' => 1,
++                        'AC_FUNC_SETVBUF_REVERSED' => 1,
++                        'AC_PROG_INSTALL' => 1,
++                        'AM_GNU_GETTEXT' => 1,
++                        'AC_CHECK_LIB' => 1,
++                        'AC_FUNC_OBSTACK' => 1,
++                        'AC_FUNC_MALLOC' => 1,
++                        'AC_FUNC_GETGROUPS' => 1,
++                        'AC_FUNC_GETLOADAVG' => 1,
++                        'AH_OUTPUT' => 1,
++                        'AC_FUNC_FSEEKO' => 1,
++                        'AM_PROG_CC_C_O' => 1,
++                        'AC_FUNC_MKTIME' => 1,
++                        'AC_CANONICAL_SYSTEM' => 1,
++                        'AM_CONDITIONAL' => 1,
++                        'AC_CONFIG_HEADERS' => 1,
++                        'AC_HEADER_SYS_WAIT' => 1,
++                        'AC_PROG_LN_S' => 1,
++                        'AC_FUNC_MEMCMP' => 1,
++                        'm4_include' => 1,
++                        'AC_HEADER_DIRENT' => 1,
++                        'AC_CHECK_FUNCS' => 1
++                      }
++                    ], 'Autom4te::Request' )
++           );
++
+diff -Naur idl4-1.0.2/autom4te.cache/traces.0 idl4/autom4te.cache/traces.0
+--- idl4-1.0.2/autom4te.cache/traces.0 1970-01-01 01:00:00.000000000 +0100
++++ idl4/autom4te.cache/traces.0       2005-07-10 08:06:23.544157496 +0200
+@@ -0,0 +1,298 @@
++m4trace:aclocal.m4:43: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
++m4trace:configure.in:3: -1- AC_INIT([src/base/main.cc])
++m4trace:configure.in:3: -1- m4_pattern_forbid([^_?A[CHUM]_])
++m4trace:configure.in:3: -1- m4_pattern_forbid([_AC_])
++m4trace:configure.in:3: -1- m4_pattern_forbid([^LIBOBJS$], [do not use 
LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
++m4trace:configure.in:3: -1- m4_pattern_allow([^AS_FLAGS$])
++m4trace:configure.in:3: -1- m4_pattern_forbid([^_?m4_])
++m4trace:configure.in:3: -1- m4_pattern_forbid([^dnl$])
++m4trace:configure.in:3: -1- m4_pattern_forbid([^_?AS_])
++m4trace:configure.in:3: -1- AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}])
++m4trace:configure.in:3: -1- AC_SUBST([PATH_SEPARATOR])
++m4trace:configure.in:3: -1- AC_SUBST([PACKAGE_NAME], 
[m4_ifdef([AC_PACKAGE_NAME],      ['AC_PACKAGE_NAME'])])
++m4trace:configure.in:3: -1- AC_SUBST([PACKAGE_TARNAME], 
[m4_ifdef([AC_PACKAGE_TARNAME],   ['AC_PACKAGE_TARNAME'])])
++m4trace:configure.in:3: -1- AC_SUBST([PACKAGE_VERSION], 
[m4_ifdef([AC_PACKAGE_VERSION],   ['AC_PACKAGE_VERSION'])])
++m4trace:configure.in:3: -1- AC_SUBST([PACKAGE_STRING], 
[m4_ifdef([AC_PACKAGE_STRING],    ['AC_PACKAGE_STRING'])])
++m4trace:configure.in:3: -1- AC_SUBST([PACKAGE_BUGREPORT], 
[m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
++m4trace:configure.in:3: -1- AC_SUBST([exec_prefix], [NONE])
++m4trace:configure.in:3: -1- AC_SUBST([prefix], [NONE])
++m4trace:configure.in:3: -1- AC_SUBST([program_transform_name], [s,x,x,])
++m4trace:configure.in:3: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
++m4trace:configure.in:3: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
++m4trace:configure.in:3: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
++m4trace:configure.in:3: -1- AC_SUBST([datadir], ['${prefix}/share'])
++m4trace:configure.in:3: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
++m4trace:configure.in:3: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
++m4trace:configure.in:3: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
++m4trace:configure.in:3: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
++m4trace:configure.in:3: -1- AC_SUBST([includedir], ['${prefix}/include'])
++m4trace:configure.in:3: -1- AC_SUBST([oldincludedir], ['/usr/include'])
++m4trace:configure.in:3: -1- AC_SUBST([infodir], ['${prefix}/info'])
++m4trace:configure.in:3: -1- AC_SUBST([mandir], ['${prefix}/man'])
++m4trace:configure.in:3: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
++m4trace:configure.in:3: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full 
name of this package. */
++#undef PACKAGE_NAME])
++m4trace:configure.in:3: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
++m4trace:configure.in:3: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the 
one symbol short name of this package. */
++#undef PACKAGE_TARNAME])
++m4trace:configure.in:3: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
++m4trace:configure.in:3: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the 
version of this package. */
++#undef PACKAGE_VERSION])
++m4trace:configure.in:3: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
++m4trace:configure.in:3: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the 
full name and version of this package. */
++#undef PACKAGE_STRING])
++m4trace:configure.in:3: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
++m4trace:configure.in:3: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the 
address where bug reports for this package should be sent. */
++#undef PACKAGE_BUGREPORT])
++m4trace:configure.in:3: -1- AC_SUBST([build_alias])
++m4trace:configure.in:3: -1- AC_SUBST([host_alias])
++m4trace:configure.in:3: -1- AC_SUBST([target_alias])
++m4trace:configure.in:3: -1- AC_SUBST([DEFS])
++m4trace:configure.in:3: -1- AC_SUBST([ECHO_C])
++m4trace:configure.in:3: -1- AC_SUBST([ECHO_N])
++m4trace:configure.in:3: -1- AC_SUBST([ECHO_T])
++m4trace:configure.in:3: -1- AC_SUBST([LIBS])
++m4trace:configure.in:5: -1- AM_INIT_AUTOMAKE([idl4], [1.0.2])
++m4trace:configure.in:5: -1- AM_AUTOMAKE_VERSION([1.7.9])
++m4trace:configure.in:5: -1- AC_PROG_INSTALL
++m4trace:configure.in:5: -1- AC_SUBST([INSTALL_PROGRAM])
++m4trace:configure.in:5: -1- AC_SUBST([INSTALL_SCRIPT])
++m4trace:configure.in:5: -1- AC_SUBST([INSTALL_DATA])
++m4trace:configure.in:5: -1- AC_SUBST([CYGPATH_W])
++m4trace:configure.in:5: -1- AC_SUBST([PACKAGE], [idl4])
++m4trace:configure.in:5: -1- AC_SUBST([VERSION], [1.0.2])
++m4trace:configure.in:5: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE])
++m4trace:configure.in:5: -1- AH_OUTPUT([PACKAGE], [/* Name of package */
++#undef PACKAGE])
++m4trace:configure.in:5: -1- AC_DEFINE_TRACE_LITERAL([VERSION])
++m4trace:configure.in:5: -1- AH_OUTPUT([VERSION], [/* Version number of 
package */
++#undef VERSION])
++m4trace:configure.in:5: -1- AC_SUBST([ACLOCAL])
++m4trace:configure.in:5: -1- AC_SUBST([AUTOCONF])
++m4trace:configure.in:5: -1- AC_SUBST([AUTOMAKE])
++m4trace:configure.in:5: -1- AC_SUBST([AUTOHEADER])
++m4trace:configure.in:5: -1- AC_SUBST([MAKEINFO])
++m4trace:configure.in:5: -1- AC_SUBST([AMTAR])
++m4trace:configure.in:5: -1- AC_SUBST([install_sh])
++m4trace:configure.in:5: -1- AC_SUBST([STRIP])
++m4trace:configure.in:5: -1- AC_SUBST([ac_ct_STRIP])
++m4trace:configure.in:5: -1- AC_SUBST([INSTALL_STRIP_PROGRAM])
++m4trace:configure.in:5: -1- AC_PROG_AWK
++m4trace:configure.in:5: -1- AC_SUBST([AWK])
++m4trace:configure.in:5: -1- AC_PROG_MAKE_SET
++m4trace:configure.in:5: -1- AC_SUBST([SET_MAKE])
++m4trace:configure.in:5: -1- AC_SUBST([am__leading_dot])
++m4trace:configure.in:6: -1- _m4_warn([obsolete], [The macro 
`AM_CONFIG_HEADER' is obsolete.
++You should run autoupdate.], [aclocal.m4:860: AM_CONFIG_HEADER is expanded 
from...
++configure.in:6: the top level])
++m4trace:configure.in:6: -1- AC_CONFIG_HEADERS([config.h])
++m4trace:configure.in:9: -1- AC_PROG_CC
++m4trace:configure.in:9: -1- AC_SUBST([CC])
++m4trace:configure.in:9: -1- AC_SUBST([CFLAGS])
++m4trace:configure.in:9: -1- AC_SUBST([LDFLAGS])
++m4trace:configure.in:9: -1- AC_SUBST([CPPFLAGS])
++m4trace:configure.in:9: -1- AC_SUBST([CC])
++m4trace:configure.in:9: -1- AC_SUBST([ac_ct_CC])
++m4trace:configure.in:9: -1- AC_SUBST([CC])
++m4trace:configure.in:9: -1- AC_SUBST([ac_ct_CC])
++m4trace:configure.in:9: -1- AC_SUBST([CC])
++m4trace:configure.in:9: -1- AC_SUBST([CC])
++m4trace:configure.in:9: -1- AC_SUBST([ac_ct_CC])
++m4trace:configure.in:9: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
++m4trace:configure.in:9: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
++m4trace:configure.in:9: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
++m4trace:configure.in:9: -1- AC_SUBST([am__include])
++m4trace:configure.in:9: -1- AC_SUBST([am__quote])
++m4trace:configure.in:9: -1- AM_CONDITIONAL([AMDEP], [test 
"x$enable_dependency_tracking" != xno])
++m4trace:configure.in:9: -1- AC_SUBST([AMDEP_TRUE])
++m4trace:configure.in:9: -1- AC_SUBST([AMDEP_FALSE])
++m4trace:configure.in:9: -1- AC_SUBST([AMDEPBACKSLASH])
++m4trace:configure.in:9: -1- AC_SUBST([CCDEPMODE], 
[depmode=$am_cv_CC_dependencies_compiler_type])
++m4trace:configure.in:9: -1- AM_CONDITIONAL([am__fastdepCC], [
++  test "x$enable_dependency_tracking" != xno \
++  && test "$am_cv_CC_dependencies_compiler_type" = gcc3])
++m4trace:configure.in:9: -1- AC_SUBST([am__fastdepCC_TRUE])
++m4trace:configure.in:9: -1- AC_SUBST([am__fastdepCC_FALSE])
++m4trace:configure.in:10: -1- AC_PROG_CXX
++m4trace:configure.in:10: -1- AC_SUBST([CXX])
++m4trace:configure.in:10: -1- AC_SUBST([CXXFLAGS])
++m4trace:configure.in:10: -1- AC_SUBST([LDFLAGS])
++m4trace:configure.in:10: -1- AC_SUBST([CPPFLAGS])
++m4trace:configure.in:10: -1- AC_SUBST([CXX])
++m4trace:configure.in:10: -1- AC_SUBST([ac_ct_CXX])
++m4trace:configure.in:10: -1- AC_SUBST([CXXDEPMODE], 
[depmode=$am_cv_CXX_dependencies_compiler_type])
++m4trace:configure.in:10: -1- AM_CONDITIONAL([am__fastdepCXX], [
++  test "x$enable_dependency_tracking" != xno \
++  && test "$am_cv_CXX_dependencies_compiler_type" = gcc3])
++m4trace:configure.in:10: -1- AC_SUBST([am__fastdepCXX_TRUE])
++m4trace:configure.in:10: -1- AC_SUBST([am__fastdepCXX_FALSE])
++m4trace:configure.in:11: -1- AC_SUBST([CCAS])
++m4trace:configure.in:11: -1- AC_SUBST([CCASFLAGS])
++m4trace:configure.in:12: -1- AC_PROG_RANLIB
++m4trace:configure.in:12: -1- AC_SUBST([RANLIB])
++m4trace:configure.in:12: -1- AC_SUBST([ac_ct_RANLIB])
++m4trace:configure.in:13: -1- AC_PROG_LEX
++m4trace:configure.in:13: -1- AC_SUBST([LEX])
++m4trace:configure.in:13: -1- AC_CHECK_LIB([fl], [yywrap], [LEXLIB="-lfl"], 
[AC_CHECK_LIB(l, yywrap, LEXLIB="-ll")])
++m4trace:configure.in:13: -1- AC_CHECK_LIB([l], [yywrap], [LEXLIB="-ll"])
++m4trace:configure.in:13: -1- AC_SUBST([LEXLIB])
++m4trace:configure.in:13: -1- AC_SUBST([LEX_OUTPUT_ROOT], 
[$ac_cv_prog_lex_root])
++m4trace:configure.in:13: -1- AC_DEFINE_TRACE_LITERAL([YYTEXT_POINTER])
++m4trace:configure.in:13: -1- AH_OUTPUT([YYTEXT_POINTER], [/* Define to 1 if 
`lex\' declares `yytext\' as a `char *\' by default, not a
++   `char[]\'. */
++#undef YYTEXT_POINTER])
++m4trace:configure.in:14: -1- AC_PROG_YACC
++m4trace:configure.in:14: -1- AC_SUBST([YACC])
++m4trace:configure.in:15: -1- AC_PROG_LN_S
++m4trace:configure.in:15: -1- AC_SUBST([LN_S], [$as_ln_s])
++m4trace:configure.in:16: -1- AC_SUBST([LATEX])
++m4trace:configure.in:17: -1- AC_SUBST([BIBTEX])
++m4trace:configure.in:18: -1- AC_SUBST([DVIPS])
++m4trace:configure.in:19: -1- AC_SUBST([DVIPDF])
++m4trace:configure.in:21: -1- AM_CONDITIONAL([HAS_LATEX], [test "x$LATEX" != 
"x" -a "x$BIBTEX" != "x"])
++m4trace:configure.in:21: -1- AC_SUBST([HAS_LATEX_TRUE])
++m4trace:configure.in:21: -1- AC_SUBST([HAS_LATEX_FALSE])
++m4trace:configure.in:22: -1- AM_CONDITIONAL([HAS_DVIPS], [test "x$DVIPS" != 
"x"])
++m4trace:configure.in:22: -1- AC_SUBST([HAS_DVIPS_TRUE])
++m4trace:configure.in:22: -1- AC_SUBST([HAS_DVIPS_FALSE])
++m4trace:configure.in:23: -1- AM_CONDITIONAL([HAS_DVIPDF], [test "x$DVIPDF" != 
"x"])
++m4trace:configure.in:23: -1- AC_SUBST([HAS_DVIPDF_TRUE])
++m4trace:configure.in:23: -1- AC_SUBST([HAS_DVIPDF_FALSE])
++m4trace:configure.in:74: -1- AM_CONDITIONAL([WITH_TESTSUITE], [test 
"x$WITH_HAZELNUT" != "x" ||
++              test "x$WITH_PISTACHIO_IA32" != "x" ||
++              test "x$WITH_PISTACHIO_IA64" != "x" ||
++              test "x$WITH_PISTACHIO_ARM" != "x" ||
++              test "x$WITH_PISTACHIO_MIPS64" != "x" ||
++              test "x$WITH_PISTACHIO_ALPHA" != "x" ||
++              test "x$WITH_PISTACHIO_POWERPC" != "x" ||
++              test "x$WITH_FIASCO" != "x"])
++m4trace:configure.in:74: -1- AC_SUBST([WITH_TESTSUITE_TRUE])
++m4trace:configure.in:74: -1- AC_SUBST([WITH_TESTSUITE_FALSE])
++m4trace:configure.in:75: -1- AM_CONDITIONAL([WITH_HAZELNUT], [test 
x$WITH_HAZELNUT = xyes])
++m4trace:configure.in:75: -1- AC_SUBST([WITH_HAZELNUT_TRUE])
++m4trace:configure.in:75: -1- AC_SUBST([WITH_HAZELNUT_FALSE])
++m4trace:configure.in:76: -1- AM_CONDITIONAL([WITH_EXAMPLES], [test 
x$WITH_EXAMPLES = xyes])
++m4trace:configure.in:76: -1- AC_SUBST([WITH_EXAMPLES_TRUE])
++m4trace:configure.in:76: -1- AC_SUBST([WITH_EXAMPLES_FALSE])
++m4trace:configure.in:77: -1- AM_CONDITIONAL([WITH_PISTACHIO_IA32], [test 
x$WITH_PISTACHIO_IA32 = xyes])
++m4trace:configure.in:77: -1- AC_SUBST([WITH_PISTACHIO_IA32_TRUE])
++m4trace:configure.in:77: -1- AC_SUBST([WITH_PISTACHIO_IA32_FALSE])
++m4trace:configure.in:78: -1- AM_CONDITIONAL([WITH_PISTACHIO_IA64], [test 
x$WITH_PISTACHIO_IA64   = xyes])
++m4trace:configure.in:78: -1- AC_SUBST([WITH_PISTACHIO_IA64_TRUE])
++m4trace:configure.in:78: -1- AC_SUBST([WITH_PISTACHIO_IA64_FALSE])
++m4trace:configure.in:79: -1- AM_CONDITIONAL([WITH_PISTACHIO_ARM], [test 
x$WITH_PISTACHIO_ARM = xyes])
++m4trace:configure.in:79: -1- AC_SUBST([WITH_PISTACHIO_ARM_TRUE])
++m4trace:configure.in:79: -1- AC_SUBST([WITH_PISTACHIO_ARM_FALSE])
++m4trace:configure.in:80: -1- AM_CONDITIONAL([WITH_PISTACHIO_MIPS64], [test 
x$WITH_PISTACHIO_MIPS64 = xyes])
++m4trace:configure.in:80: -1- AC_SUBST([WITH_PISTACHIO_MIPS64_TRUE])
++m4trace:configure.in:80: -1- AC_SUBST([WITH_PISTACHIO_MIPS64_FALSE])
++m4trace:configure.in:81: -1- AM_CONDITIONAL([WITH_PISTACHIO_ALPHA], [test 
x$WITH_PISTACHIO_ALPHA = xyes])
++m4trace:configure.in:81: -1- AC_SUBST([WITH_PISTACHIO_ALPHA_TRUE])
++m4trace:configure.in:81: -1- AC_SUBST([WITH_PISTACHIO_ALPHA_FALSE])
++m4trace:configure.in:82: -1- AM_CONDITIONAL([WITH_PISTACHIO_POWERPC], [test 
x$WITH_PISTACHIO_POWERPC = xyes])
++m4trace:configure.in:82: -1- AC_SUBST([WITH_PISTACHIO_POWERPC_TRUE])
++m4trace:configure.in:82: -1- AC_SUBST([WITH_PISTACHIO_POWERPC_FALSE])
++m4trace:configure.in:83: -1- AM_CONDITIONAL([WITH_FIASCO], [test 
x$WITH_FIASCO = xyes])
++m4trace:configure.in:83: -1- AC_SUBST([WITH_FIASCO_TRUE])
++m4trace:configure.in:83: -1- AC_SUBST([WITH_FIASCO_FALSE])
++m4trace:configure.in:85: -1- AC_SUBST([TESTSUITE_DIR])
++m4trace:configure.in:86: -1- AC_SUBST([HAZELNUT_DIR])
++m4trace:configure.in:87: -1- AC_SUBST([PISTACHIO_IA32_DIR])
++m4trace:configure.in:88: -1- AC_SUBST([PISTACHIO_IA64_DIR])
++m4trace:configure.in:89: -1- AC_SUBST([PISTACHIO_ARM_DIR])
++m4trace:configure.in:90: -1- AC_SUBST([PISTACHIO_MIPS64_DIR])
++m4trace:configure.in:91: -1- AC_SUBST([PISTACHIO_ALPHA_DIR])
++m4trace:configure.in:92: -1- AC_SUBST([PISTACHIO_POWERPC_DIR])
++m4trace:configure.in:93: -1- AC_SUBST([FIASCO_DIR])
++m4trace:configure.in:120: -1- AM_CONDITIONAL([WITH_TOOLCHAIN_IA32], [test 
x$WITH_TOOLCHAIN_IA32 = xyes])
++m4trace:configure.in:120: -1- AC_SUBST([WITH_TOOLCHAIN_IA32_TRUE])
++m4trace:configure.in:120: -1- AC_SUBST([WITH_TOOLCHAIN_IA32_FALSE])
++m4trace:configure.in:121: -1- AM_CONDITIONAL([WITH_TOOLCHAIN_IA64], [test 
x$WITH_TOOLCHAIN_IA64 = xyes])
++m4trace:configure.in:121: -1- AC_SUBST([WITH_TOOLCHAIN_IA64_TRUE])
++m4trace:configure.in:121: -1- AC_SUBST([WITH_TOOLCHAIN_IA64_FALSE])
++m4trace:configure.in:122: -1- AM_CONDITIONAL([WITH_TOOLCHAIN_ARM], [test 
x$WITH_TOOLCHAIN_ARM = xyes])
++m4trace:configure.in:122: -1- AC_SUBST([WITH_TOOLCHAIN_ARM_TRUE])
++m4trace:configure.in:122: -1- AC_SUBST([WITH_TOOLCHAIN_ARM_FALSE])
++m4trace:configure.in:123: -1- AM_CONDITIONAL([WITH_TOOLCHAIN_ALPHA], [test 
x$WITH_TOOLCHAIN_ALPHA = xyes])
++m4trace:configure.in:123: -1- AC_SUBST([WITH_TOOLCHAIN_ALPHA_TRUE])
++m4trace:configure.in:123: -1- AC_SUBST([WITH_TOOLCHAIN_ALPHA_FALSE])
++m4trace:configure.in:124: -1- AM_CONDITIONAL([WITH_TOOLCHAIN_MIPS64], [test 
x$WITH_TOOLCHAIN_MIPS64 = xyes])
++m4trace:configure.in:124: -1- AC_SUBST([WITH_TOOLCHAIN_MIPS64_TRUE])
++m4trace:configure.in:124: -1- AC_SUBST([WITH_TOOLCHAIN_MIPS64_FALSE])
++m4trace:configure.in:125: -1- AM_CONDITIONAL([WITH_TOOLCHAIN_POWERPC], [test 
x$WITH_TOOLCHAIN_POWERPC = xyes])
++m4trace:configure.in:125: -1- AC_SUBST([WITH_TOOLCHAIN_POWERPC_TRUE])
++m4trace:configure.in:125: -1- AC_SUBST([WITH_TOOLCHAIN_POWERPC_FALSE])
++m4trace:configure.in:126: -1- AC_SUBST([IA32_PREFIX])
++m4trace:configure.in:127: -1- AC_SUBST([IA64_PREFIX])
++m4trace:configure.in:128: -1- AC_SUBST([ARM_PREFIX])
++m4trace:configure.in:129: -1- AC_SUBST([ALPHA_PREFIX])
++m4trace:configure.in:130: -1- AC_SUBST([MIPS64_PREFIX])
++m4trace:configure.in:131: -1- AC_SUBST([POWERPC_PREFIX])
++m4trace:configure.in:134: -1- AC_CHECK_FUNCS([getopt_long])
++m4trace:configure.in:134: -1- AH_OUTPUT([HAVE_GETOPT_LONG], [/* Define to 1 
if you have the `getopt_long\' function. */
++#undef HAVE_GETOPT_LONG])
++m4trace:configure.in:135: -1- AM_CONDITIONAL([NEED_GETOPT_LONG], [test 
x$ac_cv_func_getopt_long = xno])
++m4trace:configure.in:135: -1- AC_SUBST([NEED_GETOPT_LONG_TRUE])
++m4trace:configure.in:135: -1- AC_SUBST([NEED_GETOPT_LONG_FALSE])
++m4trace:configure.in:140: -1- AC_SUBST([MAINTAINERCLEANFILES])
++m4trace:configure.in:145: -1- AC_SUBST([CPPFLAGS])
++m4trace:configure.in:205: -1- AC_CONFIG_FILES([idl4-config
++Makefile
++doc/Makefile
++doc/manual/Makefile
++examples/Makefile
++examples/weaver/Makefile
++examples/test/Makefile
++examples/test/idl/Makefile
++examples/test/v2-ia32/Makefile
++examples/test/v2-ia32-generic/Makefile
++examples/test/x0-ia32/Makefile
++examples/test/x0-ia32-generic/Makefile
++examples/test/x0-arm-generic/Makefile
++examples/test/v4-ia32/Makefile
++examples/test/v4-ia32-generic/Makefile
++examples/test/v4-ia32-cs/Makefile
++examples/test/v4-ia64/Makefile
++examples/test/v4-ia64-generic/Makefile
++examples/test/v4-alpha-generic/Makefile
++examples/test/v4-mips64-generic/Makefile
++examples/test/v4-powerpc-generic/Makefile
++src/Makefile
++src/aoi/Makefile
++src/arch/Makefile
++src/arch/v2/Makefile
++src/arch/v2/ia32/Makefile
++src/arch/v4/Makefile
++src/arch/v4/ia32/Makefile
++src/arch/v4/ia64/Makefile
++src/arch/v4_gnu/Makefile
++src/arch/x0/Makefile
++src/arch/x0/ia32/Makefile
++src/base/Makefile
++src/base/lib/Makefile
++src/be/Makefile
++src/be/ops/Makefile
++src/be/types/Makefile
++src/cast/Makefile
++src/fe/Makefile
++src/fe/c++/Makefile
++src/fe/idl/Makefile
++src/fe/lib/Makefile
++src/test/Makefile
++src/test/glue/Makefile
++src/test/glue/v2-ia32/Makefile
++src/test/glue/x0-ia32/Makefile
++src/test/glue/x0-arm/Makefile
++src/test/glue/v4-ia32/Makefile
++src/test/glue/v4-ia64/Makefile
++src/test/glue/v4-alpha/Makefile
++src/test/glue/v4-mips64/Makefile
++src/test/glue/v4-powerpc/Makefile
++src/include/Makefile
++src/include/user/Makefile
++src/include/user/idl4/Makefile
++])
++m4trace:configure.in:205: -1- _m4_warn([obsolete], [AC_OUTPUT should be used 
without arguments.
++You should run autoupdate.], [])
++m4trace:configure.in:205: -1- AC_SUBST([LIB@&address@hidden, [$ac_libobjs])
++m4trace:configure.in:205: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
+diff -Naur idl4-1.0.2/ChangeLog idl4/ChangeLog
+--- idl4-1.0.2/ChangeLog       2002-05-17 14:58:14.000000000 +0200
++++ idl4/ChangeLog     2005-07-12 21:57:06.405950776 +0200
+@@ -0,0 +1,57 @@
++03/07/2005, by Tom Bachmann aka ness <address@hidden>
++  base/version.cc, arch/v4/ia32/ms.cc, cast/cast.cc,
++  be/scope.cc, include/user/idl4/glue/v4-ia32/runtime.h
++    - repaired broken ia32 optimization on V4
++    - changed the order of printing stuff in
++      CASTDeclarator::write (to make gcc understand
++      attributes in function definitions).
++    - changed CBERootScope::buildServerTemplate to
++      add a better default include (more or less bad
++      hack)
++    - changed extern inline directives into always inline,
++      so that it compiles even if there's no optimization
++      enabled
++
++
++09/07/2005, by Tom Bachmann aka ness <address@hidden>
++  lots of files, mostly arch/v4_gnu/* include/arch/v4_gnu,
++  base/main.cc
++    - new virtual functions in base classes, some functiones
++      changed to virtual
++    - some *_gnu classes
++    -> a new interface called V4_GNU for use with the GNU
++       Hurd/L4 and the optional argument
++       -l (SMALL L) to build cap_class stubs
++
++
++10/07/2005, by Tom Bachmann aka ness <address@hidden>
++  base/main.cc
++    - implemented -M and -C to create make compliant
++      dependencies
++      NOTE: I used printf, since I got errors if I included
++      iostream
++
++  lots, e.g. base/main.cc, base/tools.cc, fe/idl/parser.yy,
++  ...
++    - implemented options -T to use the compiler to determine
++      the size of userdefined types. The main problem for me
++      was, that the C/C++ parser reported errors where the
++      compiler couldn't find any. Second, the C/C++ parser will
++      never be perfect, since the standard gives some freedom
++      to the compilers (e.g. padding, non standardized
++      extensions, ...) and because of that it would be extremely
++      much work to emulate all the differences of different gcc
++      branches (who says we only want to support gcc?). But only
++      making (and keeping) the parser standard compliant would be
++      hard. I added new CAoiUserType and CBEUserType classes
++      and extended the visitors to support them. There are also
++      significant extensions for global_t.
++      NOTE: There is still a lot of work needed, e.g. extend
++            parser.yy to accept user defined structs. This
++            (and all my other code, but especially this)
++            has to be tested!!!
++
++12/07/05, by Tom Bachmann aka ness <address@hidden>
++  base/tools.cc
++     Small bug fixed (related to errors while compiling the
++     temporary file resulting in incomplete/no output)
+diff -Naur idl4-1.0.2/CODING_STYLE idl4/CODING_STYLE
+--- idl4-1.0.2/CODING_STYLE    1970-01-01 01:00:00.000000000 +0100
++++ idl4/CODING_STYLE  2005-07-11 20:41:14.094878088 +0200
+@@ -0,0 +1,6 @@
++I mixed up coding style (I didn't use GNU style).
++I'm sorry. I don't want to do that no (to make the
++patch not too big), but a command like
++> find -iname '*.cc'-or -iname '*.h' -exec indent '{}' ';'
++would help, I guess.
++Tom Bachmann
+diff -Naur idl4-1.0.2/configure idl4/configure
+--- idl4-1.0.2/configure       2003-11-03 22:43:12.000000000 +0100
++++ idl4/configure     2005-07-10 08:06:24.037082560 +0200
+@@ -1,9 +1,8 @@
+ #! /bin/sh
+ # Guess values for system-dependent variables and create Makefiles.
+-# Generated by GNU Autoconf 2.57.
++# Generated by GNU Autoconf 2.59.
+ #
+-# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
+-# Free Software Foundation, Inc.
++# Copyright (C) 2003 Free Software Foundation, Inc.
+ # This configure script is free software; the Free Software Foundation
+ # gives unlimited permission to copy, distribute and modify it.
+ ## --------------------- ##
+@@ -20,9 +19,10 @@
+ elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+   set -o posix
+ fi
++DUALCASE=1; export DUALCASE # for MKS sh
+ 
+ # Support unset when possible.
+-if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
++if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+   as_unset=unset
+ else
+   as_unset=false
+@@ -41,7 +41,7 @@
+   LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+   LC_TELEPHONE LC_TIME
+ do
+-  if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then
++  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+     eval $as_var=C; export $as_var
+   else
+     $as_unset $as_var
+@@ -218,16 +218,17 @@
+ if mkdir -p . 2>/dev/null; then
+   as_mkdir_p=:
+ else
++  test -d ./-p && rmdir ./-p
+   as_mkdir_p=false
+ fi
+ 
+ as_executable_p="test -f"
+ 
+ # Sed expression to map a string onto a valid CPP name.
+-as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
++as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+ 
+ # Sed expression to map a string onto a valid variable name.
+-as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
++as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+ 
+ 
+ # IFS
+@@ -271,7 +272,7 @@
+ PACKAGE_BUGREPORT=
+ 
+ ac_unique_file="src/base/main.cc"
+-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME 
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix 
program_transform_name bindir sbindir libexecdir datadir sysconfdir 
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir 
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS 
INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL 
AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP 
INSTALL_STRIP_PROGRAM AWK SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT 
OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH 
CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX 
CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CCAS CCASFLAGS RANLIB 
ac_ct_RANLIB LEX LEXLIB LEX_OUTPUT_ROOT YACC LN_S LATEX BIBTEX DVIPS DVIPDF 
HAS_LATEX_TRUE HAS_LATEX_FALSE HAS_DVIPS_TRUE HAS_DVIPS_FALSE HAS_DVIPDF_TRUE 
HAS_DVIPDF_FALSE WITH_TESTSUITE_TRUE WITH_TESTSUITE_FALSE WITH_HAZELNUT_TRUE 
WITH_HAZELNUT_FALSE WITH_EXAMPLES_TRUE WITH_EXAMPLES_FALSE 
WITH_PISTACHIO_IA32_TRUE WITH_PISTACHIO_IA32_FALSE WITH_PISTACHIO_IA64_TRUE 
WITH_PISTACHIO_IA64_FALSE WITH_PISTACHIO_ARM_TRUE WITH_PISTACHIO_ARM_FALSE 
WITH_PISTACHIO_MIPS64_TRUE WITH_PISTACHIO_MIPS64_FALSE 
WITH_PISTACHIO_ALPHA_TRUE WITH_PISTACHIO_ALPHA_FALSE 
WITH_PISTACHIO_POWERPC_TRUE WITH_PISTACHIO_POWERPC_FALSE WITH_FIASCO_TRUE 
WITH_FIASCO_FALSE TESTSUITE_DIR HAZELNUT_DIR PISTACHIO_IA32_DIR 
PISTACHIO_IA64_DIR PISTACHIO_ARM_DIR PISTACHIO_MIPS64_DIR PISTACHIO_ALPHA_DIR 
PISTACHIO_POWERPC_DIR FIASCO_DIR WITH_TOOLCHAIN_IA32_TRUE 
WITH_TOOLCHAIN_IA32_FALSE WITH_TOOLCHAIN_IA64_TRUE WITH_TOOLCHAIN_IA64_FALSE 
WITH_TOOLCHAIN_ARM_TRUE WITH_TOOLCHAIN_ARM_FALSE WITH_TOOLCHAIN_ALPHA_TRUE 
WITH_TOOLCHAIN_ALPHA_FALSE WITH_TOOLCHAIN_MIPS64_TRUE 
WITH_TOOLCHAIN_MIPS64_FALSE WITH_TOOLCHAIN_POWERPC_TRUE 
WITH_TOOLCHAIN_POWERPC_FALSE IA32_PREFIX IA64_PREFIX ARM_PREFIX ALPHA_PREFIX 
MIPS64_PREFIX POWERPC_PREFIX NEED_GETOPT_LONG_TRUE NEED_GETOPT_LONG_FALSE 
MAINTAINERCLEANFILES LIBOBJS LTLIBOBJS'
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME 
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix 
program_transform_name bindir sbindir libexecdir datadir sysconfdir 
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir 
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS 
INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL 
AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP 
INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot CC CFLAGS LDFLAGS CPPFLAGS 
ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE 
AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS 
ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CCAS CCASFLAGS 
RANLIB ac_ct_RANLIB LEX LEXLIB LEX_OUTPUT_ROOT YACC LN_S LATEX BIBTEX DVIPS 
DVIPDF HAS_LATEX_TRUE HAS_LATEX_FALSE HAS_DVIPS_TRUE HAS_DVIPS_FALSE 
HAS_DVIPDF_TRUE HAS_DVIPDF_FALSE WITH_TESTSUITE_TRUE WITH_TESTSUITE_FALSE 
WITH_HAZELNUT_TRUE WITH_HAZELNUT_FALSE WITH_EXAMPLES_TRUE WITH_EXAMPLES_FALSE 
WITH_PISTACHIO_IA32_TRUE WITH_PISTACHIO_IA32_FALSE WITH_PISTACHIO_IA64_TRUE 
WITH_PISTACHIO_IA64_FALSE WITH_PISTACHIO_ARM_TRUE WITH_PISTACHIO_ARM_FALSE 
WITH_PISTACHIO_MIPS64_TRUE WITH_PISTACHIO_MIPS64_FALSE 
WITH_PISTACHIO_ALPHA_TRUE WITH_PISTACHIO_ALPHA_FALSE 
WITH_PISTACHIO_POWERPC_TRUE WITH_PISTACHIO_POWERPC_FALSE WITH_FIASCO_TRUE 
WITH_FIASCO_FALSE TESTSUITE_DIR HAZELNUT_DIR PISTACHIO_IA32_DIR 
PISTACHIO_IA64_DIR PISTACHIO_ARM_DIR PISTACHIO_MIPS64_DIR PISTACHIO_ALPHA_DIR 
PISTACHIO_POWERPC_DIR FIASCO_DIR WITH_TOOLCHAIN_IA32_TRUE 
WITH_TOOLCHAIN_IA32_FALSE WITH_TOOLCHAIN_IA64_TRUE WITH_TOOLCHAIN_IA64_FALSE 
WITH_TOOLCHAIN_ARM_TRUE WITH_TOOLCHAIN_ARM_FALSE WITH_TOOLCHAIN_ALPHA_TRUE 
WITH_TOOLCHAIN_ALPHA_FALSE WITH_TOOLCHAIN_MIPS64_TRUE 
WITH_TOOLCHAIN_MIPS64_FALSE WITH_TOOLCHAIN_POWERPC_TRUE 
WITH_TOOLCHAIN_POWERPC_FALSE IA32_PREFIX IA64_PREFIX ARM_PREFIX ALPHA_PREFIX 
MIPS64_PREFIX POWERPC_PREFIX NEED_GETOPT_LONG_TRUE NEED_GETOPT_LONG_FALSE 
MAINTAINERCLEANFILES LIBOBJS LTLIBOBJS'
+ ac_subst_files=''
+ 
+ # Initialize some variables set by options.
+@@ -630,7 +631,7 @@
+ 
+ # Be sure to have absolute paths.
+ for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
+-              localstatedir libdir includedir oldincludedir infodir mandir
++            localstatedir libdir includedir oldincludedir infodir mandir
+ do
+   eval ac_val=$`echo $ac_var`
+   case $ac_val in
+@@ -670,10 +671,10 @@
+   # Try the directory containing this script, then its parent.
+   ac_confdir=`(dirname "$0") 2>/dev/null ||
+ $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$0" : 'X\(//\)[^/]' \| \
+-         X"$0" : 'X\(//\)$' \| \
+-         X"$0" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$0" : 'X\(//\)[^/]' \| \
++       X"$0" : 'X\(//\)$' \| \
++       X"$0" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$0" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+@@ -769,9 +770,9 @@
+   cat <<_ACEOF
+ Installation directories:
+   --prefix=PREFIX         install architecture-independent files in PREFIX
+-                          [$ac_default_prefix]
++                        [$ac_default_prefix]
+   --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+-                          [PREFIX]
++                        [PREFIX]
+ 
+ By default, \`make install' will install all the files in
+ \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
+@@ -880,12 +881,45 @@
+     ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+     ac_top_srcdir=$ac_top_builddir$srcdir ;;
+ esac
+-# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
+-# absolute.
+-ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
+-ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd`
+-ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
+-ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
++
++# Do not use `cd foo && pwd` to compute absolute paths, because
++# the directories may not exist.
++case `pwd` in
++.) ac_abs_builddir="$ac_dir";;
++*)
++  case "$ac_dir" in
++  .) ac_abs_builddir=`pwd`;;
++  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
++  *) ac_abs_builddir=`pwd`/"$ac_dir";;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_builddir=${ac_top_builddir}.;;
++*)
++  case ${ac_top_builddir}. in
++  .) ac_abs_top_builddir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
++  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_srcdir=$ac_srcdir;;
++*)
++  case $ac_srcdir in
++  .) ac_abs_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
++  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_srcdir=$ac_top_srcdir;;
++*)
++  case $ac_top_srcdir in
++  .) ac_abs_top_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
++  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
++  esac;;
++esac
+ 
+     cd $ac_dir
+     # Check for guested configure; otherwise get Cygnus style configure.
+@@ -896,7 +930,7 @@
+       echo
+       $SHELL $ac_srcdir/configure  --help=recursive
+     elif test -f $ac_srcdir/configure.ac ||
+-           test -f $ac_srcdir/configure.in; then
++         test -f $ac_srcdir/configure.in; then
+       echo
+       $ac_configure --help
+     else
+@@ -910,8 +944,7 @@
+ if $ac_init_version; then
+   cat <<\_ACEOF
+ 
+-Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
+-Free Software Foundation, Inc.
++Copyright (C) 2003 Free Software Foundation, Inc.
+ This configure script is free software; the Free Software Foundation
+ gives unlimited permission to copy, distribute and modify it.
+ _ACEOF
+@@ -923,7 +956,7 @@
+ running configure, to aid debugging if configure makes a mistake.
+ 
+ It was created by $as_me, which was
+-generated by GNU Autoconf 2.57.  Invocation command line was
++generated by GNU Autoconf 2.59.  Invocation command line was
+ 
+   $ $0 $@
+ 
+@@ -1000,19 +1033,19 @@
+     2)
+       ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+       if test $ac_must_keep_next = true; then
+-        ac_must_keep_next=false # Got value, back to normal.
++      ac_must_keep_next=false # Got value, back to normal.
+       else
+-        case $ac_arg in
+-          *=* | --config-cache | -C | -disable-* | --disable-* \
+-          | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+-          | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+-          | -with-* | --with-* | -without-* | --without-* | --x)
+-            case "$ac_configure_args0 " in
+-              "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+-            esac
+-            ;;
+-          -* ) ac_must_keep_next=true ;;
+-        esac
++      case $ac_arg in
++        *=* | --config-cache | -C | -disable-* | --disable-* \
++        | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
++        | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
++        | -with-* | --with-* | -without-* | --without-* | --x)
++          case "$ac_configure_args0 " in
++            "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
++          esac
++          ;;
++        -* ) ac_must_keep_next=true ;;
++      esac
+       fi
+       ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
+       # Get rid of the leading space.
+@@ -1046,12 +1079,12 @@
+     case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
+     *ac_space=\ *)
+       sed -n \
+-        "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
+-        
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
++      "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
++        
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
+       ;;
+     *)
+       sed -n \
+-        "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
++      "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+       ;;
+     esac;
+ }
+@@ -1080,7 +1113,7 @@
+       for ac_var in $ac_subst_files
+       do
+       eval ac_val=$`echo $ac_var`
+-        echo "$ac_var='"'"'$ac_val'"'"'"
++      echo "$ac_var='"'"'$ac_val'"'"'"
+       done | sort
+       echo
+     fi
+@@ -1099,7 +1132,7 @@
+       echo "$as_me: caught signal $ac_signal"
+     echo "$as_me: exit $exit_status"
+   } >&5
+-  rm -f core core.* *.core &&
++  rm -f core *.core &&
+   rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
+     exit $exit_status
+      ' 0
+@@ -1179,7 +1212,7 @@
+ # value.
+ ac_cache_corrupted=false
+ for ac_var in `(set) 2>&1 |
+-               sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
++             sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+   eval ac_old_set=\$ac_cv_env_${ac_var}_set
+   eval ac_new_set=\$ac_env_${ac_var}_set
+   eval ac_old_val="\$ac_cv_env_${ac_var}_value"
+@@ -1196,13 +1229,13 @@
+     ,);;
+     *)
+       if test "x$ac_old_val" != "x$ac_new_val"; then
+-        { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the 
previous run:" >&5
++      { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the 
previous run:" >&5
+ echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+-        { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
++      { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
+ echo "$as_me:   former value:  $ac_old_val" >&2;}
+-        { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
++      { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
+ echo "$as_me:   current value: $ac_new_val" >&2;}
+-        ac_cache_corrupted=:
++      ac_cache_corrupted=:
+       fi;;
+   esac
+   # Pass precious variables to config.status.
+@@ -1288,6 +1321,7 @@
+ # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+ # AFS /usr/afsws/bin/install, which mishandles nonexistent args
+ # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
++# OS/2's system install, which has a completely different semantic
+ # ./install, which can be erroneously created by make from ./install.sh.
+ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+ echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+@@ -1304,6 +1338,7 @@
+ case $as_dir/ in
+   ./ | .// | /cC/* | \
+   /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
++  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+   /usr/ucb/* ) ;;
+   *)
+     # OSF1 and SCO ODT 3.0 have their own names for install.
+@@ -1311,20 +1346,20 @@
+     # by default.
+     for ac_prog in ginstall scoinst install; do
+       for ac_exec_ext in '' $ac_executable_extensions; do
+-        if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+-          if test $ac_prog = install &&
+-            grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+-            # AIX install.  It has an incompatible calling convention.
+-            :
+-          elif test $ac_prog = install &&
+-            grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+-            # program-specific install script used by HP pwplus--don't use.
+-            :
+-          else
+-            ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+-            break 3
+-          fi
+-        fi
++      if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
++        if test $ac_prog = install &&
++          grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
++          # AIX install.  It has an incompatible calling convention.
++          :
++        elif test $ac_prog = install &&
++          grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
++          # program-specific install script used by HP pwplus--don't use.
++          :
++        else
++          ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
++          break 3
++        fi
++      fi
+       done
+     done
+     ;;
+@@ -1468,7 +1503,7 @@
+ 
+ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+ echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
+-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
++set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
+ if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+@@ -1495,6 +1530,15 @@
+   SET_MAKE="MAKE=${MAKE-make}"
+ fi
+ 
++rm -rf .tst 2>/dev/null
++mkdir .tst 2>/dev/null
++if test -d .tst; then
++  am__leading_dot=.
++else
++  am__leading_dot=_
++fi
++rmdir .tst 2>/dev/null
++
+  # test to see if srcdir already configured
+ if test "`cd $srcdir && pwd`" != "`pwd`" &&
+    test -f $srcdir/config.status; then
+@@ -1980,7 +2024,6 @@
+   (exit $ac_status); }
+ 
+ cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2000,8 +2043,8 @@
+ # Try to create an executable without -o first, disregard a.out.
+ # It will help us diagnose broken compilers, and finding out an intuition
+ # of exeext.
+-echo "$as_me:$LINENO: checking for C compiler default output" >&5
+-echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
++echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
++echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
+ ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+ if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
+   (eval $ac_link_default) 2>&5
+@@ -2021,23 +2064,23 @@
+   test -f "$ac_file" || continue
+   case $ac_file in
+     *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj )
+-        ;;
++      ;;
+     conftest.$ac_ext )
+-        # This is the source file.
+-        ;;
++      # This is the source file.
++      ;;
+     [ab].out )
+-        # We found the default executable, but exeext='' is most
+-        # certainly right.
+-        break;;
++      # We found the default executable, but exeext='' is most
++      # certainly right.
++      break;;
+     *.* )
+-        ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+-        # FIXME: I believe we export ac_cv_exeext for Libtool,
+-        # but it would be cool to find out if it's true.  Does anybody
+-        # maintain Libtool? --akim.
+-        export ac_cv_exeext
+-        break;;
++      ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
++      # FIXME: I believe we export ac_cv_exeext for Libtool,
++      # but it would be cool to find out if it's true.  Does anybody
++      # maintain Libtool? --akim.
++      export ac_cv_exeext
++      break;;
+     * )
+-        break;;
++      break;;
+   esac
+ done
+ else
+@@ -2111,8 +2154,8 @@
+   case $ac_file in
+     *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | 
*.obj ) ;;
+     *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+-          export ac_cv_exeext
+-          break;;
++        export ac_cv_exeext
++        break;;
+     * ) break;;
+   esac
+ done
+@@ -2137,7 +2180,6 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2188,7 +2230,6 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2208,11 +2249,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2225,7 +2276,7 @@
+ 
+ ac_compiler_gnu=no
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_cv_c_compiler_gnu=$ac_compiler_gnu
+ 
+ fi
+@@ -2241,7 +2292,6 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2258,11 +2308,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2275,7 +2335,7 @@
+ 
+ ac_cv_prog_cc_g=no
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+ echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+@@ -2302,7 +2362,6 @@
+   ac_cv_prog_cc_stdc=no
+ ac_save_CC=$CC
+ cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2330,6 +2389,16 @@
+   va_end (v);
+   return s;
+ }
++
++/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
++   function prototypes and stuff, but not '\xHH' hex character constants.
++   These don't provoke an error unfortunately, instead are silently treated
++   as 'x'.  The following induces an error, until -std1 is added to get
++   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
++   array size at least.  It's necessary to write '\x00'==0 to get something
++   that's true only with -std1.  */
++int osf4_cc_array ['\x00' == 0 ? 1 : -1];
++
+ int test (int i, double x);
+ struct s1 {int (*f) (int a);};
+ struct s2 {int (*f) (double a);};
+@@ -2356,11 +2425,21 @@
+   CC="$ac_save_CC $ac_arg"
+   rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2373,7 +2452,7 @@
+ sed 's/^/| /' conftest.$ac_ext >&5
+ 
+ fi
+-rm -f conftest.$ac_objext
++rm -f conftest.err conftest.$ac_objext
+ done
+ rm -f conftest.$ac_ext conftest.$ac_objext
+ CC=$ac_save_CC
+@@ -2401,19 +2480,28 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }; }; then
+   for ac_declaration in \
+-   ''\
+-   '#include <stdlib.h>' \
++   '' \
+    'extern "C" void std::exit (int) throw (); using std::exit;' \
+    'extern "C" void std::exit (int); using std::exit;' \
+    'extern "C" void exit (int) throw ();' \
+@@ -2421,14 +2509,13 @@
+    'void exit (int);'
+ do
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h.  */
+-#include <stdlib.h>
+ $ac_declaration
++#include <stdlib.h>
+ int
+ main ()
+ {
+@@ -2439,11 +2526,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2456,9 +2553,8 @@
+ 
+ continue
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2475,11 +2571,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2491,7 +2597,7 @@
+ sed 's/^/| /' conftest.$ac_ext >&5
+ 
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+ rm -f conftest*
+ if test -n "$ac_declaration"; then
+@@ -2505,30 +2611,22 @@
+ sed 's/^/| /' conftest.$ac_ext >&5
+ 
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_ext=c
+ ac_cpp='$CPP $CPPFLAGS'
+ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS 
conftest.$ac_ext $LIBS >&5'
+ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+-rm -f .deps 2>/dev/null
+-mkdir .deps 2>/dev/null
+-if test -d .deps; then
+-  DEPDIR=.deps
+-else
+-  # MS-DOS does not allow filenames that begin with a dot.
+-  DEPDIR=_deps
+-fi
+-rmdir .deps 2>/dev/null
+-
++DEPDIR="${am__leading_dot}deps"
+ 
+           ac_config_commands="$ac_config_commands depfiles"
+ 
+ 
+ am_make=${MAKE-make}
+ cat > confinc << 'END'
+-doit:
++am__doit:
+       @echo done
++.PHONY: am__doit
+ END
+ # If we don't find an include directive, just comment out the code.
+ echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
+@@ -2603,18 +2701,32 @@
+   # using a relative directory.
+   cp "$am_depcomp" conftest.dir
+   cd conftest.dir
++  # We will build objects and dependencies in a subdirectory because
++  # it helps to detect inapplicable dependency modes.  For instance
++  # both Tru64's cc and ICC support -MD to output dependencies as a
++  # side effect of compilation, but ICC will put the dependencies in
++  # the current directory while Tru64 will put them in the object
++  # directory.
++  mkdir sub
+ 
+   am_cv_CC_dependencies_compiler_type=none
+   if test "$am_compiler_list" = ""; then
+      am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+   fi
+   for depmode in $am_compiler_list; do
++    # Setup a source with many dependencies, because some compilers
++    # like to wrap large dependency lists on column 80 (with \), and
++    # we should not choose a depcomp mode which is confused by this.
++    #
+     # We need to recreate these files for each test, as the compiler may
+     # overwrite some of them when testing with obscure command lines.
+     # This happens at least with the AIX C compiler.
+-    echo '#include "conftest.h"' > conftest.c
+-    echo 'int i;' > conftest.h
+-    echo "${am__include} ${am__quote}conftest.Po${am__quote}" > confmf
++    : > sub/conftest.c
++    for i in 1 2 3 4 5 6; do
++      echo '#include "conftst'$i'.h"' >> sub/conftest.c
++      : > sub/conftst$i.h
++    done
++    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+ 
+     case $depmode in
+     nosideeffect)
+@@ -2632,13 +2744,20 @@
+     # mode.  It turns out that the SunPro C++ compiler does not properly
+     # handle `-M -o', and we need to detect this.
+     if depmode=$depmode \
+-       source=conftest.c object=conftest.o \
+-       depfile=conftest.Po tmpdepfile=conftest.TPo \
+-       $SHELL ./depcomp $depcc -c -o conftest.o conftest.c >/dev/null 2>&1 &&
+-       grep conftest.h conftest.Po > /dev/null 2>&1 &&
++       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
++       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
++       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
++         >/dev/null 2>conftest.err &&
++       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
++       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+-      am_cv_CC_dependencies_compiler_type=$depmode
+-      break
++      # icc doesn't choke on unknown options, it will just issue warnings
++      # (even with -Werror).  So we grep stderr for any message
++      # that says an option was ignored.
++      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
++        am_cv_CC_dependencies_compiler_type=$depmode
++        break
++      fi
+     fi
+   done
+ 
+@@ -2785,7 +2904,6 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2805,11 +2923,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_cxx_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2822,7 +2950,7 @@
+ 
+ ac_compiler_gnu=no
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
+ 
+ fi
+@@ -2838,7 +2966,6 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2855,11 +2982,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_cxx_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2872,7 +3009,7 @@
+ 
+ ac_cv_prog_cxx_g=no
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+ echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
+ echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
+@@ -2892,8 +3029,7 @@
+   fi
+ fi
+ for ac_declaration in \
+-   ''\
+-   '#include <stdlib.h>' \
++   '' \
+    'extern "C" void std::exit (int) throw (); using std::exit;' \
+    'extern "C" void std::exit (int); using std::exit;' \
+    'extern "C" void exit (int) throw ();' \
+@@ -2901,14 +3037,13 @@
+    'void exit (int);'
+ do
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h.  */
+-#include <stdlib.h>
+ $ac_declaration
++#include <stdlib.h>
+ int
+ main ()
+ {
+@@ -2919,11 +3054,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_cxx_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2936,9 +3081,8 @@
+ 
+ continue
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -2955,11 +3099,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+-  (eval $ac_compile) 2>&5
++  (eval $ac_compile) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest.$ac_objext'
++       { ac_try='test -z "$ac_cxx_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest.$ac_objext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -2971,7 +3125,7 @@
+ sed 's/^/| /' conftest.$ac_ext >&5
+ 
+ fi
+-rm -f conftest.$ac_objext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+ rm -f conftest*
+ if test -n "$ac_declaration"; then
+@@ -3004,18 +3158,32 @@
+   # using a relative directory.
+   cp "$am_depcomp" conftest.dir
+   cd conftest.dir
++  # We will build objects and dependencies in a subdirectory because
++  # it helps to detect inapplicable dependency modes.  For instance
++  # both Tru64's cc and ICC support -MD to output dependencies as a
++  # side effect of compilation, but ICC will put the dependencies in
++  # the current directory while Tru64 will put them in the object
++  # directory.
++  mkdir sub
+ 
+   am_cv_CXX_dependencies_compiler_type=none
+   if test "$am_compiler_list" = ""; then
+      am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+   fi
+   for depmode in $am_compiler_list; do
++    # Setup a source with many dependencies, because some compilers
++    # like to wrap large dependency lists on column 80 (with \), and
++    # we should not choose a depcomp mode which is confused by this.
++    #
+     # We need to recreate these files for each test, as the compiler may
+     # overwrite some of them when testing with obscure command lines.
+     # This happens at least with the AIX C compiler.
+-    echo '#include "conftest.h"' > conftest.c
+-    echo 'int i;' > conftest.h
+-    echo "${am__include} ${am__quote}conftest.Po${am__quote}" > confmf
++    : > sub/conftest.c
++    for i in 1 2 3 4 5 6; do
++      echo '#include "conftst'$i'.h"' >> sub/conftest.c
++      : > sub/conftst$i.h
++    done
++    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+ 
+     case $depmode in
+     nosideeffect)
+@@ -3033,13 +3201,20 @@
+     # mode.  It turns out that the SunPro C++ compiler does not properly
+     # handle `-M -o', and we need to detect this.
+     if depmode=$depmode \
+-       source=conftest.c object=conftest.o \
+-       depfile=conftest.Po tmpdepfile=conftest.TPo \
+-       $SHELL ./depcomp $depcc -c -o conftest.o conftest.c >/dev/null 2>&1 &&
+-       grep conftest.h conftest.Po > /dev/null 2>&1 &&
++       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
++       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
++       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
++         >/dev/null 2>conftest.err &&
++       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
++       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+-      am_cv_CXX_dependencies_compiler_type=$depmode
+-      break
++      # icc doesn't choke on unknown options, it will just issue warnings
++      # (even with -Werror).  So we grep stderr for any message
++      # that says an option was ignored.
++      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
++        am_cv_CXX_dependencies_compiler_type=$depmode
++        break
++      fi
+     fi
+   done
+ 
+@@ -3206,7 +3381,6 @@
+   ac_check_lib_save_LIBS=$LIBS
+ LIBS="-lfl  $LIBS"
+ cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -3230,11 +3404,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+-  (eval $ac_link) 2>&5
++  (eval $ac_link) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest$ac_exeext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest$ac_exeext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -3247,7 +3431,8 @@
+ 
+ ac_cv_lib_fl_yywrap=no
+ fi
+-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS
+ fi
+ echo "$as_me:$LINENO: result: $ac_cv_lib_fl_yywrap" >&5
+@@ -3263,7 +3448,6 @@
+   ac_check_lib_save_LIBS=$LIBS
+ LIBS="-ll  $LIBS"
+ cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+@@ -3287,11 +3471,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+-  (eval $ac_link) 2>&5
++  (eval $ac_link) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest$ac_exeext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest$ac_exeext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -3304,7 +3498,8 @@
+ 
+ ac_cv_lib_l_yywrap=no
+ fi
+-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS
+ fi
+ echo "$as_me:$LINENO: result: $ac_cv_lib_l_yywrap" >&5
+@@ -3366,11 +3561,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+-  (eval $ac_link) 2>&5
++  (eval $ac_link) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest$ac_exeext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest$ac_exeext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -3382,7 +3587,8 @@
+ sed 's/^/| /' conftest.$ac_ext >&5
+ 
+ fi
+-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_save_LIBS
+ rm -f "${LEX_OUTPUT_ROOT}.c"
+ 
+@@ -3941,21 +4147,28 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+-#line $LINENO "configure"
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h.  */
++/* Define $ac_func to an innocuous variant, in case <limits.h> declares 
$ac_func.
++   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
++#define $ac_func innocuous_$ac_func
++
+ /* System header to define __stub macros and hopefully few prototypes,
+     which can conflict with char $ac_func (); below.
+     Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+     <limits.h> exists even on freestanding compilers.  */
++
+ #ifdef __STDC__
+ # include <limits.h>
+ #else
+ # include <assert.h>
+ #endif
++
++#undef $ac_func
++
+ /* Override any gcc2 internal prototype to avoid an error.  */
+ #ifdef __cplusplus
+ extern "C"
+@@ -3986,11 +4199,21 @@
+ _ACEOF
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+-  (eval $ac_link) 2>&5
++  (eval $ac_link) 2>conftest.er1
+   ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } &&
+-         { ac_try='test -s conftest$ac_exeext'
++       { ac_try='test -z "$ac_c_werror_flag"
++                       || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++       { ac_try='test -s conftest$ac_exeext'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+@@ -4003,7 +4226,8 @@
+ 
+ eval "$as_ac_var=no"
+ fi
+-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
+ fi
+ echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+ echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+@@ -4035,7 +4259,7 @@
+ 
+ 
+ 
+-                                                                              
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                              
ac_config_files="$ac_config_files idl4-config Makefile doc/Makefile 
doc/manual/Makefile examples/Makefile examples/weaver/Makefile 
examples/test/Makefile examples/test/idl/Makefile 
examples/test/v2-ia32/Makefile examples/test/v2-ia32-generic/Makefile 
examples/test/x0-ia32/Makefile examples/test/x0-ia32-generic/Makefile 
examples/test/x0-arm-generic/Makefile examples/test/v4-ia32/Makefile 
examples/test/v4-ia32-generic/Makefile examples/test/v4-ia32-cs/Makefile 
examples/test/v4-ia64/Makefile examples/test/v4-ia64-generic/Makefile 
examples/test/v4-alpha-generic/Makefile 
examples/test/v4-mips64-generic/Makefile 
examples/test/v4-powerpc-generic/Makefile src/Makefile src/aoi/Makefile 
src/arch/Makefile src/arch/v2/Makefile src/arch/v2/ia32/Makefile 
src/arch/v4/Makefile src/arch/v4/ia32/Makefile src/arch/v4/ia64/Makefile 
src/arch/x0/Makefile src/arch/x0/ia32/Makefile src/base/Makefile 
src/base/lib/Makefile src/be/Makefile src/be/ops/Makefile src/be/types/Makefile 
src/cast/Makefile src/fe/Makefile src/fe/c++/Makefile src/fe/idl/Makefile 
src/fe/lib/Makefile src/test/Makefile src/test/glue/Makefile 
src/test/glue/v2-ia32/Makefile src/test/glue/x0-ia32/Makefile 
src/test/glue/x0-arm/Makefile src/test/glue/v4-ia32/Makefile 
src/test/glue/v4-ia64/Makefile src/test/glue/v4-alpha/Makefile 
src/test/glue/v4-mips64/Makefile src/test/glue/v4-powerpc/Makefile 
src/include/Makefile src/include/user/Makefile src/include/user/idl4/Makefile"
++                                                                              
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                        
ac_config_files="$ac_config_files idl4-config Makefile doc/Makefile 
doc/manual/Makefile examples/Makefile examples/weaver/Makefile 
examples/test/Makefile examples/test/idl/Makefile 
examples/test/v2-ia32/Makefile examples/test/v2-ia32-generic/Makefile 
examples/test/x0-ia32/Makefile examples/test/x0-ia32-generic/Makefile 
examples/test/x0-arm-generic/Makefile examples/test/v4-ia32/Makefile 
examples/test/v4-ia32-generic/Makefile examples/test/v4-ia32-cs/Makefile 
examples/test/v4-ia64/Makefile examples/test/v4-ia64-generic/Makefile 
examples/test/v4-alpha-generic/Makefile 
examples/test/v4-mips64-generic/Makefile 
examples/test/v4-powerpc-generic/Makefile src/Makefile src/aoi/Makefile 
src/arch/Makefile src/arch/v2/Makefile src/arch/v2/ia32/Makefile 
src/arch/v4/Makefile src/arch/v4/ia32/Makefile src/arch/v4/ia64/Makefile 
src/arch/v4_gnu/Makefile src/arch/x0/Makefile src/arch/x0/ia32/Makefile 
src/base/Makefile src/base/lib/Makefile src/be/Makefile src/be/ops/Makefile 
src/be/types/Makefile src/cast/Makefile src/fe/Makefile src/fe/c++/Makefile 
src/fe/idl/Makefile src/fe/lib/Makefile src/test/Makefile 
src/test/glue/Makefile src/test/glue/v2-ia32/Makefile 
src/test/glue/x0-ia32/Makefile src/test/glue/x0-arm/Makefile 
src/test/glue/v4-ia32/Makefile src/test/glue/v4-ia64/Makefile 
src/test/glue/v4-alpha/Makefile src/test/glue/v4-mips64/Makefile 
src/test/glue/v4-powerpc/Makefile src/include/Makefile 
src/include/user/Makefile src/include/user/idl4/Makefile"
+ cat >confcache <<\_ACEOF
+ # This file is a shell script that caches the results of configure
+ # tests run on this system so they can be shared between configure
+@@ -4064,13 +4288,13 @@
+       # `set' does not quote correctly, so add quotes (double-quote
+       # substitution turns \\\\ into \\, and sed turns \\ into \).
+       sed -n \
+-        "s/'/'\\\\''/g;
+-        s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
++      "s/'/'\\\\''/g;
++        s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+       ;;
+     *)
+       # `set' quotes correctly as required by POSIX, so do not add quotes.
+       sed -n \
+-        "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
++      "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+       ;;
+     esac;
+ } |
+@@ -4100,13 +4324,13 @@
+ # trailing colons and then remove the whole line if VPATH becomes empty
+ # (actually we leave an empty line to preserve line numbers).
+ if test "x$srcdir" = x.; then
+-  ac_vpsub='/^[       ]*VPATH[        ]*=/{
++  ac_vpsub='/^[        ]*VPATH[        ]*=/{
+ s/:*\$(srcdir):*/:/;
+ s/:*\${srcdir}:*/:/;
+ s/:address@hidden@:*/:/;
+-s/^\([^=]*=[  ]*\):*/\1/;
++s/^\([^=]*=[   ]*\):*/\1/;
+ s/:*$//;
+-s/^[^=]*=[    ]*$//;
++s/^[^=]*=[     ]*$//;
+ }'
+ fi
+ 
+@@ -4117,7 +4341,7 @@
+ for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
+   # 1. Remove the extension, and $U if already installed.
+   ac_i=`echo "$ac_i" |
+-         sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
++       sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
+   # 2. Add them.
+   ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
+   ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
+@@ -4322,9 +4546,10 @@
+ elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+   set -o posix
+ fi
++DUALCASE=1; export DUALCASE # for MKS sh
+ 
+ # Support unset when possible.
+-if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
++if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+   as_unset=unset
+ else
+   as_unset=false
+@@ -4343,7 +4568,7 @@
+   LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+   LC_TELEPHONE LC_TIME
+ do
+-  if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then
++  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+     eval $as_var=C; export $as_var
+   else
+     $as_unset $as_var
+@@ -4522,16 +4747,17 @@
+ if mkdir -p . 2>/dev/null; then
+   as_mkdir_p=:
+ else
++  test -d ./-p && rmdir ./-p
+   as_mkdir_p=false
+ fi
+ 
+ as_executable_p="test -f"
+ 
+ # Sed expression to map a string onto a valid CPP name.
+-as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
++as_tr_cpp="eval sed 
'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+ 
+ # Sed expression to map a string onto a valid variable name.
+-as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
++as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+ 
+ 
+ # IFS
+@@ -4558,7 +4784,7 @@
+ cat >&5 <<_CSEOF
+ 
+ This file was extended by $as_me, which was
+-generated by GNU Autoconf 2.57.  Invocation command line was
++generated by GNU Autoconf 2.59.  Invocation command line was
+ 
+   CONFIG_FILES    = $CONFIG_FILES
+   CONFIG_HEADERS  = $CONFIG_HEADERS
+@@ -4602,9 +4828,9 @@
+   -d, --debug      don't remove temporary files
+       --recheck    update $as_me by reconfiguring in the same conditions
+   --file=FILE[:TEMPLATE]
+-                   instantiate the configuration file FILE
++                 instantiate the configuration file FILE
+   --header=FILE[:TEMPLATE]
+-                   instantiate the configuration header FILE
++                 instantiate the configuration header FILE
+ 
+ Configuration files:
+ $config_files
+@@ -4621,11 +4847,10 @@
+ cat >>$CONFIG_STATUS <<_ACEOF
+ ac_cs_version="\\
+ config.status
+-configured by $0, generated by GNU Autoconf 2.57,
++configured by $0, generated by GNU Autoconf 2.59,
+   with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+ 
+-Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+-Free Software Foundation, Inc.
++Copyright (C) 2003 Free Software Foundation, Inc.
+ This config.status script is free software; the Free Software Foundation
+ gives unlimited permission to copy, distribute and modify it."
+ srcdir=$srcdir
+@@ -4760,6 +4985,7 @@
+   "src/arch/v4/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/arch/v4/Makefile" 
;;
+   "src/arch/v4/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/v4/ia32/Makefile" ;;
+   "src/arch/v4/ia64/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/v4/ia64/Makefile" ;;
++  "src/arch/v4_gnu/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/v4_gnu/Makefile" ;;
+   "src/arch/x0/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/arch/x0/Makefile" 
;;
+   "src/arch/x0/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES 
src/arch/x0/ia32/Makefile" ;;
+   "src/base/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/base/Makefile" ;;
+@@ -4890,6 +5116,7 @@
+ s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
+ s,@AWK@,$AWK,;t t
+ s,@SET_MAKE@,$SET_MAKE,;t t
++s,@am__leading_dot@,$am__leading_dot,;t t
+ s,@CC@,$CC,;t t
+ s,@CFLAGS@,$CFLAGS,;t t
+ s,@LDFLAGS@,$LDFLAGS,;t t
+@@ -5012,9 +5239,9 @@
+       (echo ':t
+   /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) 
>$tmp/subs-$ac_sed_frag.sed
+       if test -z "$ac_sed_cmds"; then
+-      ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
++      ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
+       else
+-      ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
++      ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
+       fi
+       ac_sed_frag=`expr $ac_sed_frag + 1`
+       ac_beg=$ac_end
+@@ -5032,21 +5259,21 @@
+   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+   case $ac_file in
+   - | *:- | *:-:* ) # input from stdin
+-        cat >$tmp/stdin
+-        ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+-        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++      cat >$tmp/stdin
++      ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++      ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+   *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+-        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++      ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+   * )   ac_file_in=$ac_file.in ;;
+   esac
+ 
+   # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
+   ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+ $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$ac_file" : 'X\(//\)[^/]' \| \
+-         X"$ac_file" : 'X\(//\)$' \| \
+-         X"$ac_file" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$ac_file" : 'X\(//\)[^/]' \| \
++       X"$ac_file" : 'X\(//\)$' \| \
++       X"$ac_file" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$ac_file" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+@@ -5062,10 +5289,10 @@
+       as_dirs="$as_dir $as_dirs"
+       as_dir=`(dirname "$as_dir") 2>/dev/null ||
+ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$as_dir" : 'X\(//\)[^/]' \| \
+-         X"$as_dir" : 'X\(//\)$' \| \
+-         X"$as_dir" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$as_dir" : 'X\(//\)[^/]' \| \
++       X"$as_dir" : 'X\(//\)$' \| \
++       X"$as_dir" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$as_dir" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+@@ -5103,12 +5330,45 @@
+     ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+     ac_top_srcdir=$ac_top_builddir$srcdir ;;
+ esac
+-# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
+-# absolute.
+-ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
+-ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd`
+-ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
+-ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
++
++# Do not use `cd foo && pwd` to compute absolute paths, because
++# the directories may not exist.
++case `pwd` in
++.) ac_abs_builddir="$ac_dir";;
++*)
++  case "$ac_dir" in
++  .) ac_abs_builddir=`pwd`;;
++  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
++  *) ac_abs_builddir=`pwd`/"$ac_dir";;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_builddir=${ac_top_builddir}.;;
++*)
++  case ${ac_top_builddir}. in
++  .) ac_abs_top_builddir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
++  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_srcdir=$ac_srcdir;;
++*)
++  case $ac_srcdir in
++  .) ac_abs_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
++  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_srcdir=$ac_top_srcdir;;
++*)
++  case $ac_top_srcdir in
++  .) ac_abs_top_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
++  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
++  esac;;
++esac
+ 
+ 
+   case $INSTALL in
+@@ -5130,7 +5390,7 @@
+     configure_input="$ac_file.  "
+   fi
+   configure_input=$configure_input"Generated from `echo $ac_file_in |
+-                                     sed 's,.*/,,'` by configure."
++                                   sed 's,.*/,,'` by configure."
+ 
+   # First look for the input files in the build tree, otherwise in the
+   # src tree.
+@@ -5139,24 +5399,24 @@
+       case $f in
+       -) echo $tmp/stdin ;;
+       [\\/$]*)
+-         # Absolute (can't be DOS-style, as IFS=:)
+-         test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
++       # Absolute (can't be DOS-style, as IFS=:)
++       test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
+ echo "$as_me: error: cannot find input file: $f" >&2;}
+    { (exit 1); exit 1; }; }
+-         echo $f;;
++       echo "$f";;
+       *) # Relative
+-         if test -f "$f"; then
+-           # Build tree
+-           echo $f
+-         elif test -f "$srcdir/$f"; then
+-           # Source tree
+-           echo $srcdir/$f
+-         else
+-           # /dev/null tree
+-           { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
++       if test -f "$f"; then
++         # Build tree
++         echo "$f"
++       elif test -f "$srcdir/$f"; then
++         # Source tree
++         echo "$srcdir/$f"
++       else
++         # /dev/null tree
++         { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+ echo "$as_me: error: cannot find input file: $f" >&2;}
+    { (exit 1); exit 1; }; }
+-         fi;;
++       fi;;
+       esac
+     done` || { (exit 1); exit 1; }
+ _ACEOF
+@@ -5198,12 +5458,12 @@
+ # NAME is the cpp macro being defined and VALUE is the value it is being 
given.
+ #
+ # ac_d sets the value in "#define NAME VALUE" lines.
+-ac_dA='s,^\([         ]*\)#\([        ]*define[       ][      ]*\)'
+-ac_dB='[      ].*$,\1#\2'
++ac_dA='s,^\([  ]*\)#\([        ]*define[       ][      ]*\)'
++ac_dB='[       ].*$,\1#\2'
+ ac_dC=' '
+ ac_dD=',;t'
+ # ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+-ac_uA='s,^\([         ]*\)#\([        ]*\)undef\([    ][      ]*\)'
++ac_uA='s,^\([  ]*\)#\([        ]*\)undef\([    ][      ]*\)'
+ ac_uB='$,\1#\2define\3'
+ ac_uC=' '
+ ac_uD=',;t'
+@@ -5212,11 +5472,11 @@
+   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+   case $ac_file in
+   - | *:- | *:-:* ) # input from stdin
+-        cat >$tmp/stdin
+-        ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+-        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++      cat >$tmp/stdin
++      ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++      ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+   *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+-        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++      ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+   * )   ac_file_in=$ac_file.in ;;
+   esac
+ 
+@@ -5230,28 +5490,29 @@
+       case $f in
+       -) echo $tmp/stdin ;;
+       [\\/$]*)
+-         # Absolute (can't be DOS-style, as IFS=:)
+-         test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
++       # Absolute (can't be DOS-style, as IFS=:)
++       test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input 
file: $f" >&5
+ echo "$as_me: error: cannot find input file: $f" >&2;}
+    { (exit 1); exit 1; }; }
+-         echo $f;;
++       # Do quote $f, to prevent DOS paths from being IFS'd.
++       echo "$f";;
+       *) # Relative
+-         if test -f "$f"; then
+-           # Build tree
+-           echo $f
+-         elif test -f "$srcdir/$f"; then
+-           # Source tree
+-           echo $srcdir/$f
+-         else
+-           # /dev/null tree
+-           { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
++       if test -f "$f"; then
++         # Build tree
++         echo "$f"
++       elif test -f "$srcdir/$f"; then
++         # Source tree
++         echo "$srcdir/$f"
++       else
++         # /dev/null tree
++         { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+ echo "$as_me: error: cannot find input file: $f" >&2;}
+    { (exit 1); exit 1; }; }
+-         fi;;
++       fi;;
+       esac
+     done` || { (exit 1); exit 1; }
+   # Remove the trailing spaces.
+-  sed 's/[    ]*$//' $ac_file_inputs >$tmp/in
++  sed 's/[     ]*$//' $ac_file_inputs >$tmp/in
+ 
+ _ACEOF
+ 
+@@ -5274,9 +5535,9 @@
+ s,[\\$`],\\&,g
+ t clear
+ : clear
+-s,^[  ]*#[    ]*define[       ][      ]*\([^  (][^    (]*\)\(([^)]*)\)[       
]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
++s,^[   ]*#[    ]*define[       ][      ]*\([^  (][^    (]*\)\(([^)]*)\)[      
 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
+ t end
+-s,^[  ]*#[    ]*define[       ][      ]*\([^  ][^     ]*\)[   
]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
++s,^[   ]*#[    ]*define[       ][      ]*\([^  ][^     ]*\)[   
]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
+ : end
+ _ACEOF
+ # If some macros were called several times there might be several times
+@@ -5290,13 +5551,13 @@
+ # example, in the case of _POSIX_SOURCE, which is predefined and required
+ # on some systems where configure will not decide to define it.
+ cat >>conftest.undefs <<\_ACEOF
+-s,^[  ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
++s,^[   ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
+ _ACEOF
+ 
+ # Break up conftest.defines because some shells have a limit on the size
+ # of here documents, and old seds have small limits too (100 cmds).
+ echo '  # Handle all the #define templates only if necessary.' 
>>$CONFIG_STATUS
+-echo '  if grep "^[   ]*#[    ]*define" $tmp/in >/dev/null; then' 
>>$CONFIG_STATUS
++echo '  if grep "^[    ]*#[    ]*define" $tmp/in >/dev/null; then' 
>>$CONFIG_STATUS
+ echo '  # If there are no defines, we may have an empty if/fi' 
>>$CONFIG_STATUS
+ echo '  :' >>$CONFIG_STATUS
+ rm -f conftest.tail
+@@ -5305,7 +5566,7 @@
+   # Write a limited-size here document to $tmp/defines.sed.
+   echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
+   # Speed up: don't consider the non `#define' lines.
+-  echo '/^[   ]*#[    ]*define/!b' >>$CONFIG_STATUS
++  echo '/^[    ]*#[    ]*define/!b' >>$CONFIG_STATUS
+   # Work around the forget-to-reset-the-flag bug.
+   echo 't clr' >>$CONFIG_STATUS
+   echo ': clr' >>$CONFIG_STATUS
+@@ -5332,7 +5593,7 @@
+   # Write a limited-size here document to $tmp/undefs.sed.
+   echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
+   # Speed up: don't consider the non `#undef'
+-  echo '/^[   ]*#[    ]*undef/!b' >>$CONFIG_STATUS
++  echo '/^[    ]*#[    ]*undef/!b' >>$CONFIG_STATUS
+   # Work around the forget-to-reset-the-flag bug.
+   echo 't clr' >>$CONFIG_STATUS
+   echo ': clr' >>$CONFIG_STATUS
+@@ -5366,10 +5627,10 @@
+     else
+       ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+ $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$ac_file" : 'X\(//\)[^/]' \| \
+-         X"$ac_file" : 'X\(//\)$' \| \
+-         X"$ac_file" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$ac_file" : 'X\(//\)[^/]' \| \
++       X"$ac_file" : 'X\(//\)$' \| \
++       X"$ac_file" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$ac_file" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+@@ -5385,10 +5646,10 @@
+       as_dirs="$as_dir $as_dirs"
+       as_dir=`(dirname "$as_dir") 2>/dev/null ||
+ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$as_dir" : 'X\(//\)[^/]' \| \
+-         X"$as_dir" : 'X\(//\)$' \| \
+-         X"$as_dir" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$as_dir" : 'X\(//\)[^/]' \| \
++       X"$as_dir" : 'X\(//\)$' \| \
++       X"$as_dir" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$as_dir" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+@@ -5408,13 +5669,22 @@
+     cat $tmp/config.h
+     rm -f $tmp/config.h
+   fi
+-_am_stamp_count=`expr ${_am_stamp_count-0} + 1`
++# Compute $ac_file's index in $config_headers.
++_am_stamp_count=1
++for _am_header in $config_headers :; do
++  case $_am_header in
++    $ac_file | $ac_file:* )
++      break ;;
++    * )
++      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
++  esac
++done
+ echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null ||
+ $as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X$ac_file : 'X\(//\)[^/]' \| \
+-         X$ac_file : 'X\(//\)$' \| \
+-         X$ac_file : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X$ac_file : 'X\(//\)[^/]' \| \
++       X$ac_file : 'X\(//\)$' \| \
++       X$ac_file : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X$ac_file |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+@@ -5433,16 +5703,41 @@
+   ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+   ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
+ $as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$ac_dest" : 'X\(//\)[^/]' \| \
+-         X"$ac_dest" : 'X\(//\)$' \| \
+-         X"$ac_dest" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$ac_dest" : 'X\(//\)[^/]' \| \
++       X"$ac_dest" : 'X\(//\)$' \| \
++       X"$ac_dest" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$ac_dest" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
++  { if $as_mkdir_p; then
++    mkdir -p "$ac_dir"
++  else
++    as_dir="$ac_dir"
++    as_dirs=
++    while test ! -d "$as_dir"; do
++      as_dirs="$as_dir $as_dirs"
++      as_dir=`(dirname "$as_dir") 2>/dev/null ||
++$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++       X"$as_dir" : 'X\(//\)[^/]' \| \
++       X"$as_dir" : 'X\(//\)$' \| \
++       X"$as_dir" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
++echo X"$as_dir" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++        /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++        /^X\(\/\/\)$/{ s//\1/; q; }
++        /^X\(\/\).*/{ s//\1/; q; }
++        s/.*/./; q'`
++    done
++    test ! -n "$as_dirs" || mkdir $as_dirs
++  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" 
>&5
++echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
++   { (exit 1); exit 1; }; }; }
++
+   ac_builddir=.
+ 
+ if test "$ac_dir" != .; then
+@@ -5468,12 +5763,45 @@
+     ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+     ac_top_srcdir=$ac_top_builddir$srcdir ;;
+ esac
+-# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
+-# absolute.
+-ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
+-ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd`
+-ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
+-ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
++
++# Do not use `cd foo && pwd` to compute absolute paths, because
++# the directories may not exist.
++case `pwd` in
++.) ac_abs_builddir="$ac_dir";;
++*)
++  case "$ac_dir" in
++  .) ac_abs_builddir=`pwd`;;
++  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
++  *) ac_abs_builddir=`pwd`/"$ac_dir";;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_builddir=${ac_top_builddir}.;;
++*)
++  case ${ac_top_builddir}. in
++  .) ac_abs_top_builddir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
++  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_srcdir=$ac_srcdir;;
++*)
++  case $ac_srcdir in
++  .) ac_abs_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
++  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_srcdir=$ac_top_srcdir;;
++*)
++  case $ac_top_srcdir in
++  .) ac_abs_top_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
++  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
++  esac;;
++esac
+ 
+ 
+   { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
+@@ -5491,10 +5819,10 @@
+   if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+     dirpart=`(dirname "$mf") 2>/dev/null ||
+ $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$mf" : 'X\(//\)[^/]' \| \
+-         X"$mf" : 'X\(//\)$' \| \
+-         X"$mf" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$mf" : 'X\(//\)[^/]' \| \
++       X"$mf" : 'X\(//\)$' \| \
++       X"$mf" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$mf" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+@@ -5530,10 +5858,10 @@
+     test -f "$dirpart/$file" && continue
+     fdir=`(dirname "$file") 2>/dev/null ||
+ $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$file" : 'X\(//\)[^/]' \| \
+-         X"$file" : 'X\(//\)$' \| \
+-         X"$file" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$file" : 'X\(//\)[^/]' \| \
++       X"$file" : 'X\(//\)$' \| \
++       X"$file" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$file" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+@@ -5549,10 +5877,10 @@
+       as_dirs="$as_dir $as_dirs"
+       as_dir=`(dirname "$as_dir") 2>/dev/null ||
+ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+-         X"$as_dir" : 'X\(//\)[^/]' \| \
+-         X"$as_dir" : 'X\(//\)$' \| \
+-         X"$as_dir" : 'X\(/\)' \| \
+-         .     : '\(.\)' 2>/dev/null ||
++       X"$as_dir" : 'X\(//\)[^/]' \| \
++       X"$as_dir" : 'X\(//\)$' \| \
++       X"$as_dir" : 'X\(/\)' \| \
++       .     : '\(.\)' 2>/dev/null ||
+ echo X"$as_dir" |
+     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+diff -Naur idl4-1.0.2/configure.in idl4/configure.in
+--- idl4-1.0.2/configure.in    2003-11-03 22:31:05.000000000 +0100
++++ idl4/configure.in  2005-07-10 08:05:39.417865712 +0200
+@@ -176,6 +176,7 @@
+ src/arch/v4/Makefile
+ src/arch/v4/ia32/Makefile
+ src/arch/v4/ia64/Makefile
++src/arch/v4_gnu/Makefile
+ src/arch/x0/Makefile
+ src/arch/x0/ia32/Makefile
+ src/base/Makefile
+diff -Naur idl4-1.0.2/doc/Makefile.in idl4/doc/Makefile.in
+--- idl4-1.0.2/doc/Makefile.in 2003-11-03 22:40:33.000000000 +0100
++++ idl4/doc/Makefile.in       2005-07-11 16:14:04.387952568 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ SUBDIRS = manual
+ EXTRA_DIST = RELEASE-NOTES
+ subdir = doc
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -189,7 +191,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ all: all-recursive
+ 
+@@ -281,9 +283,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -380,7 +388,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -388,7 +396,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -399,7 +407,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -421,7 +429,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/doc/manual/Makefile.in idl4/doc/manual/Makefile.in
+--- idl4-1.0.2/doc/manual/Makefile.in  2003-11-03 22:40:33.000000000 +0100
++++ idl4/doc/manual/Makefile.in        2005-07-11 16:14:05.078847536 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -189,11 +190,12 @@
+ 
+ @address@hidden = manual.ps
+ subdir = doc/manual
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ all: all-am
+ 
+ .SUFFIXES:
+@@ -247,7 +249,6 @@
+ all-am: Makefile all-local
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -259,7 +260,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -268,7 +269,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -279,7 +280,7 @@
+ clean-am: clean-generic clean-local mostlyclean-am
+ 
+ distclean: distclean-am
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic
+ 
+ dvi: dvi-am
+@@ -301,7 +302,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+diff -Naur idl4-1.0.2/examples/Makefile.in idl4/examples/Makefile.in
+--- idl4-1.0.2/examples/Makefile.in    2003-11-03 22:40:33.000000000 +0100
++++ idl4/examples/Makefile.in  2005-07-11 16:13:08.513446784 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -184,6 +185,7 @@
+ 
+ EXTRA_DIST = chacmos
+ subdir = examples
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -194,7 +196,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = test weaver
+ all: all-recursive
+ 
+@@ -286,9 +288,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -388,7 +396,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -396,7 +404,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -407,7 +415,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -429,7 +437,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/examples/test/idl/Makefile.in 
idl4/examples/test/idl/Makefile.in
+--- idl4-1.0.2/examples/test/idl/Makefile.in   2003-11-03 22:41:38.000000000 
+0100
++++ idl4/examples/test/idl/Makefile.in 2005-07-11 16:14:03.665062464 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -178,11 +179,12 @@
+ 
+ EXTRA_DIST = custom.idl inheritance.idl test.idl types.h
+ subdir = examples/test/idl
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ all: all-am
+ 
+ .SUFFIXES:
+@@ -238,7 +240,6 @@
+ all-am: Makefile
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -250,7 +251,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -258,7 +259,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -269,7 +270,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic
+ 
+ dvi: dvi-am
+@@ -291,7 +292,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+diff -Naur idl4-1.0.2/examples/test/Makefile.in idl4/examples/test/Makefile.in
+--- idl4-1.0.2/examples/test/Makefile.in       2003-11-03 22:41:37.000000000 
+0100
++++ idl4/examples/test/Makefile.in     2005-07-11 16:13:52.687731272 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -199,6 +200,7 @@
+ 
+ SUBDIRS = idl $(SUB_V2_IA32) $(SUB_X0_IA32) $(SUB_X0_ARM) $(SUB_V4_IA32) 
$(SUB_V4_IA64) $(SUB_V4_ALPHA) $(SUB_V4_MIPS64) $(SUB_V4_POWERPC)
+ subdir = examples/test
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -209,7 +211,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = idl v2-ia32 v2-ia32-generic x0-ia32 x0-ia32-generic \
+       x0-arm-generic v4-ia32 v4-ia32-generic v4-ia32-cs v4-ia64 \
+       v4-ia64-generic v4-alpha-generic v4-mips64-generic \
+@@ -304,9 +306,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -403,7 +411,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -411,7 +419,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -422,7 +430,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -444,7 +452,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/examples/test/v2-ia32/Makefile.in 
idl4/examples/test/v2-ia32/Makefile.in
+--- idl4-1.0.2/examples/test/v2-ia32/Makefile.in       2003-11-03 
22:41:39.000000000 +0100
++++ idl4/examples/test/v2-ia32/Makefile.in     2005-07-11 16:14:02.912176920 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -199,6 +200,7 @@
+ 
+ INCLUDES = -I$(TESTDIR)/idl -I$(top_srcdir)/src/include/user -I$(TESTDIR)
+ subdir = examples/test/v2-ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -217,7 +219,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v2_ia32_SOURCES)
+ 
+ all: all-am
+@@ -265,13 +267,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -282,7 +281,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -293,7 +292,7 @@
+ test_v2_ia32-v2_ia32.o: v2_ia32.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v2_ia32_CFLAGS) $(CFLAGS) -MT 
test_v2_ia32-v2_ia32.o -MD -MP -MF "$(DEPDIR)/test_v2_ia32-v2_ia32.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v2_ia32-v2_ia32.o `test -f 'v2_ia32.c' || 
echo '$(srcdir)/'`v2_ia32.c; \
address@hidden@ then mv "$(DEPDIR)/test_v2_ia32-v2_ia32.Tpo" 
"$(DEPDIR)/test_v2_ia32-v2_ia32.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v2_ia32-v2_ia32.Tpo" 
"$(DEPDIR)/test_v2_ia32-v2_ia32.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_v2_ia32-v2_ia32.Tpo"; exit 
1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v2_ia32.c' 
object='test_v2_ia32-v2_ia32.o' libtool=no @AMDEPBACKSLASH@
+@@ -304,7 +303,7 @@
+ test_v2_ia32-v2_ia32.obj: v2_ia32.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v2_ia32_CFLAGS) $(CFLAGS) -MT 
test_v2_ia32-v2_ia32.obj -MD -MP -MF "$(DEPDIR)/test_v2_ia32-v2_ia32.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v2_ia32-v2_ia32.obj `if test -f 
'v2_ia32.c'; then $(CYGPATH_W) 'v2_ia32.c'; else $(CYGPATH_W) 
'$(srcdir)/v2_ia32.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_v2_ia32-v2_ia32.Tpo" 
"$(DEPDIR)/test_v2_ia32-v2_ia32.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v2_ia32-v2_ia32.Tpo" 
"$(DEPDIR)/test_v2_ia32-v2_ia32.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_v2_ia32-v2_ia32.Tpo"; exit 
1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v2_ia32.c' 
object='test_v2_ia32-v2_ia32.obj' libtool=no @AMDEPBACKSLASH@
+@@ -404,7 +403,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -416,7 +414,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -425,7 +423,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -436,9 +434,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -459,7 +458,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -478,11 +478,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v2-ia32-generic/Makefile.in 
idl4/examples/test/v2-ia32-generic/Makefile.in
+--- idl4-1.0.2/examples/test/v2-ia32-generic/Makefile.in       2003-11-03 
22:41:38.000000000 +0100
++++ idl4/examples/test/v2-ia32-generic/Makefile.in     2005-07-11 
16:14:02.130295784 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -199,6 +200,7 @@
+ 
+ INCLUDES = -I$(TESTDIR)/idl -I$(top_srcdir)/src/include/user -I$(TESTDIR)
+ subdir = examples/test/v2-ia32-generic
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -219,7 +221,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v2_ia32_generic_SOURCES)
+ 
+ all: all-am
+@@ -267,13 +269,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -284,7 +283,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -295,7 +294,7 @@
+ test_v2_ia32_generic-v2_ia32_generic.o: v2_ia32_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v2_ia32_generic_CFLAGS) $(CFLAGS) -MT 
test_v2_ia32_generic-v2_ia32_generic.o -MD -MP -MF 
"$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v2_ia32_generic-v2_ia32_generic.o `test -f 
'v2_ia32_generic.c' || echo '$(srcdir)/'`v2_ia32_generic.c; \
address@hidden@ then mv "$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Tpo" 
"$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Tpo" 
"$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v2_ia32_generic.c' 
object='test_v2_ia32_generic-v2_ia32_generic.o' libtool=no @AMDEPBACKSLASH@
+@@ -306,7 +305,7 @@
+ test_v2_ia32_generic-v2_ia32_generic.obj: v2_ia32_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v2_ia32_generic_CFLAGS) $(CFLAGS) -MT 
test_v2_ia32_generic-v2_ia32_generic.obj -MD -MP -MF 
"$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v2_ia32_generic-v2_ia32_generic.obj `if 
test -f 'v2_ia32_generic.c'; then $(CYGPATH_W) 'v2_ia32_generic.c'; else 
$(CYGPATH_W) '$(srcdir)/v2_ia32_generic.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Tpo" 
"$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Tpo" 
"$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v2_ia32_generic-v2_ia32_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v2_ia32_generic.c' 
object='test_v2_ia32_generic-v2_ia32_generic.obj' libtool=no @AMDEPBACKSLASH@
+@@ -406,7 +405,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -418,7 +416,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -427,7 +425,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -438,9 +436,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -461,7 +460,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -480,11 +480,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v4-alpha-generic/Makefile.in 
idl4/examples/test/v4-alpha-generic/Makefile.in
+--- idl4-1.0.2/examples/test/v4-alpha-generic/Makefile.in      2003-11-03 
22:41:39.000000000 +0100
++++ idl4/examples/test/v4-alpha-generic/Makefile.in    2005-07-11 
16:13:55.015377416 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -206,6 +207,7 @@
+ 
+ INCLUDES = -I$(top_srcdir)/examples/test/idl -I$(top_srcdir)/src/include/user 
-I$(srcdir)
+ subdir = examples/test/v4-alpha-generic
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -226,7 +228,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v4_alpha_generic_SOURCES)
+ 
+ all: all-am
+@@ -274,13 +276,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -291,7 +290,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -302,7 +301,7 @@
+ test_v4_alpha_generic-v4_alpha_generic.o: v4_alpha_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_alpha_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_alpha_generic-v4_alpha_generic.o -MD -MP -MF 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_alpha_generic-v4_alpha_generic.o `test 
-f 'v4_alpha_generic.c' || echo '$(srcdir)/'`v4_alpha_generic.c; \
address@hidden@ then mv "$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Tpo" 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Po"; \
address@hidden@ then mv -f 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Tpo" 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_alpha_generic.c' 
object='test_v4_alpha_generic-v4_alpha_generic.o' libtool=no @AMDEPBACKSLASH@
+@@ -313,7 +312,7 @@
+ test_v4_alpha_generic-v4_alpha_generic.obj: v4_alpha_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_alpha_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_alpha_generic-v4_alpha_generic.obj -MD -MP -MF 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_alpha_generic-v4_alpha_generic.obj `if 
test -f 'v4_alpha_generic.c'; then $(CYGPATH_W) 'v4_alpha_generic.c'; else 
$(CYGPATH_W) '$(srcdir)/v4_alpha_generic.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Tpo" 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Po"; \
address@hidden@ then mv -f 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Tpo" 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_alpha_generic-v4_alpha_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_alpha_generic.c' 
object='test_v4_alpha_generic-v4_alpha_generic.obj' libtool=no @AMDEPBACKSLASH@
+@@ -413,7 +412,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -425,7 +423,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -434,7 +432,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -445,9 +443,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -468,7 +467,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -487,11 +487,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v4-ia32/Makefile.in 
idl4/examples/test/v4-ia32/Makefile.in
+--- idl4-1.0.2/examples/test/v4-ia32/Makefile.in       2003-11-07 
01:11:11.000000000 +0100
++++ idl4/examples/test/v4-ia32/Makefile.in     2005-07-11 16:13:58.954778536 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -202,6 +203,7 @@
+ 
+ INCLUDES = -I$(TESTDIR)/idl -I$(top_srcdir)/src/include/user -I$(TESTDIR)
+ subdir = examples/test/v4-ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -220,7 +222,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v4_ia32_SOURCES)
+ 
+ all: all-am
+@@ -268,13 +270,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -285,7 +284,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -296,7 +295,7 @@
+ test_v4_ia32-v4_ia32.o: v4_ia32.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia32_CFLAGS) $(CFLAGS) -MT 
test_v4_ia32-v4_ia32.o -MD -MP -MF "$(DEPDIR)/test_v4_ia32-v4_ia32.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia32-v4_ia32.o `test -f 'v4_ia32.c' || 
echo '$(srcdir)/'`v4_ia32.c; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia32-v4_ia32.Tpo" 
"$(DEPDIR)/test_v4_ia32-v4_ia32.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia32-v4_ia32.Tpo" 
"$(DEPDIR)/test_v4_ia32-v4_ia32.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_v4_ia32-v4_ia32.Tpo"; exit 
1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia32.c' 
object='test_v4_ia32-v4_ia32.o' libtool=no @AMDEPBACKSLASH@
+@@ -307,7 +306,7 @@
+ test_v4_ia32-v4_ia32.obj: v4_ia32.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia32_CFLAGS) $(CFLAGS) -MT 
test_v4_ia32-v4_ia32.obj -MD -MP -MF "$(DEPDIR)/test_v4_ia32-v4_ia32.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia32-v4_ia32.obj `if test -f 
'v4_ia32.c'; then $(CYGPATH_W) 'v4_ia32.c'; else $(CYGPATH_W) 
'$(srcdir)/v4_ia32.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia32-v4_ia32.Tpo" 
"$(DEPDIR)/test_v4_ia32-v4_ia32.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia32-v4_ia32.Tpo" 
"$(DEPDIR)/test_v4_ia32-v4_ia32.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_v4_ia32-v4_ia32.Tpo"; exit 
1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia32.c' 
object='test_v4_ia32-v4_ia32.obj' libtool=no @AMDEPBACKSLASH@
+@@ -407,7 +406,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -419,7 +417,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -428,7 +426,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -439,9 +437,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -462,7 +461,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -481,11 +481,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v4-ia32-cs/Makefile.in 
idl4/examples/test/v4-ia32-cs/Makefile.in
+--- idl4-1.0.2/examples/test/v4-ia32-cs/Makefile.in    2003-11-03 
22:41:40.000000000 +0100
++++ idl4/examples/test/v4-ia32-cs/Makefile.in  2005-07-11 16:13:57.387016872 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -202,6 +203,7 @@
+ 
+ INCLUDES = -I$(TESTDIR)/idl -I$(top_srcdir)/src/include/user -I$(TESTDIR)
+ subdir = examples/test/v4-ia32-cs
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -220,7 +222,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v4_ia32_cs_SOURCES)
+ 
+ all: all-am
+@@ -268,13 +270,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -285,7 +284,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -296,7 +295,7 @@
+ test_v4_ia32_cs-v4_ia32_cs.o: v4_ia32_cs.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia32_cs_CFLAGS) $(CFLAGS) -MT 
test_v4_ia32_cs-v4_ia32_cs.o -MD -MP -MF 
"$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia32_cs-v4_ia32_cs.o `test -f 
'v4_ia32_cs.c' || echo '$(srcdir)/'`v4_ia32_cs.c; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Tpo" 
"$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Tpo" 
"$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Tpo"; 
exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia32_cs.c' 
object='test_v4_ia32_cs-v4_ia32_cs.o' libtool=no @AMDEPBACKSLASH@
+@@ -307,7 +306,7 @@
+ test_v4_ia32_cs-v4_ia32_cs.obj: v4_ia32_cs.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia32_cs_CFLAGS) $(CFLAGS) -MT 
test_v4_ia32_cs-v4_ia32_cs.obj -MD -MP -MF 
"$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia32_cs-v4_ia32_cs.obj `if test -f 
'v4_ia32_cs.c'; then $(CYGPATH_W) 'v4_ia32_cs.c'; else $(CYGPATH_W) 
'$(srcdir)/v4_ia32_cs.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Tpo" 
"$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Tpo" 
"$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_v4_ia32_cs-v4_ia32_cs.Tpo"; 
exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia32_cs.c' 
object='test_v4_ia32_cs-v4_ia32_cs.obj' libtool=no @AMDEPBACKSLASH@
+@@ -407,7 +406,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -419,7 +417,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -428,7 +426,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -439,9 +437,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -462,7 +461,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -481,11 +481,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v4-ia32-generic/Makefile.in 
idl4/examples/test/v4-ia32-generic/Makefile.in
+--- idl4-1.0.2/examples/test/v4-ia32-generic/Makefile.in       2003-11-03 
22:41:41.000000000 +0100
++++ idl4/examples/test/v4-ia32-generic/Makefile.in     2005-07-11 
16:13:58.159899376 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -203,6 +204,7 @@
+ 
+ INCLUDES = -I$(TESTDIR)/idl -I$(top_srcdir)/src/include/user -I$(TESTDIR)
+ subdir = examples/test/v4-ia32-generic
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -223,7 +225,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v4_ia32_generic_SOURCES)
+ 
+ all: all-am
+@@ -271,13 +273,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -288,7 +287,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -299,7 +298,7 @@
+ test_v4_ia32_generic-v4_ia32_generic.o: v4_ia32_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia32_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_ia32_generic-v4_ia32_generic.o -MD -MP -MF 
"$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia32_generic-v4_ia32_generic.o `test -f 
'v4_ia32_generic.c' || echo '$(srcdir)/'`v4_ia32_generic.c; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Tpo" 
"$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Tpo" 
"$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia32_generic.c' 
object='test_v4_ia32_generic-v4_ia32_generic.o' libtool=no @AMDEPBACKSLASH@
+@@ -310,7 +309,7 @@
+ test_v4_ia32_generic-v4_ia32_generic.obj: v4_ia32_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia32_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_ia32_generic-v4_ia32_generic.obj -MD -MP -MF 
"$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia32_generic-v4_ia32_generic.obj `if 
test -f 'v4_ia32_generic.c'; then $(CYGPATH_W) 'v4_ia32_generic.c'; else 
$(CYGPATH_W) '$(srcdir)/v4_ia32_generic.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Tpo" 
"$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Tpo" 
"$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_ia32_generic-v4_ia32_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia32_generic.c' 
object='test_v4_ia32_generic-v4_ia32_generic.obj' libtool=no @AMDEPBACKSLASH@
+@@ -410,7 +409,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -422,7 +420,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -431,7 +429,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -442,9 +440,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -465,7 +464,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -484,11 +484,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v4-ia64/Makefile.in 
idl4/examples/test/v4-ia64/Makefile.in
+--- idl4-1.0.2/examples/test/v4-ia64/Makefile.in       2003-11-03 
22:41:42.000000000 +0100
++++ idl4/examples/test/v4-ia64/Makefile.in     2005-07-11 16:13:56.590138016 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -203,6 +204,7 @@
+ 
+ INCLUDES = -I$(top_srcdir)/examples/test/idl -I$(top_srcdir)/src/include/user 
-I$(srcdir)
+ subdir = examples/test/v4-ia64
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -221,7 +223,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v4_ia64_SOURCES)
+ 
+ all: all-am
+@@ -269,13 +271,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -286,7 +285,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -297,7 +296,7 @@
+ test_v4_ia64-v4_ia64.o: v4_ia64.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia64_CFLAGS) $(CFLAGS) -MT 
test_v4_ia64-v4_ia64.o -MD -MP -MF "$(DEPDIR)/test_v4_ia64-v4_ia64.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia64-v4_ia64.o `test -f 'v4_ia64.c' || 
echo '$(srcdir)/'`v4_ia64.c; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia64-v4_ia64.Tpo" 
"$(DEPDIR)/test_v4_ia64-v4_ia64.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia64-v4_ia64.Tpo" 
"$(DEPDIR)/test_v4_ia64-v4_ia64.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_v4_ia64-v4_ia64.Tpo"; exit 
1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia64.c' 
object='test_v4_ia64-v4_ia64.o' libtool=no @AMDEPBACKSLASH@
+@@ -308,7 +307,7 @@
+ test_v4_ia64-v4_ia64.obj: v4_ia64.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia64_CFLAGS) $(CFLAGS) -MT 
test_v4_ia64-v4_ia64.obj -MD -MP -MF "$(DEPDIR)/test_v4_ia64-v4_ia64.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia64-v4_ia64.obj `if test -f 
'v4_ia64.c'; then $(CYGPATH_W) 'v4_ia64.c'; else $(CYGPATH_W) 
'$(srcdir)/v4_ia64.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia64-v4_ia64.Tpo" 
"$(DEPDIR)/test_v4_ia64-v4_ia64.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia64-v4_ia64.Tpo" 
"$(DEPDIR)/test_v4_ia64-v4_ia64.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_v4_ia64-v4_ia64.Tpo"; exit 
1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia64.c' 
object='test_v4_ia64-v4_ia64.obj' libtool=no @AMDEPBACKSLASH@
+@@ -408,7 +407,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -420,7 +418,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -429,7 +427,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -440,9 +438,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -463,7 +462,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -482,11 +482,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v4-ia64-generic/Makefile.in 
idl4/examples/test/v4-ia64-generic/Makefile.in
+--- idl4-1.0.2/examples/test/v4-ia64-generic/Makefile.in       2003-11-03 
22:41:42.000000000 +0100
++++ idl4/examples/test/v4-ia64-generic/Makefile.in     2005-07-11 
16:13:55.805257336 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -204,6 +205,7 @@
+ 
+ INCLUDES = -I$(top_srcdir)/examples/test/idl -I$(top_srcdir)/src/include/user 
-I$(srcdir)
+ subdir = examples/test/v4-ia64-generic
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -224,7 +226,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v4_ia64_generic_SOURCES)
+ 
+ all: all-am
+@@ -272,13 +274,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -289,7 +288,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -300,7 +299,7 @@
+ test_v4_ia64_generic-v4_ia64_generic.o: v4_ia64_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia64_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_ia64_generic-v4_ia64_generic.o -MD -MP -MF 
"$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia64_generic-v4_ia64_generic.o `test -f 
'v4_ia64_generic.c' || echo '$(srcdir)/'`v4_ia64_generic.c; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Tpo" 
"$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Tpo" 
"$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia64_generic.c' 
object='test_v4_ia64_generic-v4_ia64_generic.o' libtool=no @AMDEPBACKSLASH@
+@@ -311,7 +310,7 @@
+ test_v4_ia64_generic-v4_ia64_generic.obj: v4_ia64_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_ia64_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_ia64_generic-v4_ia64_generic.obj -MD -MP -MF 
"$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_ia64_generic-v4_ia64_generic.obj `if 
test -f 'v4_ia64_generic.c'; then $(CYGPATH_W) 'v4_ia64_generic.c'; else 
$(CYGPATH_W) '$(srcdir)/v4_ia64_generic.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Tpo" 
"$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Tpo" 
"$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_ia64_generic-v4_ia64_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_ia64_generic.c' 
object='test_v4_ia64_generic-v4_ia64_generic.obj' libtool=no @AMDEPBACKSLASH@
+@@ -411,7 +410,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -423,7 +421,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -432,7 +430,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -443,9 +441,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -466,7 +465,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -485,11 +485,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v4-mips64-generic/Makefile.in 
idl4/examples/test/v4-mips64-generic/Makefile.in
+--- idl4-1.0.2/examples/test/v4-mips64-generic/Makefile.in     2003-11-03 
22:41:43.000000000 +0100
++++ idl4/examples/test/v4-mips64-generic/Makefile.in   2005-07-11 
16:13:54.221498104 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -206,6 +207,7 @@
+ 
+ INCLUDES = -I$(top_srcdir)/examples/test/idl -I$(top_srcdir)/src/include/user 
-I$(srcdir)
+ subdir = examples/test/v4-mips64-generic
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -227,7 +229,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v4_mips64_generic_SOURCES)
+ 
+ all: all-am
+@@ -275,13 +277,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -292,7 +291,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -303,7 +302,7 @@
+ test_v4_mips64_generic-v4_mips64_generic.o: v4_mips64_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_mips64_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_mips64_generic-v4_mips64_generic.o -MD -MP -MF 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_mips64_generic-v4_mips64_generic.o 
`test -f 'v4_mips64_generic.c' || echo '$(srcdir)/'`v4_mips64_generic.c; \
address@hidden@ then mv 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Tpo" 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Po"; \
address@hidden@ then mv -f 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Tpo" 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_mips64_generic.c' 
object='test_v4_mips64_generic-v4_mips64_generic.o' libtool=no @AMDEPBACKSLASH@
+@@ -314,7 +313,7 @@
+ test_v4_mips64_generic-v4_mips64_generic.obj: v4_mips64_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_mips64_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_mips64_generic-v4_mips64_generic.obj -MD -MP -MF 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_mips64_generic-v4_mips64_generic.obj 
`if test -f 'v4_mips64_generic.c'; then $(CYGPATH_W) 'v4_mips64_generic.c'; 
else $(CYGPATH_W) '$(srcdir)/v4_mips64_generic.c'; fi`; \
address@hidden@ then mv 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Tpo" 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Po"; \
address@hidden@ then mv -f 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Tpo" 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_mips64_generic-v4_mips64_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_mips64_generic.c' 
object='test_v4_mips64_generic-v4_mips64_generic.obj' libtool=no 
@AMDEPBACKSLASH@
+@@ -414,7 +413,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -426,7 +424,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -435,7 +433,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -446,9 +444,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -469,7 +468,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -488,11 +488,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/v4-powerpc-generic/Makefile.in 
idl4/examples/test/v4-powerpc-generic/Makefile.in
+--- idl4-1.0.2/examples/test/v4-powerpc-generic/Makefile.in    2003-11-03 
22:41:43.000000000 +0100
++++ idl4/examples/test/v4-powerpc-generic/Makefile.in  2005-07-11 
16:13:53.423619400 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -205,6 +206,7 @@
+ 
+ INCLUDES = -I$(top_srcdir)/examples/test/idl -I$(top_srcdir)/src/include/user 
-I$(srcdir)
+ subdir = examples/test/v4-powerpc-generic
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -226,7 +228,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_v4_powerpc_generic_SOURCES)
+ 
+ all: all-am
+@@ -274,13 +276,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -291,7 +290,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -302,7 +301,7 @@
+ test_v4_powerpc_generic-v4_powerpc_generic.o: v4_powerpc_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_powerpc_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_powerpc_generic-v4_powerpc_generic.o -MD -MP -MF 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_powerpc_generic-v4_powerpc_generic.o 
`test -f 'v4_powerpc_generic.c' || echo '$(srcdir)/'`v4_powerpc_generic.c; \
address@hidden@ then mv 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Tpo" 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Po"; \
address@hidden@ then mv -f 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Tpo" 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_powerpc_generic.c' 
object='test_v4_powerpc_generic-v4_powerpc_generic.o' libtool=no 
@AMDEPBACKSLASH@
+@@ -313,7 +312,7 @@
+ test_v4_powerpc_generic-v4_powerpc_generic.obj: v4_powerpc_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_v4_powerpc_generic_CFLAGS) $(CFLAGS) -MT 
test_v4_powerpc_generic-v4_powerpc_generic.obj -MD -MP -MF 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_v4_powerpc_generic-v4_powerpc_generic.obj 
`if test -f 'v4_powerpc_generic.c'; then $(CYGPATH_W) 'v4_powerpc_generic.c'; 
else $(CYGPATH_W) '$(srcdir)/v4_powerpc_generic.c'; fi`; \
address@hidden@ then mv 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Tpo" 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Po"; \
address@hidden@ then mv -f 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Tpo" 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_v4_powerpc_generic-v4_powerpc_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='v4_powerpc_generic.c' 
object='test_v4_powerpc_generic-v4_powerpc_generic.obj' libtool=no 
@AMDEPBACKSLASH@
+@@ -413,7 +412,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -425,7 +423,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -434,7 +432,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -445,9 +443,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -468,7 +467,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -487,11 +487,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/x0-arm-generic/Makefile.in 
idl4/examples/test/x0-arm-generic/Makefile.in
+--- idl4-1.0.2/examples/test/x0-arm-generic/Makefile.in        2003-11-03 
22:41:44.000000000 +0100
++++ idl4/examples/test/x0-arm-generic/Makefile.in      2005-07-11 
16:13:59.744658456 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -203,6 +204,7 @@
+ 
+ INCLUDES = -I$(TESTDIR)/idl -I$(top_srcdir)/src/include/user -I$(TESTDIR)
+ subdir = examples/test/x0-arm-generic
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -223,7 +225,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_x0_arm_generic_SOURCES)
+ 
+ all: all-am
+@@ -271,13 +273,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -288,7 +287,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -299,7 +298,7 @@
+ test_x0_arm_generic-x0_arm_generic.o: x0_arm_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_x0_arm_generic_CFLAGS) $(CFLAGS) -MT 
test_x0_arm_generic-x0_arm_generic.o -MD -MP -MF 
"$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_x0_arm_generic-x0_arm_generic.o `test -f 
'x0_arm_generic.c' || echo '$(srcdir)/'`x0_arm_generic.c; \
address@hidden@ then mv "$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Tpo" 
"$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Tpo" 
"$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='x0_arm_generic.c' 
object='test_x0_arm_generic-x0_arm_generic.o' libtool=no @AMDEPBACKSLASH@
+@@ -310,7 +309,7 @@
+ test_x0_arm_generic-x0_arm_generic.obj: x0_arm_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_x0_arm_generic_CFLAGS) $(CFLAGS) -MT 
test_x0_arm_generic-x0_arm_generic.obj -MD -MP -MF 
"$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_x0_arm_generic-x0_arm_generic.obj `if test 
-f 'x0_arm_generic.c'; then $(CYGPATH_W) 'x0_arm_generic.c'; else $(CYGPATH_W) 
'$(srcdir)/x0_arm_generic.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Tpo" 
"$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Tpo" 
"$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_x0_arm_generic-x0_arm_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='x0_arm_generic.c' 
object='test_x0_arm_generic-x0_arm_generic.obj' libtool=no @AMDEPBACKSLASH@
+@@ -410,7 +409,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -422,7 +420,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -431,7 +429,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -442,9 +440,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -465,7 +464,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -484,11 +484,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/x0-ia32/Makefile.in 
idl4/examples/test/x0-ia32/Makefile.in
+--- idl4-1.0.2/examples/test/x0-ia32/Makefile.in       2003-11-03 
22:41:45.000000000 +0100
++++ idl4/examples/test/x0-ia32/Makefile.in     2005-07-11 16:14:01.342415560 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -201,6 +202,7 @@
+ 
+ INCLUDES = -I$(TESTDIR)/idl -I$(top_srcdir)/src/include/user -I$(TESTDIR) 
-I$(HAZELNUT_DIR)/apps/include
+ subdir = examples/test/x0-ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -219,7 +221,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_x0_ia32_SOURCES)
+ 
+ all: all-am
+@@ -267,13 +269,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -284,7 +283,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -295,7 +294,7 @@
+ test_x0_ia32-x0_ia32.o: x0_ia32.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_x0_ia32_CFLAGS) $(CFLAGS) -MT 
test_x0_ia32-x0_ia32.o -MD -MP -MF "$(DEPDIR)/test_x0_ia32-x0_ia32.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_x0_ia32-x0_ia32.o `test -f 'x0_ia32.c' || 
echo '$(srcdir)/'`x0_ia32.c; \
address@hidden@ then mv "$(DEPDIR)/test_x0_ia32-x0_ia32.Tpo" 
"$(DEPDIR)/test_x0_ia32-x0_ia32.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_x0_ia32-x0_ia32.Tpo" 
"$(DEPDIR)/test_x0_ia32-x0_ia32.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_x0_ia32-x0_ia32.Tpo"; exit 
1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='x0_ia32.c' 
object='test_x0_ia32-x0_ia32.o' libtool=no @AMDEPBACKSLASH@
+@@ -306,7 +305,7 @@
+ test_x0_ia32-x0_ia32.obj: x0_ia32.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_x0_ia32_CFLAGS) $(CFLAGS) -MT 
test_x0_ia32-x0_ia32.obj -MD -MP -MF "$(DEPDIR)/test_x0_ia32-x0_ia32.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_x0_ia32-x0_ia32.obj `if test -f 
'x0_ia32.c'; then $(CYGPATH_W) 'x0_ia32.c'; else $(CYGPATH_W) 
'$(srcdir)/x0_ia32.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_x0_ia32-x0_ia32.Tpo" 
"$(DEPDIR)/test_x0_ia32-x0_ia32.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_x0_ia32-x0_ia32.Tpo" 
"$(DEPDIR)/test_x0_ia32-x0_ia32.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/test_x0_ia32-x0_ia32.Tpo"; exit 
1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='x0_ia32.c' 
object='test_x0_ia32-x0_ia32.obj' libtool=no @AMDEPBACKSLASH@
+@@ -406,7 +405,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -418,7 +416,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -427,7 +425,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -438,9 +436,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -461,7 +460,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -480,11 +480,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/test/x0-ia32-generic/Makefile.in 
idl4/examples/test/x0-ia32-generic/Makefile.in
+--- idl4-1.0.2/examples/test/x0-ia32-generic/Makefile.in       2003-11-03 
22:41:45.000000000 +0100
++++ idl4/examples/test/x0-ia32-generic/Makefile.in     2005-07-11 
16:14:00.544536856 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ 
+ bindir = $(TESTSUITE_DIR)
+@@ -201,6 +202,7 @@
+ 
+ INCLUDES = -I$(TESTDIR)/idl -I$(top_srcdir)/src/include/user -I$(TESTDIR) 
-I$(HAZELNUT_DIR)/apps/include
+ subdir = examples/test/x0-ia32-generic
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -221,7 +223,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES =
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(nodist_test_x0_ia32_generic_SOURCES)
+ 
+ all: all-am
+@@ -269,13 +271,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -286,7 +285,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -297,7 +296,7 @@
+ test_x0_ia32_generic-x0_ia32_generic.o: x0_ia32_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_x0_ia32_generic_CFLAGS) $(CFLAGS) -MT 
test_x0_ia32_generic-x0_ia32_generic.o -MD -MP -MF 
"$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_x0_ia32_generic-x0_ia32_generic.o `test -f 
'x0_ia32_generic.c' || echo '$(srcdir)/'`x0_ia32_generic.c; \
address@hidden@ then mv "$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Tpo" 
"$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Tpo" 
"$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='x0_ia32_generic.c' 
object='test_x0_ia32_generic-x0_ia32_generic.o' libtool=no @AMDEPBACKSLASH@
+@@ -308,7 +307,7 @@
+ test_x0_ia32_generic-x0_ia32_generic.obj: x0_ia32_generic.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(test_x0_ia32_generic_CFLAGS) $(CFLAGS) -MT 
test_x0_ia32_generic-x0_ia32_generic.obj -MD -MP -MF 
"$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o test_x0_ia32_generic-x0_ia32_generic.obj `if 
test -f 'x0_ia32_generic.c'; then $(CYGPATH_W) 'x0_ia32_generic.c'; else 
$(CYGPATH_W) '$(srcdir)/x0_ia32_generic.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Tpo" 
"$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Tpo" 
"$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f 
"$(DEPDIR)/test_x0_ia32_generic-x0_ia32_generic.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='x0_ia32_generic.c' 
object='test_x0_ia32_generic-x0_ia32_generic.obj' libtool=no @AMDEPBACKSLASH@
+@@ -408,7 +407,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -420,7 +418,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -429,7 +427,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -440,9 +438,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -463,7 +462,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -482,11 +482,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/examples/weaver/Makefile.in 
idl4/examples/weaver/Makefile.in
+--- idl4-1.0.2/examples/weaver/Makefile.in     2003-11-03 22:41:46.000000000 
+0100
++++ idl4/examples/weaver/Makefile.in   2005-07-11 16:13:09.268332024 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -194,6 +195,7 @@
+ 
+ EXTRA_DIST = example.c WHAT-IS-THIS
+ subdir = examples/weaver
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -214,7 +216,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(weaver_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(weaver_SOURCES)
+ 
+ all: all-am
+@@ -262,13 +264,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -279,7 +278,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -379,7 +378,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -391,7 +389,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -399,7 +397,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -410,9 +408,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -433,7 +432,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -452,11 +452,11 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-binPROGRAMS \
+-      install-data install-data-am install-exec install-exec-am \
+-      install-info install-info-am install-man install-strip \
+-      installcheck installcheck-am installdirs maintainer-clean \
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-binPROGRAMS install-data \
++      install-data-am install-exec install-exec-am install-info \
++      install-info-am install-man install-strip installcheck \
++      installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-binPROGRAMS uninstall-info-am
+diff -Naur idl4-1.0.2/Makefile.in idl4/Makefile.in
+--- idl4-1.0.2/Makefile.in     2003-11-03 22:40:32.000000000 +0100
++++ idl4/Makefile.in   2005-07-10 08:06:23.676137432 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -196,10 +197,10 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \
+-      Makefile.in NEWS aclocal.m4 compile config.h.in configure \
+-      configure.in depcomp idl4-config.in install-sh missing \
+-      mkinstalldirs
++DIST_COMMON = README $(srcdir)/Makefile.in $(srcdir)/configure AUTHORS \
++      COPYING ChangeLog INSTALL Makefile.am NEWS TODO aclocal.m4 \
++      compile config.h.in configure configure.in depcomp \
++      idl4-config.in install-sh missing mkinstalldirs
+ all: config.h
+       $(MAKE) $(AM_MAKEFLAGS) all-recursive
+ 
+@@ -341,9 +342,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+@@ -455,12 +462,12 @@
+       $(am__remove_distdir)
+       GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf -
+       chmod -R a-w $(distdir); chmod a+w $(distdir)
+-      mkdir $(distdir)/=build
+-      mkdir $(distdir)/=inst
++      mkdir $(distdir)/_build
++      mkdir $(distdir)/_inst
+       chmod a-w $(distdir)
+-      dc_install_base=`$(am__cd) $(distdir)/=inst && pwd` \
++      dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 
's,^[^:\\/]:[\\/],/,'` \
+         && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+-        && cd $(distdir)/=build \
++        && cd $(distdir)/_build \
+         && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+           $(DISTCHECK_CONFIGURE_FLAGS) \
+         && $(MAKE) $(AM_MAKEFLAGS) \
+@@ -487,7 +494,7 @@
+       @echo "$(distdir).tar.gz is ready for distribution" | \
+         sed 'h;s/./=/g;p;x;p;x'
+ distuninstallcheck:
+-      cd $(distuninstallcheck_dir) \
++      @cd $(distuninstallcheck_dir) \
+       && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+          || { echo "ERROR: files left after uninstall:" ; \
+               if test -n "$(DESTDIR)"; then \
+@@ -496,11 +503,11 @@
+               $(distuninstallcheck_listfiles) ; \
+               exit 1; } >&2
+ distcleancheck: distclean
+-      if test '$(srcdir)' = . ; then \
++      @if test '$(srcdir)' = . ; then \
+         echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+         exit 1 ; \
+       fi
+-      test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
++      @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+         || { echo "ERROR: files left in build directory after distclean:" ; \
+              $(distcleancheck_listfiles) ; \
+              exit 1; } >&2
+@@ -522,7 +529,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -530,7 +537,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+       -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
+ 
+ maintainer-clean-generic:
+@@ -543,6 +550,7 @@
+ 
+ distclean: distclean-recursive
+       -rm -f $(am__CONFIG_DISTCLEAN_FILES)
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-hdr distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -565,7 +573,8 @@
+ 
+ maintainer-clean: maintainer-clean-recursive
+       -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+-      -rm -rf autom4te.cache
++      -rm -rf $(top_srcdir)/autom4te.cache
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/NEWS idl4/NEWS
+--- idl4-1.0.2/NEWS    2002-07-31 15:54:12.000000000 +0200
++++ idl4/NEWS  2005-07-12 21:45:10.361806032 +0200
+@@ -1,3 +1,48 @@
++patch by ness
++  - BE    : new CBEInterface_gnu and CBEOperation_gnu
++            with some overwritten virtual functions,
++            a new cross visitor (everything needed for
++            V4_GNU)
++  - V4_GNU: new interface (for use with GNU Hurd/L4)
++            This is very rudimentary. No exceptions are
++            supported, no data larger then 32 bit (shouldn't
++            be hard to change), no strings, no fpages, no ...
++            I skipped the implicit _env parameter, since
++            the implementation doesn't use it.
++            I added a new implicit parameter _cap, because of
++            every IPC uses capabilities in hurd.
++  - command line options:
++    --make-depend [-M]: create make compliant dependencies
++                        using the compiler (this creates a
++                        temporary file including all imported
++                        files and calls the compiler -MM,
++                        afterwards the temporary file is
++                        deleted)
++    --compiler [-C]   : allws to specify the compiler command
++                        (standard is gcc if mapping is C, g++
++                        if mapping is C++). All include options
++                        given to idl4 are given to the compiler
++                        call (as -I...), too (anything else
++                        wouldn't make sense, IMHO)
++    --user-types [-T] : in principle this an other way to handle
++                        import directives in the .idl files. See
++                        the CHangeLog for longer explination of
++                        why I implemented that. Here I'll list
++                        the issues:
++                          - all types are assumed to be trans-
++                            fered by copying them
++                          - parser.yy is not yet hacked to accept
++                            imported structures (shouldn't be hard
++                            to change [only enlarge the point
++                            structures [struct ...] are parsed to
++                            let them look up (see scoped_name, or
++                            so)], but I'm not a yacc/bison geek)
++                        This creates a temporary file that includes
++                        all imported files and (as compiled binary)
++                        prints size an alignment of the unknown
++                        types. This file is compiled and executed
++                        and it's output is parsed.
++
+ 0.9.1
+   - BE: Visual debugging
+   - V4: New backend
+diff -Naur idl4-1.0.2/src/aoi/aoi.cc idl4/src/aoi/aoi.cc
+--- idl4-1.0.2/src/aoi/aoi.cc  2003-04-08 15:54:09.000000000 +0200
++++ idl4/src/aoi/aoi.cc        2005-07-10 14:27:58.477161584 +0200
+@@ -2,6 +2,7 @@
+ #include <string.h>
+ 
+ #include "aoi.h"
++#include <ms.h>
+ 
+ int semanticErrors = 0;
+ 
+@@ -157,7 +158,6 @@
+   tmp = localLookup(identifier, symbolType);
+   if ((!tmp) && parent)
+     tmp = ((CAoiScope*)parent)->lookupSymbol(identifier, symbolType);
+-    
+   return tmp;  
+ }
+ 
+@@ -199,7 +199,7 @@
+     
+   switch (symbolType)
+     {
+-      case SYM_TYPE      : return types->getByName(identifier);
++      case SYM_TYPE:  return types->getByName(identifier);
+       case SYM_CONSTANT  : return constants->getByName(identifier);
+       case SYM_OPERATION : return operations->getByName(identifier);
+       case SYM_ATTRIBUTE : return attributes->getByName(identifier);
+diff -Naur idl4-1.0.2/src/aoi/check.cc idl4/src/aoi/check.cc
+--- idl4-1.0.2/src/aoi/check.cc        2003-02-14 16:01:41.000000000 +0100
++++ idl4/src/aoi/check.cc      2005-07-10 14:57:37.123766200 +0200
+@@ -407,3 +407,11 @@
+   assert(peer->lineNo>=0);
+   assert(peer->pos>=0);
+ }
++
++void CAoiCheckVisitor::visit(CAoiUserType *peer)
++{
++      //printf("%s\n",peer->name);
++      assert(peer->name);
++      assert(globals.types[peer->name]->getSize()!=0);
++      assert(globals.types[peer->name]->getAlign()!=0);
++}
+diff -Naur idl4-1.0.2/src/aoi/dump.cc idl4/src/aoi/dump.cc
+--- idl4-1.0.2/src/aoi/dump.cc 2003-02-14 16:01:41.000000000 +0100
++++ idl4/src/aoi/dump.cc       2005-07-10 14:57:49.950816192 +0200
+@@ -408,3 +408,8 @@
+ {
+   println("CAoiCustomType: %s", peer->name);
+ }
++
++void CAoiDumpVisitor::visit(CAoiUserType *peer)
++{
++  println("CAoiUserType: %s,%i", 
peer->name,globals.types[peer->name]->getSize());
++}
+diff -Naur idl4-1.0.2/src/aoi/Makefile.in idl4/src/aoi/Makefile.in
+--- idl4-1.0.2/src/aoi/Makefile.in     2003-11-03 22:41:47.000000000 +0100
++++ idl4/src/aoi/Makefile.in   2005-07-10 08:06:28.577392328 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ noinst_LIBRARIES = libaoi.a
+ libaoi_a_SOURCES = aoi.cc check.cc dump.cc visitor.cc
+ subdir = src/aoi
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -201,7 +203,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libaoi_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libaoi_a_SOURCES)
+ 
+ all: all-am
+@@ -234,13 +236,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -251,7 +250,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -350,7 +349,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -362,7 +360,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -370,7 +368,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -381,9 +379,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -404,7 +403,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -423,14 +423,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/aoi/visitor.cc idl4/src/aoi/visitor.cc
+--- idl4-1.0.2/src/aoi/visitor.cc      2002-10-30 12:25:23.000000000 +0100
++++ idl4/src/aoi/visitor.cc    2005-07-10 13:47:21.105629224 +0200
+@@ -83,7 +83,13 @@
+ {
+   worker->visit(this);
+ }
++
++void CAoiUserType::accept(CAoiVisitor *worker)
++{
++  worker->visit(this);
++}
+   
++
+ void CAoiUnionType::accept(CAoiVisitor *worker)
+ 
+ {
+diff -Naur idl4-1.0.2/src/arch/Makefile.am idl4/src/arch/Makefile.am
+--- idl4-1.0.2/src/arch/Makefile.am    2002-07-22 15:58:21.000000000 +0200
++++ idl4/src/arch/Makefile.am  2005-07-10 08:05:39.431863584 +0200
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+ 
+-SUBDIRS=              v2 v4 x0
++SUBDIRS=              v2 v4 x0 v4_gnu
+ 
+ noinst_LIBRARIES=     libarch.a
+ libarch_a_SOURCES=    dummy.cc list.cc tools.cc
+diff -Naur idl4-1.0.2/src/arch/Makefile.in idl4/src/arch/Makefile.in
+--- idl4-1.0.2/src/arch/Makefile.in    2003-11-03 22:41:47.000000000 +0100
++++ idl4/src/arch/Makefile.in  2005-07-10 08:06:30.907038168 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -176,11 +177,12 @@
+ sysconfdir = @sysconfdir@
+ target_alias = @target_alias@
+ 
+-SUBDIRS = v2 v4 x0
++SUBDIRS = v2 v4 x0 v4_gnu
+ 
+ noinst_LIBRARIES = libarch.a
+ libarch_a_SOURCES = dummy.cc list.cc tools.cc
+ subdir = src/arch
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -208,7 +210,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ SOURCES = $(libarch_a_SOURCES)
+ 
+@@ -241,13 +243,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -258,7 +257,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -347,9 +346,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -446,7 +451,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -454,7 +459,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -465,9 +470,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-recursive
+ 
+@@ -488,7 +494,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+@@ -509,10 +516,10 @@
+ 
+ .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+       clean-generic clean-noinstLIBRARIES clean-recursive ctags \
+-      ctags-recursive distclean distclean-compile distclean-depend \
+-      distclean-generic distclean-recursive distclean-tags distdir \
+-      dvi dvi-am dvi-recursive info info-am info-recursive install \
+-      install-am install-data install-data-am install-data-recursive \
++      ctags-recursive distclean distclean-compile distclean-generic \
++      distclean-recursive distclean-tags distdir dvi dvi-am \
++      dvi-recursive info info-am info-recursive install install-am \
++      install-data install-data-am install-data-recursive \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+diff -Naur idl4-1.0.2/src/arch/v2/ia32/Makefile.in 
idl4/src/arch/v2/ia32/Makefile.in
+--- idl4-1.0.2/src/arch/v2/ia32/Makefile.in    2003-11-03 22:41:48.000000000 
+0100
++++ idl4/src/arch/v2/ia32/Makefile.in  2005-07-10 08:06:32.365816400 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ noinst_LIBRARIES = libv2i.a
+ libv2i_a_SOURCES = ms.cc
+ subdir = src/arch/v2/ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -199,7 +201,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libv2i_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libv2i_a_SOURCES)
+ 
+ all: all-am
+@@ -229,13 +231,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -246,7 +245,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -345,7 +344,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -357,7 +355,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -365,7 +363,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -376,9 +374,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -399,7 +398,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -418,14 +418,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/arch/v2/Makefile.in idl4/src/arch/v2/Makefile.in
+--- idl4-1.0.2/src/arch/v2/Makefile.in 2003-11-03 22:41:48.000000000 +0100
++++ idl4/src/arch/v2/Makefile.in       2005-07-10 08:06:31.637927056 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -181,6 +182,7 @@
+ noinst_LIBRARIES = libv2.a
+ libv2_a_SOURCES = ms.cc
+ subdir = src/arch/v2
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -207,7 +209,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ SOURCES = $(libv2_a_SOURCES)
+ 
+@@ -238,13 +240,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -255,7 +254,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -344,9 +343,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -443,7 +448,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -451,7 +456,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -462,9 +467,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-recursive
+ 
+@@ -485,7 +491,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+@@ -506,10 +513,10 @@
+ 
+ .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+       clean-generic clean-noinstLIBRARIES clean-recursive ctags \
+-      ctags-recursive distclean distclean-compile distclean-depend \
+-      distclean-generic distclean-recursive distclean-tags distdir \
+-      dvi dvi-am dvi-recursive info info-am info-recursive install \
+-      install-am install-data install-data-am install-data-recursive \
++      ctags-recursive distclean distclean-compile distclean-generic \
++      distclean-recursive distclean-tags distdir dvi dvi-am \
++      dvi-recursive info info-am info-recursive install install-am \
++      install-data install-data-am install-data-recursive \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+diff -Naur idl4-1.0.2/src/arch/v4/ia32/Makefile.in 
idl4/src/arch/v4/ia32/Makefile.in
+--- idl4-1.0.2/src/arch/v4/ia32/Makefile.in    2003-11-03 22:41:49.000000000 
+0100
++++ idl4/src/arch/v4/ia32/Makefile.in  2005-07-10 08:06:34.854438072 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ noinst_LIBRARIES = libv4i.a
+ libv4i_a_SOURCES = clientcall.cc ms.cc
+ subdir = src/arch/v4/ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -199,7 +201,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libv4i_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libv4i_a_SOURCES)
+ 
+ all: all-am
+@@ -230,13 +232,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -247,7 +246,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -346,7 +345,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -358,7 +356,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -366,7 +364,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -377,9 +375,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -400,7 +399,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -419,14 +419,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/arch/v4/ia32/ms.cc idl4/src/arch/v4/ia32/ms.cc
+--- idl4-1.0.2/src/arch/v4/ia32/ms.cc  2003-11-07 01:00:49.000000000 +0100
++++ idl4/src/arch/v4/ia32/ms.cc        2005-07-10 08:05:39.435862976 +0200
+@@ -376,3 +376,16 @@
+   
+   return result;
+ }
++
++//change by ness
++CASTBase *CMSConnectionI4::buildServerWrapper(CASTIdentifier *key, 
CASTCompoundStatement *compound)
++{
++  CASTIdentifier *wrapperIdentifier = key->clone();
++  wrapperIdentifier->addPrefix("service_");
++  
++  return getWrapperReturnType()->buildDeclaration( 
++    new CASTDeclarator(wrapperIdentifier, 
++      buildWrapperParams(key), NULL, NULL, NULL, buildWrapperAttributes()),
++    compound
++  );
++};
+diff -Naur idl4-1.0.2/src/arch/v4/ia64/Makefile.in 
idl4/src/arch/v4/ia64/Makefile.in
+--- idl4-1.0.2/src/arch/v4/ia64/Makefile.in    2003-11-03 22:41:50.000000000 
+0100
++++ idl4/src/arch/v4/ia64/Makefile.in  2005-07-10 08:06:37.393052144 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ noinst_LIBRARIES = libv4m.a
+ libv4m_a_SOURCES = ms.cc
+ subdir = src/arch/v4/ia64
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -199,7 +201,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libv4m_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libv4m_a_SOURCES)
+ 
+ all: all-am
+@@ -229,13 +231,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -246,7 +245,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -345,7 +344,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -357,7 +355,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -365,7 +363,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -376,9 +374,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -399,7 +398,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -418,14 +418,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/arch/v4/Makefile.in idl4/src/arch/v4/Makefile.in
+--- idl4-1.0.2/src/arch/v4/Makefile.in 2003-11-03 22:41:49.000000000 +0100
++++ idl4/src/arch/v4/Makefile.in       2005-07-10 08:06:34.121549488 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -181,6 +182,7 @@
+ noinst_LIBRARIES = libv4.a
+ libv4_a_SOURCES = clientcall.cc fcc.cc fmc.cc ms.cc optimizer.cc 
serverloop.cc vcc.cc
+ subdir = src/arch/v4
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -212,7 +214,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ SOURCES = $(libv4_a_SOURCES)
+ 
+@@ -249,13 +251,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -266,7 +265,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -355,9 +354,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -454,7 +459,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -462,7 +467,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -473,9 +478,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-recursive
+ 
+@@ -496,7 +502,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+@@ -517,10 +524,10 @@
+ 
+ .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+       clean-generic clean-noinstLIBRARIES clean-recursive ctags \
+-      ctags-recursive distclean distclean-compile distclean-depend \
+-      distclean-generic distclean-recursive distclean-tags distdir \
+-      dvi dvi-am dvi-recursive info info-am info-recursive install \
+-      install-am install-data install-data-am install-data-recursive \
++      ctags-recursive distclean distclean-compile distclean-generic \
++      distclean-recursive distclean-tags distdir dvi dvi-am \
++      dvi-recursive info info-am info-recursive install install-am \
++      install-data install-data-am install-data-recursive \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+diff -Naur idl4-1.0.2/src/arch/v4_gnu/be.cc idl4/src/arch/v4_gnu/be.cc
+--- idl4-1.0.2/src/arch/v4_gnu/be.cc   1970-01-01 01:00:00.000000000 +0100
++++ idl4/src/arch/v4_gnu/be.cc 2005-07-13 17:08:43.008546472 +0200
+@@ -0,0 +1,880 @@
++#include <arch/v4_gnu.h>
++
++#include "be.h"
++#include "ops.h"
++#define dprintln(a...) do { if (debug_mode&DEBUG_GENERATOR) println(a); } 
while (0)
++#define prependStatement(a, b) do { CASTStatement *pre = (b); addTo(pre, 
(a)); (a) = (pre); } while (0)
++
++static char contractBuffer[20000];
++
++CASTStatement *CBEInterface_gnu::buildReferenceDefinition()
++{    
++  return NULL;
++}
++
++//################################################################################
++//################################################################################
++//################################################################################
++CASTStatement *CBEOperation_gnu::buildClientHeader()
++{
++      dprintln("*** Building client header for %s", aoi->name);
++
++      assert(connection);
++
++      forAll(aoi->exceptions,
++              warning("Not implemented: Exceptions")
++      );
++
++      /* Build a list of all parameters, including the implicit ones */
++      
++      CASTDeclaration *parameters = NULL;
++      
++      bool hasImplicitHandle = false;
++      forAll(aoi->parameters, 
++      if (getParameter(item)->getFirstMemberWithProperty("handle")) 
++              hasImplicitHandle = true
++      );
++      
++      if (!hasImplicitHandle)
++      addTo(parameters, new CASTDeclaration(
++              new CASTTypeSpecifier(new CASTIdentifier("idl4_thread_id_t")),
++              knitDeclarator("_server"))
++      );
++    
++      addTo(parameters,new CASTDeclaration(
++              new CASTTypeSpecifier(new CASTIdentifier("idl4_cap_handle_t")),
++                      knitDeclarator("_cap"))
++      );
++      
++      forAll(aoi->parameters, addTo(parameters, 
getParameter(item)->buildDeclaration()));
++      
++      dprintln(" +  Declaring transfer buffer");
++
++      /* Declare local variables and the transfer buffer */
++
++      CASTStatement *declStatements = NULL;
++
++      CBEVarSource *varSource = new CBEVarSource();
++      forAllOps(marshalOps, item->buildClientDeclarations(varSource));
++      if (returnOp)
++              returnOp->buildClientDeclarations(varSource);
++      addTo(declStatements, varSource->declareAll());
++
++      dprintln(" +  Declaring client variables");
++  
++      addTo(declStatements, 
connection->buildClientLocalVars(buildIdentifier()));
++      if (!aoi->returnType->isVoid())
++      {
++              CASTDeclarator *rv = new CASTDeclarator(new 
CASTIdentifier("__retval"));
++              
rv->addIndir(getType(aoi->returnType)->getArgIndirLevel(RETVAL));
++              CASTDeclaration *dclr = 
getType(aoi->returnType)->buildDeclaration(rv);
++              addTo(declStatements, new CASTDeclarationStatement(dclr));
++      }
++
++      /* Translate all marshal operations (they were collected during 
++       the marshal phase) */
++      
++      dprintln(" +  Translating marshal operartions");
++
++      CASTStatement *marshalStatements = NULL;  
++      forAllOps(marshalOps, addTo(marshalStatements, 
item->buildClientMarshal()));
++      prependStatement(marshalStatements, connection->buildClientInit());
++      if (marshalStatements)
++              prependStatement(marshalStatements, new 
CASTBlockComment("marshal"));
++
++      /* Translate all unmarshal operations (see above) */
++      
++      dprintln(" +  Translating unmarshal operations");
++      
++      /*CASTStatement *setExceptionStatements = new CASTIfStatement(
++              new CASTBinaryOp("!=",
++                      new CASTIdentifier("_env"),
++                      new CASTIntegerConstant(0)),
++              connection->buildClientResultAssignment(
++                      new CASTIdentifier("_env"),
++        (aoi->flags&FLAG_ONEWAY) ? (CASTExpression*)new 
CASTIntegerConstant(0) : (CASTExpression*)new CASTIdentifier("_exception"))
++      );*/
++
++      CASTStatement *unmarshalStatements = NULL;  
++      forAllOps(marshalOps, addTo(unmarshalStatements, 
item->buildClientUnmarshal()));
++      addTo(unmarshalStatements, connection->buildClientFinish());
++  
++      CASTStatement *getStatusStatements = NULL;
++      /*if (!(aoi->flags&FLAG_ONEWAY))
++              addTo(getStatusStatements, 
connection->assignFCCDataFromBuffer(CHANNEL_OUT, 0, new 
CASTIdentifier("_exception")));*/
++
++      if (unmarshalStatements)
++      {
++              prependStatement(unmarshalStatements, new 
CASTBlockComment("unmarshal"));
++              unmarshalStatements = new CASTIfStatement(
++                      new CASTFunctionOp(
++                              new CASTIdentifier("IDL4_EXPECT_TRUE"),
++                              connection->buildClientCallSucceeded()),
++                      new CASTCompoundStatement(
++                              unmarshalStatements)
++              );
++      }   
++
++  /* Return normally */
++
++      CASTStatement *returnStatements = NULL;
++      if (returnOp)
++      {
++              //addTo(returnStatements, returnOp->buildClientUnmarshal());    
                //we transfer the retval in the label
++              addTo(returnStatements,new CASTExpressionStatement(new 
CASTBinaryOp("=",
++                      new CASTIdentifier("__retval"),
++                      connection->buildLabelExpr())));
++              addTo(returnStatements, new CASTReturnStatement(new 
CASTIdentifier("__retval")));
++      }
++
++  if (returnStatements)
++    prependStatement(returnStatements, new CASTBlockComment("return 
normally"));
++
++  /* Construct the IPC invocation. Note that both marshal and unmarshal
++     operations have to be constructed before this point, because the
++     CMSConnection needs to know what will go into the registers! */
++
++  CAoiInterface *parent = (CAoiInterface*)aoi->parent;
++  int fid = getID();
++  
++  assert(fid!=UNKNOWN);
++  assert(parent);
++  assert(parent->iid!=UNKNOWN);
++  
++  CASTExpression *pathToHandle = new CASTIdentifier("_service");
++  forAll(aoi->parameters, 
++    {
++      CBEParameter *param = getParameter(item);
++      if (param->getFirstMemberWithProperty("handle"))
++        {
++          pathToHandle = param->buildIdentifier();
++          for (int i=0;i<param->getArgIndirLevel();i++)
++            pathToHandle = new CASTUnaryOp("*", pathToHandle);
++            
++          while (param!=param->getFirstMemberWithProperty("handle"))
++            {
++              param = param->getFirstMemberWithProperty("handle");
++              pathToHandle = new CASTBinaryOp(".", pathToHandle, 
param->buildIdentifier());
++            }
++        }
++    }
++  );
++  
++  CASTStatement *invocationStatements = connection->buildClientCall(
++    pathToHandle,
++    new CASTIdentifier("_env")
++  );
++  
++  if (globals.pre_call_code)
++    prependStatement(invocationStatements, new CASTExpressionStatement(
++      new CASTIdentifier(globals.pre_call_code))
++    );
++  if (globals.post_call_code)
++    addTo(invocationStatements, new CASTExpressionStatement(
++      new CASTIdentifier(globals.post_call_code))
++    );
++  
++  prependStatement(invocationStatements, new CASTBlockComment("invoke IPC"));
++
++  /* Insert all those statements into the stub */
++
++  CASTStatement *statements = NULL;
++  addWithTrailingSpacerTo(statements, declStatements);
++  addWithTrailingSpacerTo(statements, marshalStatements);
++  addTo(statements, invocationStatements);
++  addWithLeadingSpacerTo(statements, getStatusStatements);
++  addWithLeadingSpacerTo(statements, unmarshalStatements);
++  //addWithLeadingSpacerTo(statements, setExceptionStatements);
++  addWithLeadingSpacerTo(statements, returnStatements);
++
++  /* From the pieces collected above, build the stub declaration */
++
++  CASTCompoundStatement *compound = new CASTCompoundStatement(statements);
++
++  CASTDeclarator *declarator = new CASTDeclarator(buildIdentifier(), 
parameters);
++  declarator->addIndir(getType(aoi->returnType)->getArgIndirLevel(RETVAL));
++  CASTDeclaration *declaration = 
getType(aoi->returnType)->buildDeclaration(declarator, compound);
++  
++  declaration->addSpecifier(new CASTStorageClassSpecifier("inline"));
++  declaration->addSpecifier(new CASTStorageClassSpecifier("static"));
++
++  /* Build a comment with the transfer contract */
++  
++  enableStringMode(contractBuffer, sizeof(contractBuffer)-1);
++  connection->dump();
++  disableStringMode();
++ 
++  /* Return the whole thing */
++  
++  CASTIdentifier *defName = buildIdentifier();
++  defName->addPrefix("_funcdef___");
++  
++  CASTStatement *funcDef = NULL;
++  addTo(funcDef, new CASTPreprocDefine(defName, ANONYMOUS));
++  addTo(funcDef, new CASTDeclarationStatement(declaration));
++  
++  CASTStatement *result = NULL;
++  if (contractBuffer[0])
++    addTo(result, new CASTComment(mprintf(contractBuffer)));
++  
++  addTo(result, new CASTPreprocConditional(
++    new CASTUnaryOp("!", new CASTFunctionOp(new CASTIdentifier("defined"), 
defName->clone())), funcDef)
++  );
++
++  addTo(result, new CASTSpacer());
++
++  dprintln("Completed client header for %s", aoi->name);
++ 
++  return result;
++}
++
++//################################################################################
++//################################################################################
++//################################################################################
++CASTStatement *CBEOperation_gnu::buildServerHeader()
++{
++      if(aoi->flags&FLAG_ONEWAY)
++              panic("Oneway functions aren't supported yet!");
++      CASTStatement *result = NULL;
++
++      assert(connection);
++
++      /* Declare the necessary types */
++
++      addWithTrailingSpacerTo(result, 
++              connection->buildServerDeclarations(buildIdentifier())
++      );
++
++      /* Generate a forward declaration for the implementation function */
++      
++      CASTDeclaration *parameters = NULL;
++      addTo(parameters, new CASTDeclaration(
++              new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_rpc_context_t")),
++              knitDeclarator("_ctx"))
++      );
++    
++      forAll(aoi->parameters, addTo(parameters, 
getParameter(item)->buildDeclaration()));
++      
++      //We dont' need..
++      /*addTo(parameters, new CASTDeclaration(
++      new CASTTypeSpecifier(new CASTIdentifier("idl4_server_environment")),
++      new CASTDeclarator(new CASTIdentifier("_env"), new CASTPointer(1)))
++      );*/
++
++      CASTIdentifier *implementationName = buildIdentifier();
++      implementationName->addPostfix("_implementation");
++      
++      CASTDeclarator *declarator = new CASTDeclarator(implementationName, 
parameters);
++      
declarator->addIndir(getType(aoi->returnType)->getArgIndirLevel(RETVAL));
++      
++      CASTDeclaration *declaration = 
getType(aoi->returnType)->buildDeclaration(declarator);
++      declaration->addSpecifier(new CASTStorageClassSpecifier("inline"));
++      
++      addWithTrailingSpacerTo(result, new 
CASTDeclarationStatement(declaration));
++
++      /* Add a description of the buffer layout to the header file */
++      
++      enableStringMode(contractBuffer, sizeof(contractBuffer)-1);
++      connection->dump();
++      disableStringMode();
++      addTo(result, new CASTComment(mprintf(contractBuffer)));
++  
++  /* Create the declaration macro */
++  
++  addTo(result, new CASTPreprocDefine(
++    new CASTFunctionOp(
++      buildWrapperName(true),
++      new CASTIdentifier("_func")),
++    connection->buildServerWrapper(buildIdentifier(), buildServerStub()))
++  );  
++  
++  /* Better support for CPP magic (the Neal macro) */
++  
++  addWithLeadingSpacerTo(result, new CASTPreprocDefine(
++    buildWrapperName(false),
++    buildWrapperName(true))
++  );
++     
++  return result;
++}  
++
++//################################################################################
++//################################################################################
++//################################################################################
++CASTCompoundStatement *CBEOperation_gnu::buildServerStub()
++{
++      /* Translate all marshal operations (they were collected during 
++       the marshal phase) */
++      
++      assert(connection);
++      
++      dprintln("Building server stub for %s", aoi->name);
++      
++      CASTStatement *declStatements = NULL;
++      CASTStatement *unmarshalStatements = NULL;  
++      CBEVarSource *varSource = new CBEVarSource();
++  
++      forAllOps(marshalOps, 
++      {
++        item->buildServerDeclarations(varSource);
++        addTo(unmarshalStatements, item->buildServerUnmarshal());
++      });
++      
++      if (!aoi->returnType->isVoid())
++      {
++              CASTDeclarator *rv = new CASTDeclarator(new 
CASTIdentifier("__retval"));
++              
rv->addIndir(getType(aoi->returnType)->getArgIndirLevel(RETVAL));
++              CASTDeclaration *dclr = 
getType(aoi->returnType)->buildDeclaration(rv);
++              addTo(declStatements, new CASTDeclarationStatement(dclr));
++      }
++      //if (returnOp)                                                         
                                                                        //we 
don't need that
++      //  returnOp->buildServerDeclarations(varSource);
++       
++      if (unmarshalStatements)
++              prependStatement(unmarshalStatements, new 
CASTBlockComment("unmarshal"));
++
++  /************************************************************************/
++
++  CASTStatement *positionCheckStatements = NULL;
++
++  if (debug_mode & DEBUG_TESTSUITE)
++    {
++      positionCheckStatements = connection->buildServerTestStructural();
++      if (positionCheckStatements)
++        prependStatement(positionCheckStatements, new 
CASTBlockComment("position check"));
++    }
++
++  /************************************************************************/
++
++  /*CASTStatement *envInitStatements = NULL;
++  
++  addTo(envInitStatements, new CASTExpressionStatement(
++    new CASTBinaryOp("=",
++      new CASTBinaryOp(".",
++        new CASTIdentifier("_env"),
++        new CASTIdentifier("_action")),
++      new CASTIntegerConstant(0)))
++  );  */
++
++  /************************************************************************/
++  
++  CASTStatement *invocationStatements = NULL;
++  CASTStatement *debugOutStatements = NULL;
++  CASTStatement *debugInStatements = NULL;
++  CASTStatement *itransStatements = NULL;
++  CASTStatement *otransStatements = NULL;
++  CASTExpression *arguments = NULL;
++  bool transUsed = false;
++  
++  addTo(arguments, connection->buildServerCallerID());
++  forAll(aoi->parameters,
++    {
++      CAoiParameter *thisParam = (CAoiParameter*)item;
++      CBEMarshalOp *thisOp = marshalOps;
++      bool found = false;
++      
++      assert(thisOp); // we seem to have parameters, after all
++      do {
++           if (thisOp->isResponsibleFor(getParameter(thisParam)))
++             { 
++               found = true;
++               break;
++             }
++           thisOp = thisOp->next;
++         } while (thisOp!=marshalOps);
++      if (!found)
++        panic("Marshal operation not found for parameter: %s", 
thisParam->name);
++      
++      CASTExpression *thisArg = 
thisOp->buildServerArg(getParameter(thisParam));
++      assert(thisArg);
++      
++      if ((debug_mode & DEBUG_VISUAL) && (thisParam->flags & FLAG_IN))
++        addTo(debugInStatements,
++          getParameter(thisParam)->buildTestDisplayStmt(buildTestKeyPrefix(), 
varSource, thisArg->clone())
++        );
++        
++      if ((debug_mode & DEBUG_VISUAL) && (thisParam->flags & FLAG_OUT))
++        addTo(debugOutStatements,
++          getParameter(thisParam)->buildTestDisplayStmt(buildTestKeyPrefix(), 
varSource, thisArg->clone())
++        );
++          
++      for (int i=0;i<getParameter(thisParam)->getArgIndirLevel();i++)
++        thisArg = new CASTUnaryOp("&", thisArg);
++        
++      addTo(arguments, thisArg);
++      
++      CAoiProperty *itrans = thisParam->getProperty("itrans");
++      CAoiProperty *otrans = thisParam->getProperty("otrans");
++
++      if (itrans)
++        {
++          assert(itrans->refValue);
++          CASTStatement *itransInvocation = new CASTExpressionStatement(
++            new CASTFunctionOp(
++              new CASTIdentifier(itrans->refValue),
++              knitExprList(
++                connection->buildServerCallerID(),
++                thisArg->clone(),
++                new CASTUnaryOp("&",
++                  new CASTIdentifier("_env"))
++                ))
++          );
++          
++          if (transUsed)
++            itransInvocation = new CASTIfStatement(
++              new CASTFunctionOp(
++                new CASTIdentifier("IDL4_EXPECT_TRUE"),
++                new CASTBinaryOp("==",
++                  new CASTBinaryOp(".",
++                    new CASTIdentifier("_env"),
++                    new CASTIdentifier("_action")),
++                  new CASTIntegerConstant(0))),
++              itransInvocation
++            );
++            
++          addTo(itransStatements, itransInvocation);
++          transUsed = true;
++        }  
++
++      if (otrans)
++        {
++          assert(otrans->refValue);
++          CASTStatement *otransInvocation = new CASTExpressionStatement(
++            new CASTFunctionOp(
++              new CASTIdentifier(otrans->refValue),
++              knitExprList(
++                connection->buildServerCallerID(),
++                thisArg->clone(),
++                new CASTUnaryOp("&",
++                  new CASTIdentifier("_env"))
++                ))
++          );
++          
++          otransInvocation = new CASTIfStatement(
++            new CASTFunctionOp(
++              new CASTIdentifier("IDL4_EXPECT_TRUE"),
++              new CASTBinaryOp("==",
++                new CASTBinaryOp(".",
++                  new CASTIdentifier("_env"),
++                  new CASTIdentifier("_action")),
++                new CASTIntegerConstant(0))),
++            otransInvocation
++          );
++            
++          addTo(otransStatements, otransInvocation);
++        }  
++    }
++  );
++  //addTo(arguments, new CASTUnaryOp("&", new CASTIdentifier("_env")));
++
++  if (itransStatements)
++    prependStatement(itransStatements, new CASTBlockComment("apply input 
translations"));
++    
++  if (otransStatements)
++    prependStatement(otransStatements, new CASTBlockComment("apply output 
translations"));
++
++  if (globals.pre_call_code)
++    addTo(itransStatements, new CASTExpressionStatement(
++      new CASTIdentifier(globals.pre_call_code))
++    );
++  if (globals.post_call_code)
++    prependStatement(otransStatements, new CASTExpressionStatement(
++      new CASTIdentifier(globals.post_call_code))
++    );
++
++  CASTExpression *invocation = new CASTFunctionOp(new 
CASTIdentifier("_func"), arguments);
++  if (!aoi->returnType->isVoid())
++    {
++      invocation = new CASTBinaryOp("=",
++        new CASTIdentifier("__retval"),
++        invocation
++      );
++      
++      char nameStr[100];
++      enableStringMode(nameStr, sizeof(nameStr));
++      getType(aoi->returnType)->buildDeclaration(new CASTDeclarator(new 
CASTIdentifier("__retval")))->write();
++      disableStringMode();
++      
++      addTo(debugOutStatements,
++        new CASTExpressionStatement(
++          new CASTFunctionOp(
++            new CASTIdentifier("printf"),
++            new CASTStringConstant(false, mprintf("out %s = ", nameStr))))
++      );
++      
++      /*addTo(debugOutStatements,
++        getType(aoi->returnType)->buildTestDisplayStmt(
++          new CASTIdentifier("__retval"),
++          new CASTIdentifier("__retval"),
++          varSource, RETVAL, 
++          returnOp->buildServerArg(NULL))
++      );*/
++
++      addTo(debugOutStatements,
++        new CASTExpressionStatement(
++          new CASTFunctionOp(
++            new CASTIdentifier("printf"),
++            new CASTStringConstant(false, "\\n")))
++      );
++    }
++
++  addTo(invocationStatements, new CASTBlockComment(mprintf("invoke 
service")));  
++  addTo(declStatements, varSource->declareAll());
++  
++  if (debug_mode&DEBUG_VISUAL)
++    {
++      addTo(invocationStatements, new CASTExpressionStatement(
++        new CASTFunctionOp(
++          new CASTIdentifier("printf"),
++          knitExprList(
++            new CASTStringConstant(false, mprintf("*** Servicing call from 
%%X to %s::%s\\n", ((CAoiScope*)aoi->parent)->scopedName, aoi->name)),
++            new CASTFunctionOp(
++              new CASTIdentifier("idl4_raw_fpage"),
++              connection->buildServerCallerID()
++            ))))
++      );
++      addTo(invocationStatements, debugInStatements);
++      addTo(invocationStatements, new CASTSpacer());
++    }
++
++  CASTStatement *invocationTemp = new CASTExpressionStatement(invocation);
++  if (transUsed)
++    invocationTemp = new CASTIfStatement(
++      new CASTFunctionOp(
++        new CASTIdentifier("IDL4_EXPECT_TRUE"),
++          new CASTBinaryOp("==",
++          new CASTBinaryOp(".",
++            new CASTIdentifier("_env"),
++            new CASTIdentifier("_action")),
++          new CASTIntegerConstant(0))),
++      invocationTemp
++    );
++  
++  addTo(invocationStatements, invocationTemp);
++  
++  if (debug_mode&DEBUG_VISUAL)
++    {
++      addTo(invocationStatements, new CASTSpacer());
++      addTo(invocationStatements, new CASTExpressionStatement(
++        new CASTFunctionOp(
++          new CASTIdentifier("printf"),
++          knitExprList(
++            new CASTStringConstant(false, "--- Return code is %d\\n"),
++              new CASTBinaryOp(".",
++                new CASTIdentifier("_env"),
++                new CASTIdentifier("_action"))
++            )))
++      );
++      addTo(invocationStatements, debugOutStatements);
++    }
++  
++  addTo(invocationStatements, connection->buildServerMarshalInit());
++
++  /************************************************************************/
++
++  CASTStatement *marshalStatements = NULL;
++  if (!(aoi->flags & FLAG_ONEWAY))
++    {
++      //forAllOps(marshalOps, addTo(marshalStatements, 
item->buildServerMarshal()));
++      //if (!aoi->returnType->isVoid())
++      //  addTo(marshalStatements, returnOp->buildServerMarshal());
++      if (marshalStatements)
++        prependStatement(marshalStatements, new CASTBlockComment("marshal"));
++    
++      //addWithLeadingSpacerTo(marshalStatements, new CASTBlockComment("jump 
back"));
++      //addTo(marshalStatements, connection->buildServerBackjump(CHANNEL_OUT, 
new CASTIdentifier("_env")));
++  
++      /*marshalStatements = new CASTIfStatement(
++        new CASTFunctionOp(
++          new CASTIdentifier("IDL4_EXPECT_TRUE"),
++          new CASTBinaryOp("==",
++            new CASTBinaryOp(".",
++              new CASTIdentifier("_env"),
++              new CASTIdentifier("_action")),
++            new CASTIntegerConstant(0))),
++        new CASTCompoundStatement(
++          marshalStatements)
++      );*/
++    }
++
++  /************************************************************************/
++
++  CASTStatement *exceptionStatements = NULL;
++  int channelID = CHANNEL_OUT + 1;
++  
++  forAll(aoi->exceptions,
++    {
++      CBEExceptionType *bExc = getException(((CAoiRef*)item)->ref);
++      CASTStatement *backjump;
++
++      connection->reset();
++      backjump = connection->buildServerBackjump(channelID++, new 
CASTIdentifier("_env"));
++      if (backjump->next != backjump)
++        backjump = new CASTCompoundStatement(backjump);
++      
++      CASTStatement *newBackjump = new CASTIfStatement(
++        new CASTBinaryOp("==",
++          new CASTBinaryOp(".",
++            new CASTIdentifier("_env"),
++            new CASTIdentifier("_action")),
++          new CASTBinaryOp("+",
++            new CASTIdentifier("CORBA_USER_EXCEPTION"),
++            new CASTBinaryOp("<<",
++              bExc->buildID(),
++              new CASTIntegerConstant(8)))),
++        backjump
++      );
++      addWithLeadingSpacerTo(exceptionStatements, newBackjump);
++    }
++  );
++
++  if (exceptionStatements)
++    prependStatement(exceptionStatements, new CASTBlockComment("handle 
exceptions"));
++
++  /************************************************************************/
++
++  /* This must be done last, because the backend might need to allocate
++     additional buffers during marshalling */
++     
++  addTo(declStatements, connection->buildServerLocalVars(buildIdentifier()));
++
++  /************************************************************************/
++
++  
++  CASTStatement *stub = NULL;
++  addWithTrailingSpacerTo(stub, declStatements);
++  //addWithTrailingSpacerTo(stub, envInitStatements);
++  addWithTrailingSpacerTo(stub,connection->buildServerStoreData("_ctx->msg"));
++  addWithTrailingSpacerTo(stub, positionCheckStatements);
++  addWithTrailingSpacerTo(stub, unmarshalStatements);
++  addWithTrailingSpacerTo(stub, itransStatements);
++  addTo(stub, invocationStatements);
++  addWithLeadingSpacerTo(stub, otransStatements);
++  if(!aoi->returnType->isVoid())
++      
addWithLeadingSpacerTo(stub,connection->buildServerAppendData("_ctx->msg","__retval"));
++  else
++      
addWithLeadingSpacerTo(stub,connection->buildServerAppendData("_ctx->msg",0));
++  addWithLeadingSpacerTo(stub, marshalStatements);
++  //addWithLeadingSpacerTo(stub, exceptionStatements);
++  //addWithLeadingSpacerTo(stub, connection->buildServerAbort());             
//we don't abort, if we're here, everything is OK
++  
++  return new CASTCompoundStatement(stub);
++}
++
++//################################################################################
++//################################################################################
++//################################################################################
++CASTStatement *CBEInterface_gnu::buildServerDefinitions()
++{
++  CAoiScope *definitionScope = NULL;
++  CASTStatement *subtree = NULL;
++
++  CASTDeclarator *serverLoopDeclarator = new CASTDeclarator(
++    buildServerFuncName(),
++      new CASTDeclaration(
++              new CASTTypeSpecifier(new CASTIdentifier("idl4_cap_bucket_t")),
++              knitDeclarator("_bucket"))
++  );
++
++  /* We should not assume that server loops can _never_ return */
++  if (debug_mode & DEBUG_TESTSUITE)
++    serverLoopDeclarator->setAttributes(
++      new CASTAttributeSpecifier(
++        new CASTIdentifier("noreturn"))
++    );
++
++  addTo(subtree, new CASTDeclarationStatement(
++    getType(aoiRoot->lookupSymbol("#void", SYM_TYPE))->buildDeclaration(
++      serverLoopDeclarator))
++  );
++    
++  CASTIdentifier *discardFuncName = buildIdentifier();
++  discardFuncName->addPostfix("_discard");
++
++  addTo(subtree, 
++    new CASTDeclarationStatement(
++      getType(aoiRoot->lookupSymbol("#void", SYM_TYPE))->buildDeclaration(
++        new CASTDeclarator(
++          discardFuncName,
++          new CASTDeclaration(
++                      new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_rpc_context_t")),
++                      knitDeclarator("_ctx"))
++        )))
++  );        
++  
++  CASTDeclarator *serverDemDeclarator = new CASTDeclarator(
++    buildServerDemuxerName(),
++      new CASTDeclaration(
++              new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_rpc_context_t")),
++              knitDeclarator("_ctx"))
++  );
++  
++  addTo(subtree, new CASTDeclarationStatement(
++    (new CBEOpaqueType("error_t",globals.word_size, globals.word_size, 
true))->buildDeclaration(
++      serverDemDeclarator))
++  );
++  
/***************************************************************************/
++    if(globals.with_cap_class)
++      {
++              CASTIdentifier *class_init= buildIdentifier();
++              class_init->addPostfix("_init");
++              addTo(subtree, new CASTDeclarationStatement(
++                      new CASTDeclaration(
++                              new CASTTypeSpecifier(new 
CASTIdentifier("error_t")),
++                              new CASTDeclarator(
++                                      class_init,
++                                      new CASTEmptyDeclaration())))
++              );
++        
++              CASTIdentifier *class_alloc= buildIdentifier();
++              class_alloc->addPostfix("_alloc");
++              CASTStatement* class_alloc_statement=NULL;
++              addTo(class_alloc_statement,new CASTBlockComment("do necessary 
changes"));
++              addTo(class_alloc_statement,new CASTReturnStatement(new 
CASTFunctionOp(
++                      new CASTIdentifier("idl4_cap_class_alloc"),
++                      knitExprList(
++                              new CASTUnaryOp("&",buildIdentifier()),
++                              new CASTIdentifier("_r_obj")))
++              ));
++              CASTDeclaration *class_alloc_parameters = NULL;
++              addTo(class_alloc_parameters,new CASTDeclaration(
++                      new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_obj_t*")),
++                              knitDeclarator("_r_obj"))
++              );
++      
++  addTo(subtree, new CASTDeclarationStatement(
++              new CASTDeclaration(
++                      new CASTTypeSpecifier(new CASTIdentifier("error_t")),
++                      new CASTDeclarator(
++                              class_alloc,
++                              class_alloc_parameters)))
++      );
++      };      
++  
/***************************************************************************/
++  addTo(subtree, new CASTSpacer());  
++
++  /* Collect the function pointers. For each ID, we ask the superclasses 
++     for a pointer; it nothing is returned, we insert the discard function */
++  
++  int numVtableElements, iidMin, iidMax, fidMin, fidMax, kidMin, kidMax;
++  numVtableElements = getVtableSize();
++  getIDRange(&iidMin, &iidMax, &fidMin, &fidMax, &kidMin, &kidMax);
++
++  for (int iid=iidMin;iid<=iidMax;iid++)
++    {
++      bool foundFuncWithThisIID = false;
++      definitionScope = NULL;
++      
++      for (int fid=fidMin;fid<=fidMax;fid++)
++        if (getFunctionForID(fid, iid, &definitionScope))
++          foundFuncWithThisIID = true;
++
++      if (foundFuncWithThisIID || (iidMin==iidMax))
++        {
++          CASTExpression *functionPointers = NULL;
++          for (int fid=0;fid<numVtableElements;fid++)
++            {
++              CAoiOperation *thisFunc;
++              CASTExpression *newElement;
++              
++              definitionScope = NULL;
++              thisFunc = getFunctionForID(fid, iid, &definitionScope);
++              if (thisFunc != NULL)
++                {
++                  CASTIdentifier *funcName = buildIdentifier();
++                  funcName->addPrefix("service_");
++                  funcName->addPostfix("_");
++                  funcName->addPostfix(thisFunc->name);
++                  newElement = funcName;
++                } else newElement = discardFuncName->clone();
++                
++              if (globals.mapping == MAPPING_CXX)
++                newElement = new CASTUnaryOp("(void*)&", newElement);
++              
++              addTo(functionPointers, newElement);
++            }
++            
++         addTo(subtree, new CASTPreprocDefine(
++           (iidMin==iidMax) ? buildDefaultVtableName() : 
buildVtableName(iid), 
++           new CASTArrayInitializer(functionPointers))
++         );  
++        }
++    }
++    
++  if (iidMin!=iidMax)
++    {
++      CASTExpression *functionPointers = NULL;
++      for (int fid=0;fid<numVtableElements;fid++)
++        addTo(functionPointers, new CASTUnaryOp("(void*)&", 
discardFuncName->clone()));
++        
++      addTo(subtree, new CASTPreprocDefine(
++        buildVtableName(UNKNOWN),
++        new CASTArrayInitializer(functionPointers))
++      );
++    }
++    
++  CASTIdentifier *vtableSizeMacro = buildIdentifier();
++  vtableSizeMacro->capitalize();
++  vtableSizeMacro->addPostfix("_DEFAULT_VTABLE_SIZE");
++  addTo(subtree, new CASTPreprocDefine(
++    vtableSizeMacro,
++    new CASTIntegerConstant(getVtableSize()))
++  );
++
++  CASTIdentifier *maxFidMacro = buildIdentifier();
++  maxFidMacro->capitalize();
++  maxFidMacro->addPostfix("_MAX_FID");
++  addTo(subtree, new CASTPreprocDefine(
++    maxFidMacro,
++    new CASTIntegerConstant(fidMax))
++  );
++
++  if ((kidMin!=kidMax) || getFunctionForID(kidMin, IID_KERNEL, 
&definitionScope))
++    {
++      CASTExpression *functionPointers = NULL;
++      int maxKid = getKtableSize();
++      
++      for (int kid=0;kid<maxKid;kid++)
++        {
++          CASTExpression *newElement;
++          CAoiOperation *thisFunc;
++          thisFunc = getFunctionForID(kid, IID_KERNEL, &definitionScope);
++          if (thisFunc != NULL)
++            {
++              CASTIdentifier *funcName = buildIdentifier();
++              funcName->addPrefix("service_");
++              funcName->addPostfix("_");
++              funcName->addPostfix(thisFunc->name);
++              newElement = funcName;
++            } else newElement = discardFuncName->clone();
++            
++          if (globals.mapping == MAPPING_CXX)
++            newElement = new CASTUnaryOp("(void*)&", newElement);
++            
++          addTo(functionPointers, newElement);
++        }
++            
++      addTo(subtree, new CASTPreprocDefine(
++        buildKtableName(), 
++        new CASTArrayInitializer(functionPointers))
++      );  
++
++      CASTIdentifier *ktableSizeMacro = buildIdentifier();
++      ktableSizeMacro->capitalize();
++      ktableSizeMacro->addPostfix("_DEFAULT_KTABLE_SIZE");
++      addTo(subtree, new CASTPreprocDefine(
++        ktableSizeMacro,
++        new CASTIntegerConstant(getKtableSize()))
++      );
++    }
++
++  return subtree;      
++}
++
++CASTIdentifier *CBEInterface_gnu::buildServerDemuxerName()
++{
++  CASTIdentifier *serverFuncName = buildIdentifier();
++  serverFuncName->addPostfix("_demuxer");
++  
++  return serverFuncName;
++}
+diff -Naur idl4-1.0.2/src/arch/v4_gnu/client.cc idl4/src/arch/v4_gnu/client.cc
+--- idl4-1.0.2/src/arch/v4_gnu/client.cc       1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/arch/v4_gnu/client.cc     2005-07-13 14:37:29.312134272 +0200
+@@ -0,0 +1,133 @@
++#include <arch/v4_gnu.h>
++CASTStatement *CMSConnection4_gnu::buildClientLocalVars(CASTIdentifier *key)
++{
++      CASTDeclarationStatement *result = buildClientStandardVars();
++      
++      addTo(result, new CASTDeclarationStatement(
++      new CASTDeclaration(
++        new CASTTypeSpecifier(
++              new CASTIdentifier("l4_msg_tag_t")),
++        new CASTDeclarator(
++              new CASTIdentifier("_tag"))))
++      );
++      
++      addTo(result, new CASTDeclarationStatement(
++      new CASTDeclaration(
++        new CASTTypeSpecifier(
++              new CASTIdentifier("l4_msg_t")),
++        new CASTDeclarator(
++              new CASTIdentifier("_msg"))))
++      );
++      CASTDeclarationSpecifier* p=buildClientMsgBuf();
++      if(p)
++              addTo(result, new CASTDeclarationStatement(
++              new CASTDeclaration(
++                p,
++                new CASTDeclarator(
++                      new CASTIdentifier("_pack"))))
++              );
++      
++      return result;
++}
++
++CASTStatement *CMSConnection4_gnu::buildClientCall(CASTExpression *target, 
CASTExpression *env)
++{
++      if(options & OPTION_ONEWAY)
++              panic("Oneway functions aren't supported yet!");
++      CASTStatement *result = NULL;
++
++      /*addTo(result, buildMemMsgSetup(CHANNEL_IN));
++      addTo(result, new CASTExpressionStatement(
++      new CASTBinaryOp("=",
++        new CASTBinaryOp(".",
++              buildSourceBufferRvalue(CHANNEL_IN),
++              new CASTIdentifier("_msgtag")),
++        buildMsgTag(CHANNEL_IN)))
++      );*/
++      
++      addTo(result,new 
GNU_CALL_FN_NAME("l4_accept","L4_UNTYPED_WORDS_ACCEPTOR"));
++      addTo(result,new GNU_CALL_FN_NAME("l4_msg_clear","_msg"));
++      addTo(result,new GNU_CALL_FN(new 
CASTIdentifier("l4_set_msg_label"),knitExprList(
++              new CASTIdentifier("_msg"),buildMsgTag(CHANNEL_IN)))
++      );
++      
++      //add data to message
++      
++      addTo(result,new GNU_CALL_FN(new CASTIdentifier("l4_msg_append_word"),
++              knitExprList(new CASTIdentifier("_msg"),new CASTCastOp(new 
CASTDeclaration(
++                                      new CASTTypeSpecifier("l4_word_t"),
++                                      NULL),
++                              new CASTIdentifier("_cap"),
++                              CASTStandardCast)))
++      );
++      
++      
if(!mem_fixed[CHANNEL_IN]->isEmpty()||!mem_variable[CHANNEL_IN]->isEmpty()||!strings[CHANNEL_IN]->isEmpty()||
++              
!fpages[CHANNEL_IN]->isEmpty()||!special[CHANNEL_IN]->isEmpty()||!reg_variable[CHANNEL_IN]->isEmpty())
++              panic("Unsupported datatypes: strings,fpages");         //WHAT 
ARE THE OTHERS?
++              forAllMS(reg_fixed[CHANNEL_IN],
++              {
++                      CMSChunk4* chunk=(CMSChunk4*)item;
++                      if(strcasecmp(chunk->name,"_msgtag"))           //HOW 
TO DO THIS CLEARLY?
++                              
addTo(result,appendRegFixedToMsg(CHANNEL_IN,chunk,"_msg"));
++              };);
++      
++      addTo(result, new CASTExpressionStatement(
++              new CASTFunctionOp(
++                      new CASTIdentifier("l4_msg_load"),
++                      new CASTIdentifier("_msg")))
++      );
++      
++  //fpages aren't supported yet
++  /*bool hasOutFpages = false;
++  for (int i=1;i<numChannels;i++)
++    if (!fpages[i]->isEmpty())
++      hasOutFpages = true;
++  
++  if (hasOutFpages)
++    addTo(result, new CASTExpressionStatement(
++      new CASTFunctionOp(
++        new CASTIdentifier("L4_Accept"),
++        new CASTBinaryOp("->",
++          env->clone(),
++          new CASTIdentifier("_rcv_window"))))
++    );*/
++
++      addTo(result, new CASTExpressionStatement(
++              new CASTBinaryOp("=",
++                      new CASTIdentifier("_tag"),
++                      new CASTFunctionOp(
++                              new CASTIdentifier("l4_call"),
++                              new CASTIdentifier("_server"))))
++      );
++      if (!(options & OPTION_ONEWAY))
++              addTo(result, new CASTExpressionStatement(
++                      new CASTFunctionOp(
++                              new CASTIdentifier("l4_msg_store"),
++                              knitExprList(
++                                      new CASTIdentifier("_tag"),
++                                      new CASTIdentifier("_msg"))))
++              );
++      unsigned i=1;           //first (0) is the cap
++      //store data in message
++      
if(!mem_fixed[CHANNEL_OUT]->isEmpty()||!mem_variable[CHANNEL_OUT]->isEmpty()||!strings[CHANNEL_OUT]->isEmpty()||
++              
!fpages[CHANNEL_OUT]->isEmpty()||!special[CHANNEL_OUT]->isEmpty()||!reg_variable[CHANNEL_OUT]->isEmpty())
++              panic("Unsupported datatypes: strings,fpages");         //WHAT 
ARE THE OTHERS?
++              forAllMS(reg_fixed[CHANNEL_OUT],
++              {
++                      CMSChunk4* chunk=(CMSChunk4*)item;
++                      
if(strcasecmp(chunk->name,"_msgtag")&&strcasecmp(chunk->name,"__retval"))       
        //HOW TO DO THIS CLEARLY?
++                              
addTo(result,storeRegFixedFromMsg(CHANNEL_OUT,chunk,i++,"_msg"));
++              };);
++      
++  addTo(result, buildClientUnmarshalStart());
++  
++  return result;    
++}
++
++CASTExpression* CMSConnection4_gnu::buildClientCallSucceeded()
++{
++      return new CASTFunctionOp(
++              new CASTIdentifier("l4_ipc_succeeded"),
++              new CASTIdentifier("_tag")
++      );
++};
+diff -Naur idl4-1.0.2/src/arch/v4_gnu/cross.cc idl4/src/arch/v4_gnu/cross.cc
+--- idl4-1.0.2/src/arch/v4_gnu/cross.cc        1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/arch/v4_gnu/cross.cc      2005-07-10 08:05:39.439862368 +0200
+@@ -0,0 +1,64 @@
++#include <arch/v4_gnu.h>
++void CAoiCrossVisitor_gnu::visit(CAoiInterface *aoi)
++{
++  if (!aoi->peer)
++    {
++      CAoiList *singleSuperclasses = aoi->getAllSuperclasses();
++      CBEList *inheritedOps = new CBEList();
++      
++      forAll(singleSuperclasses, 
++        {
++          CAoiInterface *superclass = (CAoiInterface*)((CAoiRef*)item)->ref;
++          CAoiOperation *op = 
(CAoiOperation*)superclass->operations->getFirstElement();
++          
++          if (superclass != aoi)
++            while (!op->isEndOfList())
++              {
++                inheritedOps->add(new CBEInheritedOperation(op, aoi));
++                op = (CAoiOperation*)op->next;
++              }
++        }
++      );
++
++      aoi->peer = new CBEInterface_gnu(aoi, inheritedOps);
++    }  
++
++  aoi->constants->accept(this);
++  aoi->types->accept(this);
++  aoi->attributes->accept(this);
++  aoi->exceptions->accept(this);
++  aoi->operations->accept(this);
++  aoi->submodules->accept(this);
++  aoi->interfaces->accept(this);
++  aoi->superclasses->accept(this);
++}
++
++void CAoiCrossVisitor_gnu::visit(CAoiOperation *aoi)
++{
++  if (!aoi->peer)
++    {
++      aoi->peer = new CBEOperation_gnu(aoi);
++      aoi->returnType->accept(this);
++      aoi->parameters->accept(this);
++      aoi->exceptions->accept(this);
++      
++      CBEDependencyList *depList = new CBEDependencyList();
++      forAll(aoi->parameters, 
getParameter(item)->registerDependencies(depList));
++      if (!depList->commit())
++        semanticError(aoi->context, "circular dependency between parameters");
++        
++      int maxPrio = 0;
++      forAll(aoi->parameters, 
++        if (getParameter(item)->priority>maxPrio)
++          maxPrio = getParameter(item)->priority;
++      );
++      
++      CBEList *sortedParams = getOperation(aoi)->sortedParams;
++      assert(sortedParams->isEmpty());
++      for (int i=0;i<=maxPrio;i++)
++        forAll(aoi->parameters,
++          if (getParameter(item)->priority == i)
++            sortedParams->add(getParameter(item));
++        );  
++    }  
++}
+diff -Naur idl4-1.0.2/src/arch/v4_gnu/Makefile.am 
idl4/src/arch/v4_gnu/Makefile.am
+--- idl4-1.0.2/src/arch/v4_gnu/Makefile.am     1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/arch/v4_gnu/Makefile.am   2005-07-10 08:05:39.439862368 +0200
+@@ -0,0 +1,6 @@
++## Process this file with automake to produce Makefile.in
++
++SUBDIRS=
++
++noinst_LIBRARIES=     libv4_gnu.a
++libv4_gnu_a_SOURCES=  template.cc server.cc client.cc stuff.cc be.cc cross.cc
+diff -Naur idl4-1.0.2/src/arch/v4_gnu/Makefile.in 
idl4/src/arch/v4_gnu/Makefile.in
+--- idl4-1.0.2/src/arch/v4_gnu/Makefile.in     1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/arch/v4_gnu/Makefile.in   2005-07-10 08:07:02.262271448 +0200
+@@ -0,0 +1,541 @@
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
++# @configure_input@
++
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
++# 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.
++
address@hidden@
++
++srcdir = @srcdir@
++top_srcdir = @top_srcdir@
++VPATH = @srcdir@
++pkgdatadir = $(datadir)/@PACKAGE@
++pkglibdir = $(libdir)/@PACKAGE@
++pkgincludedir = $(includedir)/@PACKAGE@
++top_builddir = ../../..
++
++am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
++INSTALL = @INSTALL@
++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 = :
++ACLOCAL = @ACLOCAL@
++ALPHA_PREFIX = @ALPHA_PREFIX@
++AMDEP_FALSE = @AMDEP_FALSE@
++AMDEP_TRUE = @AMDEP_TRUE@
++AMTAR = @AMTAR@
++ARM_PREFIX = @ARM_PREFIX@
++AUTOCONF = @AUTOCONF@
++AUTOHEADER = @AUTOHEADER@
++AUTOMAKE = @AUTOMAKE@
++AWK = @AWK@
++BIBTEX = @BIBTEX@
++CC = @CC@
++CCAS = @CCAS@
++CCASFLAGS = @CCASFLAGS@
++CCDEPMODE = @CCDEPMODE@
++CFLAGS = @CFLAGS@
++CPPFLAGS = @CPPFLAGS@
++CXX = @CXX@
++CXXDEPMODE = @CXXDEPMODE@
++CXXFLAGS = @CXXFLAGS@
++CYGPATH_W = @CYGPATH_W@
++DEFS = @DEFS@
++DEPDIR = @DEPDIR@
++DVIPDF = @DVIPDF@
++DVIPS = @DVIPS@
++ECHO_C = @ECHO_C@
++ECHO_N = @ECHO_N@
++ECHO_T = @ECHO_T@
++EXEEXT = @EXEEXT@
++FIASCO_DIR = @FIASCO_DIR@
++HAS_DVIPDF_FALSE = @HAS_DVIPDF_FALSE@
++HAS_DVIPDF_TRUE = @HAS_DVIPDF_TRUE@
++HAS_DVIPS_FALSE = @HAS_DVIPS_FALSE@
++HAS_DVIPS_TRUE = @HAS_DVIPS_TRUE@
++HAS_LATEX_FALSE = @HAS_LATEX_FALSE@
++HAS_LATEX_TRUE = @HAS_LATEX_TRUE@
++HAZELNUT_DIR = @HAZELNUT_DIR@
++IA32_PREFIX = @IA32_PREFIX@
++IA64_PREFIX = @IA64_PREFIX@
++INSTALL_DATA = @INSTALL_DATA@
++INSTALL_PROGRAM = @INSTALL_PROGRAM@
++INSTALL_SCRIPT = @INSTALL_SCRIPT@
++INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
++LATEX = @LATEX@
++LDFLAGS = @LDFLAGS@
++LEX = @LEX@
++LEXLIB = @LEXLIB@
++LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
++LIBOBJS = @LIBOBJS@
++LIBS = @LIBS@
++LN_S = @LN_S@
++LTLIBOBJS = @LTLIBOBJS@
++MAINTAINERCLEANFILES = @MAINTAINERCLEANFILES@
++MAKEINFO = @MAKEINFO@
++MIPS64_PREFIX = @MIPS64_PREFIX@
++NEED_GETOPT_LONG_FALSE = @NEED_GETOPT_LONG_FALSE@
++NEED_GETOPT_LONG_TRUE = @NEED_GETOPT_LONG_TRUE@
++OBJEXT = @OBJEXT@
++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@
++PISTACHIO_ALPHA_DIR = @PISTACHIO_ALPHA_DIR@
++PISTACHIO_ARM_DIR = @PISTACHIO_ARM_DIR@
++PISTACHIO_IA32_DIR = @PISTACHIO_IA32_DIR@
++PISTACHIO_IA64_DIR = @PISTACHIO_IA64_DIR@
++PISTACHIO_MIPS64_DIR = @PISTACHIO_MIPS64_DIR@
++PISTACHIO_POWERPC_DIR = @PISTACHIO_POWERPC_DIR@
++POWERPC_PREFIX = @POWERPC_PREFIX@
++RANLIB = @RANLIB@
++SET_MAKE = @SET_MAKE@
++SHELL = @SHELL@
++STRIP = @STRIP@
++TESTSUITE_DIR = @TESTSUITE_DIR@
++VERSION = @VERSION@
++WITH_EXAMPLES_FALSE = @WITH_EXAMPLES_FALSE@
++WITH_EXAMPLES_TRUE = @WITH_EXAMPLES_TRUE@
++WITH_FIASCO_FALSE = @WITH_FIASCO_FALSE@
++WITH_FIASCO_TRUE = @WITH_FIASCO_TRUE@
++WITH_HAZELNUT_FALSE = @WITH_HAZELNUT_FALSE@
++WITH_HAZELNUT_TRUE = @WITH_HAZELNUT_TRUE@
++WITH_PISTACHIO_ALPHA_FALSE = @WITH_PISTACHIO_ALPHA_FALSE@
++WITH_PISTACHIO_ALPHA_TRUE = @WITH_PISTACHIO_ALPHA_TRUE@
++WITH_PISTACHIO_ARM_FALSE = @WITH_PISTACHIO_ARM_FALSE@
++WITH_PISTACHIO_ARM_TRUE = @WITH_PISTACHIO_ARM_TRUE@
++WITH_PISTACHIO_IA32_FALSE = @WITH_PISTACHIO_IA32_FALSE@
++WITH_PISTACHIO_IA32_TRUE = @WITH_PISTACHIO_IA32_TRUE@
++WITH_PISTACHIO_IA64_FALSE = @WITH_PISTACHIO_IA64_FALSE@
++WITH_PISTACHIO_IA64_TRUE = @WITH_PISTACHIO_IA64_TRUE@
++WITH_PISTACHIO_MIPS64_FALSE = @WITH_PISTACHIO_MIPS64_FALSE@
++WITH_PISTACHIO_MIPS64_TRUE = @WITH_PISTACHIO_MIPS64_TRUE@
++WITH_PISTACHIO_POWERPC_FALSE = @WITH_PISTACHIO_POWERPC_FALSE@
++WITH_PISTACHIO_POWERPC_TRUE = @WITH_PISTACHIO_POWERPC_TRUE@
++WITH_TESTSUITE_FALSE = @WITH_TESTSUITE_FALSE@
++WITH_TESTSUITE_TRUE = @WITH_TESTSUITE_TRUE@
++WITH_TOOLCHAIN_ALPHA_FALSE = @WITH_TOOLCHAIN_ALPHA_FALSE@
++WITH_TOOLCHAIN_ALPHA_TRUE = @WITH_TOOLCHAIN_ALPHA_TRUE@
++WITH_TOOLCHAIN_ARM_FALSE = @WITH_TOOLCHAIN_ARM_FALSE@
++WITH_TOOLCHAIN_ARM_TRUE = @WITH_TOOLCHAIN_ARM_TRUE@
++WITH_TOOLCHAIN_IA32_FALSE = @WITH_TOOLCHAIN_IA32_FALSE@
++WITH_TOOLCHAIN_IA32_TRUE = @WITH_TOOLCHAIN_IA32_TRUE@
++WITH_TOOLCHAIN_IA64_FALSE = @WITH_TOOLCHAIN_IA64_FALSE@
++WITH_TOOLCHAIN_IA64_TRUE = @WITH_TOOLCHAIN_IA64_TRUE@
++WITH_TOOLCHAIN_MIPS64_FALSE = @WITH_TOOLCHAIN_MIPS64_FALSE@
++WITH_TOOLCHAIN_MIPS64_TRUE = @WITH_TOOLCHAIN_MIPS64_TRUE@
++WITH_TOOLCHAIN_POWERPC_FALSE = @WITH_TOOLCHAIN_POWERPC_FALSE@
++WITH_TOOLCHAIN_POWERPC_TRUE = @WITH_TOOLCHAIN_POWERPC_TRUE@
++YACC = @YACC@
++ac_ct_CC = @ac_ct_CC@
++ac_ct_CXX = @ac_ct_CXX@
++ac_ct_RANLIB = @ac_ct_RANLIB@
++ac_ct_STRIP = @ac_ct_STRIP@
++am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
++am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
++am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
++am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
++am__include = @am__include@
++am__leading_dot = @am__leading_dot@
++am__quote = @am__quote@
++bindir = @bindir@
++build_alias = @build_alias@
++datadir = @datadir@
++exec_prefix = @exec_prefix@
++host_alias = @host_alias@
++includedir = @includedir@
++infodir = @infodir@
++install_sh = @install_sh@
++libdir = @libdir@
++libexecdir = @libexecdir@
++localstatedir = @localstatedir@
++mandir = @mandir@
++oldincludedir = @oldincludedir@
++prefix = @prefix@
++program_transform_name = @program_transform_name@
++sbindir = @sbindir@
++sharedstatedir = @sharedstatedir@
++sysconfdir = @sysconfdir@
++target_alias = @target_alias@
++
++SUBDIRS = 
++
++noinst_LIBRARIES = libv4_gnu.a
++libv4_gnu_a_SOURCES = template.cc server.cc client.cc stuff.cc be.cc cross.cc
++subdir = src/arch/v4_gnu
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
++mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
++CONFIG_HEADER = $(top_builddir)/config.h
++CONFIG_CLEAN_FILES =
++LIBRARIES = $(noinst_LIBRARIES)
++
++libv4_gnu_a_AR = $(AR) cru
++libv4_gnu_a_LIBADD =
++am_libv4_gnu_a_OBJECTS = template.$(OBJEXT) server.$(OBJEXT) \
++      client.$(OBJEXT) stuff.$(OBJEXT) be.$(OBJEXT) cross.$(OBJEXT)
++libv4_gnu_a_OBJECTS = $(am_libv4_gnu_a_OBJECTS)
++
++DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
++depcomp = $(SHELL) $(top_srcdir)/depcomp
++am__depfiles_maybe = depfiles
address@hidden@DEP_FILES = ./$(DEPDIR)/be.Po ./$(DEPDIR)/client.Po \
address@hidden@ ./$(DEPDIR)/cross.Po ./$(DEPDIR)/server.Po \
address@hidden@ ./$(DEPDIR)/stuff.Po ./$(DEPDIR)/template.Po
++CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
++      $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
++CXXLD = $(CXX)
++CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
++      -o $@
++DIST_SOURCES = $(libv4_gnu_a_SOURCES)
++
++RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
++      ps-recursive install-info-recursive uninstall-info-recursive \
++      all-recursive install-data-recursive install-exec-recursive \
++      installdirs-recursive install-recursive uninstall-recursive \
++      check-recursive installcheck-recursive
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
++DIST_SUBDIRS = $(SUBDIRS)
++SOURCES = $(libv4_gnu_a_SOURCES)
++
++all: all-recursive
++
++.SUFFIXES:
++.SUFFIXES: .cc .o .obj
++$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
++      cd $(top_srcdir) && \
++        $(AUTOMAKE) --gnu  src/arch/v4_gnu/Makefile
++Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
++      cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ 
$(am__depfiles_maybe)
++
++AR = ar
++
++clean-noinstLIBRARIES:
++      -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
++libv4_gnu.a: $(libv4_gnu_a_OBJECTS) $(libv4_gnu_a_DEPENDENCIES) 
++      -rm -f libv4_gnu.a
++      $(libv4_gnu_a_AR) libv4_gnu.a $(libv4_gnu_a_OBJECTS) 
$(libv4_gnu_a_LIBADD)
++      $(RANLIB) libv4_gnu.a
++
++mostlyclean-compile:
++      -rm -f *.$(OBJEXT) core *.core
++
++distclean-compile:
++      -rm -f *.tab.c
++
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
++
++.cc.o:
address@hidden@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
address@hidden@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
address@hidden@ fi
address@hidden@@am__fastdepCXX_FALSE@   source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCXX_FALSE@   depfile='$(DEPDIR)/$*.Po' 
tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
address@hidden@@am__fastdepCXX_FALSE@   $(CXXDEPMODE) $(depcomp) 
@AMDEPBACKSLASH@
address@hidden@ $(CXXCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
++
++.cc.obj:
address@hidden@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
address@hidden@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else 
$(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
address@hidden@ fi
address@hidden@@am__fastdepCXX_FALSE@   source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCXX_FALSE@   depfile='$(DEPDIR)/$*.Po' 
tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
address@hidden@@am__fastdepCXX_FALSE@   $(CXXDEPMODE) $(depcomp) 
@AMDEPBACKSLASH@
address@hidden@ $(CXXCOMPILE) -c -o $@ `if test -f '$<'; then $(CYGPATH_W) 
'$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
++uninstall-info-am:
++
++# This directory's subdirectories are mostly independent; you can cd
++# into them and run `make' without going through this Makefile.
++# To change the values of `make' variables: instead of editing Makefiles,
++# (1) if the variable is set in `config.status', edit `config.status'
++#     (which will cause the Makefiles to be regenerated when you run `make');
++# (2) otherwise, pass the desired values on the `make' command line.
++$(RECURSIVE_TARGETS):
++      @set fnord $$MAKEFLAGS; amf=$$2; \
++      dot_seen=no; \
++      target=`echo $@ | sed s/-recursive//`; \
++      list='$(SUBDIRS)'; for subdir in $$list; do \
++        echo "Making $$target in $$subdir"; \
++        if test "$$subdir" = "."; then \
++          dot_seen=yes; \
++          local_target="$$target-am"; \
++        else \
++          local_target="$$target"; \
++        fi; \
++        (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
++         || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
++      done; \
++      if test "$$dot_seen" = "no"; then \
++        $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
++      fi; test -z "$$fail"
++
++mostlyclean-recursive clean-recursive distclean-recursive \
++maintainer-clean-recursive:
++      @set fnord $$MAKEFLAGS; amf=$$2; \
++      dot_seen=no; \
++      case "$@" in \
++        distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
++        *) list='$(SUBDIRS)' ;; \
++      esac; \
++      rev=''; for subdir in $$list; do \
++        if test "$$subdir" = "."; then :; else \
++          rev="$$subdir $$rev"; \
++        fi; \
++      done; \
++      rev="$$rev ."; \
++      target=`echo $@ | sed s/-recursive//`; \
++      for subdir in $$rev; do \
++        echo "Making $$target in $$subdir"; \
++        if test "$$subdir" = "."; then \
++          local_target="$$target-am"; \
++        else \
++          local_target="$$target"; \
++        fi; \
++        (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
++         || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
++      done && test -z "$$fail"
++tags-recursive:
++      list='$(SUBDIRS)'; for subdir in $$list; do \
++        test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); 
\
++      done
++ctags-recursive:
++      list='$(SUBDIRS)'; for subdir in $$list; do \
++        test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) 
ctags); \
++      done
++
++ETAGS = etags
++ETAGSFLAGS =
++
++CTAGS = ctags
++CTAGSFLAGS =
++
++tags: TAGS
++
++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-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
++              $(TAGS_FILES) $(LISP)
++      tags=; \
++      here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
++      list='$(SUBDIRS)'; for subdir in $$list; do \
++        if test "$$subdir" = .; then :; else \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
++        fi; \
++      done; \
++      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 "$(ETAGS_ARGS)$$tags$$unique" \
++        || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
++           $$tags $$unique
++
++ctags: CTAGS
++CTAGS: ctags-recursive $(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
++DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
++
++top_distdir = ../../..
++distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
++
++distdir: $(DISTFILES)
++      @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
++      topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
++      list='$(DISTFILES)'; for file in $$list; do \
++        case $$file in \
++          $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
++          $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
++        esac; \
++        if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
++        dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
++        if test "$$dir" != "$$file" && test "$$dir" != "."; then \
++          dir="/$$dir"; \
++          $(mkinstalldirs) "$(distdir)$$dir"; \
++        else \
++          dir=''; \
++        fi; \
++        if test -d $$d/$$file; then \
++          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
++      list='$(SUBDIRS)'; for subdir in $$list; do \
++        if test "$$subdir" = .; then :; else \
++          test -d $(distdir)/$$subdir \
++          || mkdir $(distdir)/$$subdir \
++          || exit 1; \
++          (cd $$subdir && \
++            $(MAKE) $(AM_MAKEFLAGS) \
++              top_distdir="$(top_distdir)" \
++              distdir=../$(distdir)/$$subdir \
++              distdir) \
++            || exit 1; \
++        fi; \
++      done
++check-am: all-am
++check: check-recursive
++all-am: Makefile $(LIBRARIES)
++installdirs: installdirs-recursive
++installdirs-am:
++
++install: install-recursive
++install-exec: install-exec-recursive
++install-data: install-data-recursive
++uninstall: uninstall-recursive
++
++install-am: all-am
++      @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
++
++installcheck: installcheck-recursive
++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:
++      -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."
++      -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
++clean: clean-recursive
++
++clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
++
++distclean: distclean-recursive
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
++
++dvi: dvi-recursive
++
++dvi-am:
++
++info: info-recursive
++
++info-am:
++
++install-data-am:
++
++install-exec-am:
++
++install-info: install-info-recursive
++
++install-man:
++
++installcheck-am:
++
++maintainer-clean: maintainer-clean-recursive
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++maintainer-clean-am: distclean-am maintainer-clean-generic
++
++mostlyclean: mostlyclean-recursive
++
++mostlyclean-am: mostlyclean-compile mostlyclean-generic
++
++pdf: pdf-recursive
++
++pdf-am:
++
++ps: ps-recursive
++
++ps-am:
++
++uninstall-am: uninstall-info-am
++
++uninstall-info: uninstall-info-recursive
++
++.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
++      clean-generic clean-noinstLIBRARIES clean-recursive ctags \
++      ctags-recursive distclean distclean-compile distclean-generic \
++      distclean-recursive distclean-tags distdir dvi dvi-am \
++      dvi-recursive info info-am info-recursive install install-am \
++      install-data install-data-am install-data-recursive \
++      install-exec install-exec-am install-exec-recursive \
++      install-info install-info-am install-info-recursive install-man \
++      install-recursive install-strip installcheck installcheck-am \
++      installdirs installdirs-am installdirs-recursive \
++      maintainer-clean maintainer-clean-generic \
++      maintainer-clean-recursive mostlyclean mostlyclean-compile \
++      mostlyclean-generic mostlyclean-recursive pdf pdf-am \
++      pdf-recursive ps ps-am ps-recursive tags tags-recursive \
++      uninstall uninstall-am uninstall-info-am \
++      uninstall-info-recursive uninstall-recursive
++
++# 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 -Naur idl4-1.0.2/src/arch/v4_gnu/server.cc idl4/src/arch/v4_gnu/server.cc
+--- idl4-1.0.2/src/arch/v4_gnu/server.cc       1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/arch/v4_gnu/server.cc     2005-07-13 17:20:35.763191296 +0200
+@@ -0,0 +1,97 @@
++#include <arch/v4_gnu.h>
++CASTStatement *CMSConnection4_gnu::buildServerDeclarations(CASTIdentifier 
*key)
++{
++  CASTStatement *result=NULL; //= buildServerStandardDecls(key);              
//We don't want those
++  
++  CASTIdentifier *wrapperIdentifier = key->clone();
++  wrapperIdentifier->addPrefix("service_");
++  
++  CASTDeclarationStatement *wrapperDecl = new CASTDeclarationStatement(
++    getWrapperReturnType()->buildDeclaration( 
++      new CASTDeclarator(
++        wrapperIdentifier,
++        buildWrapperParams(key),
++        NULL, 
++        NULL, 
++        NULL, 
++        buildWrapperAttributes()))
++  );
++  
++  addWithLeadingSpacerTo(result, wrapperDecl);
++
++  return result;  
++}
++
++CASTDeclaration *CMSConnection4_gnu::buildWrapperParams(CASTIdentifier *key)
++{
++      CASTDeclaration *wrapperParams = NULL;
++      
++      addTo(wrapperParams,new CASTDeclaration(
++              new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_rpc_context_t")),
++                      knitDeclarator("_ctx"))
++      );
++      
++      return wrapperParams;
++}
++
++CASTStatement *CMSConnection4_gnu::buildServerLocalVars(CASTIdentifier *key)
++
++{
++      CASTDeclarationStatement *result = NULL;
++      
++      CASTDeclarationSpecifier* p=buildClientMsgBuf();
++      if(p)
++              addTo(result, new CASTDeclarationStatement(
++              new CASTDeclaration(
++                p,
++                new CASTDeclarator(
++                      new CASTIdentifier("_pack"))))
++              );
++      
++      return result;
++}
++
++CBEType *CMSConnection4_gnu::getWrapperReturnType()
++{
++  return new CBEOpaqueType("void", globals.word_size, globals.word_size);
++}
++
++CASTStatement* CMSConnection4_gnu::buildServerStoreData(const char* msg)
++{
++      CASTStatement* result=NULL;
++      unsigned i=1;
++      
if(!mem_fixed[CHANNEL_IN]->isEmpty()||!mem_variable[CHANNEL_IN]->isEmpty()||!strings[CHANNEL_IN]->isEmpty()||
++              
!fpages[CHANNEL_IN]->isEmpty()||!special[CHANNEL_IN]->isEmpty()||!reg_variable[CHANNEL_IN]->isEmpty())
++              panic("Unsupported datatypes: strings,fpages");         //WHAT 
ARE THE OTHERS?
++      forAllMS(reg_fixed[CHANNEL_IN],
++      {
++              CMSChunk4* chunk=(CMSChunk4*)item;
++                      if(strcasecmp(chunk->name,"_msgtag"))           //HOW 
TO DO THIS CLEARLY?
++                              
addTo(result,storeRegFixedFromMsg(CHANNEL_IN,chunk,i++,msg));
++      };);
++      return result;
++};
++
++CASTStatement* CMSConnection4_gnu::buildServerAppendData(const char* 
msg,const char* ret)
++{
++      CASTStatement* result=NULL;
++      if(ret)
++              addTo(result,new GNU_CALL_FN(
++                      new CASTIdentifier("l4_set_msg_label"),knitExprList(new 
CASTIdentifier(msg),new CASTIdentifier(ret)))
++              );
++      
if(!mem_fixed[CHANNEL_OUT]->isEmpty()||!mem_variable[CHANNEL_OUT]->isEmpty()||!strings[CHANNEL_OUT]->isEmpty()||
++              
!fpages[CHANNEL_OUT]->isEmpty()||!special[CHANNEL_OUT]->isEmpty()||!reg_variable[CHANNEL_OUT]->isEmpty())
++              panic("Unsupported datatypes: strings,fpages");         //WHAT 
ARE THE OTHERS?
++              forAllMS(reg_fixed[CHANNEL_OUT],
++              {
++                      CMSChunk4* chunk=(CMSChunk4*)item;
++                      
if(strcasecmp(chunk->name,"_msgtag")&&strcasecmp(chunk->name,"__retval"))       
        //HOW TO DO THIS CLEARLY?
++                              
addTo(result,appendRegFixedToMsg(CHANNEL_OUT,chunk,msg));
++              };);
++      return result;
++};
++
++CASTExpression *CMSConnection4_gnu::buildServerCallerID()
++{
++  return new CASTIdentifier("_ctx");
++}
+diff -Naur idl4-1.0.2/src/arch/v4_gnu/stuff.cc idl4/src/arch/v4_gnu/stuff.cc
+--- idl4-1.0.2/src/arch/v4_gnu/stuff.cc        1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/arch/v4_gnu/stuff.cc      2005-07-10 08:05:39.441862064 +0200
+@@ -0,0 +1,161 @@
++#include <arch/v4_gnu.h>
++void CMSFactory4_gnu::initRootScope(CAoiRootScope *rootScope)
++{
++  CAoiModule *idl4 = getBuiltinScope(rootScope, "idl4");
++  rootScope->submodules->add(idl4);
++  idl4->constants->add(getBuiltinConstant(rootScope, idl4, "startup", 0));
++  idl4->constants->add(getBuiltinConstant(rootScope, idl4, "interrupt", 1));
++  idl4->constants->add(getBuiltinConstant(rootScope, idl4, "pagefault", 2));
++  idl4->constants->add(getBuiltinConstant(rootScope, idl4, "preemption", 3));
++  idl4->constants->add(getBuiltinConstant(rootScope, idl4, "sysexc", 4));
++  idl4->constants->add(getBuiltinConstant(rootScope, idl4, "archexc", 5));
++  idl4->constants->add(getBuiltinConstant(rootScope, idl4, "sigma0rpc", 6));
++}
++
++CASTDeclarationStatement *CMSConnection4_gnu::buildMessageMembers(int channel)
++{
++      CASTDeclarationStatement *members = NULL;
++      
++      forAllMS(reg_fixed[channel], 
++      {
++              CMSChunk4 *chunk = (CMSChunk4*)item;
++              
if(strcasecmp(chunk->name,"_msgtag")&&strcasecmp(chunk->name,"__retval"))       
        //HOW TO DO THIS CLEARLY?
++                      addTo(members, chunk->buildDeclarationStatement());
++      }    
++      );
++  
++  if (!mem_fixed[channel]->isEmpty() || !mem_variable[channel]->isEmpty())
++    addTo(members, new CASTDeclarationStatement(
++      new CASTDeclaration(
++        new CASTTypeSpecifier(
++          new CASTIdentifier("idl4_stringitem")),
++        new CASTDeclarator(
++          new CASTIdentifier("_memmsg"))))
++    );
++    
++  forAllMS(strings[channel], 
++    if (((CMSChunk4*)item)->flags & CHUNK_XFER_COPY)
++      addTo(members, new CASTDeclarationStatement(
++        new CASTDeclaration(
++          new CASTTypeSpecifier(
++            new CASTIdentifier("idl4_stringitem")),
++          new CASTDeclarator(
++            new CASTIdentifier(item->name))))
++      )
++  );
++    
++  forAllMS(fpages[channel], 
++    addTo(members, new CASTDeclarationStatement(
++      new CASTDeclaration(
++        new CASTTypeSpecifier(
++          new CASTIdentifier("idl4_mapitem")),
++        new CASTDeclarator(
++          new CASTIdentifier(item->name))))
++    )
++  );
++    
++  return members;  
++}
++
++CASTExpression *CMSConnection4_gnu::buildLabelExpr()
++{
++  return new CASTFunctionOp(
++    new CASTIdentifier("l4_label"),
++    new CASTIdentifier("_tag")
++  );
++}
++
++CASTExpression *CMSConnection4_gnu::buildSourceBufferRvalue(int channel)
++{
++      CASTIdentifier *bufferName;
++      
++      bufferName = new CASTIdentifier("_pack");
++      
++      return new CASTBinaryOp(".",
++              bufferName,
++              buildChannelIdentifier(channel));
++}
++
++CASTExpression *CMSConnection4_gnu::buildTargetBufferRvalue(int channel)
++{
++      return buildSourceBufferRvalue(channel);
++}
++
++CASTExpression *CMSConnection4_gnu::buildFCCDataSourceExpr(int channel, 
ChunkID chunkID)
++{
++  CMSChunk4 *chunk;
++
++  chunk = findChunk(reg_fixed[channel], chunkID);
++  if (chunk)
++    {
++      return new CASTBinaryOp(".",
++        new CASTBinaryOp(".",
++          new CASTIdentifier("_pack"), 
++          buildChannelIdentifier(channel)),
++        new CASTIdentifier(chunk->name)
++      );    
++    }
++
++  chunk = findChunk(mem_fixed[channel], chunkID);
++  if (chunk)
++    {
++      return new CASTBinaryOp(".",
++        new CASTBinaryOp("->",
++          new CASTIdentifier("_memmsg"), 
++          buildChannelIdentifier(channel)),
++        new CASTIdentifier(chunk->name)
++      );    
++    }
++
++  chunk = findChunk(strings[channel], chunkID);
++  if (chunk)
++    {
++      return new CASTUnaryOp("*",
++        chunk->contentType->buildTypeCast(1, 
++          new CASTBinaryOp(".",
++            new CASTBinaryOp(".",
++              new CASTBinaryOp(".",
++                new CASTIdentifier("_pack"),
++                new CASTIdentifier("_buf")),
++              new CASTIndexOp(
++                new CASTIdentifier("_str"),
++                new CASTIntegerConstant(15 - chunk->bufferIndex))),
++              new CASTIdentifier("ptr")))
++      );    
++    }
++    
++  panic("Cannot build FCC source expression (chunk %d in channel %d)", 
chunkID, channel);
++  return NULL;
++}
++
++CASTStatement* CMSConnection4_gnu::appendRegFixedToMsg(int channel,CMSChunk4* 
chunk,const char* msg)
++{
++      m_assert(chunk->size<=globals.word_size,"So big data isn't supported 
yet!");
++      return new GNU_CALL_FN(
++              new CASTIdentifier("l4_msg_append_word"),
++              knitExprList(
++                      new CASTIdentifier(msg),
++                      new CASTCastOp(
++                              new CASTDeclaration(
++                                      new CASTTypeSpecifier("l4_word_t"),
++                                      NULL),
++                              new CASTBinaryOp(".",
++                                      buildSourceBufferRvalue(channel),
++                                      new CASTIdentifier(chunk->name)),
++                              CASTStandardCast)));
++};
++
++CASTStatement* CMSConnection4_gnu::storeRegFixedFromMsg(int 
channel,CMSChunk4* chunk,unsigned nr,const char* msg)
++{
++      m_assert(chunk->size<=globals.word_size,"So big data isn't supported 
yet!");
++      return new CASTExpressionStatement(new CASTBinaryOp("=",
++              new CASTBinaryOp(".",
++                      buildTargetBufferRvalue(channel),
++                      new CASTIdentifier(chunk->name)),
++              chunk->contentType->buildTypeCast(0,
++                      new CASTFunctionOp(
++                              new CASTIdentifier("l4_msg_word"),
++                              knitExprList(
++                                      new CASTIdentifier(msg),
++                                      new 
CASTIdentifier(mprintf("%i",nr)))))));      //WHAT IS WITH THE DEALLOCATION OF 
THIS STRINGS?
++};
+diff -Naur idl4-1.0.2/src/arch/v4_gnu/template.cc 
idl4/src/arch/v4_gnu/template.cc
+--- idl4-1.0.2/src/arch/v4_gnu/template.cc     1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/arch/v4_gnu/template.cc   2005-07-10 08:05:39.441862064 +0200
+@@ -0,0 +1,269 @@
++#include <arch/v4_gnu.h>
++
++#include "be.h"
++#include "ops.h"
++#define dprintln(a...) do { if (debug_mode&DEBUG_GENERATOR) println(a); } 
while (0)
++#define prependStatement(a, b) do { CASTStatement *pre = (b); addTo(pre, 
(a)); (a) = (pre); } while (0)
++
++static char contractBuffer[20000];
++CASTStatement *CMSService4_gnu::buildServerLoop(CASTIdentifier *prefix, 
CASTExpression *utableRef, CASTExpression *ktableRef, bool useItable, bool 
hasKernelMessages)
++{
++        return new 
GNU_CALL_FN_NAME("hurd_cap_bucket_manage_mt","_bucket,NULL,0,0");
++}
++
++CASTStatement *CBEInterface_gnu::buildServerTemplate()
++{
++  CASTStatement *subtree = NULL;
++
++  if ((globals.flags & FLAG_MODULESONLY) && ((aoi->parent)->parent == 0))
++    return NULL;
++
++  int iidMin, iidMax, fidMin, fidMax, kidMin, kidMax;
++  getIDRange(&iidMin, &iidMax, &fidMin, &fidMax, &kidMin, &kidMax);
++
++  if (!(globals.flags & FLAG_LOOPONLY))
++    {
++      addTo(subtree, buildTitleComment());
++      forAll(aoi->operations, 
++        {
++          addTo(subtree, getOperation(item)->buildServerTemplate());
++          if (debug_mode&DEBUG_TESTSUITE)
++            addTo(subtree, getOperation(item)->buildTestFunction());
++        }
++      );    
++      forAllBE(inheritedOps, 
++        addTo(subtree, ((CBEInheritedOperation*)item)->buildServerTemplate())
++      );
++      forAll(aoi->interfaces, 
++        addTo(subtree, getInterface(item)->buildServerTemplate())
++      );
++    }
++
++  addTo(subtree, buildVtableDeclaration());
++
++  /* As a special optimization, we do not use uTables when only kernel
++     messages need to be dispatched */
++
++  CASTIdentifier *utableRef = NULL;
++  if (containsUserMessages() || !containsKernelMessages())
++    {
++      utableRef = buildIdentifier();
++      utableRef->addPostfix((iidMin==iidMax) ? "_vtable" : "_itable");
++    }  
++
++  CASTIdentifier *ktableRef = NULL;
++  if (containsKernelMessages())
++    {
++      ktableRef = buildIdentifier();
++      ktableRef->addPostfix("_ktable");
++    }  
++
++  CASTIdentifier *prefix = buildIdentifier();
++  prefix->capitalize();  
++  addTo(subtree, new CASTDeclarationStatement(
++    new CASTDeclaration(
++      new CASTTypeSpecifier(new CASTIdentifier("void")),
++      new CASTDeclarator(
++        buildServerFuncName(),
++        new CASTDeclaration(
++                      new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_bucket_t")),
++                      
knitDeclarator(service->getServerTemplateBucketName()))),
++      new CASTCompoundStatement(service->buildServerLoop(prefix, utableRef, 
ktableRef, (iidMin!=iidMax), containsKernelMessages()))))
++  );
++  addTo(subtree, new CASTSpacer());
++  
++  
/***************************************************************************/
++
++  if (!(globals.flags & FLAG_LOOPONLY))  
++    {
++      CASTIdentifier *discardFuncName = buildIdentifier();
++      discardFuncName->addPostfix("_discard");
++
++      CASTStatement *discardFunction = NULL;
++      if (debug_mode&DEBUG_TESTSUITE)
++        addTo(discardFunction, new CASTExpressionStatement(
++          new CASTFunctionOp(
++            new CASTIdentifier("enter_kdebug"),
++            new CASTStringConstant(false, mprintf("Discarding request for 
interface %s", aoi->scopedName))))
++        );
++      addWithTrailingSpacerTo(subtree, new CASTDeclarationStatement(
++        new CASTDeclaration(
++          new CASTTypeSpecifier(mprintf("void")),
++          new CASTDeclarator(
++            discardFuncName,
++            new CASTDeclaration(
++                              new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_rpc_context_t")),
++                              knitDeclarator("_ctx"))),
++          new CASTCompoundStatement(discardFunction)))
++      );
++    }
++  
++  
/***************************************************************************/
++      
++      CASTIdentifier *demuxer= buildIdentifier();
++      demuxer->addPostfix("_demuxer");
++      
++      addWithTrailingSpacerTo(subtree, new CASTDeclarationStatement(
++              new CASTDeclaration(
++                      new CASTTypeSpecifier(mprintf("error_t")),
++                      new CASTDeclarator(
++                              demuxer,
++                              new CASTDeclaration(
++                                      new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_rpc_context_t")),
++                                      knitDeclarator("_ctx"))),
++              new 
CASTCompoundStatement(service->buildServerDemuxer("_ctx",prefix, utableRef, 
ktableRef, (iidMin!=iidMax), containsKernelMessages()))))
++      );
++        
++  
/***************************************************************************/
++      if(globals.with_cap_class)
++      {
++              addWithTrailingSpacerTo(subtree,new CASTDeclarationStatement(
++                      new CASTDeclaration(
++                              new CASTTypeSpecifier(new 
CASTIdentifier("static idl4_cap_class")),                     //FIXME
++                              new CASTDeclarator(
++                                      buildIdentifier())))
++              );
++              
++              CASTIdentifier *class_init= buildIdentifier();
++              CASTStatement* class_init_statement=NULL;
++              addTo(class_init_statement,new CASTBlockComment("do necessary 
changes"));
++              addTo(class_init_statement,new CASTReturnStatement(new 
CASTFunctionOp(
++                      new CASTIdentifier("idl4_cap_class_init"),
++                      knitExprList(
++                              new CASTUnaryOp("&",buildIdentifier()),
++                              new CASTIdentifier("int*"),
++                              knitExprList(
++                                      new CASTIdentifier("NULL"),new 
CASTIdentifier("NULL"),
++                                      new CASTIdentifier("NULL"),new 
CASTIdentifier("NULL"),
++                                      demuxer->clone())))
++              ));
++              class_init->addPostfix("_init");
++              addWithTrailingSpacerTo(subtree, new CASTDeclarationStatement(
++                      new CASTDeclaration(
++                              new CASTTypeSpecifier(new 
CASTIdentifier("error_t")),
++                              new CASTDeclarator(
++                                      class_init,
++                                      new CASTEmptyDeclaration()),
++                              new 
CASTCompoundStatement(class_init_statement)))
++              );
++              
++              CASTIdentifier *class_alloc= buildIdentifier();
++              class_alloc->addPostfix("_alloc");
++              CASTStatement* class_alloc_statement=NULL;
++              addTo(class_alloc_statement,new CASTBlockComment("do necessary 
changes"));
++              addTo(class_alloc_statement,new CASTReturnStatement(new 
CASTFunctionOp(
++                      new CASTIdentifier("idl4_cap_class_alloc"),
++                      knitExprList(
++                              new CASTUnaryOp("&",buildIdentifier()),
++                              new CASTIdentifier("_r_obj")))
++              ));
++              CASTDeclaration *class_alloc_parameters = NULL;
++              addTo(class_alloc_parameters,new CASTDeclaration(
++                      new CASTTypeSpecifier(new 
CASTIdentifier("idl4_cap_obj_t*")),
++                              knitDeclarator("_r_obj"))
++              );
++              addWithTrailingSpacerTo(subtree, new CASTDeclarationStatement(
++                      new CASTDeclaration(
++                              new CASTTypeSpecifier(new 
CASTIdentifier("error_t")),
++                              new CASTDeclarator(
++                                      class_alloc,
++                                      class_alloc_parameters),
++                              new 
CASTCompoundStatement(class_alloc_statement)))
++              );
++      };
++      
++  return subtree;
++}
++
++CASTStatement *CBEOperation_gnu::buildServerTemplate()
++{
++  CASTStatement *result = NULL;
++  CASTDeclaration *parameters = NULL;
++  
++  assert(connection);
++  
++  dprintln("*** Building server template for %s", aoi->name);
++
++  addTo(parameters, new CASTDeclaration(
++    new CASTTypeSpecifier(new CASTIdentifier("idl4_cap_rpc_context_t")),
++    knitDeclarator("_ctx"))
++  );
++    
++  forAll(aoi->parameters, addTo(parameters, 
getParameter(item)->buildDeclaration()));
++
++  CASTIdentifier *implementationName = buildIdentifier();
++  implementationName->addPostfix("_implementation");
++
++  CBEVarSource *varSource = new CBEVarSource();
++  CASTStatement *localVars = NULL;
++  CASTStatement *statements = NULL;
++
++  if (debug_mode&DEBUG_TESTSUITE)
++    addTo(statements, buildTestClientCode(varSource));
++    else addTo(statements, new CASTBlockComment(mprintf("implementation of 
%s::%s", ((CAoiInterface*)aoi->parent)->scopedName, aoi->name)));
++
++  dprintln(" +  Marshalling return value");
++  
++  addTo(localVars, varSource->declareAll());
++  if (!aoi->returnType->isVoid())
++    {
++      CASTDeclarator *rv = new CASTDeclarator(new CASTIdentifier("__retval"), 
NULL, NULL, getType(aoi->returnType)->buildDefaultValue());
++      rv->addIndir(getType(aoi->returnType)->getArgIndirLevel(RETVAL));
++      addTo(localVars, new CASTDeclarationStatement(
++        getType(aoi->returnType)->buildDeclaration(rv))
++      );
++
++      addTo(statements, new CASTReturnStatement(
++        new CASTIdentifier("__retval")));
++    } else addTo(statements, new CASTReturnStatement());
++
++  CASTStatement *compound = NULL;
++  addWithTrailingSpacerTo(compound, localVars);
++  addTo(compound, statements);
++  
++  CASTDeclarator *declarator = new CASTDeclarator(implementationName, 
parameters);
++  declarator->addIndir(getType(aoi->returnType)->getArgIndirLevel(RETVAL));
++  CASTDeclaration *declaration = 
getType(aoi->returnType)->buildDeclaration(declarator, new 
CASTCompoundStatement(compound));
++  declaration->addSpecifier(new 
CASTStorageClassSpecifier(mprintf("IDL4_INLINE")));
++  
++  addWithTrailingSpacerTo(result, new CASTDeclarationStatement(declaration));
++
++  addWithTrailingSpacerTo(result, new CASTExpressionStatement(
++    new CASTFunctionOp(
++      buildWrapperName(true),
++      implementationName->clone()))
++  );
++  
++  return result;
++}
++
++CASTStatement* CMSService4_gnu::buildServerDemuxer(const char* 
ctx,CASTIdentifier *prefix, CASTExpression *utableRef,
++                                                                              
                                                                        
CASTExpression *ktableRef, bool useItable, bool hasKernelMessages)
++{
++      CASTIdentifier *fidMask = prefix->clone();      
++      fidMask->addPostfix("_FID_MASK");
++      
++      CASTStatement* r=NULL;
++      
++
++      if(hasKernelMessages)
++              panic("Kernel messages not implemented!");
++      if(useItable)
++              panic("Multiple interfaces not implemented!");
++  
++      addTo(r,new GNU_CALL_FN(new CASTFunctionOp(new CASTIdentifier(""),
++              new CASTUnaryOp("*",
++                      new CASTFunctionOp(
++                              new 
CASTIdentifier("(void(*)(idl4_cap_rpc_context_t))"),
++                              new CASTIndexOp(
++                                      utableRef,
++                                      new CASTBinaryOp("&",
++                                        new CASTFunctionOp(
++                                              new 
CASTIdentifier("idl4_get_function_id"),
++                                              new 
CASTIdentifier("idl4_msg_label(_ctx->msg)")),
++                                        fidMask))))),
++              new CASTIdentifier("_ctx")));
++      addTo(r,new CASTReturnStatement(new CASTIntegerConstant(0)));
++  
++  return r;
++};
+diff -Naur idl4-1.0.2/src/arch/x0/ia32/Makefile.in 
idl4/src/arch/x0/ia32/Makefile.in
+--- idl4-1.0.2/src/arch/x0/ia32/Makefile.in    2003-11-03 22:41:51.000000000 
+0100
++++ idl4/src/arch/x0/ia32/Makefile.in  2005-07-10 08:06:46.783624560 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ noinst_LIBRARIES = libx0i.a
+ libx0i_a_SOURCES = clientcall.cc lipc.cc ms.cc serverloop.cc
+ subdir = src/arch/x0/ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -201,7 +203,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libx0i_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libx0i_a_SOURCES)
+ 
+ all: all-am
+@@ -234,13 +236,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -251,7 +250,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -350,7 +349,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -362,7 +360,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -370,7 +368,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -381,9 +379,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -404,7 +403,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -423,14 +423,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/arch/x0/Makefile.in idl4/src/arch/x0/Makefile.in
+--- idl4-1.0.2/src/arch/x0/Makefile.in 2003-11-03 22:41:51.000000000 +0100
++++ idl4/src/arch/x0/Makefile.in       2005-07-10 08:06:46.051735824 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -183,6 +184,7 @@
+                       optimizer.cc rooster.cc serverloop.cc vcc.cc
+ 
+ subdir = src/arch/x0
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -215,7 +217,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ SOURCES = $(libx0_a_SOURCES)
+ 
+@@ -254,13 +256,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -271,7 +270,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -360,9 +359,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -459,7 +464,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -467,7 +472,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -478,9 +483,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-recursive
+ 
+@@ -501,7 +507,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+@@ -522,10 +529,10 @@
+ 
+ .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+       clean-generic clean-noinstLIBRARIES clean-recursive ctags \
+-      ctags-recursive distclean distclean-compile distclean-depend \
+-      distclean-generic distclean-recursive distclean-tags distdir \
+-      dvi dvi-am dvi-recursive info info-am info-recursive install \
+-      install-am install-data install-data-am install-data-recursive \
++      ctags-recursive distclean distclean-compile distclean-generic \
++      distclean-recursive distclean-tags distdir dvi dvi-am \
++      dvi-recursive info info-am info-recursive install install-am \
++      install-data install-data-am install-data-recursive \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+diff -Naur idl4-1.0.2/src/base/lib/Makefile.in idl4/src/base/lib/Makefile.in
+--- idl4-1.0.2/src/base/lib/Makefile.in        2003-11-03 22:41:52.000000000 
+0100
++++ idl4/src/base/lib/Makefile.in      2005-07-10 08:07:10.711986896 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ noinst_LIBRARIES = libbase.a
+ libbase_a_SOURCES = tools.cc
+ subdir = src/base/lib
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -199,7 +201,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libbase_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libbase_a_SOURCES)
+ 
+ all: all-am
+@@ -229,13 +231,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -246,7 +245,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -345,7 +344,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -357,7 +355,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -365,7 +363,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -376,9 +374,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -399,7 +398,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -418,14 +418,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/base/main.cc idl4/src/base/main.cc
+--- idl4-1.0.2/src/base/main.cc        2003-08-25 06:34:52.000000000 +0200
++++ idl4/src/base/main.cc      2005-07-13 16:36:21.083113600 +0200
+@@ -8,6 +8,9 @@
+ #include <stdlib.h>
+ #include <time.h>
+ 
++#include <fstream>
++#include <vector>
++
+ #ifdef HAVE_GETOPT_LONG
+ #include <getopt.h>
+ #else
+@@ -29,6 +32,7 @@
+ #include "arch/dummy.h"
+ #include "arch/v2.h"
+ #include "arch/v4.h"
++#include "arch/v4_gnu.h"
+ 
+ #define dprintln(fmt...) do { if 
(debug_mode&(~(DEBUG_TESTSUITE+DEBUG_PARANOID))) printf(fmt); } while (0)
+ #define OPTION(sopt, lopt, arg, expl) printf("  -%c%-21s%s\n", sopt, 
(lopt[0]) ? mprintf(", --%s%s%s", lopt, (arg[0] ? "=" : " "), arg) : "", expl)
+@@ -59,6 +63,11 @@
+   OPTION('p',"platform" ,"SPEC","specify platform (ia32, arm)");
+   OPTION('i',"interface","SPEC","choose kernel interface (V2, X0, V4)");
+   OPTION('m',"mapping"  ,"SPEC","use specific mapping (C)");
++  OPTION('l',"class"  ,"","add cap-class stubs (very rudimentary, better use 
wrapping for headers)");
++  OPTION('M',"make-depend"  ,"","build make compliant dependencies");
++  OPTION('C',"compiler"  ,"","specifiy the compiler (and the flags) to use 
[gcc/g++]");
++  OPTION('T',"user-types"  ,"","use the compiler to find out align and size 
of unknown types");
++  OPTION('N',"no-erase"  ,"","don't erase temporary files");
+   printf("\n");
+   exit(1);
+ }
+@@ -74,7 +83,7 @@
+ 
+ {
+   char optch;
+-  static char stropts[] = "stco:h:d::vp:i:m:f:D:I:W:w:";
++  static char stropts[] = "NMTC:lstco:h:d::vp:i:m:f:D:I:W:w:";
+   int optidx;
+   static struct option longopts[] = 
+     { { "debug",     optional_argument, 0, 'd' },
+@@ -90,6 +99,11 @@
+       { "pre-call",  required_argument, 0, 4   },
+       { "post-call", required_argument, 0, 5   },
+       { "help",      no_argument,       0, 1   },
++        { "class",     optional_argument, 0, 'l' },
++        { "compiler",     optional_argument, 0, 'C' },
++        { "make-depend",     optional_argument, 0, 'M' },
++        { "user-types",     optional_argument, 0, 'T' },
++        { "no-erase",     optional_argument, 0, 'N' },
+       { 0,           0,                 0, 0   } };
+ 
+   for (int i=0;i<MAX_OPTIONS;i++)
+@@ -100,16 +114,21 @@
+ 
+   for (int i=0;i<MAX_OPTIONS;i++)
+     globals.preproc_defines[i] = getBuiltinMacro(i);
+-
++  globals.no_erase=false;
+   while ((optch=getopt_long(argc, argv, stropts, longopts, &optidx))!=EOF)
+     switch (optch)
+       {
+         case 's' : globals.output_type = OUTPUT_SERVER; break;
++              case 'N' : globals.no_erase=true;break;
+         case 't' : globals.output_type = OUTPUT_TEMPLATE; break;
+         case 'c' : globals.output_type = OUTPUT_CLIENT; break;
+         case 'o' : strncpy(globals.outfile_name, optarg, FILENAME_MAX);break;
+         case 'h' : strncpy(globals.header_name, optarg, FILENAME_MAX);break;
++        case 'l' : globals.with_cap_class=true;break;
+         case 'v' : version();break;
++        case 'M' : globals.make_depend=true;break;
++        case 'T' : globals.user_types=true;break;
++        case 'C' : if(optarg)globals.cc=optarg;else panic("said to give 
compiler but no compiler given");break;
+         case 'd' : if (optarg)
+                      { 
+                        if (!strcasecmp(optarg, "test"))
+@@ -219,6 +238,7 @@
+         case 'i' : if (!strcasecmp(optarg,"V2")) globals.interface = 
INTERFACE_V2; else
+                    if (!strcasecmp(optarg,"X0")) globals.interface = 
INTERFACE_X0; else
+                    if (!strcasecmp(optarg,"V4")) globals.interface = 
INTERFACE_V4; else
++                   if (!strcasecmp(optarg,"V4_GNU")) globals.interface = 
INTERFACE_V4_GNU; else
+                      {
+                        printf("Unknown kernel interface: %s\n", optarg);
+                        exit(1);
+@@ -265,7 +285,20 @@
+ 
+   if (argc==optind)
+     help();
+-
++  
++  if(globals.user_types&&globals.cc=="")
++        switch (globals.mapping)
++        {
++                case MAPPING_CXX:
++                              globals.cc="g++";
++                              break;
++                case MAPPING_C:
++                              globals.cc="gcc";
++                              break;
++                default:
++                              panic("can't guess the compiler - unknown 
mapping");
++        };
++  
+   dprintln("Debug mode set to %d\n", debug_mode);
+     
+   strncpy(globals.infile_name, argv[optind], FILENAME_MAX);
+@@ -291,11 +324,124 @@
+     } else strcpy(globals.prefix_path, "");
+ }
+ 
++int make_depend()
++{
++      std::ifstream in(globals.infile_name);
++      if(!in)
++      {
++              panic("inputfile doesn't exist");
++              return 1;
++      };
++      std::string s;
++      std::string::iterator i;
++      std::string::size_type c;
++      std::vector<std::string> v;
++      while(getline(in,s))
++      {
++              if((c=s.find("import"))==std::string::npos)
++                      continue;
++              const unsigned skip=6;
++              if((c==0||(s[c-1]==' 
'||s[c-1]=='\t'))&&(s.size()>(c+skip))&&(s[c+skip]==' '||s[c+skip]=='\t'))      
           //make sure it's really a keyword (and not within an identifier)
++              {
++                      std::string::iterator j=s.begin()+c+skip;
++                      for(;*j!='\"'&&j!=s.end();++j);
++                      if(j==s.end())
++                              panic("malformed import directive");
++                      ++j;
++                      std::string::iterator k=j;
++                      for(;*k!='\"'&&k!=s.end();++k);
++                      if(k==s.end())
++                              panic("malformed import directive");
++                      std::string::iterator l=k;
++                      for(;*l!=';'&&l!=s.end();++l);
++                      if(l==s.end())
++                              panic("malformed import directive");
++                      //printf("%s\n",std::string(j,k).c_str());
++                      v.push_back(std::string(j,k));
++              };
++      };
++      
++      printf("%s: %s ",globals.header_name,globals.infile_name);
++      if(v.size())
++      {
++              std::string ccopt;
++              char buffer[MAX_PATH];
++              getcwd(buffer,MAX_OPTIONS);
++              ccopt+=std::string("-I")+buffer+" ";
++              for(const char** 
cpp=globals.preproc_includes;*cpp&&cpp<(globals.preproc_includes+MAX_OPTIONS+1);++cpp)
++                      ccopt+=(std::string("-I")+*cpp)+" ";
++              for(const char** 
cpp=globals.preproc_options;*cpp&&cpp<(globals.preproc_options+MAX_OPTIONS+1);++cpp)
++                      ccopt+=(std::string("-")+*cpp)+" ";
++              for(const char** 
cpp=globals.preproc_defines;*cpp&&cpp<(globals.preproc_defines+MAX_OPTIONS+1);++cpp)
++                      ccopt+=(std::string("-D")+*cpp)+" ";
++              
++              std::string r("/tmp/");
++              for(unsigned i=0;i<15;++i)
++                      r+=(rand()%26+'a');
++              if(globals.mapping==MAPPING_C)
++                      r+=".c";
++              else if(globals.mapping==MAPPING_CXX)
++                      r+="cc";
++              else
++                      panic("unsupported mapping");
++              //printf("%s\n",r.c_str());
++              std::string r2("/tmp/");
++              for(unsigned i=0;i<15;++i)
++                      r2+=(rand()%26+'a');
++              //printf("%s\n",r2.c_str());
++              
++              std::ofstream f(r.c_str());
++              for(unsigned i=0;i<v.size();++i)
++              {
++                      f<<"#include <"<<v[i]<<'>'<<std::endl;
++              };
++              f.close();
++              system((globals.cc+" -MM "+ccopt+r+" > "+r2).c_str());
++              
++              std::ifstream f2(r2.c_str());
++              if(f2)
++              {
++                      getline(f2,s);
++                      if(f2)
++                      {
++                              i=s.begin();
++                              for(;*i!=':'&&i!=s.end();++i);
++                              for(;*i!='.'&&i!=s.end();++i);
++                              for(;*i!=' '&&*i!='\t'&&i!=s.end();++i);
++                              for(;(*i==' '||*i=='\t')&&i!=s.end();++i);
++                              for(;i!=s.end();++i)
++                                      printf("%c",*i);
++                              printf("\n");
++                              while(getline(f2,s))
++                                      printf("%s\n",s.c_str());
++                      }
++                      else
++                      {
++                              f2.close();
++                              remove(r.c_str());
++                              remove(r2.c_str());
++                              panic("confused (by compiler errors?)");
++                      };
++              }
++              f2.close();
++              remove(r.c_str());
++              remove(r2.c_str());
++      }
++      else
++              printf("\n");
++      
++      return 0;
++};
++
+ int main(int argc, char *argv[])
+ 
+ {
++  srand(time(0));
+   parse_args(argc, argv);
+-
++  
++  if(globals.make_depend)
++        return make_depend();
++      
+   if (globals.interface == INTERFACE_X0)
+     {
+       switch (globals.platform)
+@@ -326,7 +472,16 @@
+           case PLATFORM_DUMMY   : msFactory = new CMSFactoryDummy();break;
+           default               : panic("V4 platforms: generic, ia32, dummy");
+         }
+-    } else panic("Unsupported interface");
++    } else 
++  if (globals.interface == INTERFACE_V4_GNU)
++    {
++      switch (globals.platform)
++        {
++          case PLATFORM_GENERIC : msFactory = new CMSFactory4_gnu();break;
++          case PLATFORM_DUMMY   : msFactory = new CMSFactoryDummy();break;
++          default               : panic("V4_GNU platforms: generic, dummy");
++        }
++    }else panic("Unsupported interface");
+ 
+   if (globals.mapping == MAPPING_CXX)
+     CASTBase::setCXXMode(true);
+@@ -349,6 +504,9 @@
+     panic("%s: %i Error(s) and %i Warning(s)", globals.infile_name,
+           mainFile->getErrorCount(), mainFile->getWarningCount());
+ 
++  if(globals.user_types)
++        make_user_types();
++  
+   if (debug_mode & DEBUG_AOI)
+     aoiRoot->accept(new CAoiDumpVisitor());  
+ 
+@@ -358,7 +516,10 @@
+   if ((globals.mapping == MAPPING_C) || (globals.mapping == MAPPING_CXX))
+     {
+       dprintln("transforming...\n");
+-      aoiRoot->accept(new CAoiCrossVisitor());
++      if(globals.interface==INTERFACE_V4_GNU)
++        aoiRoot->accept(new CAoiCrossVisitor_gnu());
++      else
++        aoiRoot->accept(new CAoiCrossVisitor());
+ 
+       CBERootScope *beRoot = (CBERootScope*)aoiRoot->peer;
+       CBEIDSource *idSource = new CBEIDSource();
+diff -Naur idl4-1.0.2/src/base/Makefile.in idl4/src/base/Makefile.in
+--- idl4-1.0.2/src/base/Makefile.in    2003-11-03 22:41:52.000000000 +0100
++++ idl4/src/base/Makefile.in  2005-07-10 08:07:09.974099072 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -185,6 +186,7 @@
+ 
+ EXTRA_DIST = getopt.c getopt1.c getopt_gnu.h
+ subdir = src/base
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -219,7 +221,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ SOURCES = $(libui_a_SOURCES)
+ 
+@@ -253,13 +255,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -270,7 +269,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -281,7 +280,7 @@
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -292,7 +291,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -381,9 +380,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -480,7 +485,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -488,7 +493,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -499,9 +504,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-recursive
+ 
+@@ -522,7 +528,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+@@ -543,10 +550,10 @@
+ 
+ .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+       clean-generic clean-noinstLIBRARIES clean-recursive ctags \
+-      ctags-recursive distclean distclean-compile distclean-depend \
+-      distclean-generic distclean-recursive distclean-tags distdir \
+-      dvi dvi-am dvi-recursive info info-am info-recursive install \
+-      install-am install-data install-data-am install-data-recursive \
++      ctags-recursive distclean distclean-compile distclean-generic \
++      distclean-recursive distclean-tags distdir dvi dvi-am \
++      dvi-recursive info info-am info-recursive install install-am \
++      install-data install-data-am install-data-recursive \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+diff -Naur idl4-1.0.2/src/base/tools.cc idl4/src/base/tools.cc
+--- idl4-1.0.2/src/base/tools.cc       2003-03-12 14:05:44.000000000 +0100
++++ idl4/src/base/tools.cc     2005-07-13 16:42:11.630822248 +0200
+@@ -2,9 +2,13 @@
+ #include <stdlib.h>
+ #include <string.h>
+ 
++#include <fstream>
++#include <unistd.h>
++#include <string>
++
+ #include "globals.h"
+ #include "base.h"
+-
++#include <aoi.h>
+ char *getDefaultFilename(int number, int mode)
+ 
+ {
+@@ -62,3 +66,103 @@
+ 
+   return version_string;
+ }
++
++void make_user_types()
++{
++      std::string ccopt;
++      char buffer[MAX_PATH];
++      getcwd(buffer,MAX_PATH);
++      ccopt+=std::string("-I")+buffer+" ";
++      for(const char** 
cpp=globals.preproc_includes;*cpp&&cpp<(globals.preproc_includes+MAX_OPTIONS+1);++cpp)
++              ccopt+=(std::string("-I")+*cpp)+" ";
++      for(const char** 
cpp=globals.preproc_options;*cpp&&cpp<(globals.preproc_options+MAX_OPTIONS+1);++cpp)
++              ccopt+=(std::string("-")+*cpp)+" ";
++      for(const char** 
cpp=globals.preproc_defines;*cpp&&cpp<(globals.preproc_defines+MAX_OPTIONS+1);++cpp)
++              ccopt+=(std::string("-D")+*cpp)+" ";
++      
++      std::string r1("/tmp/");        
++      for(unsigned i=0;i<15;++i)
++              r1+=(rand()%26+'a');
++      std::string r2=r1;
++      if(globals.mapping==MAPPING_C)
++              r1+=".c";
++      else if(globals.mapping==MAPPING_CXX)
++              r1+="cc";
++      else
++              panic("unsupported mapping");
++      std::string r3("/tmp/");
++      for(unsigned i=0;i<15;++i)
++              r3+=(rand()%26+'a');
++      //printf("%s\n",r1.c_str());
++      //printf("%s\n",r2.c_str());    
++      //printf("%s\n",r3.c_str());    
++      std::ofstream cfile(r1.c_str());
++      assert(cfile);
++      
++      cfile<<"#if HAVE_CONFIG_H\n#include <config.h>\n#endif"<<std::endl;
++      forAll(aoiRoot->includes,
++      {
++              cfile<<"#include 
<"<<((CAoiConstString*)item)->value<<'>'<<std::endl;
++      };);
++      cfile<<"#include <stdlib.h>"<<std::endl;
++      cfile<<"#include <stdio.h>"<<std::endl;
++      cfile<<"int main()"<<std::endl<<'{'<<std::endl; 
++      for(std::map<std::string,CAoiUserType*>::iterator 
i=globals.types.begin();i!=globals.types.end();++i)
++              cfile<<"printf(\"%i 
%i"<<'\\'<<'n'<<"\",sizeof("<<i->first<<"),__alignof("<<i->first<<"));"<<std::endl;
++      cfile<<"exit(0);"<<std::endl<<'}'<<std::endl;
++      
++      system((globals.cc+" "+ccopt+"-o "+r2+" "+r1).c_str());
++      system((r2+" > "+r3).c_str());  
++      
++      std::ifstream ifile(r3.c_str());
++      if(!ifile)
++              if(!globals.no_erase)
++              {
++                      cfile.close();
++                      ifile.close();
++                      remove(r1.c_str());
++                      remove(r2.c_str());
++                      remove(r3.c_str());
++                      assert(false);
++              };
++      
++      unsigned tmp;
++      for(std::map<std::string,CAoiUserType*>::iterator 
i=globals.types.begin();i!=globals.types.end();++i)
++      {
++              ifile>>tmp;
++              if(!ifile)
++                      if(!globals.no_erase)
++                      {
++                              cfile.close();
++                              ifile.close();
++                              remove(r1.c_str());
++                              remove(r2.c_str());
++                              remove(r3.c_str());
++                              assert(false);
++                      };
++              i->second->setSize(tmp);
++              if(!ifile)
++                      if(!globals.no_erase)
++                      {
++                              cfile.close();
++                              ifile.close();
++                              remove(r1.c_str());
++                              remove(r2.c_str());
++                              remove(r3.c_str());
++                              assert(false);
++                      };
++              i->second->setAlign(tmp);
++      };
++      
++      //for(std::map<std::string,CAoiUserType*>::iterator 
i=globals.types.begin();i!=globals.types.end();++i)
++      //      printf("%s: 
%i,%i\n",i->first.c_str(),i->second->getSize(),i->second->getAlign());
++              
++      if(!globals.no_erase)
++      {
++              cfile.close();
++              ifile.close();
++              remove(r1.c_str());
++              remove(r2.c_str());
++              remove(r3.c_str());
++      };
++};
+diff -Naur idl4-1.0.2/src/base/version.cc idl4/src/base/version.cc
+--- idl4-1.0.2/src/base/version.cc     2003-03-29 20:40:46.000000000 +0100
++++ idl4/src/base/version.cc   2005-07-10 08:05:39.445861456 +0200
+@@ -1,6 +1,6 @@
+ #include <config.h>
+ 
+-const char* idl4_version = VERSION " (roadrunner)";
++const char* idl4_version = VERSION " (patch by ness <address@hidden>)";
+ const char* idl4_build   = __DATE__ " " __TIME__;
+ const char* idl4_user    = __USER__;
+ const char* idl4_gcc     = __GCCVERSION__;
+diff -Naur idl4-1.0.2/src/be/cross.cc idl4/src/be/cross.cc
+--- idl4-1.0.2/src/be/cross.cc 2002-10-30 17:08:55.000000000 +0100
++++ idl4/src/be/cross.cc       2005-07-10 18:37:42.497045664 +0200
+@@ -307,3 +307,10 @@
+         } else panic("Unknown custom type: %s", aoi->identifier);
+     }  
+ }
++
++void CAoiCrossVisitor::visit(CAoiUserType *aoi)
++{
++      assert(globals.user_types);
++      if(!aoi->peer)
++              aoi->peer=new CBEUserType(aoi);
++};
+diff -Naur idl4-1.0.2/src/be/Makefile.in idl4/src/be/Makefile.in
+--- idl4-1.0.2/src/be/Makefile.in      2003-11-03 22:41:53.000000000 +0100
++++ idl4/src/be/Makefile.in    2005-07-10 08:07:12.756676056 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -185,6 +186,7 @@
+                       test.cc varsource.cc
+ 
+ subdir = src/be
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -221,7 +223,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ SOURCES = $(libbe_a_SOURCES)
+ 
+@@ -263,13 +265,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -280,7 +279,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -369,9 +368,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -468,7 +473,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -476,7 +481,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -487,9 +492,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-recursive
+ 
+@@ -510,7 +516,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+@@ -531,10 +538,10 @@
+ 
+ .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+       clean-generic clean-noinstLIBRARIES clean-recursive ctags \
+-      ctags-recursive distclean distclean-compile distclean-depend \
+-      distclean-generic distclean-recursive distclean-tags distdir \
+-      dvi dvi-am dvi-recursive info info-am info-recursive install \
+-      install-am install-data install-data-am install-data-recursive \
++      ctags-recursive distclean distclean-compile distclean-generic \
++      distclean-recursive distclean-tags distdir dvi dvi-am \
++      dvi-recursive info info-am info-recursive install install-am \
++      install-data install-data-am install-data-recursive \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+diff -Naur idl4-1.0.2/src/be/ops/Makefile.in idl4/src/be/ops/Makefile.in
+--- idl4-1.0.2/src/be/ops/Makefile.in  2003-11-03 22:41:53.000000000 +0100
++++ idl4/src/be/ops/Makefile.in        2005-07-10 08:07:13.490564488 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -181,6 +182,7 @@
+                       simplecopy.cc subarray.cc untilzero.cc
+ 
+ subdir = src/be/ops
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -206,7 +208,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libops_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libops_a_SOURCES)
+ 
+ all: all-am
+@@ -242,13 +244,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -259,7 +258,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -358,7 +357,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -370,7 +368,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -378,7 +376,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -389,9 +387,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -412,7 +411,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -431,14 +431,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/be/scope.cc idl4/src/be/scope.cc
+--- idl4-1.0.2/src/be/scope.cc 2003-02-26 15:51:00.000000000 +0100
++++ idl4/src/be/scope.cc       2005-07-10 08:05:39.447861152 +0200
+@@ -259,8 +259,17 @@
+       addWithTrailingSpacerTo(result, msFactory->buildTestIncludes());
+       addTo(result, new CASTPreprocInclude(new 
CASTIdentifier(getDefaultFilename(FILE_HEADER, OUTPUT_CLIENT))));
+     }
+-
+-  addWithTrailingSpacerTo(result, new CASTPreprocInclude(new 
CASTIdentifier(getDefaultFilename(FILE_HEADER, OUTPUT_SERVER))));
++      
++  //edit by ness
++  char* s=getDefaultFilename(FILE_HEADER, OUTPUT_SERVER);
++  unsigned i;
++  for(i=strlen(s)-1;(i>0)&&s[i]!='_';--i);
++  unsigned j;
++  for(j=i-1;(i>0)&&s[j]!='_';--j);
++  for(;s[i]!='\0';++i,++j)s[j]=s[i];
++  s[j]='\0';
++  
++  addWithTrailingSpacerTo(result, new CASTPreprocInclude(new 
CASTIdentifier(s)));
+   
+   if (debug_mode&DEBUG_TESTSUITE)
+     addTo(result, buildTestDeclarations());
+diff -Naur idl4-1.0.2/src/be/types/Makefile.am idl4/src/be/types/Makefile.am
+--- idl4-1.0.2/src/be/types/Makefile.am        2002-10-30 17:10:53.000000000 
+0100
++++ idl4/src/be/types/Makefile.am      2005-07-10 15:24:53.955087016 +0200
+@@ -3,4 +3,4 @@
+ noinst_LIBRARIES=     libtypes.a
+ libtypes_a_SOURCES=   alias.cc enum.cc float.cc fpage.cc integer.cc \
+                       object.cc opaque.cc pointer.cc sequence.cc string.cc \
+-                      struct.cc union.cc
++                      struct.cc union.cc usertype.cc
+diff -Naur idl4-1.0.2/src/be/types/Makefile.in idl4/src/be/types/Makefile.in
+--- idl4-1.0.2/src/be/types/Makefile.in        2003-11-03 22:41:54.000000000 
+0100
++++ idl4/src/be/types/Makefile.in      2005-07-10 15:25:03.146689680 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,9 +180,10 @@
+ noinst_LIBRARIES = libtypes.a
+ libtypes_a_SOURCES = alias.cc enum.cc float.cc fpage.cc integer.cc \
+                       object.cc opaque.cc pointer.cc sequence.cc string.cc \
+-                      struct.cc union.cc
++                      struct.cc union.cc usertype.cc
+ 
+ subdir = src/be/types
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -192,7 +194,8 @@
+ am_libtypes_a_OBJECTS = alias.$(OBJEXT) enum.$(OBJEXT) float.$(OBJEXT) \
+       fpage.$(OBJEXT) integer.$(OBJEXT) object.$(OBJEXT) \
+       opaque.$(OBJEXT) pointer.$(OBJEXT) sequence.$(OBJEXT) \
+-      string.$(OBJEXT) struct.$(OBJEXT) union.$(OBJEXT)
++      string.$(OBJEXT) struct.$(OBJEXT) union.$(OBJEXT) \
++      usertype.$(OBJEXT)
+ libtypes_a_OBJECTS = $(am_libtypes_a_OBJECTS)
+ 
+ DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
+@@ -203,14 +206,15 @@
+ @AMDEP_TRUE@  ./$(DEPDIR)/integer.Po ./$(DEPDIR)/object.Po \
+ @AMDEP_TRUE@  ./$(DEPDIR)/opaque.Po ./$(DEPDIR)/pointer.Po \
+ @AMDEP_TRUE@  ./$(DEPDIR)/sequence.Po ./$(DEPDIR)/string.Po \
address@hidden@ ./$(DEPDIR)/struct.Po ./$(DEPDIR)/union.Po
address@hidden@ ./$(DEPDIR)/struct.Po ./$(DEPDIR)/union.Po \
address@hidden@ ./$(DEPDIR)/usertype.Po
+ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+       $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+ CXXLD = $(CXX)
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libtypes_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtypes_a_SOURCES)
+ 
+ all: all-am
+@@ -250,14 +254,12 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+-
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -268,7 +270,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -367,7 +369,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -379,7 +380,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -387,7 +388,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -398,9 +399,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -421,7 +423,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -440,14 +443,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/be/types/usertype.cc idl4/src/be/types/usertype.cc
+--- idl4-1.0.2/src/be/types/usertype.cc        1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/be/types/usertype.cc      2005-07-13 17:40:39.346218864 +0200
+@@ -0,0 +1,45 @@
++#include "ops.h"
++#include <cast.h>
++#define dprintln(a...) do { if (debug_mode&DEBUG_MARSHAL) println(a); } while 
(0)
++
++CBEMarshalOp *CBEUserType::buildMarshalOps(CMSConnection *connection, int 
channels, CASTExpression *rvalue, const char *name, CBEType *originalType, 
CBEParameter *param, int flags)
++{
++      CBEMarshalOp *result;
++      
++      dprintln("Marshalling %s (%s)", name, aoi->name);
++      indent(+1);
++      
++      result = new CBEOpSimpleCopy(connection, channels, rvalue, 
originalType, aoi->getAlign(), name, param, flags);
++      
++      indent(-1);
++      
++      return result;
++}
++
++CASTDeclaration *CBEUserType::buildDeclaration(CASTDeclarator *decl, 
CASTCompoundStatement *compound)
++{
++      return new CASTDeclaration(new CASTTypeSpecifier(new 
CASTIdentifier(aoi->name)), decl, compound);
++}
++
++int CBEUserType::getArgIndirLevel(CBEDeclType declType)
++{ 
++      if ((declType==INOUT) || (declType==OUT))
++              return 1;
++      
++      return 0;
++}
++
++CASTExpression *CBEUserType::buildBufferAllocation(CASTExpression *elements)
++{
++      //dummy:
++      return new CASTFunctionOp(
++    new 
CASTIdentifier("im_only_a_dummy_for_CBEUserType::buildBufferAllocation"),
++    new CASTUnaryOp("(unsigned)", 
++      elements)
++  );
++}
++
++CASTExpression *CBEUserType::buildDefaultValue()
++{
++      return new CASTIdentifier("{0,}");
++}
+diff -Naur idl4-1.0.2/src/cast/cast.cc idl4/src/cast/cast.cc
+--- idl4-1.0.2/src/cast/cast.cc        2003-08-25 06:41:22.000000000 +0200
++++ idl4/src/cast/cast.cc      2005-07-10 08:05:39.448861000 +0200
+@@ -351,6 +351,7 @@
+      } while (iterator!=this);     
+ }
+ 
++//change by ness: print the atts before the identifier
+ void CASTDeclarator::write()
+ 
+ {
+@@ -362,9 +363,17 @@
+   if (qualifiers)
+     {
+       qualifiers->writeAll(" ");
+-      if (identifier)
++      if (attributes)
+         print(" ");
+     }  
++      
++  if (attributes)
++    {
++      print(" ");
++      attributes->writeAll(" ");
++      if(identifier)
++        print(" ");
++    }
+ 
+   if (identifier) 
+     identifier->write();
+@@ -406,12 +415,6 @@
+       print(" : ");
+       bitSize->write();
+     }
+-
+-  if (attributes)
+-    {
+-      print(" ");
+-      attributes->writeAll(" ");
+-    }
+     
+   if (initializer)
+     {
+@@ -1532,4 +1535,3 @@
+   
+   leaveMajor("#undef");
+ }
+-  
+diff -Naur idl4-1.0.2/src/cast/Makefile.in idl4/src/cast/Makefile.in
+--- idl4-1.0.2/src/cast/Makefile.in    2003-11-03 22:41:54.000000000 +0100
++++ idl4/src/cast/Makefile.in  2005-07-10 08:07:36.844014224 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ noinst_LIBRARIES = libcast.a
+ libcast_a_SOURCES = cast.cc clone.cc dfs.cc visitor.cc
+ subdir = src/cast
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -201,7 +203,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libcast_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libcast_a_SOURCES)
+ 
+ all: all-am
+@@ -234,13 +236,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -251,7 +250,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -350,7 +349,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -362,7 +360,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -370,7 +368,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -381,9 +379,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -404,7 +403,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -423,14 +423,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/fe/c++/Makefile.in idl4/src/fe/c++/Makefile.in
+--- idl4-1.0.2/src/fe/c++/Makefile.in  2003-11-03 22:41:55.000000000 +0100
++++ idl4/src/fe/c++/Makefile.in        2005-07-10 08:07:40.714425832 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -184,6 +185,7 @@
+ 
+ CLEANFILES = parser.cc parser.h scanner.cc
+ subdir = src/fe/c++
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -212,7 +214,8 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES = $(libcxx_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in parser.cc parser.h scanner.cc
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am parser.cc parser.h \
++      scanner.cc
+ SOURCES = $(libcxx_a_SOURCES)
+ 
+ all: all-am
+@@ -250,13 +253,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -267,7 +267,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -282,8 +282,6 @@
+ 
+ .yy.cc:
+       $(YACCCOMPILE) `test -f '$<' || echo '$(srcdir)/'`$<
+-      sed '/^#/ s|y\.tab\.c|$@|' y.tab.c >$@
+-      rm -f y.tab.c
+       if test -f y.tab.h; then \
+         to=`echo "$*_H" | sed \
+                 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' 
\
+@@ -299,6 +297,8 @@
+       if test -f y.output; then \
+         mv y.output $*.output; \
+       fi
++      sed '/^#/ s|y\.tab\.c|$@|' y.tab.c >address@hidden && mv address@hidden 
$@
++      rm -f y.tab.c
+ uninstall-info-am:
+ 
+ ETAGS = etags
+@@ -394,7 +394,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -406,7 +405,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -415,7 +414,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -429,9 +428,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -452,7 +452,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -471,14 +472,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-am
+ 
+ 
+ dist-hook:
+diff -Naur idl4-1.0.2/src/fe/idl/Makefile.in idl4/src/fe/idl/Makefile.in
+--- idl4-1.0.2/src/fe/idl/Makefile.in  2003-11-03 22:41:56.000000000 +0100
++++ idl4/src/fe/idl/Makefile.in        2005-07-10 08:07:47.473398312 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -184,6 +185,7 @@
+ 
+ CLEANFILES = parser.cc parser.h scanner.cc
+ subdir = src/fe/idl
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -212,7 +214,8 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES = $(libidl_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in parser.cc parser.h scanner.cc
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am parser.cc parser.h \
++      scanner.cc
+ SOURCES = $(libidl_a_SOURCES)
+ 
+ all: all-am
+@@ -250,13 +253,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -267,7 +267,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -282,8 +282,6 @@
+ 
+ .yy.cc:
+       $(YACCCOMPILE) `test -f '$<' || echo '$(srcdir)/'`$<
+-      sed '/^#/ s|y\.tab\.c|$@|' y.tab.c >$@
+-      rm -f y.tab.c
+       if test -f y.tab.h; then \
+         to=`echo "$*_H" | sed \
+                 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' 
\
+@@ -299,6 +297,8 @@
+       if test -f y.output; then \
+         mv y.output $*.output; \
+       fi
++      sed '/^#/ s|y\.tab\.c|$@|' y.tab.c >address@hidden && mv address@hidden 
$@
++      rm -f y.tab.c
+ uninstall-info-am:
+ 
+ ETAGS = etags
+@@ -394,7 +394,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -406,7 +405,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -415,7 +414,7 @@
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -429,9 +428,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -452,7 +452,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -471,14 +472,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-am
+ 
+ 
+ dist-hook:
+diff -Naur idl4-1.0.2/src/fe/idl/parser.yy idl4/src/fe/idl/parser.yy
+--- idl4-1.0.2/src/fe/idl/parser.yy    2003-03-27 09:59:17.000000000 +0100
++++ idl4/src/fe/idl/parser.yy  2005-07-10 20:29:09.287706664 +0200
+@@ -331,18 +331,23 @@
+ import                : IMPORT filenames {
+                     while (!$2->isEmpty())
+                       {
+-                        CAoiConstString *thisFile = 
(CAoiConstString*)($2->removeFirstElement());
+-                        CAoiList *importedTypes = 
importTypes(thisFile->value, getContext());
+-                        if (importedTypes)
+-                          {
+-                            while (!importedTypes->isEmpty())
+-                              {
+-                                CAoiType *element = 
(CAoiType*)importedTypes->removeFirstElement();
+-                                element->parentScope = currentScope;
+-                                currentScope->types->add(element);
+-                              }
+-                            aoiRoot->includes->add(thisFile);
+-                          } else ParseError(ERR_PARS_IMPORT_FAILED, 
thisFile->value);  
++                                                if(globals.user_types)
++                                                        
aoiRoot->includes->add((CAoiConstString*)($2->removeFirstElement()));
++                                                else
++                                                {
++                                                      CAoiConstString 
*thisFile = (CAoiConstString*)($2->removeFirstElement());
++                                                      CAoiList *importedTypes 
= importTypes(thisFile->value, getContext());
++                                                      if (importedTypes)
++                                                        {
++                                                              while 
(!importedTypes->isEmpty())
++                                                                {
++                                                                      
CAoiType *element = (CAoiType*)importedTypes->removeFirstElement();
++                                                                      
element->parentScope = currentScope;
++                                                                      
currentScope->types->add(element);
++                                                                }
++                                                              
aoiRoot->includes->add(thisFile);
++                                                        } else 
ParseError(ERR_PARS_IMPORT_FAILED, thisFile->value);  
++                                                }
+                       }
+                   }
+                 | INCLUDE filenames {
+@@ -408,8 +413,13 @@
+                     CAoiBase *ref = currentScope->lookupSymbol($1, SYM_ANY);
+                     if (!ref)
+                       {
+-                        GrammarError(ERR_PARS_REFERENCE_UNDEFINED);
+-                        $$ = NULL;
++                        if(globals.user_types)
++                                                      $$ = 
aoiFactory->buildUserType($1,getContext());
++                                              else
++                                              {
++                                                      
GrammarError(ERR_PARS_REFERENCE_UNDEFINED);
++                                                      $$=0;
++                                              };
+                       } else $$ = aoiFactory->buildRef(ref, getContext());
+                   }   
+               | SCOPE id {
+diff -Naur idl4-1.0.2/src/fe/lib/Makefile.in idl4/src/fe/lib/Makefile.in
+--- idl4-1.0.2/src/fe/lib/Makefile.in  2003-11-03 22:41:57.000000000 +0100
++++ idl4/src/fe/lib/Makefile.in        2005-07-10 08:07:51.118844120 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -179,6 +180,7 @@
+ noinst_LIBRARIES = libcompiler.a
+ libcompiler_a_SOURCES = context.cc helpers.cc
+ subdir = src/fe/lib
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -199,7 +201,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libcompiler_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libcompiler_a_SOURCES)
+ 
+ all: all-am
+@@ -230,13 +232,10 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -247,7 +246,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -346,7 +345,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -358,7 +356,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -366,7 +364,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -377,9 +375,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -400,7 +399,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -419,14 +419,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/fe/Makefile.in idl4/src/fe/Makefile.in
+--- idl4-1.0.2/src/fe/Makefile.in      2003-11-03 22:41:55.000000000 +0100
++++ idl4/src/fe/Makefile.in    2005-07-10 08:07:39.979537552 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -178,6 +179,7 @@
+ 
+ SUBDIRS = c++ idl lib
+ subdir = src/fe
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -188,7 +190,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ all: all-recursive
+ 
+@@ -280,9 +282,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -379,7 +387,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -387,7 +395,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -398,7 +406,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -420,7 +428,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/src/include/aoi.h idl4/src/include/aoi.h
+--- idl4-1.0.2/src/include/aoi.h       2002-10-30 17:15:04.000000000 +0100
++++ idl4/src/include/aoi.h     2005-07-10 14:55:41.561334360 +0200
+@@ -79,6 +79,7 @@
+   virtual bool isConstBase() { return false; };
+   virtual bool isProperty() { return false; };
+   virtual bool isParameter() { return false; };
++  virtual bool isUserType(){return false;};
+ };
+ 
+ class CAoiList : public CAoiBase
+@@ -291,6 +292,21 @@
+   virtual bool isVoid() { return false; };
+ };
+ 
++class CAoiUserType : public CAoiType
++{
++protected:
++      unsigned size,align;
++public:
++      virtual bool isUserType(){return true;};
++      virtual void accept(CAoiVisitor *worker);
++      CAoiUserType(const char* ident,CAoiScope *parentScope, CAoiContext 
*context)
++              :CAoiType(ident, parentScope, context){};
++      unsigned getSize()const{return size;};
++      unsigned getAlign()const{return align;};        
++      void setAlign(unsigned a){align=a;};
++      void setSize(unsigned a){size=a;};
++};
++
+ class CAoiStructType : public CAoiType
+ 
+ {
+@@ -549,6 +565,8 @@
+ 
+ {
+ public:
++  virtual CAoiRef* buildUserType(const char* id,CAoiContext *ctx)
++      {if(globals.types[id]==0)globals.types[id]=new 
CAoiUserType(id,aoiRoot,ctx);return buildRef(globals.types[id],ctx);};
+   virtual CAoiRootScope *getRootScope()
+     { return new CAoiRootScope(); };
+   virtual CAoiModule *buildModule(CAoiScope *parentScope, const char 
*identifier, CAoiContext *context) 
+@@ -655,6 +673,8 @@
+   virtual void visit(CAoiProperty *peer) { assert(false); };
+   virtual void visit(CAoiOperation *peer) { assert(false); };
+   virtual void visit(CAoiAttribute *peer) { assert(false); };
++  
++  virtual void visit(CAoiUserType *peer) { assert(false); };
+ };
+ 
+ #endif
+diff -Naur idl4-1.0.2/src/include/arch/v4_gnu.h idl4/src/include/arch/v4_gnu.h
+--- idl4-1.0.2/src/include/arch/v4_gnu.h       1970-01-01 01:00:00.000000000 
+0100
++++ idl4/src/include/arch/v4_gnu.h     2005-07-13 14:34:50.867221560 +0200
+@@ -0,0 +1,120 @@
++#ifndef ARCH_V4_GNU_H
++#define ARCH_V4_GNU_H ARCH_V4_GNU_H
++#include "v4.h"
++#include <be.h>
++#include <cross.h>
++#ifndef NDEBUG
++#define m_assert(a,b) if(!(a))panic(b)
++#else
++#define m_assert(a,b) if(0)
++#endif
++
++#define GNU_CALL_FN(name,par)\
++CASTExpressionStatement(\
++              new CASTFunctionOp(\
++                      name,\
++                      par))
++
++#define GNU_CALL_FN_NAME(name,par)\
++CASTExpressionStatement(\
++              new CASTFunctionOp(\
++                      new CASTIdentifier(name),\
++                      new CASTIdentifier(par)))
++
++class CMSConnection4_gnu
++      :public CMSConnection4
++{
++public:
++      CMSConnection4_gnu(CMSService4 *service, int numChannels, int fid, int 
iid, int bitsPerWord)
++              :CMSConnection4(service, numChannels, fid, iid, bitsPerWord) {};
++                      
++      virtual void dump(){};
++                      
++      virtual CASTStatement* buildClientLocalVars(CASTIdentifier* key);
++      virtual CASTDeclarationStatement* buildMessageMembers(int channel);
++      virtual CASTExpression *buildLabelExpr();
++      virtual CASTStatement *buildClientCall(CASTExpression *target, 
CASTExpression *env);
++      virtual CASTStatement *buildServerDeclarations(CASTIdentifier *key);
++      virtual CASTDeclaration *buildWrapperParams(CASTIdentifier *key);
++      virtual CASTStatement *buildServerLocalVars(CASTIdentifier *key);
++      virtual CBEType *getWrapperReturnType();
++      virtual CASTExpression *buildServerCallerID();
++              
++      virtual CASTExpression *buildSourceBufferRvalue(int channel);
++      virtual CASTExpression *buildTargetBufferRvalue(int channel);
++      virtual CASTExpression *buildFCCDataSourceExpr(int channel, ChunkID 
chunk);
++              
++      virtual CASTStatement* buildServerAppendData(const char* msg,const 
char* ret);
++      virtual CASTStatement* buildServerStoreData(const char* msg);
++              
++      virtual CASTStatement* appendRegFixedToMsg(int channel,CMSChunk4* 
chunk,const char* msg);
++      virtual CASTStatement* storeRegFixedFromMsg(int channel,CMSChunk4* 
chunk,unsigned nr,const char* msg);
++      virtual CASTExpression *buildClientCallSucceeded();
++};
++
++class CMSService4_gnu
++      :public CMSService4
++{
++public:
++      virtual CMSConnection *buildConnection(int numChannels, int fid, int 
iid)
++              {return new CMSConnection4_gnu(this, numChannels, fid, iid, 
32);};
++      virtual CASTStatement *buildServerLoop(CASTIdentifier *prefix, 
CASTExpression *utableRef, CASTExpression *ktableRef, bool useItable, bool 
hasKernelMessages);
++      virtual const char* getServerTemplateBucketName(){static const char* 
s="_bucket";return s;};
++      virtual CASTStatement* buildServerDemuxer       (const char* 
ctx,CASTIdentifier *prefix, CASTExpression *utableRef,
++                                                                              
                                                                        
CASTExpression *ktableRef, bool useItable, bool hasKernelMessages);
++};
++
++class CMSFactory4_gnu
++      :public CMSFactory
++{
++private:
++      CBEType *mw_type, *tid_type;
++protected:
++      CMSFactory4_gnu(CBEType* t1,CBEType* t2)
++              :mw_type(t1),tid_type(t2){};
++public:
++      CMSFactory4_gnu()
++              :       mw_type(new CBEOpaqueType("l4_word_t", 
globals.word_size, globals.word_size, true)),
++                      tid_type(new CBEOpaqueType("l4_thread_id_t", 
globals.word_size, globals.word_size, true)){}
++      virtual CMSService *getService() { return new CMSService4_gnu(); };
++      virtual CMSService *getLocalService() { return new CMSService4_gnu(); };
++      virtual const char *getInterfaceName() { return "V4_GNU"; };
++      virtual const char *getPlatformName() { return "Generic"; };
++      virtual CBEType *getMachineWordType() { return mw_type; };
++      virtual CBEType *getThreadIDType() { return tid_type; };
++      virtual void initRootScope(CAoiRootScope *rootScope);
++};
++
++class CBEInterface_gnu
++      :public CBEInterface
++{
++public:
++      CBEInterface_gnu(CAoiInterface *aoi, CBEList *inheritedOps) : 
CBEInterface(aoi,inheritedOps){};
++              
++      virtual CASTStatement *buildReferenceDefinition();
++      virtual CASTStatement *buildServerDefinitions();
++      virtual CASTIdentifier *buildServerDemuxerName();
++      virtual CASTStatement *buildServerTemplate();
++};
++
++class CBEOperation_gnu
++      :public CBEOperation
++{
++public:
++      CBEOperation_gnu(CAoiOperation *aoi)
++              :CBEOperation(aoi){};
++      virtual CASTStatement *buildClientHeader();
++      virtual CASTStatement *buildServerHeader();
++      virtual CASTCompoundStatement* buildServerStub();
++      virtual CASTStatement *buildServerTemplate();
++};
++
++class CAoiCrossVisitor_gnu
++      :public CAoiCrossVisitor
++{
++public:
++      virtual void visit(CAoiInterface *aoi);
++      virtual void visit(CAoiOperation *aoi);
++};
++
++#endif        //ARCH_V4_GNU_H
+diff -Naur idl4-1.0.2/src/include/arch/v4.h idl4/src/include/arch/v4.h
+--- idl4-1.0.2/src/include/arch/v4.h   2003-03-29 20:57:19.000000000 +0100
++++ idl4/src/include/arch/v4.h 2005-07-10 08:05:39.454860088 +0200
+@@ -107,7 +107,8 @@
+   virtual CASTStatement *buildServerReplyDeclarations(CASTIdentifier *key);
+   virtual CASTStatement *buildServerReply();
+ 
+-  CASTDeclarationStatement *buildMessageMembers(int channel);
++  virtual CASTDeclarationStatement *buildMessageMembers(int channel);
++  
+   CASTIdentifier *buildChannelIdentifier(int channel);
+   virtual CASTExpression *buildSourceBufferRvalue(int channel);
+   virtual CASTExpression *buildTargetBufferRvalue(int channel);
+@@ -196,6 +197,9 @@
+   virtual CASTStatement *buildServerBackjump(int channel, CASTExpression 
*environment);
+   virtual CASTStatement *buildServerReplyDeclarations(CASTIdentifier *key);
+   virtual CASTStatement *buildServerReply();
++        
++  //change by ness
++  virtual CASTBase *buildServerWrapper(CASTIdentifier *key, 
CASTCompoundStatement *compound);
+ };
+ 
+ class CMSServiceI4 : public CMSService4
+diff -Naur idl4-1.0.2/src/include/base.h idl4/src/include/base.h
+--- idl4-1.0.2/src/include/base.h      2003-03-12 14:11:14.000000000 +0100
++++ idl4/src/include/base.h    2005-07-10 14:32:16.661911536 +0200
+@@ -54,5 +54,6 @@
+ char *aprintf(const char *fmt, ...);
+ void mfree(char *fmt);
+ const char *getBuiltinMacro(int nr);
++void make_user_types();
+ 
+ #endif
+diff -Naur idl4-1.0.2/src/include/be.h idl4/src/include/be.h
+--- idl4-1.0.2/src/include/be.h        2003-04-08 15:57:19.000000000 +0200
++++ idl4/src/include/be.h      2005-07-13 17:00:35.234699368 +0200
+@@ -330,7 +330,7 @@
+ class CBEInterface : public CBEScope
+ 
+ {
+-private: 
++protected: 
+   CAoiInterface *aoi;
+   CMSService *service;
+   CBEList *inheritedOps;
+@@ -343,12 +343,12 @@
+   virtual void marshal();
+   
+   CASTStatement *buildTitleComment();
+-  CASTStatement *buildReferenceDefinition();
+-  CASTStatement *buildServerDefinitions();
++  virtual CASTStatement *buildReferenceDefinition();
++  virtual CASTStatement *buildServerDefinitions();
+   CASTIdentifier *buildIdentifier();
+   CASTStatement *buildClientHeader();
+   CASTStatement *buildServerHeader();
+-  CASTStatement *buildServerTemplate();
++  virtual CASTStatement *buildServerTemplate();
+   CASTStatement *buildTestInvocation();
+   CASTIdentifier *buildServerFuncName();
+   CASTStatement *buildServerLoop();
+@@ -497,6 +497,37 @@
+   CASTStatement *buildTestServerCheckGeneric(CASTExpression *globalPath, 
CASTExpression *localPath, const char *text);
+ };
+ 
++class CBEUserType : public CBEType
++{
++private: 
++  CAoiUserType *aoi;
++
++public: 
++  CBEUserType(CAoiUserType *aoi) : CBEType(aoi) { this->aoi = aoi; };
++  virtual CASTDeclaration *buildDeclaration(CASTDeclarator *decl, 
CASTCompoundStatement *compound = NULL);
++  virtual CASTStatement *buildDefinition() { return NULL; };
++  virtual CBEMarshalOp *buildMarshalOps(CMSConnection *connection, int 
channels, CASTExpression *rvalue, const char *name, CBEType *originalType, 
CBEParameter *param, int flags);
++  virtual CASTExpression *buildBufferAllocation(CASTExpression *elements);
++  virtual CASTExpression *buildDefaultValue();
++
++  virtual CASTStatement *buildTestClientInit(CASTExpression *globalPath, 
CASTExpression *localPath, CBEVarSource *varSource, CBEDeclType type, 
CBEParameter *param){panic("not implemented: 
CBEUserType::buildTestClientInit");};
++  virtual CASTStatement *buildTestClientCheck(CASTExpression *globalPath, 
CASTExpression *localPath, CBEVarSource *varSource, CBEDeclType 
type){panic("not implemented: CBEUserType::buildTestClientCheck");};
++  virtual CASTStatement *buildTestClientPost(CASTExpression *globalPath, 
CASTExpression *localPath, CBEVarSource *varSource, CBEDeclType 
type){panic("not implemented: CBEUserType::buildTestClientPost");};
++  virtual CASTStatement *buildTestClientCleanup(CASTExpression *globalPath, 
CASTExpression *localPath, CBEVarSource *varSource, CBEDeclType 
type){panic("not implemented: CBEUserType::buildTestClientCleanup");};
++  virtual CASTStatement *buildTestServerInit(CASTExpression *globalPath, 
CASTExpression *localPath, CBEVarSource *varSource, CBEDeclType type, 
CBEParameter *param, bool bufferAvailable){panic("not implemented: 
CBEUserType::buildTestServerInit");};
++  virtual CASTStatement *buildTestServerCheck(CASTExpression *globalPath, 
CASTExpression *localPath, CBEVarSource *varSource, CBEDeclType 
type){panic("not implemented: CBEUserType::buildTestServerCheck");};
++  virtual CASTStatement *buildTestServerRecheck(CASTExpression *globalPath, 
CASTExpression *localPath, CBEVarSource *varSource, CBEDeclType 
type){panic("not implemented: CBEUserType::buildTestServerRecheck");};
++  virtual CASTStatement *buildTestDisplayStmt(CASTExpression *globalPath, 
CASTExpression *localPath, CBEVarSource *varSource, CBEDeclType type, 
CASTExpression *value){panic("not implemented: 
CBEUserType::buildTestDisplayStmt");};;
++
++  virtual bool needsSpecialHandling() { return false; };
++  virtual bool needsDirectCopy() { return true; };
++  virtual int getArgIndirLevel(CBEDeclType type);
++  virtual int getFlatSize() { return aoi->getSize(); };
++  virtual int getAlignment(){ return aoi->getAlign(); };
++  virtual bool isScalar() { return false; };
++  virtual bool involvesMapping() { return false; };
++};
++
+ class CBEFloatType : public CBEType
+ 
+ {
+diff -Naur idl4-1.0.2/src/include/check.h idl4/src/include/check.h
+--- idl4-1.0.2/src/include/check.h     2002-10-30 17:16:57.000000000 +0100
++++ idl4/src/include/check.h   2005-07-10 14:19:43.853355832 +0200
+@@ -71,6 +71,7 @@
+   virtual void visit(CAoiOperation *peer);
+   virtual void visit(CAoiAttribute *peer);
+   virtual void visit(CAoiContext *peer);
++  virtual void visit(CAoiUserType *peer);
+ };
+ 
+ #endif
+diff -Naur idl4-1.0.2/src/include/cross.h idl4/src/include/cross.h
+--- idl4-1.0.2/src/include/cross.h     2002-10-30 17:16:57.000000000 +0100
++++ idl4/src/include/cross.h   2005-07-10 14:17:30.416641296 +0200
+@@ -36,6 +36,8 @@
+   virtual void visit(CAoiUnionElement *aoi);
+   virtual void visit(CAoiOperation *aoi);
+   virtual void visit(CAoiAttribute *aoi);
++  
++  virtual void visit(CAoiUserType *peer);
+ };
+ 
+ #endif
+diff -Naur idl4-1.0.2/src/include/dump.h idl4/src/include/dump.h
+--- idl4-1.0.2/src/include/dump.h      2002-10-30 17:16:57.000000000 +0100
++++ idl4/src/include/dump.h    2005-07-10 14:24:28.618065016 +0200
+@@ -41,6 +41,8 @@
+   virtual void visit(CAoiProperty *peer);
+   virtual void visit(CAoiOperation *peer);
+   virtual void visit(CAoiAttribute *peer);
++  
++  virtual void visit(CAoiUserType *peer);
+ };
+ 
+ #endif
+diff -Naur idl4-1.0.2/src/include/globals.h idl4/src/include/globals.h
+--- idl4-1.0.2/src/include/globals.h   2003-04-08 15:57:36.000000000 +0200
++++ idl4/src/include/globals.h 2005-07-13 16:35:15.258120520 +0200
+@@ -3,6 +3,8 @@
+ 
+ #include <stdio.h>
+ #include <time.h>
++#include <string>
++#include <map>
+ 
+ #define PARSER_ALLOW_UNBOUNDED
+ #undef  PARSER_STRICT
+@@ -31,6 +33,7 @@
+ #define INTERFACE_X0 0
+ #define INTERFACE_V4 1
+ #define INTERFACE_V2 2
++#define INTERFACE_V4_GNU 3
+ 
+ #define MAPPING_C 0
+ #define MAPPING_CXX 1
+@@ -50,6 +53,10 @@
+ #define FLAG_LOOPONLY         (1<<6)
+ #define FLAG_MODULESONLY      (1<<7)
+ 
++#define MAX_PATH 1024
++
++class CAoiUserType;
++      
+ typedef struct {
+                  char outfile_name[FILENAME_MAX];
+                  char header_name[FILENAME_MAX];
+@@ -70,6 +77,12 @@
+                  int warnings;
+                  int word_size;
+                  struct tm time;
++                 bool with_cap_class;
++                               bool make_depend;
++                               std::string cc;
++                               bool user_types;
++                               std::map<std::string,CAoiUserType*> types;
++                               bool no_erase;
+                } global_t;
+ 
+ class CAoiRootScope;
+diff -Naur idl4-1.0.2/src/include/Makefile.in idl4/src/include/Makefile.in
+--- idl4-1.0.2/src/include/Makefile.in 2003-11-03 22:41:57.000000000 +0100
++++ idl4/src/include/Makefile.in       2005-07-10 08:08:01.970194464 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -177,6 +178,7 @@
+ target_alias = @target_alias@
+ SUBDIRS = user
+ subdir = src/include
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -187,7 +189,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ all: all-recursive
+ 
+@@ -279,9 +281,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -378,7 +386,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -386,7 +394,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -397,7 +405,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -419,7 +427,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/src/include/ms.h idl4/src/include/ms.h
+--- idl4-1.0.2/src/include/ms.h        2003-04-08 15:57:51.000000000 +0200
++++ idl4/src/include/ms.h      2005-07-10 13:16:50.479926632 +0200
+@@ -168,6 +168,10 @@
+   virtual CASTStatement *buildServerTestStructural() { panic("Not 
implemented: channel::buildServerTestStructural"); return NULL; };
+   virtual CASTStatement *buildServerReplyDeclarations(CASTIdentifier *key) { 
panic("Not implemented: channel::buildServerReplyDeclarations"); return NULL; };
+   virtual CASTStatement *buildServerReply() { panic("Not implemented: 
channel::buildServerReply"); return NULL; };
++
++  virtual CASTExpression *buildLabelExpr(){panic("Not implemented: 
channel::buildLabelExpr"); return NULL; };
++  virtual CASTStatement* buildServerStoreData(const char* msg){panic("Not 
implemented: channel::buildServerStoreData"); return NULL; };
++  virtual CASTStatement* buildServerAppendData(const char* msg,const char* 
ret){panic("Not implemented: channel::buildServerAppendData"); return NULL; };
+ };
+ 
+ class CMSService : public CMSBase
+@@ -180,6 +184,8 @@
+   virtual CASTStatement *buildServerLoop(CASTIdentifier *prefix, 
CASTExpression *utableRef, CASTExpression *ktableRef, bool useItable, bool 
hasKernelMessages) { panic("Not implemented: service::buildServerLoop"); return 
NULL; };
+   virtual CMSConnection *getConnection(int numChannels, int fid, int iid) { 
panic("Not implemented: service::getConnection"); return NULL; };
+   virtual void finalize() { panic("Not implemented: service::finalize()"); };
++  virtual const char* getServerTemplateBucketName(){panic("Not implemented: 
service::getServerTemplateBucketName()");};
++  virtual CASTStatement* buildServerDemuxer(const char* ctx,CASTIdentifier 
*prefix, CASTExpression *utableRef, CASTExpression *ktableRef, bool useItable, 
bool hasKernelMessages){panic("Not implemented: 
service::buildServerDemuxer()");};
+ };
+ 
+ class CMSFactory
+diff -Naur idl4-1.0.2/src/include/user/idl4/api/v4_gnu/interface.h 
idl4/src/include/user/idl4/api/v4_gnu/interface.h
+--- idl4-1.0.2/src/include/user/idl4/api/v4_gnu/interface.h    1970-01-01 
01:00:00.000000000 +0100
++++ idl4/src/include/user/idl4/api/v4_gnu/interface.h  2005-07-13 
16:16:07.881548272 +0200
+@@ -0,0 +1,136 @@
++#ifndef __idl4_api_v4_gnu_interface_h__
++#define __idl4_api_v4_gnu_interface_h__
++
++#if HAVE_CONFIG_H
++#include <config.h>
++#endif
++
++#include <stdlib.h>
++
++#include <l4.h>
++#include <hurd/cap-server.h>
++
++#define IDL4_FID_BITS 6
++#define IDL4_IID_BITS 10
++
++typedef l4_thread_id_t idl4_thread_id_t;
++typedef hurd_cap_handle_t idl4_cap_handle_t;
++typedef hurd_cap_rpc_context_t idl4_cap_rpc_context_t;
++typedef hurd_cap_bucket_t idl4_cap_bucket_t;
++typedef struct hurd_cap_class idl4_cap_class;
++typedef hurd_cap_class_t idl4_cap_class_t;
++typedef hurd_cap_obj_t idl4_cap_obj_t;
++
++#define IDL4_L4_ERROR_LABEL ((uint16_t) INT16_MIN)
++
++#define idl4_cap_class_init(a,b,c,d,e,f,g) hurd_cap_class_init(a,b,c,d,e,f,g)
++#define idl4_cap_class_alloc(a,b) hurd_cap_class_alloc(a,b)
++
++#define IDL4_PERM_READ                4
++#define IDL4_PERM_WRITE       2
++#define IDL4_PERM_EXECUTE     1
++#define IDL4_PERM_FULL          7
++
++#define IDL4_MODE_MAP         0
++#define IDL4_MODE_GRANT               2
++
++typedef struct
++{
++      l4_word_t base;
++      l4_fpage_t fpage;
++} idl4_fpage_t;
++
++typedef struct
++{
++      l4_msg_t ibuf;
++      l4_msg_t obuf;
++      unsigned long rbuf[34];
++} idl4_msgbuf_t;
++
++typedef idl4_fpage_t idl4_mapitem;
++
++typedef struct
++{
++      unsigned long len;
++      void *ptr;
++} idl4_stringitem;
++
++typedef struct
++{
++      void *ptr;
++      unsigned long len;
++} idl4_inverse_stringitem;
++
++static inline void idl4_fpage_set_base(idl4_fpage_t *fpage, unsigned long 
base)
++{
++      fpage->base = (fpage->base & 2) + (base & 0xFFFFFC00u) + 8;
++}
++
++static inline unsigned idl4_fpage_get_base(idl4_fpage_t fpage)
++{
++      return fpage.base & (~0x3FFu);
++}
++
++static inline void idl4_fpage_set_page(idl4_fpage_t *fpage, l4_fpage_t p)
++{
++      fpage->fpage = (fpage->fpage&7) + (p&(~3u));
++}
++
++static inline l4_word_t idl4_msg_label(l4_msg_t msg)
++{
++      return l4_msg_label(msg);
++};
++
++static inline l4_fpage_t idl4_fpage_get_page(idl4_fpage_t fpage)
++{
++      l4_fpage_t result;
++      result = fpage.fpage&(~3u);
++      return result;
++}
++
++static inline void idl4_fpage_set_permissions(idl4_fpage_t *fpage, unsigned 
permissions)
++{
++      fpage->fpage = (fpage->fpage&(~7u)) + (permissions&7);
++}
++
++static inline unsigned idl4_fpage_get_permissions(idl4_fpage_t fpage)
++{
++      return fpage.fpage & 7;
++}
++
++static inline void idl4_fpage_set_mode(idl4_fpage_t *fpage, unsigned mode)
++{
++      fpage->base = (fpage->base&(~2u)) + (mode&2);
++}
++
++static inline unsigned idl4_fpage_get_mode(idl4_fpage_t fpage)
++{
++      return fpage.base&2;
++}
++
++static inline int idl4_is_kernel_message(l4_msg_tag_t msgtag)
++{
++      return ((l4_label(msgtag)&0xFF00) == 0xFF00);
++}
++
++static inline unsigned idl4_get_kernel_message_id(l4_msg_tag_t msgtag)
++{
++  return ((unsigned)-((l4_label(msgtag))>>4));
++}
++
++static inline unsigned idl4_get_function_id(l4_word_t msg)
++{
++      return (msg& ((1<<IDL4_FID_BITS)-1));
++}
++
++static inline unsigned idl4_get_interface_id(l4_msg_tag_t *msgtag)
++{
++      return ((l4_label(*msgtag)>>IDL4_FID_BITS) & ((1<<IDL4_IID_BITS)-1));
++}
++
++static inline unsigned idl4_is_error(l4_msg_tag_t *msgtag)
++{
++      return (l4_label(*msgtag)& 8);
++}
++
++#endif /* __idl4_api_v4_gnu_interface_h__ */
+diff -Naur idl4-1.0.2/src/include/user/idl4/glue/v4_gnu-generic/runtime.h 
idl4/src/include/user/idl4/glue/v4_gnu-generic/runtime.h
+--- idl4-1.0.2/src/include/user/idl4/glue/v4_gnu-generic/runtime.h     
1970-01-01 01:00:00.000000000 +0100
++++ idl4/src/include/user/idl4/glue/v4_gnu-generic/runtime.h   2005-07-10 
08:05:39.468857960 +0200
+@@ -0,0 +1,9 @@
++#ifndef __idl4_glue_v4_generic_runtime_h__
++#define __idl4_glue_v4_generic_runtime_h__
++
++#include IDL4_INC_ARCH(helpers.h)
++#include IDL4_INC_API(interface.h)
++
++#define IDL4_INLINE inline
++
++#endif /* !defined(__idl4_glue_v4_generic_runtime_h__) */
+diff -Naur idl4-1.0.2/src/include/user/idl4/glue/v4-ia32/runtime.h 
idl4/src/include/user/idl4/glue/v4-ia32/runtime.h
+--- idl4-1.0.2/src/include/user/idl4/glue/v4-ia32/runtime.h    2003-11-07 
01:01:43.000000000 +0100
++++ idl4/src/include/user/idl4/glue/v4-ia32/runtime.h  2005-07-10 
08:05:39.469857808 +0200
+@@ -5,10 +5,11 @@
+ #include IDL4_INC_API(interface.h)
+ 
+ #define IDL4_INLINE inline
++#define _IDL4_ALWAYS_INLINE inline __attribute__((always_inline)) 
+ 
+ #define IDL4_IPC_ENTRY "__L4_Ipc"
+  
+-extern inline void *MyUTCB(void)
++_IDL4_ALWAYS_INLINE void *MyUTCB(void)
+ 
+ {
+   void *result;
+@@ -18,13 +19,13 @@
+   return result;
+ }
+ 
+-extern inline void *idl4_get_buffer_addr(unsigned int index)
++_IDL4_ALWAYS_INLINE void *idl4_get_buffer_addr(unsigned int index)
+ 
+ {
+   return ((void**)MyUTCB())[-(18+(index*2))];
+ }
+ 
+-extern inline int ErrorCode(void)
++_IDL4_ALWAYS_INLINE int ErrorCode(void)
+ 
+ {
+   int result;
+@@ -38,7 +39,7 @@
+   return result;
+ }
+ 
+-extern inline void idl4_process_request(L4_ThreadId_t *partner, L4_MsgTag_t 
*msgtag, idl4_msgbuf_t *msgbuf, long *cnt, void *func)
++_IDL4_ALWAYS_INLINE void idl4_process_request(L4_ThreadId_t *partner, 
L4_MsgTag_t *msgtag, idl4_msgbuf_t *msgbuf, long *cnt, void *func)
+ 
+ {
+   unsigned dummy;
+@@ -54,7 +55,7 @@
+                );
+ }
+ 
+-extern inline void idl4_reply_and_wait(L4_ThreadId_t *partner, L4_MsgTag_t 
*msgtag, idl4_msgbuf_t *msgbuf, long *cnt)
++_IDL4_ALWAYS_INLINE void idl4_reply_and_wait(L4_ThreadId_t *partner, 
L4_MsgTag_t *msgtag, idl4_msgbuf_t *msgbuf, long *cnt)
+ 
+ {
+   unsigned dummy;
+@@ -90,7 +91,7 @@
+                );
+ }               
+ 
+-extern inline void idl4_set_counter(unsigned value)
++_IDL4_ALWAYS_INLINE void idl4_set_counter(unsigned value)
+ 
+ {
+   asm volatile (
+@@ -102,7 +103,7 @@
+   );
+ }
+ 
+-extern inline void idl4_set_counter_minimum(unsigned value)
++_IDL4_ALWAYS_INLINE void idl4_set_counter_minimum(unsigned value)
+ 
+ {
+   asm volatile (
+@@ -114,7 +115,7 @@
+   );
+ }
+ 
+-extern inline void idl4_msgbuf_sync(idl4_msgbuf_t *msgbuf)
++_IDL4_ALWAYS_INLINE void idl4_msgbuf_sync(idl4_msgbuf_t *msgbuf)
+ 
+ {
+   unsigned dummy;
+@@ -137,21 +138,21 @@
+   );
+ }
+ 
+-extern inline void idl4_msgbuf_init(idl4_msgbuf_t *msgbuf)
++_IDL4_ALWAYS_INLINE void idl4_msgbuf_init(idl4_msgbuf_t *msgbuf)
+ 
+ {
+   msgbuf->rbuf[32] = 0;
+   idl4_set_counter(1);
+ }
+ 
+-extern inline void idl4_msgbuf_set_rcv_window(idl4_msgbuf_t *msgbuf, 
L4_Fpage_t wnd)
++_IDL4_ALWAYS_INLINE void idl4_msgbuf_set_rcv_window(idl4_msgbuf_t *msgbuf, 
L4_Fpage_t wnd)
+ 
+ {
+   msgbuf->rbuf[32] = (msgbuf->rbuf[32]&1) + (wnd.raw & 0xFFFFFFF0u);
+   idl4_set_counter_minimum(1);
+ }
+ 
+-extern inline void idl4_msgbuf_add_buffer(idl4_msgbuf_t *msgbuf, void *buf, 
unsigned len)
++_IDL4_ALWAYS_INLINE void idl4_msgbuf_add_buffer(idl4_msgbuf_t *msgbuf, void 
*buf, unsigned len)
+ 
+ {
+   int i=32;
+diff -Naur idl4-1.0.2/src/include/user/idl4/Makefile.am 
idl4/src/include/user/idl4/Makefile.am
+--- idl4-1.0.2/src/include/user/idl4/Makefile.am       2003-03-29 
20:57:34.000000000 +0100
++++ idl4/src/include/user/idl4/Makefile.am     2005-07-10 08:05:39.469857808 
+0200
+@@ -21,6 +21,8 @@
+                 glue/x0-generic/runtime.h \
+                 glue/x0-ia32/runtime.h \
+                 glue/x0-arm/runtime.h \
++              glue/v4_gnu-generic/runtime.h \
+                 api/v2/interface.h \
+                 api/x0/interface.h \
+-                api/v4/interface.h
++                api/v4/interface.h \
++              api/v4_gnu/interface.h
+diff -Naur idl4-1.0.2/src/include/user/idl4/Makefile.in 
idl4/src/include/user/idl4/Makefile.in
+--- idl4-1.0.2/src/include/user/idl4/Makefile.in       2003-11-03 
22:41:58.000000000 +0100
++++ idl4/src/include/user/idl4/Makefile.in     2005-07-10 08:08:03.350984552 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -198,18 +199,22 @@
+                 glue/x0-generic/runtime.h \
+                 glue/x0-ia32/runtime.h \
+                 glue/x0-arm/runtime.h \
++              glue/v4_gnu-generic/runtime.h \
+                 api/v2/interface.h \
+                 api/x0/interface.h \
+-                api/v4/interface.h
++                api/v4/interface.h \
++              api/v4_gnu/interface.h
+ 
+ subdir = src/include/user/idl4
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+ DIST_SOURCES =
+ HEADERS = $(nobase_pkginclude_HEADERS)
+ 
+-DIST_COMMON = $(nobase_pkginclude_HEADERS) Makefile.am Makefile.in
++DIST_COMMON = $(nobase_pkginclude_HEADERS) $(srcdir)/Makefile.in \
++      Makefile.am
+ all: all-am
+ 
+ .SUFFIXES:
+@@ -297,7 +302,7 @@
+ distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
+ 
+ distdir: $(DISTFILES)
+-      $(mkinstalldirs) $(distdir)/api/v2 $(distdir)/api/v4 $(distdir)/api/x0 
$(distdir)/arch/alpha $(distdir)/arch/arm $(distdir)/arch/generic 
$(distdir)/arch/ia32 $(distdir)/arch/ia64 $(distdir)/arch/mips64 
$(distdir)/arch/powerpc $(distdir)/glue/v2-generic $(distdir)/glue/v2-ia32 
$(distdir)/glue/v4-alpha $(distdir)/glue/v4-generic $(distdir)/glue/v4-ia32 
$(distdir)/glue/v4-ia64 $(distdir)/glue/v4-mips64 $(distdir)/glue/v4-powerpc 
$(distdir)/glue/x0-arm $(distdir)/glue/x0-generic $(distdir)/glue/x0-ia32
++      $(mkinstalldirs) $(distdir)/api/v2 $(distdir)/api/v4 
$(distdir)/api/v4_gnu $(distdir)/api/x0 $(distdir)/arch/alpha 
$(distdir)/arch/arm $(distdir)/arch/generic $(distdir)/arch/ia32 
$(distdir)/arch/ia64 $(distdir)/arch/mips64 $(distdir)/arch/powerpc 
$(distdir)/glue/v2-generic $(distdir)/glue/v2-ia32 $(distdir)/glue/v4-alpha 
$(distdir)/glue/v4-generic $(distdir)/glue/v4-ia32 $(distdir)/glue/v4-ia64 
$(distdir)/glue/v4-mips64 $(distdir)/glue/v4-powerpc 
$(distdir)/glue/v4_gnu-generic $(distdir)/glue/x0-arm 
$(distdir)/glue/x0-generic $(distdir)/glue/x0-ia32
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+@@ -330,7 +335,6 @@
+ 
+ installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(pkgincludedir)
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -342,7 +346,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -350,7 +354,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -361,7 +365,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-am
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-am
+@@ -383,7 +387,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+diff -Naur idl4-1.0.2/src/include/user/Makefile.in 
idl4/src/include/user/Makefile.in
+--- idl4-1.0.2/src/include/user/Makefile.in    2003-11-03 22:41:57.000000000 
+0100
++++ idl4/src/include/user/Makefile.in  2005-07-10 08:08:02.644092016 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -177,6 +178,7 @@
+ target_alias = @target_alias@
+ SUBDIRS = idl4
+ subdir = src/include/user
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -187,7 +189,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ all: all-recursive
+ 
+@@ -279,9 +281,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -378,7 +386,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -386,7 +394,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -397,7 +405,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -419,7 +427,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/src/Makefile.am idl4/src/Makefile.am
+--- idl4-1.0.2/src/Makefile.am 2003-08-25 06:32:26.000000000 +0200
++++ idl4/src/Makefile.am       2005-07-10 08:05:39.470857656 +0200
+@@ -9,6 +9,7 @@
+               $(top_builddir)/src/arch/v4/libv4.a \
+               $(top_builddir)/src/arch/v4/ia32/libv4i.a \
+               $(top_builddir)/src/arch/v4/ia64/libv4m.a \
++                $(top_builddir)/src/arch/v4_gnu/libv4_gnu.a \
+               $(top_builddir)/src/arch/x0/libx0.a \
+               $(top_builddir)/src/arch/x0/ia32/libx0i.a \
+               $(top_builddir)/src/base/libui.a \
+@@ -39,6 +40,7 @@
+               -L$(top_builddir)/src/arch/v4 -lv4 \
+               -L$(top_builddir)/src/arch/v4/ia32 -lv4i \
+               -L$(top_builddir)/src/arch/v4/ia64 -lv4m \
++                -L$(top_builddir)/src/arch/v4_gnu -lv4_gnu \
+               -L$(top_builddir)/src/arch -larch \
+               -L$(top_builddir)/src/be/types -ltypes \
+               -L$(top_builddir)/src/be/ops -lops -lstdc++
+diff -Naur idl4-1.0.2/src/Makefile.in idl4/src/Makefile.in
+--- idl4-1.0.2/src/Makefile.in 2003-11-03 22:41:46.000000000 +0100
++++ idl4/src/Makefile.in       2005-07-10 08:06:27.843503896 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -185,6 +186,7 @@
+               $(top_builddir)/src/arch/v4/libv4.a \
+               $(top_builddir)/src/arch/v4/ia32/libv4i.a \
+               $(top_builddir)/src/arch/v4/ia64/libv4m.a \
++                $(top_builddir)/src/arch/v4_gnu/libv4_gnu.a \
+               $(top_builddir)/src/arch/x0/libx0.a \
+               $(top_builddir)/src/arch/x0/ia32/libx0i.a \
+               $(top_builddir)/src/base/libui.a \
+@@ -216,6 +218,7 @@
+               -L$(top_builddir)/src/arch/v4 -lv4 \
+               -L$(top_builddir)/src/arch/v4/ia32 -lv4i \
+               -L$(top_builddir)/src/arch/v4/ia64 -lv4m \
++                -L$(top_builddir)/src/arch/v4_gnu -lv4_gnu \
+               -L$(top_builddir)/src/arch -larch \
+               -L$(top_builddir)/src/be/types -ltypes \
+               -L$(top_builddir)/src/be/ops -lops -lstdc++
+@@ -251,6 +254,7 @@
+                 include/user/idl4/Makefile.in
+ 
+ subdir = src
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -277,7 +281,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ SOURCES = $(idl4_SOURCES)
+ 
+@@ -326,13 +330,10 @@
+ 
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -343,7 +344,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -354,7 +355,7 @@
+ version.o: base/version.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT version.o -MD -MP -MF 
"$(DEPDIR)/version.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o version.o `test -f 'base/version.cc' || echo 
'$(srcdir)/'`base/version.cc; \
address@hidden@ then mv "$(DEPDIR)/version.Tpo" "$(DEPDIR)/version.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/version.Tpo" "$(DEPDIR)/version.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/version.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='base/version.cc' 
object='version.o' libtool=no @AMDEPBACKSLASH@
+@@ -365,7 +366,7 @@
+ version.obj: base/version.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT version.obj -MD -MP 
-MF "$(DEPDIR)/version.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o version.obj `if test -f 'base/version.cc'; then 
$(CYGPATH_W) 'base/version.cc'; else $(CYGPATH_W) '$(srcdir)/base/version.cc'; 
fi`; \
address@hidden@ then mv "$(DEPDIR)/version.Tpo" "$(DEPDIR)/version.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/version.Tpo" "$(DEPDIR)/version.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/version.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='base/version.cc' 
object='version.obj' libtool=no @AMDEPBACKSLASH@
+@@ -454,9 +455,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -555,7 +562,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -563,7 +570,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -574,9 +581,10 @@
+ clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-recursive
+ 
+@@ -597,7 +605,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+@@ -618,10 +627,10 @@
+ 
+ .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+       clean-binPROGRAMS clean-generic clean-recursive ctags \
+-      ctags-recursive distclean distclean-compile distclean-depend \
+-      distclean-generic distclean-recursive distclean-tags distdir \
+-      dvi dvi-am dvi-recursive info info-am info-recursive install \
+-      install-am install-binPROGRAMS install-data install-data-am \
++      ctags-recursive distclean distclean-compile distclean-generic \
++      distclean-recursive distclean-tags distdir dvi dvi-am \
++      dvi-recursive info info-am info-recursive install install-am \
++      install-binPROGRAMS install-data install-data-am \
+       install-data-recursive install-exec install-exec-am \
+       install-exec-recursive install-info install-info-am \
+       install-info-recursive install-man install-recursive \
+diff -Naur idl4-1.0.2/src/test/glue/Makefile.in idl4/src/test/glue/Makefile.in
+--- idl4-1.0.2/src/test/glue/Makefile.in       2003-11-03 22:43:02.000000000 
+0100
++++ idl4/src/test/glue/Makefile.in     2005-07-10 08:08:01.290297824 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -199,6 +200,7 @@
+ 
+ SUBDIRS = $(SUB_V2_IA32) $(SUB_X0_IA32) $(SUB_X0_ARM) $(SUB_V4_IA32) 
$(SUB_V4_IA64) $(SUB_V4_MIPS64) $(SUB_V4_ALPHA) $(SUB_V4_POWERPC)
+ subdir = src/test/glue
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -209,7 +211,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = v2-ia32 x0-ia32 x0-arm v4-ia32 v4-ia64 v4-mips64 v4-alpha \
+       v4-powerpc
+ all: all-recursive
+@@ -302,9 +304,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -401,7 +409,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -409,7 +417,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -420,7 +428,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -442,7 +450,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/src/test/glue/v2-ia32/Makefile.in 
idl4/src/test/glue/v2-ia32/Makefile.in
+--- idl4-1.0.2/src/test/glue/v2-ia32/Makefile.in       2003-11-03 
22:43:03.000000000 +0100
++++ idl4/src/test/glue/v2-ia32/Makefile.in     2005-07-11 16:14:12.139774112 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -196,6 +197,7 @@
+                             -I$(FIASCO_DIR)/l4/include/x86/l4v2/
+ 
+ subdir = src/test/glue/v2-ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -223,7 +225,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES = $(libtest_v2_ia32_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtest_v2_ia32_a_SOURCES)
+ 
+ all: all-am
+@@ -262,9 +264,6 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .S.o:
+       $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ 
+@@ -280,7 +279,7 @@
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -291,7 +290,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -302,7 +301,7 @@
+ fpage.o: $(APIDIR)/fpage.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fpage.o -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o fpage.o `test -f '$(APIDIR)/fpage.c' || echo 
'$(srcdir)/'`$(APIDIR)/fpage.c; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/fpage.c' 
object='fpage.o' libtool=no @AMDEPBACKSLASH@
+@@ -313,7 +312,7 @@
+ fpage.obj: $(APIDIR)/fpage.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fpage.obj -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o fpage.obj `if test -f '$(APIDIR)/fpage.c'; then 
$(CYGPATH_W) '$(APIDIR)/fpage.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/fpage.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/fpage.c' 
object='fpage.obj' libtool=no @AMDEPBACKSLASH@
+@@ -324,7 +323,7 @@
+ main.o: $(APIDIR)/main.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT main.o -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o main.o `test -f '$(APIDIR)/main.c' || echo 
'$(srcdir)/'`$(APIDIR)/main.c; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/main.c' 
object='main.o' libtool=no @AMDEPBACKSLASH@
+@@ -335,7 +334,7 @@
+ main.obj: $(APIDIR)/main.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT main.obj -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o main.obj `if test -f '$(APIDIR)/main.c'; then 
$(CYGPATH_W) '$(APIDIR)/main.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/main.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/main.c' 
object='main.obj' libtool=no @AMDEPBACKSLASH@
+@@ -346,7 +345,7 @@
+ pager.o: $(APIDIR)/pager.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pager.o -MD -MP -MF 
"$(DEPDIR)/pager.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o pager.o `test -f '$(APIDIR)/pager.c' || echo 
'$(srcdir)/'`$(APIDIR)/pager.c; \
address@hidden@ then mv "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/pager.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/pager.c' 
object='pager.o' libtool=no @AMDEPBACKSLASH@
+@@ -357,7 +356,7 @@
+ pager.obj: $(APIDIR)/pager.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pager.obj -MD -MP -MF 
"$(DEPDIR)/pager.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o pager.obj `if test -f '$(APIDIR)/pager.c'; then 
$(CYGPATH_W) '$(APIDIR)/pager.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/pager.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/pager.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/pager.c' 
object='pager.obj' libtool=no @AMDEPBACKSLASH@
+@@ -368,7 +367,7 @@
+ spinlock.o: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.o -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.o `test -f '$(ARCHDIR)/spinlock.c' || 
echo '$(srcdir)/'`$(ARCHDIR)/spinlock.c; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.o' libtool=no @AMDEPBACKSLASH@
+@@ -379,7 +378,7 @@
+ spinlock.obj: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.obj -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.obj `if test -f 
'$(ARCHDIR)/spinlock.c'; then $(CYGPATH_W) '$(ARCHDIR)/spinlock.c'; else 
$(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/spinlock.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.obj' libtool=no @AMDEPBACKSLASH@
+@@ -390,7 +389,7 @@
+ malloc.o: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.o -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.o `test -f '$(GENDIR)/malloc.c' || echo 
'$(srcdir)/'`$(GENDIR)/malloc.c; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.o' libtool=no @AMDEPBACKSLASH@
+@@ -401,7 +400,7 @@
+ malloc.obj: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.obj -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.obj `if test -f '$(GENDIR)/malloc.c'; 
then $(CYGPATH_W) '$(GENDIR)/malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/malloc.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.obj' libtool=no @AMDEPBACKSLASH@
+@@ -412,7 +411,7 @@
+ printf.o: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.o -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.o `test -f '$(GENDIR)/printf.c' || echo 
'$(srcdir)/'`$(GENDIR)/printf.c; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.o' libtool=no @AMDEPBACKSLASH@
+@@ -423,7 +422,7 @@
+ printf.obj: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.obj -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.obj `if test -f '$(GENDIR)/printf.c'; 
then $(CYGPATH_W) '$(GENDIR)/printf.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/printf.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.obj' libtool=no @AMDEPBACKSLASH@
+@@ -434,7 +433,7 @@
+ corba.o: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.o -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.o `test -f '$(GENDIR)/corba.c' || echo 
'$(srcdir)/'`$(GENDIR)/corba.c; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.o' libtool=no @AMDEPBACKSLASH@
+@@ -445,7 +444,7 @@
+ corba.obj: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.obj -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.obj `if test -f '$(GENDIR)/corba.c'; then 
$(CYGPATH_W) '$(GENDIR)/corba.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/corba.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.obj' libtool=no @AMDEPBACKSLASH@
+@@ -456,7 +455,7 @@
+ random.o: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.o -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.o `test -f '$(GENDIR)/random.c' || echo 
'$(srcdir)/'`$(GENDIR)/random.c; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.o' libtool=no @AMDEPBACKSLASH@
+@@ -467,7 +466,7 @@
+ random.obj: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.obj -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.obj `if test -f '$(GENDIR)/random.c'; 
then $(CYGPATH_W) '$(GENDIR)/random.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/random.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.obj' libtool=no @AMDEPBACKSLASH@
+@@ -478,7 +477,7 @@
+ string.o: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.o -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.o `test -f '$(GENDIR)/string.c' || echo 
'$(srcdir)/'`$(GENDIR)/string.c; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.o' libtool=no @AMDEPBACKSLASH@
+@@ -489,7 +488,7 @@
+ string.obj: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.obj -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.obj `if test -f '$(GENDIR)/string.c'; 
then $(CYGPATH_W) '$(GENDIR)/string.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/string.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.obj' libtool=no @AMDEPBACKSLASH@
+@@ -588,7 +587,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -600,7 +598,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -608,7 +606,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -619,9 +617,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -642,7 +641,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -661,14 +661,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/test/glue/v4-alpha/Makefile.in 
idl4/src/test/glue/v4-alpha/Makefile.in
+--- idl4-1.0.2/src/test/glue/v4-alpha/Makefile.in      2003-11-03 
22:43:04.000000000 +0100
++++ idl4/src/test/glue/v4-alpha/Makefile.in    2005-07-11 16:14:06.932565728 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -192,6 +193,7 @@
+                             -I. -I$(PISTACHIO_ALPHA_DIR)/include
+ 
+ subdir = src/test/glue/v4-alpha
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -226,7 +228,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libtest_v4_alpha_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtest_v4_alpha_a_SOURCES)
+ 
+ all: all-am
+@@ -263,9 +265,6 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .S.o:
+       $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ 
+@@ -305,7 +304,7 @@
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -316,7 +315,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -327,7 +326,7 @@
+ io.o: $(ARCHDIR)/io.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT io.o -MD -MP -MF 
"$(DEPDIR)/io.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o io.o `test -f '$(ARCHDIR)/io.c' || echo 
'$(srcdir)/'`$(ARCHDIR)/io.c; \
address@hidden@ then mv "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/io.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/io.c' object='io.o' 
libtool=no @AMDEPBACKSLASH@
+@@ -338,7 +337,7 @@
+ io.obj: $(ARCHDIR)/io.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT io.obj -MD -MP -MF 
"$(DEPDIR)/io.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o io.obj `if test -f '$(ARCHDIR)/io.c'; then 
$(CYGPATH_W) '$(ARCHDIR)/io.c'; else $(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/io.c'; 
fi`; \
address@hidden@ then mv "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/io.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/io.c' 
object='io.obj' libtool=no @AMDEPBACKSLASH@
+@@ -349,7 +348,7 @@
+ spinlock.o: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.o -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.o `test -f '$(ARCHDIR)/spinlock.c' || 
echo '$(srcdir)/'`$(ARCHDIR)/spinlock.c; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.o' libtool=no @AMDEPBACKSLASH@
+@@ -360,7 +359,7 @@
+ spinlock.obj: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.obj -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.obj `if test -f 
'$(ARCHDIR)/spinlock.c'; then $(CYGPATH_W) '$(ARCHDIR)/spinlock.c'; else 
$(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/spinlock.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.obj' libtool=no @AMDEPBACKSLASH@
+@@ -371,7 +370,7 @@
+ malloc.o: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.o -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.o `test -f '$(GENDIR)/malloc.c' || echo 
'$(srcdir)/'`$(GENDIR)/malloc.c; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.o' libtool=no @AMDEPBACKSLASH@
+@@ -382,7 +381,7 @@
+ malloc.obj: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.obj -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.obj `if test -f '$(GENDIR)/malloc.c'; 
then $(CYGPATH_W) '$(GENDIR)/malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/malloc.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.obj' libtool=no @AMDEPBACKSLASH@
+@@ -393,7 +392,7 @@
+ printf.o: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.o -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.o `test -f '$(GENDIR)/printf.c' || echo 
'$(srcdir)/'`$(GENDIR)/printf.c; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.o' libtool=no @AMDEPBACKSLASH@
+@@ -404,7 +403,7 @@
+ printf.obj: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.obj -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.obj `if test -f '$(GENDIR)/printf.c'; 
then $(CYGPATH_W) '$(GENDIR)/printf.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/printf.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.obj' libtool=no @AMDEPBACKSLASH@
+@@ -415,7 +414,7 @@
+ corba.o: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.o -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.o `test -f '$(GENDIR)/corba.c' || echo 
'$(srcdir)/'`$(GENDIR)/corba.c; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.o' libtool=no @AMDEPBACKSLASH@
+@@ -426,7 +425,7 @@
+ corba.obj: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.obj -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.obj `if test -f '$(GENDIR)/corba.c'; then 
$(CYGPATH_W) '$(GENDIR)/corba.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/corba.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.obj' libtool=no @AMDEPBACKSLASH@
+@@ -437,7 +436,7 @@
+ random.o: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.o -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.o `test -f '$(GENDIR)/random.c' || echo 
'$(srcdir)/'`$(GENDIR)/random.c; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.o' libtool=no @AMDEPBACKSLASH@
+@@ -448,7 +447,7 @@
+ random.obj: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.obj -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.obj `if test -f '$(GENDIR)/random.c'; 
then $(CYGPATH_W) '$(GENDIR)/random.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/random.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.obj' libtool=no @AMDEPBACKSLASH@
+@@ -459,7 +458,7 @@
+ string.o: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.o -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.o `test -f '$(GENDIR)/string.c' || echo 
'$(srcdir)/'`$(GENDIR)/string.c; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.o' libtool=no @AMDEPBACKSLASH@
+@@ -470,7 +469,7 @@
+ string.obj: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.obj -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.obj `if test -f '$(GENDIR)/string.c'; 
then $(CYGPATH_W) '$(GENDIR)/string.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/string.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.obj' libtool=no @AMDEPBACKSLASH@
+@@ -481,7 +480,7 @@
+ tools.o: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.o -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.o `test -f '$(GENDIR)/tools.c' || echo 
'$(srcdir)/'`$(GENDIR)/tools.c; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.o' libtool=no @AMDEPBACKSLASH@
+@@ -492,7 +491,7 @@
+ tools.obj: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.obj -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.obj `if test -f '$(GENDIR)/tools.c'; then 
$(CYGPATH_W) '$(GENDIR)/tools.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/tools.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.obj' libtool=no @AMDEPBACKSLASH@
+@@ -503,7 +502,7 @@
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -514,7 +513,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -525,7 +524,7 @@
+ fpage.o: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.o -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.o `test -f '$(APIDIR)/fpage.cc' || echo 
'$(srcdir)/'`$(APIDIR)/fpage.cc; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.o' libtool=no @AMDEPBACKSLASH@
+@@ -536,7 +535,7 @@
+ fpage.obj: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.obj -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.obj `if test -f '$(APIDIR)/fpage.cc'; 
then $(CYGPATH_W) '$(APIDIR)/fpage.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/fpage.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.obj' libtool=no @AMDEPBACKSLASH@
+@@ -547,7 +546,7 @@
+ main.o: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.o -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.o `test -f '$(APIDIR)/main.cc' || echo 
'$(srcdir)/'`$(APIDIR)/main.cc; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.o' libtool=no @AMDEPBACKSLASH@
+@@ -558,7 +557,7 @@
+ main.obj: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.obj -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.obj `if test -f '$(APIDIR)/main.cc'; then 
$(CYGPATH_W) '$(APIDIR)/main.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/main.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.obj' libtool=no @AMDEPBACKSLASH@
+@@ -657,7 +656,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -669,7 +667,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -677,7 +675,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -688,9 +686,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -711,7 +710,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -730,14 +730,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/test/glue/v4-ia32/Makefile.in 
idl4/src/test/glue/v4-ia32/Makefile.in
+--- idl4-1.0.2/src/test/glue/v4-ia32/Makefile.in       2003-11-03 
22:43:05.000000000 +0100
++++ idl4/src/test/glue/v4-ia32/Makefile.in     2005-07-11 16:14:09.555167032 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -189,6 +190,7 @@
+                             -I$(PISTACHIO_IA32_DIR)/include
+ 
+ subdir = src/test/glue/v4-ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -221,7 +223,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libtest_v4_ia32_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtest_v4_ia32_a_SOURCES)
+ 
+ all: all-am
+@@ -259,9 +261,6 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .S.o:
+       $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ 
+@@ -277,7 +276,7 @@
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -288,7 +287,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -299,7 +298,7 @@
+ spinlock.o: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.o -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.o `test -f '$(ARCHDIR)/spinlock.c' || 
echo '$(srcdir)/'`$(ARCHDIR)/spinlock.c; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.o' libtool=no @AMDEPBACKSLASH@
+@@ -310,7 +309,7 @@
+ spinlock.obj: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.obj -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.obj `if test -f 
'$(ARCHDIR)/spinlock.c'; then $(CYGPATH_W) '$(ARCHDIR)/spinlock.c'; else 
$(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/spinlock.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.obj' libtool=no @AMDEPBACKSLASH@
+@@ -321,7 +320,7 @@
+ corba.o: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.o -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.o `test -f '$(GENDIR)/corba.c' || echo 
'$(srcdir)/'`$(GENDIR)/corba.c; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.o' libtool=no @AMDEPBACKSLASH@
+@@ -332,7 +331,7 @@
+ corba.obj: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.obj -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.obj `if test -f '$(GENDIR)/corba.c'; then 
$(CYGPATH_W) '$(GENDIR)/corba.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/corba.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.obj' libtool=no @AMDEPBACKSLASH@
+@@ -343,7 +342,7 @@
+ malloc.o: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.o -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.o `test -f '$(GENDIR)/malloc.c' || echo 
'$(srcdir)/'`$(GENDIR)/malloc.c; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.o' libtool=no @AMDEPBACKSLASH@
+@@ -354,7 +353,7 @@
+ malloc.obj: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.obj -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.obj `if test -f '$(GENDIR)/malloc.c'; 
then $(CYGPATH_W) '$(GENDIR)/malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/malloc.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.obj' libtool=no @AMDEPBACKSLASH@
+@@ -365,7 +364,7 @@
+ printf.o: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.o -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.o `test -f '$(GENDIR)/printf.c' || echo 
'$(srcdir)/'`$(GENDIR)/printf.c; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.o' libtool=no @AMDEPBACKSLASH@
+@@ -376,7 +375,7 @@
+ printf.obj: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.obj -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.obj `if test -f '$(GENDIR)/printf.c'; 
then $(CYGPATH_W) '$(GENDIR)/printf.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/printf.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.obj' libtool=no @AMDEPBACKSLASH@
+@@ -387,7 +386,7 @@
+ random.o: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.o -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.o `test -f '$(GENDIR)/random.c' || echo 
'$(srcdir)/'`$(GENDIR)/random.c; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.o' libtool=no @AMDEPBACKSLASH@
+@@ -398,7 +397,7 @@
+ random.obj: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.obj -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.obj `if test -f '$(GENDIR)/random.c'; 
then $(CYGPATH_W) '$(GENDIR)/random.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/random.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.obj' libtool=no @AMDEPBACKSLASH@
+@@ -409,7 +408,7 @@
+ string.o: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.o -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.o `test -f '$(GENDIR)/string.c' || echo 
'$(srcdir)/'`$(GENDIR)/string.c; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.o' libtool=no @AMDEPBACKSLASH@
+@@ -420,7 +419,7 @@
+ string.obj: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.obj -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.obj `if test -f '$(GENDIR)/string.c'; 
then $(CYGPATH_W) '$(GENDIR)/string.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/string.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.obj' libtool=no @AMDEPBACKSLASH@
+@@ -431,7 +430,7 @@
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -442,7 +441,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -453,7 +452,7 @@
+ fpage.o: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.o -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.o `test -f '$(APIDIR)/fpage.cc' || echo 
'$(srcdir)/'`$(APIDIR)/fpage.cc; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.o' libtool=no @AMDEPBACKSLASH@
+@@ -464,7 +463,7 @@
+ fpage.obj: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.obj -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.obj `if test -f '$(APIDIR)/fpage.cc'; 
then $(CYGPATH_W) '$(APIDIR)/fpage.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/fpage.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.obj' libtool=no @AMDEPBACKSLASH@
+@@ -475,7 +474,7 @@
+ main.o: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.o -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.o `test -f '$(APIDIR)/main.cc' || echo 
'$(srcdir)/'`$(APIDIR)/main.cc; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.o' libtool=no @AMDEPBACKSLASH@
+@@ -486,7 +485,7 @@
+ main.obj: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.obj -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.obj `if test -f '$(APIDIR)/main.cc'; then 
$(CYGPATH_W) '$(APIDIR)/main.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/main.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.obj' libtool=no @AMDEPBACKSLASH@
+@@ -585,7 +584,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -597,7 +595,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -605,7 +603,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -616,9 +614,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -639,7 +638,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -658,14 +658,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/test/glue/v4-ia64/Makefile.in 
idl4/src/test/glue/v4-ia64/Makefile.in
+--- idl4-1.0.2/src/test/glue/v4-ia64/Makefile.in       2003-11-03 
22:43:06.000000000 +0100
++++ idl4/src/test/glue/v4-ia64/Makefile.in     2005-07-11 16:14:08.701296840 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -193,6 +194,7 @@
+                             -I$(PISTACHIO_IA64_DIR)/include -I. -finline
+ 
+ subdir = src/test/glue/v4-ia64
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -225,7 +227,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libtest_v4_ia64_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtest_v4_ia64_a_SOURCES)
+ 
+ all: all-am
+@@ -262,9 +264,6 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .S.o:
+       $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ 
+@@ -280,7 +279,7 @@
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -291,7 +290,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -302,7 +301,7 @@
+ io.o: $(ARCHDIR)/io.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT io.o -MD -MP -MF 
"$(DEPDIR)/io.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o io.o `test -f '$(ARCHDIR)/io.c' || echo 
'$(srcdir)/'`$(ARCHDIR)/io.c; \
address@hidden@ then mv "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/io.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/io.c' object='io.o' 
libtool=no @AMDEPBACKSLASH@
+@@ -313,7 +312,7 @@
+ io.obj: $(ARCHDIR)/io.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT io.obj -MD -MP -MF 
"$(DEPDIR)/io.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o io.obj `if test -f '$(ARCHDIR)/io.c'; then 
$(CYGPATH_W) '$(ARCHDIR)/io.c'; else $(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/io.c'; 
fi`; \
address@hidden@ then mv "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/io.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/io.c' 
object='io.obj' libtool=no @AMDEPBACKSLASH@
+@@ -324,7 +323,7 @@
+ spinlock.o: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.o -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.o `test -f '$(ARCHDIR)/spinlock.c' || 
echo '$(srcdir)/'`$(ARCHDIR)/spinlock.c; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.o' libtool=no @AMDEPBACKSLASH@
+@@ -335,7 +334,7 @@
+ spinlock.obj: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.obj -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.obj `if test -f 
'$(ARCHDIR)/spinlock.c'; then $(CYGPATH_W) '$(ARCHDIR)/spinlock.c'; else 
$(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/spinlock.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.obj' libtool=no @AMDEPBACKSLASH@
+@@ -346,7 +345,7 @@
+ malloc.o: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.o -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.o `test -f '$(GENDIR)/malloc.c' || echo 
'$(srcdir)/'`$(GENDIR)/malloc.c; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.o' libtool=no @AMDEPBACKSLASH@
+@@ -357,7 +356,7 @@
+ malloc.obj: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.obj -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.obj `if test -f '$(GENDIR)/malloc.c'; 
then $(CYGPATH_W) '$(GENDIR)/malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/malloc.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.obj' libtool=no @AMDEPBACKSLASH@
+@@ -368,7 +367,7 @@
+ printf.o: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.o -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.o `test -f '$(GENDIR)/printf.c' || echo 
'$(srcdir)/'`$(GENDIR)/printf.c; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.o' libtool=no @AMDEPBACKSLASH@
+@@ -379,7 +378,7 @@
+ printf.obj: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.obj -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.obj `if test -f '$(GENDIR)/printf.c'; 
then $(CYGPATH_W) '$(GENDIR)/printf.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/printf.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.obj' libtool=no @AMDEPBACKSLASH@
+@@ -390,7 +389,7 @@
+ corba.o: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.o -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.o `test -f '$(GENDIR)/corba.c' || echo 
'$(srcdir)/'`$(GENDIR)/corba.c; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.o' libtool=no @AMDEPBACKSLASH@
+@@ -401,7 +400,7 @@
+ corba.obj: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.obj -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.obj `if test -f '$(GENDIR)/corba.c'; then 
$(CYGPATH_W) '$(GENDIR)/corba.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/corba.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.obj' libtool=no @AMDEPBACKSLASH@
+@@ -412,7 +411,7 @@
+ random.o: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.o -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.o `test -f '$(GENDIR)/random.c' || echo 
'$(srcdir)/'`$(GENDIR)/random.c; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.o' libtool=no @AMDEPBACKSLASH@
+@@ -423,7 +422,7 @@
+ random.obj: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.obj -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.obj `if test -f '$(GENDIR)/random.c'; 
then $(CYGPATH_W) '$(GENDIR)/random.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/random.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.obj' libtool=no @AMDEPBACKSLASH@
+@@ -434,7 +433,7 @@
+ string.o: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.o -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.o `test -f '$(GENDIR)/string.c' || echo 
'$(srcdir)/'`$(GENDIR)/string.c; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.o' libtool=no @AMDEPBACKSLASH@
+@@ -445,7 +444,7 @@
+ string.obj: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.obj -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.obj `if test -f '$(GENDIR)/string.c'; 
then $(CYGPATH_W) '$(GENDIR)/string.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/string.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.obj' libtool=no @AMDEPBACKSLASH@
+@@ -456,7 +455,7 @@
+ tools.o: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.o -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.o `test -f '$(GENDIR)/tools.c' || echo 
'$(srcdir)/'`$(GENDIR)/tools.c; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.o' libtool=no @AMDEPBACKSLASH@
+@@ -467,7 +466,7 @@
+ tools.obj: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.obj -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.obj `if test -f '$(GENDIR)/tools.c'; then 
$(CYGPATH_W) '$(GENDIR)/tools.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/tools.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.obj' libtool=no @AMDEPBACKSLASH@
+@@ -478,7 +477,7 @@
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -489,7 +488,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -500,7 +499,7 @@
+ fpage.o: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.o -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.o `test -f '$(APIDIR)/fpage.cc' || echo 
'$(srcdir)/'`$(APIDIR)/fpage.cc; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.o' libtool=no @AMDEPBACKSLASH@
+@@ -511,7 +510,7 @@
+ fpage.obj: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.obj -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.obj `if test -f '$(APIDIR)/fpage.cc'; 
then $(CYGPATH_W) '$(APIDIR)/fpage.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/fpage.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.obj' libtool=no @AMDEPBACKSLASH@
+@@ -522,7 +521,7 @@
+ main.o: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.o -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.o `test -f '$(APIDIR)/main.cc' || echo 
'$(srcdir)/'`$(APIDIR)/main.cc; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.o' libtool=no @AMDEPBACKSLASH@
+@@ -533,7 +532,7 @@
+ main.obj: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.obj -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.obj `if test -f '$(APIDIR)/main.cc'; then 
$(CYGPATH_W) '$(APIDIR)/main.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/main.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.obj' libtool=no @AMDEPBACKSLASH@
+@@ -632,7 +631,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -644,7 +642,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -652,7 +650,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -663,9 +661,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -686,7 +685,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -705,14 +705,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/test/glue/v4-mips64/Makefile.in 
idl4/src/test/glue/v4-mips64/Makefile.in
+--- idl4-1.0.2/src/test/glue/v4-mips64/Makefile.in     2003-11-03 
22:43:07.000000000 +0100
++++ idl4/src/test/glue/v4-mips64/Makefile.in   2005-07-11 16:14:07.812431968 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -193,6 +194,7 @@
+                               -EB -O3 -G 0 -mcpu=r4000 -mlong64 -mips3 
-mno-abicalls -non_shared
+ 
+ subdir = src/test/glue/v4-mips64
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -225,7 +227,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libtest_v4_mips64_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtest_v4_mips64_a_SOURCES)
+ 
+ all: all-am
+@@ -262,9 +264,6 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .S.o:
+       $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ 
+@@ -280,7 +279,7 @@
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -291,7 +290,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -302,7 +301,7 @@
+ io.o: $(ARCHDIR)/io.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT io.o -MD -MP -MF 
"$(DEPDIR)/io.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o io.o `test -f '$(ARCHDIR)/io.c' || echo 
'$(srcdir)/'`$(ARCHDIR)/io.c; \
address@hidden@ then mv "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/io.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/io.c' object='io.o' 
libtool=no @AMDEPBACKSLASH@
+@@ -313,7 +312,7 @@
+ io.obj: $(ARCHDIR)/io.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT io.obj -MD -MP -MF 
"$(DEPDIR)/io.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o io.obj `if test -f '$(ARCHDIR)/io.c'; then 
$(CYGPATH_W) '$(ARCHDIR)/io.c'; else $(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/io.c'; 
fi`; \
address@hidden@ then mv "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/io.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/io.c' 
object='io.obj' libtool=no @AMDEPBACKSLASH@
+@@ -324,7 +323,7 @@
+ spinlock.o: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.o -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.o `test -f '$(ARCHDIR)/spinlock.c' || 
echo '$(srcdir)/'`$(ARCHDIR)/spinlock.c; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.o' libtool=no @AMDEPBACKSLASH@
+@@ -335,7 +334,7 @@
+ spinlock.obj: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.obj -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.obj `if test -f 
'$(ARCHDIR)/spinlock.c'; then $(CYGPATH_W) '$(ARCHDIR)/spinlock.c'; else 
$(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/spinlock.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.obj' libtool=no @AMDEPBACKSLASH@
+@@ -346,7 +345,7 @@
+ malloc.o: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.o -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.o `test -f '$(GENDIR)/malloc.c' || echo 
'$(srcdir)/'`$(GENDIR)/malloc.c; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.o' libtool=no @AMDEPBACKSLASH@
+@@ -357,7 +356,7 @@
+ malloc.obj: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.obj -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.obj `if test -f '$(GENDIR)/malloc.c'; 
then $(CYGPATH_W) '$(GENDIR)/malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/malloc.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.obj' libtool=no @AMDEPBACKSLASH@
+@@ -368,7 +367,7 @@
+ printf.o: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.o -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.o `test -f '$(GENDIR)/printf.c' || echo 
'$(srcdir)/'`$(GENDIR)/printf.c; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.o' libtool=no @AMDEPBACKSLASH@
+@@ -379,7 +378,7 @@
+ printf.obj: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.obj -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.obj `if test -f '$(GENDIR)/printf.c'; 
then $(CYGPATH_W) '$(GENDIR)/printf.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/printf.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.obj' libtool=no @AMDEPBACKSLASH@
+@@ -390,7 +389,7 @@
+ corba.o: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.o -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.o `test -f '$(GENDIR)/corba.c' || echo 
'$(srcdir)/'`$(GENDIR)/corba.c; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.o' libtool=no @AMDEPBACKSLASH@
+@@ -401,7 +400,7 @@
+ corba.obj: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.obj -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.obj `if test -f '$(GENDIR)/corba.c'; then 
$(CYGPATH_W) '$(GENDIR)/corba.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/corba.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.obj' libtool=no @AMDEPBACKSLASH@
+@@ -412,7 +411,7 @@
+ random.o: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.o -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.o `test -f '$(GENDIR)/random.c' || echo 
'$(srcdir)/'`$(GENDIR)/random.c; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.o' libtool=no @AMDEPBACKSLASH@
+@@ -423,7 +422,7 @@
+ random.obj: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.obj -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.obj `if test -f '$(GENDIR)/random.c'; 
then $(CYGPATH_W) '$(GENDIR)/random.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/random.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.obj' libtool=no @AMDEPBACKSLASH@
+@@ -434,7 +433,7 @@
+ string.o: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.o -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.o `test -f '$(GENDIR)/string.c' || echo 
'$(srcdir)/'`$(GENDIR)/string.c; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.o' libtool=no @AMDEPBACKSLASH@
+@@ -445,7 +444,7 @@
+ string.obj: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.obj -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.obj `if test -f '$(GENDIR)/string.c'; 
then $(CYGPATH_W) '$(GENDIR)/string.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/string.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.obj' libtool=no @AMDEPBACKSLASH@
+@@ -456,7 +455,7 @@
+ tools.o: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.o -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.o `test -f '$(GENDIR)/tools.c' || echo 
'$(srcdir)/'`$(GENDIR)/tools.c; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.o' libtool=no @AMDEPBACKSLASH@
+@@ -467,7 +466,7 @@
+ tools.obj: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.obj -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.obj `if test -f '$(GENDIR)/tools.c'; then 
$(CYGPATH_W) '$(GENDIR)/tools.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/tools.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.obj' libtool=no @AMDEPBACKSLASH@
+@@ -478,7 +477,7 @@
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -489,7 +488,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -500,7 +499,7 @@
+ fpage.o: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.o -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.o `test -f '$(APIDIR)/fpage.cc' || echo 
'$(srcdir)/'`$(APIDIR)/fpage.cc; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.o' libtool=no @AMDEPBACKSLASH@
+@@ -511,7 +510,7 @@
+ fpage.obj: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.obj -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.obj `if test -f '$(APIDIR)/fpage.cc'; 
then $(CYGPATH_W) '$(APIDIR)/fpage.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/fpage.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.obj' libtool=no @AMDEPBACKSLASH@
+@@ -522,7 +521,7 @@
+ main.o: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.o -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.o `test -f '$(APIDIR)/main.cc' || echo 
'$(srcdir)/'`$(APIDIR)/main.cc; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.o' libtool=no @AMDEPBACKSLASH@
+@@ -533,7 +532,7 @@
+ main.obj: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.obj -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.obj `if test -f '$(APIDIR)/main.cc'; then 
$(CYGPATH_W) '$(APIDIR)/main.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/main.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.obj' libtool=no @AMDEPBACKSLASH@
+@@ -632,7 +631,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -644,7 +642,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -652,7 +650,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -663,9 +661,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -686,7 +685,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -705,14 +705,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/test/glue/v4-powerpc/Makefile.in 
idl4/src/test/glue/v4-powerpc/Makefile.in
+--- idl4-1.0.2/src/test/glue/v4-powerpc/Makefile.in    2003-11-03 
22:43:09.000000000 +0100
++++ idl4/src/test/glue/v4-powerpc/Makefile.in  2005-07-11 16:14:06.018704656 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -156,6 +156,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -192,6 +193,7 @@
+                             -I. -I$(PISTACHIO_POWERPC_DIR)/include
+ 
+ subdir = src/test/glue/v4-powerpc
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -224,7 +226,7 @@
+ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+       -o $@
+ DIST_SOURCES = $(libtest_v4_powerpc_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtest_v4_powerpc_a_SOURCES)
+ 
+ all: all-am
+@@ -261,9 +263,6 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .S.o:
+       $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ 
+@@ -279,7 +278,7 @@
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -290,7 +289,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -301,7 +300,7 @@
+ io.o: $(ARCHDIR)/io.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT io.o -MD -MP -MF 
"$(DEPDIR)/io.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o io.o `test -f '$(ARCHDIR)/io.c' || echo 
'$(srcdir)/'`$(ARCHDIR)/io.c; \
address@hidden@ then mv "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/io.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/io.c' object='io.o' 
libtool=no @AMDEPBACKSLASH@
+@@ -312,7 +311,7 @@
+ io.obj: $(ARCHDIR)/io.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT io.obj -MD -MP -MF 
"$(DEPDIR)/io.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o io.obj `if test -f '$(ARCHDIR)/io.c'; then 
$(CYGPATH_W) '$(ARCHDIR)/io.c'; else $(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/io.c'; 
fi`; \
address@hidden@ then mv "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/io.Tpo" "$(DEPDIR)/io.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/io.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/io.c' 
object='io.obj' libtool=no @AMDEPBACKSLASH@
+@@ -323,7 +322,7 @@
+ spinlock.o: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.o -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.o `test -f '$(ARCHDIR)/spinlock.c' || 
echo '$(srcdir)/'`$(ARCHDIR)/spinlock.c; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.o' libtool=no @AMDEPBACKSLASH@
+@@ -334,7 +333,7 @@
+ spinlock.obj: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.obj -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.obj `if test -f 
'$(ARCHDIR)/spinlock.c'; then $(CYGPATH_W) '$(ARCHDIR)/spinlock.c'; else 
$(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/spinlock.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.obj' libtool=no @AMDEPBACKSLASH@
+@@ -345,7 +344,7 @@
+ malloc.o: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.o -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.o `test -f '$(GENDIR)/malloc.c' || echo 
'$(srcdir)/'`$(GENDIR)/malloc.c; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.o' libtool=no @AMDEPBACKSLASH@
+@@ -356,7 +355,7 @@
+ malloc.obj: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.obj -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.obj `if test -f '$(GENDIR)/malloc.c'; 
then $(CYGPATH_W) '$(GENDIR)/malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/malloc.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.obj' libtool=no @AMDEPBACKSLASH@
+@@ -367,7 +366,7 @@
+ printf.o: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.o -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.o `test -f '$(GENDIR)/printf.c' || echo 
'$(srcdir)/'`$(GENDIR)/printf.c; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.o' libtool=no @AMDEPBACKSLASH@
+@@ -378,7 +377,7 @@
+ printf.obj: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.obj -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.obj `if test -f '$(GENDIR)/printf.c'; 
then $(CYGPATH_W) '$(GENDIR)/printf.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/printf.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.obj' libtool=no @AMDEPBACKSLASH@
+@@ -389,7 +388,7 @@
+ corba.o: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.o -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.o `test -f '$(GENDIR)/corba.c' || echo 
'$(srcdir)/'`$(GENDIR)/corba.c; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.o' libtool=no @AMDEPBACKSLASH@
+@@ -400,7 +399,7 @@
+ corba.obj: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.obj -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.obj `if test -f '$(GENDIR)/corba.c'; then 
$(CYGPATH_W) '$(GENDIR)/corba.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/corba.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.obj' libtool=no @AMDEPBACKSLASH@
+@@ -411,7 +410,7 @@
+ random.o: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.o -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.o `test -f '$(GENDIR)/random.c' || echo 
'$(srcdir)/'`$(GENDIR)/random.c; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.o' libtool=no @AMDEPBACKSLASH@
+@@ -422,7 +421,7 @@
+ random.obj: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.obj -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.obj `if test -f '$(GENDIR)/random.c'; 
then $(CYGPATH_W) '$(GENDIR)/random.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/random.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.obj' libtool=no @AMDEPBACKSLASH@
+@@ -433,7 +432,7 @@
+ string.o: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.o -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.o `test -f '$(GENDIR)/string.c' || echo 
'$(srcdir)/'`$(GENDIR)/string.c; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.o' libtool=no @AMDEPBACKSLASH@
+@@ -444,7 +443,7 @@
+ string.obj: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.obj -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.obj `if test -f '$(GENDIR)/string.c'; 
then $(CYGPATH_W) '$(GENDIR)/string.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/string.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.obj' libtool=no @AMDEPBACKSLASH@
+@@ -455,7 +454,7 @@
+ tools.o: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.o -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.o `test -f '$(GENDIR)/tools.c' || echo 
'$(srcdir)/'`$(GENDIR)/tools.c; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.o' libtool=no @AMDEPBACKSLASH@
+@@ -466,7 +465,7 @@
+ tools.obj: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.obj -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.obj `if test -f '$(GENDIR)/tools.c'; then 
$(CYGPATH_W) '$(GENDIR)/tools.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/tools.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.obj' libtool=no @AMDEPBACKSLASH@
+@@ -477,7 +476,7 @@
+ .cc.o:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -488,7 +487,7 @@
+ .cc.obj:
+ @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -499,7 +498,7 @@
+ fpage.o: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.o -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.o `test -f '$(APIDIR)/fpage.cc' || echo 
'$(srcdir)/'`$(APIDIR)/fpage.cc; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.o' libtool=no @AMDEPBACKSLASH@
+@@ -510,7 +509,7 @@
+ fpage.obj: $(APIDIR)/fpage.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT fpage.obj -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o fpage.obj `if test -f '$(APIDIR)/fpage.cc'; 
then $(CYGPATH_W) '$(APIDIR)/fpage.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/fpage.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/fpage.cc' 
object='fpage.obj' libtool=no @AMDEPBACKSLASH@
+@@ -521,7 +520,7 @@
+ main.o: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.o -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.o `test -f '$(APIDIR)/main.cc' || echo 
'$(srcdir)/'`$(APIDIR)/main.cc; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.o' libtool=no @AMDEPBACKSLASH@
+@@ -532,7 +531,7 @@
+ main.obj: $(APIDIR)/main.cc
+ @am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT main.obj -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCXX_TRUE@   -c -o main.obj `if test -f '$(APIDIR)/main.cc'; then 
$(CYGPATH_W) '$(APIDIR)/main.cc'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/main.cc'; fi`; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCXX_TRUE@ fi
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@    source='$(APIDIR)/main.cc' 
object='main.obj' libtool=no @AMDEPBACKSLASH@
+@@ -631,7 +630,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -643,7 +641,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -651,7 +649,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -662,9 +660,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -685,7 +684,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -704,14 +704,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-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.
+diff -Naur idl4-1.0.2/src/test/glue/x0-arm/Makefile.in 
idl4/src/test/glue/x0-arm/Makefile.in
+--- idl4-1.0.2/src/test/glue/x0-arm/Makefile.in        2003-11-03 
22:43:09.000000000 +0100
++++ idl4/src/test/glue/x0-arm/Makefile.in      2005-07-11 16:14:10.417036008 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -191,6 +192,7 @@
+                             -I$(HAZELNUT_DIR)/apps/include
+ 
+ subdir = src/test/glue/x0-arm
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -220,7 +222,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES = $(libtest_x0_arm_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtest_x0_arm_a_SOURCES)
+ 
+ all: all-am
+@@ -258,9 +260,6 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .S.o:
+       $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ 
+@@ -276,7 +275,7 @@
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -287,7 +286,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -298,7 +297,7 @@
+ fpage.o: $(APIDIR)/fpage.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fpage.o -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o fpage.o `test -f '$(APIDIR)/fpage.c' || echo 
'$(srcdir)/'`$(APIDIR)/fpage.c; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/fpage.c' 
object='fpage.o' libtool=no @AMDEPBACKSLASH@
+@@ -309,7 +308,7 @@
+ fpage.obj: $(APIDIR)/fpage.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fpage.obj -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o fpage.obj `if test -f '$(APIDIR)/fpage.c'; then 
$(CYGPATH_W) '$(APIDIR)/fpage.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/fpage.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/fpage.c' 
object='fpage.obj' libtool=no @AMDEPBACKSLASH@
+@@ -320,7 +319,7 @@
+ main.o: $(APIDIR)/main.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT main.o -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o main.o `test -f '$(APIDIR)/main.c' || echo 
'$(srcdir)/'`$(APIDIR)/main.c; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/main.c' 
object='main.o' libtool=no @AMDEPBACKSLASH@
+@@ -331,7 +330,7 @@
+ main.obj: $(APIDIR)/main.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT main.obj -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o main.obj `if test -f '$(APIDIR)/main.c'; then 
$(CYGPATH_W) '$(APIDIR)/main.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/main.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/main.c' 
object='main.obj' libtool=no @AMDEPBACKSLASH@
+@@ -342,7 +341,7 @@
+ pager.o: $(APIDIR)/pager.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pager.o -MD -MP -MF 
"$(DEPDIR)/pager.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o pager.o `test -f '$(APIDIR)/pager.c' || echo 
'$(srcdir)/'`$(APIDIR)/pager.c; \
address@hidden@ then mv "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/pager.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/pager.c' 
object='pager.o' libtool=no @AMDEPBACKSLASH@
+@@ -353,7 +352,7 @@
+ pager.obj: $(APIDIR)/pager.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pager.obj -MD -MP -MF 
"$(DEPDIR)/pager.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o pager.obj `if test -f '$(APIDIR)/pager.c'; then 
$(CYGPATH_W) '$(APIDIR)/pager.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/pager.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/pager.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/pager.c' 
object='pager.obj' libtool=no @AMDEPBACKSLASH@
+@@ -364,7 +363,7 @@
+ spinlock.o: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.o -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.o `test -f '$(ARCHDIR)/spinlock.c' || 
echo '$(srcdir)/'`$(ARCHDIR)/spinlock.c; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.o' libtool=no @AMDEPBACKSLASH@
+@@ -375,7 +374,7 @@
+ spinlock.obj: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.obj -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.obj `if test -f 
'$(ARCHDIR)/spinlock.c'; then $(CYGPATH_W) '$(ARCHDIR)/spinlock.c'; else 
$(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/spinlock.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.obj' libtool=no @AMDEPBACKSLASH@
+@@ -386,7 +385,7 @@
+ malloc.o: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.o -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.o `test -f '$(GENDIR)/malloc.c' || echo 
'$(srcdir)/'`$(GENDIR)/malloc.c; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.o' libtool=no @AMDEPBACKSLASH@
+@@ -397,7 +396,7 @@
+ malloc.obj: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.obj -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.obj `if test -f '$(GENDIR)/malloc.c'; 
then $(CYGPATH_W) '$(GENDIR)/malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/malloc.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.obj' libtool=no @AMDEPBACKSLASH@
+@@ -408,7 +407,7 @@
+ printf.o: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.o -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.o `test -f '$(GENDIR)/printf.c' || echo 
'$(srcdir)/'`$(GENDIR)/printf.c; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.o' libtool=no @AMDEPBACKSLASH@
+@@ -419,7 +418,7 @@
+ printf.obj: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.obj -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.obj `if test -f '$(GENDIR)/printf.c'; 
then $(CYGPATH_W) '$(GENDIR)/printf.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/printf.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.obj' libtool=no @AMDEPBACKSLASH@
+@@ -430,7 +429,7 @@
+ corba.o: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.o -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.o `test -f '$(GENDIR)/corba.c' || echo 
'$(srcdir)/'`$(GENDIR)/corba.c; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.o' libtool=no @AMDEPBACKSLASH@
+@@ -441,7 +440,7 @@
+ corba.obj: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.obj -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.obj `if test -f '$(GENDIR)/corba.c'; then 
$(CYGPATH_W) '$(GENDIR)/corba.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/corba.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.obj' libtool=no @AMDEPBACKSLASH@
+@@ -452,7 +451,7 @@
+ random.o: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.o -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.o `test -f '$(GENDIR)/random.c' || echo 
'$(srcdir)/'`$(GENDIR)/random.c; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.o' libtool=no @AMDEPBACKSLASH@
+@@ -463,7 +462,7 @@
+ random.obj: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.obj -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.obj `if test -f '$(GENDIR)/random.c'; 
then $(CYGPATH_W) '$(GENDIR)/random.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/random.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.obj' libtool=no @AMDEPBACKSLASH@
+@@ -474,7 +473,7 @@
+ string.o: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.o -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.o `test -f '$(GENDIR)/string.c' || echo 
'$(srcdir)/'`$(GENDIR)/string.c; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.o' libtool=no @AMDEPBACKSLASH@
+@@ -485,7 +484,7 @@
+ string.obj: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.obj -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.obj `if test -f '$(GENDIR)/string.c'; 
then $(CYGPATH_W) '$(GENDIR)/string.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/string.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.obj' libtool=no @AMDEPBACKSLASH@
+@@ -496,7 +495,7 @@
+ tools.o: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.o -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.o `test -f '$(GENDIR)/tools.c' || echo 
'$(srcdir)/'`$(GENDIR)/tools.c; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.o' libtool=no @AMDEPBACKSLASH@
+@@ -507,7 +506,7 @@
+ tools.obj: $(GENDIR)/tools.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools.obj -MD -MP -MF 
"$(DEPDIR)/tools.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o tools.obj `if test -f '$(GENDIR)/tools.c'; then 
$(CYGPATH_W) '$(GENDIR)/tools.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/tools.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/tools.Tpo" "$(DEPDIR)/tools.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/tools.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/tools.c' 
object='tools.obj' libtool=no @AMDEPBACKSLASH@
+@@ -606,7 +605,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -618,7 +616,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -626,7 +624,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -637,9 +635,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -660,7 +659,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -679,14 +679,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-am
+ 
+ 
+ fpage.o main.o pager.o: upd_link
+diff -Naur idl4-1.0.2/src/test/glue/x0-ia32/Makefile.in 
idl4/src/test/glue/x0-ia32/Makefile.in
+--- idl4-1.0.2/src/test/glue/x0-ia32/Makefile.in       2003-11-03 
22:43:10.000000000 +0100
++++ idl4/src/test/glue/x0-ia32/Makefile.in     2005-07-11 16:14:11.267906656 
+0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -189,6 +190,7 @@
+                             -I$(HAZELNUT_DIR)/apps/include
+ 
+ subdir = src/test/glue/x0-ia32
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -216,7 +218,7 @@
+ CCLD = $(CC)
+ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ DIST_SOURCES = $(libtest_x0_ia32_a_SOURCES)
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ SOURCES = $(libtest_x0_ia32_a_SOURCES)
+ 
+ all: all-am
+@@ -255,9 +257,6 @@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ @AMDEP_TRUE@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+ 
+-distclean-depend:
+-      -rm -rf ./$(DEPDIR)
+-
+ .S.o:
+       $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ 
+@@ -273,7 +272,7 @@
+ .c.o:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -284,7 +283,7 @@
+ .c.obj:
+ @am__fastdepCC_TRUE@  if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; 
else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
address@hidden@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
+@@ -295,7 +294,7 @@
+ fpage.o: $(APIDIR)/fpage.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fpage.o -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o fpage.o `test -f '$(APIDIR)/fpage.c' || echo 
'$(srcdir)/'`$(APIDIR)/fpage.c; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/fpage.c' 
object='fpage.o' libtool=no @AMDEPBACKSLASH@
+@@ -306,7 +305,7 @@
+ fpage.obj: $(APIDIR)/fpage.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fpage.obj -MD -MP -MF 
"$(DEPDIR)/fpage.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o fpage.obj `if test -f '$(APIDIR)/fpage.c'; then 
$(CYGPATH_W) '$(APIDIR)/fpage.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/fpage.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/fpage.Tpo" "$(DEPDIR)/fpage.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/fpage.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/fpage.c' 
object='fpage.obj' libtool=no @AMDEPBACKSLASH@
+@@ -317,7 +316,7 @@
+ main.o: $(APIDIR)/main.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT main.o -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o main.o `test -f '$(APIDIR)/main.c' || echo 
'$(srcdir)/'`$(APIDIR)/main.c; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/main.c' 
object='main.o' libtool=no @AMDEPBACKSLASH@
+@@ -328,7 +327,7 @@
+ main.obj: $(APIDIR)/main.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT main.obj -MD -MP -MF 
"$(DEPDIR)/main.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o main.obj `if test -f '$(APIDIR)/main.c'; then 
$(CYGPATH_W) '$(APIDIR)/main.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/main.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/main.Tpo" "$(DEPDIR)/main.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/main.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/main.c' 
object='main.obj' libtool=no @AMDEPBACKSLASH@
+@@ -339,7 +338,7 @@
+ pager.o: $(APIDIR)/pager.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pager.o -MD -MP -MF 
"$(DEPDIR)/pager.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o pager.o `test -f '$(APIDIR)/pager.c' || echo 
'$(srcdir)/'`$(APIDIR)/pager.c; \
address@hidden@ then mv "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/pager.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/pager.c' 
object='pager.o' libtool=no @AMDEPBACKSLASH@
+@@ -350,7 +349,7 @@
+ pager.obj: $(APIDIR)/pager.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pager.obj -MD -MP -MF 
"$(DEPDIR)/pager.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o pager.obj `if test -f '$(APIDIR)/pager.c'; then 
$(CYGPATH_W) '$(APIDIR)/pager.c'; else $(CYGPATH_W) 
'$(srcdir)/$(APIDIR)/pager.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/pager.Tpo" "$(DEPDIR)/pager.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/pager.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(APIDIR)/pager.c' 
object='pager.obj' libtool=no @AMDEPBACKSLASH@
+@@ -361,7 +360,7 @@
+ spinlock.o: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.o -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.o `test -f '$(ARCHDIR)/spinlock.c' || 
echo '$(srcdir)/'`$(ARCHDIR)/spinlock.c; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.o' libtool=no @AMDEPBACKSLASH@
+@@ -372,7 +371,7 @@
+ spinlock.obj: $(ARCHDIR)/spinlock.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT spinlock.obj -MD -MP -MF 
"$(DEPDIR)/spinlock.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o spinlock.obj `if test -f 
'$(ARCHDIR)/spinlock.c'; then $(CYGPATH_W) '$(ARCHDIR)/spinlock.c'; else 
$(CYGPATH_W) '$(srcdir)/$(ARCHDIR)/spinlock.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/spinlock.Tpo" "$(DEPDIR)/spinlock.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/spinlock.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(ARCHDIR)/spinlock.c' 
object='spinlock.obj' libtool=no @AMDEPBACKSLASH@
+@@ -383,7 +382,7 @@
+ malloc.o: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.o -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.o `test -f '$(GENDIR)/malloc.c' || echo 
'$(srcdir)/'`$(GENDIR)/malloc.c; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.o' libtool=no @AMDEPBACKSLASH@
+@@ -394,7 +393,7 @@
+ malloc.obj: $(GENDIR)/malloc.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT malloc.obj -MD -MP -MF 
"$(DEPDIR)/malloc.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o malloc.obj `if test -f '$(GENDIR)/malloc.c'; 
then $(CYGPATH_W) '$(GENDIR)/malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/malloc.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/malloc.Tpo" "$(DEPDIR)/malloc.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/malloc.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/malloc.c' 
object='malloc.obj' libtool=no @AMDEPBACKSLASH@
+@@ -405,7 +404,7 @@
+ printf.o: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.o -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.o `test -f '$(GENDIR)/printf.c' || echo 
'$(srcdir)/'`$(GENDIR)/printf.c; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.o' libtool=no @AMDEPBACKSLASH@
+@@ -416,7 +415,7 @@
+ printf.obj: $(GENDIR)/printf.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT printf.obj -MD -MP -MF 
"$(DEPDIR)/printf.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o printf.obj `if test -f '$(GENDIR)/printf.c'; 
then $(CYGPATH_W) '$(GENDIR)/printf.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/printf.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/printf.Tpo" "$(DEPDIR)/printf.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/printf.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/printf.c' 
object='printf.obj' libtool=no @AMDEPBACKSLASH@
+@@ -427,7 +426,7 @@
+ corba.o: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.o -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.o `test -f '$(GENDIR)/corba.c' || echo 
'$(srcdir)/'`$(GENDIR)/corba.c; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.o' libtool=no @AMDEPBACKSLASH@
+@@ -438,7 +437,7 @@
+ corba.obj: $(GENDIR)/corba.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT corba.obj -MD -MP -MF 
"$(DEPDIR)/corba.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o corba.obj `if test -f '$(GENDIR)/corba.c'; then 
$(CYGPATH_W) '$(GENDIR)/corba.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/corba.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/corba.Tpo" "$(DEPDIR)/corba.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/corba.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/corba.c' 
object='corba.obj' libtool=no @AMDEPBACKSLASH@
+@@ -449,7 +448,7 @@
+ random.o: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.o -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.o `test -f '$(GENDIR)/random.c' || echo 
'$(srcdir)/'`$(GENDIR)/random.c; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.o' libtool=no @AMDEPBACKSLASH@
+@@ -460,7 +459,7 @@
+ random.obj: $(GENDIR)/random.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT random.obj -MD -MP -MF 
"$(DEPDIR)/random.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o random.obj `if test -f '$(GENDIR)/random.c'; 
then $(CYGPATH_W) '$(GENDIR)/random.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/random.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/random.Tpo" "$(DEPDIR)/random.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/random.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/random.c' 
object='random.obj' libtool=no @AMDEPBACKSLASH@
+@@ -471,7 +470,7 @@
+ string.o: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.o -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.o `test -f '$(GENDIR)/string.c' || echo 
'$(srcdir)/'`$(GENDIR)/string.c; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.o' libtool=no @AMDEPBACKSLASH@
+@@ -482,7 +481,7 @@
+ string.obj: $(GENDIR)/string.c
+ @am__fastdepCC_TRUE@  if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT string.obj -MD -MP -MF 
"$(DEPDIR)/string.Tpo" \
+ @am__fastdepCC_TRUE@    -c -o string.obj `if test -f '$(GENDIR)/string.c'; 
then $(CYGPATH_W) '$(GENDIR)/string.c'; else $(CYGPATH_W) 
'$(srcdir)/$(GENDIR)/string.c'; fi`; \
address@hidden@ then mv "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
address@hidden@ then mv -f "$(DEPDIR)/string.Tpo" "$(DEPDIR)/string.Po"; \
+ @am__fastdepCC_TRUE@  else rm -f "$(DEPDIR)/string.Tpo"; exit 1; \
+ @am__fastdepCC_TRUE@  fi
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='$(GENDIR)/string.c' 
object='string.obj' libtool=no @AMDEPBACKSLASH@
+@@ -581,7 +580,6 @@
+ all-am: Makefile $(LIBRARIES)
+ 
+ installdirs:
+-
+ install: install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+@@ -593,7 +591,7 @@
+ installcheck: installcheck-am
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -601,7 +599,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -612,9 +610,10 @@
+ clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
+ 
+ distclean: distclean-am
+-
+-distclean-am: clean-am distclean-compile distclean-depend \
+-      distclean-generic distclean-tags
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
++distclean-am: clean-am distclean-compile distclean-generic \
++      distclean-tags
+ 
+ dvi: dvi-am
+ 
+@@ -635,7 +634,8 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-am
+-
++      -rm -rf ./$(DEPDIR)
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-am
+@@ -654,14 +654,13 @@
+ 
+ .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+       clean-noinstLIBRARIES ctags distclean distclean-compile \
+-      distclean-depend distclean-generic distclean-tags distdir dvi \
+-      dvi-am info info-am install install-am install-data \
+-      install-data-am install-exec install-exec-am install-info \
+-      install-info-am install-man install-strip installcheck \
+-      installcheck-am installdirs maintainer-clean \
+-      maintainer-clean-generic mostlyclean mostlyclean-compile \
+-      mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+-      uninstall-am uninstall-info-am
++      distclean-generic distclean-tags distdir dvi dvi-am info \
++      info-am install install-am install-data install-data-am \
++      install-exec install-exec-am install-info install-info-am \
++      install-man install-strip installcheck installcheck-am \
++      installdirs maintainer-clean maintainer-clean-generic \
++      mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
++      ps ps-am tags uninstall uninstall-am uninstall-info-am
+ 
+ 
+ fpage.o main.o pager.o: upd_link
+diff -Naur idl4-1.0.2/src/test/Makefile.in idl4/src/test/Makefile.in
+--- idl4-1.0.2/src/test/Makefile.in    2003-11-03 22:41:58.000000000 +0100
++++ idl4/src/test/Makefile.in  2005-07-10 08:07:52.071699264 +0200
+@@ -1,7 +1,7 @@
+-# Makefile.in generated by automake 1.7.2 from Makefile.am.
++# Makefile.in generated by automake 1.7.9 from Makefile.am.
+ # @configure_input@
+ 
+-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
++# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ # Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -155,6 +155,7 @@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+ am__include = @am__include@
++am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+ bindir = @bindir@
+ build_alias = @build_alias@
+@@ -178,6 +179,7 @@
+ 
+ SUBDIRS = glue
+ subdir = src/test
++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+@@ -188,7 +190,7 @@
+       all-recursive install-data-recursive install-exec-recursive \
+       installdirs-recursive install-recursive uninstall-recursive \
+       check-recursive installcheck-recursive
+-DIST_COMMON = Makefile.am Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+ DIST_SUBDIRS = $(SUBDIRS)
+ all: all-recursive
+ 
+@@ -280,9 +282,15 @@
+               $(TAGS_FILES) $(LISP)
+       tags=; \
+       here=`pwd`; \
++      if (etags --etags-include --version) >/dev/null 2>&1; then \
++        include_option=--etags-include; \
++      else \
++        include_option=--include; \
++      fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+-          test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
++          test -f $$subdir/TAGS && \
++            tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
+@@ -379,7 +387,7 @@
+ installcheck: installcheck-recursive
+ install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+-        INSTALL_STRIP_FLAG=-s \
++        install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ mostlyclean-generic:
+@@ -387,7 +395,7 @@
+ clean-generic:
+ 
+ distclean-generic:
+-      -rm -f Makefile $(CONFIG_CLEAN_FILES)
++      -rm -f $(CONFIG_CLEAN_FILES)
+ 
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+@@ -398,7 +406,7 @@
+ clean-am: clean-generic mostlyclean-am
+ 
+ distclean: distclean-recursive
+-
++      -rm -f Makefile
+ distclean-am: clean-am distclean-generic distclean-tags
+ 
+ dvi: dvi-recursive
+@@ -420,7 +428,7 @@
+ installcheck-am:
+ 
+ maintainer-clean: maintainer-clean-recursive
+-
++      -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+ 
+ mostlyclean: mostlyclean-recursive
+diff -Naur idl4-1.0.2/TODO idl4/TODO
+--- idl4-1.0.2/TODO    1970-01-01 01:00:00.000000000 +0100
++++ idl4/TODO  2005-07-13 17:21:52.949457200 +0200
+@@ -0,0 +1,13 @@
++*There seems to be a problem transfering pointers?
++*in V4_GNU backend: don't transfer return values in labels
++ since hurd seems to use this to indicate internal errors
++*in V4_GNU backend: handle hurd internal errors (se above)
++*handle casts for return values  and return values that
++ can't be given through labels
++*remove all my hacks
++*cleanup the code
++*implement missing features
++*rewrite everything in (maybye a template-based completely static
++ variant and in) good C++ (use STL, no C-style casts,
++ no reinterpret_casts at all, no typeless (void*) data, no
++ C prefix, no global variables, no/very less makros).
diff -Naur hurd-l4/ruth/CVS/Entries hurd-l4-new/ruth/CVS/Entries
--- hurd-l4/ruth/CVS/Entries    2005-07-13 18:31:33.297567928 +0200
+++ hurd-l4-new/ruth/CVS/Entries        2005-07-13 18:30:52.424781536 +0200
@@ -1,15 +1,15 @@
-/ChangeLog/1.2/Wed Apr  6 16:56:01 2005//
-/Makefile.am/1.2/Sat Jan 22 02:23:31 2005//
-/README/1.1/Sat Jan 22 00:14:29 2005//
-/ia32-cmain.c/1.1/Sat Jan 22 00:14:29 2005//
-/ia32-crt0.S/1.1/Sat Jan 22 00:14:29 2005//
-/malloc-wrap.c/1.1/Sat Jan 22 00:14:29 2005//
-/malloc.c/1.1/Sat Jan 22 00:14:29 2005//
-/mmap.c/1.2/Wed Apr  6 16:56:01 2005//
-/output.c/1.1/Sat Jan 22 00:14:29 2005//
-/output.h/1.1/Sat Jan 22 00:14:29 2005//
-/ruth.c/1.1/Sat Jan 22 00:14:29 2005//
-/ruth.h/1.1/Sat Jan 22 00:14:29 2005//
-/task-user.c/1.1/Sat Jan 22 00:14:29 2005//
-/task-user.h/1.1/Sat Jan 22 00:14:29 2005//
+/ruth.c/1.1/Sun Jul  3 11:25:12 2005//
+/Makefile.am/1.2/Sun Jul  3 11:44:47 2005//
+/ChangeLog/1.2/Wed Jul 13 15:55:51 2005//
+/README/1.1/Wed Jul 13 15:55:51 2005//
+/ia32-cmain.c/1.1/Wed Jul 13 15:55:51 2005//
+/ia32-crt0.S/1.1/Wed Jul 13 15:55:51 2005//
+/malloc-wrap.c/1.1/Wed Jul 13 15:55:51 2005//
+/malloc.c/1.1/Wed Jul 13 15:55:51 2005//
+/mmap.c/1.2/Wed Jul 13 15:55:51 2005//
+/output.c/1.1/Wed Jul 13 15:55:51 2005//
+/output.h/1.1/Wed Jul 13 15:55:51 2005//
+/ruth.h/1.1/Wed Jul 13 15:55:51 2005//
+/task-user.c/1.1/Wed Jul 13 15:55:51 2005//
+/task-user.h/1.1/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/ruth/Makefile.am hurd-l4-new/ruth/Makefile.am
--- hurd-l4/ruth/Makefile.am    2005-01-22 03:23:31.000000000 +0100
+++ hurd-l4-new/ruth/Makefile.am        2005-07-13 18:30:52.424781536 +0200
@@ -26,13 +26,14 @@
 boot_PROGRAMS = ruth
 
 ruth_CPPFLAGS = -I$(top_builddir)/include                      \
-       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)
+       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)               
 
 ruth_SOURCES = $(ARCH_SOURCES)                                 \
        output.h output.c                                       \
        mmap.c malloc-wrap.c                                    \
        task-user.h task-user.c                                 \
-       ruth.h ruth.c
+       ruth.h ruth.c                                           \
+       test_template.c test.idl
 
 # Doug Lea's malloc is included by malloc-wrap.c.
 EXTRA_ruth_SOURCES = malloc.c
@@ -46,3 +47,6 @@
        ../libhurd-ihash/libhurd-ihash.a                        \
        ../libhurd-btree/libhurd-btree.a                        \
        ../libc-parts/libc-parts.a -lgcc
+
+#include the idl suffix rules
+include $(top_srcdir)/Makefile.idl4
diff -Naur hurd-l4/ruth/Makefile.in hurd-l4-new/ruth/Makefile.in
--- hurd-l4/ruth/Makefile.in    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/ruth/Makefile.in        2005-07-13 18:30:52.425781384 +0200
@@ -0,0 +1,643 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for the ruth server.
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = $(ruth_SOURCES) $(EXTRA_ruth_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+boot_PROGRAMS = ruth$(EXEEXT)
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+       $(top_srcdir)/Makefile.idl4 ChangeLog
+subdir = ruth
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bootdir)"
+bootPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(boot_PROGRAMS)
+am__ruth_SOURCES_DIST = ia32-crt0.S ia32-cmain.c output.h output.c \
+       mmap.c malloc-wrap.c task-user.h task-user.c ruth.h ruth.c \
+       test_template.c test.idl
address@hidden@am__objects_1 = ia32-crt0.$(OBJEXT) \
address@hidden@ ruth-ia32-cmain.$(OBJEXT)
+am_ruth_OBJECTS = $(am__objects_1) ruth-output.$(OBJEXT) \
+       ruth-mmap.$(OBJEXT) ruth-malloc-wrap.$(OBJEXT) \
+       ruth-task-user.$(OBJEXT) ruth-ruth.$(OBJEXT) \
+       ruth-test_template.$(OBJEXT)
+ruth_OBJECTS = $(am_ruth_OBJECTS)
+ruth_DEPENDENCIES = ../libhurd-cap-server/libhurd-cap-server.a \
+       ../libhurd-mm/libhurd-mm.a ../libhurd-slab/libhurd-slab.a \
+       ../libpthread/libpthread.a ../libhurd-ihash/libhurd-ihash.a \
+       ../libhurd-btree/libhurd-btree.a ../libc-parts/libc-parts.a
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CCASCOMPILE = $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS)
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(ruth_SOURCES) $(EXTRA_ruth_SOURCES)
+DIST_SOURCES = $(am__ruth_SOURCES_DIST) $(EXTRA_ruth_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@ARCH_SOURCES = ia32-crt0.S ia32-cmain.c
+bootdir = $(prefix)/boot
+ruth_CPPFLAGS = -I$(top_builddir)/include                      \
+       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)               
+
+ruth_SOURCES = $(ARCH_SOURCES)                                 \
+       output.h output.c                                       \
+       mmap.c malloc-wrap.c                                    \
+       task-user.h task-user.c                                 \
+       ruth.h ruth.c                                           \
+       test_template.c test.idl
+
+
+# Doug Lea's malloc is included by malloc-wrap.c.
+EXTRA_ruth_SOURCES = malloc.c
+ruth_LDFLAGS = -u_start -e_start -nostdlib
+ruth_LDADD = ../libhurd-cap-server/libhurd-cap-server.a                \
+       ../libhurd-mm/libhurd-mm.a                              \
+       ../libhurd-slab/libhurd-slab.a                          \
+       ../libpthread/libpthread.a                              \
+       ../libhurd-ihash/libhurd-ihash.a                        \
+       ../libhurd-btree/libhurd-btree.a                        \
+       ../libc-parts/libc-parts.a -lgcc
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am 
$(top_srcdir)/Makefile.idl4 $(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) --gnu  ruth/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  ruth/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-bootPROGRAMS: $(boot_PROGRAMS)
+       @$(NORMAL_INSTALL)
+       test -z "$(bootdir)" || $(mkdir_p) "$(DESTDIR)$(bootdir)"
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+         ; then \
+           f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) '$$p' 
'$(DESTDIR)$(bootdir)/$$f'"; \
+          $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) "$$p" 
"$(DESTDIR)$(bootdir)/$$f" || exit 1; \
+         else :; fi; \
+       done
+
+uninstall-bootPROGRAMS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         f=`echo "$$p" | sed 
's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f '$(DESTDIR)$(bootdir)/$$f'"; \
+         rm -f "$(DESTDIR)$(bootdir)/$$f"; \
+       done
+
+clean-bootPROGRAMS:
+       -test -z "$(boot_PROGRAMS)" || rm -f $(boot_PROGRAMS)
+ruth$(EXEEXT): $(ruth_OBJECTS) $(ruth_DEPENDENCIES) 
+       @rm -f ruth$(EXEEXT)
+       $(LINK) $(ruth_LDFLAGS) $(ruth_OBJECTS) $(ruth_LDADD) $(LIBS)
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.S.o:
+       $(CCASCOMPILE) -c $<
+
+.S.obj:
+       $(CCASCOMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+ruth-ia32-cmain.o: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-ia32-cmain.o -MD 
-MP -MF "$(DEPDIR)/ruth-ia32-cmain.Tpo" -c -o ruth-ia32-cmain.o `test -f 
'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-ia32-cmain.Tpo" 
"$(DEPDIR)/ruth-ia32-cmain.Po"; else rm -f "$(DEPDIR)/ruth-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='ruth-ia32-cmain.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-ia32-cmain.o `test -f 
'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c
+
+ruth-ia32-cmain.obj: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-ia32-cmain.obj -MD 
-MP -MF "$(DEPDIR)/ruth-ia32-cmain.Tpo" -c -o ruth-ia32-cmain.obj `if test -f 
'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-ia32-cmain.Tpo" 
"$(DEPDIR)/ruth-ia32-cmain.Po"; else rm -f "$(DEPDIR)/ruth-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='ruth-ia32-cmain.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-ia32-cmain.obj `if test -f 
'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`
+
+ruth-output.o: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-output.o -MD -MP 
-MF "$(DEPDIR)/ruth-output.Tpo" -c -o ruth-output.o `test -f 'output.c' || echo 
'$(srcdir)/'`output.c; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-output.Tpo" 
"$(DEPDIR)/ruth-output.Po"; else rm -f "$(DEPDIR)/ruth-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='ruth-output.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-output.o `test -f 'output.c' || 
echo '$(srcdir)/'`output.c
+
+ruth-output.obj: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-output.obj -MD -MP 
-MF "$(DEPDIR)/ruth-output.Tpo" -c -o ruth-output.obj `if test -f 'output.c'; 
then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) '$(srcdir)/output.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-output.Tpo" 
"$(DEPDIR)/ruth-output.Po"; else rm -f "$(DEPDIR)/ruth-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='ruth-output.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-output.obj `if test -f 
'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`
+
+ruth-mmap.o: mmap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-mmap.o -MD -MP -MF 
"$(DEPDIR)/ruth-mmap.Tpo" -c -o ruth-mmap.o `test -f 'mmap.c' || echo 
'$(srcdir)/'`mmap.c; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-mmap.Tpo" "$(DEPDIR)/ruth-mmap.Po"; 
else rm -f "$(DEPDIR)/ruth-mmap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='mmap.c' object='ruth-mmap.o' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-mmap.o `test -f 'mmap.c' || echo 
'$(srcdir)/'`mmap.c
+
+ruth-mmap.obj: mmap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-mmap.obj -MD -MP 
-MF "$(DEPDIR)/ruth-mmap.Tpo" -c -o ruth-mmap.obj `if test -f 'mmap.c'; then 
$(CYGPATH_W) 'mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-mmap.Tpo" "$(DEPDIR)/ruth-mmap.Po"; 
else rm -f "$(DEPDIR)/ruth-mmap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='mmap.c' object='ruth-mmap.obj' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-mmap.obj `if test -f 'mmap.c'; 
then $(CYGPATH_W) 'mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap.c'; fi`
+
+ruth-malloc-wrap.o: malloc-wrap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-malloc-wrap.o -MD 
-MP -MF "$(DEPDIR)/ruth-malloc-wrap.Tpo" -c -o ruth-malloc-wrap.o `test -f 
'malloc-wrap.c' || echo '$(srcdir)/'`malloc-wrap.c; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-malloc-wrap.Tpo" 
"$(DEPDIR)/ruth-malloc-wrap.Po"; else rm -f "$(DEPDIR)/ruth-malloc-wrap.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc-wrap.c' 
object='ruth-malloc-wrap.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-malloc-wrap.o `test -f 
'malloc-wrap.c' || echo '$(srcdir)/'`malloc-wrap.c
+
+ruth-malloc-wrap.obj: malloc-wrap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-malloc-wrap.obj 
-MD -MP -MF "$(DEPDIR)/ruth-malloc-wrap.Tpo" -c -o ruth-malloc-wrap.obj `if 
test -f 'malloc-wrap.c'; then $(CYGPATH_W) 'malloc-wrap.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc-wrap.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-malloc-wrap.Tpo" 
"$(DEPDIR)/ruth-malloc-wrap.Po"; else rm -f "$(DEPDIR)/ruth-malloc-wrap.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc-wrap.c' 
object='ruth-malloc-wrap.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-malloc-wrap.obj `if test -f 
'malloc-wrap.c'; then $(CYGPATH_W) 'malloc-wrap.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc-wrap.c'; fi`
+
+ruth-task-user.o: task-user.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-task-user.o -MD 
-MP -MF "$(DEPDIR)/ruth-task-user.Tpo" -c -o ruth-task-user.o `test -f 
'task-user.c' || echo '$(srcdir)/'`task-user.c; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-task-user.Tpo" 
"$(DEPDIR)/ruth-task-user.Po"; else rm -f "$(DEPDIR)/ruth-task-user.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task-user.c' 
object='ruth-task-user.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-task-user.o `test -f 
'task-user.c' || echo '$(srcdir)/'`task-user.c
+
+ruth-task-user.obj: task-user.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-task-user.obj -MD 
-MP -MF "$(DEPDIR)/ruth-task-user.Tpo" -c -o ruth-task-user.obj `if test -f 
'task-user.c'; then $(CYGPATH_W) 'task-user.c'; else $(CYGPATH_W) 
'$(srcdir)/task-user.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-task-user.Tpo" 
"$(DEPDIR)/ruth-task-user.Po"; else rm -f "$(DEPDIR)/ruth-task-user.Tpo"; exit 
1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task-user.c' 
object='ruth-task-user.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-task-user.obj `if test -f 
'task-user.c'; then $(CYGPATH_W) 'task-user.c'; else $(CYGPATH_W) 
'$(srcdir)/task-user.c'; fi`
+
+ruth-ruth.o: ruth.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-ruth.o -MD -MP -MF 
"$(DEPDIR)/ruth-ruth.Tpo" -c -o ruth-ruth.o `test -f 'ruth.c' || echo 
'$(srcdir)/'`ruth.c; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-ruth.Tpo" "$(DEPDIR)/ruth-ruth.Po"; 
else rm -f "$(DEPDIR)/ruth-ruth.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ruth.c' object='ruth-ruth.o' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-ruth.o `test -f 'ruth.c' || echo 
'$(srcdir)/'`ruth.c
+
+ruth-ruth.obj: ruth.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-ruth.obj -MD -MP 
-MF "$(DEPDIR)/ruth-ruth.Tpo" -c -o ruth-ruth.obj `if test -f 'ruth.c'; then 
$(CYGPATH_W) 'ruth.c'; else $(CYGPATH_W) '$(srcdir)/ruth.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-ruth.Tpo" "$(DEPDIR)/ruth-ruth.Po"; 
else rm -f "$(DEPDIR)/ruth-ruth.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ruth.c' object='ruth-ruth.obj' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-ruth.obj `if test -f 'ruth.c'; 
then $(CYGPATH_W) 'ruth.c'; else $(CYGPATH_W) '$(srcdir)/ruth.c'; fi`
+
+ruth-test_template.o: test_template.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-test_template.o 
-MD -MP -MF "$(DEPDIR)/ruth-test_template.Tpo" -c -o ruth-test_template.o `test 
-f 'test_template.c' || echo '$(srcdir)/'`test_template.c; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-test_template.Tpo" 
"$(DEPDIR)/ruth-test_template.Po"; else rm -f 
"$(DEPDIR)/ruth-test_template.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='test_template.c' 
object='ruth-test_template.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-test_template.o `test -f 
'test_template.c' || echo '$(srcdir)/'`test_template.c
+
+ruth-test_template.obj: test_template.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-test_template.obj 
-MD -MP -MF "$(DEPDIR)/ruth-test_template.Tpo" -c -o ruth-test_template.obj `if 
test -f 'test_template.c'; then $(CYGPATH_W) 'test_template.c'; else 
$(CYGPATH_W) '$(srcdir)/test_template.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-test_template.Tpo" 
"$(DEPDIR)/ruth-test_template.Po"; else rm -f 
"$(DEPDIR)/ruth-test_template.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='test_template.c' 
object='ruth-test_template.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-test_template.obj `if test -f 
'test_template.c'; then $(CYGPATH_W) 'test_template.c'; else $(CYGPATH_W) 
'$(srcdir)/test_template.c'; fi`
+
+ruth-malloc.o: malloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-malloc.o -MD -MP 
-MF "$(DEPDIR)/ruth-malloc.Tpo" -c -o ruth-malloc.o `test -f 'malloc.c' || echo 
'$(srcdir)/'`malloc.c; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-malloc.Tpo" 
"$(DEPDIR)/ruth-malloc.Po"; else rm -f "$(DEPDIR)/ruth-malloc.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc.c' 
object='ruth-malloc.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-malloc.o `test -f 'malloc.c' || 
echo '$(srcdir)/'`malloc.c
+
+ruth-malloc.obj: malloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(ruth_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ruth-malloc.obj -MD -MP 
-MF "$(DEPDIR)/ruth-malloc.Tpo" -c -o ruth-malloc.obj `if test -f 'malloc.c'; 
then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) '$(srcdir)/malloc.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/ruth-malloc.Tpo" 
"$(DEPDIR)/ruth-malloc.Po"; else rm -f "$(DEPDIR)/ruth-malloc.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc.c' 
object='ruth-malloc.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ruth_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ruth-malloc.obj `if test -f 
'malloc.c'; then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc.c'; fi`
+uninstall-info-am:
+
+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)
+       $(mkdir_p) $(distdir)/..
+       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+       list='$(DISTFILES)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(PROGRAMS)
+installdirs:
+       for dir in "$(DESTDIR)$(bootdir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-bootPROGRAMS clean-generic clean-local 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-bootPROGRAMS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-bootPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-bootPROGRAMS \
+       clean-generic clean-local ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-bootPROGRAMS \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-bootPROGRAMS uninstall-info-am
+
+%_client.h: %.idl
+       $(IDL4) $(IDL4FLAGS) -c $<
+
+%_server.h: %.idl
+       $(IDL4) $(IDL4FLAGS) -s $<
+
+clean-local:
+       rm -f *_server.h *_client.h
+
+#include the idl suffix rules
+# 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 -Naur hurd-l4/ruth/ruth.c hurd-l4-new/ruth/ruth.c
--- hurd-l4/ruth/ruth.c 2005-01-22 01:14:29.000000000 +0100
+++ hurd-l4-new/ruth/ruth.c     2005-07-13 18:30:52.426781232 +0200
@@ -31,6 +31,8 @@
 
 #include "ruth.h"
 #include "task-user.h"
+#include "test_client.h"
+#include "test_server.h"
 
 
 /* Initialized by the machine-specific startup-code.  */
@@ -152,10 +154,79 @@
 }
 #endif
 
+l4_thread_id_t mtid,ttid;
+hurd_cap_handle_t ruth_cap;
+
+volatile int lock=1;
+
+void * my_thread(void* a)
+{
+       ttid=l4_my_global_id();
+       lock=0;
+       ruth_class_server((idl4_cap_bucket_t)a);
+       
+       /*l4_thread_id_t from=l4_anythread;
+      wortel_cap_id_t cap_id;
+      l4_msg_t msg;
+      l4_msg_tag_t tag;
+      l4_accept (L4_UNTYPED_WORDS_ACCEPTOR);
+      tag = l4_wait_timeout (l4_time_period (UINT64_C (1000000) * 5), &from);
+      if (l4_ipc_failed (tag))
+         {
+                 printf("ipc faild\n");
+                 return 1;
+         };
+      l4_msg_store (tag, msg);
+         cap_id = l4_msg_word (msg, 0);
+         printf("%i\n",cap_id);*/
+       
+       return 0;
+};
+
+void call_my_test()
+{
+       l4_thread_id_t deva_id=__hurd_startup_data->deva_master.server;
+       hurd_cap_handle_t deva_cap=__hurd_startup_data->deva_master.cap_handle;
+       
+ /*    l4_msg_tag_t tag;
+
+       tag = l4_niltag;
+       l4_msg_tag_set_label (&tag, 770);
+       l4_set_msg_tag (tag);
+       tag = l4_call (deva_id);*/
+         l4_msg_t msg;
+         l4_msg_tag_t tag;
+       
+         l4_accept (L4_UNTYPED_WORDS_ACCEPTOR);
+       
+         l4_msg_clear (msg);
+         l4_set_msg_label (msg, 770);
+         l4_msg_append_word (msg, deva_cap);
+         l4_msg_load (msg);
+         tag = l4_call (deva_id);
+};
+
+#define _HURD_CAP_CLIENT_ID_BITS       HURD_TASK_ID_BITS
+#define _HURD_CAP_ID_BITS ((sizeof (hurd_cap_handle_t) * 8) \
+                          - HURD_TASK_ID_BITS)
+
+#define _HURD_CAP_CLIENT_ID_MASK \
+  ((L4_WORD_C(1) << _HURD_CAP_CLIENT_ID_BITS) - 1)
+#define _HURD_CAP_ID_MASK ((L4_WORD_C(1) << _HURD_CAP_ID_BITS) - 1)
+void call_ruth_class()
+{
+       printf("BAR\n");
+       error_t e;
+       ruth_class_test(ttid,ruth_cap,&e);
+       printf("BAR2\n");
+};
+
 
 int
 main (int argc, char *argv[])
 {
+       mtid=l4_my_global_id();
+       
   error_t err;
   l4_thread_id_t server_thread;
   hurd_cap_bucket_t bucket;
@@ -166,9 +237,39 @@
   debug ("%s " PACKAGE_VERSION "\n", program_name);
 
   debug ("Hello, here is Ruth, your friendly root server!\n");
+  call_my_test();
+  debug ("Hello, here is Ruth, your friendly root server!\n");
 
   server_thread = setup_threads ();
-
+       hurd_cap_bucket_create (&bucket);
+       ruth_class_init();
+       
+       hurd_cap_obj_t obj;
+       if(ruth_class_alloc(&obj))
+       {
+               debug(": ruth_alloc\n");
+               return 1;
+       }
+       else
+               debug("Success: ruth_alloc\n");
+       
+       hurd_cap_obj_unlock(obj);
+       
+       if(hurd_cap_bucket_inject (bucket, obj, 
hurd_task_id_from_thread_id(mtid), &ruth_cap))
+       {
+               debug("Error: hurd_cap_bucket_inject\n");
+               return 2;
+       }
+       else
+               debug("Success: hurd_cap_bucket_inject\n");
+       pthread_t t;
+       pthread_create(&t,0,my_thread,bucket);
+       pthread_detach(t);
+       
+       while(lock);
+       call_ruth_class();
+       printf("FERTIG\n");
+       
 #if 0
   err = ruth_class_init ();
   if (err)
@@ -187,10 +288,10 @@
   if (err)
     panic ("pthread_create_from_l4_tid_np: %i\n", err);
   pthread_detach (manager);
-
   /* FIXME: get root filesystem cap (for loading drivers).  */
 #endif
-
+       
+  
   /* FIXME: Eventually, add shutdown support on wortels(?)
      request.  */
   while (1)
diff -Naur hurd-l4/ruth/ruth-class.c hurd-l4-new/ruth/ruth-class.c
--- hurd-l4/ruth/ruth-class.c   1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/ruth/ruth-class.c       2005-07-13 18:30:52.426781232 +0200
@@ -0,0 +1,42 @@
+#if HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+
+#include <l4.h>
+#include <hurd/cap-server.h>
+#include "output.h"
+#include "test_server.h"
+
+/*static error_t
+ruth_class_demuxer (hurd_cap_rpc_context_t ctx)
+{
+       switch(l4_msg_label(ctx->msg))
+       {
+       case 0:
+               printf("ruth_class_demuxer\n");
+               break;
+       case 1:
+               printf("%c",l4_msg_word(ctx->msg,1));
+               break;
+       default:
+               printf("Unknown label!\n");
+       }
+       return 0;
+}*/
+
+static struct hurd_cap_class ruth_class;
+       
+error_t ruth_class_init ()
+{
+  return hurd_cap_class_init (&ruth_class, int *,
+                             NULL, NULL, NULL, NULL,
+                             ruth_class_demuxer);
+}
+
+
+error_t ruth_alloc (hurd_cap_obj_t *r_obj)
+{
+       return hurd_cap_class_alloc (&ruth_class, r_obj);
+}
diff -Naur hurd-l4/ruth/test_client.h hurd-l4-new/ruth/test_client.h
--- hurd-l4/ruth/test_client.h  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/ruth/test_client.h      2005-07-13 18:31:06.455648520 +0200
@@ -0,0 +1,70 @@
+/*****************************************************************
+ * DO NOT EDIT - MACHINE-GENERATED FILE!
+ * 
+ * Source file : test.idl
+ * Platform    : V4_GNU Generic
+ * Mapping     : CORBA C
+ * 
+ * Generated by IDL4 1.0.2 (patch by ness <address@hidden>) on 13/07/2005 17:52
+ * Report bugs to address@hidden
+ *****************************************************************/
+
+#if !defined(__test_client_h__)
+#define __test_client_h__
+
+#define IDL4_OMIT_FRAME_POINTER 0
+#define IDL4_USE_FASTCALL 0
+#define IDL4_NEED_MALLOC 1
+#define IDL4_API v4_gnu
+#define IDL4_ARCH generic
+
+#include "idl4/idl4.h"
+
+#if IDL4_HEADER_REVISION < 20030403
+#error You are using outdated versions of the IDL4 header files
+#endif /* IDL4_HEADER_REVISION < 20030403 */
+
+#include "hurd/cap-server.h"
+
+/* Interface ruth_class */
+
+#if !defined(_funcdef___ruth_class_test)
+#define _funcdef___ruth_class_test
+static inline int ruth_class_test(idl4_thread_id_t _server, idl4_cap_handle_t 
_cap, error_t *e)
+
+{
+  l4_msg_tag_t _tag;
+  l4_msg_t _msg;
+  union _buf {
+    struct {
+      error_t e;
+    } _out;
+  } _pack;
+  int __retval;
+
+  /* invoke IPC */
+  
+  l4_accept(L4_UNTYPED_WORDS_ACCEPTOR);
+  l4_msg_clear(_msg);
+  l4_set_msg_label(_msg, 0+((0u) << 16));
+  l4_msg_append_word(_msg, (l4_word_t)_cap);
+  l4_msg_load(_msg);
+  _tag = l4_call(_server);
+  l4_msg_store(_tag, _msg);
+  _pack._out.e = (error_t)l4_msg_word(_msg, 1);
+
+  if (IDL4_EXPECT_TRUE(l4_ipc_succeeded(_tag)))
+    {
+      /* unmarshal */
+      
+      *e = _pack._out.e;
+    }
+
+  /* return normally */
+  
+  __retval = l4_label(_tag);
+  return __retval;
+}
+#endif /* !defined(_funcdef___ruth_class_test) */
+
+#endif /* !defined(__test_client_h__) */
diff -Naur hurd-l4/ruth/test.idl hurd-l4-new/ruth/test.idl
--- hurd-l4/ruth/test.idl       1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/ruth/test.idl   2005-07-13 18:30:52.427781080 +0200
@@ -0,0 +1,13 @@
+/*struct some_struct
+{
+       long a;
+       double c;
+};*/
+import "hurd/cap-server.h";
+interface ruth_class
+{
+       //int test(in short a, out short b, inout float c, in some_struct 
s1,out some_struct s2,in string str1,out string str2, in fpage f1,out fpage f2);
+       //void test(in string a);
+       //int test(in long a,out long b);
+       long test(out error_t e);
+};
diff -Naur hurd-l4/ruth/test_server.h hurd-l4-new/ruth/test_server.h
--- hurd-l4/ruth/test_server.h  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/ruth/test_server.h      2005-07-13 18:31:06.455648520 +0200
@@ -0,0 +1,66 @@
+/*****************************************************************
+ * DO NOT EDIT - MACHINE-GENERATED FILE!
+ * 
+ * Source file : test.idl
+ * Platform    : V4_GNU Generic
+ * Mapping     : CORBA C
+ * 
+ * Generated by IDL4 1.0.2 (patch by ness <address@hidden>) on 13/07/2005 15:50
+ * Report bugs to address@hidden
+ *****************************************************************/
+
+#if !defined(__test_server_h__)
+#define __test_server_h__
+
+#define IDL4_OMIT_FRAME_POINTER 0
+#define IDL4_USE_FASTCALL 0
+#define IDL4_NEED_MALLOC 1
+#define IDL4_API v4_gnu
+#define IDL4_ARCH generic
+
+#include "idl4/idl4.h"
+
+#if IDL4_HEADER_REVISION < 20030403
+#error You are using outdated versions of the IDL4 header files
+#endif /* IDL4_HEADER_REVISION < 20030403 */
+
+#include "hurd/cap-server.h"
+
+/* Interface ruth_class */
+
+void ruth_class_server(idl4_cap_bucket_t _bucket);
+void ruth_class_discard(idl4_cap_rpc_context_t _ctx);
+error_t ruth_class_demuxer(idl4_cap_rpc_context_t _ctx);
+
+#define RUTH_CLASS_DEFAULT_VTABLE { service_ruth_class_test }
+#define RUTH_CLASS_DEFAULT_VTABLE_SIZE 1
+#define RUTH_CLASS_MAX_FID 0
+#define RUTH_CLASS_MSGBUF_SIZE 0
+#define RUTH_CLASS_STRBUF_SIZE 0
+#define RUTH_CLASS_FID_MASK 0
+
+void service_ruth_class_test(idl4_cap_rpc_context_t _ctx);
+
+inline int ruth_class_test_implementation(idl4_cap_rpc_context_t _ctx, error_t 
*e);
+
+
+#define IDL4_PUBLISH_RUTH_CLASS_TEST(_func) void 
service_ruth_class_test(idl4_cap_rpc_context_t _ctx)\
+\
+{ \
+  int __retval; \
+  union _buf { \
+    struct { \
+      error_t e; \
+    } _out; \
+  } _pack; \
+\
+  /* invoke service */ \
+   \
+  __retval = _func(_ctx, &_pack._out.e);\
+\
+  l4_set_msg_label(_ctx->msg, __retval);\
+  l4_msg_append_word(_ctx->msg, (l4_word_t)_pack._out.e);\
+} \
+
+#define IDL4_PUBLISH_ruth_class_test IDL4_PUBLISH_RUTH_CLASS_TEST
+#endif /* !defined(__test_server_h__) */
diff -Naur hurd-l4/ruth/test_template.c hurd-l4-new/ruth/test_template.c
--- hurd-l4/ruth/test_template.c        1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/ruth/test_template.c    2005-07-13 18:30:52.427781080 +0200
@@ -0,0 +1,64 @@
+/*****************************************************************
+ * Source file : test.idl
+ * Platform    : V4_GNU Generic
+ * Mapping     : CORBA C
+ * 
+ * Generated by IDL4 1.0.2 (patch by ness <address@hidden>) on 13/07/2005 14:29
+ * Report bugs to address@hidden
+ *****************************************************************/
+
+#include "test_server.h"
+#include "output.h"
+
+/* Interface ruth_class */
+
+IDL4_INLINE int ruth_class_test_implementation(idl4_cap_rpc_context_t _ctx, 
error_t *e)
+
+{
+  int __retval = 0;
+
+  /* implementation of ruth_class::test */
+  printf("TEST\n");  
+
+  return __retval;
+}
+
+IDL4_PUBLISH_RUTH_CLASS_TEST(ruth_class_test_implementation);
+
+void *ruth_class_vtable[RUTH_CLASS_DEFAULT_VTABLE_SIZE] = 
RUTH_CLASS_DEFAULT_VTABLE;
+
+void ruth_class_server(idl4_cap_bucket_t _bucket)
+
+{
+  hurd_cap_bucket_manage_mt(_bucket,NULL,0,0);
+}
+
+void ruth_class_discard(idl4_cap_rpc_context_t _ctx)
+
+{
+}
+
+error_t ruth_class_demuxer(idl4_cap_rpc_context_t _ctx)
+
+{
+  
(*(void(*)(idl4_cap_rpc_context_t))(ruth_class_vtable[idl4_get_function_id(idl4_msg_label(_ctx->msg))
 & RUTH_CLASS_FID_MASK]))(_ctx);
+  return 0;
+}
+
+static idl4_cap_class ruth_class;
+
+error_t ruth_class_init(void)
+
+{
+  /* do necessary changes */
+  
+  return idl4_cap_class_init(&ruth_class, int*, NULL, NULL, NULL, NULL, 
ruth_class_demuxer);
+}
+
+error_t ruth_class_alloc(idl4_cap_obj_t* _r_obj)
+
+{
+  /* do necessary changes */
+  
+  return idl4_cap_class_alloc(&ruth_class, _r_obj);
+}
diff -Naur hurd-l4/task/CVS/Entries hurd-l4-new/task/CVS/Entries
--- hurd-l4/task/CVS/Entries    2005-07-13 18:31:33.909474904 +0200
+++ hurd-l4-new/task/CVS/Entries        2005-07-13 18:30:52.427781080 +0200
@@ -1,15 +1,15 @@
-/ChangeLog/1.17/Wed Apr  6 16:56:01 2005//
-/Makefile.am/1.6/Tue Jan 11 18:15:26 2005//
-/ia32-cmain.c/1.6/Tue Jan 11 18:15:26 2005//
-/ia32-crt0.S/1.2/Tue Oct 26 03:12:56 2004//
-/malloc-wrap.c/1.1/Wed Oct 27 20:39:55 2004//
-/malloc.c/1.1/Wed Oct 27 20:39:55 2004//
-/mmap.c/1.3/Wed Apr  6 16:56:01 2005//
-/output.c/1.2/Mon Apr 26 21:21:22 2004//
-/output.h/1.3/Fri Jan  7 11:11:46 2005//
-/task-class.c/1.4/Tue Nov  2 00:18:26 2004//
-/task-id.c/1.1/Fri Oct 29 03:29:05 2004//
-/task.c/1.7/Tue Nov  2 00:18:26 2004//
-/task.h/1.5/Tue Nov  2 00:18:26 2004//
-/thread.c/1.2/Fri Jan  7 10:27:50 2005//
+/ChangeLog/1.17/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.6/Wed Jul 13 15:55:51 2005//
+/ia32-cmain.c/1.6/Wed Jul 13 15:55:51 2005//
+/ia32-crt0.S/1.2/Wed Jul 13 15:55:51 2005//
+/malloc-wrap.c/1.1/Wed Jul 13 15:55:51 2005//
+/malloc.c/1.1/Wed Jul 13 15:55:51 2005//
+/mmap.c/1.3/Wed Jul 13 15:55:51 2005//
+/output.c/1.2/Wed Jul 13 15:55:51 2005//
+/output.h/1.3/Wed Jul 13 15:55:51 2005//
+/task-class.c/1.4/Wed Jul 13 15:55:51 2005//
+/task-id.c/1.1/Wed Jul 13 15:55:51 2005//
+/task.c/1.7/Wed Jul 13 15:55:51 2005//
+/task.h/1.5/Wed Jul 13 15:55:51 2005//
+/thread.c/1.2/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/task/Makefile.in hurd-l4-new/task/Makefile.in
--- hurd-l4/task/Makefile.in    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/task/Makefile.in        2005-07-13 18:30:52.429780776 +0200
@@ -0,0 +1,644 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for the task server.
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = $(task_SOURCES) $(EXTRA_task_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+boot_PROGRAMS = task$(EXEEXT)
+subdir = task
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bootdir)"
+bootPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(boot_PROGRAMS)
+am__task_SOURCES_DIST = ia32-crt0.S ia32-cmain.c output.h output.c \
+       mmap.c malloc-wrap.c task.h task.c task-class.c task-id.c \
+       thread.c
address@hidden@am__objects_1 = ia32-crt0.$(OBJEXT) \
address@hidden@ task-ia32-cmain.$(OBJEXT)
+am_task_OBJECTS = $(am__objects_1) task-output.$(OBJEXT) \
+       task-mmap.$(OBJEXT) task-malloc-wrap.$(OBJEXT) \
+       task-task.$(OBJEXT) task-task-class.$(OBJEXT) \
+       task-task-id.$(OBJEXT) task-thread.$(OBJEXT)
+task_OBJECTS = $(am_task_OBJECTS)
+task_DEPENDENCIES = ../libhurd-cap-server/libhurd-cap-server.a \
+       ../libhurd-mm/libhurd-mm.a ../libhurd-slab/libhurd-slab.a \
+       ../libpthread/libpthread.a ../libhurd-ihash/libhurd-ihash.a \
+       ../libhurd-btree/libhurd-btree.a ../libc-parts/libc-parts.a
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CCASCOMPILE = $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS)
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(task_SOURCES) $(EXTRA_task_SOURCES)
+DIST_SOURCES = $(am__task_SOURCES_DIST) $(EXTRA_task_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@ARCH_SOURCES = ia32-crt0.S ia32-cmain.c
+bootdir = $(prefix)/boot
+task_CPPFLAGS = -I$(top_builddir)/include                      \
+       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)
+
+task_SOURCES = $(ARCH_SOURCES)                                 \
+       output.h output.c                                       \
+       mmap.c malloc-wrap.c                                    \
+       task.h task.c task-class.c task-id.c thread.c
+
+
+# Doug Lea's malloc is included by malloc-wrap.c.
+EXTRA_task_SOURCES = malloc.c
+task_LDFLAGS = -u_start -e_start -nostdlib
+task_LDADD = ../libhurd-cap-server/libhurd-cap-server.a                \
+       ../libhurd-mm/libhurd-mm.a                              \
+       ../libhurd-slab/libhurd-slab.a                          \
+       ../libpthread/libpthread.a                              \
+       ../libhurd-ihash/libhurd-ihash.a                        \
+       ../libhurd-btree/libhurd-btree.a                        \
+       ../libc-parts/libc-parts.a -lgcc
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  task/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  task/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-bootPROGRAMS: $(boot_PROGRAMS)
+       @$(NORMAL_INSTALL)
+       test -z "$(bootdir)" || $(mkdir_p) "$(DESTDIR)$(bootdir)"
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+         ; then \
+           f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) '$$p' 
'$(DESTDIR)$(bootdir)/$$f'"; \
+          $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) "$$p" 
"$(DESTDIR)$(bootdir)/$$f" || exit 1; \
+         else :; fi; \
+       done
+
+uninstall-bootPROGRAMS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         f=`echo "$$p" | sed 
's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f '$(DESTDIR)$(bootdir)/$$f'"; \
+         rm -f "$(DESTDIR)$(bootdir)/$$f"; \
+       done
+
+clean-bootPROGRAMS:
+       -test -z "$(boot_PROGRAMS)" || rm -f $(boot_PROGRAMS)
+task$(EXEEXT): $(task_OBJECTS) $(task_DEPENDENCIES) 
+       @rm -f task$(EXEEXT)
+       $(LINK) $(task_LDFLAGS) $(task_OBJECTS) $(task_LDADD) $(LIBS)
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.S.o:
+       $(CCASCOMPILE) -c $<
+
+.S.obj:
+       $(CCASCOMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+task-ia32-cmain.o: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-ia32-cmain.o -MD 
-MP -MF "$(DEPDIR)/task-ia32-cmain.Tpo" -c -o task-ia32-cmain.o `test -f 
'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-ia32-cmain.Tpo" 
"$(DEPDIR)/task-ia32-cmain.Po"; else rm -f "$(DEPDIR)/task-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='task-ia32-cmain.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-ia32-cmain.o `test -f 
'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c
+
+task-ia32-cmain.obj: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-ia32-cmain.obj -MD 
-MP -MF "$(DEPDIR)/task-ia32-cmain.Tpo" -c -o task-ia32-cmain.obj `if test -f 
'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-ia32-cmain.Tpo" 
"$(DEPDIR)/task-ia32-cmain.Po"; else rm -f "$(DEPDIR)/task-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='task-ia32-cmain.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-ia32-cmain.obj `if test -f 
'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`
+
+task-output.o: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-output.o -MD -MP 
-MF "$(DEPDIR)/task-output.Tpo" -c -o task-output.o `test -f 'output.c' || echo 
'$(srcdir)/'`output.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-output.Tpo" 
"$(DEPDIR)/task-output.Po"; else rm -f "$(DEPDIR)/task-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='task-output.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-output.o `test -f 'output.c' || 
echo '$(srcdir)/'`output.c
+
+task-output.obj: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-output.obj -MD -MP 
-MF "$(DEPDIR)/task-output.Tpo" -c -o task-output.obj `if test -f 'output.c'; 
then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) '$(srcdir)/output.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-output.Tpo" 
"$(DEPDIR)/task-output.Po"; else rm -f "$(DEPDIR)/task-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='task-output.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-output.obj `if test -f 
'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`
+
+task-mmap.o: mmap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-mmap.o -MD -MP -MF 
"$(DEPDIR)/task-mmap.Tpo" -c -o task-mmap.o `test -f 'mmap.c' || echo 
'$(srcdir)/'`mmap.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-mmap.Tpo" "$(DEPDIR)/task-mmap.Po"; 
else rm -f "$(DEPDIR)/task-mmap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='mmap.c' object='task-mmap.o' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-mmap.o `test -f 'mmap.c' || echo 
'$(srcdir)/'`mmap.c
+
+task-mmap.obj: mmap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-mmap.obj -MD -MP 
-MF "$(DEPDIR)/task-mmap.Tpo" -c -o task-mmap.obj `if test -f 'mmap.c'; then 
$(CYGPATH_W) 'mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-mmap.Tpo" "$(DEPDIR)/task-mmap.Po"; 
else rm -f "$(DEPDIR)/task-mmap.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='mmap.c' object='task-mmap.obj' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-mmap.obj `if test -f 'mmap.c'; 
then $(CYGPATH_W) 'mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap.c'; fi`
+
+task-malloc-wrap.o: malloc-wrap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-malloc-wrap.o -MD 
-MP -MF "$(DEPDIR)/task-malloc-wrap.Tpo" -c -o task-malloc-wrap.o `test -f 
'malloc-wrap.c' || echo '$(srcdir)/'`malloc-wrap.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-malloc-wrap.Tpo" 
"$(DEPDIR)/task-malloc-wrap.Po"; else rm -f "$(DEPDIR)/task-malloc-wrap.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc-wrap.c' 
object='task-malloc-wrap.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-malloc-wrap.o `test -f 
'malloc-wrap.c' || echo '$(srcdir)/'`malloc-wrap.c
+
+task-malloc-wrap.obj: malloc-wrap.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-malloc-wrap.obj 
-MD -MP -MF "$(DEPDIR)/task-malloc-wrap.Tpo" -c -o task-malloc-wrap.obj `if 
test -f 'malloc-wrap.c'; then $(CYGPATH_W) 'malloc-wrap.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc-wrap.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-malloc-wrap.Tpo" 
"$(DEPDIR)/task-malloc-wrap.Po"; else rm -f "$(DEPDIR)/task-malloc-wrap.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc-wrap.c' 
object='task-malloc-wrap.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-malloc-wrap.obj `if test -f 
'malloc-wrap.c'; then $(CYGPATH_W) 'malloc-wrap.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc-wrap.c'; fi`
+
+task-task.o: task.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-task.o -MD -MP -MF 
"$(DEPDIR)/task-task.Tpo" -c -o task-task.o `test -f 'task.c' || echo 
'$(srcdir)/'`task.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-task.Tpo" "$(DEPDIR)/task-task.Po"; 
else rm -f "$(DEPDIR)/task-task.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task.c' object='task-task.o' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-task.o `test -f 'task.c' || echo 
'$(srcdir)/'`task.c
+
+task-task.obj: task.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-task.obj -MD -MP 
-MF "$(DEPDIR)/task-task.Tpo" -c -o task-task.obj `if test -f 'task.c'; then 
$(CYGPATH_W) 'task.c'; else $(CYGPATH_W) '$(srcdir)/task.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-task.Tpo" "$(DEPDIR)/task-task.Po"; 
else rm -f "$(DEPDIR)/task-task.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task.c' object='task-task.obj' 
libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-task.obj `if test -f 'task.c'; 
then $(CYGPATH_W) 'task.c'; else $(CYGPATH_W) '$(srcdir)/task.c'; fi`
+
+task-task-class.o: task-class.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-task-class.o -MD 
-MP -MF "$(DEPDIR)/task-task-class.Tpo" -c -o task-task-class.o `test -f 
'task-class.c' || echo '$(srcdir)/'`task-class.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-task-class.Tpo" 
"$(DEPDIR)/task-task-class.Po"; else rm -f "$(DEPDIR)/task-task-class.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task-class.c' 
object='task-task-class.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-task-class.o `test -f 
'task-class.c' || echo '$(srcdir)/'`task-class.c
+
+task-task-class.obj: task-class.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-task-class.obj -MD 
-MP -MF "$(DEPDIR)/task-task-class.Tpo" -c -o task-task-class.obj `if test -f 
'task-class.c'; then $(CYGPATH_W) 'task-class.c'; else $(CYGPATH_W) 
'$(srcdir)/task-class.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-task-class.Tpo" 
"$(DEPDIR)/task-task-class.Po"; else rm -f "$(DEPDIR)/task-task-class.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task-class.c' 
object='task-task-class.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-task-class.obj `if test -f 
'task-class.c'; then $(CYGPATH_W) 'task-class.c'; else $(CYGPATH_W) 
'$(srcdir)/task-class.c'; fi`
+
+task-task-id.o: task-id.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-task-id.o -MD -MP 
-MF "$(DEPDIR)/task-task-id.Tpo" -c -o task-task-id.o `test -f 'task-id.c' || 
echo '$(srcdir)/'`task-id.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-task-id.Tpo" 
"$(DEPDIR)/task-task-id.Po"; else rm -f "$(DEPDIR)/task-task-id.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task-id.c' 
object='task-task-id.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-task-id.o `test -f 'task-id.c' || 
echo '$(srcdir)/'`task-id.c
+
+task-task-id.obj: task-id.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-task-id.obj -MD 
-MP -MF "$(DEPDIR)/task-task-id.Tpo" -c -o task-task-id.obj `if test -f 
'task-id.c'; then $(CYGPATH_W) 'task-id.c'; else $(CYGPATH_W) 
'$(srcdir)/task-id.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-task-id.Tpo" 
"$(DEPDIR)/task-task-id.Po"; else rm -f "$(DEPDIR)/task-task-id.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='task-id.c' 
object='task-task-id.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-task-id.obj `if test -f 
'task-id.c'; then $(CYGPATH_W) 'task-id.c'; else $(CYGPATH_W) 
'$(srcdir)/task-id.c'; fi`
+
+task-thread.o: thread.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-thread.o -MD -MP 
-MF "$(DEPDIR)/task-thread.Tpo" -c -o task-thread.o `test -f 'thread.c' || echo 
'$(srcdir)/'`thread.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-thread.Tpo" 
"$(DEPDIR)/task-thread.Po"; else rm -f "$(DEPDIR)/task-thread.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='thread.c' 
object='task-thread.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-thread.o `test -f 'thread.c' || 
echo '$(srcdir)/'`thread.c
+
+task-thread.obj: thread.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-thread.obj -MD -MP 
-MF "$(DEPDIR)/task-thread.Tpo" -c -o task-thread.obj `if test -f 'thread.c'; 
then $(CYGPATH_W) 'thread.c'; else $(CYGPATH_W) '$(srcdir)/thread.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-thread.Tpo" 
"$(DEPDIR)/task-thread.Po"; else rm -f "$(DEPDIR)/task-thread.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='thread.c' 
object='task-thread.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-thread.obj `if test -f 
'thread.c'; then $(CYGPATH_W) 'thread.c'; else $(CYGPATH_W) 
'$(srcdir)/thread.c'; fi`
+
+task-malloc.o: malloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-malloc.o -MD -MP 
-MF "$(DEPDIR)/task-malloc.Tpo" -c -o task-malloc.o `test -f 'malloc.c' || echo 
'$(srcdir)/'`malloc.c; \
address@hidden@ then mv -f "$(DEPDIR)/task-malloc.Tpo" 
"$(DEPDIR)/task-malloc.Po"; else rm -f "$(DEPDIR)/task-malloc.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc.c' 
object='task-malloc.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-malloc.o `test -f 'malloc.c' || 
echo '$(srcdir)/'`malloc.c
+
+task-malloc.obj: malloc.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(task_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT task-malloc.obj -MD -MP 
-MF "$(DEPDIR)/task-malloc.Tpo" -c -o task-malloc.obj `if test -f 'malloc.c'; 
then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) '$(srcdir)/malloc.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/task-malloc.Tpo" 
"$(DEPDIR)/task-malloc.Po"; else rm -f "$(DEPDIR)/task-malloc.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='malloc.c' 
object='task-malloc.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(task_CPPFLAGS) 
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o task-malloc.obj `if test -f 
'malloc.c'; then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) 
'$(srcdir)/malloc.c'; fi`
+uninstall-info-am:
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(PROGRAMS)
+installdirs:
+       for dir in "$(DESTDIR)$(bootdir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-bootPROGRAMS clean-generic 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-bootPROGRAMS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-bootPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-bootPROGRAMS \
+       clean-generic ctags distclean distclean-compile \
+       distclean-generic distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-bootPROGRAMS \
+       install-data install-data-am install-exec install-exec-am \
+       install-info install-info-am install-man install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+       uninstall-am uninstall-bootPROGRAMS uninstall-info-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 -Naur hurd-l4/test.idl hurd-l4-new/test.idl
--- hurd-l4/test.idl    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/test.idl        2005-07-13 18:30:52.429780776 +0200
@@ -0,0 +1,13 @@
+/*struct some_struct
+{
+       long a;
+       double c;
+};*/
+
+interface ruth_class
+{
+       //int test(in short a, out short b, inout float c, in some_struct 
s1,out some_struct s2,in string str1,out string str2, in fpage f1,out fpage f2);
+       //void test(in string a);
+       //int test(in long a,out long b);
+       int test();
+};
diff -Naur hurd-l4/update_x hurd-l4-new/update_x
--- hurd-l4/update_x    1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/update_x        2005-07-13 18:30:52.429780776 +0200
@@ -0,0 +1,7 @@
+#!/bin/bash
+losetup /dev/loop/0 ../floppy.img
+mount /dev/loop/0 /mnt/floppy
+rm /mnt/floppy/boot/$1
+install -s $1/$1 /mnt/floppy/boot
+umount /mnt/floppy/
+losetup -d /dev/loop/0
diff -Naur hurd-l4/wortel/CVS/Entries hurd-l4-new/wortel/CVS/Entries
--- hurd-l4/wortel/CVS/Entries  2005-07-13 18:31:34.603369416 +0200
+++ hurd-l4-new/wortel/CVS/Entries      2005-07-13 18:30:52.430780624 +0200
@@ -1,29 +1,29 @@
-/ChangeLog/1.46/Thu Apr 21 16:47:34 2005//
-/Makefile.am/1.16/Sat Feb 12 19:07:00 2005//
-/README/1.2/Fri Sep 19 17:49:59 2003//
-/config.m4/1.1/Sun Oct 12 22:35:17 2003//
-/elf.h/1.2/Thu Sep 25 00:29:14 2003//
-/headers.m4/1.1/Mon Apr 26 21:15:21 2004//
-/ia32-cmain.c/1.12/Thu Oct  7 16:10:26 2004//
-/ia32-crt0.S/1.1/Mon Sep  8 01:00:18 2003//
-/ia32-output.c/1.2/Fri Sep 19 17:49:59 2003//
-/ia32-shutdown.c/1.2/Mon Sep  8 01:41:03 2003//
-/ia32-startup.S/1.1/Sun Apr 11 17:06:01 2004//
-/loader.c/1.10/Mon Mar 29 23:23:30 2004//
-/loader.h/1.4/Tue Mar 16 03:39:00 2004//
-/multiboot.h/1.1/Mon Sep  8 01:00:18 2003//
-/output-none.c/1.1/Mon Sep  8 01:00:18 2003//
-/output-serial.c/1.3/Sun Sep 21 22:25:16 2003//
-/output-vga.c/1.3/Thu Sep 25 00:29:14 2003//
-/output.c/1.6/Fri Sep 19 17:49:59 2003//
-/output.h/1.6/Fri Jan  7 11:11:46 2005//
-/shutdown.c/1.5/Tue Mar 16 03:39:00 2004//
-/shutdown.h/1.5/Fri Apr  9 22:00:08 2004//
-/sigma0.c/1.3/Tue Mar 16 03:39:00 2004//
-/sigma0.h/1.1/Tue Sep 16 19:24:05 2003//
-/startup-bin.S/1.1/Sun Apr 11 17:06:01 2004//
-/startup.c/1.8/Wed Apr  6 14:18:19 2005//
-/wortel-intern.h/1.4/Thu Jan 27 04:11:04 2005//
-/wortel.c/1.44/Thu Apr 21 16:47:34 2005//
-/wortel.h/1.16/Mon Jan 10 21:24:27 2005//
+/ChangeLog/1.46/Wed Jul 13 15:55:51 2005//
+/Makefile.am/1.16/Wed Jul 13 15:55:51 2005//
+/README/1.2/Wed Jul 13 15:55:51 2005//
+/config.m4/1.1/Wed Jul 13 15:55:51 2005//
+/elf.h/1.2/Wed Jul 13 15:55:51 2005//
+/headers.m4/1.1/Wed Jul 13 15:55:51 2005//
+/ia32-cmain.c/1.12/Wed Jul 13 15:55:51 2005//
+/ia32-crt0.S/1.1/Wed Jul 13 15:55:51 2005//
+/ia32-output.c/1.2/Wed Jul 13 15:55:51 2005//
+/ia32-shutdown.c/1.2/Wed Jul 13 15:55:51 2005//
+/ia32-startup.S/1.1/Wed Jul 13 15:55:51 2005//
+/loader.c/1.10/Wed Jul 13 15:55:51 2005//
+/loader.h/1.4/Wed Jul 13 15:55:51 2005//
+/multiboot.h/1.1/Wed Jul 13 15:55:51 2005//
+/output-none.c/1.1/Wed Jul 13 15:55:51 2005//
+/output-serial.c/1.3/Wed Jul 13 15:55:51 2005//
+/output-vga.c/1.3/Wed Jul 13 15:55:51 2005//
+/output.c/1.6/Wed Jul 13 15:55:51 2005//
+/output.h/1.6/Wed Jul 13 15:55:51 2005//
+/shutdown.c/1.5/Wed Jul 13 15:55:51 2005//
+/shutdown.h/1.5/Wed Jul 13 15:55:51 2005//
+/sigma0.c/1.3/Wed Jul 13 15:55:51 2005//
+/sigma0.h/1.1/Wed Jul 13 15:55:51 2005//
+/startup-bin.S/1.1/Wed Jul 13 15:55:51 2005//
+/startup.c/1.8/Wed Jul 13 15:55:51 2005//
+/wortel-intern.h/1.4/Wed Jul 13 15:55:51 2005//
+/wortel.c/1.44/Wed Jul 13 15:55:51 2005//
+/wortel.h/1.16/Wed Jul 13 15:55:51 2005//
 D
diff -Naur hurd-l4/wortel/Makefile.in hurd-l4-new/wortel/Makefile.in
--- hurd-l4/wortel/Makefile.in  1970-01-01 01:00:00.000000000 +0100
+++ hurd-l4-new/wortel/Makefile.in      2005-07-13 18:30:52.431780472 +0200
@@ -0,0 +1,724 @@
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
+
address@hidden@
+
+# Makefile.am - Makefile template for wortel.
+# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+# Written by Marcus Brinkmann.
+#
+# This file is part of the GNU Hurd.
+# 
+# The GNU Hurd is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# The GNU Hurd is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+SOURCES = $(startup_SOURCES) $(wortel_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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@
+boot_PROGRAMS = wortel$(EXEEXT)
+noinst_PROGRAMS = startup$(EXEEXT)
+subdir = wortel
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+       $(srcdir)/wortel.h ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+       $(top_srcdir)/laden/config.m4 $(top_srcdir)/wortel/config.m4 \
+       $(top_srcdir)/physmem/config.m4 $(top_srcdir)/libl4/headers.m4 \
+       $(top_srcdir)/platform/headers.m4 \
+       $(top_srcdir)/hurd/headers.m4 \
+       $(top_srcdir)/libhurd-ihash/headers.m4 \
+       $(top_srcdir)/libhurd-btree/headers.m4 \
+       $(top_srcdir)/libhurd-slab/headers.m4 \
+       $(top_srcdir)/libhurd-cap/headers.m4 \
+       $(top_srcdir)/libhurd-cap-server/headers.m4 \
+       $(top_srcdir)/libhurd-mm/headers.m4 \
+       $(top_srcdir)/libpthread/headers.m4 \
+       $(top_srcdir)/wortel/headers.m4 \
+       $(top_srcdir)/physmem/headers.m4 $(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
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bootdir)"
+bootPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(boot_PROGRAMS) $(noinst_PROGRAMS)
+am__startup_SOURCES_DIST = ia32-startup.S startup.c
address@hidden@am__objects_1 = ia32-startup.$(OBJEXT)
+am_startup_OBJECTS = $(am__objects_1) startup-startup.$(OBJEXT)
+startup_OBJECTS = $(am_startup_OBJECTS)
+startup_DEPENDENCIES = ../libc-parts/libc-parts.a
+am__wortel_SOURCES_DIST = multiboot.h ia32-crt0.S ia32-cmain.c \
+       ia32-output.c output-vga.c output-serial.c ia32-shutdown.c \
+       output.h output.c output-none.c shutdown.h shutdown.c elf.h \
+       loader.h loader.c sigma0.h sigma0.c startup-bin.S wortel.h \
+       wortel.c
address@hidden@am__objects_2 = ia32-crt0.$(OBJEXT) \
address@hidden@ wortel-ia32-cmain.$(OBJEXT) \
address@hidden@ wortel-ia32-output.$(OBJEXT) \
address@hidden@ wortel-output-vga.$(OBJEXT) \
address@hidden@ wortel-output-serial.$(OBJEXT) \
address@hidden@ wortel-ia32-shutdown.$(OBJEXT)
+am_wortel_OBJECTS = $(am__objects_2) wortel-output.$(OBJEXT) \
+       wortel-output-none.$(OBJEXT) wortel-shutdown.$(OBJEXT) \
+       wortel-loader.$(OBJEXT) wortel-sigma0.$(OBJEXT) \
+       startup-bin.$(OBJEXT) wortel-wortel.$(OBJEXT)
+wortel_OBJECTS = $(am_wortel_OBJECTS)
+wortel_DEPENDENCIES = ../libc-parts/libc-parts.a
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CCASCOMPILE = $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS)
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(startup_SOURCES) $(wortel_SOURCES)
+DIST_SOURCES = $(am__startup_SOURCES_DIST) $(am__wortel_SOURCES_DIST)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+ARCH_ALPHA_FALSE = @ARCH_ALPHA_FALSE@
+ARCH_ALPHA_TRUE = @ARCH_ALPHA_TRUE@
+ARCH_AMD64_FALSE = @ARCH_AMD64_FALSE@
+ARCH_AMD64_TRUE = @ARCH_AMD64_TRUE@
+ARCH_IA32_FALSE = @ARCH_IA32_FALSE@
+ARCH_IA32_TRUE = @ARCH_IA32_TRUE@
+ARCH_IA64_FALSE = @ARCH_IA64_FALSE@
+ARCH_IA64_TRUE = @ARCH_IA64_TRUE@
+ARCH_POWERPC64_FALSE = @ARCH_POWERPC64_FALSE@
+ARCH_POWERPC64_TRUE = @ARCH_POWERPC64_TRUE@
+ARCH_POWERPC_FALSE = @ARCH_POWERPC_FALSE@
+ARCH_POWERPC_TRUE = @ARCH_POWERPC_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DVIPS = @DVIPS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EXEEXT = @EXEEXT@
+FIG2DEV = @FIG2DEV@
+HURD_LADEN_LOAD_ADDRESS = @HURD_LADEN_LOAD_ADDRESS@
+HURD_PHYSMEM_LOAD_ADDRESS = @HURD_PHYSMEM_LOAD_ADDRESS@
+HURD_WORTEL_LOAD_ADDRESS = @HURD_WORTEL_LOAD_ADDRESS@
+IDL4 = @IDL4@
+IDL4CONFIG = @IDL4CONFIG@
+IDL4FLAGS = @IDL4FLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LATEX = @LATEX@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+NM = @NM@
+OBJEXT = @OBJEXT@
+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@
+PS2PDF = @PS2PDF@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SORT = @SORT@
+STATIC_GLIBC = @STATIC_GLIBC@
+STRIP = @STRIP@
+VERSION = @VERSION@
+WITH_LIBC_FALSE = @WITH_LIBC_FALSE@
+WITH_LIBC_TRUE = @WITH_LIBC_TRUE@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_NM = @ac_ct_NM@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_IDL4 = @ac_pt_IDL4@
+ac_pt_IDL4CONFIG = @ac_pt_IDL4CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
address@hidden@ARCH_SOURCES = multiboot.h ia32-crt0.S ia32-cmain.c \
address@hidden@    ia32-output.c output-vga.c output-serial.c ia32-shutdown.c
+
address@hidden@STARTUP_ARCH_SOURCES = ia32-startup.S
+bootdir = $(prefix)/boot
+
+# The startup "program" is glue code that is injected into a new task
+# started by wortel.  It is responsible for mapping in the from the
+# physmem server via the physical memory capabilities.
+startup_CPPFLAGS = -I$(srcdir) -I$(top_builddir)/include \
+       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)
+
+startup_SOURCES = $(STARTUP_ARCH_SOURCES) startup.c
+
+# The glue code address is hard-coded to 0x8000 (see STARTUP_LOAD_ADDR
+# in wortel.c).  We use the "binary" target format to get the pure
+# content of the .text and .data section.
+startup_LDFLAGS = -Wl,--oformat=binary -u_start -e_start -N -nostdlib  \
+       -Ttext=0x8000
+
+startup_LDADD = -lgcc ../libc-parts/libc-parts.a
+wortel_CPPFLAGS = -I$(srcdir) -I$(top_builddir)/include \
+       -I$(top_srcdir)/libc-parts $(AM_CPPFLAGS)
+
+wortel_SOURCES = $(ARCH_SOURCES)                               \
+       output.h output.c output-none.c                         \
+       shutdown.h shutdown.c                                   \
+       elf.h loader.h loader.c                                 \
+       sigma0.h sigma0.c                                       \
+       startup-bin.S                                           \
+       wortel.h wortel.c
+
+wortel_LDFLAGS = -u_start -e_start -N -nostdlib \
+       address@hidden@
+
+wortel_LDADD = -lgcc ../libc-parts/libc-parts.a
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(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) --gnu  wortel/Makefile'; \
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  wortel/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: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-bootPROGRAMS: $(boot_PROGRAMS)
+       @$(NORMAL_INSTALL)
+       test -z "$(bootdir)" || $(mkdir_p) "$(DESTDIR)$(bootdir)"
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+         ; then \
+           f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) '$$p' 
'$(DESTDIR)$(bootdir)/$$f'"; \
+          $(INSTALL_PROGRAM_ENV) $(bootPROGRAMS_INSTALL) "$$p" 
"$(DESTDIR)$(bootdir)/$$f" || exit 1; \
+         else :; fi; \
+       done
+
+uninstall-bootPROGRAMS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(boot_PROGRAMS)'; for p in $$list; do \
+         f=`echo "$$p" | sed 
's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f '$(DESTDIR)$(bootdir)/$$f'"; \
+         rm -f "$(DESTDIR)$(bootdir)/$$f"; \
+       done
+
+clean-bootPROGRAMS:
+       -test -z "$(boot_PROGRAMS)" || rm -f $(boot_PROGRAMS)
+
+clean-noinstPROGRAMS:
+       -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS)
+startup$(EXEEXT): $(startup_OBJECTS) $(startup_DEPENDENCIES) 
+       @rm -f startup$(EXEEXT)
+       $(LINK) $(startup_LDFLAGS) $(startup_OBJECTS) $(startup_LDADD) $(LIBS)
+wortel$(EXEEXT): $(wortel_OBJECTS) $(wortel_DEPENDENCIES) 
+       @rm -f wortel$(EXEEXT)
+       $(LINK) $(wortel_LDFLAGS) $(wortel_OBJECTS) $(wortel_LDADD) $(LIBS)
+
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT)
+
+distclean-compile:
+       -rm -f *.tab.c
+
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
address@hidden@@am__include@ @address@hidden/$(DEPDIR)/address@hidden@
+
+.S.o:
+       $(CCASCOMPILE) -c $<
+
+.S.obj:
+       $(CCASCOMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.o:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
$<; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c $<
+
+.c.obj:
address@hidden@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ 
`$(CYGPATH_W) '$<'`; \
address@hidden@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f 
"$(DEPDIR)/$*.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='$<' object='$@' libtool=no 
@AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+startup-startup.o: startup.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(startup_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT startup-startup.o 
-MD -MP -MF "$(DEPDIR)/startup-startup.Tpo" -c -o startup-startup.o `test -f 
'startup.c' || echo '$(srcdir)/'`startup.c; \
address@hidden@ then mv -f "$(DEPDIR)/startup-startup.Tpo" 
"$(DEPDIR)/startup-startup.Po"; else rm -f "$(DEPDIR)/startup-startup.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='startup.c' 
object='startup-startup.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(startup_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o startup-startup.o 
`test -f 'startup.c' || echo '$(srcdir)/'`startup.c
+
+startup-startup.obj: startup.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(startup_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT startup-startup.obj 
-MD -MP -MF "$(DEPDIR)/startup-startup.Tpo" -c -o startup-startup.obj `if test 
-f 'startup.c'; then $(CYGPATH_W) 'startup.c'; else $(CYGPATH_W) 
'$(srcdir)/startup.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/startup-startup.Tpo" 
"$(DEPDIR)/startup-startup.Po"; else rm -f "$(DEPDIR)/startup-startup.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='startup.c' 
object='startup-startup.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(startup_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
startup-startup.obj `if test -f 'startup.c'; then $(CYGPATH_W) 'startup.c'; 
else $(CYGPATH_W) '$(srcdir)/startup.c'; fi`
+
+wortel-ia32-cmain.o: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-ia32-cmain.o 
-MD -MP -MF "$(DEPDIR)/wortel-ia32-cmain.Tpo" -c -o wortel-ia32-cmain.o `test 
-f 'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-ia32-cmain.Tpo" 
"$(DEPDIR)/wortel-ia32-cmain.Po"; else rm -f "$(DEPDIR)/wortel-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='wortel-ia32-cmain.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-ia32-cmain.o 
`test -f 'ia32-cmain.c' || echo '$(srcdir)/'`ia32-cmain.c
+
+wortel-ia32-cmain.obj: ia32-cmain.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-ia32-cmain.obj 
-MD -MP -MF "$(DEPDIR)/wortel-ia32-cmain.Tpo" -c -o wortel-ia32-cmain.obj `if 
test -f 'ia32-cmain.c'; then $(CYGPATH_W) 'ia32-cmain.c'; else $(CYGPATH_W) 
'$(srcdir)/ia32-cmain.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-ia32-cmain.Tpo" 
"$(DEPDIR)/wortel-ia32-cmain.Po"; else rm -f "$(DEPDIR)/wortel-ia32-cmain.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-cmain.c' 
object='wortel-ia32-cmain.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-ia32-cmain.obj `if test -f 'ia32-cmain.c'; then $(CYGPATH_W) 
'ia32-cmain.c'; else $(CYGPATH_W) '$(srcdir)/ia32-cmain.c'; fi`
+
+wortel-ia32-output.o: ia32-output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-ia32-output.o 
-MD -MP -MF "$(DEPDIR)/wortel-ia32-output.Tpo" -c -o wortel-ia32-output.o `test 
-f 'ia32-output.c' || echo '$(srcdir)/'`ia32-output.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-ia32-output.Tpo" 
"$(DEPDIR)/wortel-ia32-output.Po"; else rm -f 
"$(DEPDIR)/wortel-ia32-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-output.c' 
object='wortel-ia32-output.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-ia32-output.o `test -f 'ia32-output.c' || echo '$(srcdir)/'`ia32-output.c
+
+wortel-ia32-output.obj: ia32-output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
wortel-ia32-output.obj -MD -MP -MF "$(DEPDIR)/wortel-ia32-output.Tpo" -c -o 
wortel-ia32-output.obj `if test -f 'ia32-output.c'; then $(CYGPATH_W) 
'ia32-output.c'; else $(CYGPATH_W) '$(srcdir)/ia32-output.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-ia32-output.Tpo" 
"$(DEPDIR)/wortel-ia32-output.Po"; else rm -f 
"$(DEPDIR)/wortel-ia32-output.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-output.c' 
object='wortel-ia32-output.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-ia32-output.obj `if test -f 'ia32-output.c'; then $(CYGPATH_W) 
'ia32-output.c'; else $(CYGPATH_W) '$(srcdir)/ia32-output.c'; fi`
+
+wortel-output-vga.o: output-vga.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-output-vga.o 
-MD -MP -MF "$(DEPDIR)/wortel-output-vga.Tpo" -c -o wortel-output-vga.o `test 
-f 'output-vga.c' || echo '$(srcdir)/'`output-vga.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-output-vga.Tpo" 
"$(DEPDIR)/wortel-output-vga.Po"; else rm -f "$(DEPDIR)/wortel-output-vga.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-vga.c' 
object='wortel-output-vga.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-output-vga.o 
`test -f 'output-vga.c' || echo '$(srcdir)/'`output-vga.c
+
+wortel-output-vga.obj: output-vga.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-output-vga.obj 
-MD -MP -MF "$(DEPDIR)/wortel-output-vga.Tpo" -c -o wortel-output-vga.obj `if 
test -f 'output-vga.c'; then $(CYGPATH_W) 'output-vga.c'; else $(CYGPATH_W) 
'$(srcdir)/output-vga.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-output-vga.Tpo" 
"$(DEPDIR)/wortel-output-vga.Po"; else rm -f "$(DEPDIR)/wortel-output-vga.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-vga.c' 
object='wortel-output-vga.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-output-vga.obj `if test -f 'output-vga.c'; then $(CYGPATH_W) 
'output-vga.c'; else $(CYGPATH_W) '$(srcdir)/output-vga.c'; fi`
+
+wortel-output-serial.o: output-serial.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
wortel-output-serial.o -MD -MP -MF "$(DEPDIR)/wortel-output-serial.Tpo" -c -o 
wortel-output-serial.o `test -f 'output-serial.c' || echo 
'$(srcdir)/'`output-serial.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-output-serial.Tpo" 
"$(DEPDIR)/wortel-output-serial.Po"; else rm -f 
"$(DEPDIR)/wortel-output-serial.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-serial.c' 
object='wortel-output-serial.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-output-serial.o `test -f 'output-serial.c' || echo 
'$(srcdir)/'`output-serial.c
+
+wortel-output-serial.obj: output-serial.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
wortel-output-serial.obj -MD -MP -MF "$(DEPDIR)/wortel-output-serial.Tpo" -c -o 
wortel-output-serial.obj `if test -f 'output-serial.c'; then $(CYGPATH_W) 
'output-serial.c'; else $(CYGPATH_W) '$(srcdir)/output-serial.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-output-serial.Tpo" 
"$(DEPDIR)/wortel-output-serial.Po"; else rm -f 
"$(DEPDIR)/wortel-output-serial.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-serial.c' 
object='wortel-output-serial.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-output-serial.obj `if test -f 'output-serial.c'; then $(CYGPATH_W) 
'output-serial.c'; else $(CYGPATH_W) '$(srcdir)/output-serial.c'; fi`
+
+wortel-ia32-shutdown.o: ia32-shutdown.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
wortel-ia32-shutdown.o -MD -MP -MF "$(DEPDIR)/wortel-ia32-shutdown.Tpo" -c -o 
wortel-ia32-shutdown.o `test -f 'ia32-shutdown.c' || echo 
'$(srcdir)/'`ia32-shutdown.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-ia32-shutdown.Tpo" 
"$(DEPDIR)/wortel-ia32-shutdown.Po"; else rm -f 
"$(DEPDIR)/wortel-ia32-shutdown.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-shutdown.c' 
object='wortel-ia32-shutdown.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-ia32-shutdown.o `test -f 'ia32-shutdown.c' || echo 
'$(srcdir)/'`ia32-shutdown.c
+
+wortel-ia32-shutdown.obj: ia32-shutdown.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
wortel-ia32-shutdown.obj -MD -MP -MF "$(DEPDIR)/wortel-ia32-shutdown.Tpo" -c -o 
wortel-ia32-shutdown.obj `if test -f 'ia32-shutdown.c'; then $(CYGPATH_W) 
'ia32-shutdown.c'; else $(CYGPATH_W) '$(srcdir)/ia32-shutdown.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-ia32-shutdown.Tpo" 
"$(DEPDIR)/wortel-ia32-shutdown.Po"; else rm -f 
"$(DEPDIR)/wortel-ia32-shutdown.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='ia32-shutdown.c' 
object='wortel-ia32-shutdown.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-ia32-shutdown.obj `if test -f 'ia32-shutdown.c'; then $(CYGPATH_W) 
'ia32-shutdown.c'; else $(CYGPATH_W) '$(srcdir)/ia32-shutdown.c'; fi`
+
+wortel-output.o: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-output.o -MD 
-MP -MF "$(DEPDIR)/wortel-output.Tpo" -c -o wortel-output.o `test -f 'output.c' 
|| echo '$(srcdir)/'`output.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-output.Tpo" 
"$(DEPDIR)/wortel-output.Po"; else rm -f "$(DEPDIR)/wortel-output.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='wortel-output.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-output.o 
`test -f 'output.c' || echo '$(srcdir)/'`output.c
+
+wortel-output.obj: output.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-output.obj -MD 
-MP -MF "$(DEPDIR)/wortel-output.Tpo" -c -o wortel-output.obj `if test -f 
'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-output.Tpo" 
"$(DEPDIR)/wortel-output.Po"; else rm -f "$(DEPDIR)/wortel-output.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='output.c' 
object='wortel-output.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-output.obj 
`if test -f 'output.c'; then $(CYGPATH_W) 'output.c'; else $(CYGPATH_W) 
'$(srcdir)/output.c'; fi`
+
+wortel-output-none.o: output-none.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-output-none.o 
-MD -MP -MF "$(DEPDIR)/wortel-output-none.Tpo" -c -o wortel-output-none.o `test 
-f 'output-none.c' || echo '$(srcdir)/'`output-none.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-output-none.Tpo" 
"$(DEPDIR)/wortel-output-none.Po"; else rm -f 
"$(DEPDIR)/wortel-output-none.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-none.c' 
object='wortel-output-none.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-output-none.o `test -f 'output-none.c' || echo '$(srcdir)/'`output-none.c
+
+wortel-output-none.obj: output-none.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT 
wortel-output-none.obj -MD -MP -MF "$(DEPDIR)/wortel-output-none.Tpo" -c -o 
wortel-output-none.obj `if test -f 'output-none.c'; then $(CYGPATH_W) 
'output-none.c'; else $(CYGPATH_W) '$(srcdir)/output-none.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-output-none.Tpo" 
"$(DEPDIR)/wortel-output-none.Po"; else rm -f 
"$(DEPDIR)/wortel-output-none.Tpo"; exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='output-none.c' 
object='wortel-output-none.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o 
wortel-output-none.obj `if test -f 'output-none.c'; then $(CYGPATH_W) 
'output-none.c'; else $(CYGPATH_W) '$(srcdir)/output-none.c'; fi`
+
+wortel-shutdown.o: shutdown.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-shutdown.o -MD 
-MP -MF "$(DEPDIR)/wortel-shutdown.Tpo" -c -o wortel-shutdown.o `test -f 
'shutdown.c' || echo '$(srcdir)/'`shutdown.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-shutdown.Tpo" 
"$(DEPDIR)/wortel-shutdown.Po"; else rm -f "$(DEPDIR)/wortel-shutdown.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='shutdown.c' 
object='wortel-shutdown.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-shutdown.o 
`test -f 'shutdown.c' || echo '$(srcdir)/'`shutdown.c
+
+wortel-shutdown.obj: shutdown.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-shutdown.obj 
-MD -MP -MF "$(DEPDIR)/wortel-shutdown.Tpo" -c -o wortel-shutdown.obj `if test 
-f 'shutdown.c'; then $(CYGPATH_W) 'shutdown.c'; else $(CYGPATH_W) 
'$(srcdir)/shutdown.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-shutdown.Tpo" 
"$(DEPDIR)/wortel-shutdown.Po"; else rm -f "$(DEPDIR)/wortel-shutdown.Tpo"; 
exit 1; fi
address@hidden@@am__fastdepCC_FALSE@    source='shutdown.c' 
object='wortel-shutdown.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-shutdown.obj 
`if test -f 'shutdown.c'; then $(CYGPATH_W) 'shutdown.c'; else $(CYGPATH_W) 
'$(srcdir)/shutdown.c'; fi`
+
+wortel-loader.o: loader.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-loader.o -MD 
-MP -MF "$(DEPDIR)/wortel-loader.Tpo" -c -o wortel-loader.o `test -f 'loader.c' 
|| echo '$(srcdir)/'`loader.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-loader.Tpo" 
"$(DEPDIR)/wortel-loader.Po"; else rm -f "$(DEPDIR)/wortel-loader.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='loader.c' 
object='wortel-loader.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-loader.o 
`test -f 'loader.c' || echo '$(srcdir)/'`loader.c
+
+wortel-loader.obj: loader.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-loader.obj -MD 
-MP -MF "$(DEPDIR)/wortel-loader.Tpo" -c -o wortel-loader.obj `if test -f 
'loader.c'; then $(CYGPATH_W) 'loader.c'; else $(CYGPATH_W) 
'$(srcdir)/loader.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-loader.Tpo" 
"$(DEPDIR)/wortel-loader.Po"; else rm -f "$(DEPDIR)/wortel-loader.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='loader.c' 
object='wortel-loader.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-loader.obj 
`if test -f 'loader.c'; then $(CYGPATH_W) 'loader.c'; else $(CYGPATH_W) 
'$(srcdir)/loader.c'; fi`
+
+wortel-sigma0.o: sigma0.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-sigma0.o -MD 
-MP -MF "$(DEPDIR)/wortel-sigma0.Tpo" -c -o wortel-sigma0.o `test -f 'sigma0.c' 
|| echo '$(srcdir)/'`sigma0.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-sigma0.Tpo" 
"$(DEPDIR)/wortel-sigma0.Po"; else rm -f "$(DEPDIR)/wortel-sigma0.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='sigma0.c' 
object='wortel-sigma0.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-sigma0.o 
`test -f 'sigma0.c' || echo '$(srcdir)/'`sigma0.c
+
+wortel-sigma0.obj: sigma0.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-sigma0.obj -MD 
-MP -MF "$(DEPDIR)/wortel-sigma0.Tpo" -c -o wortel-sigma0.obj `if test -f 
'sigma0.c'; then $(CYGPATH_W) 'sigma0.c'; else $(CYGPATH_W) 
'$(srcdir)/sigma0.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-sigma0.Tpo" 
"$(DEPDIR)/wortel-sigma0.Po"; else rm -f "$(DEPDIR)/wortel-sigma0.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='sigma0.c' 
object='wortel-sigma0.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-sigma0.obj 
`if test -f 'sigma0.c'; then $(CYGPATH_W) 'sigma0.c'; else $(CYGPATH_W) 
'$(srcdir)/sigma0.c'; fi`
+
+wortel-wortel.o: wortel.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-wortel.o -MD 
-MP -MF "$(DEPDIR)/wortel-wortel.Tpo" -c -o wortel-wortel.o `test -f 'wortel.c' 
|| echo '$(srcdir)/'`wortel.c; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-wortel.Tpo" 
"$(DEPDIR)/wortel-wortel.Po"; else rm -f "$(DEPDIR)/wortel-wortel.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='wortel.c' 
object='wortel-wortel.o' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-wortel.o 
`test -f 'wortel.c' || echo '$(srcdir)/'`wortel.c
+
+wortel-wortel.obj: wortel.c
address@hidden@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wortel-wortel.obj -MD 
-MP -MF "$(DEPDIR)/wortel-wortel.Tpo" -c -o wortel-wortel.obj `if test -f 
'wortel.c'; then $(CYGPATH_W) 'wortel.c'; else $(CYGPATH_W) 
'$(srcdir)/wortel.c'; fi`; \
address@hidden@ then mv -f "$(DEPDIR)/wortel-wortel.Tpo" 
"$(DEPDIR)/wortel-wortel.Po"; else rm -f "$(DEPDIR)/wortel-wortel.Tpo"; exit 1; 
fi
address@hidden@@am__fastdepCC_FALSE@    source='wortel.c' 
object='wortel-wortel.obj' libtool=no @AMDEPBACKSLASH@
address@hidden@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
address@hidden@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(wortel_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wortel-wortel.obj 
`if test -f 'wortel.c'; then $(CYGPATH_W) 'wortel.c'; else $(CYGPATH_W) 
'$(srcdir)/wortel.c'; fi`
+uninstall-info-am:
+
+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)'; for file in $$list; do \
+         case $$file in \
+           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+           $(top_srcdir)/*) file=`echo "$$file" | sed 
"s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+         esac; \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           dir="/$$dir"; \
+           $(mkdir_p) "$(distdir)$$dir"; \
+         else \
+           dir=''; \
+         fi; \
+         if test -d $$d/$$file; then \
+           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 $(PROGRAMS)
+installdirs:
+       for dir in "$(DESTDIR)$(bootdir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       $(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-bootPROGRAMS clean-generic clean-noinstPROGRAMS \
+       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-bootPROGRAMS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-bootPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-bootPROGRAMS \
+       clean-generic clean-noinstPROGRAMS ctags distclean \
+       distclean-compile distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-bootPROGRAMS install-data install-data-am install-exec \
+       install-exec-am install-info install-info-am install-man \
+       install-strip installcheck installcheck-am installdirs \
+       maintainer-clean maintainer-clean-generic mostlyclean \
+       mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
+       tags uninstall uninstall-am uninstall-bootPROGRAMS \
+       uninstall-info-am
+
+
+# Automake can not track .incbin dependencies in assembler files.
+startup-bin.o: startup
+# 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:

reply via email to

[Prev in Thread] Current Thread [Next in Thread]