diff --git a/.git/HEAD b/.git/HEAD
deleted file mode 100644
--- a/.git/HEAD
+++ /dev/null
@@ -1,1 +0,0 @@
-ref: refs/heads/master
diff --git a/.git/config b/.git/config
deleted file mode 100644
--- a/.git/config
+++ /dev/null
@@ -1,11 +0,0 @@
-[core]
-	repositoryformatversion = 0
-	filemode = true
-	bare = false
-	logallrefupdates = true
-[remote "origin"]
-	fetch = +refs/heads/*:refs/remotes/origin/*
-	url = ssh://hugo_@hackological.com/~/reps/Development/Personal/Noise.git
-[branch "master"]
-	remote = origin
-	merge = refs/heads/master
diff --git a/.git/description b/.git/description
deleted file mode 100644
--- a/.git/description
+++ /dev/null
@@ -1,1 +0,0 @@
-Unnamed repository; edit this file 'description' to name the repository.
diff --git a/.git/hooks/applypatch-msg.sample b/.git/hooks/applypatch-msg.sample
deleted file mode 100644
--- a/.git/hooks/applypatch-msg.sample
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to check the commit log message taken by
-# applypatch from an e-mail message.
-#
-# The hook should exit with non-zero status after issuing an
-# appropriate message if it wants to stop the commit.  The hook is
-# allowed to edit the commit message file.
-#
-# To enable this hook, rename this file to "applypatch-msg".
-
-. git-sh-setup
-test -x "$GIT_DIR/hooks/commit-msg" &&
-	exec "$GIT_DIR/hooks/commit-msg" ${1+"$@"}
-:
diff --git a/.git/hooks/commit-msg.sample b/.git/hooks/commit-msg.sample
deleted file mode 100644
--- a/.git/hooks/commit-msg.sample
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to check the commit log message.
-# Called by "git commit" with one argument, the name of the file
-# that has the commit message.  The hook should exit with non-zero
-# status after issuing an appropriate message if it wants to stop the
-# commit.  The hook is allowed to edit the commit message file.
-#
-# To enable this hook, rename this file to "commit-msg".
-
-# Uncomment the below to add a Signed-off-by line to the message.
-# Doing this in a hook is a bad idea in general, but the prepare-commit-msg
-# hook is more suited to it.
-#
-# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
-# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"
-
-# This example catches duplicate Signed-off-by lines.
-
-test "" = "$(grep '^Signed-off-by: ' "$1" |
-	 sort | uniq -c | sed -e '/^[ 	]*1[ 	]/d')" || {
-	echo >&2 Duplicate Signed-off-by lines.
-	exit 1
-}
diff --git a/.git/hooks/post-commit.sample b/.git/hooks/post-commit.sample
deleted file mode 100644
--- a/.git/hooks/post-commit.sample
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-#
-# An example hook script that is called after a successful
-# commit is made.
-#
-# To enable this hook, rename this file to "post-commit".
-
-: Nothing
diff --git a/.git/hooks/post-receive.sample b/.git/hooks/post-receive.sample
deleted file mode 100644
--- a/.git/hooks/post-receive.sample
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-#
-# An example hook script for the "post-receive" event.
-#
-# The "post-receive" script is run after receive-pack has accepted a pack
-# and the repository has been updated.  It is passed arguments in through
-# stdin in the form
-#  <oldrev> <newrev> <refname>
-# For example:
-#  aa453216d1b3e49e7f6f98441fa56946ddcd6a20 68f7abf4e6f922807889f52bc043ecd31b79f814 refs/heads/master
-#
-# see contrib/hooks/ for a sample, or uncomment the next line and
-# rename the file to "post-receive".
-
-#. /usr/share/doc/git-core/contrib/hooks/post-receive-email
diff --git a/.git/hooks/post-update.sample b/.git/hooks/post-update.sample
deleted file mode 100644
--- a/.git/hooks/post-update.sample
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to prepare a packed repository for use over
-# dumb transports.
-#
-# To enable this hook, rename this file to "post-update".
-
-exec git update-server-info
diff --git a/.git/hooks/pre-applypatch.sample b/.git/hooks/pre-applypatch.sample
deleted file mode 100644
--- a/.git/hooks/pre-applypatch.sample
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to verify what is about to be committed
-# by applypatch from an e-mail message.
-#
-# The hook should exit with non-zero status after issuing an
-# appropriate message if it wants to stop the commit.
-#
-# To enable this hook, rename this file to "pre-applypatch".
-
-. git-sh-setup
-test -x "$GIT_DIR/hooks/pre-commit" &&
-	exec "$GIT_DIR/hooks/pre-commit" ${1+"$@"}
-:
diff --git a/.git/hooks/pre-commit.sample b/.git/hooks/pre-commit.sample
deleted file mode 100644
--- a/.git/hooks/pre-commit.sample
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to verify what is about to be committed.
-# Called by "git commit" with no arguments.  The hook should
-# exit with non-zero status after issuing an appropriate message if
-# it wants to stop the commit.
-#
-# To enable this hook, rename this file to "pre-commit".
-
-if git rev-parse --verify HEAD >/dev/null 2>&1
-then
-	against=HEAD
-else
-	# Initial commit: diff against an empty tree object
-	against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
-fi
-
-# If you want to allow non-ascii filenames set this variable to true.
-allownonascii=$(git config hooks.allownonascii)
-
-# Cross platform projects tend to avoid non-ascii filenames; prevent
-# them from being added to the repository. We exploit the fact that the
-# printable range starts at the space character and ends with tilde.
-if [ "$allownonascii" != "true" ] &&
-	# Note that the use of brackets around a tr range is ok here, (it's
-	# even required, for portability to Solaris 10's /usr/bin/tr), since
-	# the square bracket bytes happen to fall in the designated range.
-	test "$(git diff --cached --name-only --diff-filter=A -z $against |
-	  LC_ALL=C tr -d '[ -~]\0')"
-then
-	echo "Error: Attempt to add a non-ascii file name."
-	echo
-	echo "This can cause problems if you want to work"
-	echo "with people on other platforms."
-	echo
-	echo "To be portable it is advisable to rename the file ..."
-	echo
-	echo "If you know what you are doing you can disable this"
-	echo "check using:"
-	echo
-	echo "  git config hooks.allownonascii true"
-	echo
-	exit 1
-fi
-
-exec git diff-index --check --cached $against --
diff --git a/.git/hooks/pre-rebase.sample b/.git/hooks/pre-rebase.sample
deleted file mode 100644
--- a/.git/hooks/pre-rebase.sample
+++ /dev/null
@@ -1,169 +0,0 @@
-#!/bin/sh
-#
-# Copyright (c) 2006, 2008 Junio C Hamano
-#
-# The "pre-rebase" hook is run just before "git rebase" starts doing
-# its job, and can prevent the command from running by exiting with
-# non-zero status.
-#
-# The hook is called with the following parameters:
-#
-# $1 -- the upstream the series was forked from.
-# $2 -- the branch being rebased (or empty when rebasing the current branch).
-#
-# This sample shows how to prevent topic branches that are already
-# merged to 'next' branch from getting rebased, because allowing it
-# would result in rebasing already published history.
-
-publish=next
-basebranch="$1"
-if test "$#" = 2
-then
-	topic="refs/heads/$2"
-else
-	topic=`git symbolic-ref HEAD` ||
-	exit 0 ;# we do not interrupt rebasing detached HEAD
-fi
-
-case "$topic" in
-refs/heads/??/*)
-	;;
-*)
-	exit 0 ;# we do not interrupt others.
-	;;
-esac
-
-# Now we are dealing with a topic branch being rebased
-# on top of master.  Is it OK to rebase it?
-
-# Does the topic really exist?
-git show-ref -q "$topic" || {
-	echo >&2 "No such branch $topic"
-	exit 1
-}
-
-# Is topic fully merged to master?
-not_in_master=`git rev-list --pretty=oneline ^master "$topic"`
-if test -z "$not_in_master"
-then
-	echo >&2 "$topic is fully merged to master; better remove it."
-	exit 1 ;# we could allow it, but there is no point.
-fi
-
-# Is topic ever merged to next?  If so you should not be rebasing it.
-only_next_1=`git rev-list ^master "^$topic" ${publish} | sort`
-only_next_2=`git rev-list ^master           ${publish} | sort`
-if test "$only_next_1" = "$only_next_2"
-then
-	not_in_topic=`git rev-list "^$topic" master`
-	if test -z "$not_in_topic"
-	then
-		echo >&2 "$topic is already up-to-date with master"
-		exit 1 ;# we could allow it, but there is no point.
-	else
-		exit 0
-	fi
-else
-	not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"`
-	/usr/bin/perl -e '
-		my $topic = $ARGV[0];
-		my $msg = "* $topic has commits already merged to public branch:\n";
-		my (%not_in_next) = map {
-			/^([0-9a-f]+) /;
-			($1 => 1);
-		} split(/\n/, $ARGV[1]);
-		for my $elem (map {
-				/^([0-9a-f]+) (.*)$/;
-				[$1 => $2];
-			} split(/\n/, $ARGV[2])) {
-			if (!exists $not_in_next{$elem->[0]}) {
-				if ($msg) {
-					print STDERR $msg;
-					undef $msg;
-				}
-				print STDERR " $elem->[1]\n";
-			}
-		}
-	' "$topic" "$not_in_next" "$not_in_master"
-	exit 1
-fi
-
-exit 0
-
-################################################################
-
-This sample hook safeguards topic branches that have been
-published from being rewound.
-
-The workflow assumed here is:
-
- * Once a topic branch forks from "master", "master" is never
-   merged into it again (either directly or indirectly).
-
- * Once a topic branch is fully cooked and merged into "master",
-   it is deleted.  If you need to build on top of it to correct
-   earlier mistakes, a new topic branch is created by forking at
-   the tip of the "master".  This is not strictly necessary, but
-   it makes it easier to keep your history simple.
-
- * Whenever you need to test or publish your changes to topic
-   branches, merge them into "next" branch.
-
-The script, being an example, hardcodes the publish branch name
-to be "next", but it is trivial to make it configurable via
-$GIT_DIR/config mechanism.
-
-With this workflow, you would want to know:
-
-(1) ... if a topic branch has ever been merged to "next".  Young
-    topic branches can have stupid mistakes you would rather
-    clean up before publishing, and things that have not been
-    merged into other branches can be easily rebased without
-    affecting other people.  But once it is published, you would
-    not want to rewind it.
-
-(2) ... if a topic branch has been fully merged to "master".
-    Then you can delete it.  More importantly, you should not
-    build on top of it -- other people may already want to
-    change things related to the topic as patches against your
-    "master", so if you need further changes, it is better to
-    fork the topic (perhaps with the same name) afresh from the
-    tip of "master".
-
-Let's look at this example:
-
-		   o---o---o---o---o---o---o---o---o---o "next"
-		  /       /           /           /
-		 /   a---a---b A     /           /
-		/   /               /           /
-	       /   /   c---c---c---c B         /
-	      /   /   /             \         /
-	     /   /   /   b---b C     \       /
-	    /   /   /   /             \     /
-    ---o---o---o---o---o---o---o---o---o---o---o "master"
-
-
-A, B and C are topic branches.
-
- * A has one fix since it was merged up to "next".
-
- * B has finished.  It has been fully merged up to "master" and "next",
-   and is ready to be deleted.
-
- * C has not merged to "next" at all.
-
-We would want to allow C to be rebased, refuse A, and encourage
-B to be deleted.
-
-To compute (1):
-
-	git rev-list ^master ^topic next
-	git rev-list ^master        next
-
-	if these match, topic has not merged in next at all.
-
-To compute (2):
-
-	git rev-list master..topic
-
-	if this is empty, it is fully merged to "master".
diff --git a/.git/hooks/prepare-commit-msg.sample b/.git/hooks/prepare-commit-msg.sample
deleted file mode 100644
--- a/.git/hooks/prepare-commit-msg.sample
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to prepare the commit log message.
-# Called by "git commit" with the name of the file that has the
-# commit message, followed by the description of the commit
-# message's source.  The hook's purpose is to edit the commit
-# message file.  If the hook fails with a non-zero status,
-# the commit is aborted.
-#
-# To enable this hook, rename this file to "prepare-commit-msg".
-
-# This hook includes three examples.  The first comments out the
-# "Conflicts:" part of a merge commit.
-#
-# The second includes the output of "git diff --name-status -r"
-# into the message, just before the "git status" output.  It is
-# commented because it doesn't cope with --amend or with squashed
-# commits.
-#
-# The third example adds a Signed-off-by line to the message, that can
-# still be edited.  This is rarely a good idea.
-
-case "$2,$3" in
-  merge,)
-    /usr/bin/perl -i.bak -ne 's/^/# /, s/^# #/#/ if /^Conflicts/ .. /#/; print' "$1" ;;
-
-# ,|template,)
-#   /usr/bin/perl -i.bak -pe '
-#      print "\n" . `git diff --cached --name-status -r`
-#	 if /^#/ && $first++ == 0' "$1" ;;
-
-  *) ;;
-esac
-
-# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
-# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"
diff --git a/.git/hooks/update.sample b/.git/hooks/update.sample
deleted file mode 100644
--- a/.git/hooks/update.sample
+++ /dev/null
@@ -1,128 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to blocks unannotated tags from entering.
-# Called by "git receive-pack" with arguments: refname sha1-old sha1-new
-#
-# To enable this hook, rename this file to "update".
-#
-# Config
-# ------
-# hooks.allowunannotated
-#   This boolean sets whether unannotated tags will be allowed into the
-#   repository.  By default they won't be.
-# hooks.allowdeletetag
-#   This boolean sets whether deleting tags will be allowed in the
-#   repository.  By default they won't be.
-# hooks.allowmodifytag
-#   This boolean sets whether a tag may be modified after creation. By default
-#   it won't be.
-# hooks.allowdeletebranch
-#   This boolean sets whether deleting branches will be allowed in the
-#   repository.  By default they won't be.
-# hooks.denycreatebranch
-#   This boolean sets whether remotely creating branches will be denied
-#   in the repository.  By default this is allowed.
-#
-
-# --- Command line
-refname="$1"
-oldrev="$2"
-newrev="$3"
-
-# --- Safety check
-if [ -z "$GIT_DIR" ]; then
-	echo "Don't run this script from the command line." >&2
-	echo " (if you want, you could supply GIT_DIR then run" >&2
-	echo "  $0 <ref> <oldrev> <newrev>)" >&2
-	exit 1
-fi
-
-if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then
-	echo "Usage: $0 <ref> <oldrev> <newrev>" >&2
-	exit 1
-fi
-
-# --- Config
-allowunannotated=$(git config --bool hooks.allowunannotated)
-allowdeletebranch=$(git config --bool hooks.allowdeletebranch)
-denycreatebranch=$(git config --bool hooks.denycreatebranch)
-allowdeletetag=$(git config --bool hooks.allowdeletetag)
-allowmodifytag=$(git config --bool hooks.allowmodifytag)
-
-# check for no description
-projectdesc=$(sed -e '1q' "$GIT_DIR/description")
-case "$projectdesc" in
-"Unnamed repository"* | "")
-	echo "*** Project description file hasn't been set" >&2
-	exit 1
-	;;
-esac
-
-# --- Check types
-# if $newrev is 0000...0000, it's a commit to delete a ref.
-zero="0000000000000000000000000000000000000000"
-if [ "$newrev" = "$zero" ]; then
-	newrev_type=delete
-else
-	newrev_type=$(git cat-file -t $newrev)
-fi
-
-case "$refname","$newrev_type" in
-	refs/tags/*,commit)
-		# un-annotated tag
-		short_refname=${refname##refs/tags/}
-		if [ "$allowunannotated" != "true" ]; then
-			echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2
-			echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2
-			exit 1
-		fi
-		;;
-	refs/tags/*,delete)
-		# delete tag
-		if [ "$allowdeletetag" != "true" ]; then
-			echo "*** Deleting a tag is not allowed in this repository" >&2
-			exit 1
-		fi
-		;;
-	refs/tags/*,tag)
-		# annotated tag
-		if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1
-		then
-			echo "*** Tag '$refname' already exists." >&2
-			echo "*** Modifying a tag is not allowed in this repository." >&2
-			exit 1
-		fi
-		;;
-	refs/heads/*,commit)
-		# branch
-		if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then
-			echo "*** Creating a branch is not allowed in this repository" >&2
-			exit 1
-		fi
-		;;
-	refs/heads/*,delete)
-		# delete branch
-		if [ "$allowdeletebranch" != "true" ]; then
-			echo "*** Deleting a branch is not allowed in this repository" >&2
-			exit 1
-		fi
-		;;
-	refs/remotes/*,commit)
-		# tracking branch
-		;;
-	refs/remotes/*,delete)
-		# delete tracking branch
-		if [ "$allowdeletebranch" != "true" ]; then
-			echo "*** Deleting a tracking branch is not allowed in this repository" >&2
-			exit 1
-		fi
-		;;
-	*)
-		# Anything else (is there anything else?)
-		echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2
-		exit 1
-		;;
-esac
-
-# --- Finished
-exit 0
diff --git a/.git/index b/.git/index
deleted file mode 100644
Binary files a/.git/index and /dev/null differ
diff --git a/.git/info/exclude b/.git/info/exclude
deleted file mode 100644
--- a/.git/info/exclude
+++ /dev/null
@@ -1,6 +0,0 @@
-# git ls-files --others --exclude-from=.git/info/exclude
-# Lines that start with '#' are comments.
-# For a project mostly in C, the following would be a good set of
-# exclude patterns (uncomment them if you want to use them):
-# *.[oa]
-# *~
diff --git a/.git/logs/HEAD b/.git/logs/HEAD
deleted file mode 100644
--- a/.git/logs/HEAD
+++ /dev/null
@@ -1,1 +0,0 @@
-0000000000000000000000000000000000000000 cc472f3f3aa409c547af2ad087ac059824d9a917 hugo <hugo@ebenezer.localdomain> 1301672265 +0100	clone: from ssh://hugo_@hackological.com/~/reps/Development/Personal/Noise.git
diff --git a/.git/logs/refs/heads/master b/.git/logs/refs/heads/master
deleted file mode 100644
--- a/.git/logs/refs/heads/master
+++ /dev/null
@@ -1,1 +0,0 @@
-0000000000000000000000000000000000000000 cc472f3f3aa409c547af2ad087ac059824d9a917 hugo <hugo@ebenezer.localdomain> 1301672265 +0100	clone: from ssh://hugo_@hackological.com/~/reps/Development/Personal/Noise.git
diff --git a/.git/objects/pack/pack-507167148f2f0c4da1bb78035f7d1ece57e1688d.idx b/.git/objects/pack/pack-507167148f2f0c4da1bb78035f7d1ece57e1688d.idx
deleted file mode 100644
Binary files a/.git/objects/pack/pack-507167148f2f0c4da1bb78035f7d1ece57e1688d.idx and /dev/null differ
diff --git a/.git/objects/pack/pack-507167148f2f0c4da1bb78035f7d1ece57e1688d.pack b/.git/objects/pack/pack-507167148f2f0c4da1bb78035f7d1ece57e1688d.pack
deleted file mode 100644
Binary files a/.git/objects/pack/pack-507167148f2f0c4da1bb78035f7d1ece57e1688d.pack and /dev/null differ
diff --git a/.git/packed-refs b/.git/packed-refs
deleted file mode 100644
--- a/.git/packed-refs
+++ /dev/null
@@ -1,2 +0,0 @@
-# pack-refs with: peeled 
-cc472f3f3aa409c547af2ad087ac059824d9a917 refs/remotes/origin/master
diff --git a/.git/refs/heads/master b/.git/refs/heads/master
deleted file mode 100644
--- a/.git/refs/heads/master
+++ /dev/null
@@ -1,1 +0,0 @@
-cc472f3f3aa409c547af2ad087ac059824d9a917
diff --git a/.git/refs/remotes/origin/HEAD b/.git/refs/remotes/origin/HEAD
deleted file mode 100644
--- a/.git/refs/remotes/origin/HEAD
+++ /dev/null
@@ -1,1 +0,0 @@
-ref: refs/remotes/origin/master
diff --git a/Changelog.txt b/Changelog.txt
deleted file mode 100644
--- a/Changelog.txt
+++ /dev/null
@@ -1,80 +0,0 @@
-Fri Oct 16 10:18:31 EDT 2009  paul@thev.net
-  * make linux support generic to *nix, and bump version to 0.4.2
-
-Wed Sep 16 14:00:09 EDT 2009  paul@thev.net
-  * change CC option to fit Snow Leopard
-
-Wed Aug 12 20:53:18 EDT 2009  paul@thev.net
-  * bugfix for the dynamic flag; bump version to 0.4.1 for release.
-
-Wed Aug 12 15:53:09 EDT 2009  paul@thev.net
-  * update README.txt
-
-Wed Aug 12 15:52:38 EDT 2009  paul@thev.net
-  * addition to Work around GHC FFI bug 2594 only in GHC < 6.10
-
-Sun Aug  2 08:02:16 EDT 2009  paul@thev.net
-  * remove use of Int32 and make it compatible with OpenGL 2.3.0.0
-
-Sun Jun  7 00:10:07 EDT 2009  brian@lorf.org
-  * Work around GHC FFI bug 2594 only in GHC < 6.10
-
-Sat Jun  6 03:03:14 EDT 2009  brian@lorf.org
-  * Whitespace-only change to LICENSE.
-
-Sat Jun  6 03:01:48 EDT 2009  brian@lorf.org
-  * hlint cleanliness, Haddock comment improvements.
-
-Sat Jun  6 01:37:10 EDT 2009  brian@lorf.org
-  * Made small improvements to GLFW.cabal
-
-Sat Jun  6 01:10:19 EDT 2009  brian@lorf.org
-  * Made small improvements to Setup.hs
-
-Wed Jun  3 09:41:31 EDT 2009  paul@thev.net
-  * cabal related adjustments
-  1. adjust to work properly with latest cabal.
-  2. add -mach=apple as a cc-option for OS X in order not to break GHC 6.10.2.
-  3. add a "dynamic" flag for Linux to link to GLFW dynamic libs already in system.
-
-Tue Dec  2 22:46:37 EST 2008  brianchina60221@gmail.com
-  * joystick-related cleanup
-
-Mon Nov  3 18:03:56 EST 2008  shahn@cs.tu-berlin.de
-  * add derived instance for Ord for Key and SpecialKey
-
-Sat Nov  1 20:50:32 EDT 2008  shahn@cs.tu-berlin.de
-  * fix 64-bug for mousePosCallback (with dirty hack)
-
-Mon Oct 27 18:41:18 EDT 2008  brianchina60221@gmail.com
-  * openWindow fixes
-
-Thu Oct  2 06:04:13 EDT 2008  brianchina60221@gmail.com
-  * marking more foreign imports safe
-
-Thu Oct  2 03:26:39 EDT 2008  brianchina60221@gmail.com
-  * 'deteced -> detected'
-
-Thu Oct  2 03:25:35 EDT 2008  brianchina60221@gmail.com
-  * some foreign imports cannot be marked unsafe
-
-Tue Sep 30 14:25:57 EDT 2008  brianchina60221@gmail.com
-  * miscellaneous simplification
-
-Tue Sep 30 09:26:03 EDT 2008  brianchina60221@gmail.com
-  * removed unnecessary stuff from foreign imports, added "unsafe"s
-
-Tue Sep 30 03:57:00 EDT 2008  brianchina60221@gmail.com
-  * bump to 0.4, miscellaneous cleanup
-
-Sat Sep 13 19:20:00 EDT 2008  shahn@cs.tu-berlin.de
-  * workaround for correct mouse wheel values on 64-bit-machines
-
-Sat Sep  6 15:17:51 EDT 2008  shahn@cs.tu-berlin.de
-  * fix mousePosCallback bug on 64-bit machines
-
-Thu Sep  4 21:30:11 EDT 2008  paul@thev.net
-  * fix typo bug in disableSpecial, and improve some error msgs.
-
-Wed Sep  3 22:39:52 EDT 2008  paul@thev.net
-  * GLFW-0.3 init release
diff --git a/Math/Noise/Modules/.Billow.hs.swo b/Math/Noise/Modules/.Billow.hs.swo
deleted file mode 100644
Binary files a/Math/Noise/Modules/.Billow.hs.swo and /dev/null differ
diff --git a/Math/Noise/Modules/billow.c b/Math/Noise/Modules/billow.c
deleted file mode 100644
--- a/Math/Noise/Modules/billow.c
+++ /dev/null
@@ -1,13 +0,0 @@
-#include "billow.h"
-#include "../noisegen.h"
-
-__ATTR_PURE double perlinGen( double x 
-                            , double y
-                            , double z
-                            , double freq
-                            , double lac
-                            , int octaveCount
-                            , double persistence, int seed)
-{
-
-}
diff --git a/Math/Noise/Test.hs b/Math/Noise/Test.hs
deleted file mode 100644
--- a/Math/Noise/Test.hs
+++ /dev/null
@@ -1,52 +0,0 @@
-module Math.Noise.Test where
-import Math.Noise.Modules.Perlin
-import Math.Noise.Modules.ScaleBias
-import Math.Noise.Modules.Abs
-import Math.Noise.Modules.Billow
-import Math.Noise.Modules.Select
-import Math.Noise.NoiseModule
-
-test = getValue myNoise (-0.1, -0.5, 0.76)
-
-myNoise2 = perlin { perlinFrequency = 0.123 } `isSourceOf` scalebias { scale = 10.0 } `isSourceOf` absolute 
-myNoise = perlin `isSourceOf` scalebias { scale = 1.0 } `isSourceOf` absolute 
-
-tNoise = perlin { perlinFrequency = 0.123 } `andModule` 
-         billow { billowOctaves = 12 } `andModule` 
-         myNoise `areSourcesOf` 
-         select { upperBound = 0.7, lowerBound = 0.2 }
-
-{-
-n1 `isSourceOf` n2 `isSourceOf` select `with` 
-
-
-n1 `isSourceOf` select `togetherWith` n2 
-
-(n1, n2) -> NoiseModule N [n1, n2]
-(NoiseModule N [n1, n2], n3) -> NoiseModule N [NoiseModule N [n1, n2], n3]
-(NoiseModule N [NoiseModule N [n1, n2], n3], n4) -> NoiseModule N [NoiseModule N [NoiseModule N [n1, n2], n3], n4]
-
-
-[NoiseModule N [NoiseModule N [n1, n2], n3], n4]
-areSourcesOf :: NoiseModule -> a -> NoiseModule
-areSourcesOf mod n = NoiseModule n (getSrcs 
-  where 
-    fetchSrcs :: NoiseModule -> [NoiseModule] -> [NoiseModule]
-    fetchSrcs (NoiseModule nfunc [s1,s2] ) accum = 
-      case nfunc of 
-        NoiseModule Nothing srcs -> map ((flip fetchSrcs) accum) srcs
-        NoiseModule f [] -> (f:accum)
-        Nothing -> (fetchSrcs s1 []) : (fetchSrcs s2 []) : accum
-                           
-
-
-(n1, n2) -> NoiseModule N [NoiseModule N [NoiseModule n1 []] , NoiseModule n2 [] ]
- (NoiseModule N [NoiseModule N [NoiseModule n1 []] , NoiseModule n2 [] ])
-
-
-(NoiseModule N [NoiseModule n1 [] , NoiseModule n2 [] ], n3) -> NoiseModule N [ NoiseModule (NoiseModule N [NoiseModule n1 [] , NoiseModule n2 [] ]) [], NoiseModule n3 [] ]
-
-NoiseModule N [ NoiseModule (NoiseModule N [ NoiseModule (NoiseModule N [NoiseModule n1 [] , NoiseModule n2 [] ]) [], NoiseModule n3 [] ]) [], NoiseModule n4 [] ]
-
-
--}
diff --git a/Noise.cabal b/Noise.cabal
--- a/Noise.cabal
+++ b/Noise.cabal
@@ -1,38 +1,31 @@
 Name:          Noise
-Version:       1.0.1
+Version:       1.0.2
+Category:      Math, Graphics, Noise
+Synopsis:      A Haskell coherent noise generator based on libnoise
+Description:   
+  .
+  A Haskell coherent noise generator roughly based on libnoise.
+  For more information on libnoise, please check: <http://libnoise.sourceforge.net>
+  The noise modules were extensively profiled and benchmarked,
+  the slower pure functions were rewritten in C.
+  The main objective of this packer is to provide a simple interface 
+  to compose noise modules.
+  .
+  This is a 3D noise package, to get a value you need to specify a
+  triple:
+  .
+  > getValue myComposition (-0.1, -0.5, 0.76)
+  .
+  For more information please read the documentation of each module 
+  bellow.
+Build-type:    Simple
 Maintainer:    Hugo Gomes <mr.hugo.gomes@gmail.com>
+Author:        Hugo Gomes <mr.hugo.gomes@gmail.com>
+Copyright:     Hugo Gomes
 Cabal-version: >= 1.6
-Build-type:    Simple
-Category:      Math
-Synopsis:      A Haskell coherent noise generator
-Description:   A Haskell coherent noise generator roughly based on libnoise.
-               For more information on libnoise, please check: <http://libnoise.sourceforge.net>
-               The noise modules were extensively profiled and benchmarked,
-               the slower pure functions were rewritten in C.
-               The main objective of this packer is to provide a simple interface 
-               to compose noise modules.
-               You could compose several noise modules like this:
-               .
-               > myPerlin = perlin `isSourceOf` scalebias { scale = 1.0 } 
-               >                   `isSourceOf` absolute
-               > myComposition = perlin { perlinFrequency = 0.123 } 
-               >                 `andModule` billow { billowOctaves = 12 } 
-               >                 `andModule` myPerlin 
-               >                 `areSourcesOf` 
-               >                 select { upperBound = 0.7, lowerBound = 0.2 }
-               .
-               This is a 3D noise package, to get a value you need to specify a
-               triple:
-               .
-               > getValue myComposition (-0.1, -0.5, 0.76)
-               .
-               For more information please read the documentation of each module 
-               bellow.
-
-license:       BSD3
-license-file:  LICENSE
-
-extra-source-files:
+License:       BSD3
+License-file:  LICENSE
+Extra-source-files:
   README.txt
   Math/Noise/common.h
   Math/Noise/noisegen.h
diff --git a/Temp/Biobase-0.3.1.1.tar.gz b/Temp/Biobase-0.3.1.1.tar.gz
deleted file mode 100644
Binary files a/Temp/Biobase-0.3.1.1.tar.gz and /dev/null differ
diff --git a/Temp/sbv-0.9.18.tar.gz b/Temp/sbv-0.9.18.tar.gz
deleted file mode 100644
Binary files a/Temp/sbv-0.9.18.tar.gz and /dev/null differ
diff --git a/Temp/sbv-0.9.18/.sbv.cabal.swp b/Temp/sbv-0.9.18/.sbv.cabal.swp
deleted file mode 100644
Binary files a/Temp/sbv-0.9.18/.sbv.cabal.swp and /dev/null differ
diff --git a/Temp/sbv-0.9.18/COPYRIGHT b/Temp/sbv-0.9.18/COPYRIGHT
deleted file mode 100644
--- a/Temp/sbv-0.9.18/COPYRIGHT
+++ /dev/null
@@ -1,5 +0,0 @@
-Copyright (c) 2010-2011, Levent Erkok (erkokl@gmail.com)
-All rights reserved.
-
-The sbv library is distributed with the BSD3 license. See the LICENSE file
-for details.
diff --git a/Temp/sbv-0.9.18/Data/SBV.hs b/Temp/sbv-0.9.18/Data/SBV.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV.hs
+++ /dev/null
@@ -1,277 +0,0 @@
----------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- (The sbv library is hosted at <http://github.com/LeventErkok/sbv>.
--- Comments, bug reports, and patches are always welcome.)
---
--- SBV: Symbolic Bit Vectors in Haskell
---
--- Express properties about bit-precise Haskell programs and automatically prove
--- them using SMT solvers.
---
--- >>> prove $ \x -> x `shiftL` 2 .== 4 * (x :: SWord8)
--- Q.E.D.
---
--- >>> prove $ forAll ["x"] $ \x -> x `shiftL` 2 .== (x :: SWord8)
--- Falsifiable. Counter-example:
---   x = 128 :: SWord8
---
--- The function 'prove' has the following type:
---
--- @
---     'prove' :: 'Provable' a => a -> 'IO' 'ThmResult'
--- @
---
--- The class 'Provable' comes with instances for n-ary predicates, for arbitrary n.
--- The predicates are just regular Haskell functions over symbolic signed and unsigned
--- bit-vectors. Functions for checking satisfiability ('sat' and 'allSat') are also
--- provided.
---
--- In particular, the sbv library introduces the types:
---
---   * 'SBool': Symbolic Booleans (bits)
---
---   * 'SWord8', 'SWord16', 'SWord32', 'SWord64': Symbolic Words (unsigned)
---
---   * 'SInt8',  'SInt16',  'SInt32',  'SInt64': Symbolic Ints (signed)
---
---   * 'SArray', 'SFunArray': Flat arrays of symbolic values
---
---   * Symbolic polynomials over GF(2^n), and polynomial arithmetic
---
---   * Uninterpreted constants and functions over symbolic values, with user
---     defined SMT-Lib axioms
---
--- The user can construct ordinary Haskell programs using these types, which behave
--- very similar to their concrete counterparts. In particular these types belong to the
--- standard classes 'Num', 'Bits', custom versions of 'Eq' ('EqSymbolic') 
--- and 'Ord' ('OrdSymbolic'), along with several other custom classes for simplifying
--- bit-precise programming with symbolic values. The framework takes full advantage
--- of Haskell's type inference to avoid many common mistakes.
---
--- Furthermore, predicates (i.e., functions that return 'SBool') built out of
--- these types can also be:
---
---   * proven correct via an external SMT solver (the 'prove' function)
---
---   * checked for satisfiability (the 'sat' and 'allSat' functions)
---
---   * quick-checked
---
--- If a predicate is not valid, 'prove' will return a counterexample: An
--- assignment to inputs such that the predicate fails. The 'sat' function will
--- return a satisfying assignment, if there is one. The 'allSat' function returns
--- all satisfying assignments, lazily.
---
--- The sbv library uses third-party SMT solvers via the standard SMT-Lib interface:
--- <http://goedel.cs.uiowa.edu/smtlib/>.
---
--- While the library is designed to work with any SMT-Lib compliant SMT-solver,
--- solver specific support is required for parsing counter-example/model data since
--- there is currently no agreed upon format for getting models from arbitrary SMT
--- solvers. (The SMT-Lib2 initiative will potentially address this issue in the
--- future, at which point the sbv library can be generalized as well.) Currently, we
--- only support the Yices SMT solver from SRI as far as the counter-example
--- and model generation support is concerned: <http://yices.csl.sri.com/>.
--- However, other solvers can be hooked up with relative ease.
---
--- You /should/ download and install Yices on your machine, and make sure the
--- @yices@ executable is in your path before using the sbv library, as it is the
--- current default solver. Alternatively, you can specify the location of yices
--- executable in the environment variable @SBV_YICES@ and the options to yices
--- in @SBV_YICES_OPTIONS@. (The default for the latter is '\"-m -f\"'.)
----------------------------------------------------------------------------------
-
-module Data.SBV (
-  -- * Programming with symbolic values
-  -- $progIntro
-
-  -- ** Symbolic types
-
-  -- *** Symbolic bit
-    SBool
-  -- *** Unsigned symbolic bit-vectors
-  , SWord8, SWord16, SWord32, SWord64
-  -- *** Signed symbolic bit-vectors
-  , SInt8, SInt16, SInt32, SInt64
-  -- *** Arrays of symbolic values
-  , SymArray(..), SArray, SFunArray, mkSFunArray
-  -- ** Operations on symbolic words
-  -- *** Word level
-  , bitValue, setBitTo, oneIf, lsb, msb
-  -- *** List level
-  , allEqual, allDifferent
-  -- *** Blasting/Unblasting
-  , blastBE, blastLE, FromBits(..)
-  -- *** Splitting, joining, and extending
-  , Splittable(..)
-  -- ** Polynomial arithmetic
-  , Polynomial(..)
-  -- ** Conditionals: Mergeable values
-  , Mergeable(..)
-  -- ** Symbolic equality
-  , EqSymbolic(..)
-  -- ** Symbolic ordering
-  , OrdSymbolic(..)
-  -- ** Division
-  , BVDivisible(..)
-  -- ** The Boolean class
-  , Boolean(..)
-  -- *** Generalizations of boolean operations
-  , bAnd, bOr, bAny, bAll
-  -- ** Pretty-printing and reading numbers in Hex & Binary
-  , PrettyNum(..), readBin
-  -- * Uninterpreted constants and functions
-  , Uninterpreted(..)
-  -- ** Accessing the handle
-  , SBVUF, sbvUFName
-  -- ** Adding axioms
-  , addAxiom
-
-  -- * Proving properties
-  -- $proveIntro
-
-  -- ** Predicates
-  , Predicate, Provable(..), Equality(..)
-  -- ** Proving properties
-  , prove, proveWith, isTheorem, isTheoremWithin
-  -- ** Checking satisfiability
-  , sat, satWith, isSatisfiable, isSatisfiableWithin
-  -- ** Finding all satisfying assignments
-  , allSat, allSatWith, numberOfModels
-  -- * Model extraction
-  -- $modelExtraction
-
-  -- ** Inspecting proof results
-  -- $resultTypes
-  , ThmResult(..), SatResult(..), AllSatResult(..), SMTResult(..)
-
-  -- ** Programmable model extraction
-  -- $programmableExtraction
-  , SatModel(..), getModel, displayModels
-
-  -- * SMT Interface: Configurations and solvers
-  , SMTConfig(..), SMTSolver(..), defaultSMTCfg, verboseSMTCfg, timingSMTCfg, verboseTimingSMTCfg, timeout
-  , yices
-
-  -- * Symbolic computations
-  , Symbolic, output, SymWord(..)
-
-  -- * Getting SMT-Lib output (for offline analysis)
-  , compileToSMTLib
-
-  -- * Code generation from symbolic programs
-  -- $cCodeGeneration
-  , SBVCodeGen
-
-  -- ** Setting code-generation options
-  , cgPerformRTCs, cgSetDriverValues
-
-  -- ** Designating inputs
-  , cgInput, cgInputArr
-
-  -- ** Designating outputs
-  , cgOutput, cgOutputArr
-
-  -- ** Designating return values
-  , cgReturn, cgReturnArr
-
-  -- ** Compilation to C
-  , compileToC, compileToCLib
-
-  -- * Module exports
-  -- $moduleExportIntro
-
-  , module Data.Bits
-  , module Data.Word
-  , module Data.Int
-  ) where
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.BitVectors.Model
-import Data.SBV.BitVectors.PrettyNum
-import Data.SBV.BitVectors.Polynomial
-import Data.SBV.BitVectors.Splittable
-import Data.SBV.Compilers.C
-import Data.SBV.Compilers.CodeGen
-import Data.SBV.Provers.Prover
-import Data.SBV.Utils.Boolean
-import Data.Bits
-import Data.Word
-import Data.Int
-
--- Haddock section documentation
-{- $progIntro
-The SBV library is really two things:
-
-  * A framework for writing bit-precise programs in Haskell
-
-  * A framework for proving properties of such programs using SMT solvers
-
-In this first section we will look at the constructs that will let us construct such
-programs in Haskell. The goal is to have a "seamless" experience, i.e., program in
-the usual Haskell style without distractions of symbolic coding. While Haskell helps
-in some aspects (the 'Num' and 'Bits' classes simplify coding), it makes life harder
-in others. For instance, @if-then-else@ only takes 'Bool' as a test in Haskell, and
-comparisons ('>' etc.) only return 'Bool's. Clearly we would like these values to be
-symbolic (i.e., 'SBool'), thus stopping us from using some native Haskell constructs.
-When symbolic versions of operators are needed, they are typically obtained by prepending a dot,
-for instance '==' becomes '.=='. Care has been taken to make the transition painless. In
-particular, any Haskell program you build out of symbolic components is fully concretely
-executable within Haskell, without the need for any custom interpreters. (They are truly
-Haskell programs, not AST's built out of pieces of syntax.) This provides for an integrated
-feel of the system, one of the original design goals for SBV.
--}
-
-{- $proveIntro
-The SBV library provides a "push-button" verification system via automated SMT solving. The
-design goal is to let SMT solvers be used without any knowledge of how SMT solvers work
-or how different logics operate. The details are hidden behind the SBV framework, providing
-Haskell programmers with a clean API that is unencumbered by the details of individual solvers.
-To that end, we use the SMT-Lib standard (<http://goedel.cs.uiowa.edu/smtlib/>)
-to communicate with arbitrary SMT solvers. Unfortunately,
-the SMT-Lib version 1.X does not standardize how models are communicated back from solvers, so
-there is some work in parsing individual SMT solver output. The 2.X version of the SMT-Lib
-standard (not yet implemented by SMT solvers widely, unfortunately) will bring new standard features
-for getting models; at which time the SBV framework can be modified into a truly plug-and-play
-system where arbitrary SMT solvers can be used.
--}
-
-{- $modelExtraction
-The default 'Show' instances for prover calls provide all the counter-example information in a
-human-readable form and should be sufficient for most casual uses of sbv. However, tools built
-on top of sbv will inevitably need to look into the constructed models more deeply, programmatically
-extracting their results and performing actions based on them. The API provided in this section
-aims at simplifying this task.
--}
-
-{- $resultTypes
-'ThmResult', 'SatResult', and 'AllSatResult' are simple newtype wrappers over 'SMTResult'. Their
-main purpose is so that we can provide custom 'Show' instances to print results accordingly.
--}
-
-{- $programmableExtraction
-While default 'Show' instances are sufficient for most use cases, it is sometimes desirable (especially
-for library construction) that the SMT-models are reinterpreted in terms of domain types. Programmable
-extraction allows getting arbitrarily typed models out of SMT models.
--}
-
-{- $cCodeGeneration
-The SBV library can generate straight-line executable code in C. (While other target languages are
-certainly possible, currently only C is supported.) The generated code will perform no run-time memory-allocations,
-(no calls to @malloc@), so its memory usage can be predicted ahead of time. Also, the functions will execute precisely the
-same instructions in all calls, so they have predictable timing properties as well. The generated code
-has no loops or jumps, and is typically quite fast. While the generated code can be large due to complete unrolling,
-these characteristics make them suitable for use in hard real-time systems, as well as in traditional computing.
--}
-
-{- $moduleExportIntro
-The SBV library exports the following modules wholesale, as user programs will have to import these
-three modules to make any sensible use of the SBV functionality.
--}
diff --git a/Temp/sbv-0.9.18/Data/SBV/BitVectors/Data.hs b/Temp/sbv-0.9.18/Data/SBV/BitVectors/Data.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/BitVectors/Data.hs
+++ /dev/null
@@ -1,760 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.BitVectors.Data
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Internal data-structures for the sbv library
------------------------------------------------------------------------------
-
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-{-# LANGUAGE TypeSynonymInstances       #-}
-{-# LANGUAGE TypeOperators              #-}
-{-# LANGUAGE MultiParamTypeClasses      #-}
-{-# LANGUAGE ScopedTypeVariables        #-}
-{-# LANGUAGE FlexibleInstances          #-}
-{-# LANGUAGE PatternGuards              #-}
-
-module Data.SBV.BitVectors.Data
- ( SBool, SWord8, SWord16, SWord32, SWord64
- , SInt8, SInt16, SInt32, SInt64
- , SymWord(..)
- , CW, cwVal, cwSameType, cwIsBit, cwToBool
- , mkConstCW ,liftCW2, mapCW, mapCW2
- , SW(..), trueSW, falseSW, trueCW, falseCW
- , SBV(..), NodeId(..), mkSymSBV
- , ArrayContext(..), ArrayInfo, SymArray(..), SFunArray(..), mkSFunArray, SArray(..), arrayUIKind
- , sbvToSW, sbvToSymSW
- , SBVExpr(..), newExpr
- , cache, uncache, uncacheAI, HasSignAndSize(..)
- , Op(..), NamedSymVar, UnintKind(..), getTableIndex, Pgm, Symbolic, runSymbolic, runSymbolic', State, Size, Outputtable(..), Result(..)
- , SBVType(..), newUninterpreted, unintFnUIKind, addAxiom
- ) where
-
-import Control.DeepSeq                 (NFData(..))
-import Control.Monad.Reader            (MonadReader, ReaderT, ask, runReaderT)
-import Control.Monad.Trans             (MonadIO, liftIO)
-import Data.Char                       (isAlpha, isAlphaNum)
-import Data.Int                        (Int8, Int16, Int32, Int64)
-import Data.Word                       (Word8, Word16, Word32, Word64)
-import Data.IORef                      (IORef, newIORef, modifyIORef, readIORef, writeIORef)
-import Data.List                       (intercalate, sortBy)
-
-import qualified Data.IntMap   as IMap (IntMap, empty, size, toAscList, lookup, insert, insertWith)
-import qualified Data.Map      as Map  (Map, empty, toList, size, insert, lookup)
-import qualified Data.Foldable as F    (toList)
-import qualified Data.Sequence as S    (Seq, empty, (|>))
-
-import System.Mem.StableName
-import Test.QuickCheck                 (Testable(..))
-
-import Data.SBV.Utils.Lib
-
--- | 'CW' represents a concrete word of a fixed size:
--- Endianness is mostly irrelevant (see the 'FromBits' class).
--- For signed words, the most significant digit is considered to be the sign
-data CW = CW { cwSigned :: !Bool, cwSize :: !Size, cwVal :: !Integer }
-        deriving (Eq, Ord)
-
-cwSameType :: CW -> CW -> Bool
-cwSameType x y = cwSigned x == cwSigned y && cwSize x == cwSize y
-
-cwIsBit :: CW -> Bool
-cwIsBit x = not (cwSigned x) && cwSize x == 1
-
-cwToBool :: CW -> Bool
-cwToBool x = cwVal x /= 0
-
-normCW :: CW -> CW
-normCW x = x { cwVal = norm }
-  where norm | cwSize x == 0  = 0
-             | cwSigned x     = let rg = 2 ^ (cwSize x - 1)
-                                in case divMod (cwVal x) rg of
-                                    (a, b) | even a -> b
-                                    (_, b)          -> b - rg
-             | True           = cwVal x `mod` (2 ^ cwSize x)
-
-type Size      = Int
-newtype NodeId = NodeId Int deriving (Eq, Ord)
-data SW        = SW (Bool, Size) NodeId deriving (Eq, Ord)
-
-falseSW, trueSW :: SW
-falseSW = SW (False, 1) $ NodeId (-2)
-trueSW  = SW (False, 1) $ NodeId (-1)
-
-falseCW, trueCW :: CW
-falseCW = CW False 1 0
-trueCW  = CW False 1 1
-
-newtype SBVType = SBVType [(Bool, Size)]
-             deriving (Eq, Ord)
-
--- how many arguments does the type take?
-typeArity :: SBVType -> Int
-typeArity (SBVType xs) = length xs - 1
-
-instance Show SBVType where
-  show (SBVType []) = error "SBV: internal error, empty SBVType"
-  show (SBVType xs) = intercalate " -> " $ map sh xs
-    where sh (False, 1) = "SBool"
-          sh (s, sz)    = (if s then "SInt" else "SWord") ++ show sz
-
-data Op = Plus | Times | Minus
-        | Quot | Rem -- quot and rem are unsigned only
-        | Equal | NotEqual
-        | LessThan | GreaterThan | LessEq | GreaterEq
-        | Ite
-        | And | Or  | XOr | Not
-        | Shl Int | Shr Int | Rol Int | Ror Int
-        | Extract Int Int -- Extract i j: extract bits i to j. Least significant bit is 0 (big-endian)
-        | Join  -- Concat two words to form a bigger one, in the order given
-        | LkUp (Int, (Bool, Int), (Bool, Int), Int) !SW !SW   -- (table-index, arg-type, res-type, length of the table) index out-of-bounds-value
-        | ArrEq   Int Int
-        | ArrRead Int
-        | Uninterpreted String
-        deriving (Eq, Ord)
-data SBVExpr = SBVApp !Op ![SW]
-             deriving (Eq, Ord)
-
-class HasSignAndSize a where
-  sizeOf   :: a -> Size
-  hasSign  :: a -> Bool
-  showType :: a -> String
-  showType a
-    | not (hasSign a) && sizeOf a == 1 = "SBool"
-    | True                             = (if hasSign a then "SInt" else "SWord") ++ show (sizeOf a)
-
-instance HasSignAndSize Bool   where {sizeOf _ =  1; hasSign _ = False}
-instance HasSignAndSize Int8   where {sizeOf _ =  8; hasSign _ = True }
-instance HasSignAndSize Word8  where {sizeOf _ =  8; hasSign _ = False}
-instance HasSignAndSize Int16  where {sizeOf _ = 16; hasSign _ = True }
-instance HasSignAndSize Word16 where {sizeOf _ = 16; hasSign _ = False}
-instance HasSignAndSize Int32  where {sizeOf _ = 32; hasSign _ = True }
-instance HasSignAndSize Word32 where {sizeOf _ = 32; hasSign _ = False}
-instance HasSignAndSize Int64  where {sizeOf _ = 64; hasSign _ = True }
-instance HasSignAndSize Word64 where {sizeOf _ = 64; hasSign _ = False}
-
-liftCW :: (Integer -> b) -> CW -> b
-liftCW f x = f (cwVal x)
-
-liftCW2 :: (Integer -> Integer -> b) -> CW -> CW -> b
-liftCW2 f x y | cwSameType x y = f (cwVal x) (cwVal y)
-liftCW2 _ a b = error $ "SBV.liftCW2: impossible, incompatible args received: " ++ show (a, b)
-
-mapCW :: (Integer -> Integer) -> CW -> CW
-mapCW f x  = normCW $ x { cwVal = f (cwVal x) }
-
-mapCW2 :: (Integer -> Integer -> Integer) -> CW -> CW -> CW
-mapCW2 f x y
-  | cwSameType x y = normCW $ CW (cwSigned x) (cwSize y) (f (cwVal x) (cwVal y))
-mapCW2 _ a b = error $ "SBV.mapCW2: impossible, incompatible args received: " ++ show (a, b)
-
-instance HasSignAndSize CW where
-  sizeOf  = cwSize
-  hasSign = cwSigned
-
-instance HasSignAndSize SW where
-  sizeOf  (SW (_, s) _) = s
-  hasSign (SW (b, _) _) = b
-
-instance Show CW where
-  show w | cwIsBit w = show (cwToBool w)
-  show w             = liftCW show w ++ " :: " ++ showType w
-
-instance Show SW where
-  show (SW _ (NodeId n))
-    | n < 0 = "s_" ++ show (abs n)
-    | True  = 's' : show n
-
-instance Show Op where
-  show (Shl i) = "<<"  ++ show i
-  show (Shr i) = ">>"  ++ show i
-  show (Rol i) = "<<<" ++ show i
-  show (Ror i) = ">>>" ++ show i
-  show (Extract i j) = "choose [" ++ show i ++ ":" ++ show j ++ "]"
-  show (LkUp (ti, at, rt, l) i e)
-        = "lookup(" ++ tinfo ++ ", " ++ show i ++ ", " ++ show e ++ ")"
-        where tinfo = "table" ++ show ti ++ "(" ++ show at ++ " -> " ++ show rt ++ ", " ++ show l ++ ")"
-  show (ArrEq i j)   = "array_" ++ show i ++ " == array_" ++ show j
-  show (ArrRead i)   = "select array_" ++ show i
-  show (Uninterpreted i) = "uninterpreted_" ++ i
-  show op
-    | Just s <- op `lookup` syms = s
-    | True                       = error "impossible happened; can't find op!"
-    where syms = [ (Plus, "+"), (Times, "*"), (Minus, "-")
-                 , (Quot, "quot")
-                 , (Rem,  "rem")
-                 , (Equal, "=="), (NotEqual, "/=")
-                 , (LessThan, "<"), (GreaterThan, ">"), (LessEq, "<"), (GreaterEq, ">")
-                 , (Ite, "if_then_else")
-                 , (And, "&"), (Or, "|"), (XOr, "^"), (Not, "~")
-                 , (Join, "#")
-                 ]
-
-reorder :: SBVExpr -> SBVExpr
-reorder s = case s of
-              SBVApp op [a, b] | isCommutative op && a > b -> SBVApp op [b, a]
-              _ -> s
-  where isCommutative :: Op -> Bool
-        isCommutative o = o `elem` [Plus, Times, Equal, NotEqual, And, Or, XOr]
-
-instance Show SBVExpr where
-  show (SBVApp Ite [t, a, b]) = unwords ["if", show t, "then", show a, "else", show b]
-  show (SBVApp (Shl i) [a])   = unwords [show a, "<<", show i]
-  show (SBVApp (Shr i) [a])   = unwords [show a, ">>", show i]
-  show (SBVApp (Rol i) [a])   = unwords [show a, "<<<", show i]
-  show (SBVApp (Ror i) [a])   = unwords [show a, ">>>", show i]
-  show (SBVApp op  [a, b])    = unwords [show a, show op, show b]
-  show (SBVApp op  args)      = unwords (show op : map show args)
-
--- | A program is a sequence of assignments
-type Pgm         = S.Seq (SW, SBVExpr)
-
--- | 'NamedSymVar' pairs symbolic words and user given/automatically generated names
-type NamedSymVar = (SW, String)
-
--- | 'UnintKind' pairs array names and uninterpreted constants with their "kinds"
--- used mainly for printing counterexamples
-data UnintKind = UFun Int String | UArr Int String      -- in each case, arity and the aliasing name
- deriving Show
-
--- | Result of running a symbolic computation
-data Result = Result [NamedSymVar]                              -- inputs
-                     [(SW, CW)]                                 -- constants
-                     [((Int, (Bool, Int), (Bool, Int)), [SW])]  -- tables (automatically constructed) (tableno, index-type, result-type) elts
-                     [(Int, ArrayInfo)]                         -- arrays (user specified)
-                     [(String, SBVType)]                        -- uninterpreted constants
-                     [(String, [String])]                       -- axioms
-                     Pgm                                        -- assignments
-                     [SW]                                       -- outputs
-
-instance Show Result where
-  show (Result _ cs _ _ [] [] _ [r])
-    | Just c <- r `lookup` cs
-    = show c
-  show (Result is cs ts as uis axs xs os)  = intercalate "\n" $
-                   ["INPUTS"]
-                ++ map shn is
-                ++ ["CONSTANTS"]
-                ++ map shc cs
-                ++ ["TABLES"]
-                ++ map sht ts
-                ++ ["ARRAYS"]
-                ++ map sha as
-                ++ ["UNINTERPRETED CONSTANTS"]
-                ++ map shui uis
-                ++ ["AXIOMS"]
-                ++ map shax axs
-                ++ ["DEFINE"]
-                ++ map (\(s, e) -> "  " ++ shs s ++ " = " ++ show e) (F.toList xs)
-                ++ ["OUTPUTS"]
-                ++ map (("  " ++) . show) os
-    where shs sw = show sw ++ " :: " ++ showType sw
-          sht ((i, at, rt), es)  = "  Table " ++ show i ++ " : " ++ show at ++ "->" ++ show rt ++ " = " ++ show es
-          shc (sw, cw) = "  " ++ show sw ++ " = " ++ show cw
-          shn (sw, nm) = "  " ++ ni ++ " :: " ++ showType sw ++ alias
-            where ni = show sw
-                  alias | ni == nm = ""
-                        | True     = ", aliasing " ++ show nm
-          sha (i, (nm, (ai, bi), ctx)) = "  " ++ ni ++ " :: " ++ mkT ai ++ " -> " ++ mkT bi ++ alias
-                                       ++ "\n     Context: "     ++ show ctx
-            where mkT (b, s)
-                   | s == 1  = "SBool"
-                   | True    = if b then "SInt" else "SWord" ++ show s
-                  ni = "array_" ++ show i
-                  alias | ni == nm = ""
-                        | True     = ", aliasing " ++ show nm
-          shui (nm, t) = "  uninterpreted_" ++ nm ++ " :: " ++ show t
-          shax (nm, ss) = "  -- user defined axiom: " ++ nm ++ "\n  " ++ intercalate "\n  " ss
-
-data ArrayContext = ArrayFree (Maybe SW)
-                  | ArrayReset Int SW
-                  | ArrayMutate Int SW SW
-                  | ArrayMerge  SW Int Int
-
-instance Show ArrayContext where
-  show (ArrayFree Nothing)  = " initialized with random elements"
-  show (ArrayFree (Just s)) = " initialized with " ++ show s ++ " :: " ++ showType s
-  show (ArrayReset i s)     = " reset array_" ++ show i ++ " with " ++ show s ++ " :: " ++ showType s
-  show (ArrayMutate i a b)  = " cloned from array_" ++ show i ++ " with " ++ show a ++ " :: " ++ showType a ++ " |-> " ++ show b ++ " :: " ++ showType b
-  show (ArrayMerge s i j)   = " merged arrays " ++ show i ++ " and " ++ show j ++ " on condition " ++ show s
-
-type ExprMap   = Map.Map SBVExpr SW
-type CnstMap   = Map.Map CW SW
-type TableMap  = Map.Map [SW] (Int, (Bool, Int), (Bool, Int))
-type ArrayInfo = (String, ((Bool, Size), (Bool, Size)), ArrayContext)
-type ArrayMap  = IMap.IntMap ArrayInfo
-type UIMap     = Map.Map String SBVType
-type Cache a   = IMap.IntMap [(StableName (State -> IO a), a)]
-
-unintFnUIKind :: (String, SBVType) -> (String, UnintKind)
-unintFnUIKind (s, t) = (s, UFun (typeArity t) s)
-
-arrayUIKind :: (Int, ArrayInfo) -> Maybe (String, UnintKind)
-arrayUIKind (i, (nm, _, ctx)) 
-  | external ctx = Just ("array_" ++ show i, UArr 1 nm) -- arrays are always 1-dimensional in the SMT-land. (Unless encoded explicitly)
-  | True         = Nothing
-  where external (ArrayFree{})   = True
-        external (ArrayReset{})  = False
-        external (ArrayMutate{}) = False
-        external (ArrayMerge{})  = False
-
-data State  = State { rctr       :: IORef Int
-                    , rinps      :: IORef [NamedSymVar]
-                    , routs      :: IORef [SW]
-                    , rtblMap    :: IORef TableMap
-                    , spgm       :: IORef Pgm
-                    , rconstMap  :: IORef CnstMap
-                    , rexprMap   :: IORef ExprMap
-                    , rArrayMap  :: IORef ArrayMap
-                    , rUIMap     :: IORef UIMap
-                    , raxioms    :: IORef [(String, [String])]
-                    , rSWCache   :: IORef (Cache SW)
-                    , rAICache   :: IORef (Cache Int)
-                    }
-
--- | The "Symbolic" value. Either a constant (@Left@) or a symbolic
--- value (@Right Cached@). Note that caching is essential for making
--- sure sharing is preserved. The parameter 'a' is phantom, but is
--- extremely important in keeping the user interface strongly typed.
-data SBV a = SBV !(Bool, Size) !(Either CW (Cached SW))
-
--- | A symbolic boolean/bit
-type SBool   = SBV Bool
-
--- | 8-bit unsigned symbolic value
-type SWord8  = SBV Word8
-
--- | 16-bit unsigned symbolic value
-type SWord16 = SBV Word16
-
--- | 32-bit unsigned symbolic value
-type SWord32 = SBV Word32
-
--- | 64-bit unsigned symbolic value
-type SWord64 = SBV Word64
-
--- | 8-bit signed symbolic value, 2's complement representation
-type SInt8   = SBV Int8
-
--- | 16-bit signed symbolic value, 2's complement representation
-type SInt16  = SBV Int16
-
--- | 32-bit signed symbolic value, 2's complement representation
-type SInt32  = SBV Int32
-
--- | 64-bit signed symbolic value, 2's complement representation
-type SInt64  = SBV Int64
-
--- Needed to satisfy the Num hierarchy
-instance Show (SBV a) where
-  show (SBV _         (Left c))  = show c
-  show (SBV (sgn, sz) (Right _)) = "<symbolic> :: " ++ t
-                where t | not sgn && sz == 1 = "SBool"
-                        | True               = (if sgn then "SInt" else "SWord") ++ show sz
-
-instance Eq (SBV a) where
-  SBV _ (Left a) == SBV _ (Left b) = a == b
-  a == b = error $ "Comparing symbolic bit-vectors; Use (.==) instead. Received: " ++ show (a, b)
-  SBV _ (Left a) /= SBV _ (Left b) = a /= b
-  a /= b = error $ "Comparing symbolic bit-vectors; Use (./=) instead. Received: " ++ show (a, b)
-
-instance HasSignAndSize (SBV a) where
-  sizeOf  (SBV (_, s) _) = s
-  hasSign (SBV (b, _) _) = b
-
-incCtr :: State -> IO Int
-incCtr s = do ctr <- readIORef (rctr s)
-              let i = ctr + 1
-              i `seq` writeIORef (rctr s) i
-              return ctr
-
-newUninterpreted :: State -> String -> SBVType -> IO ()
-newUninterpreted st nm t
-  | null nm || not (isAlpha (head nm)) || not (all isAlphaNum (tail nm))
-  = error $ "Bad uninterpreted constant name: " ++ show nm ++ ". Must be a valid identifier."
-  | True = do
-        uiMap <- readIORef (rUIMap st)
-        case nm `Map.lookup` uiMap of
-          Just t' -> if t /= t'
-                     then error $  "Uninterpreted constant " ++ show nm ++ " used at incompatible types\n"
-                                ++ "      Current type      : " ++ show t ++ "\n"
-                                ++ "      Previously used at: " ++ show t'
-                     else return ()
-          Nothing -> modifyIORef (rUIMap st) (Map.insert nm t)
-
--- Create a new constant; hash-cons as necessary
-newConst :: State -> CW -> IO SW
-newConst st c = do
-  constMap <- readIORef (rconstMap st)
-  case c `Map.lookup` constMap of
-    Just sw -> return sw
-    Nothing -> do ctr <- incCtr st
-                  let sw = SW (hasSign c, sizeOf c) (NodeId ctr)
-                  modifyIORef (rconstMap st) (Map.insert c sw)
-                  return sw
-
--- Create a new table; hash-cons as necessary
-getTableIndex :: State -> (Bool, Int) -> (Bool, Int) -> [SW] -> IO Int
-getTableIndex st at rt elts = do
-  tblMap <- readIORef (rtblMap st)
-  case elts `Map.lookup` tblMap of
-    Just (i, _, _)  -> return i
-    Nothing         -> do let i = Map.size tblMap
-                          modifyIORef (rtblMap st) (Map.insert elts (i, at, rt))
-                          return i
-
--- Create a constant word
-mkConstCW :: Integral a => (Bool, Size) -> a -> CW
-mkConstCW (signed, size) a = normCW $ CW signed size (toInteger a)
-
--- Create a new expression; hash-cons as necessary
-newExpr :: State -> (Bool, Size) -> SBVExpr -> IO SW
-newExpr st sgnsz app = do
-   let e = reorder app
-   exprMap <- readIORef (rexprMap st)
-   case e `Map.lookup` exprMap of
-     Just sw -> return sw
-     Nothing -> do ctr <- incCtr st
-                   let sw = SW sgnsz (NodeId ctr)
-                   modifyIORef (spgm st)     (flip (S.|>) (sw, e))
-                   modifyIORef (rexprMap st) (Map.insert e sw)
-                   return sw
-
-sbvToSW :: State -> SBV a -> IO SW
-sbvToSW st (SBV _ (Left c))  = newConst st c
-sbvToSW st (SBV _ (Right f)) = uncache f st
-
--------------------------------------------------------------------------
--- * Symbolic Computations
--------------------------------------------------------------------------
--- | A Symbolic computation. Represented by a reader monad carrying the
--- state of the computation, layered on top of IO for creating unique
--- references to hold onto intermediate results.
-newtype Symbolic a = Symbolic (ReaderT State IO a)
-                   deriving (Monad, MonadIO, MonadReader State)
-
-mkSymSBV :: (Bool, Size) -> Maybe String -> Symbolic (SBV a)
-mkSymSBV sgnsz mbNm = do
-        st <- ask
-        ctr <- liftIO $ incCtr st
-        let nm = maybe ('s':show ctr) id mbNm
-            sw = SW sgnsz (NodeId ctr)
-        liftIO $ modifyIORef (rinps st) ((sw, nm):)
-        return $ SBV sgnsz $ Right $ cache (const (return sw))
-
-sbvToSymSW :: SBV a -> Symbolic SW
-sbvToSymSW sbv = do
-        st <- ask
-        liftIO $ sbvToSW st sbv
-
--- | Mark an interim result as an output. Useful when constructing Symbolic programs
--- that return multiple values, or when the result is programmatically computed.
-class Outputtable a where
-  output :: a -> Symbolic a
-
-instance Outputtable (SBV a) where
-  output i@(SBV _ (Left c)) = do
-          st <- ask
-          sw <- liftIO $ newConst st c
-          liftIO $ modifyIORef (routs st) (sw:)
-          return i
-  output i@(SBV _ (Right f)) = do
-          st <- ask
-          sw <- liftIO $ uncache f st
-          liftIO $ modifyIORef (routs st) (sw:)
-          return i
-
-instance (Outputtable a, Outputtable b) => Outputtable (a, b) where
-  output = mlift2 (,) output output
-
-instance (Outputtable a, Outputtable b, Outputtable c) => Outputtable (a, b, c) where
-  output = mlift3 (,,) output output output
-
-instance (Outputtable a, Outputtable b, Outputtable c, Outputtable d) => Outputtable (a, b, c, d) where
-  output = mlift4 (,,,) output output output output
-
-instance (Outputtable a, Outputtable b, Outputtable c, Outputtable d, Outputtable e) => Outputtable (a, b, c, d, e) where
-  output = mlift5 (,,,,) output output output output output
-
-instance (Outputtable a, Outputtable b, Outputtable c, Outputtable d, Outputtable e, Outputtable f) => Outputtable (a, b, c, d, e, f) where
-  output = mlift6 (,,,,,) output output output output output output
-
-instance (Outputtable a, Outputtable b, Outputtable c, Outputtable d, Outputtable e, Outputtable f, Outputtable g) => Outputtable (a, b, c, d, e, f, g) where
-  output = mlift7 (,,,,,,) output output output output output output output
-
-instance (Outputtable a, Outputtable b, Outputtable c, Outputtable d, Outputtable e, Outputtable f, Outputtable g, Outputtable h) => Outputtable (a, b, c, d, e, f, g, h) where
-  output = mlift8 (,,,,,,,) output output output output output output output output
-
--- | Add a user specified axiom to the generated SMT-Lib file. Note that the input is a
--- mere string; we perform no checking on the input that it's well-formed or is sensical.
--- A separate formalization of SMT-Lib would be very useful here.
-addAxiom :: String -> [String] -> Symbolic ()
-addAxiom nm ax = do
-        st <- ask
-        liftIO $ modifyIORef (raxioms st) ((nm, ax) :)
-
--- | Run a symbolic computation and return a 'Result'
-runSymbolic :: Symbolic a -> IO Result
-runSymbolic c = do (_, r) <- runSymbolic' c
-                   return r
-
--- | Run a symbolic computation, and return a extra value paired up with the 'Result'
-runSymbolic' :: Symbolic a -> IO (a, Result)
-runSymbolic' (Symbolic c) = do
-   ctr     <- newIORef (-2) -- start from -2; False and True will always occupy the first two elements
-   pgm     <- newIORef S.empty
-   emap    <- newIORef Map.empty
-   cmap    <- newIORef Map.empty
-   inps    <- newIORef []
-   outs    <- newIORef []
-   tables  <- newIORef Map.empty
-   arrays  <- newIORef IMap.empty
-   uis     <- newIORef Map.empty
-   axioms  <- newIORef []
-   swCache <- newIORef IMap.empty
-   aiCache <- newIORef IMap.empty
-   let st = State { rctr      = ctr
-                  , rinps     = inps
-                  , routs     = outs
-                  , rtblMap   = tables
-                  , spgm      = pgm
-                  , rconstMap = cmap
-                  , rArrayMap = arrays
-                  , rexprMap  = emap
-                  , rUIMap    = uis
-                  , raxioms   = axioms
-                  , rSWCache  = swCache
-                  , rAICache  = aiCache
-                  }
-   _ <- newConst st (mkConstCW (False,1) (0::Integer)) -- s(-2) == falseSW
-   _ <- newConst st (mkConstCW (False,1) (1::Integer)) -- s(-1) == trueSW
-   r <- runReaderT c st
-   rpgm  <- readIORef pgm
-   inpsR <- readIORef inps
-   outsR <- readIORef outs
-   let swap (a, b) = (b, a)
-       cmp  (a, _) (b, _) = a `compare` b
-   cnsts <- (sortBy cmp . map swap . Map.toList) `fmap` readIORef (rconstMap st)
-   tbls  <- (sortBy (\((x, _, _), _) ((y, _, _), _) -> x `compare` y) . map swap . Map.toList) `fmap` readIORef tables
-   arrs  <- IMap.toAscList `fmap` readIORef arrays
-   unint <- Map.toList `fmap` readIORef uis
-   axs   <- reverse `fmap` readIORef axioms
-   return $ (r, Result (reverse inpsR) cnsts tbls arrs unint axs rpgm (reverse outsR))
-
--------------------------------------------------------------------------------
--- * Symbolic Words
--------------------------------------------------------------------------------
--- | A 'SymWord' is a potential symbolic bitvector that can be created instances of
--- to be fed to a symbolic program. Note that these methods are typically not needed
--- in casual uses with 'prove', 'sat', 'allSat' etc, as default instances automatically
--- provide the necessary bits.
---
--- Minimal complete definiton: free, free_, literal, fromCW
-class (Bounded a, Ord a) => SymWord a where
-  -- | Create a user named input
-  free       :: String -> Symbolic (SBV a)
-  -- | Create an automatically named input
-  free_      :: Symbolic (SBV a)
-  -- | Get a bunch of new words
-  mkFreeVars   :: Int -> Symbolic [SBV a]
-  -- | Turn a literal constant to symbolic
-  literal    :: a -> SBV a
-  -- | Extract a literal, if the value is concrete
-  unliteral  :: SBV a -> Maybe a
-  -- | Extract a literal, from a CW representation
-  fromCW     :: CW -> a
-  -- | Is the symbolic word concrete?
-  isConcrete :: SBV a -> Bool
-  -- | Is the symbolic word really symbolic?
-  isSymbolic :: SBV a -> Bool
-  -- | Does it concretely satisfy the given predicate?
-  isConcretely :: SBV a -> (a -> Bool) -> Bool
-
-  -- minimal complete definiton: free, free_, literal, fromCW
-  mkFreeVars n = mapM (const free_) [1 .. n]
-  unliteral (SBV _ (Left c))  = Just $ fromCW c
-  unliteral _                 = Nothing
-  isConcrete (SBV _ (Left _)) = True
-  isConcrete _                = False
-  isSymbolic = not . isConcrete
-  isConcretely s p
-    | Just i <- unliteral s = p i
-    | True                  = False
-
----------------------------------------------------------------------------------
--- * Symbolic Arrays
----------------------------------------------------------------------------------
-
--- | Flat arrays of symbolic values
--- An @array a b@ is an array indexed by the type @'SBV' a@, with elements of type @'SBV' b@
--- If an initial value is not provided in 'newArray_' and 'newArray' methods, then the elements
--- are left unspecified, i.e., the solver is free to choose any value. This is the right thing
--- to do if arrays are used as inputs to functions to be verified, typically. 
---
--- While it's certainly possible for user to create instances of 'SymArray', the
--- 'SArray' and 'SFunArray' instances already provided should cover most use cases
--- in practice. (There are some differences between these models, however, see the corresponding
--- declaration.)
---
---
--- Minimal complete definition: All methods are required, no defaults.
-class SymArray array where
-  -- | Create a new array, with an optional initial value
-  newArray_      :: (HasSignAndSize a, HasSignAndSize b) => Maybe (SBV b) -> Symbolic (array a b)
-  -- | Create a named new array, with an optional initial value
-  newArray       :: (HasSignAndSize a, HasSignAndSize b) => String -> Maybe (SBV b) -> Symbolic (array a b)
-  -- | Read the array element at @a@
-  readArray      :: array a b -> SBV a -> SBV b
-  -- | Reset all the elements of the array to the value @b@
-  resetArray     :: SymWord b => array a b -> SBV b -> array a b
-  -- | Update the element at @a@ to be @b@
-  writeArray     :: SymWord b => array a b -> SBV a -> SBV b -> array a b
-  -- | Merge two given arrays on the symbolic condition
-  -- Intuitively: @mergeArrays cond a b = if cond then a else b@.
-  -- Merging pushes the if-then-else choice down on to elements
-  mergeArrays    :: SymWord b => SBV Bool -> array a b -> array a b -> array a b
-
--- | Arrays implemented in terms of SMT-arrays: <http://goedel.cs.uiowa.edu/smtlib/theories/ArraysEx.smt2>
---
---   * Maps directly to SMT-lib arrays
---
---   * Reading from an unintialized value is OK and yields an uninterpreted result
---
---   * Can check for equality of these arrays
---
---   * Cannot quick-check theorems using @SArray@ values
---
---   * Typically slower as it heavily relies on SMT-solving for the array theory
---
-data SArray a b = SArray ((Bool, Size), (Bool, Size)) (Cached ArrayIndex)
-type ArrayIndex = Int
-
-instance (HasSignAndSize a, HasSignAndSize b) => Show (SArray a b) where
-  show (SArray{}) = "SArray<" ++ showType (undefined :: a) ++ ":" ++ showType (undefined :: b) ++ ">"
-
-instance SymArray SArray where
-  newArray_  = declNewSArray (\t -> "array_" ++ show t)
-  newArray n = declNewSArray (const n)
-  readArray (SArray (_, bsgnsz) f) a = SBV bsgnsz $ Right $ cache r
-     where r st = do arr <- uncacheAI f st
-                     i   <- sbvToSW st a
-                     newExpr st bsgnsz (SBVApp (ArrRead arr) [i])
-  resetArray (SArray ainfo f) b = SArray ainfo $ cache g
-     where g st = do amap <- readIORef (rArrayMap st)
-                     val <- sbvToSW st b
-                     i <- uncacheAI f st
-                     let j = IMap.size amap
-                     j `seq` modifyIORef (rArrayMap st) (IMap.insert j ("array_" ++ show j, ainfo, ArrayReset i val))
-                     return j
-  writeArray (SArray ainfo f) a b = SArray ainfo $ cache g
-     where g st = do arr  <- uncacheAI f st
-                     addr <- sbvToSW st a
-                     val  <- sbvToSW st b
-                     amap <- readIORef (rArrayMap st)
-                     let j = IMap.size amap
-                     j `seq` modifyIORef (rArrayMap st) (IMap.insert j ("array_" ++ show j, ainfo, ArrayMutate arr addr val))
-                     return j
-  mergeArrays t (SArray ainfo a) (SArray _ b) = SArray ainfo $ cache h
-    where h st = do ai <- uncacheAI a st
-                    bi <- uncacheAI b st
-                    ts <- sbvToSW st t
-                    amap <- readIORef (rArrayMap st)
-                    let k = IMap.size amap
-                    k `seq` modifyIORef (rArrayMap st) (IMap.insert k ("array_" ++ show k, ainfo, ArrayMerge ts ai bi))
-                    return k
-
-declNewSArray :: forall a b. (HasSignAndSize a, HasSignAndSize b) => (Int -> String) -> Maybe (SBV b) -> Symbolic (SArray a b)
-declNewSArray mkNm mbInit = do
-   let asgnsz = (hasSign (undefined :: a), sizeOf (undefined :: a))
-       bsgnsz = (hasSign (undefined :: b), sizeOf (undefined :: b))
-   st <- ask
-   amap <- liftIO $ readIORef $ rArrayMap st
-   let i = IMap.size amap
-       nm = mkNm i
-   actx <- liftIO $ case mbInit of
-                     Nothing   -> return $ ArrayFree Nothing
-                     Just ival -> sbvToSW st ival >>= \sw -> return $ ArrayFree (Just sw)
-   liftIO $ modifyIORef (rArrayMap st) (IMap.insert i (nm, (asgnsz, bsgnsz), actx))
-   return $ SArray (asgnsz, bsgnsz) $ cache $ const $ return i
-
--- | Arrays implemented internally as functions
---
---    * Internally handled by the library and not mapped to SMT-Lib
---
---    * Reading an uninitialized value is considered an error (will throw exception)
---
---    * Cannot check for equality (internally represented as functions)
---
---    * Can quick-check
---
---    * Typically faster as it gets compiled away during translation
---
-data SFunArray a b = SFunArray (SBV a -> SBV b)
-
-instance (HasSignAndSize a, HasSignAndSize b) => Show (SFunArray a b) where
-  show (SFunArray _) = "SFunArray<" ++ showType (undefined :: a) ++ ":" ++ showType (undefined :: b) ++ ">"
-
--- | Make a constant fun-array always returning a fixed value.
--- Useful for creating arrays in a pure context. (Otherwise use `newArray`.)
-mkSFunArray :: SBV b -> SFunArray a b
-mkSFunArray i = SFunArray (const i)
-
----------------------------------------------------------------------------------
--- * Cached values
----------------------------------------------------------------------------------
-
--- We implement a peculiar caching mechanism, applicable to the use case in
--- implementation of SBV's.  Whenever we do a state based computation, we do
--- not want to keep on evaluating it in the then-current state. That will
--- produce essentially a semantically equivalent value. Thus, we want to run
--- it only once, and reuse that result, capturing the sharing at the Haskell
--- level. This is similar to the "type-safe observable sharing" work, but also
--- takes into the account of how symbolic simulation executes.
---
--- Note that this is *not* a general memo utility!
-
-newtype Cached a = Cached (State -> IO a)
-
-cache :: (State -> IO a) -> Cached a
-cache = Cached
-
-uncache :: Cached SW -> State -> IO SW
-uncache = uncacheGen rSWCache
-
-uncacheAI :: Cached ArrayIndex -> State -> IO ArrayIndex
-uncacheAI = uncacheGen rAICache
-
-uncacheGen :: (State -> IORef (Cache a)) -> Cached a -> State -> IO a
-uncacheGen getCache (Cached f) st = do
-        let rCache = getCache st
-        stored <- readIORef rCache
-        sn <- f `seq` makeStableName f
-        let h = hashStableName sn
-        case maybe Nothing (sn `lookup`) (h `IMap.lookup` stored) of
-          Just r  -> return r
-          Nothing -> do r <- f st
-                        r `seq` modifyIORef rCache (IMap.insertWith (++) h [(sn, r)])
-                        return r
-
--- Technicalities..
-instance NFData CW where
-  rnf (CW x y z) = x `seq` y `seq` z `seq` ()
-
-instance NFData Result where
-  rnf (Result inps consts tbls arrs uis axs pgm outs)
-        = rnf inps `seq` rnf consts `seq` rnf tbls `seq` rnf arrs `seq` rnf uis `seq` rnf axs `seq` rnf pgm `seq` rnf outs
-
-instance NFData ArrayContext
-instance NFData Pgm
-instance NFData SW
-instance NFData SBVType
-instance NFData UnintKind
-
--- Quickcheck interface on symbolic-booleans..
-instance Testable SBool where
-  property (SBV _ (Left b)) = property (cwToBool b)
-  property s                = error $ "Cannot quick-check in the presence of uninterpreted constants! (" ++ show s ++ ")"
diff --git a/Temp/sbv-0.9.18/Data/SBV/BitVectors/Model.hs b/Temp/sbv-0.9.18/Data/SBV/BitVectors/Model.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/BitVectors/Model.hs
+++ /dev/null
@@ -1,965 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.BitVectors.Model
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Instance declarations for our symbolic world
------------------------------------------------------------------------------
-
-{-# OPTIONS_GHC -fno-warn-orphans   #-}
-{-# LANGUAGE TypeSynonymInstances   #-}
-{-# LANGUAGE PatternGuards          #-}
-{-# LANGUAGE FlexibleInstances      #-}
-{-# LANGUAGE MultiParamTypeClasses  #-}
-{-# LANGUAGE ScopedTypeVariables    #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE Rank2Types             #-}
-
-module Data.SBV.BitVectors.Model (
-    Mergeable(..), EqSymbolic(..), OrdSymbolic(..), BVDivisible(..), Uninterpreted(..)
-  , bitValue, setBitTo, allEqual, allDifferent, oneIf, blastBE, blastLE
-  , lsb, msb, SBVUF, sbvUFName, genFree, genFree_
-  )
-  where
-
-import Data.Array      (Array, Ix, listArray, elems, bounds, rangeSize)
-import Data.Bits       (Bits(..))
-import Data.Int        (Int8, Int16, Int32, Int64)
-import Data.List       (genericLength, genericIndex, genericSplitAt, unzip4, unzip5, unzip6, unzip7)
-import Data.Word       (Word8, Word16, Word32, Word64)
-import Test.QuickCheck (Arbitrary(..))
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.Utils.Boolean
-
-liftSym1 :: (State -> (Bool, Size) -> SW -> IO SW) ->
-            (Integer -> Integer) -> SBV b -> SBV b
-liftSym1 _   opC (SBV sgnsz (Left a))  = SBV sgnsz $ Left  $ mapCW opC a
-liftSym1 opS _   a@(SBV sgnsz _)       = SBV sgnsz $ Right $ cache c
-   where c st = do swa <- sbvToSW st a
-                   opS st sgnsz swa
-
-liftSym2 :: (State -> (Bool, Size) -> SW -> SW -> IO SW) ->
-            (Integer -> Integer -> Integer) -> SBV b -> SBV b -> SBV b
-liftSym2 _   opC (SBV sgnsz (Left a)) (SBV _ (Left b)) = SBV sgnsz $ Left  $ mapCW2 opC a b
-liftSym2 opS _   a@(SBV sgnsz _)      b                = SBV sgnsz $ Right $ cache c
-  where c st = do sw1 <- sbvToSW st a
-                  sw2 <- sbvToSW st b
-                  opS st sgnsz sw1 sw2
-
-liftSym2B :: (State -> (Bool, Size) -> SW -> SW -> IO SW)
-          -> (Integer -> Integer -> Bool)
-          -> SBV b -> SBV b -> SBool
-liftSym2B _   opC (SBV _ (Left a)) (SBV _ (Left b)) = literal (liftCW2 opC a b)
-liftSym2B opS _   a                b                = SBV (False, 1) $ Right $ cache c
-  where c st = do sw1 <- sbvToSW st a
-                  sw2 <- sbvToSW st b
-                  opS st (False, 1) sw1 sw2
-
-liftSym1Bool :: (State -> (Bool, Size) -> SW -> IO SW)
-             -> (Bool -> Bool)
-             -> SBool -> SBool
-liftSym1Bool _   opC (SBV _ (Left a)) = literal $ opC $ cwToBool a
-liftSym1Bool opS _   a                = SBV (False, 1) $ Right $ cache c
-  where c st = do sw <- sbvToSW st a
-                  opS st (False, 1) sw
-
-liftSym2Bool :: (State -> (Bool, Size) -> SW -> SW -> IO SW)
-             -> (Bool -> Bool -> Bool)
-             -> SBool -> SBool -> SBool
-liftSym2Bool _   opC (SBV _ (Left a)) (SBV _ (Left b)) = literal (cwToBool a `opC` cwToBool b)
-liftSym2Bool opS _   a                b                = SBV (False, 1) $ Right $ cache c
-  where c st = do sw1 <- sbvToSW st a
-                  sw2 <- sbvToSW st b
-                  opS st (False, 1) sw1 sw2
-
-mkSymOpSC :: (SW -> SW -> Maybe SW) -> Op -> State -> (Bool, Size) -> SW -> SW -> IO SW
-mkSymOpSC shortCut op st sgnsz a b = maybe (newExpr st sgnsz (SBVApp op [a, b])) return (shortCut a b)
-
-mkSymOp :: Op -> State -> (Bool, Size) -> SW -> SW -> IO SW
-mkSymOp = mkSymOpSC (const (const Nothing))
-
-mkSymOp1SC :: (SW -> Maybe SW) -> Op -> State -> (Bool, Size) -> SW -> IO SW
-mkSymOp1SC shortCut op st sgnsz a = maybe (newExpr st sgnsz (SBVApp op [a])) return (shortCut a)
-
-mkSymOp1 :: Op -> State -> (Bool, Size) -> SW -> IO SW
-mkSymOp1 = mkSymOp1SC (const Nothing)
-
--- Symbolic-Word class instances
-
-genFree :: (Bool, Size) -> String -> Symbolic (SBV a)
-genFree s = mkSymSBV s . Just
-
-genFree_ :: (Bool, Size) -> Symbolic (SBV a)
-genFree_ s = mkSymSBV s Nothing
-
-genLiteral :: Integral a => (Bool,Size) -> a -> SBV b
-genLiteral s  = SBV s . Left . mkConstCW s
-
-genFromCW :: Integral a => CW -> a
-genFromCW x = fromInteger (cwVal x)
-
-instance SymWord Bool where
-  free      = genFree    (False, 1)
-  free_     = genFree_   (False, 1)
-  literal x = genLiteral (False, 1) (if x then (1::Integer) else 0)
-  fromCW    = cwToBool
-
-instance SymWord Word8 where
-  free    = genFree    (False, 8)
-  free_   = genFree_   (False, 8)
-  literal = genLiteral (False, 8)
-  fromCW  = genFromCW
-
-instance SymWord Int8 where
-  free    = genFree    (True, 8)
-  free_   = genFree_   (True, 8)
-  literal = genLiteral (True, 8)
-  fromCW  = genFromCW
-
-instance SymWord Word16 where
-  free    = genFree    (False, 16)
-  free_   = genFree_   (False, 16)
-  literal = genLiteral (False, 16)
-  fromCW  = genFromCW
-
-instance SymWord Int16 where
-  free    = genFree    (True, 16)
-  free_   = genFree_   (True, 16)
-  literal = genLiteral (True, 16)
-  fromCW  = genFromCW
-
-instance SymWord Word32 where
-  free    = genFree    (False, 32)
-  free_   = genFree_   (False, 32)
-  literal = genLiteral (False, 32)
-  fromCW  = genFromCW
-
-instance SymWord Int32 where
-  free    = genFree    (True, 32)
-  free_   = genFree_   (True, 32)
-  literal = genLiteral (True, 32)
-  fromCW  = genFromCW
-
-instance SymWord Word64 where
-  free    = genFree    (False, 64)
-  free_   = genFree_   (False, 64)
-  literal = genLiteral (False, 64)
-  fromCW  = genFromCW
-
-instance SymWord Int64 where
-  free    = genFree    (True, 64)
-  free_   = genFree_   (True, 64)
-  literal = genLiteral (True, 64)
-  fromCW  = genFromCW
-
--- | Symbolic Equality. Note that we can't use Haskell's 'Eq' class since Haskell insists on returning Bool
--- Comparing symbolic values will necessarily return a symbolic value.
---
--- Minimal complete definition: '.=='
-infix 4 .==, ./=
-class EqSymbolic a where
-  (.==), (./=) :: a -> a -> SBool
-  -- minimal complete definition: .==
-  x ./= y = bnot (x .== y)
-
--- | Symbolic Comparisons. Similar to 'Eq', we cannot implement Haskell's 'Ord' class
--- since there is no way to return an 'Ordering' value from a symbolic comparison.
--- Furthermore, 'OrdSymbolic' requires 'Mergeable' to implement if-then-else, for the
--- benefit of implementing symbolic versions of 'max' and 'min' functions.
---
--- Minimal complete definition: '.<'
-infix 4 .<, .<=, .>, .>=
-class (Mergeable a, EqSymbolic a) => OrdSymbolic a where
-  (.<), (.<=), (.>), (.>=) :: a -> a -> SBool
-  smin, smax :: a -> a -> a
-  -- minimal complete definition: .<
-  a .<= b    = a .< b ||| a .== b
-  a .>  b    = b .<  a
-  a .>= b    = b .<= a
-  a `smin` b = ite (a .<= b) a b
-  a `smax` b = ite (a .<= b) b a
-
-{- We can't have a generic instance of the form:
-
-instance Eq a => EqSymbolic a where
-  x .== y = if x == y then true else false
-
-even if we're willing to allow Flexible/undecidable instances..
-This is because if we allow this it would imply EqSymbolic (SBV a);
-since (SBV a) has to be Eq as it must be a Num. But this wouldn't be
-the right choice obviously; as the Eq instance is bogus for SBV
-for natural reasons..
--}
-
-instance EqSymbolic (SBV a) where
-  (.==) = liftSym2B (mkSymOpSC (eqOpt trueSW) Equal)    (==)
-  (./=) = liftSym2B (mkSymOpSC (eqOpt falseSW) NotEqual) (/=)
-
-eqOpt :: SW -> SW -> SW -> Maybe SW
-eqOpt w x y = if x == y then Just w else Nothing
-
-instance SymWord a => OrdSymbolic (SBV a) where
-  x .< y
-    | x `isConcretely` (== maxBound) = false
-    | y `isConcretely` (== minBound) = false
-    | True                           = liftSym2B (mkSymOpSC (eqOpt falseSW) LessThan)    (<)  x y
-  x .<= y
-    | x `isConcretely` (== minBound) = true
-    | y `isConcretely` (== maxBound) = true
-    | True                           = liftSym2B (mkSymOpSC (eqOpt trueSW) LessEq)       (<=) x y
-  x .> y
-    | x `isConcretely` (== minBound) = false
-    | y `isConcretely` (== maxBound) = false
-    | True                           = liftSym2B (mkSymOpSC (eqOpt falseSW) GreaterThan) (>)  x y
-  x .>= y
-    | x `isConcretely` (== maxBound) = true
-    | y `isConcretely` (== minBound) = true
-    | True                           = liftSym2B (mkSymOpSC (eqOpt trueSW) GreaterEq)    (>=) x y
-
--- Bool
-instance EqSymbolic Bool where
-  x .== y = if x == y then true else false
-
--- Lists
-instance EqSymbolic a => EqSymbolic [a] where
-  []     .== []     = true
-  (x:xs) .== (y:ys) = x .== y &&& xs .== ys
-  _      .== _      = false
-
-instance OrdSymbolic a => OrdSymbolic [a] where
-  []     .< []     = false
-  []     .< _      = true
-  _      .< []     = false
-  (x:xs) .< (y:ys) = x .< y ||| (x .== y &&& xs .< ys)
-
--- Maybe
-instance EqSymbolic a => EqSymbolic (Maybe a) where
-  Nothing .== Nothing = true
-  Just a  .== Just b  = a .== b
-  _       .== _       = false
-
-instance (OrdSymbolic a) => OrdSymbolic (Maybe a) where
-  Nothing .<  Nothing = false
-  Nothing .<  _       = true
-  Just _  .<  Nothing = false
-  Just a  .<  Just b  = a .< b
-
--- Either
-instance (EqSymbolic a, EqSymbolic b) => EqSymbolic (Either a b) where
-  Left a  .== Left b  = a .== b
-  Right a .== Right b = a .== b
-  _       .== _       = false
-
-instance (OrdSymbolic a, OrdSymbolic b) => OrdSymbolic (Either a b) where
-  Left a  .< Left b  = a .< b
-  Left _  .< Right _ = true
-  Right _ .< Left _  = false
-  Right a .< Right b = a .< b
-
--- 2-Tuple
-instance (EqSymbolic a, EqSymbolic b) => EqSymbolic (a, b) where
-  (a0, b0) .== (a1, b1) = a0 .== a1 &&& b0 .== b1
-
-instance (OrdSymbolic a, OrdSymbolic b) => OrdSymbolic (a, b) where
-  (a0, b0) .< (a1, b1) = a0 .< a1 ||| (a0 .== a1 &&& b0 .< b1)
-
--- 3-Tuple
-instance (EqSymbolic a, EqSymbolic b, EqSymbolic c) => EqSymbolic (a, b, c) where
-  (a0, b0, c0) .== (a1, b1, c1) = (a0, b0) .== (a1, b1) &&& c0 .== c1
-
-instance (OrdSymbolic a, OrdSymbolic b, OrdSymbolic c) => OrdSymbolic (a, b, c) where
-  (a0, b0, c0) .< (a1, b1, c1) = (a0, b0) .< (a1, b1) ||| ((a0, b0) .== (a1, b1) &&& c0 .< c1)
-
--- 4-Tuple
-instance (EqSymbolic a, EqSymbolic b, EqSymbolic c, EqSymbolic d) => EqSymbolic (a, b, c, d) where
-  (a0, b0, c0, d0) .== (a1, b1, c1, d1) = (a0, b0, c0) .== (a1, b1, c1) &&& d0 .== d1
-
-instance (OrdSymbolic a, OrdSymbolic b, OrdSymbolic c, OrdSymbolic d) => OrdSymbolic (a, b, c, d) where
-  (a0, b0, c0, d0) .< (a1, b1, c1, d1) = (a0, b0, c0) .< (a1, b1, c1) ||| ((a0, b0, c0) .== (a1, b1, c1) &&& d0 .< d1)
-
--- 5-Tuple
-instance (EqSymbolic a, EqSymbolic b, EqSymbolic c, EqSymbolic d, EqSymbolic e) => EqSymbolic (a, b, c, d, e) where
-  (a0, b0, c0, d0, e0) .== (a1, b1, c1, d1, e1) = (a0, b0, c0, d0) .== (a1, b1, c1, d1) &&& e0 .== e1
-
-instance (OrdSymbolic a, OrdSymbolic b, OrdSymbolic c, OrdSymbolic d, OrdSymbolic e) => OrdSymbolic (a, b, c, d, e) where
-  (a0, b0, c0, d0, e0) .< (a1, b1, c1, d1, e1) = (a0, b0, c0, d0) .< (a1, b1, c1, d1) ||| ((a0, b0, c0, d0) .== (a1, b1, c1, d1) &&& e0 .< e1)
-
--- 6-Tuple
-instance (EqSymbolic a, EqSymbolic b, EqSymbolic c, EqSymbolic d, EqSymbolic e, EqSymbolic f) => EqSymbolic (a, b, c, d, e, f) where
-  (a0, b0, c0, d0, e0, f0) .== (a1, b1, c1, d1, e1, f1) = (a0, b0, c0, d0, e0) .== (a1, b1, c1, d1, e1) &&& f0 .== f1
-
-instance (OrdSymbolic a, OrdSymbolic b, OrdSymbolic c, OrdSymbolic d, OrdSymbolic e, OrdSymbolic f) => OrdSymbolic (a, b, c, d, e, f) where
-  (a0, b0, c0, d0, e0, f0) .< (a1, b1, c1, d1, e1, f1) =    (a0, b0, c0, d0, e0) .<  (a1, b1, c1, d1, e1)
-                                                       ||| ((a0, b0, c0, d0, e0) .== (a1, b1, c1, d1, e1) &&& f0 .< f1)
-
--- 7-Tuple
-instance (EqSymbolic a, EqSymbolic b, EqSymbolic c, EqSymbolic d, EqSymbolic e, EqSymbolic f, EqSymbolic g) => EqSymbolic (a, b, c, d, e, f, g) where
-  (a0, b0, c0, d0, e0, f0, g0) .== (a1, b1, c1, d1, e1, f1, g1) = (a0, b0, c0, d0, e0, f0) .== (a1, b1, c1, d1, e1, f1) &&& g0 .== g1
-
-instance (OrdSymbolic a, OrdSymbolic b, OrdSymbolic c, OrdSymbolic d, OrdSymbolic e, OrdSymbolic f, OrdSymbolic g) => OrdSymbolic (a, b, c, d, e, f, g) where
-  (a0, b0, c0, d0, e0, f0, g0) .< (a1, b1, c1, d1, e1, f1, g1) =    (a0, b0, c0, d0, e0, f0) .<  (a1, b1, c1, d1, e1, f1)
-                                                               ||| ((a0, b0, c0, d0, e0, f0) .== (a1, b1, c1, d1, e1, f1) &&& g0 .< g1)
-
--- Boolean combinators
-instance Boolean SBool where
-  true  = literal True
-  false = literal False
-  bnot  b | b `isConcretely` (== False) = true
-          | b `isConcretely` (== True)  = false
-          | True                        = liftSym1Bool (mkSymOp1 Not) not b
-  a &&& b | a `isConcretely` (== False) || b `isConcretely` (== False) = false
-          | a `isConcretely` (== True)                                 = b
-          | b `isConcretely` (== True)                                 = a
-          | True                                                       = liftSym2Bool (mkSymOpSC opt And) (&&) a b
-          where opt x y
-                 | x == falseSW || y == falseSW = Just falseSW
-                 | x == trueSW                  = Just y
-                 | y == trueSW                  = Just x
-                 | True                         = Nothing
-  a ||| b | a `isConcretely` (== True)  || b `isConcretely` (== True) = true
-          | a `isConcretely` (== False)                               = b
-          | b `isConcretely` (== False)                               = a
-          | True                                                      = liftSym2Bool (mkSymOpSC opt Or)  (||) a b
-          where opt x y
-                 | x == trueSW || y == trueSW = Just trueSW
-                 | x == falseSW               = Just y
-                 | y == falseSW               = Just x
-                 | True                       = Nothing
-  a <+> b | a `isConcretely` (== False) = b
-          | b `isConcretely` (== False) = a
-          | a `isConcretely` (== True)  = bnot b
-          | b `isConcretely` (== True)  = bnot a
-          | True                        = liftSym2Bool (mkSymOpSC opt XOr) (<+>) a b
-          where opt x y
-                 | x == y       = Just falseSW
-                 | x == falseSW = Just y
-                 | y == falseSW = Just x
-                 | True         = Nothing
-
--- | Returns (symbolic) true if all the elements of the given list are different
-allDifferent :: (Eq a, SymWord a) => [SBV a] -> SBool
-allDifferent (x:xs@(_:_)) = bAll ((./=) x) xs &&& allDifferent xs
-allDifferent _            = true
-
--- | Returns (symbolic) true if all the elements of the given list are the same
-allEqual :: (Eq a, SymWord a) => [SBV a] -> SBool
-allEqual (x:xs@(_:_))     = bAll ((.==) x) xs
-allEqual _                = true
-
--- | Returns 1 if the boolean is true, otherwise 0
-oneIf :: (Num a, SymWord a) => SBool -> SBV a
-oneIf t = ite t 1 0
-
--- Num instance for symbolic words
-instance (Ord a, Num a, SymWord a) => Num (SBV a) where
-  fromInteger = literal . fromIntegral
-  x + y
-    | x `isConcretely` (== 0) = y
-    | y `isConcretely` (== 0) = x
-    | True                    = liftSym2 (mkSymOp Plus)  (+) x y
-  x * y
-    | x `isConcretely` (== 0) = 0
-    | y `isConcretely` (== 0) = 0
-    | x `isConcretely` (== 1) = y
-    | y `isConcretely` (== 1) = x
-    | True                    = liftSym2 (mkSymOp Times) (*) x y
-  x - y
-    | y `isConcretely` (== 0) = x
-    | True                    = liftSym2 (mkSymOp Minus) (-) x y
-  abs a
-   | hasSign a = ite (a .< 0) (-a) a
-   | True      = a
-  signum a
-   | hasSign a = ite (a .< 0) (-1) (ite (a .== 0) 0 1)
-   | True      = oneIf (a ./= 0)
-
--- NB. The default definition of "testBit" relies on equality,
--- which is not available for symbolic SBV's. There is no
--- way to implement testBit to return Bool, obviously; instead use bitValue
--- Also, in the optimizations below, use of -1 is valid as
--- -1 has all bits set to True for both signed and unsigned values
-instance (Bits a, SymWord a) => Bits (SBV a) where
-  x .&. y
-    | x `isConcretely` (== 0)  = 0
-    | x `isConcretely` (== -1) = y
-    | y `isConcretely` (== 0)  = 0
-    | y `isConcretely` (== -1) = x
-    | True                     = liftSym2 (mkSymOp  And) (.&.) x y
-  x .|. y
-    | x `isConcretely` (== 0)  = y
-    | x `isConcretely` (== -1) = -1
-    | y `isConcretely` (== 0)  = x
-    | y `isConcretely` (== -1) = -1
-    | True                     = liftSym2 (mkSymOp  Or)  (.|.) x y
-  x `xor` y
-    | x `isConcretely` (== 0)  = y
-    | y `isConcretely` (== 0)  = x
-    | True                     = liftSym2 (mkSymOp  XOr) xor x y
-  complement               = liftSym1 (mkSymOp1 Not) complement
-  bitSize  (SBV (_ ,s) _)  = s
-  isSigned (SBV (b, _) _)  = b
-  shiftL x y
-    | y < 0                = shiftR x (-y)
-    | y == 0               = x
-    | True                 = liftSym1 (mkSymOp1 (Shl y)) (`shiftL` y) x
-  shiftR x y
-    | y < 0                = shiftL x (-y)
-    | y == 0               = x
-    | True                 = liftSym1 (mkSymOp1 (Shr y)) (`shiftR` y) x
-  rotateL x y
-    | y < 0                = rotateR x (-y)
-    | y == 0               = x
-    | True                 = liftSym1 (mkSymOp1 (Rol y)) (rot True (bitSize x) y) x
-  rotateR x y
-    | y < 0                = rotateL x (-y)
-    | y == 0               = x
-    | True                 = liftSym1 (mkSymOp1 (Ror y)) (rot False (bitSize x) y) x
-
--- Since the underlying representation is just Integers, rotations has to be careful on the bit-size
-rot :: Bool -> Int -> Int -> Integer -> Integer
-rot toLeft sz amt x
-  | sz < 2 = x
-  | True   = (norm x y') `shiftL` y  .|. norm (x `shiftR` y') y
-  where (y, y') | toLeft = (amt `mod` sz, sz - y)
-                | True   = (sz - y', amt `mod` sz)
-        norm v s = v .&. ((1 `shiftL` s) - 1)
-
--- | Replacement for 'testBit'. Since 'testBit' requires a 'Bool' to be returned,
--- we cannot implement it for symbolic words. Index 0 is the least-significant bit.
-bitValue :: (Bits a, SymWord a) => SBV a -> Int -> SBool
-bitValue x i = (x .&. bit i) ./= 0
-
--- | Generalization of 'setBit' based on a symbolic boolean. Note that 'setBit' and
--- 'clearBit' are still available on Symbolic words, this operation comes handy when
--- the condition to set/clear happens to be symbolic
-setBitTo :: (Bits a, SymWord a) => SBV a -> Int -> SBool -> SBV a
-setBitTo x i b = ite b (setBit x i) (clearBit x i)
-
--- | Little-endian blasting of a word into its bits. Also see the 'FromBits' class
-blastLE :: (Bits a, SymWord a) => SBV a -> [SBool]
-blastLE x = map (bitValue x) [0 .. (sizeOf x)-1]
-
--- | Big-endian blasting of a word into its bits. Also see the 'FromBits' class
-blastBE :: (Bits a, SymWord a) => SBV a -> [SBool]
-blastBE = reverse . blastLE
-
--- | Least significant bit of a word, always stored at index 0
-lsb :: (Bits a, SymWord a) => SBV a -> SBool
-lsb x = bitValue x 0
-
--- | Most significant bit of a word, always stored at the last position
-msb :: (Bits a, SymWord a) => SBV a -> SBool
-msb x = bitValue x ((sizeOf x) - 1)
-
--- Enum instance. These instances are suitable for use with concrete values,
--- and will be less useful for symbolic values around. Note that `fromEnum` requires
--- a concrete argument for obvious reasons. Other variants (succ, pred, [x..]) etc are similarly
--- limited. While symbolic variants can be defined for many of these, they will just diverge
--- as final sizes cannot be determined statically.
-instance (Bounded a, Integral a, Num a, SymWord a) => Enum (SBV a) where
-  succ x
-    | v == (maxBound :: a) = error $ "Enum.succ{" ++ showType x ++ "}: tried to take `succ' of maxBound"
-    | True                 = fromIntegral $ v + 1
-    where v = enumCvt "succ" x
-  pred x
-    | v == (minBound :: a) = error $ "Enum.pred{" ++ showType x ++ "}: tried to take `pred' of minBound"
-    | True                 = fromIntegral $ v - 1
-    where v = enumCvt "pred" x
-  toEnum x
-    | xi < fromIntegral (minBound :: a) || xi > fromIntegral (maxBound :: a)
-    = error $ "Enum.toEnum{" ++ showType r ++ "}: " ++ show x ++ " is out-of-bounds " ++ show (minBound :: a, maxBound :: a)
-    | True
-    = r
-    where xi :: Integer
-          xi = fromIntegral x
-          r  :: SBV a
-          r  = fromIntegral x
-  fromEnum x
-     | r < fromIntegral (minBound :: Int) || r > fromIntegral (maxBound :: Int)
-     = error $ "Enum.fromEnum{" ++ showType x ++ "}:  value " ++ show r ++ " is outside of Int's bounds " ++ show (minBound :: Int, maxBound :: Int)
-     | True
-     = fromIntegral r
-    where r :: Integer
-          r = enumCvt "fromEnum" x
-  enumFrom x = map fromIntegral [xi .. fromIntegral (maxBound :: a)]
-     where xi :: Integer
-           xi = enumCvt "enumFrom" x
-  enumFromThen x y
-     | yi >= xi  = map fromIntegral [xi, yi .. fromIntegral (maxBound :: a)]
-     | True      = map fromIntegral [xi, yi .. fromIntegral (minBound :: a)]
-       where xi, yi :: Integer
-             xi = enumCvt "enumFromThen.x" x
-             yi = enumCvt "enumFromThen.y" y
-  enumFromThenTo x y z = map fromIntegral [xi, yi .. zi]
-       where xi, yi, zi :: Integer
-             xi = enumCvt "enumFromThenTo.x" x
-             yi = enumCvt "enumFromThenTo.y" y
-             zi = enumCvt "enumFromThenTo.z" z
-
--- | Helper function for use in enum operations
-enumCvt :: (SymWord a, Integral a, Num b) => String -> SBV a -> b
-enumCvt w x = case unliteral x of
-                Nothing -> error $ "Enum." ++ w ++ "{" ++ showType x ++ "}: Called on symbolic value " ++ show x
-                Just v  -> fromIntegral v
-
--- | The 'BVDivisible' class captures the essence of division of words.
--- Unfortunately we cannot use Haskell's 'Integral' class since the 'Real'
--- and 'Enum' superclasses are not implementable for symbolic bit-vectors.
--- However, 'quotRem' makes perfect sense, and the 'BVDivisible' class captures
--- this operation. One issue is how division by 0 behaves. The verification
--- technology requires total functions, and there are several design choices
--- here. We follow Isabelle/HOL approach of assigning the value 0 for division
--- by 0. Therefore, we impose the following law:
---
---     @ x `bvQuotRem` 0 = (0, x) @
---
--- Note that our instances implement this law even when @x@ is @0@ itself.
---
--- Minimal complete definition: 'bvQuotRem'
-class BVDivisible a where
-  bvQuotRem :: a -> a -> (a, a)
-
-instance BVDivisible Word64 where
-  bvQuotRem x 0 = (0, x)
-  bvQuotRem x y = x `quotRem` y
-
-instance BVDivisible Word32 where
-  bvQuotRem x 0 = (0, x)
-  bvQuotRem x y = x `quotRem` y
-
-instance BVDivisible Word16 where
-  bvQuotRem x 0 = (0, x)
-  bvQuotRem x y = x `quotRem` y
-
-instance BVDivisible Word8 where
-  bvQuotRem x 0 = (0, x)
-  bvQuotRem x y = x `quotRem` y
-
-instance BVDivisible Integer where
-  bvQuotRem x 0 = (0, x)
-  bvQuotRem x y = x `quotRem` y
-
-instance BVDivisible CW where
-  bvQuotRem x y
-    | cwSameType x y = let (r1, r2) = bvQuotRem (cwVal x) (cwVal y)
-                       in (x { cwVal = r1 }, y { cwVal = r2 })
-  bvQuotRem x y = error $ "SBV.liftQRem: impossible, unexpected args received: " ++ show (x, y)
-
-instance BVDivisible SWord64 where
-  bvQuotRem = liftQRem
-
-instance BVDivisible SWord32 where
-  bvQuotRem = liftQRem
-
-instance BVDivisible SWord16 where
-  bvQuotRem = liftQRem
-
-instance BVDivisible SWord8 where
-  bvQuotRem = liftQRem
-
-liftQRem :: (SymWord a, Num a, BVDivisible a) => SBV a -> SBV a -> (SBV a, SBV a)
-liftQRem x y = ite (y .== 0) (0, x) (qr x y)
-  where qr (SBV sgnsz (Left a)) (SBV _ (Left b)) = let (q, r) = bvQuotRem a b in (SBV sgnsz (Left q), SBV sgnsz (Left r))
-        qr a@(SBV sgnsz _)      b                = (SBV sgnsz (Right (cache (mk Quot))), SBV sgnsz (Right (cache (mk Rem))))
-                where mk o st = do sw1 <- sbvToSW st a
-                                   sw2 <- sbvToSW st b
-                                   mkSymOp o st sgnsz sw1 sw2
-
--- Quickcheck interface
-
--- The Arbitrary instance for SFunArray returns an array initialized
--- to an arbitrary element
-instance (SymWord b, Arbitrary b) => Arbitrary (SFunArray a b) where
-  arbitrary = arbitrary >>= \r -> return $ SFunArray (const r)
-
-instance (SymWord a, Arbitrary a) => Arbitrary (SBV a) where
-  arbitrary = arbitrary >>= return . literal
-
--- |  Symbolic choice operator, parameterized via a class
--- 'select' is a total-indexing function, with the default.
---
--- Minimal complete definition: 'symbolicMerge'
-class Mergeable a where
-   -- | Merge two values based on the condition
-   symbolicMerge :: SBool -> a -> a -> a
-   -- | Choose one or the other element, based on the condition.
-   -- This is similar to 'symbolicMerge', but it has a default
-   -- implementation that makes sure it's short-cut if the condition is concrete
-   ite           :: SBool -> a -> a -> a
-   -- | Total indexing operation. @select xs default index@ is intuitively
-   -- the same as @xs !! index@, except it evaluates to @default@ if @index@
-   -- overflows
-   select        :: (Bits b, SymWord b, Integral b) => [a] -> a -> SBV b -> a
-   -- default definitions
-   ite s a b
-    | Just t <- unliteral s = if t then a else b
-    | True                  = symbolicMerge s a b
-   select [] err _   = err
-   select xs err ind
-    | hasSign ind    = ite (ind .< 0) err $ result
-    | True           = result
-    where result = go xs $ reverse (zip [(0::Integer)..] bits)
-          bits   = map (ind `bitValue`) [0 .. bitSize ind - 1]
-          go []    _            = err
-          go (x:_) []           = x
-          go elts  ((n, b):nbs) = let (ys, zs) = genericSplitAt ((2::Integer) ^ n) elts
-                                  in ite b (go zs nbs) (go ys nbs)
-
--- SBV
-instance SymWord a => Mergeable (SBV a) where
-  symbolicMerge t a b
-   | Just c1 <- unliteral a, Just c2 <- unliteral b, c1 == c2
-   = a
-   | True
-   = SBV sgnsz $ Right $ cache c
-    where sgnsz = (hasSign a, sizeOf a)
-          c st = do swt <- sbvToSW st t
-                    case () of
-                      () | swt == trueSW  -> sbvToSW st a
-                      () | swt == falseSW -> sbvToSW st b
-                      () -> do swa <- sbvToSW st a
-                               swb <- sbvToSW st b
-                               if swa == swb
-                                  then return swa
-                                  else newExpr st sgnsz (SBVApp Ite [swt, swa, swb])
-  -- Custom version of select that translates to SMT-Lib tables at the base type of words
-  select xs err ind
-    | Just i <- unliteral ind
-    = let i' :: Integer
-          i' = fromIntegral i
-      in if i' < 0 || i' >= genericLength xs then err else genericIndex xs i'
-  select [] err _   = err
-  select xs err ind = SBV sgnszElt $ Right $ cache r
-     where sgnszInd = (hasSign ind, sizeOf ind)
-           sgnszElt = (hasSign err, sizeOf err)
-           r st  = do sws <- mapM (sbvToSW st) xs
-                      swe <- sbvToSW st err
-                      if all (== swe) sws  -- off-chance that all elts are the same
-                         then return swe
-                         else do idx <- getTableIndex st sgnszInd sgnszElt sws
-                                 swi <- sbvToSW st ind
-                                 let len = length xs
-                                 newExpr st sgnszElt (SBVApp (LkUp (idx, sgnszInd, sgnszElt, len) swi swe) [])
-
--- Unit
-instance Mergeable () where
-   symbolicMerge _ _ _ = ()
-   select _ _ _ = ()
-
--- Mergeable instances for List/Maybe/Either/Array are useful, but can
--- throw exceptions if there is no structural matching of the results
--- It's a question whether we should really keep them..
-
--- Lists
-instance Mergeable a => Mergeable [a] where
-  symbolicMerge t xs ys
-    | lxs == lys = zipWith (symbolicMerge t) xs ys
-    | True       = error $ "SBV.Mergeable.List: No least-upper-bound for lists of differing size " ++ show (lxs, lys)
-    where (lxs, lys) = (length xs, length ys)
-
--- Maybe
-instance Mergeable a => Mergeable (Maybe a) where
-  symbolicMerge _ Nothing  Nothing  = Nothing
-  symbolicMerge t (Just a) (Just b) = Just $ symbolicMerge t a b
-  symbolicMerge _ a b = error $ "SBV.Mergeable.Maybe: No least-upper-bound for " ++ show (k a, k b)
-      where k Nothing = "Nothing"
-            k _       = "Just"
-
--- Either
-instance (Mergeable a, Mergeable b) => Mergeable (Either a b) where
-  symbolicMerge t (Left a)  (Left b)  = Left  $ symbolicMerge t a b
-  symbolicMerge t (Right a) (Right b) = Right $ symbolicMerge t a b
-  symbolicMerge _ a b = error $ "SBV.Mergeable.Either: No least-upper-bound for " ++ show (k a, k b)
-     where k (Left _)  = "Left"
-           k (Right _) = "Right"
-
--- Arrays
-instance (Ix a, Mergeable b) => Mergeable (Array a b) where
-  symbolicMerge t a b
-    | ba == bb = listArray ba (zipWith (symbolicMerge t) (elems a) (elems b))
-    | True     = error $ "SBV.Mergeable.Array: No least-upper-bound for rangeSizes" ++ show (k ba, k bb)
-    where [ba, bb] = map bounds [a, b]
-          k = rangeSize
-
--- Functions
-instance Mergeable b => Mergeable (a -> b) where
-  symbolicMerge t f g = \x -> symbolicMerge t (f x) (g x)
-  select xs err ind   = \x -> select (map ($ x) xs) (err x) ind
-
--- 2-Tuple
-instance (Mergeable a, Mergeable b) => Mergeable (a, b) where
-  symbolicMerge t (i0, i1) (j0, j1) = (i i0 j0, i i1 j1)
-    where i a b = symbolicMerge t a b
-  select xs (err1, err2) ind = (select as err1 ind, select bs err2 ind)
-    where (as, bs) = unzip xs
-
--- 3-Tuple
-instance (Mergeable a, Mergeable b, Mergeable c) => Mergeable (a, b, c) where
-  symbolicMerge t (i0, i1, i2) (j0, j1, j2) = (i i0 j0, i i1 j1, i i2 j2)
-    where i a b = symbolicMerge t a b
-  select xs (err1, err2, err3) ind = (select as err1 ind, select bs err2 ind, select cs err3 ind)
-    where (as, bs, cs) = unzip3 xs
-
--- 4-Tuple
-instance (Mergeable a, Mergeable b, Mergeable c, Mergeable d) => Mergeable (a, b, c, d) where
-  symbolicMerge t (i0, i1, i2, i3) (j0, j1, j2, j3) = (i i0 j0, i i1 j1, i i2 j2, i i3 j3)
-    where i a b = symbolicMerge t a b
-  select xs (err1, err2, err3, err4) ind = (select as err1 ind, select bs err2 ind, select cs err3 ind, select ds err4 ind)
-    where (as, bs, cs, ds) = unzip4 xs
-
--- 5-Tuple
-instance (Mergeable a, Mergeable b, Mergeable c, Mergeable d, Mergeable e) => Mergeable (a, b, c, d, e) where
-  symbolicMerge t (i0, i1, i2, i3, i4) (j0, j1, j2, j3, j4) = (i i0 j0, i i1 j1, i i2 j2, i i3 j3, i i4 j4)
-    where i a b = symbolicMerge t a b
-  select xs (err1, err2, err3, err4, err5) ind = (select as err1 ind, select bs err2 ind, select cs err3 ind, select ds err4 ind, select es err5 ind)
-    where (as, bs, cs, ds, es) = unzip5 xs
-
--- 6-Tuple
-instance (Mergeable a, Mergeable b, Mergeable c, Mergeable d, Mergeable e, Mergeable f) => Mergeable (a, b, c, d, e, f) where
-  symbolicMerge t (i0, i1, i2, i3, i4, i5) (j0, j1, j2, j3, j4, j5) = (i i0 j0, i i1 j1, i i2 j2, i i3 j3, i i4 j4, i i5 j5)
-    where i a b = symbolicMerge t a b
-  select xs (err1, err2, err3, err4, err5, err6) ind = (select as err1 ind, select bs err2 ind, select cs err3 ind, select ds err4 ind, select es err5 ind, select fs err6 ind)
-    where (as, bs, cs, ds, es, fs) = unzip6 xs
-
--- 7-Tuple
-instance (Mergeable a, Mergeable b, Mergeable c, Mergeable d, Mergeable e, Mergeable f, Mergeable g) => Mergeable (a, b, c, d, e, f, g) where
-  symbolicMerge t (i0, i1, i2, i3, i4, i5, i6) (j0, j1, j2, j3, j4, j5, j6) = (i i0 j0, i i1 j1, i i2 j2, i i3 j3, i i4 j4, i i5 j5, i i6 j6)
-    where i a b = symbolicMerge t a b
-  select xs (err1, err2, err3, err4, err5, err6, err7) ind = (select as err1 ind, select bs err2 ind, select cs err3 ind, select ds err4 ind, select es err5 ind, select fs err6 ind, select gs err7 ind)
-    where (as, bs, cs, ds, es, fs, gs) = unzip7 xs
-
--- Bounded instances
-instance (SymWord a, Bounded a) => Bounded (SBV a) where
-  minBound = literal minBound
-  maxBound = literal maxBound
-
--- Arrays
-
--- SArrays are both "EqSymbolic" and "Mergeable"
-instance EqSymbolic (SArray a b) where
-  (SArray _ a) .== (SArray _ b) = SBV (False, 1) $ Right $ cache c
-    where c st = do ai <- uncacheAI a st
-                    bi <- uncacheAI b st
-                    newExpr st (False, 1) (SBVApp (ArrEq ai bi) [])
-
-instance SymWord b => Mergeable (SArray a b) where
-  symbolicMerge = mergeArrays
-
--- SFunArrays are only "Mergeable". Although a brute
--- force equality can be defined, any non-toy instance
--- will suffer from efficiency issues; so we don't define it
-instance SymArray SFunArray where
-  newArray _        = newArray_ -- the name is irrelevant in this case
-  newArray_  mbiVal = return $ SFunArray $ const $ maybe (error "Reading from an uninitialized array entry") id mbiVal
-  readArray  (SFunArray f) a   = f a
-  resetArray (SFunArray _) a   = SFunArray $ const a
-  writeArray (SFunArray f) a b = SFunArray (\a' -> ite (a .== a') b (f a'))
-  mergeArrays t (SFunArray f) (SFunArray g) = SFunArray (\x -> ite t (f x) (g x))
-
-instance SymWord b => Mergeable (SFunArray a b) where
-  symbolicMerge = mergeArrays
-
--- | An uninterpreted function handle. This is the handle to be used for
--- adding axioms about uninterpreted constants/functions. Note that
--- we will leave this abstract for safety purposes
-newtype SBVUF = SBVUF String
-
--- | Get the name associated with the uninterpreted-value; useful when
--- constructing axioms about this UI.
-sbvUFName :: SBVUF -> String
-sbvUFName (SBVUF s) = s
-
--- The name we use for translating the UF constants to SMT-Lib..
-mkUFName :: String -> SBVUF
-mkUFName nm = SBVUF $ "uninterpreted_" ++ nm
-
--- | Uninterpreted constants and functions. An uninterpreted constant is
--- a value that is indexed by its name. The only property the prover assumes
--- about these values are that they are equivalent to themselves; i.e., (for
--- functions) they return the same results when applied to same arguments.
--- We support uninterpreted-functions as a general means of black-box'ing
--- operations that are /irrelevant/ for the purposes of the proof; i.e., when
--- the proofs can be performed without any knowledge about the function itself.
---
--- Minimal complete definition: 'uninterpretWithHandle'. However, most instances in
--- practice are already provided by SBV, so end-users should not need to define their
--- own instances.
-class Uninterpreted a where
-  -- | Uninterpret a value, receiving an object that can be used instead. Use this version
-  -- when you do not need to add an axiom about this value.
-  uninterpret :: String -> a
-  -- | Uninterpret a value, but also get a handle to the resulting object. This handle
-  -- can be used to add axioms for this object. (See 'addAxiom'.)
-  uninterpretWithHandle :: String -> (SBVUF, a)
-
-  -- minimal complete definition: 'uninterpretWithHandle'
-  uninterpret = snd . uninterpretWithHandle
-
--- Plain constants
-instance HasSignAndSize a => Uninterpreted (SBV a) where
-  uninterpretWithHandle nm = (mkUFName nm, SBV sgnsza $ Right $ cache result)
-    where sgnsza = (hasSign (undefined :: a), sizeOf (undefined :: a))
-          result st = do newUninterpreted st nm (SBVType [sgnsza])
-                         newExpr st sgnsza $ SBVApp (Uninterpreted nm) []
-
--- Forcing an argument; this is a necessary evil to make sure all the arguments
--- to an uninterpreted function are evaluated before called; the semantics of
--- such functions is necessarily strict; deviating from Haskell's
-forceArg :: SW -> IO ()
-forceArg (SW (b, s) n) = b `seq` s `seq` n `seq` return ()
-
--- Functions of one argument
-instance (HasSignAndSize b, HasSignAndSize a) => Uninterpreted (SBV b -> SBV a) where
-  uninterpretWithHandle nm = (mkUFName nm, f)
-    where f arg0 = SBV sgnsza $ Right $ cache result
-           where sgnsza = (hasSign (undefined :: a), sizeOf (undefined :: a))
-                 sgnszb = (hasSign (undefined :: b), sizeOf (undefined :: b))
-                 result st = do newUninterpreted st nm (SBVType [sgnszb, sgnsza])
-                                sw0 <- sbvToSW st arg0
-                                mapM_ forceArg [sw0]
-                                newExpr st sgnsza $ SBVApp (Uninterpreted nm) [sw0]
-
--- Functions of two arguments
-instance (HasSignAndSize c, HasSignAndSize b, HasSignAndSize a) => Uninterpreted (SBV c -> SBV b -> SBV a) where
-  uninterpretWithHandle nm = (mkUFName nm, f)
-    where f arg0 arg1 = SBV sgnsza $ Right $ cache result
-           where sgnsza = (hasSign (undefined :: a), sizeOf (undefined :: a))
-                 sgnszb = (hasSign (undefined :: b), sizeOf (undefined :: b))
-                 sgnszc = (hasSign (undefined :: c), sizeOf (undefined :: c))
-                 result st = do newUninterpreted st nm (SBVType [sgnszc, sgnszb, sgnsza])
-                                sw0 <- sbvToSW st arg0
-                                sw1 <- sbvToSW st arg1
-                                mapM_ forceArg [sw0, sw1]
-                                newExpr st sgnsza $ SBVApp (Uninterpreted nm) [sw0, sw1]
-
--- Functions of three arguments
-instance (HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a) => Uninterpreted (SBV d -> SBV c -> SBV b -> SBV a) where
-  uninterpretWithHandle nm = (mkUFName nm, f)
-    where f arg0 arg1 arg2 = SBV sgnsza $ Right $ cache result
-           where sgnsza = (hasSign (undefined :: a), sizeOf (undefined :: a))
-                 sgnszb = (hasSign (undefined :: b), sizeOf (undefined :: b))
-                 sgnszc = (hasSign (undefined :: c), sizeOf (undefined :: c))
-                 sgnszd = (hasSign (undefined :: d), sizeOf (undefined :: d))
-                 result st = do newUninterpreted st nm (SBVType [sgnszd, sgnszc, sgnszb, sgnsza])
-                                sw0 <- sbvToSW st arg0
-                                sw1 <- sbvToSW st arg1
-                                sw2 <- sbvToSW st arg2
-                                mapM_ forceArg [sw0, sw1, sw2]
-                                newExpr st sgnsza $ SBVApp (Uninterpreted nm) [sw0, sw1, sw2]
-
--- Functions of four arguments
-instance (HasSignAndSize e, HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a)
-            => Uninterpreted (SBV e -> SBV d -> SBV c -> SBV b -> SBV a) where
-  uninterpretWithHandle nm = (mkUFName nm, f)
-    where f arg0 arg1 arg2 arg3 = SBV sgnsza $ Right $ cache result
-           where sgnsza = (hasSign (undefined :: a), sizeOf (undefined :: a))
-                 sgnszb = (hasSign (undefined :: b), sizeOf (undefined :: b))
-                 sgnszc = (hasSign (undefined :: c), sizeOf (undefined :: c))
-                 sgnszd = (hasSign (undefined :: d), sizeOf (undefined :: d))
-                 sgnsze = (hasSign (undefined :: e), sizeOf (undefined :: e))
-                 result st = do newUninterpreted st nm (SBVType [sgnsze, sgnszd, sgnszc, sgnszb, sgnsza])
-                                sw0 <- sbvToSW st arg0
-                                sw1 <- sbvToSW st arg1
-                                sw2 <- sbvToSW st arg2
-                                sw3 <- sbvToSW st arg3
-                                mapM_ forceArg [sw0, sw1, sw2, sw3]
-                                newExpr st sgnsza $ SBVApp (Uninterpreted nm) [sw0, sw1, sw2, sw3]
-
--- Functions of five arguments
-instance (HasSignAndSize f, HasSignAndSize e, HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a)
-            => Uninterpreted (SBV f -> SBV e -> SBV d -> SBV c -> SBV b -> SBV a) where
-  uninterpretWithHandle nm = (mkUFName nm, f)
-    where f arg0 arg1 arg2 arg3 arg4 = SBV sgnsza $ Right $ cache result
-           where sgnsza = (hasSign (undefined :: a), sizeOf (undefined :: a))
-                 sgnszb = (hasSign (undefined :: b), sizeOf (undefined :: b))
-                 sgnszc = (hasSign (undefined :: c), sizeOf (undefined :: c))
-                 sgnszd = (hasSign (undefined :: d), sizeOf (undefined :: d))
-                 sgnsze = (hasSign (undefined :: e), sizeOf (undefined :: e))
-                 sgnszf = (hasSign (undefined :: f), sizeOf (undefined :: f))
-                 result st = do newUninterpreted st nm (SBVType [sgnszf, sgnsze, sgnszd, sgnszc, sgnszb, sgnsza])
-                                sw0 <- sbvToSW st arg0
-                                sw1 <- sbvToSW st arg1
-                                sw2 <- sbvToSW st arg2
-                                sw3 <- sbvToSW st arg3
-                                sw4 <- sbvToSW st arg4
-                                mapM_ forceArg [sw0, sw1, sw2, sw3, sw4]
-                                newExpr st sgnsza $ SBVApp (Uninterpreted nm) [sw0, sw1, sw2, sw3, sw4]
-
--- Functions of six arguments
-instance (HasSignAndSize g, HasSignAndSize f, HasSignAndSize e, HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a)
-            => Uninterpreted (SBV g -> SBV f -> SBV e -> SBV d -> SBV c -> SBV b -> SBV a) where
-  uninterpretWithHandle nm = (mkUFName nm, f)
-    where f arg0 arg1 arg2 arg3 arg4 arg5 = SBV sgnsza $ Right $ cache result
-           where sgnsza = (hasSign (undefined :: a), sizeOf (undefined :: a))
-                 sgnszb = (hasSign (undefined :: b), sizeOf (undefined :: b))
-                 sgnszc = (hasSign (undefined :: c), sizeOf (undefined :: c))
-                 sgnszd = (hasSign (undefined :: d), sizeOf (undefined :: d))
-                 sgnsze = (hasSign (undefined :: e), sizeOf (undefined :: e))
-                 sgnszf = (hasSign (undefined :: f), sizeOf (undefined :: f))
-                 sgnszg = (hasSign (undefined :: g), sizeOf (undefined :: g))
-                 result st = do newUninterpreted st nm (SBVType [sgnszg, sgnszf, sgnsze, sgnszd, sgnszc, sgnszb, sgnsza])
-                                sw0 <- sbvToSW st arg0
-                                sw1 <- sbvToSW st arg1
-                                sw2 <- sbvToSW st arg2
-                                sw3 <- sbvToSW st arg3
-                                sw4 <- sbvToSW st arg4
-                                sw5 <- sbvToSW st arg5
-                                mapM_ forceArg [sw0, sw1, sw2, sw3, sw4, sw5]
-                                newExpr st sgnsza $ SBVApp (Uninterpreted nm) [sw0, sw1, sw2, sw3, sw4, sw5]
-
--- Functions of seven arguments
-instance (HasSignAndSize h, HasSignAndSize g, HasSignAndSize f, HasSignAndSize e, HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a)
-            => Uninterpreted (SBV h -> SBV g -> SBV f -> SBV e -> SBV d -> SBV c -> SBV b -> SBV a) where
-  uninterpretWithHandle nm = (mkUFName nm, f)
-    where f arg0 arg1 arg2 arg3 arg4 arg5 arg6 = SBV sgnsza $ Right $ cache result
-           where sgnsza = (hasSign (undefined :: a), sizeOf (undefined :: a))
-                 sgnszb = (hasSign (undefined :: b), sizeOf (undefined :: b))
-                 sgnszc = (hasSign (undefined :: c), sizeOf (undefined :: c))
-                 sgnszd = (hasSign (undefined :: d), sizeOf (undefined :: d))
-                 sgnsze = (hasSign (undefined :: e), sizeOf (undefined :: e))
-                 sgnszf = (hasSign (undefined :: f), sizeOf (undefined :: f))
-                 sgnszg = (hasSign (undefined :: g), sizeOf (undefined :: g))
-                 sgnszh = (hasSign (undefined :: h), sizeOf (undefined :: h))
-                 result st = do newUninterpreted st nm (SBVType [sgnszh, sgnszg, sgnszf, sgnsze, sgnszd, sgnszc, sgnszb, sgnsza])
-                                sw0 <- sbvToSW st arg0
-                                sw1 <- sbvToSW st arg1
-                                sw2 <- sbvToSW st arg2
-                                sw3 <- sbvToSW st arg3
-                                sw4 <- sbvToSW st arg4
-                                sw5 <- sbvToSW st arg5
-                                sw6 <- sbvToSW st arg6
-                                mapM_ forceArg [sw0, sw1, sw2, sw3, sw4, sw5, sw6]
-                                newExpr st sgnsza $ SBVApp (Uninterpreted nm) [sw0, sw1, sw2, sw3, sw4, sw5, sw6]
-
--- Uncurried functions of two arguments
-instance (HasSignAndSize c, HasSignAndSize b, HasSignAndSize a) => Uninterpreted ((SBV c, SBV b) -> SBV a) where
-  uninterpretWithHandle nm = let (h, f) = uninterpretWithHandle nm in (h, \(arg0, arg1) -> f arg0 arg1)
-
--- Uncurried functions of three arguments
-instance (HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a) => Uninterpreted ((SBV d, SBV c, SBV b) -> SBV a) where
-  uninterpretWithHandle nm = let (h, f) = uninterpretWithHandle nm in (h, \(arg0, arg1, arg2) -> f arg0 arg1 arg2)
-
--- Uncurried functions of four arguments
-instance (HasSignAndSize e, HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a)
-            => Uninterpreted ((SBV e, SBV d, SBV c, SBV b) -> SBV a) where
-  uninterpretWithHandle nm = let (h, f) = uninterpretWithHandle nm in (h, \(arg0, arg1, arg2, arg3) -> f arg0 arg1 arg2 arg3)
-
--- Uncurried functions of five arguments
-instance (HasSignAndSize f, HasSignAndSize e, HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a)
-            => Uninterpreted ((SBV f, SBV e, SBV d, SBV c, SBV b) -> SBV a) where
-  uninterpretWithHandle nm = let (h, f) = uninterpretWithHandle nm in (h, \(arg0, arg1, arg2, arg3, arg4) -> f arg0 arg1 arg2 arg3 arg4)
-
--- Uncurried functions of six arguments
-instance (HasSignAndSize g, HasSignAndSize f, HasSignAndSize e, HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a)
-            => Uninterpreted ((SBV g, SBV f, SBV e, SBV d, SBV c, SBV b) -> SBV a) where
-  uninterpretWithHandle nm = let (h, f) = uninterpretWithHandle nm in (h, \(arg0, arg1, arg2, arg3, arg4, arg5) -> f arg0 arg1 arg2 arg3 arg4 arg5)
-
--- Uncurried functions of seven arguments
-instance (HasSignAndSize h, HasSignAndSize g, HasSignAndSize f, HasSignAndSize e, HasSignAndSize d, HasSignAndSize c, HasSignAndSize b, HasSignAndSize a)
-            => Uninterpreted ((SBV h, SBV g, SBV f, SBV e, SBV d, SBV c, SBV b) -> SBV a) where
-  uninterpretWithHandle nm = let (h, f) = uninterpretWithHandle nm in (h, \(arg0, arg1, arg2, arg3, arg4, arg5, arg6) -> f arg0 arg1 arg2 arg3 arg4 arg5 arg6)
diff --git a/Temp/sbv-0.9.18/Data/SBV/BitVectors/Polynomial.hs b/Temp/sbv-0.9.18/Data/SBV/BitVectors/Polynomial.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/BitVectors/Polynomial.hs
+++ /dev/null
@@ -1,173 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.BitVectors.Polynomials
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Implementation of polynomial arithmetic
------------------------------------------------------------------------------
-
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE PatternGuards #-}
-
-module Data.SBV.BitVectors.Polynomial (Polynomial(..)) where
-
-import Data.Bits  (Bits(..))
-import Data.List  (genericTake)
-import Data.Maybe (fromJust)
-import Data.Word  (Word8, Word16, Word32, Word64)
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.BitVectors.Model
-import Data.SBV.BitVectors.Splittable
-import Data.SBV.Utils.Boolean
-
--- | Implements polynomial addition, multiplication, division, and modulus operations
--- over GF(2^n).  NB. Similar to 'bvQuotRem', division by @0@ is interpreted as follows:
---
---     @x `pDivMod` 0 = (0, x)@
---
--- for all @x@ (including @0@)
---
--- Minimal complete definiton: 'pMult', 'pDivMod', 'showPoly'
-class Bits a => Polynomial a where
- -- | Given bit-positions to be set, create a polynomial
- -- For instance
- --
- --     @polynomial [0, 1, 3] :: SWord8@
- -- 
- -- will evaluate to @11@, since it sets the bits @0@, @1@, and @3@. Mathematicans would write this polynomial
- -- as @x^3 + x + 1@. And in fact, 'showPoly' will show it like that.
- polynomial :: [Int] -> a
- -- | Add two polynomials in GF(2^n)
- pAdd  :: a -> a -> a
- -- | Multiply two polynomials in GF(2^n), and reduce it by the irreducible specified by
- -- the polynomial as specified by coefficients of the third argument. Note that the third
- -- argument is specifically left in this form as it is usally in GF(2^(n+1)), which is not available in our
- -- formalism. (That is, we would need SWord9 for SWord8 multiplication, etc.) Also note that we do not
- -- support symbolic irreducibles, which is a minor shortcoming. (Most GF's will come with fixed irreducibles,
- -- so this should not be a problem in practice.)
- --
- -- Passing [] for the third argument will multiply the polynomials and then ignore the higher bits that won't
- -- fit into the resulting size.
- pMult :: (a, a, [Int]) -> a
- -- | Divide two polynomials in GF(2^n), see above note for division by 0
- pDiv  :: a -> a -> a
- -- | Compute modulus of two polynomials in GF(2^n), see above note for modulus by 0
- pMod  :: a -> a -> a
- -- | Division and modulus packed together
- pDivMod :: a -> a -> (a, a)
- -- | Display a polynomial like a mathematician would (over the monomial @x@)
- showPoly :: a -> String
-
- -- defaults.. Minumum complete definition: pMult, pDivMod, showPoly
- polynomial = foldr (flip setBit) 0
- pAdd       = xor
- pDiv x y   = fst (pDivMod x y)
- pMod x y   = snd (pDivMod x y)
-
-instance Polynomial Word8   where {showPoly = sp;       pMult = lift polyMult; pDivMod = liftC polyDivMod}
-instance Polynomial Word16  where {showPoly = sp;       pMult = lift polyMult; pDivMod = liftC polyDivMod}
-instance Polynomial Word32  where {showPoly = sp;       pMult = lift polyMult; pDivMod = liftC polyDivMod}
-instance Polynomial Word64  where {showPoly = sp;       pMult = lift polyMult; pDivMod = liftC polyDivMod}
-instance Polynomial SWord8  where {showPoly = liftS sp; pMult = polyMult;      pDivMod = polyDivMod}
-instance Polynomial SWord16 where {showPoly = liftS sp; pMult = polyMult;      pDivMod = polyDivMod}
-instance Polynomial SWord32 where {showPoly = liftS sp; pMult = polyMult;      pDivMod = polyDivMod}
-instance Polynomial SWord64 where {showPoly = liftS sp; pMult = polyMult;      pDivMod = polyDivMod}
-
-lift :: SymWord a => ((SBV a, SBV a, [Int]) -> SBV a) -> (a, a, [Int]) -> a
-lift f (x, y, z) = fromJust $ unliteral $ f (literal x, literal y, z)
-liftC :: SymWord a => (SBV a -> SBV a -> (SBV a, SBV a)) -> a -> a -> (a, a)
-liftC f x y = let (a, b) = f (literal x) (literal y) in (fromJust (unliteral a), fromJust (unliteral b))
-liftS :: SymWord a => (a -> String) -> SBV a -> String
-liftS f s
-  | Just x <- unliteral s = f x
-  | True                  = show s
-
--- | Pretty print as a polynomial
-sp :: Bits a => a -> String
-sp a
- | null cs = "0" ++ t
- | True    = foldr (\x y -> sh x ++ " + " ++ y) (sh (last cs)) (init cs) ++ t
- where t  = " :: GF(2^" ++ show n ++ ")"
-       n  = bitSize a
-       is = [n-1, n-2 .. 0]
-       cs = map fst $ filter snd $ zip is (map (testBit a) is)
-       sh 0 = "1"
-       sh 1 = "x"
-       sh i = "x^" ++ show i
-
--- | Add two polynomials
-addPoly :: [SBool] -> [SBool] -> [SBool]
-addPoly xs    []      = xs
-addPoly []    ys      = ys
-addPoly (x:xs) (y:ys) = x <+> y : addPoly xs ys
-
-ites :: SBool -> [SBool] -> [SBool] -> [SBool]
-ites s xs ys
- | Just t <- unliteral s
- = if t then xs else ys
- | True
- = go xs ys
- where go [] []         = []
-       go []     (b:bs) = ite s false b : go [] bs
-       go (a:as) []     = ite s a false : go as []
-       go (a:as) (b:bs) = ite s a b : go as bs
-
--- | Multiply two polynomials and reduce by the third (concrete) irreducible, given by its coefficients.
--- See the remarks for the 'pMult' function for this design choice
-polyMult :: (Bits a, SymWord a, FromBits (SBV a)) => (SBV a, SBV a, [Int]) -> SBV a
-polyMult (x, y, red) = fromBitsLE $ genericTake sz $ r ++ repeat false
-  where (_, r) = mdp ms rs
-        ms = genericTake (2*sz) $ mul (blastLE x) (blastLE y) [] ++ repeat false
-        rs = genericTake (2*sz) $ [if i `elem` red then true else false |  i <- [0 .. foldr max 0 red] ] ++ repeat false
-        sz = sizeOf x
-        mul _  []     ps = ps
-        mul as (b:bs) ps = mul (false:as) bs (ites b (as `addPoly` ps) ps)
-
-polyDivMod :: (Bits a, SymWord a, FromBits (SBV a)) => SBV a -> SBV a -> (SBV a, SBV a)
-polyDivMod x y = ite (y .== 0) (0, x) (adjust d, adjust r)
-   where adjust xs = fromBitsLE $ genericTake sz $ xs ++ repeat false
-         sz     = sizeOf x
-         (d, r) = mdp (blastLE x) (blastLE y)
-
--- conservative over-approximation of the degree
-degree :: [SBool] -> Int
-degree xs = walk (length xs - 1) $ reverse xs
-  where walk n []     = n
-        walk n (b:bs)
-         | Just t <- unliteral b
-         = if t then n else walk (n-1) bs
-         | True
-         = n -- over-estimate
-
-mdp :: [SBool] -> [SBool] -> ([SBool], [SBool])
-mdp xs ys = go (length ys - 1) (reverse ys)
-  where degTop  = degree xs
-        go _ []     = error "SBV.Polynomial.mdp: Impossible happened; exhausted ys before hitting 0"
-        go n (b:bs)
-         | n == 0   = (reverse qs, rs)
-         | True     = let (rqs, rrs) = go (n-1) bs
-                      in (ites b (reverse qs) rqs, ites b rs rrs)
-         where degQuot = degTop - n
-               ys' = replicate degQuot false ++ ys
-               (qs, rs) = divx (degQuot+1) degTop xs ys'
-
--- return the element at index i; if not enough elements, return false
--- N.B. equivalent to '(xs ++ repeat false) !! i', but more efficient
-idx :: [SBool] -> Int -> SBool
-idx []     _ = false
-idx (x:_)  0 = x
-idx (_:xs) i = idx xs (i-1)
-
-divx :: Int -> Int -> [SBool] -> [SBool] -> ([SBool], [SBool])
-divx n _ xs _ | n <= 0 = ([], xs)
-divx n i xs ys'        = (q:qs, rs)
-  where q        = xs `idx` i
-        xs'      = ites q (xs `addPoly` ys') xs
-        (qs, rs) = divx (n-1) (i-1) xs' (tail ys')
diff --git a/Temp/sbv-0.9.18/Data/SBV/BitVectors/PrettyNum.hs b/Temp/sbv-0.9.18/Data/SBV/BitVectors/PrettyNum.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/BitVectors/PrettyNum.hs
+++ /dev/null
@@ -1,120 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.BitVectors.PrettyNum
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Number representations in hex/bin
------------------------------------------------------------------------------
-
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE PatternGuards #-}
-
-module Data.SBV.BitVectors.PrettyNum (PrettyNum(..), readBin, shex, sbin) where
-
-import Data.Char  (ord)
-import Data.Int   (Int8, Int16, Int32, Int64)
-import Data.List  (isPrefixOf)
-import Data.Maybe (fromJust)
-import Data.Word  (Word8, Word16, Word32, Word64)
-import Numeric    (showIntAtBase, showHex, readInt)
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.BitVectors.Model () -- instances only
-
--- | PrettyNum class captures printing of numbers in hex and binary formats; also supporting negative numbers.
---
--- Minimal complete definition: 'hexS' and 'binS'
-class PrettyNum a where
-  -- | Show a number in hexadecimal (starting with @0x@ and type.)
-  hexS :: a -> String
-  -- | Show a number in binary (starting with @0b@ and type.)
-  binS :: a -> String
-  -- | Show a number in hex, without prefix, or types.
-  hex :: a -> String
-  -- | Show a number in bin, without prefix, or types.
-  bin :: a -> String
-
--- Why not default methods? Because defaults need "Integral a" but Bool is not..
-instance PrettyNum Bool where
-  {hexS = show; binS = show; hex = show; bin = show}
-instance PrettyNum Word8 where
-  {hexS = shex True True (False,8) ; binS = sbin True True (False,8) ; hex = shex False False (False,8) ; bin = sbin False False (False,8) ;}
-instance PrettyNum Int8 where
-  {hexS = shex True True (True,8)  ; binS = sbin True True (True,8)  ; hex = shex False False (True,8)  ; bin = sbin False False (True,8)  ;}
-instance PrettyNum Word16 where
-  {hexS = shex True True (False,16); binS = sbin True True (False,16); hex = shex False False (False,16); bin = sbin False False (False,16);}
-instance PrettyNum Int16  where
-  {hexS = shex True True (True,16);  binS = sbin True True (True,16) ; hex = shex False False (True,16);  bin = sbin False False (True,16) ;}
-instance PrettyNum Word32 where
-  {hexS = shex True True (False,32); binS = sbin True True (False,32); hex = shex False False (False,32); bin = sbin False False (False,32);}
-instance PrettyNum Int32  where
-  {hexS = shex True True (True,32);  binS = sbin True True (True,32) ; hex = shex False False (True,32);  bin = sbin False False (True,32) ;}
-instance PrettyNum Word64 where
-  {hexS = shex True True (False,64); binS = sbin True True (False,64); hex = shex False False (False,64); bin = sbin False False (False,64);}
-instance PrettyNum Int64  where
-  {hexS = shex True True (True,64);  binS = sbin True True (True,64) ; hex = shex False False (True,64);  bin = sbin False False (True,64) ;}
-
-instance PrettyNum CW where
-  hexS cw | cwIsBit cw  = hexS (cwToBool cw)
-  hexS cw               = shex True True (hasSign cw, sizeOf cw) (cwVal cw)
-
-  binS cw | cwIsBit cw  = binS (cwToBool cw)
-  binS cw               = sbin True True (hasSign cw, sizeOf cw) (cwVal cw)
-
-  hex cw | cwIsBit cw   = hexS (cwToBool cw)
-  hex cw                = shex False False (hasSign cw, sizeOf cw) (cwVal cw)
-
-  bin cw | cwIsBit cw   = binS (cwToBool cw)
-  bin cw                = sbin False False (hasSign cw, sizeOf cw) (cwVal cw)
-
-instance (SymWord a, PrettyNum a) => PrettyNum (SBV a) where
-  hexS s = maybe (show s) (hexS :: a -> String) $ unliteral s
-  binS s = maybe (show s) (binS :: a -> String) $ unliteral s
-  hex  s = maybe (show s) (hex :: a -> String)  $ unliteral s
-  bin  s = maybe (show s) (bin :: a -> String)  $ unliteral s
-
-shex :: (Integral a) => Bool -> Bool -> (Bool, Size) -> a -> String
-shex shType shPre (signed, size) a
- | a < 0
- = "-" ++ pre ++ pad l (s16 (abs ((fromIntegral a) :: Integer)))  ++ t
- | True
- =  pre ++ pad l (s16 a) ++ t
- where t | shType = " :: " ++ (if signed then "Int" else "Word") ++ show size
-         | True   = ""
-       pre | shPre = "0x"
-           | True  = ""
-       l = (size + 3) `div` 4
-
-sbin :: (Integral a) => Bool -> Bool -> (Bool, Size) -> a -> String
-sbin shType shPre (signed,size) a
- | a < 0
- = "-" ++ pre ++ pad size (s2 (abs ((fromIntegral a) :: Integer)))  ++ t
- | True
- =  pre ++ pad size (s2 a) ++ t
- where t | shType = " :: " ++ (if signed then "Int" else "Word") ++ show size
-         | True   = ""
-       pre | shPre = "0b"
-           | True  = ""
-
-pad :: Int -> String -> String
-pad l s = replicate (l - length s) '0' ++ s
-
-s2, s16 :: Integral a => a -> String
-s2  v = showIntAtBase 2 dig v "" where dig = fromJust . flip lookup [(0, '0'), (1, '1')]
-s16 v = showHex v ""
-
--- | A more convenient interface for reading binary numbers, also supports negative numbers
-readBin :: Num a => String -> a
-readBin ('-':s) = -(readBin s)
-readBin s = case readInt 2 isDigit cvt s' of
-              [(a, "")] -> a
-              _         -> error $ "SBV.readBin: Cannot read a binary number from: " ++ show s
-  where cvt c = ord c - ord '0'
-        isDigit = (`elem` "01")
-        s' | "0b" `isPrefixOf` s = drop 2 s
-           | True                = s
diff --git a/Temp/sbv-0.9.18/Data/SBV/BitVectors/Splittable.hs b/Temp/sbv-0.9.18/Data/SBV/BitVectors/Splittable.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/BitVectors/Splittable.hs
+++ /dev/null
@@ -1,153 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.BitVectors.Splittable
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Implementation of bit-vector concatanetation and splits
------------------------------------------------------------------------------
-
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE BangPatterns #-}
-
-module Data.SBV.BitVectors.Splittable (Splittable(..), FromBits(..)) where
-
-import Data.Bits (Bits(..))
-import Data.Word (Word8, Word16, Word32, Word64)
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.BitVectors.Model
-
-infixr 5 #
--- | Splitting an @a@ into two @b@'s and joining back.
--- Intuitively, @a@ is a larger bit-size word than @b@, typically double.
--- The 'extend' operation captures embedding of a @b@ value into an @a@
--- without changing its semantic value.
---
--- Minimal complete definition: All, no defaults.
-class Splittable a b | b -> a where
-  split  :: a -> (b, b)
-  (#)    :: b -> b -> a
-  extend :: b -> a
-
-genSplit :: (Integral a, Num b) => Int -> a -> (b, b)
-genSplit ss x = (fromIntegral ((ix `shiftR` ss) .&. mask), fromIntegral (ix .&. mask))
-  where ix = toInteger x
-        mask = 2 ^ ss - 1
-
-genJoin :: (Integral b, Num a) => Int -> b -> b -> a
-genJoin ss x y = fromIntegral ((ix `shiftL` ss) .|. iy)
-  where ix = toInteger x
-        iy = toInteger y
-
--- concrete instances
-instance Splittable Word64 Word32 where
-  split = genSplit 32
-  (#)   = genJoin  32
-  extend b = 0 # b
-
-instance Splittable Word32 Word16 where
-  split = genSplit 16
-  (#)   = genJoin  16
-  extend b = 0 # b
-
-instance Splittable Word16 Word8 where
-  split = genSplit 8
-  (#)   = genJoin  8
-  extend b = 0 # b
-
-cwSplit :: (SymWord a, Num a) => CW -> (SBV a, SBV a)
-cwSplit z = (literal x, literal y)
-  where (x,y) = genSplit (sizeOf z `div` 2) (cwVal z)
-
-cwJoin :: (SymWord a, Num a) => CW -> CW -> SBV a
-cwJoin x y = literal (genJoin (sizeOf x) (cwVal x) (cwVal y))
-
--- symbolic instances
-instance Splittable SWord64 SWord32 where
-  split (SBV _ (Left z)) = cwSplit z
-  split z = (SBV (False, 32) (Right (cache x)), SBV (False, 32) (Right (cache y)))
-    where x st = do zsw <- sbvToSW st z
-                    newExpr st (False, 32) (SBVApp (Extract 63 32) [zsw])
-          y st = do zsw <- sbvToSW st z
-                    newExpr st (False, 32) (SBVApp (Extract 31  0) [zsw])
-  (SBV _ (Left a)) # (SBV _ (Left b)) = cwJoin a b
-  a # b = SBV (False, 64) (Right (cache c))
-    where c st = do asw <- sbvToSW st a
-                    bsw <- sbvToSW st b
-                    newExpr st (False, 64) (SBVApp Join [asw, bsw])
-  extend b = 0 # b
-
-instance Splittable SWord32 SWord16 where
-  split (SBV _ (Left z)) = cwSplit z
-  split z                      = (SBV (False, 16) (Right (cache x)), SBV (False, 16) (Right (cache y)))
-    where x st = do zsw <- sbvToSW st z
-                    newExpr st (False, 16) (SBVApp (Extract 31 16) [zsw])
-          y st = do zsw <- sbvToSW st z
-                    newExpr st (False, 16) (SBVApp (Extract 15  0) [zsw])
-  (SBV _ (Left a)) # (SBV _ (Left b)) = cwJoin a b
-  a # b = SBV (False, 32) (Right (cache c))
-    where c st = do asw <- sbvToSW st a
-                    bsw <- sbvToSW st b
-                    newExpr st (False, 32) (SBVApp Join [asw, bsw])
-  extend b = 0 # b
-
-instance Splittable SWord16 SWord8 where
-  split (SBV _ (Left z)) = cwSplit z
-  split z                = (SBV (False, 8) (Right (cache x)), SBV (False, 8) (Right (cache y)))
-    where x st = do zsw <- sbvToSW st z
-                    newExpr st (False, 8) (SBVApp (Extract 15 8) [zsw])
-          y st = do zsw <- sbvToSW st z
-                    newExpr st (False, 8) (SBVApp (Extract  7 0) [zsw])
-  (SBV _ (Left a)) # (SBV _ (Left b)) = cwJoin a b
-  a # b = SBV (False, 16) (Right (cache c))
-    where c st = do asw <- sbvToSW st a
-                    bsw <- sbvToSW st b
-                    newExpr st (False, 16) (SBVApp Join [asw, bsw])
-  extend b = 0 # b
-
--- | Unblasting a value from symbolic-bits. The bits can be given little-endian
--- or big-endian. For a signed number in little-endian, we assume the very last bit
--- is the sign digit. This is a bit awkward, but it is more consistent with the "reverse" view of
--- little-big-endian representations
---
--- Minimal complete definiton: 'fromBitsLE'
-class FromBits a where
- fromBitsLE, fromBitsBE :: [SBool] -> a
- fromBitsBE = fromBitsLE . reverse
-
--- | Construct a symbolic word from its bits given in little-endian
-fromBinLE :: (Bits a, SymWord a) => [SBool] -> SBV a
-fromBinLE = go 0 0
-  where go !acc _  []     = acc
-        go !acc !i (x:xs) = go (ite x (setBit acc i) acc) (i+1) xs
-
--- | Perform a sanity check that we should receive precisely the same
--- number of bits as required by the resulting type. The input is little-endian
-checkAndConvert :: (Bits a, SymWord a) => Int -> [SBool] -> SBV a
-checkAndConvert sz xs
-  | sz /= l
-  = error $ "SBV.fromBits.SWord" ++ ssz ++ ": Expected " ++ ssz ++ " elements, got: " ++ show l
-  | True
-  = fromBinLE xs
-  where l   = length xs
-        ssz = show sz
-
-instance FromBits SBool where
- fromBitsLE [x] = x
- fromBitsLE xs  = error $ "SBV.fromBits.SBool: Expected 1 element, got: " ++ show (length xs)
-
-instance FromBits SWord8  where fromBitsLE = checkAndConvert  8
-instance FromBits SInt8   where fromBitsLE = checkAndConvert  8
-instance FromBits SWord16 where fromBitsLE = checkAndConvert 16
-instance FromBits SInt16  where fromBitsLE = checkAndConvert 16
-instance FromBits SWord32 where fromBitsLE = checkAndConvert 32
-instance FromBits SInt32  where fromBitsLE = checkAndConvert 32
-instance FromBits SWord64 where fromBitsLE = checkAndConvert 64
-instance FromBits SInt64  where fromBitsLE = checkAndConvert 64
diff --git a/Temp/sbv-0.9.18/Data/SBV/Compilers/C.hs b/Temp/sbv-0.9.18/Data/SBV/Compilers/C.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Compilers/C.hs
+++ /dev/null
@@ -1,568 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Compilers.C
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Compilation of symbolic programs to C
------------------------------------------------------------------------------
-
-{-# LANGUAGE PatternGuards #-}
-
-module Data.SBV.Compilers.C(compileToC, compileToCLib, compileToC', compileToCLib') where
-
-import Data.Char (isSpace)
-import Data.Maybe (isJust)
-import qualified Data.Foldable as F (toList)
-import Text.PrettyPrint.HughesPJ
-import System.FilePath (takeBaseName, replaceExtension)
-import System.Random
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.BitVectors.PrettyNum(shex)
-import Data.SBV.Compilers.CodeGen
-
----------------------------------------------------------------------------
--- * API
----------------------------------------------------------------------------
-
--- | Given a symbolic computation, render it as an equivalent collection of files
--- that make up a C program:
---
---   * The first argument is the directory name under which the files will be saved. To save
---     files in the current directory pass @'Just' \".\"@. Use 'Nothing' for printing to stdout.
---
---   * The second argument is the name of the C function to generate.
---
---   * The final argument is the function to be compiled.
---
--- Compilation will also generate a @Makefile@,  a header file, and a driver (test) program, etc.
-compileToC :: Maybe FilePath -> String -> SBVCodeGen () -> IO ()
-compileToC mbDirName nm f = compileToC' nm f >>= renderCgPgmBundle mbDirName
-
--- | Lower level version of 'compileToC', producing a 'CgPgmBundle'
-compileToC' :: String -> SBVCodeGen () -> IO CgPgmBundle
-compileToC' nm f = do rands <- newStdGen >>= return . randoms
-                      codeGen SBVToC (defaultCgConfig { cgDriverVals = rands }) nm f
-
--- | Create code to generate a library archive (.a) from given symbolic functions. Useful when generating code
--- from multiple functions that work together as a library.
---
---   * The first argument is the directory name under which the files will be saved. To save
---     files in the current directory pass @'Just' \".\"@. Use 'Nothing' for printing to stdout.
---
---   * The second argument is the name of the archive to generate.
---
---   * The third argument is the list of functions to include, in the form of function-name/code pairs, similar
---     to the second and third arguments of 'compileToC', except in a list.
-compileToCLib :: Maybe FilePath -> String -> [(String, SBVCodeGen ())] -> IO ()
-compileToCLib mbDirName libName comps = compileToCLib' libName comps >>= renderCgPgmBundle mbDirName
-
--- | Lower level version of 'compileToCLib', producing a 'CgPgmBundle'
-compileToCLib' :: String -> [(String, SBVCodeGen ())] -> IO CgPgmBundle
-compileToCLib' libName comps = mergeToLib libName `fmap` mapM (uncurry compileToC') comps
-
----------------------------------------------------------------------------
--- * Implementation
----------------------------------------------------------------------------
-
--- token for the target language
-data SBVToC = SBVToC
-
-instance CgTarget SBVToC where
-  targetName _ = "C"
-  translate _  = cgen
-
--- Unexpected input, or things we will probably never support
-die :: String -> a
-die msg = error $ "SBV->C: Unexpected: " ++ msg
-
--- Unsupported features, or features TBD
-tbd :: String -> a
-tbd msg = error $ "SBV->C: Not yet supported: " ++ msg
-
-cgen :: Bool -> [Integer] -> String -> CgState -> Result -> CgPgmBundle
-cgen rtc randVals nm st sbvProg = CgPgmBundle
-        [ ("Makefile",  (CgMakefile,     [genMake   nm nmd]))
-        , (nm  ++ ".h", (CgHeader [sig], [genHeader nm [sig]]))
-        , (nmd ++ ".c", (CgDriver,       genDriver randVals nm ins outs mbRet))
-        , (nm  ++ ".c", (CgSource,       genCProg rtc nm sig sbvProg ins outs mbRet))
-        ]
-  where nmd = nm ++ "_driver"
-        sig = pprCFunHeader nm ins outs mbRet
-        ins      = cgInputs st
-        outs     = cgOutputs st
-        mbRet    = case cgReturns st of
-                     []           -> Nothing
-                     [CgAtomic o] -> Just o
-                     [CgArray _]  -> tbd $ "Non-atomic return values"
-                     _            -> tbd $ "Multiple return values"
-
--- | Pretty print a functions type. If there is only one output, we compile it
--- as a function that returns that value. Otherwise, we compile it as a void function
--- that takes return values as pointers to be updated.
-pprCFunHeader :: String -> [(String, CgVal)] -> [(String, CgVal)] -> Maybe SW -> Doc
-pprCFunHeader fn ins outs mbRet = retType <+> text fn <> parens (fsep (punctuate comma (map mkParam ins ++ map mkPParam outs)))
-  where retType = case mbRet of
-                   Nothing -> text "void"
-                   Just sw -> pprCWord False (hasSign sw, sizeOf sw)
-
-mkParam, mkPParam :: (String, CgVal) -> Doc
-mkParam  (n, CgAtomic sw)     = let sgsz = (hasSign sw, sizeOf sw) in pprCWord True  sgsz <+> text n
-mkParam  (_, CgArray  [])     = die $ "mkParam: CgArray with no elements!"
-mkParam  (n, CgArray  (sw:_)) = let sgsz = (hasSign sw, sizeOf sw) in pprCWord True  sgsz <+> text "*" <> text n
-mkPParam (n, CgAtomic sw)     = let sgsz = (hasSign sw, sizeOf sw) in pprCWord False sgsz <+> text "*" <> text n
-mkPParam (_, CgArray  [])     = die $ "mPkParam: CgArray with no elements!"
-mkPParam (n, CgArray  (sw:_)) = let sgsz = (hasSign sw, sizeOf sw) in pprCWord False sgsz <+> text "*" <> text n
-
--- | Renders as "const SWord8 s0", etc. the first parameter is the width of the typefield
-declSW :: Int -> SW -> Doc
-declSW w sw@(SW sgsz _) = text "const" <+> pad (showCType sgsz) <+> text (show sw)
-  where pad s = text $ s ++ take (w - length s) (repeat ' ')
-
--- | Renders as "s0", etc, or the corresponding constant
-showSW :: [(SW, CW)] -> SW -> Doc
-showSW consts sw
-  | sw == falseSW                 = text "0"
-  | sw == trueSW                  = text "1"
-  | Just cw <- sw `lookup` consts = showConst cw
-  | True                          = text $ show sw
-
--- | Words as it would be defined in the standard header stdint.h
-pprCWord :: Bool -> (Bool, Int) -> Doc
-pprCWord cnst sgsz = (if cnst then text "const" else empty) <+> text (showCType sgsz)
-
-showCType :: (Bool, Int) -> String
-showCType (False, 1) = "SBool"
-showCType (s, sz)
-  | sz `elem` [8, 16, 32, 64] = t
-  | True                      = die $ "Non-regular bitvector type: " ++ t
- where t = (if s then "SInt" else "SWord") ++ show sz
-
--- | The printf specifier for the type
-specifier :: (Bool, Int) -> Doc
-specifier (False,  1) = text "%d"
-specifier (False,  8) = text "%\"PRIu8\""
-specifier (True,   8) = text "%\"PRId8\""
-specifier (False, 16) = text "0x%04\"PRIx16\"U"
-specifier (True,  16) = text "%\"PRId16\""
-specifier (False, 32) = text "0x%08\"PRIx32\"UL"
-specifier (True,  32) = text "%\"PRId32\"L"
-specifier (False, 64) = text "0x%016\"PRIx64\"ULL"
-specifier (True,  64) = text "%\"PRId64\"LL"
-specifier (s, sz)     = die $ "Format specifier at type " ++ (if s then "SInt" else "SWord") ++ show sz
-
--- | Make a constant value of the given type. We don't check for out of bounds here, as it should not be needed.
---   There are many options here, using binary, decimal, etc. We simply
---   8-bit or less constants using decimal; otherwise we use hex.
---   Note that this automatically takes care of the boolean (1-bit) value problem, since it
---   shows the result as an integer, which is OK as far as C is concerned.
-mkConst :: Integer -> (Bool, Int) -> Doc
-mkConst i   (False,  1) = integer i
-mkConst i   (False,  8) = integer i
-mkConst i   (True,   8) = integer i
-mkConst i t@(False, 16) = text (shex False True t i) <> text "U"
-mkConst i t@(True,  16) = text (shex False True t i)
-mkConst i t@(False, 32) = text (shex False True t i) <> text "UL"
-mkConst i t@(True,  32) = text (shex False True t i) <> text "L"
-mkConst i t@(False, 64) = text (shex False True t i) <> text "ULL"
-mkConst i t@(True,  64) = text (shex False True t i) <> text "LL"
-mkConst i   (True,  1)  = die $ "Signed 1-bit value " ++ show i
-mkConst i   (s, sz)     = die $ "Constant " ++ show i ++ " at type " ++ (if s then "SInt" else "SWord") ++ show sz
-
--- | Show a constant
-showConst :: CW -> Doc
-showConst cw = mkConst (cwVal cw) (hasSign cw, sizeOf cw)
-
--- | Generate a makefile
-genMake :: String -> String -> Doc
-genMake fn dn =
-     text "# Makefile for" <+> nm <> text ". Automatically generated by SBV. Do not edit!"
-  $$ text ""
-  $$ text "CC=gcc"
-  $$ text "CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer"
-  $$ text ""
-  $$ text "all:" <+> nmd
-  $$ text ""
-  $$ nmo <> text (": " ++ ppSameLine (hsep [nmc, nmh]))
-  $$ text "\t${CC} ${CCFLAGS}" <+> text "-c $< -o $@"
-  $$ text ""
-  $$ nmdo <> text ":" <+> nmdc
-  $$ text "\t${CC} ${CCFLAGS}" <+> text "-c $< -o $@"
-  $$ text ""
-  $$ nmd <> text (": " ++ ppSameLine (hsep [nmo, nmdo]))
-  $$ text "\t${CC} ${CCFLAGS}" <+> text "$^ -o $@"
-  $$ text ""
-  $$ text "clean:"
-  $$ text "\trm -f *.o"
-  $$ text ""
-  $$ text "veryclean: clean"
-  $$ text "\trm -f" <+> nmd
-  $$ text ""
- where nm   = text fn
-       nmd  = text dn
-       nmh  = nm <> text ".h"
-       nmc  = nm <> text ".c"
-       nmo  = nm <> text ".o"
-       nmdc = nmd <> text ".c"
-       nmdo = nmd <> text ".o"
-
--- | Generate the header
-genHeader :: String -> [Doc] -> Doc
-genHeader fn sigs =
-     text "/* Header file for" <+> nm <> text ". Automatically generated by SBV. Do not edit! */"
-  $$ text ""
-  $$ text "#ifndef" <+> tag
-  $$ text "#define" <+> tag
-  $$ text ""
-  $$ text "#include <inttypes.h>"
-  $$ text "#include <stdint.h>"
-  $$ text ""
-  $$ text "/* Unsigned bit-vectors */"
-  $$ text "typedef uint8_t  SBool  ;"
-  $$ text "typedef uint8_t  SWord8 ;"
-  $$ text "typedef uint16_t SWord16;"
-  $$ text "typedef uint32_t SWord32;"
-  $$ text "typedef uint64_t SWord64;"
-  $$ text ""
-  $$ text "/* Signed bit-vectors */"
-  $$ text "typedef int8_t  SInt8 ;"
-  $$ text "typedef int16_t SInt16;"
-  $$ text "typedef int32_t SInt32;"
-  $$ text "typedef int64_t SInt64;"
-  $$ text ""
-  $$ text ("/* Entry point prototype" ++ plu ++ ": */")
-  $$ vcat (map (<> semi) sigs)
-  $$ text ""
-  $$ text "#endif /*" <+> tag <+> text "*/"
-  $$ text ""
- where nm  = text fn
-       tag = text "__" <> nm <> text "__HEADER_INCLUDED__"
-       plu = if length sigs /= 1 then "s" else ""
-
-sepIf :: Bool -> Doc
-sepIf b = if b then text "" else empty
-
--- | Generate an example driver program
-genDriver :: [Integer] -> String -> [(String, CgVal)] -> [(String, CgVal)] -> Maybe SW -> [Doc]
-genDriver randVals fn inps outs mbRet = [pre, header, body, post]
- where pre    =  text "/* Example driver program for" <+> nm <> text ". */"
-              $$ text "/* Automatically generated by SBV. Edit as you see fit! */"
-              $$ text ""
-              $$ text "#include <inttypes.h>"
-              $$ text "#include <stdint.h>"
-              $$ text "#include <stdio.h>"
-       header =  text "#include" <+> doubleQuotes (nm <> text ".h")
-              $$ text ""
-              $$ text "int main(void)"
-              $$ text "{"
-       body   =  text ""
-              $$ nest 2 (   vcat (map mkInp pairedInputs)
-                      $$ vcat (map mkOut outs)
-                      $$ sepIf (not (null [() | (_, _, CgArray{}) <- pairedInputs]) || not (null outs))
-                      $$ call
-                      $$ text ""
-                      $$ (case mbRet of
-                              Just sw -> text "printf" <> parens (printQuotes (fcall <+> text "=" <+> specifier (hasSign sw, sizeOf sw) <> text "\\n")
-                                                                              <> comma <+> resultVar) <> semi
-                              Nothing -> text "printf" <> parens (printQuotes (fcall <+> text "->\\n")) <> semi)
-                      $$ vcat (map display outs)
-                      )
-       post   =   text ""
-              $+$ nest 2 (text "return 0" <> semi)
-              $$  text "}"
-              $$  text ""
-       nm = text fn
-       pairedInputs = matchRands (map abs randVals) inps
-       matchRands _      []                                   = []
-       matchRands []     _                                    = die $ "Run out of driver values!"
-       matchRands (r:rs) ((n, CgAtomic sw)              : cs) = ([mkRVal sw r], n, CgAtomic sw) : matchRands rs cs
-       matchRands _      ((n, CgArray [])               : _ ) = die $ "Unsupported empty array input " ++ show n
-       matchRands rs     ((n, a@(CgArray sws@((sw:_)))) : cs)
-          | length frs /= l                                   = die $ "Run out of driver values!"
-          | True                                              = (map (mkRVal sw) frs, n, a) : matchRands srs cs
-          where l          = length sws
-                (frs, srs) = splitAt l rs
-       mkRVal sw r = mkConst ival sgsz
-         where sgsz@(sg, sz) = (hasSign sw, sizeOf sw)
-               ival | r >= minVal && r <= maxVal = r
-                    | not sg                     = r `mod` (2^sz)
-                    | True                       = (r `mod` (2^sz)) - (2^(sz-1))
-                    where expSz, expSz', minVal, maxVal :: Integer
-                          expSz  = 2^(sz-1)
-                          expSz' = 2*expSz
-                          minVal | not sg = 0
-                                 | True   = -expSz
-                          maxVal | not sg = expSz'-1
-                                 | True   = expSz-1
-       mkInp (_,  _, CgAtomic{})         = empty  -- constant, no need to declare
-       mkInp (_,  n, CgArray [])         = die $ "Unsupported empty array value for " ++ show n
-       mkInp (vs, n, CgArray sws@(sw:_)) =  pprCWord True (hasSign sw, sizeOf sw) <+> text n <> brackets (int (length sws)) <+> text "= {"
-                                                      $$ nest 4 (fsep (punctuate comma (align vs)))
-                                                      $$ text "};"
-                                         $$ text ""
-                                         $$ text "printf" <> parens (printQuotes (text "Contents of input array" <+> text n <> text ":\\n")) <> semi
-                                         $$ display (n, CgArray sws)
-                                         $$ text ""
-       mkOut (v, CgAtomic sw)            = let sgsz = (hasSign sw, sizeOf sw) in pprCWord False sgsz <+> text v <> semi
-       mkOut (v, CgArray [])             = die $ "Unsupported empty array value for " ++ show v
-       mkOut (v, CgArray sws@(sw:_))     = pprCWord False (hasSign sw, sizeOf sw) <+> text v <> brackets (int (length sws)) <> semi
-       resultVar = text "__result"
-       call = case mbRet of
-                Nothing -> fcall <> semi
-                Just sw -> pprCWord True (hasSign sw, sizeOf sw) <+> resultVar <+> text "=" <+> fcall <> semi
-       fcall = nm <> parens (fsep (punctuate comma (map mkCVal pairedInputs ++ map mkOVal outs)))
-       mkCVal ([v], _, CgAtomic{}) = v
-       mkCVal (vs,  n, CgAtomic{}) = die $ "Unexpected driver value computed for " ++ show n ++ render (hcat vs)
-       mkCVal (_,   n, CgArray{})  = text n
-       mkOVal (n, CgAtomic{})      = text "&" <> text n
-       mkOVal (n, CgArray{})       = text n
-       display (n, CgAtomic sw)         = text "printf" <> parens (printQuotes (text " " <+> text n <+> text "=" <+> specifier (hasSign sw, sizeOf sw)
-                                                                                <> text "\\n") <> comma <+> text n) <> semi
-       display (n, CgArray [])         =  die $ "Unsupported empty array value for " ++ show n
-       display (n, CgArray sws@(sw:_)) =   text "int" <+> nctr <> semi
-                                        $$ text "for(" <> nctr <+> text "= 0; " <+> nctr <+> text "<" <+> int (length sws) <+> text "; ++" <> nctr <> text ")"
-                                        $$ nest 2 (text "printf" <> parens (printQuotes (text " " <+> entrySpec <+> text "=" <+> spec <> text "\\n")
-                                                                 <> comma <+> nctr <+> comma <> entry) <> semi)
-                  where nctr      = text n <> text "_ctr"
-                        entry     = text n <> text "[" <> nctr <> text "]"
-                        entrySpec = text n <> text "[%d]"
-                        spec      = specifier (hasSign sw, sizeOf sw)
-
--- | Generate the C program
-genCProg :: Bool -> String -> Doc -> Result -> [(String, CgVal)] -> [(String, CgVal)] -> Maybe SW -> [Doc]
-genCProg rtc fn proto (Result _ preConsts tbls arrs uints axms asgns _) inVars outVars mbRet
-  | not (null arrs)  = tbd "User specified arrays"
-  | not (null uints) = tbd "Uninterpreted constants"
-  | not (null axms)  = tbd "User given axioms"
-  | True
-  = [pre, header, post]
- where pre    = text "/* File:" <+> doubleQuotes (nm <> text ".c") <> text ". Automatically generated by SBV. Do not edit! */"
-              $$ text ""
-              $$ text "#include <inttypes.h>"
-              $$ text "#include <stdint.h>"
-       header = text "#include" <+> doubleQuotes (nm <> text ".h")
-       post   =  text ""
-              $$ proto
-              $$ text "{"
-              $$ text ""
-              $$ nest 2 (   vcat (concatMap (genIO True) inVars)
-                         $$ vcat (merge (map genTbl tbls) (map genAsgn assignments))
-                         $$ sepIf (not (null assignments) || not (null tbls))
-                         $$ vcat (concatMap (genIO False) outVars)
-                         $$ maybe empty mkRet mbRet
-                        )
-              $$ text "}"
-              $$ text ""
-       nm = text fn
-       assignments = F.toList asgns
-       typeWidth = getMax 0 [len (hasSign s, sizeOf s) | (s, _) <- assignments]
-                where len (False, 1) = 5 -- SBool
-                      len (False, n) = 5 + length (show n) -- SWordN
-                      len (True,  n) = 4 + length (show n) -- SIntN
-                      getMax 7 _      = 7  -- 7 is the max we can get with SWord64, so don't bother looking any further
-                      getMax m []     = m
-                      getMax m (x:xs) = getMax (m `max` x) xs
-       consts = (falseSW, falseCW) : (trueSW, trueCW) : preConsts
-       isConst s = isJust (lookup s consts)
-       genIO :: Bool -> (String, CgVal) -> [Doc]
-       genIO True  (cNm, CgAtomic sw) = [declSW typeWidth sw  <+> text "=" <+> text cNm         <> semi]
-       genIO False (cNm, CgAtomic sw) = [text "*" <> text cNm <+> text "=" <+> showSW consts sw <> semi]
-       genIO isInp (cNm, CgArray sws) = zipWith genElt sws [(0::Int)..]
-         where genElt sw i
-                 | isInp = declSW typeWidth sw <+> text "=" <+> text entry       <> semi
-                 | True  = text entry          <+> text "=" <+> showSW consts sw <> semi
-                 where entry = cNm ++ "[" ++ show i ++ "]"
-       mkRet sw = text "return" <+> showSW consts sw <> semi
-       genTbl :: ((Int, (Bool, Int), (Bool, Int)), [SW]) -> (Int, Doc)
-       genTbl ((i, _, (sg, sz)), elts) =  (location, static <+> pprCWord True (sg, sz) <+> text ("table" ++ show i) <> text "[] = {"
-                                                     $$ nest 4 (fsep (punctuate comma (align (map (showSW consts) elts))))
-                                                     $$ text "};")
-         where static   = if location == -1 then text "static" else empty
-               location = maximum (-1 : map getNodeId elts)
-       getNodeId s@(SW _ (NodeId n)) | isConst s = -1
-                                     | True      = n
-       genAsgn :: (SW, SBVExpr) -> (Int, Doc)
-       genAsgn (sw, n) = (getNodeId sw, declSW typeWidth sw <+> text "=" <+> ppExpr rtc consts n <> semi)
-       -- merge tables intermixed with assignments, paying attention to putting tables as
-       -- early as possible.. Note that the assignment list (second argument) is sorted on its order
-       merge :: [(Int, Doc)] -> [(Int, Doc)] -> [Doc]
-       merge []               as                  = map snd as
-       merge ts               []                  = map snd ts
-       merge ts@((i, t):trest) as@((i', a):arest)
-         | i < i'                                 = t : merge trest as
-         | True                                   = a : merge ts arest
-
-ppExpr :: Bool -> [(SW, CW)] -> SBVExpr -> Doc
-ppExpr rtc consts (SBVApp op opArgs) = p op (map (showSW consts) opArgs)
-  where cBinOps = [ (Plus, "+"), (Times, "*"), (Minus, "-")
-                  , (Equal, "=="), (NotEqual, "!=")
-                  , (LessThan, "<"), (GreaterThan, ">"), (LessEq, "<="), (GreaterEq, ">=")
-                  , (And, "&"), (Or, "|"), (XOr, "^")
-                  ]
-        p (ArrRead _)       _ = tbd $ "User specified arrays (ArrRead)"
-        p (ArrEq _ _)       _ = tbd $ "User specified arrays (ArrEq)"
-        p (Uninterpreted s) _ = tbd $ "Uninterpreted constants (" ++ show s ++ ")"
-        p (Extract i j) [a]   = extract i j (let s = head opArgs in (hasSign s, sizeOf s)) a
-        p Join [a, b]         = join (let (s1 : s2 : _) = opArgs in ((hasSign s1, sizeOf s1), (hasSign s2, sizeOf s2), a, b))
-        p (Rol i) [a]         = rotate True  i a (let s = head opArgs in (hasSign s, sizeOf s))
-        p (Ror i) [a]         = rotate False i a (let s = head opArgs in (hasSign s, sizeOf s))
-        p (Shl i) [a]         = shift True  i a (let s = head opArgs in (hasSign s, sizeOf s))
-        p (Shr i) [a]         = shift False i a (let s = head opArgs in (hasSign s, sizeOf s))
-        p Not [a] = text "~" <> a
-        p Ite [a, b, c] = a <+> text "?" <+> b <+> text ":" <+> c
-        p (LkUp (t, (as, at), _, len) ind def) []
-          | not rtc                    = lkUp -- ignore run-time-checks per user request
-          | needsCheckL && needsCheckR = cndLkUp checkBoth
-          | needsCheckL                = cndLkUp checkLeft
-          | needsCheckR                = cndLkUp checkRight
-          | True                       = lkUp
-          where [index, defVal] = map (showSW consts) [ind, def]
-                lkUp = text "table" <> int t <> brackets (showSW consts ind)
-                cndLkUp cnd = cnd <+> text "?" <+> defVal <+> text ":" <+> lkUp
-                checkLeft  = index <+> text "< 0"
-                checkRight = index <+> text ">=" <+> int len
-                checkBoth  = parens (checkLeft <+> text "||" <+> checkRight)
-                (needsCheckL, needsCheckR) | as   = (True,  (2::Integer)^(at-1)-1  >= (fromIntegral len))
-                                           | True = (False, (2::Integer)^(at)  -1  >= (fromIntegral len))
-        -- Div/Rem should be careful on 0, in the SBV world x `div` 0 is 0, x `rem` 0 is x
-        p Quot [a, b] = parens (b <+> text "== 0") <+> text "?" <+> text "0" <+> text ":" <+> parens (a <+> text "/" <+> b)
-        p Rem  [a, b] = parens (b <+> text "== 0") <+> text "?" <+>    a     <+> text ":" <+> parens (a <+> text "%" <+> b)
-        p o [a, b]
-          | Just co <- lookup o cBinOps
-          = a <+> text co <+> b
-        p o args = die $ "Received operator " ++ show o ++ " applied to " ++ show args
-        shift toLeft i a (sg, sz)
-          | i < 0   = shift (not toLeft) (-i) a (sg, sz)
-          | i == 0  = a
-          | i >= sz = mkConst 0 (sg, sz)
-          | True    = a <+> text cop <+> int i
-          where cop | toLeft = "<<"
-                    | True   = ">>"
-        rotate toLeft i a (True, sz)
-          = tbd $ "Rotation of signed words at size " ++ show (toLeft, i, a, sz)
-        rotate toLeft i a (False, sz)
-          | i < 0   = rotate (not toLeft) (-i) a (False, sz)
-          | i == 0  = a
-          | i >= sz = rotate toLeft (i `mod` sz) a (False, sz)
-          | True    =     parens (a <+> text cop  <+> int i)
-                      <+> text "|"
-                      <+> parens (a <+> text cop' <+> int (sz - i))
-          where (cop, cop') | toLeft = ("<<", ">>")
-                            | True   = (">>", "<<")
-        -- TBD: below we only support the values that SBV actually currently generates.
-        -- we would need to add new ones if we generate others. (Check instances in Data/SBV/BitVectors/Splittable.hs).
-        extract 63 32 (False, 64) a = text "(SWord32)" <+> (parens (a <+> text ">> 32"))
-        extract 31  0 (False, 64) a = text "(SWord32)" <+> a
-        extract 31 16 (False, 32) a = text "(SWord16)" <+> (parens (a <+> text ">> 16"))
-        extract 15  0 (False, 32) a = text "(SWord16)" <+> a
-        extract 15  8 (False, 16) a = text "(SWord8)"  <+> (parens (a <+> text ">> 8"))
-        extract  7  0 (False, 16) a = text "(SWord8)"  <+> a
-        extract  i  j (sg, sz)    _ = tbd $ "extract with " ++ show (i, j, (sg, sz))
-        -- TBD: ditto here for join, just like extract above
-        join ((False,  8), (False,  8), a, b) = parens ((parens (text "(SWord16)" <+> a)) <+> text "<< 8")  <+> text "|" <+> parens (text "(SWord16)" <+> b)
-        join ((False, 16), (False, 16), a, b) = parens ((parens (text "(SWord32)" <+> a)) <+> text "<< 16") <+> text "|" <+> parens (text "(SWord32)" <+> b)
-        join ((False, 32), (False, 32), a, b) = parens ((parens (text "(SWord64)" <+> a)) <+> text "<< 32") <+> text "|" <+> parens (text "(SWord64)" <+> b)
-        join (sgsz1, sgsz2, _, _)             = tbd $ "join with " ++ show (sgsz1, sgsz2)
-
--- same as doubleQuotes, except we have to make sure there are no line breaks..
--- Otherwise breaks the generated code.. sigh
-printQuotes :: Doc -> Doc
-printQuotes d = text $ '"' : ppSameLine d ++ "\""
-
--- Remove newlines.. Useful when generating Makefile and such
-ppSameLine :: Doc -> String
-ppSameLine = trim . render
- where trim ""        = ""
-       trim ('\n':cs) = ' ' : trim (dropWhile isSpace cs)
-       trim (c:cs)    = c   : trim cs
-
--- Align a bunch of docs to occupy the exact same length by padding in the left by space
--- this is ugly and inefficient, but easy to code..
-align :: [Doc] -> [Doc]
-align ds = map (text . pad) ss
-  where ss    = map render ds
-        l     = maximum (0 : map length ss)
-        pad s = take (l - length s) (repeat ' ') ++ s
-
--- | Merge a bunch of bundles to generate code for a library
-mergeToLib :: String -> [CgPgmBundle] -> CgPgmBundle
-mergeToLib libName bundles = CgPgmBundle $ sources ++ [libHeader, libDriver, libMake]
-  where files       = concat [fs | CgPgmBundle fs <- bundles]
-        sigs        = concat [ss | (_, (CgHeader ss, _)) <- files]
-        drivers     = [ds | (_, (CgDriver, ds)) <- files]
-        sources     = [(f, (CgSource, [pre, libHInclude, post])) | (f, (CgSource, [pre, _, post])) <- files]
-        sourceNms   = map fst sources
-        libHeader   = (libName ++ ".h", (CgHeader sigs, [genHeader libName sigs]))
-        libHInclude = text "#include" <+> text (show (libName ++ ".h"))
-        libMake     = ("Makefile", (CgMakefile, [genLibMake libName sourceNms]))
-        libDriver   = (libName ++ "_driver.c", (CgDriver, mergeDrivers libName libHInclude (zip (map takeBaseName sourceNms) drivers)))
-
--- | Create a Makefile for the library
-genLibMake :: String -> [String] -> Doc
-genLibMake libName fs =
-     text "# Makefile for" <+> nm <> text ". Automatically generated by SBV. Do not edit!"
-  $$ text ""
-  $$ text "CC=gcc"
-  $$ text "CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer"
-  $$ text "AR=ar"
-  $$ text "ARFLAGS=cr"
-  $$ text ""
-  $$ text ("all: " ++ unwords [liba, libd])
-  $$ text ""
-  $$ text liba <> text (": " ++ unwords os)
-  $$ text "\t${AR} ${ARFLAGS} $@ $^"
-  $$ text ""
-  $$ text libd <> text (": " ++ unwords [libd ++ ".c", libh])
-  $$ text ("\t${CC} ${CCFLAGS} $< -o $@ " ++ liba)
-  $$ text ""
-  $$ vcat (zipWith mkObj os fs)
-  $$ text "clean:"
-  $$ text "\trm -f *.o"
-  $$ text ""
-  $$ text "veryclean: clean"
-  $$ text "\trm -f" <+> text (unwords [liba, libd])
-  $$ text ""
- where nm = text libName
-       liba = libName ++ ".a"
-       libh = libName ++ ".h"
-       libd = libName ++ "_driver"
-       os   = map (flip replaceExtension ".o") fs
-       mkObj o f =  text o <> text (":" ++ unwords [f, libh])
-                 $$ text "\t${CC} ${CCFLAGS} -c $< -o $@"
-                 $$ text ""
-
--- | Create a driver for a library
-mergeDrivers :: String -> Doc -> [(FilePath, [Doc])] -> [Doc]
-mergeDrivers libName inc ds = pre : concatMap mkDFun ds ++ [callDrivers (map fst ds)]
-  where pre =  text "/* Example driver program for" <+> text libName <> text ". */"
-            $$ text "/* Automatically generated by SBV. Edit as you see fit! */"
-            $$ text ""
-            $$ text "#include <inttypes.h>"
-            $$ text "#include <stdint.h>"
-            $$ text "#include <stdio.h>"
-            $$ inc
-        mkDFun (f, [_pre, _header, body, _post]) = [header, body, post]
-           where header =  text ""
-                        $$ text ("void " ++ f ++ "_driver(void)")
-                        $$ text "{"
-                 post   =  text "}"
-        mkDFun (f, _) = die $ "mergeDrivers: non-conforming driver program for " ++ show f
-        callDrivers fs =   text ""
-                       $$  text "int main(void)"
-                       $$  text "{"
-                       $+$ nest 2 (vcat (map call fs))
-                       $$  nest 2 (text "return 0;")
-                       $$  text "}"
-        call f =  text psep
-               $$ text ptag
-               $$ text psep
-               $$ text (f ++ "_driver();")
-               $$ text ""
-           where tag  = "** Driver run for " ++ f ++ ":"
-                 ptag = "printf(\"" ++ tag ++ "\\n\");"
-                 lsep = take (length tag) (repeat '=')
-                 psep = "printf(\"" ++ lsep ++ "\\n\");"
diff --git a/Temp/sbv-0.9.18/Data/SBV/Compilers/CodeGen.hs b/Temp/sbv-0.9.18/Data/SBV/Compilers/CodeGen.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Compilers/CodeGen.hs
+++ /dev/null
@@ -1,179 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Compilers.CodeGen
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Code generation utilities
------------------------------------------------------------------------------
-
-{-# LANGUAGE FlexibleInstances          #-}
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
-module Data.SBV.Compilers.CodeGen where
-
-import Control.Monad.Trans
-import Control.Monad.State.Lazy
-import Data.Char (toLower)
-import Data.List (nub, isPrefixOf, intersperse, (\\))
-import System.Directory (createDirectory, doesDirectoryExist, doesFileExist)
-import System.FilePath ((</>))
-import Text.PrettyPrint.HughesPJ (Doc, render, vcat)
-
-import Data.SBV.BitVectors.Data
-
--- | Abstract over code generation for different languages
-class CgTarget a where
-  targetName :: a -> String
-  translate  :: a -> Bool -> [Integer] -> String -> CgState -> Result -> CgPgmBundle
-
--- | Options for code-generation.
-data CgConfig = CgConfig {
-          cgRTC        :: Bool          -- ^ If 'True', perform run-time-checks for index-out-of-bounds or shifting-by-large values etc.
-        , cgDriverVals :: [Integer]     -- ^ Values to use for the driver program generated, useful for generating non-random drivers.
-        }
-
--- | Default options for code generation. The run-time checks are turned-off, and the driver values are completely random.
-defaultCgConfig :: CgConfig
-defaultCgConfig = CgConfig { cgRTC = False, cgDriverVals = [] }
-
--- | Abstraction of target language values
-data CgVal = CgAtomic SW
-           | CgArray  [SW]
-
-data CgState = CgState {
-          cgInputs       :: [(String, CgVal)]
-        , cgOutputs      :: [(String, CgVal)]
-        , cgReturns      :: [CgVal]
-        , cgFinalConfig  :: CgConfig
-        }
-
-initCgState :: CgState
-initCgState = CgState {
-          cgInputs       = []
-        , cgOutputs      = []
-        , cgReturns      = []
-        , cgFinalConfig  = defaultCgConfig
-        }
-
--- | The code-generation monad. Allows for precise layout of input values
--- reference parameters (for returning composite values in languages such as C),
--- and return values.
-newtype SBVCodeGen a = SBVCodeGen (StateT CgState Symbolic a)
-                   deriving (Monad, MonadIO, MonadState CgState)
-
--- Reach into symbolic monad..
-liftSymbolic :: Symbolic a -> SBVCodeGen a
-liftSymbolic = SBVCodeGen . lift
-
--- Reach into symbolic monad and output a value. Returns the corresponding SW
-cgSBVToSW :: SBV a -> SBVCodeGen SW
-cgSBVToSW = liftSymbolic . sbvToSymSW
-
--- | Sets RTC (run-time-checks) for index-out-of-bounds, shift-with-large value etc. on/off.
-cgPerformRTCs :: Bool -> SBVCodeGen ()
-cgPerformRTCs b = modify (\s -> s { cgFinalConfig = (cgFinalConfig s) { cgRTC = b } })
-
--- | Sets driver program run time values, useful for generating programs with fixed drivers for testing.
-cgSetDriverValues :: [Integer] -> SBVCodeGen ()
-cgSetDriverValues vs = modify (\s -> s { cgFinalConfig = (cgFinalConfig s) { cgDriverVals = vs } })
-
--- | Creates an atomic input in the generated code.
-cgInput :: (HasSignAndSize a, SymWord a) => String -> SBVCodeGen (SBV a)
-cgInput nm = do r <- liftSymbolic free_
-                sw <- cgSBVToSW r
-                modify (\s -> s { cgInputs = (nm, CgAtomic sw) : cgInputs s })
-                return r
-
--- | Creates an array input in the generated code.
-cgInputArr :: (HasSignAndSize a, SymWord a) => Int -> String -> SBVCodeGen [SBV a]
-cgInputArr sz nm
-  | sz < 1 = error $ "SBV.cgInputArr: Array inputs must have at least one element, given " ++ show sz ++ " for " ++ show nm
-  | True   = do rs <- liftSymbolic $ (mapM (const free_) [1..sz])
-                sws <- mapM cgSBVToSW rs
-                modify (\s -> s { cgInputs = (nm, CgArray sws) : cgInputs s })
-                return rs
-
--- | Creates an atomic output in the generated code.
-cgOutput :: (HasSignAndSize a, SymWord a) => String -> SBV a -> SBVCodeGen ()
-cgOutput nm v = do _ <- liftSymbolic (output v)
-                   sw <- cgSBVToSW v
-                   modify (\s -> s { cgOutputs = (nm, CgAtomic sw) : cgOutputs s })
-
--- | Creates an array output in the generated code.
-cgOutputArr :: (HasSignAndSize a, SymWord a) => String -> [SBV a] -> SBVCodeGen ()
-cgOutputArr nm vs
-  | sz < 1 = error $ "SBV.cgOutputArr: Array outputs must have at least one element, received " ++ show sz ++ " for " ++ show nm
-  | True   = do _ <- liftSymbolic (mapM output vs)
-                sws <- mapM cgSBVToSW vs
-                modify (\s -> s { cgOutputs = (nm, CgArray sws) : cgOutputs s })
-  where sz = length vs
-
--- | Creates a returned (unnamed) value in the generated code.
-cgReturn :: (HasSignAndSize a, SymWord a) => SBV a -> SBVCodeGen ()
-cgReturn v = do _ <- liftSymbolic (output v)
-                sw <- cgSBVToSW v
-                modify (\s -> s { cgReturns = CgAtomic sw : cgReturns s })
-
--- | Creates a returned (unnamed) array value in the generated code.
-cgReturnArr :: (HasSignAndSize a, SymWord a) => [SBV a] -> SBVCodeGen ()
-cgReturnArr vs
-  | sz < 1 = error $ "SBV.cgReturnArr: Array returns must have at least one element, received " ++ show sz
-  | True   = do _ <- liftSymbolic (mapM output vs)
-                sws <- mapM cgSBVToSW vs
-                modify (\s -> s { cgReturns = CgArray sws : cgReturns s })
-  where sz = length vs
-
--- | Representation of a collection of generated programs.
-newtype CgPgmBundle = CgPgmBundle [(FilePath, (CgPgmKind, [Doc]))]
-
--- | Different kinds of "files" we can produce. Currently this is quite "C" specific.
-data CgPgmKind = CgMakefile
-               | CgHeader [Doc]
-               | CgSource
-               | CgDriver
-
-instance Show CgPgmBundle where
-   show (CgPgmBundle fs) = concat $ intersperse "\n" $ map showFile fs
-
-showFile :: (FilePath, (CgPgmKind, [Doc])) -> String
-showFile (f, (_, ds)) =  "== BEGIN: " ++ show f ++ " ================\n"
-                      ++ render (vcat ds)
-                      ++ "== END: " ++ show f ++ " =================="
-
-codeGen :: CgTarget l => l -> CgConfig -> String -> SBVCodeGen () -> IO CgPgmBundle
-codeGen l cgConfig nm (SBVCodeGen comp) = do
-   (((), st'), res) <- runSymbolic' $ runStateT comp initCgState { cgFinalConfig = cgConfig }
-   let st = st' { cgInputs       = reverse (cgInputs st')
-                , cgOutputs      = reverse (cgOutputs st')
-                }
-       allNamedVars = map fst (cgInputs st ++ cgOutputs st)
-       dupNames = allNamedVars \\ nub allNamedVars
-   when (not (null dupNames)) $ do
-        error $ "SBV.codeGen: " ++ show nm ++ " has following argument names duplicated: " ++ unwords dupNames
-   let finalCfg = cgFinalConfig st
-   return $ translate l (cgRTC finalCfg) (cgDriverVals finalCfg) nm st res
-
-renderCgPgmBundle :: Maybe FilePath -> CgPgmBundle -> IO ()
-renderCgPgmBundle Nothing        bundle              = putStrLn $ show bundle
-renderCgPgmBundle (Just dirName) (CgPgmBundle files) = do
-        b <- doesDirectoryExist dirName
-        when (not b) $ do putStrLn $ "Creating directory " ++ show dirName ++ ".."
-                          createDirectory dirName
-        dups <- filterM (\fn -> doesFileExist (dirName </> fn)) (map fst files)
-        goOn <- case dups of
-                  [] -> return True
-                  _  -> do putStrLn $ "Code generation would override the following " ++ (if length dups == 1 then "file:" else "files:")
-                           mapM_ (\fn -> putStrLn ("\t" ++ fn)) dups
-                           putStr "Continue? [yn] "
-                           resp <- getLine
-                           return $ map toLower resp `isPrefixOf` "yes"
-        if goOn then do mapM_ renderFile files
-                        putStrLn "Done."
-                else putStrLn "Aborting."
-  where renderFile (f, (_, ds)) = do let fn = dirName </> f
-                                     putStrLn $ "Generating: " ++ show fn ++ ".."
-                                     writeFile fn (render (vcat ds))
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Arrays/Memory.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Arrays/Memory.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Arrays/Memory.hs
+++ /dev/null
@@ -1,44 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Arrays.Memory
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Simple memory abstraction and properties
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Arrays.Memory where
-
-import Data.SBV
-
-type Address = SWord32
-type Value   = SWord64
-type Memory  = SArray Word32 Word64
-
--- | read-after-write: If you write a value and read it back, you'll get it
-raw :: Address -> Value -> Memory -> SBool
-raw a v m = readArray (writeArray m a v) a .== v
-
--- | write-after-write: If you write to the same location twice, then the first one is ignored
-waw :: Address -> Value -> Value -> Memory -> SBool
-waw a v1 v2 m0 = m2 .== m3
-  where m1 = writeArray m0 a v1
-        m2 = writeArray m1 a v2
-        m3 = writeArray m0 a v2
-
--- | Two writes to different locations commute, i.e., can be done in any order
-wcommutesGood :: (Address, Value) -> (Address, Value) -> Memory -> SBool
-wcommutesGood (a, x) (b, y) m = a ./= b ==> wcommutesBad (a, x) (b, y) m
-
--- | Two writes do not commute if they can be done to the same location
-wcommutesBad :: (Address, Value) -> (Address, Value) -> Memory -> SBool
-wcommutesBad (a, x) (b, y) m = writeArray (writeArray m a x) b y .== writeArray (writeArray m b y) a x
-
-tests :: IO ()
-tests = do print =<< prove raw
-           print =<< prove waw
-           print =<< prove wcommutesBad
-           print =<< prove wcommutesGood
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/BasicTests.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/BasicTests.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/BasicTests.hs
+++ /dev/null
@@ -1,47 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Basics.BasicTests
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Basic tests of the sbv library
------------------------------------------------------------------------------
-
-{-# LANGUAGE Rank2Types #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-
-module Data.SBV.Examples.Basics.BasicTests where
-
-import Data.SBV
-import Data.SBV.Internals
-
-test0 :: (forall a. Num a => (a -> a -> a)) -> Word8
-test0 f = f (3 :: Word8) 2
-
-test1, test2, test3, test4, test5 :: (forall a. Num a => (a -> a -> a)) -> IO Result
-test1 f = runSymbolic $ do let x = literal (3 :: Word8)
-                               y = literal (2 :: Word8)
-                           output $ f x y
-test2 f = runSymbolic $ do let x = literal (3 :: Word8)
-                           y :: SWord8 <- free "y"
-                           output $ f x y
-test3 f = runSymbolic $ do x :: SWord8 <- free "x"
-                           y :: SWord8 <- free "y"
-                           output $ f x y
-test4 f = runSymbolic $ do x :: SWord8 <- free "x"
-                           output $ f x x
-test5 f = runSymbolic $ do x :: SWord8 <- free "x"
-                           let r = f x x
-                           q :: SWord8 <- free "q"
-                           _ <- output q
-                           output r
-
-f1, f2, f3, f4, f5 :: Num a => a -> a -> a
-f1 x y = (x+y)*(x-y)
-f2 x y = (x*x)-(y*y)
-f3 x y = (x+y)*(x+y)
-f4 x y = let z = x + y in z * z
-f5 x _ = x + 1
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/Higher.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/Higher.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/Higher.hs
+++ /dev/null
@@ -1,50 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Basics.Higher
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Testing function equality
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Basics.Higher where
-
-import Data.SBV
-
-type B = SWord8
-
-f11 :: B -> B
-f11 x = x
-
-f12 :: B -> (B, B)
-f12 x = (x, x)
-
-f21 :: (B, B) -> B
-f21 (x, y) = x + y
-
-f22 :: (B, B) -> (B, B)
-f22 (x, y) = (x, y)
-
-f31 :: B -> B -> B
-f31 x y = x + y
-
-f32 :: B -> B -> (B, B)
-f32 x y = (x, y)
-
-f33 :: B -> B -> B -> (B, B, B)
-f33 x y z = (x, y, z)
-
-
-t :: IO [ThmResult]
-t = sequence $ [
-       f11 === f11
-     , f12 === f12
-     , f21 === f21
-     , f22 === f22
-     , f31 === f31
-     , f32 === f32
-     , f33 === f33
-     ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/Index.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/Index.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/Index.hs
+++ /dev/null
@@ -1,69 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Basics.Index
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Testing the select function
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Basics.Index where
-
-import Data.SBV
-
--- prove that the "select" primitive is working correctly
-test1 :: Int -> IO Bool
-test1 n = isTheorem $ do
-            elts <- mkFreeVars n
-            err  <- free_
-            ind  <- free_
-            ind2 <- free_
-            let r1 = (select :: [SWord8] -> SWord8 -> SInt8 -> SWord8) elts err ind
-                r2 = (select :: [SWord8] -> SWord8 -> SWord8 -> SWord8) elts err ind2
-                r3 = slowSearch elts err ind
-                r4 = slowSearch elts err ind2
-            return $ r1 .== r3 &&& r2 .== r4
- where slowSearch elts err i = ite (i .< 0) err (go elts i)
-         where go []     _      = err
-               go (x:xs) curInd = ite (curInd .== 0) x (go xs (curInd - 1))
-
-test2 :: Int -> IO Bool
-test2 n = isTheorem $ do
-            elts1 <- mkFreeVars n
-            elts2 <- mkFreeVars n
-            let elts = zip elts1 elts2
-            err1  <- free_
-            err2  <- free_
-            let err = (err1, err2)
-            ind  <- free_
-            ind2 <- free_
-            let r1 = (select :: [(SWord8, SWord8)] -> (SWord8, SWord8) -> SInt8 -> (SWord8, SWord8)) elts err ind
-                r2 = (select :: [(SWord8, SWord8)] -> (SWord8, SWord8) -> SWord8 -> (SWord8, SWord8)) elts err ind2
-                r3 = slowSearch elts err ind
-                r4 = slowSearch elts err ind2
-            return $ r1 .== r3 &&& r2 .== r4
- where slowSearch elts err i = ite (i .< 0) err (go elts i)
-         where go []     _      = err
-               go (x:xs) curInd = ite (curInd .== 0) x (go xs (curInd - 1))
-
-test3 :: Int -> IO Bool
-test3 n = isTheorem $ do
-            eltsI <- mkFreeVars n
-            let elts = map Left eltsI
-            errI  <- free_
-            let err = Left errI
-            ind  <- free_
-            let r1 = (select :: [Either SWord8 SWord8] -> Either SWord8 SWord8 -> SInt8 -> Either SWord8 SWord8) elts err ind
-                r2 = slowSearch elts err ind
-            return $ r1 .== r2
- where slowSearch elts err i = ite (i .< 0) err (go elts i)
-         where go []     _      = err
-               go (x:xs) curInd = ite (curInd .== 0) x (go xs (curInd - 1))
-
-tests :: IO ()
-tests = do mapM test1 [0..50] >>= print . and
-           mapM test2 [0..50] >>= print . and
-           mapM test3 [0..50] >>= print . and
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/ProofTests.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/ProofTests.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/ProofTests.hs
+++ /dev/null
@@ -1,44 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Basics.ProofTests
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Basic proofs
------------------------------------------------------------------------------
-
-{-# LANGUAGE Rank2Types #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-
-module Data.SBV.Examples.Basics.ProofTests where
-
-import Data.SBV
-
-f1, f2, f3, f4 :: Num a => a -> a -> a
-f1 x y = (x+y)*(x-y)
-f2 x y = (x*x)-(y*y)
-f3 x y = (x+y)*(x+y)
-f4 x y = x*x + 2*x*y + y*y
-
-f1eqf2 :: Predicate
-f1eqf2 = forAll_ $ \x y -> f1 x y .== f2 x (y :: SWord8)
-
-f1eqf3 :: Predicate
-f1eqf3 = forAll ["x", "y"] $ \x y -> f1 x y .== f3 x (y :: SWord8)
-
-f3eqf4 :: Predicate
-f3eqf4 = forAll_ $ \x y -> f3 x y .== f4 x (y :: SWord8)
-
-f1Single :: Predicate
-f1Single = forAll_ $ \x -> f1 x x .== (0 :: SWord16)
-
-queries :: IO ()
-queries = do print =<< prove f1eqf2   -- QED
-             print =<< prove f1eqf3   -- No
-             print =<< prove f3eqf4   -- QED
-             print =<< prove f1Single -- QED
-             print =<< sat f1eqf2     -- yes. any output ok
-             print =<< sat f1eqf3     -- yes, 0;0
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/QRem.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/QRem.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Basics/QRem.hs
+++ /dev/null
@@ -1,26 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Basics.QRem
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Testing the qrem (quote-rem) function
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Basics.QRem where
-
-import Data.SBV
-
--- check: if (a, b) = x `quotRem` y then x = y*a + b
--- being careful about y = 0. When divisor is 0, then quotient is
--- defined to be 0 and the remainder is the numerator
-qrem :: (Num a, EqSymbolic a, BVDivisible a) => a -> a -> SBool
-qrem x y = ite (y .== 0) ((0, x) .== (a, b)) (x .== y * a + b)
-  where (a, b) = x `bvQuotRem` y
-
-check :: IO ()
-check = do print =<< prove (qrem :: SWord8 -> SWord8 -> SBool)
-           -- print =<< prove (qrem :: SWord16 -> SWord16 -> SBool)   -- takes too long!
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/BitPrecise/BitTricks.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/BitPrecise/BitTricks.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/BitPrecise/BitTricks.hs
+++ /dev/null
@@ -1,60 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.BitPrecise.BitTricks
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Checks the correctness of a few tricks from the large collection found in:
---      <http://graphics.stanford.edu/~seander/bithacks.html>
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.BitPrecise.BitTricks where
-
-import Data.SBV
-
--- | Formalizes <http://graphics.stanford.edu/~seander/bithacks.html#IntegerMinOrMax>
-fastMinCorrect :: SInt32 -> SInt32 -> SBool
-fastMinCorrect x y = m .== fm
-  where m  = ite (x .< y) x y
-        fm = y `xor` ((x `xor` y) .&. (-(oneIf (x .< y))));
-
--- | Formalizes <http://graphics.stanford.edu/~seander/bithacks.html#IntegerMinOrMax>
-fastMaxCorrect :: SInt32 -> SInt32 -> SBool
-fastMaxCorrect x y = m .== fm
-  where m  = ite (x .< y) y x
-        fm = x `xor` ((x `xor` y) .&. (-(oneIf (x .< y))));
-
--- | Formalizes <http://graphics.stanford.edu/~seander/bithacks.html#DetectOppositeSigns>
-oppositeSignsCorrect :: SInt32 -> SInt32 -> SBool
-oppositeSignsCorrect x y = r .== os
-  where r  = (x .< 0 &&& y .>= 0) ||| (x .>= 0 &&& y .< 0)
-        os = (x `xor` y) .< 0
-
--- | Formalizes <http://graphics.stanford.edu/~seander/bithacks.html#ConditionalSetOrClearBitsWithoutBranching>
-conditionalSetClearCorrect :: SBool -> SWord32 -> SWord32 -> SBool
-conditionalSetClearCorrect f m w = r .== r'
-  where r  = ite f (w .|. m) (w .&. complement m)
-        r' = w `xor` ((-(oneIf f) `xor` w) .&. m);
-
--- | Formalizes <http://graphics.stanford.edu/~seander/bithacks.html#DetermineIfPowerOf2>
-powerOfTwoCorrect :: SWord32 -> SBool
-powerOfTwoCorrect v = f .== s
-  where f = (v ./= 0) &&& ((v .&. (v-1)) .== 0);
-        powers :: [Word32]
-        powers = map ((2::Word32)^) [(0::Word32) .. 31]
-        s = bAny (v .==) $ map literal powers
-
--- | Collection of queries
-queries :: IO ()
-queries =
-  let check :: Provable a => String -> a -> IO ()
-      check w t = do putStr $ "Proving " ++ show w ++ ": "
-                     print =<< prove t
-  in do check "Fast min             " fastMinCorrect
-        check "Fast max             " fastMaxCorrect
-        check "Opposite signs       " oppositeSignsCorrect
-        check "Conditional set/clear" conditionalSetClearCorrect
-        check "PowerOfTwo           " powerOfTwoCorrect
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/BitPrecise/Legato.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/BitPrecise/Legato.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/BitPrecise/Legato.hs
+++ /dev/null
@@ -1,303 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.BitPrecise.Legato
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- An encoding and correctness proof of Legato's multiplier in Haskell. Bill Legato came
--- up with an interesting way to multiply two 8-bit numbers on Mostek, as described here:
---   <http://www.cs.utexas.edu/~moore/acl2/workshop-2004/contrib/legato/Weakest-Preconditions-Report.pdf>
---
--- Here's Legato's algorithm, as coded in Mostek assembly:
---
--- @
---    step1 :       LDX #8         ; load X immediate with the integer 8 
---    step2 :       LDA #0         ; load A immediate with the integer 0 
---    step3 : LOOP  ROR F1         ; rotate F1 right circular through C 
---    step4 :       BCC ZCOEF      ; branch to ZCOEF if C = 0 
---    step5 :       CLC            ; set C to 0 
---    step6 :       ADC F2         ; set A to A+F2+C and C to the carry 
---    step7 : ZCOEF ROR A          ; rotate A right circular through C 
---    step8 :       ROR LOW        ; rotate LOW right circular through C 
---    step9 :       DEX            ; set X to X-1 
---    step10:       BNE LOOP       ; branch to LOOP if Z = 0 
--- @
---
--- This program came to be known as the Legato's challenge in the community, where
--- the challenge was to prove that it indeed does perform multiplication. This file
--- formalizes the Mostek architecture in Haskell and proves that Legato's algorithm
--- is indeed correct.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.BitPrecise.Legato where
-
-import Data.Array (Array, Ix(..), (!), (//), array)
-
-import Data.SBV
-
-------------------------------------------------------------------
--- * Mostek architecture
-------------------------------------------------------------------
--- | The memory is addressed by 32-bit words.
-type Address  = SWord32
-
--- | We model only two registers of Mostek that is used in the above algorithm, can add more.
-data Register = RegX  | RegA  deriving (Eq, Ord, Ix, Bounded, Enum)
-
--- | The carry flag ('FlagC') and the zero flag ('FlagZ')
-data Flag = FlagC | FlagZ deriving (Eq, Ord, Ix, Bounded, Enum)
-
--- | Mostek was an 8-bit machine.
-type Value = SWord8
-
--- | Convenient synonym for symbolic machine bits.
-type Bit = SBool
-
--- | Register bank
-type Registers = Array Register Value
-
--- | Flag bank
-type Flags = Array Flag Bit
-
--- | The memory maps 32-bit words to 8-bit words. (The 'Model' data-type is
--- defined later, depending on the verification model used.)
-type Memory = Model Word32 Word8        -- Model defined later
-
--- | Abstraction of the machine: The CPU consists of memory, registers, and flags.
--- Unlike traditional hardware, we assume the program is stored in some other memory area that
--- we need not model. (No self modifying programs!)
-data Mostek = Mostek { memory    :: Memory
-                     , registers :: Registers
-                     , flags     :: Flags
-                     }
-
--- | Given a machine state, compute a value out of it
-type Extract a = Mostek -> a
-
--- | Programs are essentially state transformers (on the machine state)
-type Program = Mostek -> Mostek
-
-instance Mergeable Mostek where
-  symbolicMerge b m1 m2 = Mostek { memory    = symbolicMerge b (memory m1)    (memory m2)
-                                 , registers = symbolicMerge b (registers m1) (registers m2)
-                                 , flags     = symbolicMerge b (flags m1)     (flags m2)
-                                 }
-
-------------------------------------------------------------------
--- * Low-level operations
-------------------------------------------------------------------
-
--- | Get the value of a given register
-getReg :: Register -> Extract Value
-getReg r m = registers m ! r
-
--- | Set the value of a given register
-setReg :: Register -> Value -> Program
-setReg r v m = m {registers = registers m // [(r, v)]}
-
--- | Get the value of a flag
-getFlag :: Flag -> Extract Bit
-getFlag f m = flags m ! f
-
--- | Set the value of a flag
-setFlag :: Flag -> Bit -> Program
-setFlag f b m = m {flags = flags m // [(f, b)]}
-
--- | Read memory
-peek :: Address -> Extract Value
-peek a m = readArray (memory m) a
-
--- | Write to memory
-poke :: Address -> Value -> Program
-poke a v m = m {memory = writeArray (memory m) a v}
-
--- | Checking overflow. In Legato's multipler the @ADC@ instruction
--- needs to see if the expression x + y + c overflowed, as checked
--- by this function. Note that we verify the correctness of this check
--- separately below in `checkOverflowCorrect`.
-checkOverflow :: SWord8 -> SWord8 -> SBool -> SBool
-checkOverflow x y c = s .< x ||| s .< y ||| s' .< s
-  where s  = x + y
-        s' = s + (ite c 1 0)
-
--- | Correctness theorem for our `checkOverflow` implementation.
---
---   We have:
---
---   >>> checkOverflowCorrect
---   Q.E.D.
-checkOverflowCorrect :: IO ThmResult
-checkOverflowCorrect = checkOverflow === overflow
-  where -- Reference spec for overflow. We do the addition
-        -- using 16 bits and check that it's larger than 255
-        overflow :: SWord8 -> SWord8 -> SBool -> SBool
-        overflow x y c = (0 # x) + (0 # y) + ite c 1 0 .> 255
-------------------------------------------------------------------
--- * Instruction set
-------------------------------------------------------------------
-
--- | An instruction is modeled as a 'Program' transformer. We model
--- mostek programs in direct continuation passing style.
-type Instruction = Program -> Program
-
--- | LDX: Set register @X@ to value @v@
-ldx :: Value -> Instruction
-ldx v k = k . setReg RegX v
-
--- | LDA: Set register @A@ to value @v@
-lda :: Value -> Instruction
-lda v k = k . setReg RegA v
-
--- | CLC: Clear the carry flag
-clc :: Instruction
-clc k = k . setFlag FlagC false
-
--- | ROR, memory version: Rotate the value at memory location @a@
--- to the right by 1 bit, using the carry flag as a transfer position.
--- That is, the final bit of the memory location becomes the new carry
--- and the carry moves over to the first bit. This very instruction
--- is one of the reasons why Legato's multiplier is quite hard to understand
--- and is typically presented as a verification challenge.
-rorM :: Address -> Instruction
-rorM a k m = k . setFlag FlagC c' . poke a v' $ m
-  where v  = peek a m
-        c  = getFlag FlagC m
-        v' = setBitTo (v `rotateR` 1) 7 c
-        c' = bitValue v 0
-
--- | ROR, register version: Same as 'rorM', except through register @r@.
-rorR :: Register -> Instruction
-rorR r k m = k . setFlag FlagC c' . setReg r v' $ m
-  where v  = getReg r m
-        c  = getFlag FlagC m
-        v' = setBitTo (v `rotateR` 1) 7 c
-        c' = bitValue v 0
-
--- | BCC: branch to label @l@ if the carry flag is false
-bcc :: Program -> Instruction
-bcc l k m = ite (c .== false) (l m) (k m)
-  where c = getFlag FlagC m
-
--- | ADC: Increment the value of register @A@ by the value of memory contents
--- at address @a@, using the carry-bit as the carry-in for the addition.
-adc :: Address -> Instruction
-adc a k m = k . setFlag FlagZ (v' .== 0) . setFlag FlagC c' . setReg RegA v' $ m
-  where v  = peek a m
-        ra = getReg RegA m
-        c  = getFlag FlagC m
-        v' = v + ra + ite c 1 0
-        c' = checkOverflow v ra c
-
--- | DEX: Decrement the value of register @X@
-dex :: Instruction
-dex k m = k . setFlag FlagZ (x .== 0) . setReg RegX x $ m
-  where x = getReg RegX m - 1
-
--- | BNE: Branch if the zero-flag is false
-bne :: Program -> Instruction
-bne l k m = ite (z .== false) (l m) (k m)
-  where z = getFlag FlagZ m
-
--- | The 'end' combinator "stops" our program, providing the final continuation
--- that does nothing.
-end :: Program
-end = id
-
-------------------------------------------------------------------
--- * Legato's algorithm in Haskell/SBV
-------------------------------------------------------------------
-
--- | Parameterized by the addresses of locations of the factors (@F1@ and @F2@),
--- the following program multiplies them, storing the low-byte of the result
--- in the memory location @lowAddr@, and the high-byte in register @A@. The
--- implementation is a direct transliteration of Legato's algorithm given
--- at the top, using our notation.
-legato :: Address -> Address -> Address -> Program
-legato f1Addr f2Addr lowAddr = start
-  where start   =    ldx 8
-                   $ lda 0
-                   $ loop
-        loop    =    rorM f1Addr
-                   $ bcc zeroCoef
-                   $ clc
-                   $ adc f2Addr
-                   $ zeroCoef
-        zeroCoef =   rorR RegA
-                   $ rorM lowAddr
-                   $ dex
-                   $ bne loop
-                   $ end
-
-------------------------------------------------------------------
--- * Verification interface
-------------------------------------------------------------------
--- | Given address/value pairs for F1 and F2, and the location of where the low-byte
--- of the result should go, @runLegato@ takes an arbitrary machine state @m@ and
--- returns the high and low bytes of the multiplication.
-runLegato :: (Address, Value) -> (Address, Value) -> Address -> Mostek -> (Value, Value)
-runLegato (f1Addr, f1Val) (f2Addr, f2Val) loAddr m = (getReg RegA mFinal, peek loAddr mFinal)
-  where m0     = poke f1Addr f1Val $ poke f2Addr f2Val m
-        mFinal = legato f1Addr f2Addr loAddr m0
-
--- | Helper synonym for capturing relevant bits of Mostek
-type InitVals = ( Value      -- Content of Register X
-                , Value      -- Content of Register A
-                , Value      -- Initial contents of memory
-                , Bit        -- Value of FlagC
-                , Bit        -- Value of FlagZ
-                )
-
--- | Create an instance of the Mostek machine, initialized by the memory and the relevant
--- values of the registers and the flags
-initMachine :: Memory -> InitVals -> Mostek
-initMachine mem (rx, ra, mc, fc, fz) = Mostek { memory    = resetArray mem mc
-                                              , registers = array (minBound, maxBound) [(RegX, rx),  (RegA, ra)]
-                                              , flags     = array (minBound, maxBound) [(FlagC, fc), (FlagZ, fz)]
-                                              }
-
--- | The correctness theorem. For all possible memory configurations, the factors (@x@ and @y@ below), the location
--- of the low-byte result and the initial-values of registers and the flags, this function will return True only if
--- running Legato's algorithm does indeed compute the product of @x@ and @y@ correctly.
-legatoIsCorrect :: Memory -> (Address, Value) -> (Address, Value) -> Address -> InitVals -> SBool
-legatoIsCorrect mem (addrX, x) (addrY, y) addrLow initVals
-        = allDifferent [addrX, addrY, addrLow]    -- note the conditional: addresses must be distinct!
-                ==> result .== expected
-    where (hi, lo) = runLegato (addrX, x) (addrY, y) addrLow (initMachine mem initVals)
-          -- NB. perform the comparison over 16 bit values to avoid overflow!
-          -- If Value changes to be something else, modify this accordingly.
-          result, expected :: SWord16
-          result   = 256 * (0 # hi) + (0 # lo)
-          expected = (0 # x) * (0 # y)
-
-------------------------------------------------------------------
--- * Verification
-------------------------------------------------------------------
-
--- | Choose the appropriate array model to be used for modeling the memory. (See 'Memory'.)
--- The 'SFunArray' is the function based model. 'SArray' is the SMT-Lib array's based model.
-type Model = SFunArray
--- type Model = SArray
-
--- | The correctness theorem.
---   On a decent MacBook Pro, this proof takes about 3 minutes with the 'SFunArray' memory model
---   and about 30 minutes with the 'SArray' model.
-correctnessTheorem :: IO ThmResult
-correctnessTheorem = proveWith timingSMTCfg $
-    forAll ["mem", "addrX", "x", "addrY", "y", "addrLow", "regX", "regA", "memVals", "flagC", "flagZ"]
-           legatoIsCorrect
-
-------------------------------------------------------------------
--- * C Code generation
-------------------------------------------------------------------
-
--- | Generate a C program that implements Legato's algorithm automatically.
-legatoInC :: IO ()
-legatoInC = compileToC Nothing "runLegato" $ do
-                x <- cgInput "x"
-                y <- cgInput "y"
-                let (hi, lo) = runLegato (0, x) (1, y) 2 (initMachine (mkSFunArray 0) (0, 0, 0, false, false))
-                cgOutput "hi" hi
-                cgOutput "lo" lo
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/CCITT.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/CCITT.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/CCITT.hs
+++ /dev/null
@@ -1,61 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CRC.CCITT
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- CRC checks, hamming distance, etc.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CRC.CCITT where
-
-import Data.SBV
-
--- We don't have native support for 48 bits in Data.SBV
--- So, represent as 32 high-bits and 16 low
-type SWord48 = (SWord32, SWord16)
-
-extendData :: SWord48 -> SWord64
-extendData (h, l) = h # l # 0
-
-mkFrame :: SWord48 -> SWord64
-mkFrame msg@(h, l) = h # l # crc msg
-
-crc :: SWord48 -> SWord16
-crc msg = res
-  where msg64, divisor :: SWord64
-        msg64   = extendData msg
-        divisor = polynomial [16, 12, 5, 0]
-        crc64 = pMod msg64 divisor
-        (_, res) = split (snd (split crc64))
-
-diffCount :: SWord64 -> SWord64 -> SWord8
-diffCount x y = count $ zipWith (.==) (blastLE x) (blastLE y)
-  where count []     = 0
-        count (b:bs) = let r = count bs in ite b r (1+r)
-
--- Claim: If there is an undetected corruption, it must be at least at 4 bits; i.e. HD is 3
-crcGood :: SWord48 -> SWord48 -> SBool
-crcGood sent received =
-     sent ./= received ==> diffCount frameSent frameReceived .> 3
-   where frameSent     = mkFrame sent
-         frameReceived = mkFrame received
-
--- How come we get way more than 168 (= 2*84) counter-examples for this? 
-hw4has84Inhabitants :: SWord48 -> SWord48 -> SBool
-hw4has84Inhabitants sent received = fourBitError
-   where frameSent     = mkFrame sent
-         frameReceived = mkFrame received
-         fourBitError  = diffCount frameSent frameReceived .== 4
-
-hw4 :: IO ()
-hw4 = do res <- allSat hw4has84Inhabitants
-         cnt <- displayModels disp res
-         putStrLn $ "Found: " ++ show cnt ++ " solution(s)."
-   where disp :: Int -> (Word32, Word16, Word32, Word16) -> IO ()
-         disp i (sh, sl, rh, rl) = do putStrLn $ "Solution #" ++ show i ++ ": "
-                                      putStrLn $ "  Sent    : " ++ binS (mkFrame (literal sh, literal sl))
-                                      putStrLn $ "  Received: " ++ binS (mkFrame (literal rh, literal rl))
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/CCITT_Unidir.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/CCITT_Unidir.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/CCITT_Unidir.hs
+++ /dev/null
@@ -1,59 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CRC.CCITT_Unidir
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Similar to CCITT. It shows that the CCITT is still HD 3
--- even if we consider only uni-directional errors
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CRC.CCITT_Unidir where
-
-import Data.SBV
-
--- We don't have native support for 48 bits in Data.SBV
--- So, represent as 32 high-bits and 16 low
-type SWord48 = (SWord32, SWord16)
-
-extendData :: SWord48 -> SWord64
-extendData (h, l) = h # l # 0
-
-mkFrame :: SWord48 -> SWord64
-mkFrame msg@(h, l) = h # l # crc msg
-
-crc :: SWord48 -> SWord16
-crc msg = res
-  where msg64, divisor :: SWord64
-        msg64   = extendData msg
-        divisor = polynomial [16, 12, 5, 0]
-        crc64 = pMod msg64 divisor
-        (_, res) = split (snd (split crc64))
-
-diffCount :: [SBool] -> [SBool] -> SWord8
-diffCount xs ys = count $ zipWith (.==) xs ys
-  where count []     = 0
-        count (b:bs) = let r = count bs in ite b r (1+r)
-
--- returns true if there's a 0->1 error (1->0 is ok)
-nonUnidir :: [SBool] -> [SBool] -> SBool
-nonUnidir []     _      = false
-nonUnidir _      []     = false
-nonUnidir (a:as) (b:bs) = (bnot a &&& b) ||| nonUnidir as bs
-
-crcUniGood :: SWord8 -> SWord48 -> SWord48 -> SBool
-crcUniGood hd sent received =
-     sent ./= received ==> nonUnidir frameSent frameReceived ||| diffCount frameSent frameReceived .> hd
-   where frameSent     = blastLE $ mkFrame sent
-         frameReceived = blastLE $ mkFrame received
-
--- Provable, i.e., HD is 3
-ccitHDis3 :: IO ()
-ccitHDis3 = print =<< prove (crcUniGood 3)
-
--- False; i.e., HD doesn't go to 4 just because we only look at uni-directional errors
-ccitHDis4 :: IO ()
-ccitHDis4 = print =<< prove (crcUniGood 4)
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/GenPoly.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/GenPoly.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/GenPoly.hs
+++ /dev/null
@@ -1,74 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CRC.GenPoly
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Finds good polynomials for CRC's
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CRC.GenPoly where
-
-import Data.SBV
-
--- We don't have native support for 48 bits in Data.SBV
--- So, represent as 32 high-bits and 16 low
-type SWord48 = (SWord32, SWord16)
-
-extendData :: SWord48 -> SWord64
-extendData (h, l) = h # l # 0
-
-mkFrame :: SWord64 -> SWord48 -> SWord64
-mkFrame poly msg@(h, l) = h # l # crc msg poly
-
-crc :: SWord48 -> SWord64 -> SWord16
-crc msg poly = res
-  where msg64 = extendData msg
-        crc64 = pMod msg64 poly
-        (_, res) = split (snd (split crc64))
-
-diffCount :: SWord64 -> SWord64 -> SWord8
-diffCount x y = count $ zipWith (.==) (blastLE x) (blastLE y)
-  where count []     = 0
-        count (b:bs) = let r = count bs in ite b r (1+r)
-
-crcGood :: SWord8 -> SWord16 -> SWord48 -> SWord48 -> SBool
-crcGood hd divisor sent received =
-     sent ./= received ==> diffCount frameSent frameReceived .> hd
-   where frameSent     = mkFrame poly sent
-         frameReceived = mkFrame poly received
-         poly          = mkPoly divisor
-
-mkPoly :: SWord16 -> SWord64
-mkPoly d = 0 # 1 # d
-
--- how long do we wait for each poly.. (seconds)
-waitFor :: Int
-waitFor = 15
-
-genPoly :: SWord8 -> IO ()
-genPoly hd = do putStrLn $ "*** Looking for polynomials with HD = " ++ show hd
-                (skipped, res) <- go 0 [] []
-                putStrLn $ "*** Good polynomials with HD = " ++ show hd
-                mapM_ (\(i, s) -> putStrLn (show i ++ ". " ++ showPoly (mkPoly s)))  (zip [(1::Integer)..] res)
-                putStrLn $ "*** Skipped the followings, proof exceeded timeout value of " ++ show waitFor
-                mapM_ (\(i, s) -> putStrLn (show i ++ ". " ++ showPoly (mkPoly s)))  (zip [(1::Integer)..] skipped)
-                putStrLn $ "*** Done."
-  where go :: SWord16 -> [SWord16] -> [SWord16] -> IO ([SWord16], [SWord16])
-        go poly skip acc
-         | poly == maxBound = return (skip, acc)
-         | True             = do putStr $ "Testing " ++ showPoly  (mkPoly poly) ++ "... "
-                                 thm <- isTheoremWithin waitFor $ crcGood hd poly
-                                 case thm of
-                                   Nothing    -> do putStrLn "Timeout, skipping.."
-                                                    go (poly+1) (poly:skip) acc
-                                   Just True  -> do putStrLn "Good!"
-                                                    go (poly+1) skip (poly:acc)
-                                   Just False -> do putStrLn "Bad!"
-                                                    go (poly+1) skip acc
-
-findHD3Polynomials :: IO ()
-findHD3Polynomials = genPoly 3
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/Parity.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/Parity.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/Parity.hs
+++ /dev/null
@@ -1,36 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CRC.Parity
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Parity check as CRC's
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CRC.Parity where
-
-import Data.SBV
-
-parity :: SWord64 -> SBool
-parity x = bnot (isOdd cnt)
-  where cnt :: SWord8
-        cnt = count (blastLE x)
-
-isOdd :: SWord8 -> SBool
-isOdd x = lsb x .== true
-
--- count the true bits
-count :: [SBool] -> SWord8
-count []     = 0
-count (x:xs) = let c' = count xs in ite x (1+c') c'
-
--- Example suggested by Lee Pike
--- If x and y differ in odd-number of bits, then their parities are flipped
-parityOK :: SWord64 -> SWord64 -> SBool
-parityOK x y = isOdd cnt ==> px .== bnot py
-  where cnt = count (zipWith (./=) (blastLE x) (blastLE y))
-        px  = parity x
-        py  = parity y
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/USB5.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/USB5.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CRC/USB5.hs
+++ /dev/null
@@ -1,50 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CRC.USB5
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- The USB5 CRC implementation
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CRC.USB5 where
-
-import Data.SBV
-
-newtype SWord11 = S11 SWord16
-
-instance EqSymbolic SWord11 where
-  S11 w .== S11 w' = w .== w'
-
-mkSWord11 :: SWord16 -> SWord11
-mkSWord11 w = S11 (w .&. 0x07FF)
-
-extendData :: SWord11 -> SWord16
-extendData (S11 w) = w `shiftL` 5
-
-mkFrame :: SWord11 -> SWord16
-mkFrame w = extendData w .|. crc w
-
--- crc returns 16 bits, but the first 11 are always 0
-crc :: SWord11 -> SWord16
-crc msg = crc16 .&. 0x1F -- just get the last 5 bits
-  where divisor :: SWord16
-        divisor = polynomial [5, 2, 0]
-        crc16 = pMod (extendData msg) divisor
-
-diffCount :: SWord16 -> SWord16 -> SWord8
-diffCount x y = count $ zipWith (.==) (blastLE x) (blastLE y)
-  where count []     = 0
-        count (b:bs) = let r = count bs in ite b r (1+r)
-
--- Claim: If there is an undetected corruption, it must be at least at 3 bits
-usbGood :: SWord16 -> SWord16 -> SBool
-usbGood sent16 received16 =
-    sent ./= received ==> diffCount frameSent frameReceived .>= 3
-   where sent     = mkSWord11 sent16
-         received = mkSWord11 received16
-         frameSent     = mkFrame sent
-         frameReceived = mkFrame received
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/AddSub.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/AddSub.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/AddSub.hs
+++ /dev/null
@@ -1,127 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CodeGeneration.AddSub
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Simple code generation example.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CodeGeneration.AddSub where
-
-import Data.SBV
-
--- | Simple function that returns add/sum of args
-addSub :: SWord8 -> SWord8 -> (SWord8, SWord8)
-addSub x y = (x+y, x-y)
-
--- | Generate C code for addSub. This will place the files in a directory called @genAddSub@,
--- generating the following files:
---
--- File: @Makefile@
---
--- > # Makefile for addSub. Automatically generated by SBV. Do not edit!
--- > 
--- > CC=gcc
--- > CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
--- > 
--- > all: addSub_driver
--- > 
--- > addSub.o: addSub.c addSub.h
--- > 	${CC} ${CCFLAGS} -c $< -o $@
--- > 
--- > addSub_driver.o: addSub_driver.c
--- > 	${CC} ${CCFLAGS} -c $< -o $@
--- > 
--- > addSub_driver: addSub.o addSub_driver.o
--- > 	${CC} ${CCFLAGS} $^ -o $@
--- > 
--- > clean:
--- > 	rm -f *.o
--- > 
--- > veryclean: clean
--- > 	rm -f addSub_driver
---
--- File: @addSub.h@
---
--- > /* Header file for addSub. Automatically generated by SBV. Do not edit! */
--- > 
--- > #ifndef __addSub__HEADER_INCLUDED__
--- > #define __addSub__HEADER_INCLUDED__
--- > 
--- > #include <inttypes.h>
--- > #include <stdint.h>
--- > 
--- > /* Unsigned bit-vectors */
--- > typedef uint8_t  SBool  ;
--- > typedef uint8_t  SWord8 ;
--- > typedef uint16_t SWord16;
--- > typedef uint32_t SWord32;
--- > typedef uint64_t SWord64;
--- > 
--- > /* Signed bit-vectors */
--- > typedef int8_t  SInt8 ;
--- > typedef int16_t SInt16;
--- > typedef int32_t SInt32;
--- > typedef int64_t SInt64;
--- > 
--- > /* Entry point prototype: */
--- > void addSub(const SWord8 x, const SWord8 y, SWord8 *sum,
--- >             SWord8 *dif);
--- > 
--- > #endif /* __addSub__HEADER_INCLUDED__ */
---
--- File: @addSub.c@
---
--- > /* File: "addSub.c". Automatically generated by SBV. Do not edit! */
--- > 
--- > #include <inttypes.h>
--- > #include <stdint.h>
--- > #include "addSub.h"
--- > 
--- > void addSub(const SWord8 x, const SWord8 y, SWord8 *sum,
--- >             SWord8 *dif)
--- > {
--- >   const SWord8 s0 = x;
--- >   const SWord8 s1 = y;
--- >   const SWord8 s2 = s0 + s1;
--- >   const SWord8 s3 = s0 - s1;
--- >   
--- >   *sum = s2;
--- >   *dif = s3;
--- > }
---
--- File: @addSub_driver.c@
---
--- > /* Example driver program for addSub. */
--- > /* Automatically generated by SBV. Edit as you see fit! */
--- > 
--- > #include <inttypes.h>
--- > #include <stdint.h>
--- > #include <stdio.h>
--- > #include "addSub.h"
--- > 
--- > int main(void)
--- > {
--- >   SWord8 sum;
--- >   SWord8 dif;
--- >   
--- >   addSub(132, 241, &sum, &dif);
--- >   
--- >   printf("addSub(132, 241, &sum, &dif) ->\n");
--- >   printf("  sum = %"PRIu8"\n", sum);
--- >   printf("  dif = %"PRIu8"\n", dif);
--- >   
--- >   return 0;
--- > }
---
-genAddSub :: IO ()
-genAddSub = compileToC (Just "xx") "addSub" $ do
-        x <- cgInput "x"
-        y <- cgInput "y"
-        let (s, d) = addSub x y
-        cgOutput "sum" s
-        cgOutput "dif" d
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/Fibonacci.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/Fibonacci.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/Fibonacci.hs
+++ /dev/null
@@ -1,158 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CodeGeneration.Fibonacci
--- Copyright   :  (c) Lee Pike, Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Computing Fibonacci numbers and generating C code. Inspired by Lee Pike's
--- original implementation, modified for inclusion in the package. It illustrates
--- symbolic termination issues one can have when working with recursive algorithms
--- and how to deal with such, eventually generating good C code.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CodeGeneration.Fibonacci where
-
-import Data.SBV
-
------------------------------------------------------------------------------
--- * A naive implementation
------------------------------------------------------------------------------
-
--- | This is a naive implementation of fibonacci, and will work fine (albeit slow)
--- for concrete inputs:
---
--- >>> map fib0 [0..6]
--- [0 :: SWord32,1 :: SWord32,1 :: SWord32,2 :: SWord32,3 :: SWord32,5 :: SWord32,8 :: SWord32]
---
--- However, it is not suitable for doing proofs or generating code, as it is not
--- symbolically terminating when it is called with a symbolic value @n@. When we
--- recursively call @fib0@ on @n-1@ (or @n-2@), the test against @0@ will always
--- explore both branches since the result will be symbolic, hence will not
--- terminate. (An integrated theorem prover can establish termination
--- after a certain number of unrollings, but this would be quite expensive to
--- implement, and would be impractical.)
-fib0 :: SWord32 -> SWord32
-fib0 n = ite (n .== 0 ||| n .== 1)
-             n
-             (fib0 (n-1) + fib0 (n-2))
-
------------------------------------------------------------------------------
--- * Using a recursion depth, and accumulating parameters
------------------------------------------------------------------------------
-
-{- $genLookup
-One way to deal with symbolic termination is to limit the number of recursive
-calls. In this version, we impose a limit on the index to the function, working
-correctly upto that limit. If we use a compile-time constant, then SBV's code generator
-can produce code as the unrolling will eventually stop.
--}
-
--- | The recursion-depth limited version of fibonacci. Limiting the maximum number to be 20, we can say:
---
--- >>> map (fib1 20) [0..6]
--- [0 :: SWord32,1 :: SWord32,1 :: SWord32,2 :: SWord32,3 :: SWord32,5 :: SWord32,8 :: SWord32]
---
--- The function will work correctly, so long as the index we query is at most @top@, and otherwise
--- will return the value at @top@. Note that we also use accumulating parameters here for efficiency,
--- although this is orthogonal to the termination concern.
-fib1 :: SWord32 -> SWord32 -> SWord32
-fib1 top n = fib' 0 1 0
-  where fib' :: SWord32 -> SWord32 -> SWord32 -> SWord32
-        fib' prev' prev m = ite (m .== top ||| m .== n)          -- did we reach recursion depth, or the index we're looking for
-                                prev'                            -- stop and return the result
-                                (fib' prev (prev' + prev) (m+1)) -- otherwise recurse
-
--- | We can generate code for 'fib1' using the 'genFib1' action. Note that the
--- generated code will grow larger as we pick larger values of @top@, but only linearly,
--- thanks to the accumulating parameter trick used by 'fib1'. The following is an excerpt
--- from the code generated for the call @genFib1 10@, where the code will work correctly
--- for indexes up to 10:
---
--- > SWord32 fib1(const SWord32 x)
--- > {
--- >   const SWord32 s0 = x;
--- >   const SBool   s2 = s0 == 0x00000000UL;
--- >   const SBool   s4 = s0 == 0x00000001UL;
--- >   const SBool   s6 = s0 == 0x00000002UL;
--- >   const SBool   s8 = s0 == 0x00000003UL;
--- >   const SBool   s10 = s0 == 0x00000004UL;
--- >   const SBool   s12 = s0 == 0x00000005UL;
--- >   const SBool   s14 = s0 == 0x00000006UL;
--- >   const SBool   s17 = s0 == 0x00000007UL;
--- >   const SBool   s19 = s0 == 0x00000008UL;
--- >   const SBool   s22 = s0 == 0x00000009UL;
--- >   const SWord32 s25 = s22 ? 0x00000022UL : 0x00000037UL;
--- >   const SWord32 s26 = s19 ? 0x00000015UL : s25;
--- >   const SWord32 s27 = s17 ? 0x0000000dUL : s26;
--- >   const SWord32 s28 = s14 ? 0x00000008UL : s27;
--- >   const SWord32 s29 = s12 ? 0x00000005UL : s28;
--- >   const SWord32 s30 = s10 ? 0x00000003UL : s29;
--- >   const SWord32 s31 = s8 ? 0x00000002UL : s30;
--- >   const SWord32 s32 = s6 ? 0x00000001UL : s31;
--- >   const SWord32 s33 = s4 ? 0x00000001UL : s32;
--- >   const SWord32 s34 = s2 ? 0x00000000UL : s33;
--- >   
--- >   return s34;
--- > }
-genFib1 :: SWord32 -> IO ()
-genFib1 top = compileToC Nothing "fib1" $ do
-        x <- cgInput "x"
-        cgReturn $ fib1 top x
-
------------------------------------------------------------------------------
--- * Generating a look-up table
------------------------------------------------------------------------------
-
-{- $genLookup
-While 'fib1' generates good C code, we can do much better by taking
-advantage of the inherent partial-evaluation capabilities of SBV to generate
-a look-up table, as follows.
--}
-
--- | Compute the fibonacci numbers statically at /code-generation/ time and
--- put them in a table, accessed by the 'select' call. 
-fib2 :: SWord32 -> SWord32 -> SWord32
-fib2 top n = select table 0 n
-  where table = map (fib1 top) [0 .. top]
-
--- | Once we have 'fib2', we can generate the C code straightforwardly. Below
--- is an excerpt from the code that SBV generates for the call @genFib2 64@. Note
--- that this code is a constant-time look-up table implementation of fibonacci,
--- with no run-time overhead. The index can be made arbitrarily large,
--- naturally. (Note that this function returns @0@ if the index is larger
--- than 64, as specified by the call to 'select' with default @0@.)
---
--- > SWord32 fibLookup(const SWord32 x)
--- > {
--- >   const SWord32 s0 = x;
--- >   static const SWord32 table0[] = {
--- >       0x00000000UL, 0x00000001UL, 0x00000001UL, 0x00000002UL,
--- >       0x00000003UL, 0x00000005UL, 0x00000008UL, 0x0000000dUL,
--- >       0x00000015UL, 0x00000022UL, 0x00000037UL, 0x00000059UL,
--- >       0x00000090UL, 0x000000e9UL, 0x00000179UL, 0x00000262UL,
--- >       0x000003dbUL, 0x0000063dUL, 0x00000a18UL, 0x00001055UL,
--- >       0x00001a6dUL, 0x00002ac2UL, 0x0000452fUL, 0x00006ff1UL,
--- >       0x0000b520UL, 0x00012511UL, 0x0001da31UL, 0x0002ff42UL,
--- >       0x0004d973UL, 0x0007d8b5UL, 0x000cb228UL, 0x00148addUL,
--- >       0x00213d05UL, 0x0035c7e2UL, 0x005704e7UL, 0x008cccc9UL,
--- >       0x00e3d1b0UL, 0x01709e79UL, 0x02547029UL, 0x03c50ea2UL,
--- >       0x06197ecbUL, 0x09de8d6dUL, 0x0ff80c38UL, 0x19d699a5UL,
--- >       0x29cea5ddUL, 0x43a53f82UL, 0x6d73e55fUL, 0xb11924e1UL,
--- >       0x1e8d0a40UL, 0xcfa62f21UL, 0xee333961UL, 0xbdd96882UL,
--- >       0xac0ca1e3UL, 0x69e60a65UL, 0x15f2ac48UL, 0x7fd8b6adUL,
--- >       0x95cb62f5UL, 0x15a419a2UL, 0xab6f7c97UL, 0xc1139639UL,
--- >       0x6c8312d0UL, 0x2d96a909UL, 0x9a19bbd9UL, 0xc7b064e2UL,
--- >       0x61ca20bbUL
--- >   };
--- >   const SWord32 s65 = s0 >= 65 ? 0x00000000UL : table0[s0];
--- >   
--- >   return s65;
--- > }
-genFib2 :: SWord32 -> IO ()
-genFib2 top = compileToC Nothing "fibLookup" $ do
-        cgPerformRTCs True       -- protect against potential overflow, our table is not big enough
-        x <- cgInput "x"
-        cgReturn $ fib2 top x
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/GCD.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/GCD.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/GCD.hs
+++ /dev/null
@@ -1,143 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CodeGeneration.GCD
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Computing GCD symbolically, and generating C code for it. This example
--- illustrates symbolic termination related issues when programming with
--- SBV, when the termination of a recursive algorithm crucially depends
--- on the value of a symbolic variable. The technique we use is to statically
--- enforce termination by using a recursion depth counter.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CodeGeneration.GCD where
-
-import Data.SBV
-
------------------------------------------------------------------------------
--- * Computing GCD
------------------------------------------------------------------------------
-
--- | The symbolic GCD algorithm, over two 8-bit numbers. We define @sgcd a 0@ to
--- be @a@ for all @a@, which implies @sgcd 0 0 = 0@. Note that this is essentially
--- Euclid's algorithm, except with a recursion depth counter. We need the depth
--- counter since the algorithm is not /symbolically terminating/, as we don't have
--- a means of determining that the second argument (@b@) will eventually reach 0 in a symbolic
--- context. Hence we stop after 12 iterations. Why 12? We've empirically determined that this
--- algorithm will recurse at most 12 times for arbitrary 8-bit numbers. Of course, this is
--- a claim that we shall prove below.
-sgcd :: SWord8 -> SWord8 -> SWord8
-sgcd a b = go a b 12
-  where go :: SWord8 -> SWord8 -> SWord8 -> SWord8
-        go x y c = ite (c .== 0 ||| y .== 0)   -- stop if y is 0, or if we reach the recursion depth
-                       x
-                       (go y y' (c-1))
-          where (_, y') = x `bvQuotRem` y
-
------------------------------------------------------------------------------
--- * Verification
------------------------------------------------------------------------------
-
-{- $VerificationIntro
-We prove that 'sgcd' does indeed compute the common divisor of the given numbers.
-Our predicate takes @x@, @y@, and @k@. We show that what 'sgcd' returns is indeed a common divisor,
-and it is at least as large as any given @k@, provided @k@ is a common divisor as well.
--}
-
--- | We have:
---
--- >>> prove sgcdIsCorrect
--- Q.E.D.
-sgcdIsCorrect :: SWord8 -> SWord8 -> SWord8 -> SBool
-sgcdIsCorrect x y k = ite (y  .== 0)                        -- if y is 0
-                          (k' .== x)                        -- then k' must be x, nothing else to prove by definition
-                          (isCommonDivisor k'  &&&          -- otherwise, k' is a common divisor and
-                          (isCommonDivisor k ==> k' .>= k)) -- if k is a common divisor as well, then k' is at least as large as k
-  where k' = sgcd x y
-        isCommonDivisor a = z1 .== 0 &&& z2 .== 0
-           where (_, z1) = x `bvQuotRem` a
-                 (_, z2) = y `bvQuotRem` a
-
------------------------------------------------------------------------------
--- * Code generation
------------------------------------------------------------------------------
-
-{- $VerificationIntro
-Now that we have proof our 'sgcd' implementation is correct, we can go ahead
-and generate C code for it.
--}
-
--- | This call will generate the required C files. The following is the function
--- body generated for 'sgcd'. (We are not showing the generated header, @Makefile@,
--- and the driver programs for brevity.) Note that the generated function is
--- a constant time algorithm for GCD. It is not necessarily fastest, but it will take
--- precisely the same amount of time for all values of @x@ and @y@.
---
--- > /* File: "sgcd.c". Automatically generated by SBV. Do not edit! */
--- > 
--- > #include <inttypes.h>
--- > #include <stdint.h>
--- > #include "sgcd.h"
--- > 
--- > SWord8 sgcd(const SWord8 x, const SWord8 y)
--- > {
--- >   const SWord8 s0 = x;
--- >   const SWord8 s1 = y;
--- >   const SBool  s3 = s1 == 0;
--- >   const SWord8 s4 = (s1 == 0) ? s0 : (s0 % s1);
--- >   const SWord8 s5 = s3 ? s0 : s4;
--- >   const SBool  s6 = 0 == s5;
--- >   const SWord8 s7 = (s5 == 0) ? s1 : (s1 % s5);
--- >   const SWord8 s8 = s6 ? s1 : s7;
--- >   const SBool  s9 = 0 == s8;
--- >   const SWord8 s10 = (s8 == 0) ? s5 : (s5 % s8);
--- >   const SWord8 s11 = s9 ? s5 : s10;
--- >   const SBool  s12 = 0 == s11;
--- >   const SWord8 s13 = (s11 == 0) ? s8 : (s8 % s11);
--- >   const SWord8 s14 = s12 ? s8 : s13;
--- >   const SBool  s15 = 0 == s14;
--- >   const SWord8 s16 = (s14 == 0) ? s11 : (s11 % s14);
--- >   const SWord8 s17 = s15 ? s11 : s16;
--- >   const SBool  s18 = 0 == s17;
--- >   const SWord8 s19 = (s17 == 0) ? s14 : (s14 % s17);
--- >   const SWord8 s20 = s18 ? s14 : s19;
--- >   const SBool  s21 = 0 == s20;
--- >   const SWord8 s22 = (s20 == 0) ? s17 : (s17 % s20);
--- >   const SWord8 s23 = s21 ? s17 : s22;
--- >   const SBool  s24 = 0 == s23;
--- >   const SWord8 s25 = (s23 == 0) ? s20 : (s20 % s23);
--- >   const SWord8 s26 = s24 ? s20 : s25;
--- >   const SBool  s27 = 0 == s26;
--- >   const SWord8 s28 = (s26 == 0) ? s23 : (s23 % s26);
--- >   const SWord8 s29 = s27 ? s23 : s28;
--- >   const SBool  s30 = 0 == s29;
--- >   const SWord8 s31 = (s29 == 0) ? s26 : (s26 % s29);
--- >   const SWord8 s32 = s30 ? s26 : s31;
--- >   const SBool  s33 = 0 == s32;
--- >   const SWord8 s34 = (s32 == 0) ? s29 : (s29 % s32);
--- >   const SWord8 s35 = s33 ? s29 : s34;
--- >   const SBool  s36 = 0 == s35;
--- >   const SWord8 s37 = s36 ? s32 : s35;
--- >   const SWord8 s38 = s33 ? s29 : s37;
--- >   const SWord8 s39 = s30 ? s26 : s38;
--- >   const SWord8 s40 = s27 ? s23 : s39;
--- >   const SWord8 s41 = s24 ? s20 : s40;
--- >   const SWord8 s42 = s21 ? s17 : s41;
--- >   const SWord8 s43 = s18 ? s14 : s42;
--- >   const SWord8 s44 = s15 ? s11 : s43;
--- >   const SWord8 s45 = s12 ? s8 : s44;
--- >   const SWord8 s46 = s9 ? s5 : s45;
--- >   const SWord8 s47 = s6 ? s1 : s46;
--- >   const SWord8 s48 = s3 ? s0 : s47;
--- >   
--- >   return s48;
--- > }
-genGCDInC :: IO ()
-genGCDInC = compileToC Nothing "sgcd" $ do
-                x <- cgInput "x"
-                y <- cgInput "y"
-                cgReturn $ sgcd x y
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/PopulationCount.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/PopulationCount.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/CodeGeneration/PopulationCount.hs
+++ /dev/null
@@ -1,217 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.CodeGeneration.PopulationCount
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Computing population-counts (number of set bits) and autimatically
--- generating C code.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.CodeGeneration.PopulationCount where
-
-import Data.SBV
-
------------------------------------------------------------------------------
--- * Reference: Slow but /obviously/ correct
------------------------------------------------------------------------------
-
--- | Given a 64-bit quantity, the simplest (and obvious) way to count the
--- number of bits that are set in it is to simply walk through all the bits
--- and add 1 to a running count. This is slow, as it requires 64 iterations,
--- but is simple and easy to convince yourself that it is correct. For instance:
---
--- >>> popCount_Slow 0x0123456789ABCDEF
--- 32 :: SWord8
-popCount_Slow :: SWord64 -> SWord8
-popCount_Slow inp = go inp 0 0
-  where go :: SWord64 -> Int -> SWord8 -> SWord8
-        go _ 64 c = c
-        go x i  c = go (x `shiftR` 1) (i+1) (ite (x .&. 1 .== 1) (c+1) c)
-
------------------------------------------------------------------------------
--- * Faster: Using a look-up table
------------------------------------------------------------------------------
-
--- | Faster version. This is essentially the same algorithm, except we
--- go 8 bits at a time instead of one by one, by using a precomputed table
--- of population-count values for each byte. This algorithm /loops/ only
--- 8 times, and hence is at least 8 times more efficient.
-popCount :: SWord64 -> SWord8
-popCount inp = go inp 0 0
-  where go :: SWord64 -> Int -> SWord8 -> SWord8
-        go _ 8 c = c
-        go x i c = go (x `shiftR` 8) (i+1) (c + select pop8 0 (x .&. 0xff))
-
--- | Look-up table, containing population counts for all possible 8-bit
--- value, from 0 to 255. Note that we do not \"hard-code\" the values, but
--- merely use the slow version to compute them.
-pop8 :: [SWord8]
-pop8 = map popCount_Slow [0 .. 255]
-
------------------------------------------------------------------------------
--- * Verification
------------------------------------------------------------------------------
-
-{- $VerificationIntro
-We prove that `popCount` and `popCount_Slow` are functionally equivalent.
-This is essential as we will automatically generate C code from `popCount`,
-and we would like to make sure that the fast version is correct with
-respect to the slower reference version.
--}
-
--- | States the correctness of faster population-count algorithm, with respect
--- to the reference slow version. We have:
---
--- >>> prove fastPopCountIsCorrect
--- Q.E.D.
-fastPopCountIsCorrect :: SWord64 -> SBool
-fastPopCountIsCorrect x = popCount x .== popCount_Slow x
-
------------------------------------------------------------------------------
--- * Code generation
------------------------------------------------------------------------------
-
--- | Not only we can prove that faster version is correct, but we can also automatically
--- generate C code to compute population-counts for us. This action will generate all the
--- C files that you will need, including a driver program for test purposes.
---
--- Below is the generated header file for `popCount`:
---
--- > /* Header file for popCount. Automatically generated by SBV. Do not edit! */
--- > 
--- > #ifndef __popCount__HEADER_INCLUDED__
--- > #define __popCount__HEADER_INCLUDED__
--- > 
--- > #include <inttypes.h>
--- > #include <stdint.h>
--- > 
--- > /* Unsigned bit-vectors */
--- > typedef uint8_t  SBool  ;
--- > typedef uint8_t  SWord8 ;
--- > typedef uint16_t SWord16;
--- > typedef uint32_t SWord32;
--- > typedef uint64_t SWord64;
--- > 
--- > /* Signed bit-vectors */
--- > typedef int8_t  SInt8 ;
--- > typedef int16_t SInt16;
--- > typedef int32_t SInt32;
--- > typedef int64_t SInt64;
--- > 
--- > /* Entry point prototype: */
--- > SWord8 popCount(const SWord64 x);
--- > 
--- > #endif /* __popCount__HEADER_INCLUDED__ */
---
--- The generated C function. Note how the Haskell list `pop8` is turned into a look-up
--- table automatically (see @table0@ below) in the C code.
---
--- > /* File: "popCount.c". Automatically generated by SBV. Do not edit! */
--- > 
--- > #include <inttypes.h>
--- > #include <stdint.h>
--- > #include "popCount.h"
--- > 
--- > SWord8 popCount(const SWord64 x)
--- > {
--- >   const SWord64 s0 = x;
--- >   static const SWord8 table0[] = {
--- >       0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4, 1, 2, 2, 3, 2, 3,
--- >       3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4,
--- >       3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 1, 2,
--- >       2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5,
--- >       3, 4, 4, 5, 4, 5, 5, 6, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5,
--- >       5, 6, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 1, 2, 2, 3,
--- >       2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4,
--- >       4, 5, 4, 5, 5, 6, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
--- >       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 2, 3, 3, 4, 3, 4,
--- >       4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6,
--- >       5, 6, 6, 7, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 4, 5,
--- >       5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8
--- >   };
--- >   const SWord64 s11 = s0 & 0x00000000000000ffULL;
--- >   const SWord8  s12 = table0[s11];
--- >   const SWord64 s13 = s0 >> 8;
--- >   const SWord64 s14 = 0x00000000000000ffULL & s13;
--- >   const SWord8  s15 = table0[s14];
--- >   const SWord8  s16 = s12 + s15;
--- >   const SWord64 s17 = s13 >> 8;
--- >   const SWord64 s18 = 0x00000000000000ffULL & s17;
--- >   const SWord8  s19 = table0[s18];
--- >   const SWord8  s20 = s16 + s19;
--- >   const SWord64 s21 = s17 >> 8;
--- >   const SWord64 s22 = 0x00000000000000ffULL & s21;
--- >   const SWord8  s23 = table0[s22];
--- >   const SWord8  s24 = s20 + s23;
--- >   const SWord64 s25 = s21 >> 8;
--- >   const SWord64 s26 = 0x00000000000000ffULL & s25;
--- >   const SWord8  s27 = table0[s26];
--- >   const SWord8  s28 = s24 + s27;
--- >   const SWord64 s29 = s25 >> 8;
--- >   const SWord64 s30 = 0x00000000000000ffULL & s29;
--- >   const SWord8  s31 = table0[s30];
--- >   const SWord8  s32 = s28 + s31;
--- >   const SWord64 s33 = s29 >> 8;
--- >   const SWord64 s34 = 0x00000000000000ffULL & s33;
--- >   const SWord8  s35 = table0[s34];
--- >   const SWord8  s36 = s32 + s35;
--- >   const SWord64 s37 = s33 >> 8;
--- >   const SWord64 s38 = 0x00000000000000ffULL & s37;
--- >   const SWord8  s39 = table0[s38];
--- >   const SWord8  s40 = s36 + s39;
--- >   
--- >   return s40;
--- > }
---
--- SBV will also generate a driver program for test purposes. The driver will call
--- the generated function with random values. (It is also possible to instruct SBV
--- to use prescribed values, see the function `compileToC''.)
---
--- > /* Example driver program for popCount. */
--- > /* Automatically generated by SBV. Edit as you see fit! */
--- > 
--- > #include <inttypes.h>
--- > #include <stdint.h>
--- > #include <stdio.h>
--- > #include "popCount.h"
--- > 
--- > int main(void)
--- > {
--- >   const SWord8 __result = popCount(0x000000007016b176ULL);
--- >   
--- >   printf("popCount(0x000000007016b176ULL) = %"PRIu8"\n", __result);
--- >   
--- >   return 0;
--- > }
---
--- And a @Makefile@ to simplify compilation:
---
--- > # Makefile for popCount. Automatically generated by SBV. Do not edit!
--- > 
--- > CC=gcc
--- > CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
--- > 
--- > all: popCount_driver
--- > 
--- > popCount.o: popCount.c popCount.h
--- > 	${CC} ${CCFLAGS} -c $< -o $@
--- > 
--- > popCount_driver.o: popCount_driver.c
--- > 	${CC} ${CCFLAGS} -c $< -o $@
--- > 
--- > popCount_driver: popCount.o popCount_driver.o
--- > 	${CC} ${CCFLAGS} $^ -o $@
--- > 
--- > clean:
--- > 	rm -f *.o
--- > 
--- > veryclean: clean
--- >	rm -f popCount_driver
-genPopCountInC :: IO ()
-genPopCountInC = compileToC Nothing "popCount" $ do
-        x <- cgInput "x"
-        cgReturn $ popCount x
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Crypto/AES.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Crypto/AES.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Crypto/AES.hs
+++ /dev/null
@@ -1,579 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Crypto.AES
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- An implementation of AES (Advanced Encryption Standard), using SBV.
--- For details on AES, see FIPS-197: <http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf>.
---
--- We do a T-box implementation, which leads to good C code as we can take
--- advantage of look-up tables. Note that we make virtually no attempt to
--- optimize our Haskell code. The concern here is not with getting Haskell running
--- fast at all. The idea is to program the T-Box implementation as naturally and clearly
--- as possible in Haskell, and have SBV's code-generator generate fast C code automatically.
--- Therefore, we merely use ordinary Haskell lists as our data-structures, and do not
--- bother with any unboxing or strictness annotations. Thus, we achieve the separation
--- of concerns: Correctness via clairty and simplicity and proofs on the Haskell side,
--- performance by relying on SBV's code generator. If necessary, the generated code
--- can be FFI'd back into Haskell to complete the loop.
---
--- All 3 valid key sizes (128, 192, and 256) as required by the FIPS-197 standard
--- are supported.
------------------------------------------------------------------------------
-
-{-# LANGUAGE ParallelListComp #-}
-
-module Data.SBV.Examples.Crypto.AES where
-
-import Data.SBV
-import Data.List (transpose)
-
------------------------------------------------------------------------------
--- * Formalizing GF(2^8)
------------------------------------------------------------------------------
-
--- | An element of the Galois Field 2^8, which are essentially polynomials with
--- maximum degree 7. They are conveniently represented as values between 0 and 255.
-type GF28 = SWord8
-
--- | Multiplication in GF(2^8). This is simple polynomial multipliation, followed
--- by the irreducible polynomial @x^8+x^5+x^3+x^1+1@. We simply use the 'pMult'
--- function exported by SBV to do the operation. 
-gf28Mult :: GF28 -> GF28 -> GF28
-gf28Mult x y = pMult (x, y, [8, 4, 3, 1, 0])
-
--- | Exponentiation by a constant in GF(2^8). The implementation uses the usual
--- square-and-multiply trick to speed up the computation.
-gf28Pow :: GF28 -> Int -> GF28
-gf28Pow n k = pow k
-  where sq x  = x `gf28Mult` x
-        pow 0    = 1
-        pow i
-         | odd i = n `gf28Mult` sq (pow (i `shiftR` 1))
-         | True  = sq (pow (i `shiftR` 1))
-
--- | Computing inverses in GF(2^8). By the mathematical properties of GF(2^8)
--- and the particular irreducible polynomial used @x^8+x^5+x^3+x^1+1@, it
--- turns out that raising to the 254 power gives us the multiplicative inverse.
--- Of course, we can prove this using SBV:
---
--- >>> prove $ \x -> x ./= 0 ==> x `gf28Mult` gf28Inverse x .== 1
--- Q.E.D.
---
--- Note that we exclude @0@ in our theorem, as it does not have a
--- multiplicative inverse.
-gf28Inverse :: GF28 -> GF28
-gf28Inverse x = x `gf28Pow` 254
-
------------------------------------------------------------------------------
--- * Implementing AES
------------------------------------------------------------------------------
-
------------------------------------------------------------------------------
--- ** Types and basic operations
------------------------------------------------------------------------------
--- | AES state. The state consists of four 32-bit words, each of which is in turn treated
--- as four GF28's, i.e., 4 bytes. The T-Box implementation keeps the four-bytes together
--- for efficient representation.
-type State = [SWord32]
-
--- | The key, which can be 128, 192, or 256 bits. Represented as a sequence of 32-bit words.
-type Key = [SWord32]
-
--- | The key schedule. AES executes in rounds, and it treats first and last round keys slightly
--- differently than the middle ones. We reflect that choice by being explicit about it in our type.
--- The length of the middle list of keys depends on the key-size, which in turn determines
--- the number of rounds.
-type KS = (Key, [Key], Key)
-
--- | Conversion from 32-bit words to 4 constituent bytes.
-toBytes :: SWord32 -> [GF28]
-toBytes x = [x1, x2, x3, x4]
-        where (h,  l)  = split x
-              (x1, x2) = split h
-              (x3, x4) = split l
-
--- | Conversion from 4 bytes, back to a 32-bit row, inverse of 'toBytes' above. We
--- have the following simple theorems stating this relationship formally:
---
--- >>> prove $ \a b c d -> toBytes (fromBytes [a, b, c, d]) .== [a, b, c, d]
--- Q.E.D.
---
--- >>> prove $ \r -> fromBytes (toBytes r) .== r
--- Q.E.D.
-fromBytes :: [GF28] -> SWord32
-fromBytes [x1, x2, x3, x4] = (x1 # x2) # (x3 # x4)
-fromBytes xs               = error $ "fromBytes: Unexpected input: " ++ show xs
-
--- | Rotating a state row by a fixed amount to the right.
-rotR :: [GF28] -> Int -> [GF28]
-rotR [a, b, c, d] 1 = [d, a, b, c]
-rotR [a, b, c, d] 2 = [c, d, a, b]
-rotR [a, b, c, d] 3 = [b, c, d, a]
-rotR xs           i = error $ "rotR: Unexpected input: " ++ show (xs, i)
-
------------------------------------------------------------------------------
--- ** The key schedule
------------------------------------------------------------------------------
-
--- | Definition of round-constants, as specified in Section 5.2 of the AES standard.
-roundConstants :: [GF28]
-roundConstants = 0 : [ gf28Pow 2 (k-1) | k <- [1 .. ] ]
-
--- | The @InvMixColumns@ transformation, as described in Section 5.3.3 of the standard. Note
--- that this transformation is only used explicitly during key-expansion in the T-Box implementation
--- of AES.
-invMixColumns :: State -> State
-invMixColumns state = map fromBytes $ transpose $ mmult (map toBytes state)
- where dot f   = foldr1 xor . zipWith ($) f
-       mmult n = [map (dot r) n | r <- [ [mE, mB, mD, m9]
-                                       , [m9, mE, mB, mD]
-                                       , [mD, m9, mE, mB]
-                                       , [mB, mD, m9, mE]
-                                       ]]
-       -- table-lookup versions of gf28Mult with the constants used in invMixColumns
-       mE = select mETable 0
-       mB = select mBTable 0
-       mD = select mDTable 0
-       m9 = select m9Table 0
-       mETable = map (gf28Mult 0xE) [0..255]
-       mBTable = map (gf28Mult 0xB) [0..255]
-       mDTable = map (gf28Mult 0xD) [0..255]
-       m9Table = map (gf28Mult 0x9) [0..255]
-
--- | Key expansion. Starting with the given key, returns an infinite sequence of
--- words, as described by the AES standard, Section 5.2, Figure 11.
-keyExpansion :: Int -> Key -> [Key]
-keyExpansion nk key = chop4 keys
-   where keys :: [SWord32]
-         keys = key ++ [nextWord i prev old | i <- [nk ..] | prev <- drop (nk-1) keys | old <- keys]
-         chop4 :: [a] -> [[a]]
-         chop4 xs = let (f, r) = splitAt 4 xs in f : chop4 r
-         nextWord :: Int -> SWord32 -> SWord32 -> SWord32
-         nextWord i prev old
-           | i `mod` nk == 0           = old `xor` (subWordRcon (prev `rotateL` 8) (roundConstants !! (i `div` nk)))
-           | i `mod` nk == 4 && nk > 6 = old `xor` (subWordRcon prev 0)
-           | True                      = old `xor` prev
-         subWordRcon :: SWord32 -> GF28 -> SWord32
-         subWordRcon w rc = fromBytes [a `xor` rc, b, c, d]
-            where [a, b, c, d] = map sbox $ toBytes w
-
------------------------------------------------------------------------------
--- ** The S-box transformation
------------------------------------------------------------------------------
-
--- | The values of the AES S-box table. Note that we describe the S-box programmatically
--- using the mathematical construction given in Section 5.1.1 of the standard. However,
--- the code-generation will turn this into a mere look-up table, as it is just a
--- constant table, all computation being done at \"compile-time\".
-sboxTable :: [GF28]
-sboxTable = [xformByte (gf28Inverse b) | b <- [0 .. 255]]
-  where xformByte :: GF28 -> GF28
-        xformByte b = foldr xor 0x63 [b `rotateR` i | i <- [0, 4, 5, 6, 7]]
-
--- | The sbox transformation. We simply select from the sbox table. Note that we
--- are obliged to give a default value (here @0@) to be used if the index is out-of-bounds
--- as required by SBV's 'select' function. However, that will never happen since
--- the table has all 256 elements in it.
-sbox :: GF28 -> GF28
-sbox = select sboxTable 0
-
------------------------------------------------------------------------------
--- ** The inverse S-box transformation
------------------------------------------------------------------------------
-
--- | The values of the inverse S-box table. Again, the construction is programmatic.
-unSBoxTable :: [GF28]
-unSBoxTable = [gf28Inverse (xformByte b) | b <- [0 .. 255]]
-  where xformByte :: GF28 -> GF28
-        xformByte b = foldr xor 0x05 [b `rotateR` i | i <- [2, 5, 7]]
-
--- | The inverse s-box transformation.
-unSBox :: GF28 -> GF28
-unSBox = select unSBoxTable 0
-
--- | Prove that the 'sbox' and 'unSBox' are inverses. We have:
---
--- >>> prove sboxInverseCorrect
--- Q.E.D.
---
-sboxInverseCorrect :: GF28 -> SBool
-sboxInverseCorrect x = unSBox (sbox x) .== x &&& sbox (unSBox x) .== x
-
------------------------------------------------------------------------------
--- ** AddRoundKey transformation
------------------------------------------------------------------------------
-
--- | Adding the round-key to the current state. We simply exploit the fact
--- that addition is just xor in implementing this transformation.
-addRoundKey :: Key -> State -> State
-addRoundKey = zipWith xor
-
------------------------------------------------------------------------------
--- ** Tables for T-Box encryption
------------------------------------------------------------------------------
-
--- | T-box table generation function.for encryption
-t0Func :: GF28 -> [GF28]
-t0Func a = [s `gf28Mult` 2, s, s, s `gf28Mult` 3] where s = sbox a
-
--- | First look-up table used in encryption
-t0 :: GF28 -> SWord32
-t0 = select t0Table 0 where t0Table = [fromBytes (t0Func a)          | a <- [0..255]]
-
--- | Second look-up table used in encryption
-t1 :: GF28 -> SWord32
-t1 = select t1Table 0 where t1Table = [fromBytes (t0Func a `rotR` 1) | a <- [0..255]]
-
--- | Third look-up table used in encryption
-t2 :: GF28 -> SWord32
-t2 = select t2Table 0 where t2Table = [fromBytes (t0Func a `rotR` 2) | a <- [0..255]]
-
--- | Fourth look-up table used in encryption
-t3 :: GF28 -> SWord32
-t3 = select t3Table 0 where t3Table = [fromBytes (t0Func a `rotR` 3) | a <- [0..255]]
-
------------------------------------------------------------------------------
--- ** Tables for T-Box decryption
------------------------------------------------------------------------------
-
--- | T-box table generating function for decryption
-u0Func :: GF28 -> [GF28]
-u0Func a = [s `gf28Mult` 0xE, s `gf28Mult` 0x9, s `gf28Mult` 0xD, s `gf28Mult` 0xB] where s = unSBox a
-
--- | First look-up table used in decryption
-u0 :: GF28 -> SWord32
-u0 = select t0Table 0 where t0Table = [fromBytes (u0Func a)          | a <- [0..255]]
-
--- | Second look-up table used in decryption
-u1 :: GF28 -> SWord32
-u1 = select t1Table 0 where t1Table = [fromBytes (u0Func a `rotR` 1) | a <- [0..255]]
-
--- | Third look-up table used in decryption
-u2 :: GF28 -> SWord32
-u2 = select t2Table 0 where t2Table = [fromBytes (u0Func a `rotR` 2) | a <- [0..255]]
-
--- | Fourth look-up table used in decryption
-u3 :: GF28 -> SWord32
-u3 = select t3Table 0 where t3Table = [fromBytes (u0Func a `rotR` 3) | a <- [0..255]]
-
------------------------------------------------------------------------------
--- ** AES rounds
------------------------------------------------------------------------------
-
--- | Generic round function. Given the function to perform one round, a key-schedule,
--- and a starting state, it performs the AES rounds.
-doRounds :: (Bool -> State -> Key -> State) -> KS -> State -> State
-doRounds rnd (ikey, rkeys, fkey) sIn = rnd True (last rs) fkey
-  where s0 = ikey `addRoundKey` sIn
-        rs = s0 : [rnd False s k | s <- rs | k <- rkeys ]
-
--- | One encryption round. The first argument indicates whether this is the final round
--- or not, in which case the construction is slightly different.
-aesRound :: Bool -> State -> Key -> State
-aesRound isFinal s key = d `addRoundKey` key
-  where d = map (f isFinal) [0..3]
-        a = map toBytes s
-        f True j = fromBytes $ [ sbox (a !! ((j+0) `mod` 4) !! 0)
-                               , sbox (a !! ((j+1) `mod` 4) !! 1)
-                               , sbox (a !! ((j+2) `mod` 4) !! 2)
-                               , sbox (a !! ((j+3) `mod` 4) !! 3)
-                               ]
-        f False j = e0 `xor` e1 `xor` e2 `xor` e3
-              where e0 = t0 (a !! ((j+0) `mod` 4) !! 0)
-                    e1 = t1 (a !! ((j+1) `mod` 4) !! 1)
-                    e2 = t2 (a !! ((j+2) `mod` 4) !! 2)
-                    e3 = t3 (a !! ((j+3) `mod` 4) !! 3)
-
--- | One decryption round. Similar to the encryption round, the first argument
--- indicates whether this is the final round or not.
-aesInvRound :: Bool -> State -> Key -> State
-aesInvRound isFinal s key = d `addRoundKey` key
-  where d = map (f isFinal) [0..3]
-        a = map toBytes s
-        f True j = fromBytes [ unSBox (a !! ((j+0) `mod` 4) !! 0)
-                             , unSBox (a !! ((j+3) `mod` 4) !! 1)
-                             , unSBox (a !! ((j+2) `mod` 4) !! 2)
-                             , unSBox (a !! ((j+1) `mod` 4) !! 3)
-                             ]
-        f False j = e0 `xor` e1 `xor` e2 `xor` e3
-              where e0 = u0 (a !! ((j+0) `mod` 4) !! 0)
-                    e1 = u1 (a !! ((j+3) `mod` 4) !! 1)
-                    e2 = u2 (a !! ((j+2) `mod` 4) !! 2)
-                    e3 = u3 (a !! ((j+1) `mod` 4) !! 3)
-
------------------------------------------------------------------------------
--- * AES API
------------------------------------------------------------------------------
-
--- | Key schedule. Given a 128, 192, or 256 bit key, expand it to get key-schedules
--- for encryption and decryption. The key is given as a sequence of 32-bit words.
--- (4 elements for 128-bits, 6 for 192, and 8 for 256.)
-aesKeySchedule :: Key -> (KS, KS)
-aesKeySchedule key
-  | nk `elem` [4, 6, 8]
-  = (encKS, decKS)
-  | True
-  = error "aesKeySchedule: Invalid key size"
-  where nk = length key
-        nr = nk + 6
-        encKS@(f, m, l) = (head rKeys, take (nr-1) (tail rKeys), rKeys !! nr)
-        decKS = (l, map invMixColumns (reverse m), f)
-        rKeys = keyExpansion nk key
-
--- | Block encryption. The first argument is the plain-text, which must have
--- precisely 4 elements, for a total of 128-bits of input. The second
--- argument is the key-schedule to be used, obtained by a call to 'aesKeySchedule'.
--- The output will always have 4 32-bit words, which is the cipher-text.
-aesEncrypt :: [SWord32] -> KS -> [SWord32]
-aesEncrypt pt encKS
-  | length pt == 4
-  = doRounds aesRound encKS pt
-  | True
-  = error "aesEncrypt: Invalid plain-text size"
-
--- | Block decryption. The arguments are the same as in 'aesEncrypt', except
--- the first argument is the cipher-text and the output is the corresponding
--- plain-text.
-aesDecrypt :: [SWord32] -> KS -> [SWord32]
-aesDecrypt ct decKS
-  | length ct == 4
-  = doRounds aesInvRound decKS ct
-  | True
-  = error "aesDecrypt: Invalid cipher-text size"
-
------------------------------------------------------------------------------
--- * Test vectors
------------------------------------------------------------------------------
-
------------------------------------------------------------------------------
--- ** 128-bit enc/dec test
------------------------------------------------------------------------------
-
--- | 128-bit encryption test, from Appendix C.1 of the AES standard:
---
--- >>> map hex t128Enc
--- ["69c4e0d8","6a7b0430","d8cdb780","70b4c55a"]
---
-t128Enc :: [SWord32]
-t128Enc = aesEncrypt pt ks
-  where pt  = [0x00112233, 0x44556677, 0x8899aabb, 0xccddeeff]
-        key = [0x00010203, 0x04050607, 0x08090a0b, 0x0c0d0e0f]
-        (ks, _) = aesKeySchedule key
-
--- | 128-bit decryption test, from Appendix C.1 of the AES standard:
---
--- >>> map hex t128Dec
--- ["00112233","44556677","8899aabb","ccddeeff"]
---
-t128Dec :: [SWord32]
-t128Dec = aesDecrypt ct ks
-  where ct  = [0x69c4e0d8, 0x6a7b0430, 0xd8cdb780, 0x70b4c55a]
-        key = [0x00010203, 0x04050607, 0x08090a0b, 0x0c0d0e0f]
-        (_, ks) = aesKeySchedule key
-
------------------------------------------------------------------------------
--- ** 192-bit enc/dec test
------------------------------------------------------------------------------
-
--- | 192-bit encryption test, from Appendix C.2 of the AES standard:
---
--- >>> map hex t192Enc
--- ["dda97ca4","864cdfe0","6eaf70a0","ec0d7191"]
---
-t192Enc :: [SWord32]
-t192Enc = aesEncrypt pt ks
-  where pt  = [0x00112233, 0x44556677, 0x8899aabb, 0xccddeeff]
-        key = [0x00010203, 0x04050607, 0x08090a0b, 0x0c0d0e0f, 0x10111213, 0x14151617]
-        (ks, _) = aesKeySchedule key
-
--- | 192-bit decryption test, from Appendix C.2 of the AES standard:
---
--- >>> map hex t192Dec
--- ["00112233","44556677","8899aabb","ccddeeff"]
---
-t192Dec :: [SWord32]
-t192Dec = aesDecrypt ct ks
-  where ct  = [0xdda97ca4, 0x864cdfe0, 0x6eaf70a0, 0xec0d7191]
-        key = [0x00010203, 0x04050607, 0x08090a0b, 0x0c0d0e0f, 0x10111213, 0x14151617]
-        (_, ks) = aesKeySchedule key
-
------------------------------------------------------------------------------
--- ** 256-bit enc/dec test
------------------------------------------------------------------------------
-
--- | 256-bit encryption, from Appendix C.3 of the AES standard:
---
--- >>> map hex t256Enc
--- ["8ea2b7ca","516745bf","eafc4990","4b496089"]
---
-t256Enc :: [SWord32]
-t256Enc = aesEncrypt pt ks
-  where pt  = [0x00112233, 0x44556677, 0x8899aabb, 0xccddeeff]
-        key = [0x00010203, 0x04050607, 0x08090a0b, 0x0c0d0e0f, 0x10111213, 0x14151617, 0x18191a1b, 0x1c1d1e1f]
-        (ks, _) = aesKeySchedule key
-
--- | 256-bit decryption, from Appendix C.3 of the AES standard:
---
--- >>> map hex t256Dec
--- ["00112233","44556677","8899aabb","ccddeeff"]
---
-t256Dec :: [SWord32]
-t256Dec = aesDecrypt ct ks
-  where ct  = [0x8ea2b7ca, 0x516745bf, 0xeafc4990, 0x4b496089]
-        key = [0x00010203, 0x04050607, 0x08090a0b, 0x0c0d0e0f, 0x10111213, 0x14151617, 0x18191a1b, 0x1c1d1e1f]
-        (_, ks) = aesKeySchedule key
-
-
------------------------------------------------------------------------------
--- * Verification
--- ${verifIntro}
------------------------------------------------------------------------------
-{- $verifIntro
-  While SMT based technologies can prove correct many small properties fairly quickly, it would
-  be naive for them to automatically verify that our AES implementation is correct. (By correct,
-  we mean decryption follewed by encryption yielding the same result.) However, we can state
-  this property precisely using SBV, and use quick-check to gain some confidence.
--}
-
--- | Correctness theorem for 128-bit AES. Ideally, we would run:
---
--- @
---   prove aes128IsCorrect
--- @
---
--- to get a proof automatically. Unfortunately, while SBV will successfully generate the proof
--- obligation for this theorem and ship it to the SMT solver, it would be naive to expect the SMT-solver
--- to finish that proof in any reasonable time with the currently available SMT solving technologies.
--- Instead, we can issue:
---
--- @
---   quickCheck aes128IsCorrect
--- @
--- 
--- and get some degree of confidence in our code. Similar predicates can be easily constructed for 192, and
--- 256 bit cases as well.
-aes128IsCorrect :: (SWord32, SWord32, SWord32, SWord32)  -- ^ plain-text words
-                -> (SWord32, SWord32, SWord32, SWord32)  -- ^ key-words
-                -> SBool                                 -- ^ True if round-trip gives us plain-text back
-aes128IsCorrect (i0, i1, i2, i3) (k0, k1, k2, k3) = pt .== pt'
-   where pt  = [i0, i1, i2, i3]
-         key = [k0, k1, k2, k3]
-         (encKS, decKS) = aesKeySchedule key
-         ct  = aesEncrypt pt encKS
-         pt' = aesDecrypt ct decKS
-
------------------------------------------------------------------------------
--- * Code generation
--- ${codeGenIntro}
------------------------------------------------------------------------------
-{- $codeGenIntro
-   We have emphasized that our T-Box implementation in Haskell was guided by clarity and correctness, not
-   performance. Indeed, our implementation is hardly the fastest AES implementation in Haskell. However,
-   we can use it to automatically generate straight-line C-code that can run fairly fast.
-
-   For the purposes of illustration, we only show here how to generate code for a 128-bit AES block-encrypt
-   function, that takes 8 32-bit words as an argument. The first 4 are the 128-bit input, and the final
-   four are the 128-bit key. The impact of this is that the generated function would expand the key for
-   each block of encryption, a needless task unless we change the key in every block. In a more serios application,
-   we would instead generate code for both the 'aesKeySchedule' and the 'aesEncrypt' functions, thus reusing the
-   key-schedule over many applications of the encryption call. (Unfortunately doing this is rather cumbersome right
-   now, since Haskell does not support fixed-size lists.)
--}
-
--- | Code generation for 128-bit AES encryption.
---
--- The following sample from the generated code-lines show how T-Boxes are rendered as C arrays:
---
--- @
---   static const SWord32 table1[] = {
---       0xc66363a5UL, 0xf87c7c84UL, 0xee777799UL, 0xf67b7b8dUL,
---       0xfff2f20dUL, 0xd66b6bbdUL, 0xde6f6fb1UL, 0x91c5c554UL,
---       0x60303050UL, 0x02010103UL, 0xce6767a9UL, 0x562b2b7dUL,
---       0xe7fefe19UL, 0xb5d7d762UL, 0x4dababe6UL, 0xec76769aUL,
---       ...
---       }
--- @
---
--- The generated program has 5 tables (one sbox table, and 4-Tboxes), all converted to fast C arrays. Here
--- is a sample of the generated straightline C-code:
---
--- @
---   const SWord8  s1915 = (SWord8) s1912;
---   const SWord8  s1916 = table0[s1915];
---   const SWord16 s1917 = (((SWord16) s1914) << 8) | ((SWord16) s1916);
---   const SWord32 s1918 = (((SWord32) s1911) << 16) | ((SWord32) s1917);
---   const SWord32 s1919 = s1844 ^ s1918;
---   const SWord32 s1920 = s1903 ^ s1919;
--- @
---
--- The GNU C-compiler does a fine job of optimizing this straightline code to generate a fairly efficient C implementation.
-cgAES128BlockEncrypt :: IO ()
-cgAES128BlockEncrypt = compileToC Nothing "aes128BlockEncrypt" $ do
-        pt  <- cgInputArr 4 "pt"        -- plain-text as an array of 4 Word32's
-        key <- cgInputArr 4 "key"       -- key as an array of 4 Word32s
-        -- Use the test values from Appendix C.1 of the AES standard as the driver values
-        cgSetDriverValues $    [0x00112233, 0x44556677, 0x8899aabb, 0xccddeeff]
-                            ++ [0x00010203, 0x04050607, 0x08090a0b, 0x0c0d0e0f]
-        let (encKs, _) = aesKeySchedule key
-        cgOutputArr "ct" $ aesEncrypt pt encKs
-
------------------------------------------------------------------------------
--- * C-library generation
--- ${libraryIntro}
------------------------------------------------------------------------------
-{- $libraryIntro
-   The 'cgAES128BlockEncrypt' example shows how to generate code for 128-bit AES encryption. As the generated
-   function performs encryption on a given block, it performs key expansion as necessary. However, this is
-   not quite practical: We would like to expand the key only once, and encrypt the stream of plain-text blocks using
-   the same expanded key (potentially using some crypto-mode), until we decide to change the key. In this
-   section, we show how to use SBV to instead generate a library of functions that can be used in such a scenario.
-   The generated library is a typical @.a@ archive, that can be linked using the C-compiler as usual.
--}
-
--- | Components of the AES-128 implementation that the library is generated from
-aes128LibComponents :: [(String, SBVCodeGen ())]
-aes128LibComponents = [ ("aes128KeySchedule",  keySchedule)
-                      , ("aes128BlockEncrypt", enc128)
-                      , ("aes128BlockDecrypt", dec128)
-                      ]
-  where -- key-schedule
-        keySchedule = do key <- cgInputArr 4 "key"     -- key
-                         let (encKS, decKS) = aesKeySchedule key
-                         cgOutputArr "encKS" (ksToXKey encKS)
-                         cgOutputArr "decKS" (ksToXKey decKS)
-        -- encryption
-        enc128 = do pt   <- cgInputArr 4  "pt"    -- plain-text
-                    xkey <- cgInputArr 44 "xkey"  -- expanded key, for 128-bit AES, the key-expansion has 44 Word32's
-                    cgOutputArr "ct" $ aesEncrypt pt (xkeyToKS xkey)
-        -- decryption
-        dec128 = do pt   <- cgInputArr 4  "ct"    -- cipher-text
-                    xkey <- cgInputArr 44 "xkey"  -- expanded key, for 128-bit AES, the key-expansion has 44 Word32's
-                    cgOutputArr "pt" $ aesDecrypt pt (xkeyToKS xkey)
-        -- Transforming back and forth from our KS type to a flat array used by the generated C code
-        -- Turn a series of expanded keys to our internal KS type
-        xkeyToKS :: [SWord32] -> KS
-        xkeyToKS xs = (f, m, l)
-           where f = take 4 xs                       -- first round key
-                 m = chop4 (take 36 (drop 4 xs))     -- middle rounds
-                 l = drop 40 xs                      -- last round key
-        -- Turn a KS to a series of expanded key words
-        ksToXKey :: KS -> [SWord32]
-        ksToXKey (f, m, l) = f ++ concat m ++ l
-        -- chunk in fours. (This function must be in some standard library, where?)
-        chop4 :: [a] -> [[a]]
-        chop4 [] = []
-        chop4 xs = let (f, r) = splitAt 4 xs in f : chop4 r
-
--- | Generate a C library, containing functions for performing 128-bit enc/dec/key-expansion.
--- A note on performance: In a very rough speed test, the generated code was able to do
--- 6.3 million block encryptions per second on a decent MacBook Pro. On the same machine, OpenSSL
--- reports 8.2 million block encryptions per second. So, the generated code is about 25% slower
--- as compared to the highly optimized OpenSSL implementation. (Note that the speed test was done
--- somewhat simplistically, so these numbers should be considered very rough estimates.)
-cgAES128Library :: IO ()
-cgAES128Library = compileToCLib Nothing "aes128Lib" aes128LibComponents
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Polynomials/Polynomials.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Polynomials/Polynomials.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Polynomials/Polynomials.hs
+++ /dev/null
@@ -1,78 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Polynomials.Polynomials
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Simple usage of polynomials over GF(2^n), using Rijndael's
--- finite field: <http://en.wikipedia.org/wiki/Finite_field_arithmetic#Rijndael.27s_finite_field>
---
--- The functions available are:
---
---  [/pMult/] GF(2^n) Multiplication
---
---  [/pDiv/] GF(2^n) Division
---
---  [/pMod/] GF(2^n) Modulus
---
---  [/pDivMod/] GF(2^n) Division/Modulus, packed together
---
--- Note that addition in GF(2^n) is simply `xor`, so no custom function is provided.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Polynomials.Polynomials where
-
-import Data.SBV
-
--- | Helper synonym for representing GF(2^8); which are merely 8-bit unsigned words. Largest
--- term in such a polynomial has degree 7.
-type GF28 = SWord8
-
--- | Multiplication in Rijndael's field; usual polynomial multiplication followed by reduction
--- by the irreducible polynomial.  The irreducible used by Rijndael's field is the polynomial
--- @x^8 + x^4 + x^3 + x + 1@, which we write by giving it's /exponents/ in SBV.
--- See: <http://en.wikipedia.org/wiki/Finite_field_arithmetic#Rijndael.27s_finite_field>.
--- Note that the irreducible itself is not in GF28! It has a degree of 8.
---
--- NB. You can use the 'showPoly' function to print polynomials nicely, as a mathematician would write.
-(<*>) :: GF28 -> GF28 -> GF28
-a <*> b = pMult (a, b, [8, 4, 3, 1, 0])
-
--- | States that the unit polynomial @1@, is the unit element
-multUnit :: GF28 -> SBool
-multUnit x = (x <*> unit) .== x
-  where unit = polynomial [0]   -- x@0
-
--- | States that multiplication is commutative
-multComm :: GF28 -> GF28 -> SBool
-multComm x y = (x <*> y) .== (y <*> x)
-
--- | States that multiplication is associative, note that associativity
--- proofs are notoriously hard for SAT/SMT solvers
-multAssoc :: GF28 -> GF28 -> GF28 -> SBool
-multAssoc x y z = ((x <*> y) <*> z) .== (x <*> (y <*> z))
-
--- | States that the usual multiplication rule holds over GF(2^n) polynomials
--- Checks:
---
--- @
---    if (a, b) = x `pDivMod` y then x = y `pMult` a + b
--- @
---
--- being careful about @y = 0@. When divisor is 0, then quotient is
--- defined to be 0 and the remainder is the numerator.
--- (Note that addition is simply `xor` in GF(2^8).)
-polyDivMod :: GF28 -> GF28 -> SBool
-polyDivMod x y = ite (y .== 0) ((0, x) .== (a, b)) (x .== y <*> a `xor` b)
-  where (a, b) = x `pDivMod` y
-
--- | Queries
-testGF28 :: IO ()
-testGF28 = do
-  print =<< prove multUnit
-  print =<< prove multComm
-  -- print =<< prove multAssoc -- takes too long; see above note..
-  print =<< prove polyDivMod
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/PrefixSum/PrefixSum.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/PrefixSum/PrefixSum.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/PrefixSum/PrefixSum.hs
+++ /dev/null
@@ -1,304 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.PrefixSum.PrefixSum
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- The PrefixSum algorithm over power-lists and proof of
--- the Ladner-Fischer implementation.
--- See <http://www.cs.utexas.edu/users/psp/powerlist.pdf>
--- and <http://www.cs.utexas.edu/~plaxton/c/337/05f/slides/ParallelRecursion-4.pdf>.
------------------------------------------------------------------------------
-
-{-# LANGUAGE Rank2Types #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-
-module Data.SBV.Examples.PrefixSum.PrefixSum where
-
-import Data.SBV
-import Data.SBV.Internals(runSymbolic)
-
-----------------------------------------------------------------------
--- * Formalizing power-lists
-----------------------------------------------------------------------
-
--- | A poor man's representation of powerlists and
--- basic operations on them: <http://www.cs.utexas.edu/users/psp/powerlist.pdf>.
--- We merely represent power-lists by ordinary lists.
-type PowerList a = [a]
-
--- | The tie operator, concatenation
-tiePL :: PowerList a -> PowerList a -> PowerList a
-tiePL = (++)
-
--- | The zip operator, zips the power-lists of the same size, returns
--- a powerlist of double the size.
-zipPL :: PowerList a -> PowerList a -> PowerList a
-zipPL []     []     = []
-zipPL (x:xs) (y:ys) = x : y : zipPL xs ys
-zipPL _      _      = error "zipPL: nonsimilar powerlists received"
-
--- | Inverse of zipping
-unzipPL :: PowerList a -> (PowerList a, PowerList a)
-unzipPL = unzip . chunk2
-  where chunk2 []       = []
-        chunk2 (x:y:xs) = (x,y) : chunk2 xs
-        chunk2 _        = error "unzipPL: malformed powerlist"
-
-----------------------------------------------------------------------
--- * Reference prefix-sum implementation
-----------------------------------------------------------------------
-
--- | Reference prefix sum (@ps@) is simply Haskell's @scanl1@ function
-ps :: (a, a -> a -> a) -> PowerList a -> PowerList a
-ps (_, f) = scanl1 f
-
-----------------------------------------------------------------------
--- * The Ladner-Fischer parallel version
-----------------------------------------------------------------------
-
--- | The Ladner-Fischer (@lf@) implementation of prefix-sum. See <http://www.cs.utexas.edu/~plaxton/c/337/05f/slides/ParallelRecursion-4.pdf>
--- or pg. 16 of <http://www.cs.utexas.edu/users/psp/powerlist.pdf>.
-lf :: (a, a -> a -> a) -> PowerList a -> PowerList a
-lf _ []         = error "lf: malformed (empty) powerlist"
-lf _ [x]        = [x]
-lf (zero, f) pl = zipPL (zipWith f (rsh lfpq) p) lfpq
-   where (p, q) = unzipPL pl
-         pq     = zipWith f p q
-         lfpq   = lf (zero, f) pq
-         rsh xs = zero : init xs
-
-
-----------------------------------------------------------------------
--- * Sample proofs for concrete operators
-----------------------------------------------------------------------
-
--- | Correctness theorem, for a powerlist of given size, an associative operator, and its left-unit element
-flIsCorrect :: Int -> (forall a. (OrdSymbolic a, Bits a) => (a, a -> a -> a)) -> Symbolic SBool
-flIsCorrect n zf = do
-        args :: PowerList SWord32 <- mkFreeVars n
-        return $ ps zf args .== lf zf args
-
--- | Proves Ladner-Fischer is equivalent to reference specification for addition.
--- @0@ is the left-unit element, and we use a power-list of size @8@.
-thm1 :: IO ThmResult
-thm1 = prove $ flIsCorrect  8 (0, (+))
-
--- | Proves Ladner-Fischer is equivalent to reference specification for the function @max@.
--- @0@ is the left-unit element, and we use a power-list of size @16@.
-thm2 :: IO ThmResult
-thm2 = prove $ flIsCorrect 16 (0, smax)
-
-----------------------------------------------------------------------
--- * Attempt at proving for arbitrary operators
-----------------------------------------------------------------------
--- | Try proving correctness for an arbitrary operator. This proof will /not/ go through since the
--- SMT solver does not know that the operator associative and has the given left-unit element
---
--- >>> thm3
--- Falsifiable. Counter-example:
---   s0 = 0 :: SWord32
---   s1 = 0 :: SWord32
---   s2 = 0 :: SWord32
---   s3 = 0 :: SWord32
---   s4 = 0 :: SWord32
---   s5 = 0 :: SWord32
---   s6 = 0 :: SWord32
---   s7 = 3221225472 :: SWord32
---   -- uninterpreted: u
---        u  = 0
---   -- uninterpreted: flOp
---        flOp 0 3221225472 = 2147483648
---        flOp 0 2147483648 = 3758096384
---        flOp _ _          = 0
---
--- You can verify that the above function for @flOp@ is not associative:
---
--- @
---   ghci> flOp 3221225472 (flOp 2147483648 3221225472)
---   0
---   ghci> flOp (flOp 3221225472 2147483648) 3221225472
---   2147483648
--- @
---
--- Also, the unit @0@ is clearly not a left-unit for @flOp@, as the third
--- equation for @flOp@ will simply map many elements to @0@.
-thm3 :: IO ThmResult
-thm3 = prove $ do args :: PowerList SWord32 <- mkFreeVars 8
-                  return $ ps (u, op) args .== lf (u, op) args
-  where op :: SWord32 -> SWord32 -> SWord32
-        op = uninterpret "flOp"
-        u :: SWord32
-        u = uninterpret "u"
-
-----------------------------------------------------------------------
--- * Proving for arbitrary operators using axioms
-----------------------------------------------------------------------
--- | Generate an instance of the prefix-sum problem for an arbitrary operator, by telling the SMT solver
--- the necessary axioms for associativity and left-unit. The first argument states how wide the power list should be.
-genPrefixSumInstance :: Int -> Symbolic SBool
-genPrefixSumInstance n = do
-     args :: PowerList SWord32 <- mkFreeVars n
-     addAxiom "flOp is associative"     $ assocAxiom (sbvUFName opH)
-     addAxiom "u is left-unit for flOp" $ leftUnitAxiom (sbvUFName opH) (sbvUFName uH)
-     return $ ps (u, op) args .== lf (u, op) args
-  where op :: SWord32 -> SWord32 -> SWord32
-        opH :: SBVUF
-        (opH, op) = uninterpretWithHandle "flOp"
-        u  :: SWord32
-        uH :: SBVUF
-        (uH, u)  = uninterpretWithHandle "u"
-        -- this is the brittle part; but it'll have to do until we get a proper
-        -- DSL for expressing SMT-axioms..
-        mkCall :: String -> String -> String -> String
-        mkCall o x y = "(" ++ o ++ " " ++ x ++ " " ++ y ++ ")"
-        assocAxiom :: String -> [String]
-        assocAxiom o = [
-             ":assumption (forall (?x BitVec[32]) (?y BitVec[32]) (?z BitVec[32])"
-           , "                    (= " ++ lhs
-           , "                       " ++ rhs
-           , "                    )"
-           , "            )"
-          ]
-          where lhs = mkCall o (mkCall o "?x" "?y") "?z"
-                rhs = mkCall o "?x" (mkCall o "?y" "?z")
-        leftUnitAxiom :: String -> String -> [String]
-        leftUnitAxiom o ue = [
-            ":assumption (forall (?x BitVec[32])"
-          , "                    (= " ++ lhs
-          , "                       " ++ rhs
-          , "                    )"
-          , "            )"
-          ]
-          where lhs = "(" ++ o ++ " " ++ ue ++ " " ++ "?x" ++ ")"
-                rhs = "?x"
-
--- | Prove the generic problem for powerlists of given sizes. Note that
--- this will only work for Yices-1. This is due to the fact that Yices-2
--- follows the SMT-Lib standard and does not accept bit-vector problems with
--- quantified axioms in them, while Yices-1 did allow for that. The crux of
--- the problem is that there are no SMT-Lib logics that combine BV's and
--- quantifiers, see: <http://goedel.cs.uiowa.edu/smtlib/logics.html>. So we
--- are stuck until new powerful logics are added to SMT-Lib.
---
--- Here, we explicitly tell SBV to use Yices-1 that did not have that limitation.
--- Tweak the executable location accordingly below for your platform..
---
--- We have:
---
--- >>> prefixSum 2
--- Q.E.D.
---
--- >>> prefixSum 4
--- Q.E.D.
---
--- Note that these proofs tend to run long. Also, Yices-1.0.28 ran out of memory
--- and crashed on my box when I tried for size @8@, after running for about 2.5 minutes..
-prefixSum :: Int -> IO ThmResult
-prefixSum i
-  -- Fast way of checking whether a number is a power of two, see: <http://graphics.stanford.edu/~seander/bithacks.html#DetermineIfPowerOf2>
-  | i <= 1 || (i .&. (i-1)) /= 0
-  = error $ "prefixSum: input must be a power of 2 larger than 2, received: " ++ show i
-  | True
-  = proveWith cfg $ genPrefixSumInstance i
-  where cfg = defaultSMTCfg { solver = yices' }
-        yices' = yices { options    = ["-tc", "-smt", "-e"]
-                       , executable = "/usr/local/yices-1.0.28/bin/yices"
-                       }
-
-----------------------------------------------------------------------
--- * Inspecting symbolic traces
-----------------------------------------------------------------------
-
--- | A symbolic trace can help illustrate the action of Ladner-Fischer. This
--- generator produces the actions of Ladner-Fischer for addition, showing how
--- the computation proceeds:
---
--- >>> ladnerFischerTrace 8
--- INPUTS
---   s0 :: SWord8
---   s1 :: SWord8
---   s2 :: SWord8
---   s3 :: SWord8
---   s4 :: SWord8
---   s5 :: SWord8
---   s6 :: SWord8
---   s7 :: SWord8
--- CONSTANTS
---   s_2 = False
---   s_1 = True
--- TABLES
--- ARRAYS
--- UNINTERPRETED CONSTANTS
--- AXIOMS
--- DEFINE
---   s8 :: SWord8 = s0 + s1
---   s9 :: SWord8 = s2 + s8
---   s10 :: SWord8 = s2 + s3
---   s11 :: SWord8 = s8 + s10
---   s12 :: SWord8 = s4 + s11
---   s13 :: SWord8 = s4 + s5
---   s14 :: SWord8 = s11 + s13
---   s15 :: SWord8 = s6 + s14
---   s16 :: SWord8 = s6 + s7
---   s17 :: SWord8 = s13 + s16
---   s18 :: SWord8 = s11 + s17
--- OUTPUTS
---   s0
---   s8
---   s9
---   s11
---   s12
---   s14
---   s15
---   s18
-ladnerFischerTrace :: Int -> IO ()
-ladnerFischerTrace n = gen >>= print
-  where gen = runSymbolic $ do args :: [SWord8] <- mkFreeVars n
-                               mapM_ output $ lf (0, (+)) args
-
--- | Trace generator for the reference spec. It clearly demonstrates that the reference
--- implementation fewer operations, but is not parallelizable at all:
---
--- >>> scanlTrace 8
--- INPUTS
---   s0 :: SWord8
---   s1 :: SWord8
---   s2 :: SWord8
---   s3 :: SWord8
---   s4 :: SWord8
---   s5 :: SWord8
---   s6 :: SWord8
---   s7 :: SWord8
--- CONSTANTS
---   s_2 = False
---   s_1 = True
--- TABLES
--- ARRAYS
--- UNINTERPRETED CONSTANTS
--- AXIOMS
--- DEFINE
---   s8 :: SWord8 = s0 + s1
---   s9 :: SWord8 = s2 + s8
---   s10 :: SWord8 = s3 + s9
---   s11 :: SWord8 = s4 + s10
---   s12 :: SWord8 = s5 + s11
---   s13 :: SWord8 = s6 + s12
---   s14 :: SWord8 = s7 + s13
--- OUTPUTS
---   s0
---   s8
---   s9
---   s10
---   s11
---   s12
---   s13
---   s14
---
-scanlTrace :: Int -> IO ()
-scanlTrace n = gen >>= print
-  where gen = runSymbolic $ do args :: [SWord8] <- mkFreeVars n
-                               mapM_ output $ ps (0, (+)) args
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/DogCatMouse.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/DogCatMouse.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/DogCatMouse.hs
+++ /dev/null
@@ -1,41 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Puzzles.DogCatMouse
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Puzzle:
---   Spend exactly 100 dollars and buy exactly 100 animals.
---   Dogs cost 15 dollars, cats cost 1 dollar, and mice cost 25 cents each.
---   You have to buy at least one of each.
---   How many of each should you buy?
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Puzzles.DogCatMouse where
-
-import Data.SBV
-
--- | Use 16-bit words to represent the counts, much larger than we actually need, but no harm.
-type Count = SWord16
-
--- | Codes the puzzle statement, more or less directly using SBV.
-puzzle :: Count -> Count -> Count -> SBool
-puzzle dog cat mouse =
-         dog   .>= 1 &&& dog   .<= 98                  -- at least one dog and at most 98
-    &&&  cat   .>= 1 &&& cat   .<= 98                  -- ditto for cats
-    &&&  mouse .>= 1 &&& mouse .<= 98                  -- ditto for mice
-    &&&  dog + cat + mouse .== 100                     -- buy precisely 100 animals
-    &&&  1500 * dog + 100 * cat + 25 * mouse .== 10000 -- spend exactly 100 dollars (use cents since we don't have fractions)
-
--- | Prints the only solution:
---
--- >>> solve
--- Only one solution found:
---   dog = 3 :: SWord16
---   cat = 41 :: SWord16
---   mouse = 56 :: SWord16
-solve :: IO AllSatResult
-solve = allSat $ forAll ["dog", "cat", "mouse"] puzzle
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Euler185.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Euler185.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Euler185.hs
+++ /dev/null
@@ -1,50 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Puzzles.Euler185
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- A solution to Project Euler problem #185: <http://projecteuler.net/index.php?section=problems&id=185>
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Puzzles.Euler185 where
-
-import Data.Char(ord)
-import Data.SBV
-
--- | The given guesses and the correct digit counts, encoded as a simple list.
-guesses :: [(String, SWord8)]
-guesses = [ ("5616185650518293", 2), ("3847439647293047", 1), ("5855462940810587", 3)
-          , ("9742855507068353", 3), ("4296849643607543", 3), ("3174248439465858", 1)
-          , ("4513559094146117", 2), ("7890971548908067", 3), ("8157356344118483", 1)
-          , ("2615250744386899", 2), ("8690095851526254", 3), ("6375711915077050", 1)
-          , ("6913859173121360", 1), ("6442889055042768", 2), ("2321386104303845", 0)
-          , ("2326509471271448", 2), ("5251583379644322", 2), ("1748270476758276", 3)
-          , ("4895722652190306", 1), ("3041631117224635", 3), ("1841236454324589", 3)
-          , ("2659862637316867", 2)
-          ]
-
--- | Encode the problem, note that we check digits are within 0-9 as
--- we use 8-bit words to represent them. Otherwise, the constraints are simply
--- generated by zipping the alleged solution with each guess, and making sure the
--- number of matching digits match what's given in the problem statement.
-euler185 :: Symbolic SBool
-euler185 = do soln <- mkFreeVars 16
-              return $ bAll digit soln &&& bAnd (map (genConstr soln) guesses)
-  where genConstr a (b, c) = sum (zipWith eq a b) .== (c :: SWord8)
-        digit x = (x :: SWord8) .>= 0 &&& x .<= 9
-        eq x y =  ite (x .== fromIntegral (ord y - ord '0')) 1 0
-
--- | Print out the solution nicely. We have:
---
--- >>> solve
--- 4640261571849533
--- Number of solutions: 1
-solve :: IO ()
-solve = do res <- allSat euler185
-           cnt <- displayModels disp res
-           putStrLn $ "Number of solutions: " ++ show cnt
-   where disp _ ss = putStrLn $ concatMap show (ss :: [Word8])
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/MagicSquare.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/MagicSquare.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/MagicSquare.hs
+++ /dev/null
@@ -1,77 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Puzzles.MagicSquare
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Solves the magic-square puzzle. An NxN magic square is one where all entries
--- are filled with numbers from 1 to NxN such that sums of all rows, columns
--- and diagonals is the same.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Puzzles.MagicSquare where
-
-import Data.List (genericLength, transpose)
-
-import Data.SBV
-
--- | Use 32-bit words for elements.
-type Elem  = SWord32
-
--- | A row is a list of elements
-type Row   = [Elem]
-
--- | The puzzle board is a list of rows
-type Board = [Row]
-
--- | Checks that all elements in a list are within bounds
-check :: Elem -> Elem -> [Elem] -> SBool
-check low high grp = bAll rangeFine grp
-  where rangeFine x = x .>= low &&& x .<= high
-
--- | Get the diagonal of a square matrix
-diag :: [[a]] -> [a]
-diag ((a:_):rs) = a : diag (map tail rs)
-diag _          = []
-
--- | Test if a given board is a magic square
-isMagic :: Board -> SBool
-isMagic rows = bAnd $ fromBool isSquare : allEqual (map sum items) : allDifferent (concat rows) : map chk items
-  where items = d1 : d2 : rows ++ columns
-        n = genericLength rows
-        isSquare = all (\r -> genericLength r == n) rows
-        columns = transpose rows
-        d1 = diag rows
-        d2 = diag (map reverse rows)
-        chk = check (literal 1) (literal (n*n))
-
--- | Group a list of elements in the sublists of length @i@
-chunk :: Int -> [a] -> [[a]]
-chunk _ [] = []
-chunk i xs = let (f, r) = splitAt i xs in f : chunk i r
-
--- | Given @n@, magic @n@ prints all solutions to the @nxn@ magic square problem
-magic :: Int -> IO ()
-magic n
- | n < 0 = putStrLn $ "n must be non-negative, received: " ++ show n
- | True  = do putStrLn $ "Finding all " ++ show n ++ "-magic squares.."
-              res <- allSat $ mkFreeVars n2 >>= return . isMagic . chunk n
-              cnt <- displayModels disp res
-              putStrLn $ "Found: " ++ show cnt ++ " solution(s)."
-   where n2 = n * n
-         disp i model
-          | lmod /= n2
-          = error $ "Impossible! Backend solver returned " ++ show n ++ " values, was expecting: " ++ show lmod
-          | True
-          = do putStrLn $ "Solution #" ++ show i
-               mapM_ printRow board
-               putStrLn $ "Valid Check: " ++ show (isMagic sboard)
-               putStrLn "Done."
-          where lmod  = length model
-                board = chunk n $ model
-                sboard = map (map literal) board
-                sh2 z = let s = show z in if length s < 2 then ' ':s else s
-                printRow r = putStr "   " >> mapM_ (\x -> putStr ((sh2 x) ++ " ")) r >> putStrLn ""
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/NQueens.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/NQueens.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/NQueens.hs
+++ /dev/null
@@ -1,47 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Puzzles.NQueens
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Solves the NQueens puzzle: <http://en.wikipedia.org/wiki/Eight_queens_puzzle>
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Puzzles.NQueens where
-
-import Data.SBV
-
--- | A solution is a sequence of row-numbers where queens should be placed
-type Solution = [SWord8]
-
--- | Checks that a given solution of @n@-queens is valid, i.e., no queen
--- captures any other.
-isValid :: Int -> Solution -> SBool
-isValid n s = bAll rangeFine s &&& allDifferent s &&& bAll checkDiag ijs
-  where rangeFine x = x .>= 1 &&& x .<= fromIntegral n
-        ijs = [(i, j) | i <- [1..n], j <- [i+1..n]]
-        checkDiag (i, j) = diffR ./= diffC
-           where qi = s !! (i-1)
-                 qj = s !! (j-1)
-                 diffR = ite (qi .>= qj) (qi-qj) (qj-qi)
-                 diffC = fromIntegral (j-i)
-
--- | Given @n@, it solves the @n-queens@ puzzle, printing all possible solutions.
-nQueens :: Int -> IO ()
-nQueens n
- | n < 0 = putStrLn $ "n must be non-negative, received: " ++ show n
- | True  = do putStrLn $ "Finding all " ++ show n ++ "-queens solutions.."
-              res <- allSat $ mkFreeVars n >>= return . isValid n
-              cnt <- displayModels disp res
-              putStrLn $ "Found: " ++ show cnt ++ " solution(s)."
-   where disp i s = do putStr $ "Solution #" ++ show i ++ ": "
-                       dispSolution s
-         dispSolution :: [Word8] -> IO ()
-         dispSolution model
-           | lmod /= n = error $ "Impossible! Backend solver returned " ++ show lmod ++ " values, was expecting: " ++ show n
-           | True      = do putStr $ show model
-                            putStrLn $ " (Valid: " ++ show (isValid n (map literal model)) ++ ")"
-           where lmod  = length model
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/PowerSet.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/PowerSet.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/PowerSet.hs
+++ /dev/null
@@ -1,35 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Puzzles.PowerSet
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Computes the powerset of a givenset
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Puzzles.PowerSet where
-
-import Data.SBV
-
-genPowerSet :: [SBool] -> SBool
--- The following definition reveals an issue in Yices's model generation. The
--- seemingly vacuous test of checking true-or-false is necessary
--- so that Yices will return a satisfying assignment
--- otherwise, it just skips the "unused" inputs..
-genPowerSet = bAll isBool
-  where isBool x = x .== true ||| x .== false
-
-powerSet :: [Word8] -> IO ()
-powerSet xs = do putStrLn $ "Finding all subsets of " ++ show xs
-                 res <- allSat $ mkFreeVars n >>= return . genPowerSet
-                 cnt <- displayModels disp res
-                 putStrLn $ "Found: " ++ show cnt ++ " subset(s)."
-     where n = length xs
-           disp i ss
-            | length ss /= n = error $ "Expected " ++ show n ++ " results; got: " ++ show (length ss)
-            | True           = putStrLn $ "Subset #" ++ show i ++ ": " ++ show (concat (zipWith pick ss xs))
-           pick True a  = [a]
-           pick False _ = []
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Sudoku.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Sudoku.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Sudoku.hs
+++ /dev/null
@@ -1,251 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Puzzles.Sudoku
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- The Sudoku solver, quintessential SMT solver example!
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Puzzles.Sudoku where
-
-import Data.List  (transpose)
-import Data.Maybe (fromJust)
-
-import Data.SBV
-
--------------------------------------------------------------------
--- * Modeling Sudoku
--------------------------------------------------------------------
--- | A row is a sequence of 8-bit words, too large indeed for representing 1-9, but does not harm
-type Row   = [SWord8]
-
--- | A Sudoku board is a sequence of 9 rows
-type Board = [Row]
-
--- | Given a series of elements, make sure they are all different
--- and they all are numbers between 1 and 9
-check :: [SWord8] -> SBool
-check grp = bAnd $ allDifferent grp : map rangeFine grp
-  where rangeFine x = x .> 0 &&& x .<= 9
-
--- | Given a full Sudoku board, check that it is valid
-valid :: Board -> SBool
-valid rows = bAnd $ literal sizesOK : map check (rows ++ columns ++ squares)
-  where sizesOK = length rows == 9 && all (\r -> length r == 9) rows
-        columns = transpose rows
-        regions = transpose [chunk 3 row | row <- rows]
-        squares = [concat sq | sq <- chunk 3 (concat regions)]
-        chunk :: Int -> [a] -> [[a]]
-        chunk _ [] = []
-        chunk i xs = let (f, r) = splitAt i xs in f : chunk i r
-
--- | A puzzle is a pair: First is the number of missing elements, second
--- is a function that given that many elements returns the final board.
-type Puzzle = (Int, [SWord8] -> Board)
-
--------------------------------------------------------------------
--- * Solving Sudoku puzzles
--------------------------------------------------------------------
-
--- | Solve a given puzzle and print the results
-solve :: Puzzle -> IO ()
-solve p@(i, f) = do putStrLn "Solving the puzzle.."
-                    SatResult res <- sat $ mkFreeVars i >>= return . valid . f
-                    dispSolution p (getModel res)
-
--- | Helper function to display results nicely, not really needed, but helps presentation
-dispSolution :: Puzzle -> [Word8] -> IO ()
-dispSolution (i, f) fs
-  | lmod /= i = error $ "Impossible! Backend solver returned " ++ show lmod ++ " values, was expecting: " ++ show i
-  | True      = do putStrLn "Final board:"
-                   mapM_ printRow final
-                   putStrLn $ "Valid Check: " ++ show (valid final)
-                   putStrLn "Done."
-  where lmod = length fs
-        final = f (map literal fs)
-        printRow r = putStr "   " >> mapM_ (\x -> putStr (show (fromJust (unliteral x)) ++ " ")) r >> putStrLn ""
-
--- | Find all solutions to a puzzle
-solveAll :: Puzzle -> IO ()
-solveAll p@(i, f) = do putStrLn "Finding all solutions.."
-                       res <- allSat $ mkFreeVars i >>= return . valid . f
-                       cnt <- displayModels disp res
-                       putStrLn $ "Found: " ++ show cnt ++ " solution(s)."
-   where disp n s = do putStrLn $ "Solution #" ++ show n
-                       dispSolution p s
-
--------------------------------------------------------------------
--- * Example boards
--------------------------------------------------------------------
-
--- | Find an arbitrary good board
-puzzle0 :: Puzzle
-puzzle0 = (81, f)
-  where f   [ a1, a2, a3, a4, a5, a6, a7, a8, a9,
-              b1, b2, b3, b4, b5, b6, b7, b8, b9,
-              c1, c2, c3, c4, c5, c6, c7, c8, c9,
-              d1, d2, d3, d4, d5, d6, d7, d8, d9,
-              e1, e2, e3, e4, e5, e6, e7, e8, e9,
-              f1, f2, f3, f4, f5, f6, f7, f8, f9,
-              g1, g2, g3, g4, g5, g6, g7, g8, g9,
-              h1, h2, h3, h4, h5, h6, h7, h8, h9,
-              i1, i2, i3, i4, i5, i6, i7, i8, i9 ]
-         = [ [a1, a2, a3, a4, a5, a6, a7, a8, a9],
-             [b1, b2, b3, b4, b5, b6, b7, b8, b9],
-             [c1, c2, c3, c4, c5, c6, c7, c8, c9],
-             [d1, d2, d3, d4, d5, d6, d7, d8, d9],
-             [e1, e2, e3, e4, e5, e6, e7, e8, e9],
-             [f1, f2, f3, f4, f5, f6, f7, f8, f9],
-             [g1, g2, g3, g4, g5, g6, g7, g8, g9],
-             [h1, h2, h3, h4, h5, h6, h7, h8, h9],
-             [i1, i2, i3, i4, i5, i6, i7, i8, i9] ]
-        f _ = error "puzzle0 needs exactly 81 elements!"
-
--- | A random puzzle, found on the internet..
-puzzle1 :: Puzzle
-puzzle1 = (49, f)
-  where f   [ a1,     a3, a4, a5, a6, a7,     a9,
-              b1, b2, b3,             b7, b8, b9,
-                  c2,     c4, c5, c6,     c8,
-                      d3,     d5,     d7,
-              e1, e2,     e4, e5, e6,     e8, e9,
-                      f3,     f5,     f7,
-                  g2,     g4, g5, g6,     g8,
-              h1, h2, h3,             h7, h8, h9,
-              i1,     i3, i4, i5, i6, i7,     i9 ]
-         = [ [a1,  6, a3, a4, a5, a6, a7,  1, a9],
-             [b1, b2, b3,  6,  5,  1, b7, b8, b9],
-             [ 1, c2,  7, c4, c5, c6,  6, c8,  2],
-             [ 6,  2, d3,  3, d5,  5, d7,  9,  4],
-             [e1, e2,  3, e4, e5, e6,  2, e8, e9],
-             [ 4,  8, f3,  9, f5,  7, f7,  3,  6],
-             [ 9, g2,  6, g4, g5, g6,  4, g8,  8],
-             [h1, h2, h3,  7,  9,  4, h7, h8, h9],
-             [i1,  5, i3, i4, i5, i6, i7,  7, i9] ]
-        f _ = error "puzzle1 needs exactly 49 elements!"
-
--- | Another random puzzle, found on the internet..
-puzzle2 :: Puzzle
-puzzle2 = (55, f)
-  where f   [     a2,     a4, a5, a6, a7,     a9,
-              b1, b2,     b4,         b7, b8, b9,
-              c1,     c3, c4, c5, c6, c7, c8, c9,
-                  d2, d3, d4,             d8, d9,
-              e1,     e3,     e5,     e7,     e9,
-              f1, f2,             f6, f7, f8,
-              g1, g2, g3, g4, g5, g6, g7,     g9,
-              h1, h2, h3,         h6,     h8, h9,
-              i1,     i3, i4, i5, i6,     i8     ]
-         = [ [ 1, a2,  3, a4, a5, a6, a7,  8, a9],
-             [b1, b2,  6, b4,  4,  8, b7, b8, b9],
-             [c1,  4, c3, c4, c5, c6, c7, c8, c9],
-             [ 2, d2, d3, d4,  9,  6,  1, d8, d9],
-             [e1,  9, e3,  8, e5,  1, e7,  4, e9],
-             [f1, f2,  4,  3,  2, f6, f7, f8,  8],
-             [g1, g2, g3, g4, g5, g6, g7,  7, g9],
-             [h1, h2, h3,  1,  5, h6,  4, h8, h9],
-             [i1,  6, i3, i4, i5, i6,  2, i8,  3] ]
-        f _ = error "puzzle2 needs exactly 55 elements!"
-
--- | Another random puzzle, found on the internet..
-puzzle3 :: Puzzle
-puzzle3 = (56, f)
-  where f   [     a2, a3, a4,     a6,     a8, a9,
-                  b2,     b4, b5, b6, b7, b8, b9,
-              c1, c2, c3, c4,     c6, c7,     c9,
-              d1,     d3,     d5,     d7,     d9,
-                  e2, e3, e4,     e6, e7, e8,
-              f1,     f3,     f5,     f7,     f9,
-              g1,     g3, g4,     g6, g7, g8, g9,
-              h1, h2, h3, h4, h5, h6,     h8,
-              i1, i2,     i4,     i6, i7, i8     ]
-         = [ [ 6, a2, a3, a4,  1, a6,  5, a8, a9],
-             [ 8, b2,  3, b4, b5, b6, b7, b8, b9],
-             [c1, c2, c3, c4,  6, c6, c7,  2, c9],
-             [d1,  3, d3,  1, d5,  8, d7,  9, d9],
-             [ 1, e2, e3, e4,  9, e6, e7, e8,  4],
-             [f1,  5, f3,  2, f5,  3, f7,  1, f9],
-             [g1,  7, g3, g4,  3, g6, g7, g8, g9],
-             [h1, h2, h3, h4, h5, h6,  3, h8,  6],
-             [i1, i2,  4, i4,  5, i6, i7, i8,  9] ]
-        f _ = error "puzzle3 needs exactly 56 elements!"
-
--- | According to the web, this is the toughest 
--- sudoku puzzle ever.. It even has a name: Al Escargot:
--- <http://zonkedyak.blogspot.com/2006/11/worlds-hardest-sudoku-puzzle-al.html>
-puzzle4 :: Puzzle
-puzzle4 = (58, f)
-  where f   [     a2, a3, a4, a5,     a7,     a9,
-              b1,     b3, b4,     b6, b7, b8,
-              c1, c2,         c5, c6,     c8, c9,
-              d1, d2,         d5, d6,     d8, d9,
-              e1,     e3, e4,     e6, e7, e8,
-                  f2, f3, f4, f5,     f7, f8, f9,
-                  g2, g3, g4, g5, g6, g7,     g9,
-              h1,     h3, h4, h5, h6, h7, h8,
-              i1, i2,     i4, i5, i6,     i8, i9 ]
-         = [ [ 1, a2, a3, a4, a5,  7, a7,  9, a9],
-             [b1,  3, b3, b4,  2, b6, b7, b8,  8],
-             [c1, c2,  9,  6, c5, c6,  5, c8, c9],
-             [d1, d2,  5,  3, d5, d6,  9, d8, d9],
-             [e1,  1, e3, e4,  8, e6, e7, e8,  2],
-             [ 6, f2, f3, f4, f5,  4, f7, f8, f9],
-             [ 3, g2, g3, g4, g5, g6, g7,  1, g9],
-             [h1,  4, h3, h4, h5, h6, h7, h8,  7],
-             [i1, i2,  7, i4, i5, i6,  3, i8, i9] ]
-        f _ = error "puzzle4 needs exactly 58 elements!"
-
--- | This one has been called diabolical, apparently
-puzzle5 :: Puzzle
-puzzle5 = (53, f)
-  where f   [ a1,     a3,     a5, a6,         a9,
-              b1,         b4, b5,     b7,     b9,
-                  c2,     c4, c5, c6, c7, c8, c9,
-              d1, d2,     d4,     d6, d7, d8,
-              e1, e2, e3,     e5,     e7, e8, e9,
-                  f2, f3, f4,     f6,     f8, f9,
-              g1, g2, g3, g4, g5, g6,     g8,
-              h1,     h3,     h5, h6,         h9,
-              i1,         i4, i5,     i7,     i9 ]
-         = [ [a1,  9, a3,  7, a5, a6,  8,  6, a9],
-             [b1,  3,  1, b4, b5,  5, b7,  2, b9],
-             [ 8, c2,  6, c4, c5, c6, c7, c8, c9],
-             [d1, d2,  7, d4,  5, d6, d7, d8,  6],
-             [e1, e2, e3,  3, e5,  7, e7, e8, e9],
-             [ 5, f2, f3, f4,  1, f6,  7, f8, f9],
-             [g1, g2, g3, g4, g5, g6,  1, g8,  9],
-             [h1,  2, h3,  6, h5, h6,  3,  5, h9],
-             [i1,  5,  4, i4, i5,  8, i7,  7, i9] ]
-        f _ = error "puzzle5 needs exactly 53 elements!"
-
--- | The following is nefarious according to
--- <http://haskell.org/haskellwiki/Sudoku>
-puzzle6 :: Puzzle
-puzzle6 = (64, f)
-  where f   [ a1, a2, a3, a4,     a6, a7,     a9,
-              b1,     b3, b4, b5, b6, b7, b8, b9,
-              c1, c2,     c4, c5, c6, c7, c8, c9,
-              d1,     d3, d4, d5, d6,     d8,
-                  e2, e3, e4,     e6, e7, e8, e9,
-              f1, f2, f3, f4, f5, f6,     f8, f9,
-              g1, g2,         g5,     g7, g8, g9,
-                  h2, h3,     h5, h6,     h8, h9,
-              i1, i2, i3, i4, i5, i6, i7,     i9  ]
-         = [ [a1, a2, a3, a4,  6, a6, a7,  8, a9],
-             [b1,  2, b3, b4, b5, b6, b7, b8, b9],
-             [c1, c2,  1, c4, c5, c6, c7, c8, c9],
-             [d1,  7, d3, d4, d5, d6,  1, d8,  2],
-             [ 5, e2, e3, e4,  3, e6, e7, e8, e9],
-             [f1, f2, f3, f4, f5, f6,  4, f8, f9],
-             [g1, g2,  4,  2, g5,  1, g7, g8, g9],
-             [ 3, h2, h3,  7, h5, h6,  6, h8, h9],
-             [i1, i2, i3, i4, i5, i6, i7,  5, i9] ]
-        f _ = error "puzzle6 needs exactly 64 elements!"
-
--- | Solve them all, this takes a fraction of a second to run for each case
-allPuzzles :: IO ()
-allPuzzles = mapM_ solve [puzzle0, puzzle1, puzzle2, puzzle3, puzzle4, puzzle5, puzzle6]
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Temperature.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Temperature.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/Temperature.hs
+++ /dev/null
@@ -1,40 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Puzzles.Temperature
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Puzzle:
---   What 2 digit fahrenheit/celcius values are reverses of each other?
---   Ignoring the fractions in the conversion
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Puzzles.Temperature where
-
-import Data.SBV
-
-type Temp = SWord16 -- larger than we need actually
-
--- convert celcius to fahrenheit, rounding up/down properly
--- we have to be careful here to make sure rounding is done properly..
-d2f :: Temp -> Temp
-d2f d = 32 + ite (fr .>= 5) (1+fi) fi
-  where (fi, fr) = (18 * d) `bvQuotRem` 10
-
--- puzzle: What 2 digit fahrenheit/celcius values are reverses of each other?
-revOf :: Temp -> SBool
-revOf c = swap (digits c) .== digits (d2f c)
-  where digits x = x `bvQuotRem` 10
-        swap (a, b) = (b, a)
-
-solve :: IO ()
-solve = do res <- allSat $ free_ >>= return . revOf
-           cnt <- displayModels disp res
-           putStrLn $ "Found " ++ show cnt ++ " solutions."
-     where disp :: Int -> Word16 -> IO ()
-           disp _ x = putStrLn $ " " ++ show x ++ "C --> " ++ show ((round f) :: Integer) ++ "F (exact value: " ++ show f ++ "F)"
-              where f :: Double
-                    f  = 32 + (9 * fromIntegral x) / 5
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/U2Bridge.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/U2Bridge.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Puzzles/U2Bridge.hs
+++ /dev/null
@@ -1,270 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Puzzles.U2Bridge
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- The famous U2 bridge crossing puzzle: <http://www.brainj.net/puzzle.php?id=u2>
------------------------------------------------------------------------------
-
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE PatternGuards #-}
-
-module Data.SBV.Examples.Puzzles.U2Bridge where
-
-import Control.Monad.State (State, runState, put, get, modify, evalState)
-import Data.Maybe          (fromJust)
-
-import Data.SBV
-
--------------------------------------------------------------
--- * Modeling the puzzle
--------------------------------------------------------------
-
--- | U2 band members
-data U2Member = Bono | Edge | Adam | Larry
-              deriving (Show, Enum)
-
--- | Model time using 32 bits
-type Time      = SWord32
-
--- | Each member gets an 8-bit id
-type SU2Member = SWord8
-
--- | Bono's ID
-bono :: SU2Member
-bono  = fromIntegral . fromEnum $ Bono
-
--- | Edge's ID
-edge :: SU2Member
-edge  = fromIntegral . fromEnum $ Edge
-
--- | Adam's ID
-adam :: SU2Member
-adam  = fromIntegral . fromEnum $ Adam
-
--- | Larry's ID
-larry :: SU2Member
-larry = fromIntegral . fromEnum $ Larry
-
--- | Is this a valid person?
-isU2Member :: SU2Member -> SBool
-isU2Member = (.<= larry)  -- 8 bits can represent 256 people; trim it down!
-
--- | Crossing times for each member of the band
-crossTime :: SU2Member -> Time
-crossTime = select [  1 {- Bono -}
-                   ,  2 {- Edge -}
-                   ,  5 {- Adam -}
-                   ] 10 {- Larry -}
-
--- | Location of the flash
-type Location = SBool
-
--- | We represent this side of the bridge as 'here', and arbitrarily as 'false'
-here :: Location
-here = false
-
--- | We represent other side of the bridge as 'there', and arbitrarily as 'true'
-there :: Location
-there = bnot here
-
--- | The status of the puzzle after each move
-data Status = Status { time   :: Time       -- ^ elapsed time
-                     , flash  :: Location   -- ^ location of the flash
-                     , lBono  :: Location   -- ^ location of Bono
-                     , lEdge  :: Location   -- ^ location of Edge
-                     , lAdam  :: Location   -- ^ location of Adam
-                     , lLarry :: Location   -- ^ location of Larry
-                     }
-
--- | Start configuration, time elapsed is 0 and everybody is 'here'
-start :: Status
-start = Status { time   = 0
-               , flash  = here
-               , lBono  = here
-               , lEdge  = here
-               , lAdam  = here
-               , lLarry = here
-               }
-
-instance Mergeable Status where
-  symbolicMerge t s1 s2 = Status { time   = symbolicMerge t (time s1)   (time  s2)
-                                 , flash  = symbolicMerge t (flash s1)  (flash s2)
-                                 , lBono  = symbolicMerge t (lBono s1)  (lBono s2)
-                                 , lEdge  = symbolicMerge t (lEdge s1)  (lEdge s2)
-                                 , lAdam  = symbolicMerge t (lAdam s1)  (lAdam s2)
-                                 , lLarry = symbolicMerge t (lLarry s1) (lLarry s2)
-                                 }
-
--- | A puzzle move is modeled as a state-transformer
-type Move a = State Status a
-
-instance Mergeable a => Mergeable (Move a) where
-  symbolicMerge t a b
-    = do s <- get
-         let (ar, s1) = runState a s
-             (br, s2) = runState b s
-         put $ symbolicMerge t s1 s2
-         return $ symbolicMerge t ar br
-
--- | Read the state via an accessor function
-peek :: (Status -> a) -> Move a
-peek f = do s <- get
-            return (f s)
-
--- | Given an arbitrary member, return his location
-whereIs :: SU2Member -> Move SBool
-whereIs p = do [lb, le, la, ll]  <- mapM peek [lBono, lEdge, lAdam, lLarry]
-               return $ select [lb, le, la] ll p
-
--- | Transferring the flash to the other side
-xferFlash :: Move ()
-xferFlash = modify $ \s -> s{flash = bnot (flash s)}
-
--- | Transferring a person to the other side
-xferPerson :: SU2Member -> Move ()
-xferPerson p =  do [lb, le, la, ll] <- mapM peek [lBono, lEdge, lAdam, lLarry]
-                   let lb' = ite (p .== bono)  (bnot lb) lb
-                       le' = ite (p .== edge)  (bnot le) le
-                       la' = ite (p .== adam)  (bnot la) la
-                       ll' = ite (p .== larry) (bnot ll) ll
-                   modify $ \s -> s{lBono = lb', lEdge = le', lAdam = la', lLarry = ll'}
-
--- | Increment the time, when only one person crosses
-bumpTime1 :: SU2Member -> Move ()
-bumpTime1 p = modify $ \s -> s{time = time s + crossTime p}
-
--- | Increment the time, when two people cross together
-bumpTime2 :: SU2Member -> SU2Member -> Move ()
-bumpTime2 p1 p2 = modify $ \s -> s{time = time s + crossTime p1 `smax` crossTime p2}
-
--- | Symbolic version of 'when'
-whenS :: SBool -> Move () -> Move ()
-whenS t a = ite t a (return ())
-
--- | Move one member, remembering to take the flash
-move1 :: SU2Member -> Move ()
-move1 p = do f <- peek flash
-             l <- whereIs p
-             -- only do the move if the person and the flash are at the same side
-             whenS (f .== l) $ do bumpTime1 p
-                                  xferFlash
-                                  xferPerson p
-
--- | Move two members, again with the flash
-move2 :: SU2Member -> SU2Member -> Move ()
-move2 p1 p2 = do f  <- peek flash
-                 l1 <- whereIs p1
-                 l2 <- whereIs p2
-                 -- only do the move if both people and the flash are at the same side
-                 whenS (f .== l1 &&& f .== l2) $ do bumpTime2 p1 p2
-                                                    xferFlash
-                                                    xferPerson p1
-                                                    xferPerson p2
-
--------------------------------------------------------------
--- * Actions
--------------------------------------------------------------
-
--- | A move action is a sequence of triples. The first component is symbolically
--- True if only one member crosses. (In this case the third element of the triple
--- is irrelevant.) If the first component is (symbolically) False, then both members
--- move together
-type Actions = [(SBool, SU2Member, SU2Member)]
-
--- | Run a sequence of given actions.
-run :: Actions -> Move [Status]
-run = sequence . map step
- where step (b, p1, p2) = ite b (move1 p1) (move2 p1 p2) >> get
-
--------------------------------------------------------------
--- * Recognizing valid solutions
--------------------------------------------------------------
-
--- | Check if a given sequence of actions is valid, i.e., they must all
--- cross the bridge according to the rules and in less than 17 seconds
-isValid :: Actions -> SBool
-isValid as = time end .<= 17 &&& bAll check as &&& zigZag there (map flash states) &&& bAll (.== there) [lBono end, lEdge end, lAdam end, lLarry end]
-  where check (s, p1, p2) =   isU2Member p1 &&& isU2Member p2
-                          -- the following two conditions ensure we find distinct solutions
-                          &&& (bnot s ==> p1 .> p2) -- for two person moves, ensure first person is "larger"
-                          &&& (s ==> p2 .== bono)   -- for one person moves, ensure second person is always "bono"
-        states = evalState (run as) start
-        end = last states
-        zigZag _ []       = true
-        zigZag w (f:rest) = w .== f &&& zigZag (bnot w) rest
-
-instance SatModel U2Member where
-  parseCWs as = cvtModel cvtCW $ parseCWs as
-    where cvtCW :: Word8 -> Maybe U2Member
-          cvtCW i = lookup i (zip [0..] [Bono, Edge, Adam, Larry])
-
--------------------------------------------------------------
--- * Solving the puzzle
--------------------------------------------------------------
-
--- | See if there is a solution that has precisely @n@ steps
-solveN :: Int -> IO Bool
-solveN n = do putStrLn $ "Checking for solutions with " ++ show n ++ " move" ++ plu n ++ "."
-              let genAct = do b  <- free_
-                              p1 <- free_
-                              p2 <- free_
-                              return (b, p1, p2)
-              res <- allSat $ mapM (const genAct) [1..n] >>= return . isValid
-              cnt <- displayModels disp res
-              if cnt == 0 then return False
-                          else do putStrLn $ "Found: " ++ show cnt ++ " solution" ++ plu cnt ++ " with " ++ show n ++ " move" ++ plu n ++ "."
-                                  return True
-  where plu v = if v == 1 then "" else "s"
-        disp :: Int -> [(Bool, U2Member, U2Member)] -> IO ()
-        disp i ss
-         | lss /= n = error $ "Expected " ++ show n ++ " results; got: " ++ show lss
-         | True     = do putStrLn $ "Solution #" ++ show i ++ ": "
-                         go False 0 ss
-                         return ()
-         where lss  = length ss
-               go _ t []                   = putStrLn $ "Total time: " ++ show t
-               go l t ((True, a, _):rest)  = do putStrLn $ sh2 t ++ shL l ++ show a
-                                                go (not l) (t + ctime a) rest
-               go l t ((False, a, b):rest) = do putStrLn $ sh2 t ++ shL l ++ show a ++ ", " ++ show b
-                                                go (not l) (t + ctime a `max` ctime b) rest
-               ctime = fromJust . unliteral . crossTime . fromIntegral . fromEnum
-               sh2 t = let s = show t in if length s < 2 then ' ' : s else s
-               shL False = " --> "
-               shL True  = " <-- "
-
--- | Solve the U2-bridge crossing puzzle, starting by testing solutions with
--- increasing number of steps, until we find one. We have:
---
--- >>> solveU2
--- Checking for solutions with 1 move.
--- Checking for solutions with 2 moves.
--- Checking for solutions with 3 moves.
--- Checking for solutions with 4 moves.
--- Checking for solutions with 5 moves.
--- Solution #1: 
---  0 --> Edge, Bono
---  2 <-- Edge
---  4 --> Larry, Adam
--- 14 <-- Bono
--- 15 --> Edge, Bono
--- Total time: 17
--- Solution #2: 
---  0 --> Edge, Bono
---  2 <-- Bono
---  3 --> Larry, Adam
--- 13 <-- Edge
--- 15 --> Edge, Bono
--- Total time: 17
--- Found: 2 solutions with 5 moves.
---
--- Finding the all 2 possible solutions to the puzzle.
-solveU2 :: IO ()
-solveU2 = go 1
- where go i = do p <- solveN i
-                 if p then return () else go (i+1)
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/AUF.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/AUF.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/AUF.hs
+++ /dev/null
@@ -1,85 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Uninterpreted.AUF
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Formalizes and proves the following theorem, about arithmetic,
--- uninterpreted functions, and arrays. (For reference, see <http://research.microsoft.com/en-us/um/redmond/projects/z3/fmcad06-slides.pdf>
--- slide number 24):
---
--- @
---    x + 2 = y  implies  f (read (write (a, x, 3), y - 2)) = f (y - x + 1)
--- @
---
--- We interpret the types as follows (other interpretations certainly possible):
---
---    [/x/] 'SWord32' (32-bit unsigned address)
---
---    [/y/] 'SWord32' (32-bit unsigned address)
---
---    [/a/] An array, indexed by 32-bit addresses, returning 32-bit unsigned integers
---
---    [/f/] An uninterpreted function of type @'SWord32' -> 'SWord64'@
---
--- The function @read@ and @write@ are usual array operations.
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Uninterpreted.AUF where
-
-import Data.SBV
-
---------------------------------------------------------------
--- * Model using functional arrays
---------------------------------------------------------------
-
--- | The array type, takes symbolic 32-bit unsigned indexes
--- and stores 32-bit unsigned symbolic values. These are
--- functional arrays where reading before writing a cell
--- throws an exception.
-type A = SFunArray Word32 Word32
-
--- | Uninterpreted function in the theorem
-f :: SWord32 -> SWord64
-f = uninterpret "f"
-
--- | Correctness theorem. We state it for all values of @x@, @y@, and 
--- the array @a@. We also take an arbitrary initializer for the array.
-thm1 :: SWord32 -> SWord32 -> A -> SWord32 -> SBool
-thm1 x y a initVal = lhs ==> rhs
-  where a'  = resetArray a initVal -- initialize array
-        lhs = x + 2 .== y
-        rhs =     f (readArray (writeArray a' x 3) (y - 2))
-              .== f (y - x + 1)
-
--- | Prints Q.E.D. when run, as expected
---
--- >>> proveThm1
--- Q.E.D.
-proveThm1 :: IO ()
-proveThm1 = print =<< prove thm1
-
---------------------------------------------------------------
--- * Model using SMT arrays
---------------------------------------------------------------
-
--- | This version directly uses SMT-arrays and hence does not need an initializer.
--- Reading an element before writing to it returns an arbitrary value.
-type B = SArray Word32 Word32
-
--- | Same as 'thm1', except we don't need an initializer with the 'SArray' model.
-thm2 :: SWord32 -> SWord32 -> B -> SBool
-thm2 x y a = lhs ==> rhs
-  where lhs = x + 2 .== y
-        rhs =     f (readArray (writeArray a x 3) (y - 2))
-              .== f (y - x + 1)
-
--- | Prints Q.E.D. when run, as expected:
---
--- >>> proveThm2
--- Q.E.D.
-proveThm2 :: IO ()
-proveThm2 = print =<< prove thm2
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/Function.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/Function.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/Function.hs
+++ /dev/null
@@ -1,44 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Uninterpreted.Function
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Demonstrates function counter-examples
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Uninterpreted.Function where
-
-import Data.SBV
-
--- | An uninterpreted function
-f :: SWord8 -> SWord8 -> SWord16
-f = uninterpret "f"
-
--- | Asserts that @f x z == f (y+2) z@ whenever @x == y+2@. Naturally correct:
---
--- >>> prove thmGood
--- Q.E.D.
-thmGood :: SWord8 -> SWord8 -> SWord8 -> SBool
-thmGood x y z = x .== y+2 ==> f x z .== f (y + 2) z
-
--- | Asserts that @f@ is commutative; which is not necessarily true!
--- Indeed, the SMT solver (Yices in this case) returns a counter-example
--- function that is not commutative. We have:
---
---
--- >>> prove $ forAll ["x", "y"] thmBad
--- Falsifiable. Counter-example:
---   x = 0 :: SWord8
---   y = 128 :: SWord8
---   -- uninterpreted: f
---        f 128 0 = 32768
---        f _   _ = 0
---
--- Note how the counterexample function @f@ returned by Yices violates commutativity;
--- thus providing evidence that the asserted theorem is not valid.
-thmBad :: SWord8 -> SWord8 -> SBool
-thmBad x y = f x y .== f y x
diff --git a/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/Uninterpreted.hs b/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/Uninterpreted.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Examples/Uninterpreted/Uninterpreted.hs
+++ /dev/null
@@ -1,30 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.Uninterpreted.Uninterpreted
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Testing uninterpreted functions
------------------------------------------------------------------------------
-
-module Data.SBV.Examples.Uninterpreted.Uninterpreted where
-
-import Data.SBV
-
-f :: SInt8 -> SWord32
-f = uninterpret "f"
-
-g :: SInt8 -> SWord16 -> SWord32
-g = uninterpret "g"
-
-p0 :: SInt8 -> SInt8 -> SBool
-p0 x y   = x .== y ==> f x .== f y      -- OK
-
-p1 :: SInt8 -> SWord16 -> SWord16 -> SBool
-p1 x y z = y .== z ==> g x y .== g x z  -- OK
-
-p2 :: SInt8 -> SWord16 -> SWord16 -> SBool
-p2 x y z = y .== z ==> g x y .== f x    -- Not true
diff --git a/Temp/sbv-0.9.18/Data/SBV/Internals.hs b/Temp/sbv-0.9.18/Data/SBV/Internals.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Internals.hs
+++ /dev/null
@@ -1,40 +0,0 @@
----------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Internals
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Low level functions to access the SBV infrastructure, for developers who
--- want to build further tools on top of SBV. End-users of the library
--- should not need to use this module.
----------------------------------------------------------------------------------
-
-module Data.SBV.Internals (
-   -- * Running symbolic programs /manually/
-    Result, runSymbolic
-    -- * Other internal structures useful for low-level programming
-  , SBV(..), CW, mkConstCW, genFree, genFree_
-  -- * Compilation to C
-  , compileToC', compileToCLib', CgPgmBundle(..), CgPgmKind(..)
-    -- * Integrating with the test framework
-    -- $testFramework
-  , module Data.SBV.Utils.SBVTest
-  ) where
-
-import Data.SBV.BitVectors.Data   (Result, runSymbolic, SBV(..), CW, mkConstCW)
-import Data.SBV.BitVectors.Model  (genFree, genFree_)
-import Data.SBV.Compilers.C       (compileToC', compileToCLib')
-import Data.SBV.Compilers.CodeGen (CgPgmBundle(..), CgPgmKind(..))
-import Data.SBV.Utils.SBVTest
-
-{- $compileC
-Lower level access to program bundles, for further processing of program bundles.
--}
-
-{- $testFramework
-Functionality needed for extending SBV's internal test-suite. Only for developers of further libraries on
-top of SBV.
--}
diff --git a/Temp/sbv-0.9.18/Data/SBV/Provers/Prover.hs b/Temp/sbv-0.9.18/Data/SBV/Provers/Prover.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Provers/Prover.hs
+++ /dev/null
@@ -1,352 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Provers.Prover
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Provable abstraction and the connection to SMT solvers
------------------------------------------------------------------------------
-
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE OverlappingInstances #-}
-{-# LANGUAGE PatternGuards #-}
-{-# LANGUAGE BangPatterns #-}
-
-module Data.SBV.Provers.Prover (
-         SMTSolver(..), SMTConfig(..), Predicate, Provable(..)
-       , ThmResult(..), SatResult(..), AllSatResult(..), SMTResult(..)
-       , isSatisfiable, isTheorem
-       , isSatisfiableWithin, isTheoremWithin
-       , numberOfModels
-       , Equality(..)
-       , prove, proveWith
-       , sat, satWith
-       , allSat, allSatWith
-       , SatModel(..), getModel, displayModels
-       , defaultSMTCfg, verboseSMTCfg, timingSMTCfg, verboseTimingSMTCfg
-       , Yices.yices
-       , timeout
-       , compileToSMTLib
-       ) where
-
-import Control.Monad                  (when)
-import Control.Concurrent             (forkIO)
-import Control.Concurrent.Chan.Strict (newChan, writeChan, getChanContents)
-import Data.Maybe                     (fromJust, isJust, catMaybes)
-import System.Time                    (getClockTime)
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.BitVectors.Model
-import Data.SBV.SMT.SMT
-import Data.SBV.SMT.SMTLib
-import qualified Data.SBV.Provers.Yices as Yices
-import Data.SBV.Utils.TDiff
-
--- | Default configuration for the SMT solver. Non-verbose, non-timing, prints results in base 10, and uses
--- the Yices SMT solver.
-defaultSMTCfg :: SMTConfig
-defaultSMTCfg = SMTConfig {verbose = False, timing  = False, printBase = 10, solver = Yices.yices}
-
--- | Same as 'defaultSMTCfg', except verbose
-verboseSMTCfg :: SMTConfig
-verboseSMTCfg = defaultSMTCfg {verbose=True}
-
--- | Same as 'defaultSMTCfg', except prints timing info
-timingSMTCfg :: SMTConfig
-timingSMTCfg  = defaultSMTCfg {timing=True}
-
--- | Same as 'defaultSMTCfg', except both verbose and timing info
-verboseTimingSMTCfg :: SMTConfig
-verboseTimingSMTCfg = timingSMTCfg {verbose=True}
-
--- We might need a better system if we add more backend solvers
--- | Adds a time out of @n@ seconds to a given solver configuration
-timeout :: Int -> SMTConfig -> SMTConfig
-timeout n s
- | nm == name Yices.yices = s{solver = Yices.timeout n (solver s)}
- | True                   = error $ "SBV.Prover.timeout: Solver " ++ show nm ++ " does not support time-outs"
- where nm = name (solver s)
-
--- | A predicate is a symbolic program that returns a (symbolic) boolean value. For all intents and
--- purposes, it can be treated as an n-ary function from symbolic-values to a boolean. The 'Symbolic'
--- monad captures the underlying representation, and can/should be ignored by the users of the library,
--- unless you are building further utilities on top of SBV itself. Instead, simply use the 'Predicate'
--- type when necessary.
-type Predicate = Symbolic SBool
-
--- | A type @a@ is provable if we can turn it into a predicate.
--- Note that a predicate can be made from a curried function of arbitrary arity, where
--- each element is either a symbolic type or up-to a 7-tuple of symbolic-types. So
--- predicates can be constructed from almost arbitrary Haskell functions that have arbitrary
--- shapes. (See the instance declarations below.)
-class Provable a where
-  -- | Turns a value into a predicate, internally naming the inputs.
-  -- In this case the sbv library will use names of the form @s1, s2@, etc. to name these variables
-  -- Example:
-  --
-  -- >  forAll_ $ \(x::SWord8) y -> x `shiftL` 2 .== y
-  --
-  -- is a predicate with two arguments, captured using an ordinary Haskell function. Internally,
-  -- @x@ will be named @s0@ and @y@ will be named @s1@.
-  forAll_ :: a -> Predicate
-  -- | Turns a value into a predicate, allowing users to provide names for the inputs.
-  -- If the user does not provide enough number of names for the free variables, the remaining ones
-  -- will be internally generated. Note that the names are only used for printing models and has no
-  -- other significance; in particular, we do not check that they are unique. Example:
-  --
-  -- >  forAll ["x", "y"] $ \(x::SWord8) y -> x `shiftL` 2 .== y
-  --
-  -- This is the same as above, except the variables will be named @x@ and @y@ respectively,
-  -- simplifying the counter-examples when they are printed.
-  forAll  :: [String] -> a -> Predicate
-
-instance Provable Predicate where
-  forAll_  = id
-  forAll _ = id
-
-instance Provable SBool where
-  forAll_  = return
-  forAll _ = return
-
-{-
--- The following works, but it lets us write properties that
--- are not useful.. Such as: prove $ \x y -> (x::SInt8) == y
--- Running that will throw an exception since Haskell's equality
--- is not be supported by symbolic things. (Needs .==).
-instance Provable Bool where
-  forAll_  x = forAll_  (if x then true else false :: SBool)
-  forAll s x = forAll s (if x then true else false :: SBool)
--}
-
--- Functions
-instance (SymWord a, Provable p) => Provable (SBV a -> p) where
-  forAll_       k = free_  >>= \a -> forAll_   $ k a
-  forAll (s:ss) k = free s >>= \a -> forAll ss $ k a
-  forAll []     k = forAll_ k
-
--- Arrays (memory)
-instance (HasSignAndSize a, HasSignAndSize b, SymArray array, Provable p) => Provable (array a b -> p) where
-  forAll_       k = newArray_  Nothing >>= \a -> forAll_   $ k a
-  forAll (s:ss) k = newArray s Nothing >>= \a -> forAll ss $ k a
-  forAll []     k = forAll_ k
-
--- 2 Tuple
-instance (SymWord a, SymWord b, Provable p) => Provable ((SBV a, SBV b) -> p) where
-  forAll_       k = free_  >>= \a -> forAll_   $ \b -> k (a, b)
-  forAll (s:ss) k = free s >>= \a -> forAll ss $ \b -> k (a, b)
-  forAll []     k = forAll_ k
-
--- 3 Tuple
-instance (SymWord a, SymWord b, SymWord c, Provable p) => Provable ((SBV a, SBV b, SBV c) -> p) where
-  forAll_       k = free_  >>= \a -> forAll_   $ \b c -> k (a, b, c)
-  forAll (s:ss) k = free s >>= \a -> forAll ss $ \b c -> k (a, b, c)
-  forAll []     k = forAll_ k
-
--- 4 Tuple
-instance (SymWord a, SymWord b, SymWord c, SymWord d, Provable p) => Provable ((SBV a, SBV b, SBV c, SBV d) -> p) where
-  forAll_       k = free_  >>= \a -> forAll_   $ \b c d -> k (a, b, c, d)
-  forAll (s:ss) k = free s >>= \a -> forAll ss $ \b c d -> k (a, b, c, d)
-  forAll []     k = forAll_ k
-
--- 5 Tuple
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, Provable p) => Provable ((SBV a, SBV b, SBV c, SBV d, SBV e) -> p) where
-  forAll_       k = free_  >>= \a -> forAll_   $ \b c d e -> k (a, b, c, d, e)
-  forAll (s:ss) k = free s >>= \a -> forAll ss $ \b c d e -> k (a, b, c, d, e)
-  forAll []     k = forAll_ k
-
--- 6 Tuple
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, SymWord f, Provable p) => Provable ((SBV a, SBV b, SBV c, SBV d, SBV e, SBV f) -> p) where
-  forAll_       k = free_  >>= \a -> forAll_   $ \b c d e f -> k (a, b, c, d, e, f)
-  forAll (s:ss) k = free s >>= \a -> forAll ss $ \b c d e f -> k (a, b, c, d, e, f)
-  forAll []     k = forAll_ k
-
--- 7 Tuple
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, SymWord f, SymWord g, Provable p) => Provable ((SBV a, SBV b, SBV c, SBV d, SBV e, SBV f, SBV g) -> p) where
-  forAll_       k = free_  >>= \a -> forAll_   $ \b c d e f g -> k (a, b, c, d, e, f, g)
-  forAll (s:ss) k = free s >>= \a -> forAll ss $ \b c d e f g -> k (a, b, c, d, e, f, g)
-  forAll []     k = forAll_ k
-
--- | Prove a predicate, equivalent to @'proveWith' 'defaultSMTCfg'@
-prove :: Provable a => a -> IO ThmResult
-prove = proveWith defaultSMTCfg
-
--- | Find a satisfying assignment for a predicate, equivalent to @'satWith' 'defaultSMTCfg'@
-sat :: Provable a => a -> IO SatResult
-sat = satWith defaultSMTCfg
-
--- | Return all satisfying assignments for a predicate, equivalent to @'allSatWith' 'defaultSMTCfg'@.
--- Satisfying assignments are constructed lazily, so they will be available as returned by the solver
--- and on demand.
---
--- NB. Uninterpreted constant/function values and counter-examples for array values are ignored for
--- the purposes of @'allSat'@. That is, only the satisfying assignments modulo uninterpreted functions and
--- array inputs will be returned. This is due to the limitation of not having a robust means of getting a
--- function counter-example back from the SMT solver.
-allSat :: Provable a => a -> IO AllSatResult
-allSat = allSatWith defaultSMTCfg
-
--- Decision procedures (with optional timeout)
-checkTheorem :: Provable a => Maybe Int -> a -> IO (Maybe Bool)
-checkTheorem mbTo p = do r <- pr p
-                         case r of
-                           ThmResult (Unsatisfiable _) -> return $ Just True
-                           ThmResult (Satisfiable _ _) -> return $ Just False
-                           ThmResult (TimeOut _)       -> return Nothing
-                           _                           -> error $ "SBV.isTheorem: Received:\n" ++ show r
-   where pr = maybe prove (\i -> proveWith (timeout i defaultSMTCfg)) mbTo
-
-checkSatisfiable :: Provable a => Maybe Int -> a -> IO (Maybe Bool)
-checkSatisfiable mbTo p = do r <- s p
-                             case r of
-                               SatResult (Satisfiable _ _) -> return $ Just True
-                               SatResult (Unsatisfiable _) -> return $ Just False
-                               SatResult (TimeOut _)       -> return Nothing
-                               _                           -> error $ "SBV.isSatisfiable: Received: " ++ show r
-   where s = maybe sat (\i -> satWith (timeout i defaultSMTCfg)) mbTo
-
--- | Checks theoremhood within the given time limit of @i@ seconds.
--- Returns @Nothing@ if times out, or the result wrapped in a @Just@ otherwise.
-isTheoremWithin :: Provable a => Int -> a -> IO (Maybe Bool)
-isTheoremWithin i = checkTheorem (Just i)
-
--- | Checks satisfiability within the given time limit of @i@ seconds.
--- Returns @Nothing@ if times out, or the result wrapped in a @Just@ otherwise.
-isSatisfiableWithin :: Provable a => Int -> a -> IO (Maybe Bool)
-isSatisfiableWithin i = checkSatisfiable (Just i)
-
--- | Checks theoremhood
-isTheorem :: Provable a => a -> IO Bool
-isTheorem p = fromJust `fmap` checkTheorem Nothing p
-
--- | Checks satisfiability
-isSatisfiable :: Provable a => a -> IO Bool
-isSatisfiable p = fromJust `fmap` checkSatisfiable Nothing p
-
--- | Returns the number of models that satisfy the predicate, as it would
--- be returned by 'allSat'. Note that the number of models is always a
--- finite number, and hence this will always return a result. Of course,
--- computing it might take quite long, as it literally generates and counts
--- the number of satisfying models.
-numberOfModels :: Provable a => a -> IO Int
-numberOfModels p = do AllSatResult rs <- allSat p
-                      return $ sum $ map walk rs
-  where walk (Satisfiable{}) = 1
-        -- shouldn't happen, but just in case
-        walk r               = error $ "numberOfModels: Unexpected result from an allSat check: " ++ show (AllSatResult [r])
-
--- | Compiles to SMT-Lib and returns the resulting program as a string. Useful for saving
--- the result to a file for off-line analysis, for instance if you have an SMT solver that's not natively
--- supported out-of-the box by the SBV library.
-compileToSMTLib :: Provable a => a -> IO String
-compileToSMTLib a = do
-        t <- getClockTime
-        let comments = ["Created on " ++ show t]
-        (_, _, smtLibPgm) <- generateTrace defaultSMTCfg False comments a
-        return $ show smtLibPgm ++ "\n"
-
--- | Proves the predicate using the given SMT-solver
-proveWith :: Provable a => SMTConfig -> a -> IO ThmResult
-proveWith config a = generateTrace config False [] a >>= callSolver [] "Checking Theoremhood.." ThmResult config
-
--- | Find a satisfying assignment using the given SMT-solver
-satWith :: Provable a => SMTConfig -> a -> IO SatResult
-satWith config a = generateTrace config True [] a >>= callSolver [] "Checking Satisfiability.." SatResult config
-
--- | Find all satisfying assignments using the given SMT-solver
-allSatWith :: Provable a => SMTConfig -> a -> IO AllSatResult
-allSatWith config p = do when (verbose config) $ putStrLn  "** Checking Satisfiability, all solutions.."
-                         sbvPgm <- generateTrace config True [] p
-                         resChan <- newChan
-                         let add  = writeChan resChan . Just
-                             stop = writeChan resChan Nothing
-                             final r = add r >> stop
-                             -- only fork if non-verbose.. otherwise stdout gets garbled
-                             fork io = if verbose config then io else forkIO io >> return ()
-                         fork $ go sbvPgm add stop final (1::Int) []
-                         results <- getChanContents resChan
-                         return $ AllSatResult $ map fromJust $ takeWhile isJust results
-  where go sbvPgm add stop final = loop
-          where loop !n nonEqConsts = do
-                  SatResult r <- callSolver nonEqConsts ("Looking for solution " ++ show n) SatResult config sbvPgm
-                  case r of
-                    Satisfiable _ (SMTModel [] _ _) -> final r
-                    Unknown _ (SMTModel [] _ _)     -> final r
-                    ProofError _ _                  -> final r
-                    TimeOut _                       -> stop
-                    Unsatisfiable _                 -> stop
-                    Satisfiable _ model             -> add r >> loop (n+1) (modelAssocs model : nonEqConsts)
-                    Unknown     _ model             -> add r >> loop (n+1) (modelAssocs model : nonEqConsts)
-
-callSolver :: [[(String, CW)]] -> String -> (SMTResult -> b) -> SMTConfig -> ([NamedSymVar], [(String, UnintKind)], SMTLibPgm) -> IO b
-callSolver nonEqConstraints checkMsg wrap config (inps, modelMap, smtLibPgm) = do
-        let msg = when (verbose config) . putStrLn . ("** " ++)
-        msg checkMsg
-        let finalPgm = addNonEqConstraints nonEqConstraints smtLibPgm
-        msg $ "Generated SMTLib program:\n" ++ finalPgm
-        smtAnswer <- engine (solver config) config inps modelMap finalPgm
-        msg "Done.."
-        return $ wrap smtAnswer
-
-generateTrace :: Provable a => SMTConfig -> Bool -> [String] -> a -> IO ([NamedSymVar], [(String, UnintKind)], SMTLibPgm)
-generateTrace config isSat comments predicate = do
-        let msg = when (verbose config) . putStrLn . ("** " ++)
-            isTiming = timing config
-        msg "Starting symbolic simulation.."
-        res <- timeIf isTiming "problem construction" $ runSymbolic $ forAll_ predicate >>= output
-        msg $ "Generated symbolic trace:\n" ++ show res
-        msg "Translating to SMT-Lib.."
-        case res of
-          Result is consts tbls arrs uis axs pgm [o@(SW (False, 1) _)] | sizeOf o == 1 ->
-             timeIf isTiming "translation" $ let uiMap = catMaybes (map arrayUIKind arrs) ++ map unintFnUIKind uis
-                                             in return (is, uiMap, toSMTLib isSat comments is consts tbls arrs uis axs pgm o)
-          _ -> error $ "SBVProver.generateTrace: Impossible happened:\n" ++ show res
-
--- | Equality as a proof method. Allows for
--- very concise construction of equivalence proofs, which is very typical in
--- bit-precise proofs.
-infix 4 ===
-class Equality a where
-  (===) :: a -> a -> IO ThmResult
-
-instance (SymWord a, EqSymbolic z) => Equality (SBV a -> z) where
-  k === l = prove $ \a -> k a .== l a
-
-instance (SymWord a, SymWord b, EqSymbolic z) => Equality (SBV a -> SBV b -> z) where
-  k === l = prove $ \a b -> k a b .== l a b
-
-instance (SymWord a, SymWord b, EqSymbolic z) => Equality ((SBV a, SBV b) -> z) where
-  k === l = prove $ \a b -> k (a, b) .== l (a, b)
-
-instance (SymWord a, SymWord b, SymWord c, EqSymbolic z) => Equality (SBV a -> SBV b -> SBV c -> z) where
-  k === l = prove $ \a b c -> k a b c .== l a b c
-
-instance (SymWord a, SymWord b, SymWord c, EqSymbolic z) => Equality ((SBV a, SBV b, SBV c) -> z) where
-  k === l = prove $ \a b c -> k (a, b, c) .== l (a, b, c)
-
-instance (SymWord a, SymWord b, SymWord c, SymWord d, EqSymbolic z) => Equality (SBV a -> SBV b -> SBV c -> SBV d -> z) where
-  k === l = prove $ \a b c d -> k a b c d .== l a b c d
-
-instance (SymWord a, SymWord b, SymWord c, SymWord d, EqSymbolic z) => Equality ((SBV a, SBV b, SBV c, SBV d) -> z) where
-  k === l = prove $ \a b c d -> k (a, b, c, d) .== l (a, b, c, d)
-
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, EqSymbolic z) => Equality (SBV a -> SBV b -> SBV c -> SBV d -> SBV e -> z) where
-  k === l = prove $ \a b c d e -> k a b c d e .== l a b c d e
-
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, EqSymbolic z) => Equality ((SBV a, SBV b, SBV c, SBV d, SBV e) -> z) where
-  k === l = prove $ \a b c d e -> k (a, b, c, d, e) .== l (a, b, c, d, e)
-
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, SymWord f, EqSymbolic z) => Equality (SBV a -> SBV b -> SBV c -> SBV d -> SBV e -> SBV f -> z) where
-  k === l = prove $ \a b c d e f -> k a b c d e f .== l a b c d e f
-
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, SymWord f, EqSymbolic z) => Equality ((SBV a, SBV b, SBV c, SBV d, SBV e, SBV f) -> z) where
-  k === l = prove $ \a b c d e f -> k (a, b, c, d, e, f) .== l (a, b, c, d, e, f)
-
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, SymWord f, SymWord g, EqSymbolic z) => Equality (SBV a -> SBV b -> SBV c -> SBV d -> SBV e -> SBV f -> SBV g -> z) where
-  k === l = prove $ \a b c d e f g -> k a b c d e f g .== l a b c d e f g
-
-instance (SymWord a, SymWord b, SymWord c, SymWord d, SymWord e, SymWord f, SymWord g, EqSymbolic z) => Equality ((SBV a, SBV b, SBV c, SBV d, SBV e, SBV f, SBV g) -> z) where
-  k === l = prove $ \a b c d e f g -> k (a, b, c, d, e, f, g) .== l (a, b, c, d, e, f, g)
diff --git a/Temp/sbv-0.9.18/Data/SBV/Provers/SExpr.hs b/Temp/sbv-0.9.18/Data/SBV/Provers/SExpr.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Provers/SExpr.hs
+++ /dev/null
@@ -1,52 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Provers.SExpr
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Parsing of S-expressions (mainly used for parsing Yices output)
------------------------------------------------------------------------------
-
-module Data.SBV.Provers.SExpr where
-
-import Control.Monad.Error ()             -- for Monad (Either String) instance
-import Data.Char           (isDigit, ord)
-import Numeric             (readInt, readDec)
-
-data SExpr = S_Con String
-           | S_Num Integer
-           | S_App [SExpr]
-
-parseSExpr :: String -> Either String SExpr
-parseSExpr inp = do (sexp, []) <- parse inpToks
-                    return sexp
-  where inpToks = let cln ""          sofar = sofar
-                      cln ('(':r)     sofar = cln r (" ( " ++ sofar)
-                      cln (')':r)     sofar = cln r (" ) " ++ sofar)
-                      cln (':':':':r) sofar = cln r (" :: " ++ sofar)
-                      cln (c:r)       sofar = cln r (c:sofar)
-                  in reverse (map reverse (words (cln inp "")))
-        die w = fail $  "SBV.Provers.SExpr: Failed to parse S-Expr: " ++ w
-                     ++ "\n*** Input : <" ++ inp ++ ">"
-        parse []         = die "ran out of tokens"
-        parse ("(":toks) = do (f, r) <- parseApp toks []
-                              return (S_App f, r)
-        parse (")":_)    = die "extra tokens after close paren"
-        parse [tok]      = do t <- pTok tok
-                              return (t, [])
-        parse _          = die "ill-formed s-expr"
-        parseApp []         _     = die "failed to grab s-expr application"
-        parseApp (")":toks) sofar = return (reverse sofar, toks)
-        parseApp ("(":toks) sofar = do (f, r) <- parse ("(":toks)
-                                       parseApp r (f : sofar)
-        parseApp (tok:toks) sofar = do t <- pTok tok
-                                       parseApp toks (t : sofar)
-        pTok ('0':'b':r)       = mkNum $ readInt 2 (`elem` "01") (\c -> ord c - ord '0') r
-        pTok ('b':'v':r)       = mkNum $ readDec (takeWhile (/= '[') r)
-        pTok n | all isDigit n = mkNum $ readDec n
-        pTok n                 = return $ S_Con $ n
-        mkNum [(n, "")] = return $ S_Num n
-        mkNum _         = die "cannot read number"
diff --git a/Temp/sbv-0.9.18/Data/SBV/Provers/Yices.hs b/Temp/sbv-0.9.18/Data/SBV/Provers/Yices.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Provers/Yices.hs
+++ /dev/null
@@ -1,150 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Provers.Yices
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- The connection to the Yices SMT solver
------------------------------------------------------------------------------
-
-{-# LANGUAGE PatternGuards #-}
-
-module Data.SBV.Provers.Yices(yices, timeout) where
-
-import Data.Char          (isDigit)
-import Data.List          (sortBy, isPrefixOf, intercalate, transpose, partition)
-import Data.Maybe         (catMaybes, isJust, fromJust)
-import System.Environment (getEnv)
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.Provers.SExpr
-import Data.SBV.SMT.SMT
-
--- | The description of the Yices SMT solver
--- The default executable is @\"yices\"@, which must be in your path. You can use the @SBV_YICES@ environment variable to point to the executable on your system.
--- The default options are @\"-m -f\"@, which is valid for Yices 2 series. You can use the @SBV_YICES_OPTIONS@ environment variable to override the options.
-yices :: SMTSolver
-yices = SMTSolver {
-           name       = "Yices"
-         , executable = "yices"
-         -- , options    = ["-tc", "-smt", "-e"]   -- For Yices1
-         , options    = ["-m", "-f"]  -- For Yices2
-         , engine     = \cfg inps modelMap pgm -> do
-                                execName <-                getEnv "SBV_YICES"           `catch` (\_ -> return (executable (solver cfg)))
-                                execOpts <- (words `fmap` (getEnv "SBV_YICES_OPTIONS")) `catch` (\_ -> return (options (solver cfg)))
-                                let cfg' = cfg { solver = (solver cfg) {executable = execName, options = execOpts} }
-                                standardSolver cfg' pgm (ProofError cfg) (interpret cfg inps modelMap)
-         }
-
-timeout :: Int -> SMTSolver -> SMTSolver
-timeout n s
-  | n <= 0 = error $ "Yices.timeout value should be > 0, received: " ++ show n
-  | True   = s{options = options s ++ ["-t", show n]}
-
-sortByNodeId :: [(Int, a)] -> [(Int, a)]
-sortByNodeId = sortBy (\(x, _) (y, _) -> compare x y)
-
-interpret :: SMTConfig -> [NamedSymVar] -> [(String, UnintKind)] -> [String] -> SMTResult
-interpret cfg _    _        ("unsat":_)      = Unsatisfiable cfg
-interpret cfg inps modelMap ("unknown":rest) = Unknown       cfg  $ extractMap inps modelMap rest
-interpret cfg inps modelMap ("sat":rest)     = Satisfiable   cfg  $ extractMap inps modelMap rest
-interpret cfg _    _        ("timeout":_)    = TimeOut       cfg
-interpret cfg _    _        ls               = ProofError    cfg  $ ls
-
-extractMap :: [NamedSymVar] -> [(String, UnintKind)] -> [String] -> SMTModel
-extractMap inps modelMap solverLines =
-   SMTModel { modelAssocs    = map (\(_, y) -> y) $ sortByNodeId $ concatMap (getCounterExample inps) modelLines
-            , modelUninterps = [(n, ls) | (UFun _ n, ls) <- uis]
-            , modelArrays    = [(n, ls) | (UArr _ n, ls) <- uis]
-            }
-  where (modelLines, unintLines) = moveConstUIs $ break ("--- " `isPrefixOf`) solverLines
-        uis = extractUnints modelMap unintLines
-
--- another crude hack
-moveConstUIs :: ([String], [String]) -> ([String], [String])
-moveConstUIs (pre, post) = (pre', concatMap mkDecl extras ++ post)
-  where (extras, pre') = partition ("(= uninterpreted_" `isPrefixOf`) pre
-        mkDecl s = ["--- " ++ takeWhile (/= ' ') (drop 3 s) ++ " ---", s]
-
-getCounterExample :: [NamedSymVar] -> String -> [(Int, (String, CW))]
-getCounterExample inps line = either err extract (parseSExpr line)
-  where err r =  error $  "*** Failed to parse Yices model output from: "
-                       ++ "*** " ++ show line ++ "\n"
-                       ++ "*** Reason: " ++ r ++ "\n"
-        isInput ('s':v)
-          | all isDigit v = let inpId :: Int
-                                inpId = read v
-                            in case [(s, nm) | (s@(SW _ (NodeId n)), nm) <-  inps, n == inpId] of
-                                 []        -> Nothing
-                                 [(s, nm)] -> Just (inpId, s, nm)
-                                 matches -> error $  "SBV.Yices: Cannot uniquely identify value for "
-                                                  ++ 's':v ++ " in "  ++ show matches
-        isInput _       = Nothing
-        extract (S_App [S_Con "=", S_Con v, S_Num i]) | Just (n, s, nm) <- isInput v = [(n, (nm, mkConstCW (hasSign s, sizeOf s) i))]
-        extract (S_App [S_Con "=", S_Num i, S_Con v]) | Just (n, s, nm) <- isInput v = [(n, (nm, mkConstCW (hasSign s, sizeOf s) i))]
-        extract _                                                                    = []
-
-extractUnints :: [(String, UnintKind)] -> [String] -> [(UnintKind, [String])]
-extractUnints modelMap = catMaybes . map (extractUnint modelMap) . chunks
-  where chunks []     = []
-        chunks (x:xs) = let (f, r) = span (not . ("---" `isPrefixOf`)) xs in (x:f) : chunks r
-
--- Parsing the Yices output is done extremely crudely and designed
--- mostly by observation of Yices output. Likely to have bugs and
--- brittle as Yices evolves. We really need an SMT-Lib2 like interface.
-extractUnint :: [(String, UnintKind)] -> [String] -> Maybe (UnintKind, [String])
-extractUnint _    []           = Nothing
-extractUnint mmap (tag : rest)
-  | null tag'                  = Nothing
-  | not (isJust mbKnd)         = Nothing
-  | True                       = mapM (getUIVal knd) rest >>= \xs -> return (knd, format knd xs)
-  where mbKnd | "--- uninterpreted_" `isPrefixOf` tag = uf `lookup` mmap
-              | True                                  = af `lookup` mmap
-        knd = fromJust mbKnd
-        tag' = dropWhile (/= '_') tag
-        f    = takeWhile (/= ' ') (tail tag')
-        uf   = f
-        af   = "array_" ++ f
-
-getUIVal :: UnintKind -> String -> Maybe (String, [String], String)
-getUIVal knd s
-  | "default: " `isPrefixOf` s
-  = getDefaultVal knd (dropWhile (/= ' ') s)
-  | True
-  = case parseSExpr s of
-       Right (S_App [S_Con "=", (S_App (S_Con _ : args)), S_Num i]) -> getCallVal knd args i
-       Right (S_App [S_Con "=", S_Con _, S_Num i])                  -> getCallVal knd []   i
-       _ -> Nothing
-
-getDefaultVal :: UnintKind -> String -> Maybe (String, [String], String)
-getDefaultVal knd n = case parseSExpr n of
-                        Right (S_Num i) -> Just $ showDefault knd (show i)
-                        _               -> Nothing
-
-getCallVal :: UnintKind -> [SExpr] -> Integer -> Maybe (String, [String], String)
-getCallVal knd args res = mapM getArg args >>= \as -> return (showCall knd as (show res))
-
-getArg :: SExpr -> Maybe String
-getArg (S_Num i) = Just (show i)
-getArg _         = Nothing
-
-showDefault :: UnintKind -> String -> (String, [String], String)
-showDefault (UFun cnt f) res = (f, replicate cnt "_", res)
-showDefault (UArr cnt f) res = (f, replicate cnt "_", res)
-
-showCall :: UnintKind -> [String] -> String -> (String, [String], String)
-showCall (UFun _ f) as res = (f, as, res)
-showCall (UArr _ f) as res = (f, as, res)
-
-format :: UnintKind -> [(String, [String], String)] -> [String]
-format (UFun{}) eqns = fmtFun eqns
-format (UArr{}) eqns = let fmt (f, as, r) = f ++ "[" ++ intercalate ", " as ++ "] = " ++ r in map fmt eqns
-
-fmtFun :: [(String, [String], String)] -> [String]
-fmtFun ls = map fmt ls
-  where fmt (f, as, r) = f ++ " " ++ unwords (map align (zip as (lens ++ repeat 0))) ++ " = " ++ r
-        lens           = map (maximum . (0:)) $ map (map length) $ transpose [as | (_, as, _) <- ls]
-        align (s, i)   = take (i `max` length s) (s ++ repeat ' ')
diff --git a/Temp/sbv-0.9.18/Data/SBV/SMT/SMT.hs b/Temp/sbv-0.9.18/Data/SBV/SMT/SMT.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/SMT/SMT.hs
+++ /dev/null
@@ -1,308 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.SMT.SMT
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Abstraction of SMT solvers
------------------------------------------------------------------------------
-
-{-# LANGUAGE ScopedTypeVariables #-}
-
-module Data.SBV.SMT.SMT where
-
-import Control.DeepSeq  (NFData(..))
-import Control.Monad    (when, zipWithM)
-import Data.Char        (isSpace)
-import Data.Int         (Int8, Int16, Int32, Int64)
-import Data.List        (intercalate)
-import Data.Word        (Word8, Word16, Word32, Word64)
-import System.Directory (findExecutable)
-import System.Process   (readProcessWithExitCode)
-import System.Exit      (ExitCode(..))
-
-import Data.SBV.BitVectors.Data
-import Data.SBV.BitVectors.PrettyNum
-import Data.SBV.Utils.TDiff
-
--- | Solver configuration
-data SMTConfig = SMTConfig {
-         verbose   :: Bool      -- ^ Debug mode
-       , timing    :: Bool      -- ^ Print timing information on how long different phases took (construction, solving, etc.)
-       , printBase :: Int       -- ^ Print literals in this base
-       , solver    :: SMTSolver -- ^ The actual SMT solver
-       }
-
-type SMTEngine = SMTConfig -> [NamedSymVar] -> [(String, UnintKind)] -> String -> IO SMTResult
-
--- | An SMT solver
-data SMTSolver = SMTSolver {
-         name       :: String    -- ^ Printable name of the solver
-       , executable :: String    -- ^ The path to its executable
-       , options    :: [String]  -- ^ Options to provide to the solver
-       , engine     :: SMTEngine -- ^ The solver engine, responsible for interpreting solver output
-       }
-
--- | A model, as returned by a solver
-data SMTModel = SMTModel {
-        modelAssocs    :: [(String, CW)]
-     ,  modelArrays    :: [(String, [String])]  -- very crude!
-     ,  modelUninterps :: [(String, [String])]  -- very crude!
-     }
-     deriving Show
-
--- | The result of an SMT solver call. Each constructor is tagged with
--- the 'SMTConfig' that created it so that further tools can inspect it
--- and build layers of results, if needed. For ordinary uses of the library,
--- this type should not be needed, instead use the accessor functions on
--- it. (Custom Show instances and model extractors.)
-data SMTResult = Unsatisfiable SMTConfig            -- ^ Unsatisfiable
-               | Satisfiable   SMTConfig SMTModel   -- ^ Satisfiable with model
-               | Unknown       SMTConfig SMTModel   -- ^ Prover returned unknown, with a potential (possibly bogus) model
-               | ProofError    SMTConfig [String]   -- ^ Prover errored out
-               | TimeOut       SMTConfig            -- ^ Computation timed out (see the 'timeout' combinator)
-
-resultConfig :: SMTResult -> SMTConfig
-resultConfig (Unsatisfiable c) = c
-resultConfig (Satisfiable c _) = c
-resultConfig (Unknown c _)     = c
-resultConfig (ProofError c _)  = c
-resultConfig (TimeOut c)       = c
-
-instance NFData SMTResult where
-  rnf (Unsatisfiable _)   = ()
-  rnf (Satisfiable _ xs)  = rnf xs `seq` ()
-  rnf (Unknown _ xs)      = rnf xs `seq` ()
-  rnf (ProofError _ xs)   = rnf xs `seq` ()
-  rnf (TimeOut _)         = ()
-
-instance NFData SMTModel where
-  rnf (SMTModel assocs unints uarrs) = rnf assocs `seq` rnf unints `seq` rnf uarrs `seq` ()
-
--- | A 'prove' call results in a 'ThmResult'
-newtype ThmResult    = ThmResult    SMTResult
-
--- | A 'sat' call results in a 'SatResult'
--- The reason for having a separate 'SatResult' is to have a more meaningful 'Show' instance.
-newtype SatResult    = SatResult    SMTResult
-
--- | An 'allSat' call results in a 'AllSatResult'
-newtype AllSatResult = AllSatResult [SMTResult]
-
-instance Show ThmResult where
-  show (ThmResult r) = showSMTResult "Q.E.D."
-                                     "Unknown"     "Unknown. Potential counter-example:\n"
-                                     "Falsifiable" "Falsifiable. Counter-example:\n" r
-
-instance Show SatResult where
-  show (SatResult r) = showSMTResult "Unsatisfiable"
-                                     "Unknown"     "Unknown. Potential model:\n"
-                                     "Satisfiable" "Satisfiable. Model:\n" r
-
-
-instance Show AllSatResult where
-  show (AllSatResult [])  =  "No solutions found"
-  show (AllSatResult [s]) =  "Only one solution found:\n" ++ shUnique s
-        where shUnique = showSMTResult "Unsatisfiable"
-                                       ("Unknown (No assignment to variables returned)") "Unknown. Potential assignment:\n" "" ""
-  show (AllSatResult ss)  =  "Multiple solutions found:\n"      -- shouldn't display how-many; would be too slow/leak-space to compute everything..
-                          ++ unlines (zipWith sh [(1::Int)..] ss)
-                          ++ "Done."
-        where sh i = showSMTResult "Unsatisfiable"
-                                   ("Unknown #" ++ show i ++ "(No assignment to variables returned)") "Unknown. Potential assignment:\n"
-                                   ("Solution #" ++ show i ++ " (No assignment to variables returned)") ("Solution #" ++ show i ++ ":\n")
-
--- | Instances of 'SatModel' can be automatically extracted from models returned by the
--- solvers. The idea is that the sbv infrastructure provides a stream of 'CW''s (constant-words)
--- coming from the solver, and the type @a@ is interpreted based on these constants. Many typical
--- instances are already provided, so new instances can be declared with relative ease.
---
--- Minimum complete definition: 'parseCWs'
-class SatModel a where
-  -- | Given a sequence of constant-words, extract one instance of the type @a@, returning
-  -- the remaining elements untouched. If the next element is not what's expected for this
-  -- type you should return 'Nothing'
-  parseCWs  :: [CW] -> Maybe (a, [CW])
-  -- | Given a parsed model instance, transform it using @f@, and return the result.
-  -- The default definition for this method should be sufficient in most use cases.
-  cvtModel  :: (a -> Maybe b) -> Maybe (a, [CW]) -> Maybe (b, [CW])
-  cvtModel f x = x >>= \(a, r) -> f a >>= \b -> return (b, r)
-
-genParse :: Integral a => (Bool,Size) -> [CW] -> Maybe (a,[CW])
-genParse (signed,size) (x:r)
-  | hasSign x == signed && sizeOf x == size = Just (fromIntegral (cwVal x),r)
-genParse _ _ = Nothing
-
-instance SatModel Bool where
-  parseCWs xs = do (x,r) <- genParse (False,1) xs
-                   return ((x :: Integer) /= 0, r)
-
-instance SatModel Word8 where
-  parseCWs = genParse (False,8)
-
-instance SatModel Int8 where
-  parseCWs = genParse (True,8)
-
-instance SatModel Word16 where
-  parseCWs = genParse (False,16)
-
-instance SatModel Int16 where
-  parseCWs = genParse (True,16)
-
-instance SatModel Word32 where
-  parseCWs = genParse (False,32)
-
-instance SatModel Int32 where
-  parseCWs = genParse (True,32)
-
-instance SatModel Word64 where
-  parseCWs = genParse (False,64)
-
-instance SatModel Int64 where
-  parseCWs = genParse (True,64)
-
--- when reading a list; go as long as we can (maximal-munch)
--- note that this never fails..
-instance SatModel a => SatModel [a] where
-  parseCWs [] = Just ([], [])
-  parseCWs xs = case parseCWs xs of
-                  Just (a, ys) -> case parseCWs ys of
-                                    Just (as, zs) -> Just (a:as, zs)
-                                    Nothing       -> Just ([], ys)
-                  Nothing     -> Just ([], xs)
-
-instance (SatModel a, SatModel b) => SatModel (a, b) where
-  parseCWs as = do (a, bs) <- parseCWs as
-                   (b, cs) <- parseCWs bs
-                   return ((a, b), cs)
-
-instance (SatModel a, SatModel b, SatModel c) => SatModel (a, b, c) where
-  parseCWs as = do (a,      bs) <- parseCWs as
-                   ((b, c), ds) <- parseCWs bs
-                   return ((a, b, c), ds)
-
-instance (SatModel a, SatModel b, SatModel c, SatModel d) => SatModel (a, b, c, d) where
-  parseCWs as = do (a,         bs) <- parseCWs as
-                   ((b, c, d), es) <- parseCWs bs
-                   return ((a, b, c, d), es)
-
-instance (SatModel a, SatModel b, SatModel c, SatModel d, SatModel e) => SatModel (a, b, c, d, e) where
-  parseCWs as = do (a, bs)            <- parseCWs as
-                   ((b, c, d, e), fs) <- parseCWs bs
-                   return ((a, b, c, d, e), fs)
-
-instance (SatModel a, SatModel b, SatModel c, SatModel d, SatModel e, SatModel f) => SatModel (a, b, c, d, e, f) where
-  parseCWs as = do (a, bs)               <- parseCWs as
-                   ((b, c, d, e, f), gs) <- parseCWs bs
-                   return ((a, b, c, d, e, f), gs)
-
-instance (SatModel a, SatModel b, SatModel c, SatModel d, SatModel e, SatModel f, SatModel g) => SatModel (a, b, c, d, e, f, g) where
-  parseCWs as = do (a, bs)                  <- parseCWs as
-                   ((b, c, d, e, f, g), hs) <- parseCWs bs
-                   return ((a, b, c, d, e, f, g), hs)
-
--- | Given an 'SMTResult', extract an arbitrarily typed model from it, given a 'SatModel' instance
-getModel :: SatModel a => SMTResult -> a
-getModel (Unsatisfiable _) = error "SatModel.getModel: Unsatisfiable result"
-getModel (Unknown _ _)     = error "Impossible! Backend solver returned unknown for Bit-vector problem!"
-getModel (ProofError _ s)  = error $ unlines $ "An error happened: " : s
-getModel (TimeOut _)       = error $ "Timeout"
-getModel (Satisfiable _ m) = case parseCWs [c | (_, c) <- modelAssocs m] of
-                               Just (x, []) -> x
-                               Just (_, ys) -> error $ "SBV.getModel: Partially constructed model; remaining elements: " ++ show ys
-                               Nothing      -> error $ "SBV.getModel: Cannot construct a model from: " ++ show m
-
--- | Given an 'allSat' call, we typically want to iterate over it and print the results in sequence. The
--- 'displayModels' function automates this task by calling 'disp' on each result, consecutively. The first
--- 'Int' argument to 'disp' 'is the current model number.
-displayModels :: SatModel a => (Int -> a -> IO ()) -> AllSatResult -> IO Int
-displayModels disp (AllSatResult ms) = do
-    inds <- zipWithM display (map getModel ms) [(1::Int)..]
-    return $ last (0:inds)
-  where display r i = disp i r >> return i
-
-showSMTResult :: String -> String -> String -> String -> String -> SMTResult -> String
-showSMTResult unsatMsg unkMsg unkMsgModel satMsg satMsgModel result = case result of
-  Unsatisfiable _                   -> unsatMsg
-  Satisfiable _ (SMTModel [] [] []) -> satMsg
-  Satisfiable _ m                   -> satMsgModel ++ showModel cfg m
-  Unknown _ (SMTModel [] [] [])     -> unkMsg
-  Unknown _ m                       -> unkMsgModel ++ showModel cfg m
-  ProofError _ []                   -> "*** An error occurred. No additional information available. Try running in verbose mode"
-  ProofError _ ls                   -> "*** An error occurred.\n" ++ intercalate "\n" (map ("***  " ++) ls)
-  TimeOut _                         -> "*** Timeout"
- where cfg = resultConfig result
-
-showModel :: SMTConfig -> SMTModel -> String
-showModel cfg m = intercalate "\n" (map (shM cfg) assocs ++ concatMap shUI uninterps ++ concatMap shUA arrs)
-  where assocs    = modelAssocs m
-        uninterps = modelUninterps m
-        arrs      = modelArrays m
-
-shCW :: SMTConfig -> CW -> String
-shCW cfg v = sh (printBase cfg) v
-  where sh 2  = binS
-        sh 10 = show
-        sh 16 = hexS
-        sh n  = \w -> show w ++ " -- Ignoring unsupported printBase " ++ show n ++ ", use 2, 10, or 16."
-
-shM :: SMTConfig -> (String, CW) -> String
-shM cfg (s, v) = "  " ++ s ++ " = " ++ shCW cfg v
-
--- very crude.. printing uninterpreted functions
-shUI :: (String, [String]) -> [String]
-shUI (flong, cases) = ("  -- uninterpreted: " ++ f) : map shC cases
-  where tf = dropWhile (/= '_') flong
-        f  =  if null tf then flong else tail tf
-        shC s = "       " ++ s
-
--- very crude.. printing array values
-shUA :: (String, [String]) -> [String]
-shUA (f, cases) = ("  -- array: " ++ f) : map shC cases
-  where shC s = "       " ++ s
-
-pipeProcess :: String -> String -> [String] -> String -> IO (Either String [String])
-pipeProcess nm execName opts script = do
-        mbExecPath <- findExecutable execName
-        case mbExecPath of
-          Nothing -> return $ Left $ "Unable to locate executable for " ++ nm
-                                   ++ "\nExecutable specified: " ++ show execName
-          Just execPath -> do (ec, contents, errors) <- readProcessWithExitCode execPath opts script
-                              case ec of
-                                ExitSuccess  ->  if null errors
-                                                 then return $ Right $ map clean (filter (not . null) (lines contents))
-                                                 else return $ Left errors
-                                ExitFailure n -> let errors' = if null (dropWhile isSpace errors)
-                                                               then (if null (dropWhile isSpace contents)
-                                                                     then "(No error message printed on stderr by the executable.)"
-                                                                     else contents)
-                                                               else errors
-                                                 in return $ Left $  "Failed to complete the call to " ++ nm
-                                                                  ++ "\nExecutable   : " ++ show execPath
-                                                                  ++ "\nOptions      : " ++ unwords opts
-                                                                  ++ "\nExit code    : " ++ show n
-                                                                  ++ "\nSolver output: "
-                                                                  ++ "\n" ++ line ++ "\n"
-                                                                  ++ intercalate "\n" (filter (not . null) (lines errors'))
-                                                                  ++ "\n" ++ line
-                                                                  ++ "\nGiving up.."
-  where clean = reverse . dropWhile isSpace . reverse . dropWhile isSpace
-        line  = take 78 $ repeat '='
-
-standardSolver :: SMTConfig -> String -> ([String] -> a) -> ([String] -> a) -> IO a
-standardSolver config script failure success = do
-    let msg      = when (verbose config) . putStrLn . ("** " ++)
-        smtSolver= solver config
-        exec     = executable smtSolver
-        opts     = options smtSolver
-        isTiming = timing config
-        nmSolver = name smtSolver
-    msg $ "Calling: " ++ show (unwords (exec:opts))
-    contents <- timeIf isTiming nmSolver $ pipeProcess nmSolver exec opts script
-    msg $ nmSolver ++ " output:\n" ++ either id (intercalate "\n") contents
-    case contents of
-      Left e   -> return $ failure (lines e)
-      Right xs -> return $ success xs
diff --git a/Temp/sbv-0.9.18/Data/SBV/SMT/SMTLib.hs b/Temp/sbv-0.9.18/Data/SBV/SMT/SMTLib.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/SMT/SMTLib.hs
+++ /dev/null
@@ -1,224 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.SMT.SMTLib
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Conversion of symbolic programs to SMTLib format
------------------------------------------------------------------------------
-{-# LANGUAGE PatternGuards #-}
-
-module Data.SBV.SMT.SMTLib(SMTLibPgm, toSMTLib, addNonEqConstraints) where
-
-import Control.DeepSeq              (NFData(..))
-import qualified Data.Foldable as F (toList)
-import Data.List                    (intercalate)
-
-import Data.SBV.BitVectors.Data
-
-newtype SMTLibPgm = SMTLibPgm ([(String, SW)], [String], [String])
-instance NFData SMTLibPgm
-
-instance Show SMTLibPgm where
-  show (SMTLibPgm (_, pre, post)) = intercalate "\n" $ pre ++ post
-
-addNonEqConstraints :: [[(String, CW)]] -> SMTLibPgm -> String
-addNonEqConstraints nonEqConstraints (SMTLibPgm (aliasTable, pre, post)) = intercalate "\n" $
-     pre
-  ++ [ " ; --- refuted-models ---" ]
-  ++ concatMap nonEqs (map (map intName) nonEqConstraints)
-  ++ post
- where intName (s, c)
-          | Just sw <- s `lookup` aliasTable = (show sw, c)
-          | True                             = (s, c)
-
-toSMTLib :: Bool                                        -- ^ is this a sat problem?
-         -> [String]                                    -- ^ extra comments to place on top
-         -> [(SW, String)]                              -- ^ inputs and aliasing names
-         -> [(SW, CW)]                                  -- ^ constants
-         -> [((Int, (Bool, Int), (Bool, Int)), [SW])]   -- ^ auto-generated tables
-         -> [(Int, ArrayInfo)]                          -- ^ user specified arrays
-         -> [(String, SBVType)]                         -- ^ uninterpreted functions/constants
-         -> [(String, [String])]                        -- ^ user given axioms
-         -> Pgm                                         -- ^ assignments
-         -> SW                                          -- ^ output variable
-         -> SMTLibPgm
-toSMTLib isSat comments inps consts tbls arrs uis axs asgnsSeq out = SMTLibPgm (aliasTable, pre, post)
-  where logic
-         | null tbls && null arrs && null uis = "QF_BV"
-         | True                               = "QF_AUFBV"
-        pre =    [ "; Automatically generated by SBV. Do not edit." ]
-              ++ map ("; " ++) comments
-              ++ ["(benchmark sbv"
-                 , " :logic " ++ logic
-                 , " :status unknown"
-                 , " ; --- inputs ---"
-                 ]
-              ++ map decl (map fst inps)
-              ++ [ " ; --- declarations ---" ]
-              ++ map (decl . fst) consts
-              ++ map (decl . fst) asgns
-              ++ [ " ; --- constants ---" ]
-              ++ map cvtCnst consts
-              ++ [ " ; --- tables ---" ]
-              ++ concatMap mkTable tbls
-              ++ [ " ; --- arrays ---" ]
-              ++ concatMap declArray arrs
-              ++ [ " ; --- uninterpreted constants ---" ]
-              ++ concatMap declUI uis
-              ++ [ " ; --- user given axioms ---" ]
-              ++ map declAx axs
-              ++ [ " ; --- assignments ---" ]
-              ++ map cvtAsgn asgns
-        post =    [ " ; --- formula ---" ]
-               ++ [mkFormula isSat out]
-               ++ [")"]
-        aliasTable = map (\(x, y) -> (y, x)) inps
-        asgns = F.toList asgnsSeq
-
--- TODO: Does this work for SMT-Lib when the index/element types are signed?
--- Currently we ignore the signedness of the arguments, as there appears to be no way
--- to capture that in SMT-Lib; and likely it does not matter. Would be good to check
--- explicitly though.
-mkTable :: ((Int, (Bool, Int), (Bool, Int)), [SW]) -> [String]
-mkTable ((i, (_, at), (_, rt)), elts) = (" :extrafuns ((" ++ t ++ " Array[" ++ show at ++ ":" ++ show rt ++ "]))") : zipWith mkElt elts [(0::Int)..]
-  where t = "table" ++ show i
-        mkElt x k = " :assumption (= (select " ++ t ++ " bv" ++ show k ++ "[" ++ show at ++ "]) " ++ show x ++ ")"
-
-declArray :: (Int, ArrayInfo) -> [String]
-declArray (i, (_, ((_, at), (_, rt)), ctx)) = adecl : ctxInfo
-  where nm = "array_" ++ show i
-        adecl = " :extrafuns ((" ++ nm ++ " Array[" ++ show at ++ ":" ++ show rt ++ "]))"
-        ctxInfo = case ctx of
-                    ArrayFree Nothing   -> []
-                    ArrayFree (Just sw) -> declA sw
-                    ArrayReset _ sw     -> declA sw
-                    ArrayMutate j a b -> [" :assumption (= " ++ nm ++ " (store array_" ++ show j ++ " " ++ show a ++ " " ++ show b ++ "))"]
-                    ArrayMerge  t j k -> [" :assumption (= " ++ nm ++ " (ite (= bv1[1] " ++ show t ++ ") array_" ++ show j ++ " array_" ++ show k ++ "))"]
-        declA sw = let iv = nm ++ "_freeInitializer"
-                   in [ " :extrafuns ((" ++ iv ++ " BitVec[" ++ show at ++ "]))"
-                      , " :assumption (= (select " ++ nm ++ " " ++ iv ++ ") " ++ show sw ++ ")"
-                      ]
-
-declAx :: (String, [String]) -> String
-declAx (nm, ls) = (" ;; -- user given axiom: " ++ nm ++ "\n   ") ++ intercalate "\n   " ls
-
-declUI :: (String, SBVType) -> [String]
-declUI (i, t) = [" :extrafuns ((uninterpreted_" ++ i ++ " " ++ cvtType t ++ "))"]
-
-mkFormula :: Bool -> SW -> String
-mkFormula isSat s
- | isSat = " :formula (= " ++ show s ++ " bv1[1])"
- | True  = " :formula (= " ++ show s ++ " bv0[1])"
-
-nonEqs :: [(String, CW)] -> [String]
-nonEqs []     =  []
-nonEqs [sc]   =  [" :assumption " ++ nonEq sc]
-nonEqs (sc:r) =  [" :assumption (or " ++ nonEq sc]
-              ++ map (("                 " ++) . nonEq) r
-              ++ ["             )"]
-
-nonEq :: (String, CW) -> String
-nonEq (s, c) = "(not (= " ++ s ++ " " ++ cvtCW c ++ "))"
-
--- SMTLib represents signed/unsigned quantities with the same type
-decl :: SW -> String
-decl s = " :extrafuns  ((" ++ show s ++ " BitVec[" ++ show (sizeOf s) ++ "]))"
-
-cvtAsgn :: (SW, SBVExpr) -> String
-cvtAsgn (s, e) = " :assumption (= " ++ show s ++ " " ++ cvtExp e ++ ")"
-
-cvtCnst :: (SW, CW) -> String
-cvtCnst (s, c) = " :assumption (= " ++ show s ++ " " ++ cvtCW c ++ ")"
-
-cvtCW :: CW -> String
-cvtCW x | not (hasSign x) = "bv" ++ show (cwVal x) ++ "[" ++ show (sizeOf x) ++ "]"
--- signed numbers (with 2's complement representation) is problematic
--- since there's no way to put a bvneg over a positive number to get minBound..
--- Hence, we punt and use binary notation in that particular case
-cvtCW x | cwVal x == least = mkMinBound (sizeOf x)
-  where least = negate (2 ^ sizeOf x)
-cvtCW x = negIf (w < 0) $ "bv" ++ show (abs w) ++ "[" ++ show (sizeOf x) ++ "]"
-  where w = cwVal x
-
-negIf :: Bool -> String -> String
-negIf True  a = "(bvneg " ++ a ++ ")"
-negIf False a = a
-
--- anamoly at the 2's complement min value! Have to use binary notation here
--- as there is no positive value we can provide to make the bvneg work.. (see above)
-mkMinBound :: Int -> String
-mkMinBound i = "bv1" ++ take (i-1) (repeat '0') ++ "[" ++ show i ++ "]"
-
-rot :: String -> Int -> SW -> String
-rot o c x = "(" ++ o ++ "[" ++ show c ++ "] " ++ show x ++ ")"
-
-shft :: String -> String -> Int -> SW -> String
-shft oW oS c x= "(" ++ o ++ " " ++ show x ++ " " ++ cvtCW c' ++ ")"
-   where s  = hasSign x
-         c' = mkConstCW (s, sizeOf x) c
-         o  = if hasSign x then oS else oW
-
-cvtExp :: SBVExpr -> String
-cvtExp (SBVApp Ite [a, b, c]) = "(ite (= bv1[1] " ++ show a ++ ") " ++ show b ++ " " ++ show c ++ ")"
-cvtExp (SBVApp (Rol i) [a])   = rot "rotate_left"  i a
-cvtExp (SBVApp (Ror i) [a])   = rot "rotate_right" i a
-cvtExp (SBVApp (Shl i) [a])   = shft "bvshl"  "bvshl"  i a
-cvtExp (SBVApp (Shr i) [a])   = shft "bvlshr" "bvashr" i a
-cvtExp (SBVApp (LkUp (t, (_, at), _, l) i e) [])
-  | needsCheck = "(ite " ++ cond ++ show e ++ " " ++ lkUp ++ ")"
-  | True       = lkUp
-  where needsCheck = (2::Integer)^(at) > (fromIntegral l)
-        lkUp = "(select table" ++ show t ++ " " ++ show i ++ ")"
-        cond
-         | hasSign i = "(or " ++ le0 ++ " " ++ gtl ++ ") "
-         | True      = gtl ++ " "
-        (less, leq) = if hasSign i then ("bvslt", "bvsle") else ("bvult", "bvule")
-        mkCnst = cvtCW . mkConstCW (hasSign i, sizeOf i)
-        le0  = "(" ++ less ++ " " ++ show i ++ " " ++ mkCnst 0 ++ ")"
-        gtl  = "(" ++ leq  ++ " " ++ mkCnst l ++ " " ++ show i ++ ")"
-cvtExp (SBVApp (Extract i j) [a]) = "(extract[" ++ show i ++ ":" ++ show j ++ "] " ++ show a ++ ")"
-cvtExp (SBVApp (ArrEq i j) []) = "(ite (= array_" ++ show i ++ " array_" ++ show j ++") bv1[1] bv0[1])"
-cvtExp (SBVApp (ArrRead i) [a]) = "(select array_" ++ show i ++ " " ++ show a ++ ")"
-cvtExp (SBVApp (Uninterpreted nm) [])   = "uninterpreted_" ++ nm
-cvtExp (SBVApp (Uninterpreted nm) args) = "(uninterpreted_" ++ nm ++ " " ++ intercalate " " (map show args) ++ ")"
-cvtExp inp@(SBVApp op args)
-  | Just f <- lookup op smtOpTable
-  = f (any hasSign args) (map show args)
-  | True
-  = error $ "SBV.SMT.SMTLib.cvtExp: impossible happened; can't translate: " ++ show inp
-  where lift2  o _ [x, y] = "(" ++ o ++ " " ++ x ++ " " ++ y ++ ")"
-        lift2  o _ sbvs   = error $ "SBV.SMTLib.cvtExp.lift2: Unexpected arguments: "   ++ show (o, sbvs)
-        lift2B oU oS sgn sbvs
-          | sgn
-          = "(ite " ++ lift2 oS sgn sbvs ++ " bv1[1] bv0[1])"
-          | True
-          = "(ite " ++ lift2 oU sgn sbvs ++ " bv1[1] bv0[1])"
-        lift2N o sgn sbvs = "(bvnot " ++ lift2 o sgn sbvs ++ ")"
-        lift1  o _ [x]    = "(" ++ o ++ " " ++ x ++ ")"
-        lift1  o _ sbvs   = error $ "SBV.SMT.SMTLib.cvtExp.lift1: Unexpected arguments: "   ++ show (o, sbvs)
-        smtOpTable = [ (Plus,          lift2   "bvadd")
-                     , (Minus,         lift2   "bvsub")
-                     , (Times,         lift2   "bvmul")
-                     , (Quot,          lift2   "bvudiv")
-                     , (Rem,           lift2   "bvurem")
-                     , (Equal,         lift2   "bvcomp")
-                     , (NotEqual,      lift2N  "bvcomp")
-                     , (LessThan,      lift2B  "bvult" "bvslt")
-                     , (GreaterThan,   lift2B  "bvugt" "bvsgt")
-                     , (LessEq,        lift2B  "bvule" "bvsle")
-                     , (GreaterEq,     lift2B  "bvuge" "bvsge")
-                     , (And,           lift2   "bvand")
-                     , (Or,            lift2   "bvor")
-                     , (XOr,           lift2   "bvxor")
-                     , (Not,           lift1   "bvnot")
-                     , (Join,          lift2   "concat")
-                     ]
-
-cvtType :: SBVType -> String
-cvtType (SBVType []) = error "SBV.SMT.SMTLib.cvtType: internal: received an empty type!"
-cvtType (SBVType xs) = intercalate " " $ map sh xs
-  where sh (_, s) = "BitVec[" ++ show s ++ "]"
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Arrays/Memory.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Arrays/Memory.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Arrays/Memory.hs
+++ /dev/null
@@ -1,26 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Arrays.Memory
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Arrays.Memory
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Arrays.Memory(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Arrays.Memory
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-     "memory-raw"           ~: assert       =<< isTheorem raw
-   , "memory-waw"           ~: assert       =<< isTheorem waw
-   , "memory-wcommute-bad"  ~: assert . not =<< isTheorem wcommutesBad
-   , "memory-wcommute-good" ~: assert       =<< isTheorem wcommutesGood
-   ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Arithmetic.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Arithmetic.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Arithmetic.hs
+++ /dev/null
@@ -1,155 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Basics.Arithmetic
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for basic concrete arithmetic
------------------------------------------------------------------------------
-
-{-# LANGUAGE Rank2Types #-}
-
-module Data.SBV.TestSuite.Basics.Arithmetic(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test $
-        genBinTest "+"                (+)
-     ++ genBinTest "-"                (-)
-     ++ genBinTest "*"                (*)
-     ++ genUnTest  "negate"           negate
-     ++ genUnTest  "abs"              abs
-     ++ genUnTest  "signum"           signum
-     ++ genBinTest ".&."              (.&.)
-     ++ genBinTest ".|."              (.|.)
-     ++ genBinTest "xor"              (xor)
-     ++ genUnTest  "complement"       complement
-     ++ genIntTest "shift"            shift
-     ++ genIntTest "rotate"           rotate
-     ++ genIntTest "setBit"           setBit
-     ++ genIntTest "clearBit"         clearBit
-     ++ genIntTest "complementBit"    complementBit
-     ++ genIntTest "shiftL"           shiftL
-     ++ genIntTest "shiftR"           shiftR
-     ++ genIntTest "rotateL"          rotateL
-     ++ genIntTest "rotateR"          rotateR
-     ++ genBlasts
-
-genBinTest :: String -> (forall a. Bits a => a -> a -> a) -> [Test]
-genBinTest nm op = map mkTest $
-        zipWith pair [(show x, show y, x `op` y) | x <- w8s,  y <- w8s ] [x `op` y | x <- sw8s,  y <- sw8s]
-     ++ zipWith pair [(show x, show y, x `op` y) | x <- w16s, y <- w16s] [x `op` y | x <- sw16s, y <- sw16s]
-     ++ zipWith pair [(show x, show y, x `op` y) | x <- w32s, y <- w32s] [x `op` y | x <- sw32s, y <- sw32s]
-     ++ zipWith pair [(show x, show y, x `op` y) | x <- w64s, y <- w64s] [x `op` y | x <- sw64s, y <- sw64s]
-     ++ zipWith pair [(show x, show y, x `op` y) | x <- i8s,  y <- i8s ] [x `op` y | x <- si8s,  y <- si8s]
-     ++ zipWith pair [(show x, show y, x `op` y) | x <- i16s, y <- i16s] [x `op` y | x <- si16s, y <- si16s]
-     ++ zipWith pair [(show x, show y, x `op` y) | x <- i32s, y <- i32s] [x `op` y | x <- si32s, y <- si32s]
-     ++ zipWith pair [(show x, show y, x `op` y) | x <- i64s, y <- i64s] [x `op` y | x <- si64s, y <- si64s]
-  where pair (x, y, a) b   = (x, y, show ((fromIntegral a) `asTypeOf` b) == show b)
-        mkTest (x, y, s) = "arithmetic-" ++ nm ++ "." ++ x ++ "_" ++ y  ~: s `showsAs` "True"
-
-genUnTest :: String -> (forall a. Bits a => a -> a) -> [Test]
-genUnTest nm op = map mkTest $
-        zipWith pair [(show x, op x) | x <- w8s ] [op x | x <- sw8s ]
-     ++ zipWith pair [(show x, op x) | x <- w16s] [op x | x <- sw16s]
-     ++ zipWith pair [(show x, op x) | x <- w32s] [op x | x <- sw32s]
-     ++ zipWith pair [(show x, op x) | x <- w64s] [op x | x <- sw64s]
-     ++ zipWith pair [(show x, op x) | x <- i8s ] [op x | x <- si8s ]
-     ++ zipWith pair [(show x, op x) | x <- i16s] [op x | x <- si16s]
-     ++ zipWith pair [(show x, op x) | x <- i32s] [op x | x <- si32s]
-     ++ zipWith pair [(show x, op x) | x <- i64s] [op x | x <- si64s]
-  where pair (x, a) b   = (x, show ((fromIntegral a) `asTypeOf` b) == show b)
-        mkTest (x, s) = "arithmetic-" ++ nm ++ "." ++ x ~: s `showsAs` "True"
-
-genIntTest :: String -> (forall a. Bits a => a -> Int -> a) -> [Test]
-genIntTest nm op = map mkTest $
-        zipWith pair [("u8",  show x, show y, x `op` y) | x <- w8s,  y <- is] [x `op` y | x <- sw8s,  y <- is]
-     ++ zipWith pair [("u16", show x, show y, x `op` y) | x <- w16s, y <- is] [x `op` y | x <- sw16s, y <- is]
-     ++ zipWith pair [("u32", show x, show y, x `op` y) | x <- w32s, y <- is] [x `op` y | x <- sw32s, y <- is]
-     ++ zipWith pair [("u64", show x, show y, x `op` y) | x <- w64s, y <- is] [x `op` y | x <- sw64s, y <- is]
-     ++ zipWith pair [("s8",  show x, show y, x `op` y) | x <- i8s,  y <- is] [x `op` y | x <- si8s,  y <- is]
-     ++ zipWith pair [("s16", show x, show y, x `op` y) | x <- i16s, y <- is] [x `op` y | x <- si16s, y <- is]
-     ++ zipWith pair [("s32", show x, show y, x `op` y) | x <- i32s, y <- is] [x `op` y | x <- si32s, y <- is]
-     ++ zipWith pair [("s64", show x, show y, x `op` y) | x <- i64s, y <- is] [x `op` y | x <- si64s, y <- is]
-  where pair (t, x, y, a) b       = (t, x, y, show a, show b, show ((fromIntegral a) `asTypeOf` b) == show b)
-        mkTest (t, x, y, a, b, s) = "arithmetic-" ++ nm ++ "." ++ t ++ "_" ++ x ++ "_" ++ y ++ "_" ++ a ++ "_" ++ b ~: s `showsAs` "True"
-        is = [-10 .. 10]
-
-genBlasts :: [Test]
-genBlasts = map mkTest $
-             [(show x, fromBitsLE (blastLE x) .== x) | x <- sw8s ]
-          ++ [(show x, fromBitsBE (blastBE x) .== x) | x <- sw8s ]
-          ++ [(show x, fromBitsLE (blastLE x) .== x) | x <- si8s ]
-          ++ [(show x, fromBitsBE (blastBE x) .== x) | x <- si8s ]
-          ++ [(show x, fromBitsLE (blastLE x) .== x) | x <- sw16s ]
-          ++ [(show x, fromBitsBE (blastBE x) .== x) | x <- sw16s ]
-          ++ [(show x, fromBitsLE (blastLE x) .== x) | x <- si16s ]
-          ++ [(show x, fromBitsBE (blastBE x) .== x) | x <- si16s ]
-          ++ [(show x, fromBitsLE (blastLE x) .== x) | x <- sw32s ]
-          ++ [(show x, fromBitsBE (blastBE x) .== x) | x <- sw32s ]
-          ++ [(show x, fromBitsLE (blastLE x) .== x) | x <- si32s ]
-          ++ [(show x, fromBitsBE (blastBE x) .== x) | x <- si32s ]
-          ++ [(show x, fromBitsLE (blastLE x) .== x) | x <- sw64s ]
-          ++ [(show x, fromBitsBE (blastBE x) .== x) | x <- sw64s ]
-          ++ [(show x, fromBitsLE (blastLE x) .== x) | x <- si64s ]
-          ++ [(show x, fromBitsBE (blastBE x) .== x) | x <- si64s ]
-  where mkTest (x, r) = "blast-" ++ show x ~: r `showsAs` "True"
-
--- Concrete test data
-xsSigned, xsUnsigned :: (Num a, Enum a, Bounded a) => [a]
-xsUnsigned = take 5 (iterate (1+) minBound) ++ take 5 (iterate (\x -> x-1) maxBound)
-xsSigned   = xsUnsigned ++ [-5 .. 5]
-
-w8s :: [Word8]
-w8s = xsUnsigned
-
-sw8s :: [SWord8]
-sw8s = xsUnsigned
-
-w16s :: [Word16]
-w16s = xsUnsigned
-
-sw16s :: [SWord16]
-sw16s = xsUnsigned
-
-w32s :: [Word32]
-w32s = xsUnsigned
-
-sw32s :: [SWord32]
-sw32s = xsUnsigned
-
-w64s :: [Word64]
-w64s = xsUnsigned
-
-sw64s :: [SWord64]
-sw64s = xsUnsigned
-
-i8s :: [Int8]
-i8s = xsSigned
-
-si8s :: [SInt8]
-si8s = xsSigned
-
-i16s :: [Int16]
-i16s = xsSigned
-
-si16s :: [SInt16]
-si16s = xsSigned
-
-i32s :: [Int32]
-i32s = xsSigned
-
-si32s :: [SInt32]
-si32s = xsSigned
-
-i64s :: [Int64]
-i64s = xsSigned
-
-si64s :: [SInt64]
-si64s = xsSigned
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/BasicTests.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/BasicTests.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/BasicTests.hs
+++ /dev/null
@@ -1,51 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Basics.BasicTests
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Basics.BasicTests
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Basics.BasicTests(testSuite) where
-
-import Data.SBV.Internals
-import Data.SBV.Examples.Basics.BasicTests
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "basic-0.1" ~: test0 f1 `showsAs` "5"
- , "basic-0.2" ~: test0 f2 `showsAs` "5"
- , "basic-0.3" ~: test0 f3 `showsAs` "25"
- , "basic-0.4" ~: test0 f4 `showsAs` "25"
- , "basic-0.5" ~: test0 f5 `showsAs` "4"
- , "basic-1.1" ~: test1 f1 `goldCheck` "basic-1_1.gold"
- , "basic-1.2" ~: test1 f2 `goldCheck` "basic-1_2.gold"
- , "basic-1.3" ~: test1 f3 `goldCheck` "basic-1_3.gold"
- , "basic-1.4" ~: test1 f4 `goldCheck` "basic-1_4.gold"
- , "basic-1.5" ~: test1 f5 `goldCheck` "basic-1_5.gold"
- , "basic-2.1" ~: test2 f1 `goldCheck` "basic-2_1.gold"
- , "basic-2.2" ~: test2 f2 `goldCheck` "basic-2_2.gold"
- , "basic-2.3" ~: test2 f3 `goldCheck` "basic-2_3.gold"
- , "basic-2.4" ~: test2 f4 `goldCheck` "basic-2_4.gold"
- , "basic-2.5" ~: test2 f5 `goldCheck` "basic-2_5.gold"
- , "basic-3.1" ~: test3 f1 `goldCheck` "basic-3_1.gold"
- , "basic-3.2" ~: test3 f2 `goldCheck` "basic-3_2.gold"
- , "basic-3.3" ~: test3 f3 `goldCheck` "basic-3_3.gold"
- , "basic-3.4" ~: test3 f4 `goldCheck` "basic-3_4.gold"
- , "basic-3.5" ~: test3 f5 `goldCheck` "basic-3_5.gold"
- , "basic-4.1" ~: test4 f1 `goldCheck` "basic-4_1.gold"
- , "basic-4.2" ~: test4 f2 `goldCheck` "basic-4_2.gold"
- , "basic-4.3" ~: test4 f3 `goldCheck` "basic-4_3.gold"
- , "basic-4.4" ~: test4 f4 `goldCheck` "basic-4_4.gold"
- , "basic-4.5" ~: test4 f5 `goldCheck` "basic-4_5.gold"
- , "basic-5.1" ~: test5 f1 `goldCheck` "basic-5_1.gold"
- , "basic-5.2" ~: test5 f2 `goldCheck` "basic-5_2.gold"
- , "basic-5.3" ~: test5 f3 `goldCheck` "basic-5_3.gold"
- , "basic-5.4" ~: test5 f4 `goldCheck` "basic-5_4.gold"
- , "basic-5.5" ~: test5 f5 `goldCheck` "basic-5_5.gold"
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Higher.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Higher.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Higher.hs
+++ /dev/null
@@ -1,34 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Basics.Higher
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Basics.Higher
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Basics.Higher(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Basics.Higher
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "higher-1"  ~: (f11 === f11)   `goldCheck` "higher-1.gold"
- , "higher-2"  ~: (f12 === f12)   `goldCheck` "higher-2.gold"
- , "higher-3"  ~: (f21 === f21)   `goldCheck` "higher-3.gold"
- , "higher-4"  ~: (f22 === f22)   `goldCheck` "higher-4.gold"
- , "higher-5"  ~: (f31 === f31)   `goldCheck` "higher-5.gold"
- , "higher-6"  ~: (f32 === f32)   `goldCheck` "higher-6.gold"
- , "higher-7"  ~: (f33 === f33)   `goldCheck` "higher-7.gold"
- , "higher-8"  ~: double          `goldCheck` "higher-8.gold"
- , "higher-9"  ~: onlyFailsFor128 `goldCheck` "higher-9.gold"
- ]
- where double          = (2*) === (\x -> x+(x::SWord8))
-       onlyFailsFor128 = (2*) === (\x -> ite (x .== 128) 5 (x+(x::SWord8)))
-
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Index.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Index.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/Index.hs
+++ /dev/null
@@ -1,21 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Basics.Index
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Basics.Index
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Basics.Index(testSuite) where
-
-import Data.SBV.Internals
-import Data.SBV.Examples.Basics.Index
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test $ zipWith tst [f x | f <- [test1, test2, test3], x <- [0..13]] [(0::Int)..]
-  where tst t i = "index-" ++ show i ~: t `ioShowsAs` "True"
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/ProofTests.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/ProofTests.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/ProofTests.hs
+++ /dev/null
@@ -1,35 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Basics.ProofTests
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Basics.ProofTests
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Basics.ProofTests(testSuite)  where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Basics.ProofTests
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "proofs-1"  ~: assert       =<< isTheorem f1eqf2
- , "proofs-2"  ~: assert . not =<< isTheorem f1eqf3
- , "proofs-3"  ~: assert       =<< isTheorem f3eqf4
- , "proofs-4"  ~: assert       =<< isTheorem f1Single
- , "proofs-5"  ~: assert       =<< isSatisfiable f1eqf2
- , "proofs-6"  ~: assert       =<< isSatisfiable f1eqf3
- , "proofs-7"  ~: assert . not =<< isSatisfiable (\x -> x .== x + (1 :: SWord16))
- , "proofs-8"  ~: assert       =<< isSatisfiable (\x -> x :: SBool)
- , "proofs-9"  ~: assert       =<< isSatisfiable (\x -> return x :: Predicate)
- , "proofs-10" ~: assert       =<< isSatisfiable (forAll_ $ \x -> x :: SBool)
- , "proofs-11" ~: assert       =<< isSatisfiable (forAll_ $ \x -> return x :: Predicate)
- , "proofs-12" ~: assert       =<< isSatisfiable (forAll ["q"] $ \x -> x :: SBool)
- , "proofs-13" ~: assert       =<< isSatisfiable (forAll ["q"] $ \x -> return x :: Predicate)
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/QRem.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/QRem.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Basics/QRem.hs
+++ /dev/null
@@ -1,23 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Basics.QRem
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Basics.QRem
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Basics.QRem(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Basics.QRem
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "qrem" ~: assert =<< isTheorem (qrem :: SWord8 -> SWord8 -> SBool)
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/BitPrecise/BitTricks.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/BitPrecise/BitTricks.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/BitPrecise/BitTricks.hs
+++ /dev/null
@@ -1,27 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.BitPrecise.BitTricks
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.BitPrecise.BitTricks
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.BitPrecise.BitTricks(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.BitPrecise.BitTricks
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "fast min"              ~: assert =<< isTheorem fastMinCorrect
- , "fast max"              ~: assert =<< isTheorem fastMaxCorrect
- , "opposite signs"        ~: assert =<< isTheorem oppositeSignsCorrect
- , "conditional set clear" ~: assert =<< isTheorem conditionalSetClearCorrect
- , "power of two"          ~: assert =<< isTheorem powerOfTwoCorrect
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/BitPrecise/Legato.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/BitPrecise/Legato.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/BitPrecise/Legato.hs
+++ /dev/null
@@ -1,34 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.BitPrecise.Legato
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.BitPrecise.Legato
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.BitPrecise.Legato(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.BitPrecise.Legato
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "legato-1" ~: legatoPgm `goldCheck` "legato.gold"
- , "legato-2" ~: legatoC `goldCheck` "legato_c.gold"
- ]
- where legatoPgm = runSymbolic $ forAll ["mem", "addrX", "x", "addrY", "y", "addrLow", "regX", "regA", "memVals", "flagC", "flagZ"] legatoIsCorrect
-                                 >>= output
-       legatoC = compileToC' "legatoMult" $ do
-                    cgSetDriverValues [87, 92]
-                    cgPerformRTCs True
-                    x <- cgInput "x"
-                    y <- cgInput "y"
-                    let (hi, lo) = runLegato (0, x) (1, y) 2 (initMachine (mkSFunArray 0) (0, 0, 0, false, false))
-                    cgOutput "hi" hi
-                    cgOutput "lo" lo
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/CCITT.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/CCITT.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/CCITT.hs
+++ /dev/null
@@ -1,24 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CRC.CCITT
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CRC.CCITT
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CRC.CCITT(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CRC.CCITT
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-  "ccitt" ~: crcPgm `goldCheck` "ccitt.gold"
- ]
- where crcPgm = runSymbolic $ forAll_ crcGood >>= output
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/CCITT_Unidir.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/CCITT_Unidir.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/CCITT_Unidir.hs
+++ /dev/null
@@ -1,24 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CRC.CCITT_Unidir
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CRC.CCITT_Unidir
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CRC.CCITT_Unidir(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CRC.CCITT_Unidir
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "ccitHDis3" ~: assert       =<< isTheorem (crcUniGood 3)
- , "ccitHDis4" ~: assert . not =<< isTheorem (crcUniGood 4)
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/GenPoly.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/GenPoly.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/GenPoly.hs
+++ /dev/null
@@ -1,24 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CRC.GenPoly
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CRC.GenPoly
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CRC.GenPoly(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CRC.GenPoly
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "crcGood" ~: assert       =<< isSatisfiable (crcGood 3 0)
- , "crcGood" ~: assert . not =<< isTheorem (crcGood 3 12)
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/Parity.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/Parity.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/Parity.hs
+++ /dev/null
@@ -1,23 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CRC.Parity
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CRC.Parity
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CRC.Parity(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CRC.Parity
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "parity" ~: assert =<< isTheorem parityOK
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/USB5.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/USB5.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CRC/USB5.hs
+++ /dev/null
@@ -1,23 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CRC.USB5
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CRC.USB5
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CRC.USB5(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CRC.USB5
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "usbGood" ~: assert =<< isTheorem usbGood
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/AddSub.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/AddSub.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/AddSub.hs
+++ /dev/null
@@ -1,31 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CodeGeneration.AddSub
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CodeGeneration.AddSub
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CodeGeneration.AddSub(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CodeGeneration.AddSub
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "addSub" ~: code `goldCheck` "addSub.gold"
- ]
- where code = compileToC' "addSub" $ do
-                cgSetDriverValues [76, 92]
-                cgPerformRTCs True
-                x <- cgInput "x"
-                y <- cgInput "y"
-                let (s, d) = addSub x y
-                cgOutput "sum" s
-                cgOutput "dif" d
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/CgTests.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/CgTests.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/CgTests.hs
+++ /dev/null
@@ -1,41 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CodeGeneration.CgTests
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for code-generation features
------------------------------------------------------------------------------
-
-{-# LANGUAGE ScopedTypeVariables #-}
-
-module Data.SBV.TestSuite.CodeGeneration.CgTests(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "selChecked"   ~: genSelect True  "selChecked"   `goldCheck` "selChecked.gold"
- , "selUnchecked" ~: genSelect False "selUnChecked" `goldCheck` "selUnchecked.gold"
- , "codegen1"     ~: foo `goldCheck` "codeGen1.gold"
- ]
- where genSelect b n = compileToC' n $ do
-                         cgSetDriverValues [65]
-                         cgPerformRTCs b
-                         let sel :: SWord8 -> SWord8
-                             sel x = select [1, x+2] 3 x
-                         x <- cgInput "x"
-                         cgReturn $ sel x
-       foo = compileToC' "foo" $ do
-                        cgSetDriverValues $ repeat 0
-                        (x::SInt16)    <- cgInput "x"
-                        (ys::[SInt64]) <- cgInputArr 45 "xArr"
-                        cgOutput "z" (5 :: SWord16)
-                        cgOutputArr "zArr" (replicate 7 (x+1))
-                        cgOutputArr "yArr" ys
-                        cgReturn (x*2)
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/Fibonacci.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/Fibonacci.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/Fibonacci.hs
+++ /dev/null
@@ -1,28 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CodeGeneration.Fibonacci
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CodeGeneration.Fibonacci
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CodeGeneration.Fibonacci(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CodeGeneration.Fibonacci
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "fib1" ~: tst [12] "fib1" (fib1 64) `goldCheck` "fib1.gold"
- , "fib2" ~: tst [20] "fib2" (fib2 64) `goldCheck` "fib2.gold"
- ]
- where tst vs nm f = compileToC' nm $ do cgPerformRTCs True
-                                         cgSetDriverValues vs
-                                         n <- cgInput "n"
-                                         cgReturn $ f n
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/GCD.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/GCD.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/GCD.hs
+++ /dev/null
@@ -1,28 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CodeGeneration.GCD
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CodeGeneration.GCD
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CodeGeneration.GCD(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CodeGeneration.GCD
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "gcd" ~: gcdC `goldCheck` "gcd.gold"
- ]
- where gcdC = compileToC' "sgcd" $ do
-                cgSetDriverValues [55,154]
-                x <- cgInput "x"
-                y <- cgInput "y"
-                cgReturn $ sgcd x y
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/PopulationCount.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/PopulationCount.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/CodeGeneration/PopulationCount.hs
+++ /dev/null
@@ -1,29 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.CodeGeneration.PopulationCount
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CodeGeneration.PopulationCount
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.CodeGeneration.PopulationCount(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.CodeGeneration.PopulationCount
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "popCount-1" ~: genC False `goldCheck` "popCount1.gold"
- , "popCount-2" ~: genC True  `goldCheck` "popCount2.gold"
- ]
- where genC b = compileToC' "popCount" $ do
-                  cgSetDriverValues [0x0123456789ABCDEF]
-                  cgPerformRTCs b
-                  x <- cgInput "x"
-                  cgReturn $ popCount x
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Crypto/AES.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Crypto/AES.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Crypto/AES.hs
+++ /dev/null
@@ -1,34 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Crypto.AES
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.CodeGeneration.AES
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Crypto.AES(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Crypto.AES
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "aes128Enc" ~: compileToC'    "aes128Enc" (aes128EncDec True)  `goldCheck` "aes128Enc.gold"
- , "aes128Dec" ~: compileToC'    "aes128Dec" (aes128EncDec False) `goldCheck` "aes128Dec.gold"
- , "aes128Lib" ~: compileToCLib' "aes128Lib" aes128Comps          `goldCheck` "aes128Lib.gold"
- ]
- where aes128EncDec d = do pt  <- cgInputArr 4 "pt"
-                           key <- cgInputArr 4 "key"
-                           cgSetDriverValues $ repeat 0
-                           let (encKs, decKs) = aesKeySchedule key
-                               res | d    = aesEncrypt pt encKs
-                                   | True = aesDecrypt pt decKs
-                           cgOutputArr "ct" res
-       aes128Comps = [(f, setVals c) | (f, c) <- aes128LibComponents]
-       setVals c = cgSetDriverValues (repeat 0) >> c
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Polynomials/Polynomials.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Polynomials/Polynomials.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Polynomials/Polynomials.hs
+++ /dev/null
@@ -1,25 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Polynomials.Polynomials
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Polynomials.Polynomials
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Polynomials.Polynomials(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Polynomials.Polynomials
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "polynomial-1" ~: assert =<< isTheorem multUnit
- , "polynomial-2" ~: assert =<< isTheorem multComm
- , "polynomial-3" ~: assert =<< isTheorem polyDivMod
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/PrefixSum/PrefixSum.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/PrefixSum/PrefixSum.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/PrefixSum/PrefixSum.hs
+++ /dev/null
@@ -1,25 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.PrefixSum.PrefixSum
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.PrefixSum.PrefixSum
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.PrefixSum.PrefixSum(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.PrefixSum.PrefixSum
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-    "prefixSum1" ~: assert =<< isTheorem (flIsCorrect  8 (0, (+)))
-  , "prefixSum2" ~: assert =<< isTheorem (flIsCorrect 16 (0, smax))
-  , "prefixSum3" ~: runSymbolic (genPrefixSumInstance 16 >>= output) `goldCheck` "prefixSum_16.gold"
-  ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/DogCatMouse.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/DogCatMouse.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/DogCatMouse.hs
+++ /dev/null
@@ -1,23 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Puzzles.DogCatMouse
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Puzzles.DogCatMouse
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Puzzles.DogCatMouse(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Puzzles.DogCatMouse
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-  "dog cat mouse" ~: allSat puzzle `goldCheck` "dogCatMouse.gold"
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Euler185.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Euler185.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Euler185.hs
+++ /dev/null
@@ -1,23 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Puzzles.Euler185
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Puzzles.Euler185
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Puzzles.Euler185(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Puzzles.Euler185
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-  "euler185" ~: allSat euler185 `goldCheck` "euler185.gold"
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/MagicSquare.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/MagicSquare.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/MagicSquare.hs
+++ /dev/null
@@ -1,25 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Puzzles.MagicSquare
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Puzzles.MagicSquare
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Puzzles.MagicSquare(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Puzzles.MagicSquare
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "magic 2" ~: assert . not =<< isSatisfiable (mkMagic 2)
- , "magic 3" ~: assert       =<< isSatisfiable (mkMagic 3)
- ]
- where mkMagic n = mkFreeVars (n*n) >>= return . isMagic . chunk n
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/NQueens.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/NQueens.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/NQueens.hs
+++ /dev/null
@@ -1,32 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Puzzles.NQueens
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Puzzles.NQueens
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Puzzles.NQueens(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Puzzles.NQueens
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   -- number of *distinct* solutions is given in http://en.wikipedia.org/wiki/Eight_queens_puzzle
-   "nQueens 1" ~: assert $ (==  1) `fmap` numberOfModels (mkQueens 1)
- , "nQueens 2" ~: assert $ (==  0) `fmap` numberOfModels (mkQueens 2)
- , "nQueens 3" ~: assert $ (==  0) `fmap` numberOfModels (mkQueens 3)
- , "nQueens 4" ~: assert $ (==  2) `fmap` numberOfModels (mkQueens 4)
- , "nQueens 5" ~: assert $ (== 10) `fmap` numberOfModels (mkQueens 5)
- , "nQueens 6" ~: assert $ (==  4) `fmap` numberOfModels (mkQueens 6)
- , "nQueens 7" ~: assert $ (== 40) `fmap` numberOfModels (mkQueens 7)
- , "nQueens 8" ~: assert $ (== 92) `fmap` numberOfModels (mkQueens 8)
- ]
- where mkQueens n = mkFreeVars n >>= return . isValid n
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/PowerSet.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/PowerSet.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/PowerSet.hs
+++ /dev/null
@@ -1,24 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Puzzles.PowerSet
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Puzzles.PowerSet
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Puzzles.PowerSet(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Puzzles.PowerSet
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [ "powerSet " ++ show i ~: assert (pSet i) | i <- [0 .. 7] ]
- where pSet :: Int -> IO Bool
-       pSet n = do cnt <- numberOfModels $ mkFreeVars n >>= return . genPowerSet
-                   return (cnt == 2^n)
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Sudoku.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Sudoku.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Sudoku.hs
+++ /dev/null
@@ -1,25 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Puzzles.Sudoku
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Puzzles.Sudoku
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Puzzles.Sudoku(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Puzzles.Sudoku
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-  "sudoku " ++ show n ~: assert (checkPuzzle s)
-     | (n, s) <- zip [(0::Int)..] [puzzle0, puzzle1, puzzle2, puzzle3, puzzle4, puzzle5, puzzle6]
- ]
- where checkPuzzle (i, f) = isSatisfiable $ mkFreeVars i >>= return . valid . f
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Temperature.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Temperature.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/Temperature.hs
+++ /dev/null
@@ -1,23 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Puzzles.Temperature
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Puzzles.Temperature
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Puzzles.Temperature(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Puzzles.Temperature
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-  "temperature" ~: sat revOf `goldCheck` "temperature.gold"
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/U2Bridge.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/U2Bridge.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Puzzles/U2Bridge.hs
+++ /dev/null
@@ -1,31 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Puzzles.U2Bridge
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Puzzles.U2Bridge
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Puzzles.U2Bridge(testSuite) where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Puzzles.U2Bridge
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "U2Bridge-1" ~: assert $ (0 ==) `fmap` count 1
- , "U2Bridge-2" ~: assert $ (0 ==) `fmap` count 2
- , "U2Bridge-3" ~: assert $ (0 ==) `fmap` count 3
- , "U2Bridge-4" ~: assert $ (0 ==) `fmap` count 4
- , "U2Bridge-5" ~: solve 5 `goldCheck` "U2Bridge.gold"
- , "U2Bridge-6" ~: assert $ (0 ==) `fmap` count 6
- ]
- where act     = do b <- free_; p1 <- free_; p2 <- free_; return (b, p1, p2)
-       count n = numberOfModels $ mapM (const act) [1..(n::Int)] >>= return . isValid
-       solve n = sat $ mapM (const act) [1..(n::Int)] >>= return . isValid
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/AUF.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/AUF.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/AUF.hs
+++ /dev/null
@@ -1,26 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Uninterpreted.AUF
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Uninterpreted.AUF
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Uninterpreted.AUF where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Uninterpreted.AUF
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \goldCheck -> test [
-   "auf-0" ~: assert =<< isTheorem thm1
- , "auf-1" ~: assert =<< isTheorem thm2
- , "auf-2" ~: pgm `goldCheck` "auf-1.gold"
- ]
- where pgm = runSymbolic $ forAll ["x", "y", "a", "initVal"] thm1 >>= output
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/Function.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/Function.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/Function.hs
+++ /dev/null
@@ -1,24 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.TestSuite.Uninterpreted.Function
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Testsuite for Data.SBV.Examples.Uninterpreted.Function
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Uninterpreted.Function where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Uninterpreted.Function
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "aufunc-0" ~: assert       =<< isTheorem thmGood
- , "aufunc-1" ~: assert . not =<< isTheorem thmBad
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/Uninterpreted.hs b/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/Uninterpreted.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/TestSuite/Uninterpreted/Uninterpreted.hs
+++ /dev/null
@@ -1,25 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Examples.TestSuite.Uninterpreted
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Test suite for Data.SBV.Examples.Uninterpreted.Uninterpreted
------------------------------------------------------------------------------
-
-module Data.SBV.TestSuite.Uninterpreted.Uninterpreted where
-
-import Data.SBV
-import Data.SBV.Internals
-import Data.SBV.Examples.Uninterpreted.Uninterpreted
-
--- Test suite
-testSuite :: SBVTestSuite
-testSuite = mkTestSuite $ \_ -> test [
-   "uninterpreted-0" ~: assert       =<< isTheorem p0
- , "uninterpreted-1" ~: assert       =<< isTheorem p1
- , "uninterpreted-2" ~: assert . not =<< isTheorem p2
- ]
diff --git a/Temp/sbv-0.9.18/Data/SBV/Utils/Boolean.hs b/Temp/sbv-0.9.18/Data/SBV/Utils/Boolean.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Utils/Boolean.hs
+++ /dev/null
@@ -1,82 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Utils.Boolean
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Abstraction of booleans. Unfortunately, Haskell makes Bool's very hard to
--- work with, by making it a fixed-data type. This is our workaround
------------------------------------------------------------------------------
-
-module Data.SBV.Utils.Boolean(Boolean(..), bAnd, bOr, bAny, bAll)  where
-
-infixl 6 <+>       -- xor
-infixr 3 &&&, ~&   -- and, nand
-infixr 2 |||, ~|   -- or, nor
-infixr 1 ==>, <=>  -- implies, iff
-
--- | The 'Boolean' class: a generalization of Haskell's 'Bool' type
--- Haskell 'Bool' and SBV's 'SBool' are instances of this class, unifying the treatment of boolean values.
---
--- Minimal complete definition: 'true', 'bnot', '&&&'
--- However, it's advisable to define 'false', and '|||' as well (typically), for clarity.
-class Boolean b where
-  -- | logical true
-  true   :: b
-  -- | logical false
-  false  :: b
-  -- | complement
-  bnot   :: b -> b
-  -- | and
-  (&&&)  :: b -> b -> b
-  -- | or
-  (|||)  :: b -> b -> b
-  -- | nand
-  (~&)   :: b -> b -> b
-  -- | nor
-  (~|)   :: b -> b -> b
-  -- | xor
-  (<+>)  :: b -> b -> b
-  -- | implies
-  (==>)  :: b -> b -> b
-  -- | equivalence
-  (<=>)  :: b -> b -> b
-  -- | cast from Bool
-  fromBool :: Bool -> b
-
-  -- default definitions
-  false   = bnot true
-  a ||| b = bnot (bnot a &&& bnot b)
-  a ~& b  = bnot (a &&& b)
-  a ~| b  = bnot (a ||| b)
-  a <+> b = (a &&& bnot b) ||| (bnot a &&& b)
-  a <=> b = (a &&& b) ||| (bnot a &&& bnot b)
-  a ==> b = bnot a ||| b
-  fromBool True  = true
-  fromBool False = false
-
--- | Generalization of 'and'
-bAnd :: Boolean b => [b] -> b
-bAnd = foldr (&&&) true
-
--- | Generalization of 'or'
-bOr :: Boolean b => [b] -> b
-bOr  = foldr (|||) false
-
--- | Generalization of 'any'
-bAny :: Boolean b => (a -> b) -> [a] -> b
-bAny f = bOr  . map f
-
--- | Generalization of 'all'
-bAll :: Boolean b => (a -> b) -> [a] -> b
-bAll f = bAnd . map f
-
-instance Boolean Bool where
-  true   = True
-  false  = False
-  bnot   = not
-  (&&&)  = (&&)
-  (|||)  = (||)
diff --git a/Temp/sbv-0.9.18/Data/SBV/Utils/Lib.hs b/Temp/sbv-0.9.18/Data/SBV/Utils/Lib.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Utils/Lib.hs
+++ /dev/null
@@ -1,34 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Utils.Lib
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Misc helpers
------------------------------------------------------------------------------
-
-module Data.SBV.Utils.Lib where
-
-mlift2 :: Monad m => (a' -> b' -> r) -> (a -> m a') -> (b -> m b') -> (a, b) -> m r
-mlift2 k f g (a, b) = f a >>= \a' -> g b >>= \b' -> return $ k a' b'
-
-mlift3 :: Monad m => (a' -> b' -> c' -> r) -> (a -> m a') -> (b -> m b') -> (c -> m c') -> (a, b, c) -> m r
-mlift3 k f g h (a, b, c) = f a >>= \a' -> g b >>= \b' -> h c >>= \c' -> return $ k a' b' c'
-
-mlift4 :: Monad m => (a' -> b' -> c' -> d' -> r) -> (a -> m a') -> (b -> m b') -> (c -> m c') -> (d -> m d') -> (a, b, c, d) -> m r
-mlift4 k f g h i (a, b, c, d) = f a >>= \a' -> g b >>= \b' -> h c >>= \c' -> i d >>= \d' -> return $ k a' b' c' d'
-
-mlift5 :: Monad m => (a' -> b' -> c' -> d' -> e' -> r) -> (a -> m a') -> (b -> m b') -> (c -> m c') -> (d -> m d') -> (e -> m e') -> (a, b, c, d, e) -> m r
-mlift5 k f g h i j (a, b, c, d, e) = f a >>= \a' -> g b >>= \b' -> h c >>= \c' -> i d >>= \d' -> j e >>= \e' -> return $ k a' b' c' d' e'
-
-mlift6 :: Monad m => (a' -> b' -> c' -> d' -> e' -> f' -> r) -> (a -> m a') -> (b -> m b') -> (c -> m c') -> (d -> m d') -> (e -> m e') -> (f -> m f') -> (a, b, c, d, e, f) -> m r
-mlift6 k f g h i j l (a, b, c, d, e, y) = f a >>= \a' -> g b >>= \b' -> h c >>= \c' -> i d >>= \d' -> j e >>= \e' -> l y >>= \y' -> return $ k a' b' c' d' e' y'
-
-mlift7 :: Monad m => (a' -> b' -> c' -> d' -> e' -> f' -> g' -> r) -> (a -> m a') -> (b -> m b') -> (c -> m c') -> (d -> m d') -> (e -> m e') -> (f -> m f') -> (g -> m g') -> (a, b, c, d, e, f, g) -> m r
-mlift7 k f g h i j l m (a, b, c, d, e, y, z) = f a >>= \a' -> g b >>= \b' -> h c >>= \c' -> i d >>= \d' -> j e >>= \e' -> l y >>= \y' -> m z >>= \z' -> return $ k a' b' c' d' e' y' z'
-
-mlift8 :: Monad m => (a' -> b' -> c' -> d' -> e' -> f' -> g' -> h' -> r) -> (a -> m a') -> (b -> m b') -> (c -> m c') -> (d -> m d') -> (e -> m e') -> (f -> m f') -> (g -> m g') -> (h -> m h') -> (a, b, c, d, e, f, g, h) -> m r
-mlift8 k f g h i j l m n (a, b, c, d, e, y, z, w) = f a >>= \a' -> g b >>= \b' -> h c >>= \c' -> i d >>= \d' -> j e >>= \e' -> l y >>= \y' -> m z >>= \z' -> n w >>= \w' -> return $ k a' b' c' d' e' y' z' w'
diff --git a/Temp/sbv-0.9.18/Data/SBV/Utils/SBVTest.hs b/Temp/sbv-0.9.18/Data/SBV/Utils/SBVTest.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Utils/SBVTest.hs
+++ /dev/null
@@ -1,45 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Utils.SBVTest
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Integration with HUnit-based test suite for SBV
------------------------------------------------------------------------------
-
-{-# LANGUAGE RankNTypes #-}
-module Data.SBV.Utils.SBVTest(generateGoldCheck, showsAs, ioShowsAs, mkTestSuite, SBVTestSuite(..), module Test.HUnit) where
-
-import System.FilePath ((</>))
-import Test.HUnit      (Test(..), Assertion, assert, (~:), test)
-
--- | A Test-suite, parameterized by the gold-check generator/checker
-data SBVTestSuite = SBVTestSuite ((forall a. Show a => (IO a -> FilePath -> IO ())) -> Test)
-
--- | Wrap over 'SBVTestSuite', avoids exporting the constructor
-mkTestSuite :: ((forall a. (Show a) => IO a -> FilePath -> IO ()) -> Test) -> SBVTestSuite
-mkTestSuite = SBVTestSuite
-
--- | Checks that a particular result shows as @s@
-showsAs :: Show a => a -> String -> Assertion
-showsAs r s = assert $ show r == s
-
--- | Run an IO computation and check that it's result shows as @s@
-ioShowsAs :: Show a => IO a -> String -> Assertion
-ioShowsAs r s = do v <- r
-                   assert $ show v == s
-
--- | Create a gold file for the test case
-generateGoldCheck :: FilePath -> Bool -> (forall a. Show a => IO a -> FilePath -> IO ())
-generateGoldCheck goldDir shouldCreate action goldFile
-  | shouldCreate = do v <- action
-                      writeFile gf (show v)
-                      putStrLn $ "\nCreated Gold File: " ++ show gf
-                      assert True
-  | True         = do v <- action
-                      g <- readFile gf
-                      assert $ show v == g
- where gf = goldDir </> goldFile
diff --git a/Temp/sbv-0.9.18/Data/SBV/Utils/TDiff.hs b/Temp/sbv-0.9.18/Data/SBV/Utils/TDiff.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Data/SBV/Utils/TDiff.hs
+++ /dev/null
@@ -1,37 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Data.SBV.Utils.TDiff
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Runs an IO computation printing the time it took to run it
------------------------------------------------------------------------------
-
-module Data.SBV.Utils.TDiff(timeIf) where
-
-import Control.DeepSeq (rnf, NFData(..))
-import System.Time     (TimeDiff(..), normalizeTimeDiff, diffClockTimes, getClockTime)
-import Numeric         (showFFloat)
-
-showTDiff :: TimeDiff -> String
-showTDiff itd = et
-  where td = normalizeTimeDiff itd
-        vals = dropWhile (\(v, _) -> v == 0) (zip [tdYear td, tdMonth td, tdDay td, tdHour td, tdMin td] "YMDhm")
-        sec = ' ' : show (tdSec td) ++ dropWhile (/= '.') pico
-        pico = showFFloat (Just 3) (((10**(-12))::Double) * fromIntegral (tdPicosec td)) "s"
-        et = concatMap (\(v, c) -> ' ':show v ++ [c]) vals ++ sec
-
--- | If selected, runs the computation @m@, and prints the time it took
--- to run it. The return type should be an instance of 'NFData' to ensure
--- the correct elapsed time is printed.
-timeIf :: NFData a => Bool -> String -> IO a -> IO a
-timeIf False _ m = m
-timeIf True  w m = do start <- getClockTime
-                      r <- m
-                      end <- rnf r `seq` getClockTime
-                      let elapsed = diffClockTimes end start
-                      putStrLn $ "** Elapsed " ++ w ++ " time:" ++ showTDiff elapsed
-                      return r
diff --git a/Temp/sbv-0.9.18/INSTALL b/Temp/sbv-0.9.18/INSTALL
deleted file mode 100644
--- a/Temp/sbv-0.9.18/INSTALL
+++ /dev/null
@@ -1,19 +0,0 @@
-The sbv library can be installed simply by issuing cabal install
-like this:
-
-     cabal install sbv
-
-Once the installation is done, you will get the Data.SBV library.
-The installation will also put a binary named
-
-     SBVUnitTests
-
-in your .cabal/bin directory (or wherever you installed it.) It's
-highly recommended that you run this program to ensure everything
-is working correctly. In particular, you will first need to install
-Yices, the default SMT solver used by sbv, from SRI. (You can get it
-from http://yices.csl.sri.com/.) Please make sure that the "yices"
-executable is in your path.
-
-Once you have installed sbv, you can use it in your Haskell programs
-by simply importing the Data.SBV module.
diff --git a/Temp/sbv-0.9.18/LICENSE b/Temp/sbv-0.9.18/LICENSE
deleted file mode 100644
--- a/Temp/sbv-0.9.18/LICENSE
+++ /dev/null
@@ -1,26 +0,0 @@
-SBV: A library for Symbolic Bitvectors
-
-Copyright (c) 2010-2011, Levent Erkok (erkokl@gmail.com)
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-    * Neither the name of the developer (Levent Erkok) nor the
-      names of its contributors may be used to endorse or promote products
-      derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL LEVENT ERKOK BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/Temp/sbv-0.9.18/README b/Temp/sbv-0.9.18/README
deleted file mode 100644
--- a/Temp/sbv-0.9.18/README
+++ /dev/null
@@ -1,123 +0,0 @@
-SBV: Symbolic Bit Vectors in Haskell
-====================================
-
-Express properties about bit-precise Haskell programs and automatically prove
-them using SMT solvers.
-
-        $ ghci -XScopedTypeVariables
-        Prelude> :m Data.SBV
-        Prelude Data.SBV> prove $ \(x::SWord8) -> x `shiftL` 2 .== 4*x
-        Q.E.D.
-        Prelude Data.SBV> prove $ forAll ["x"] $ \(x::SWord8) -> x `shiftL` 2 .== x
-        Falsifiable. Counter-example:
-          x = 128 :: SWord8
-
-The function `prove` has the following type:
-    
-        prove :: Provable a => a -> IO ThmResult
-
-The class `Provable` comes with instances for n-ary predicates, for arbitrary n.
-The predicates are just regular Haskell functions over symbolic signed and unsigned
-bit-vectors. Functions for checking satisfiability (`sat` and `allSat`) are also provided.
-In addition, functions using the SBV library can be compiled to C automatically.
-
-Resources
-=========
-The sbv library is hosted at [http://github.com/LeventErkok/sbv](http://github.com/LeventErkok/sbv).
-
-The hackage site
-[http://hackage.haskell.org/package/sbv](http://hackage.haskell.org/package/sbv) is the best place
-for details on the API and the example use cases.
-
-Comments, bug reports, and patches are always welcome.
-
-Overview
-========
-The Haskell sbv library provides support for dealing with Symbolic Bit Vectors
-in Haskell. It introduces the types:
-
-  - `SBool`: Symbolic Booleans (bits)
-  - `SWord8`, `SWord16`, `SWord32`, `SWord64`: Symbolic Words (unsigned)
-  - `SInt8`,  `SInt16`,  `SInt32`,  `SInt64`: Symbolic Ints (signed)
-  - Arrays of symbolic values
-  - Symbolic polynomials over GF(2^n ), and polynomial arithmetic
-  - Uninterpreted constants and functions over symbolic values, with user
-    defined SMT-Lib axioms
-
-The user can construct ordinary Haskell programs using these types, which behave
-very similar to their concrete counterparts. In particular these types belong to the
-standard classes `Num`, `Bits`, (custom versions of) `Eq` and `Ord`, along with several
-other custom classes for simplifying bit-precise programming with symbolic values. The
-framework takes full advantage of Haskell's type inference to avoid many common mistakes.
-
-Furthermore, predicates (i.e., functions that return `SBool`) built out of these types can also be:
-
-  - proven correct via an external SMT solver (the `prove` function)
-  - checked for satisfiability (the `sat` and `allSat` functions)
-  - quick-checked
-
-If a predicate is not valid, `prove` will return a counterexample: An 
-assignment to inputs such that the predicate fails. The `sat` function will
-return a satisfying assignment, if there is one. The `allSat` function returns
-all satisfying assignments, lazily.
-
-The SBV library can also compile Haskell functions that manipulate symbolic
-values directly to C, rendering them as straight-line C programs that can be
-executed in, say, embedded platforms.
-
-Use of SMT solvers
-==================
-The sbv library uses third-party SMT solvers via the standard SMT-Lib interface: 
-[http://goedel.cs.uiowa.edu/smtlib/](http://goedel.cs.uiowa.edu/smtlib/)
-
-While the library is designed to work with any SMT-Lib compliant SMT-solver,
-solver specific support is required for parsing counter-example/model data since
-there is currently no agreed upon format for getting models from arbitrary SMT
-solvers. (The SMT-Lib2 initiative will potentially address this issue in the
-future, at which point the sbv library can be generalized as well.) Currently, we
-only support the Yices SMT solver from SRI as far as the counter-example
-and model generation support is concerned:
-[http://yices.csl.sri.com/](http://yices.csl.sri.com/) However, other solvers can
-be hooked up with relative ease.
-
-Prerequisites
-=============
-You **should** download and install Yices (version 2.X) on your machine, and
-make sure the "yices" executable is in your path before using the sbv library,
-as it is the current default solver. Alternatively, you can specify the location
-of yices executable in the environment variable `SBV_YICES` and the options to yices
-in `SBV_YICES_OPTIONS`. (The default for the latter is `"-m -f"`.)
-
-Examples
-=========
-Please see the files under the
-[Examples](http://github.com/LeventErkok/sbv/tree/master/Data/SBV/Examples)
-directory for a number of interesting applications and use cases. Amongst others,
-it contains solvers for Sudoku and N-Queens puzzles as mandatory SMT solver examples in
-the Puzzles directory.
-
-Installation
-============
-The sbv library is cabalized. Assuming you have cabal/ghc installed, it should merely
-be a matter of running 
-     
-         cabal install sbv
-	 
-Please see [INSTALL](http://github.com/LeventErkok/sbv/tree/master/INSTALL) for installation details.
-
-Once the installation is done, you can run the executable `SBVUnitTests` which will
-execute the regression test suite for sbv on your machine to ensure all is well.
-
-Copyright, License
-==================
-The sbv library is distributed with the BSD3 license. See [COPYRIGHT](http://github.com/LeventErkok/sbv/tree/master/COPYRIGHT) for
-details. The [LICENSE](http://github.com/LeventErkok/sbv/tree/master/LICENSE) file contains
-the [BSD3](http://en.wikipedia.org/wiki/BSD_licenses) verbiage.
-
-Thanks
-======
-[Galois, Inc.](http://www.galois.com) has contributed to the development of SBV,
-by providing time and computing machinery.
-
-The following people reported bugs, provided comments/feedback, or contributed to the development of SBV in various ways:
-Ian Blumenfeld, Iavor Diatchki, Lee Pike, Austin Seipp, Don Stewart, and Josef Svenningsson.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/U2Bridge.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/U2Bridge.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/U2Bridge.gold
+++ /dev/null
@@ -1,16 +0,0 @@
-Satisfiable. Model:
-  s0 = False
-  s1 = 1 :: SWord8
-  s2 = 0 :: SWord8
-  s3 = True
-  s4 = 1 :: SWord8
-  s5 = 0 :: SWord8
-  s6 = False
-  s7 = 3 :: SWord8
-  s8 = 2 :: SWord8
-  s9 = True
-  s10 = 0 :: SWord8
-  s11 = 0 :: SWord8
-  s12 = False
-  s13 = 1 :: SWord8
-  s14 = 0 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/addSub.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/addSub.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/addSub.gold
+++ /dev/null
@@ -1,93 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for addSub. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: addSub_driver
-
-addSub.o: addSub.c addSub.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-addSub_driver.o: addSub_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-addSub_driver: addSub.o addSub_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f addSub_driver
-== END: "Makefile" ==================
-== BEGIN: "addSub.h" ================
-/* Header file for addSub. Automatically generated by SBV. Do not edit! */
-
-#ifndef __addSub__HEADER_INCLUDED__
-#define __addSub__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-void addSub(const SWord8 x, const SWord8 y, SWord8 *sum,
-            SWord8 *dif);
-
-#endif /* __addSub__HEADER_INCLUDED__ */
-== END: "addSub.h" ==================
-== BEGIN: "addSub_driver.c" ================
-/* Example driver program for addSub. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "addSub.h"
-
-int main(void)
-{
-  SWord8 sum;
-  SWord8 dif;
-  
-  addSub(76, 92, &sum, &dif);
-  
-  printf("addSub(76, 92, &sum, &dif) ->\n");
-  printf("  sum = %"PRIu8"\n", sum);
-  printf("  dif = %"PRIu8"\n", dif);
-
-  return 0;
-}
-== END: "addSub_driver.c" ==================
-== BEGIN: "addSub.c" ================
-/* File: "addSub.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "addSub.h"
-
-void addSub(const SWord8 x, const SWord8 y, SWord8 *sum,
-            SWord8 *dif)
-{
-  const SWord8 s0 = x;
-  const SWord8 s1 = y;
-  const SWord8 s2 = s0 + s1;
-  const SWord8 s3 = s0 - s1;
-  
-  *sum = s2;
-  *dif = s3;
-}
-== END: "addSub.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Dec.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Dec.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Dec.gold
+++ /dev/null
@@ -1,2597 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for aes128Dec. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: aes128Dec_driver
-
-aes128Dec.o: aes128Dec.c aes128Dec.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-aes128Dec_driver.o: aes128Dec_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-aes128Dec_driver: aes128Dec.o aes128Dec_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f aes128Dec_driver
-== END: "Makefile" ==================
-== BEGIN: "aes128Dec.h" ================
-/* Header file for aes128Dec. Automatically generated by SBV. Do not edit! */
-
-#ifndef __aes128Dec__HEADER_INCLUDED__
-#define __aes128Dec__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-void aes128Dec(const SWord32 *pt, const SWord32 *key, SWord32 *ct);
-
-#endif /* __aes128Dec__HEADER_INCLUDED__ */
-== END: "aes128Dec.h" ==================
-== BEGIN: "aes128Dec_driver.c" ================
-/* Example driver program for aes128Dec. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "aes128Dec.h"
-
-int main(void)
-{
-  const SWord32 pt[4] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array pt:\n");
-  int pt_ctr;
-  for(pt_ctr = 0;  pt_ctr < 4 ; ++pt_ctr)
-    printf("  pt[%d] = 0x%08"PRIx32"UL\n", pt_ctr ,pt[pt_ctr]);
-  
-  const SWord32 key[4] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array key:\n");
-  int key_ctr;
-  for(key_ctr = 0;  key_ctr < 4 ; ++key_ctr)
-    printf("  key[%d] = 0x%08"PRIx32"UL\n", key_ctr ,key[key_ctr]);
-  
-  SWord32 ct[4];
-  
-  aes128Dec(pt, key, ct);
-  
-  printf("aes128Dec(pt, key, ct) ->\n");
-  int ct_ctr;
-  for(ct_ctr = 0;  ct_ctr < 4 ; ++ct_ctr)
-    printf("  ct[%d] = 0x%08"PRIx32"UL\n", ct_ctr ,ct[ct_ctr]);
-
-  return 0;
-}
-== END: "aes128Dec_driver.c" ==================
-== BEGIN: "aes128Dec.c" ================
-/* File: "aes128Dec.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "aes128Dec.h"
-
-void aes128Dec(const SWord32 *pt, const SWord32 *key, SWord32 *ct)
-{
-  const SWord32 s0 = pt[0];
-  const SWord32 s1 = pt[1];
-  const SWord32 s2 = pt[2];
-  const SWord32 s3 = pt[3];
-  const SWord32 s4 = key[0];
-  const SWord32 s5 = key[1];
-  const SWord32 s6 = key[2];
-  const SWord32 s7 = key[3];
-  static const SWord8 table0[] = {
-       82,   9, 106, 213,  48,  54, 165,  56, 191,  64, 163, 158, 129,
-      243, 215, 251, 124, 227,  57, 130, 155,  47, 255, 135,  52, 142,
-       67,  68, 196, 222, 233, 203,  84, 123, 148,  50, 166, 194,  35,
-       61, 238,  76, 149,  11,  66, 250, 195,  78,   8,  46, 161, 102,
-       40, 217,  36, 178, 118,  91, 162,  73, 109, 139, 209,  37, 114,
-      248, 246, 100, 134, 104, 152,  22, 212, 164,  92, 204,  93, 101,
-      182, 146, 108, 112,  72,  80, 253, 237, 185, 218,  94,  21,  70,
-       87, 167, 141, 157, 132, 144, 216, 171,   0, 140, 188, 211,  10,
-      247, 228,  88,   5, 184, 179,  69,   6, 208,  44,  30, 143, 202,
-       63,  15,   2, 193, 175, 189,   3,   1,  19, 138, 107,  58, 145,
-       17,  65,  79, 103, 220, 234, 151, 242, 207, 206, 240, 180, 230,
-      115, 150, 172, 116,  34, 231, 173,  53, 133, 226, 249,  55, 232,
-       28, 117, 223, 110,  71, 241,  26, 113,  29,  41, 197, 137, 111,
-      183,  98,  14, 170,  24, 190,  27, 252,  86,  62,  75, 198, 210,
-      121,  32, 154, 219, 192, 254, 120, 205,  90, 244,  31, 221, 168,
-       51, 136,   7, 199,  49, 177,  18,  16,  89,  39, 128, 236,  95,
-       96,  81, 127, 169,  25, 181,  74,  13,  45, 229, 122, 159, 147,
-      201, 156, 239, 160, 224,  59,  77, 174,  42, 245, 176, 200, 235,
-      187,  60, 131,  83, 153,  97,  23,  43,   4, 126, 186, 119, 214,
-       38, 225, 105,  20,  99,  85,  33,  12, 125
-  };
-  static const SWord32 table1[] = {
-      0x51f4a750UL, 0x7e416553UL, 0x1a17a4c3UL, 0x3a275e96UL,
-      0x3bab6bcbUL, 0x1f9d45f1UL, 0xacfa58abUL, 0x4be30393UL,
-      0x2030fa55UL, 0xad766df6UL, 0x88cc7691UL, 0xf5024c25UL,
-      0x4fe5d7fcUL, 0xc52acbd7UL, 0x26354480UL, 0xb562a38fUL,
-      0xdeb15a49UL, 0x25ba1b67UL, 0x45ea0e98UL, 0x5dfec0e1UL,
-      0xc32f7502UL, 0x814cf012UL, 0x8d4697a3UL, 0x6bd3f9c6UL,
-      0x038f5fe7UL, 0x15929c95UL, 0xbf6d7aebUL, 0x955259daUL,
-      0xd4be832dUL, 0x587421d3UL, 0x49e06929UL, 0x8ec9c844UL,
-      0x75c2896aUL, 0xf48e7978UL, 0x99583e6bUL, 0x27b971ddUL,
-      0xbee14fb6UL, 0xf088ad17UL, 0xc920ac66UL, 0x7dce3ab4UL,
-      0x63df4a18UL, 0xe51a3182UL, 0x97513360UL, 0x62537f45UL,
-      0xb16477e0UL, 0xbb6bae84UL, 0xfe81a01cUL, 0xf9082b94UL,
-      0x70486858UL, 0x8f45fd19UL, 0x94de6c87UL, 0x527bf8b7UL,
-      0xab73d323UL, 0x724b02e2UL, 0xe31f8f57UL, 0x6655ab2aUL,
-      0xb2eb2807UL, 0x2fb5c203UL, 0x86c57b9aUL, 0xd33708a5UL,
-      0x302887f2UL, 0x23bfa5b2UL, 0x02036abaUL, 0xed16825cUL,
-      0x8acf1c2bUL, 0xa779b492UL, 0xf307f2f0UL, 0x4e69e2a1UL,
-      0x65daf4cdUL, 0x0605bed5UL, 0xd134621fUL, 0xc4a6fe8aUL,
-      0x342e539dUL, 0xa2f355a0UL, 0x058ae132UL, 0xa4f6eb75UL,
-      0x0b83ec39UL, 0x4060efaaUL, 0x5e719f06UL, 0xbd6e1051UL,
-      0x3e218af9UL, 0x96dd063dUL, 0xdd3e05aeUL, 0x4de6bd46UL,
-      0x91548db5UL, 0x71c45d05UL, 0x0406d46fUL, 0x605015ffUL,
-      0x1998fb24UL, 0xd6bde997UL, 0x894043ccUL, 0x67d99e77UL,
-      0xb0e842bdUL, 0x07898b88UL, 0xe7195b38UL, 0x79c8eedbUL,
-      0xa17c0a47UL, 0x7c420fe9UL, 0xf8841ec9UL, 0x00000000UL,
-      0x09808683UL, 0x322bed48UL, 0x1e1170acUL, 0x6c5a724eUL,
-      0xfd0efffbUL, 0x0f853856UL, 0x3daed51eUL, 0x362d3927UL,
-      0x0a0fd964UL, 0x685ca621UL, 0x9b5b54d1UL, 0x24362e3aUL,
-      0x0c0a67b1UL, 0x9357e70fUL, 0xb4ee96d2UL, 0x1b9b919eUL,
-      0x80c0c54fUL, 0x61dc20a2UL, 0x5a774b69UL, 0x1c121a16UL,
-      0xe293ba0aUL, 0xc0a02ae5UL, 0x3c22e043UL, 0x121b171dUL,
-      0x0e090d0bUL, 0xf28bc7adUL, 0x2db6a8b9UL, 0x141ea9c8UL,
-      0x57f11985UL, 0xaf75074cUL, 0xee99ddbbUL, 0xa37f60fdUL,
-      0xf701269fUL, 0x5c72f5bcUL, 0x44663bc5UL, 0x5bfb7e34UL,
-      0x8b432976UL, 0xcb23c6dcUL, 0xb6edfc68UL, 0xb8e4f163UL,
-      0xd731dccaUL, 0x42638510UL, 0x13972240UL, 0x84c61120UL,
-      0x854a247dUL, 0xd2bb3df8UL, 0xaef93211UL, 0xc729a16dUL,
-      0x1d9e2f4bUL, 0xdcb230f3UL, 0x0d8652ecUL, 0x77c1e3d0UL,
-      0x2bb3166cUL, 0xa970b999UL, 0x119448faUL, 0x47e96422UL,
-      0xa8fc8cc4UL, 0xa0f03f1aUL, 0x567d2cd8UL, 0x223390efUL,
-      0x87494ec7UL, 0xd938d1c1UL, 0x8ccaa2feUL, 0x98d40b36UL,
-      0xa6f581cfUL, 0xa57ade28UL, 0xdab78e26UL, 0x3fadbfa4UL,
-      0x2c3a9de4UL, 0x5078920dUL, 0x6a5fcc9bUL, 0x547e4662UL,
-      0xf68d13c2UL, 0x90d8b8e8UL, 0x2e39f75eUL, 0x82c3aff5UL,
-      0x9f5d80beUL, 0x69d0937cUL, 0x6fd52da9UL, 0xcf2512b3UL,
-      0xc8ac993bUL, 0x10187da7UL, 0xe89c636eUL, 0xdb3bbb7bUL,
-      0xcd267809UL, 0x6e5918f4UL, 0xec9ab701UL, 0x834f9aa8UL,
-      0xe6956e65UL, 0xaaffe67eUL, 0x21bccf08UL, 0xef15e8e6UL,
-      0xbae79bd9UL, 0x4a6f36ceUL, 0xea9f09d4UL, 0x29b07cd6UL,
-      0x31a4b2afUL, 0x2a3f2331UL, 0xc6a59430UL, 0x35a266c0UL,
-      0x744ebc37UL, 0xfc82caa6UL, 0xe090d0b0UL, 0x33a7d815UL,
-      0xf104984aUL, 0x41ecdaf7UL, 0x7fcd500eUL, 0x1791f62fUL,
-      0x764dd68dUL, 0x43efb04dUL, 0xccaa4d54UL, 0xe49604dfUL,
-      0x9ed1b5e3UL, 0x4c6a881bUL, 0xc12c1fb8UL, 0x4665517fUL,
-      0x9d5eea04UL, 0x018c355dUL, 0xfa877473UL, 0xfb0b412eUL,
-      0xb3671d5aUL, 0x92dbd252UL, 0xe9105633UL, 0x6dd64713UL,
-      0x9ad7618cUL, 0x37a10c7aUL, 0x59f8148eUL, 0xeb133c89UL,
-      0xcea927eeUL, 0xb761c935UL, 0xe11ce5edUL, 0x7a47b13cUL,
-      0x9cd2df59UL, 0x55f2733fUL, 0x1814ce79UL, 0x73c737bfUL,
-      0x53f7cdeaUL, 0x5ffdaa5bUL, 0xdf3d6f14UL, 0x7844db86UL,
-      0xcaaff381UL, 0xb968c43eUL, 0x3824342cUL, 0xc2a3405fUL,
-      0x161dc372UL, 0xbce2250cUL, 0x283c498bUL, 0xff0d9541UL,
-      0x39a80171UL, 0x080cb3deUL, 0xd8b4e49cUL, 0x6456c190UL,
-      0x7bcb8461UL, 0xd532b670UL, 0x486c5c74UL, 0xd0b85742UL
-  };
-  static const SWord8 table2[] = {
-       99, 124, 119, 123, 242, 107, 111, 197,  48,   1, 103,  43, 254,
-      215, 171, 118, 202, 130, 201, 125, 250,  89,  71, 240, 173, 212,
-      162, 175, 156, 164, 114, 192, 183, 253, 147,  38,  54,  63, 247,
-      204,  52, 165, 229, 241, 113, 216,  49,  21,   4, 199,  35, 195,
-       24, 150,   5, 154,   7,  18, 128, 226, 235,  39, 178, 117,   9,
-      131,  44,  26,  27, 110,  90, 160,  82,  59, 214, 179,  41, 227,
-       47, 132,  83, 209,   0, 237,  32, 252, 177,  91, 106, 203, 190,
-       57,  74,  76,  88, 207, 208, 239, 170, 251,  67,  77,  51, 133,
-       69, 249,   2, 127,  80,  60, 159, 168,  81, 163,  64, 143, 146,
-      157,  56, 245, 188, 182, 218,  33,  16, 255, 243, 210, 205,  12,
-       19, 236,  95, 151,  68,  23, 196, 167, 126,  61, 100,  93,  25,
-      115,  96, 129,  79, 220,  34,  42, 144, 136,  70, 238, 184,  20,
-      222,  94,  11, 219, 224,  50,  58,  10,  73,   6,  36,  92, 194,
-      211, 172,  98, 145, 149, 228, 121, 231, 200,  55, 109, 141, 213,
-       78, 169, 108,  86, 244, 234, 101, 122, 174,   8, 186, 120,  37,
-       46,  28, 166, 180, 198, 232, 221, 116,  31,  75, 189, 139, 138,
-      112,  62, 181, 102,  72,   3, 246,  14,  97,  53,  87, 185, 134,
-      193,  29, 158, 225, 248, 152,  17, 105, 217, 142, 148, 155,  30,
-      135, 233, 206,  85,  40, 223, 140, 161, 137,  13, 191, 230,  66,
-      104,  65, 153,  45,  15, 176,  84, 187,  22
-  };
-  static const SWord32 table3[] = {
-      0x5051f4a7UL, 0x537e4165UL, 0xc31a17a4UL, 0x963a275eUL,
-      0xcb3bab6bUL, 0xf11f9d45UL, 0xabacfa58UL, 0x934be303UL,
-      0x552030faUL, 0xf6ad766dUL, 0x9188cc76UL, 0x25f5024cUL,
-      0xfc4fe5d7UL, 0xd7c52acbUL, 0x80263544UL, 0x8fb562a3UL,
-      0x49deb15aUL, 0x6725ba1bUL, 0x9845ea0eUL, 0xe15dfec0UL,
-      0x02c32f75UL, 0x12814cf0UL, 0xa38d4697UL, 0xc66bd3f9UL,
-      0xe7038f5fUL, 0x9515929cUL, 0xebbf6d7aUL, 0xda955259UL,
-      0x2dd4be83UL, 0xd3587421UL, 0x2949e069UL, 0x448ec9c8UL,
-      0x6a75c289UL, 0x78f48e79UL, 0x6b99583eUL, 0xdd27b971UL,
-      0xb6bee14fUL, 0x17f088adUL, 0x66c920acUL, 0xb47dce3aUL,
-      0x1863df4aUL, 0x82e51a31UL, 0x60975133UL, 0x4562537fUL,
-      0xe0b16477UL, 0x84bb6baeUL, 0x1cfe81a0UL, 0x94f9082bUL,
-      0x58704868UL, 0x198f45fdUL, 0x8794de6cUL, 0xb7527bf8UL,
-      0x23ab73d3UL, 0xe2724b02UL, 0x57e31f8fUL, 0x2a6655abUL,
-      0x07b2eb28UL, 0x032fb5c2UL, 0x9a86c57bUL, 0xa5d33708UL,
-      0xf2302887UL, 0xb223bfa5UL, 0xba02036aUL, 0x5ced1682UL,
-      0x2b8acf1cUL, 0x92a779b4UL, 0xf0f307f2UL, 0xa14e69e2UL,
-      0xcd65daf4UL, 0xd50605beUL, 0x1fd13462UL, 0x8ac4a6feUL,
-      0x9d342e53UL, 0xa0a2f355UL, 0x32058ae1UL, 0x75a4f6ebUL,
-      0x390b83ecUL, 0xaa4060efUL, 0x065e719fUL, 0x51bd6e10UL,
-      0xf93e218aUL, 0x3d96dd06UL, 0xaedd3e05UL, 0x464de6bdUL,
-      0xb591548dUL, 0x0571c45dUL, 0x6f0406d4UL, 0xff605015UL,
-      0x241998fbUL, 0x97d6bde9UL, 0xcc894043UL, 0x7767d99eUL,
-      0xbdb0e842UL, 0x8807898bUL, 0x38e7195bUL, 0xdb79c8eeUL,
-      0x47a17c0aUL, 0xe97c420fUL, 0xc9f8841eUL, 0x00000000UL,
-      0x83098086UL, 0x48322bedUL, 0xac1e1170UL, 0x4e6c5a72UL,
-      0xfbfd0effUL, 0x560f8538UL, 0x1e3daed5UL, 0x27362d39UL,
-      0x640a0fd9UL, 0x21685ca6UL, 0xd19b5b54UL, 0x3a24362eUL,
-      0xb10c0a67UL, 0x0f9357e7UL, 0xd2b4ee96UL, 0x9e1b9b91UL,
-      0x4f80c0c5UL, 0xa261dc20UL, 0x695a774bUL, 0x161c121aUL,
-      0x0ae293baUL, 0xe5c0a02aUL, 0x433c22e0UL, 0x1d121b17UL,
-      0x0b0e090dUL, 0xadf28bc7UL, 0xb92db6a8UL, 0xc8141ea9UL,
-      0x8557f119UL, 0x4caf7507UL, 0xbbee99ddUL, 0xfda37f60UL,
-      0x9ff70126UL, 0xbc5c72f5UL, 0xc544663bUL, 0x345bfb7eUL,
-      0x768b4329UL, 0xdccb23c6UL, 0x68b6edfcUL, 0x63b8e4f1UL,
-      0xcad731dcUL, 0x10426385UL, 0x40139722UL, 0x2084c611UL,
-      0x7d854a24UL, 0xf8d2bb3dUL, 0x11aef932UL, 0x6dc729a1UL,
-      0x4b1d9e2fUL, 0xf3dcb230UL, 0xec0d8652UL, 0xd077c1e3UL,
-      0x6c2bb316UL, 0x99a970b9UL, 0xfa119448UL, 0x2247e964UL,
-      0xc4a8fc8cUL, 0x1aa0f03fUL, 0xd8567d2cUL, 0xef223390UL,
-      0xc787494eUL, 0xc1d938d1UL, 0xfe8ccaa2UL, 0x3698d40bUL,
-      0xcfa6f581UL, 0x28a57adeUL, 0x26dab78eUL, 0xa43fadbfUL,
-      0xe42c3a9dUL, 0x0d507892UL, 0x9b6a5fccUL, 0x62547e46UL,
-      0xc2f68d13UL, 0xe890d8b8UL, 0x5e2e39f7UL, 0xf582c3afUL,
-      0xbe9f5d80UL, 0x7c69d093UL, 0xa96fd52dUL, 0xb3cf2512UL,
-      0x3bc8ac99UL, 0xa710187dUL, 0x6ee89c63UL, 0x7bdb3bbbUL,
-      0x09cd2678UL, 0xf46e5918UL, 0x01ec9ab7UL, 0xa8834f9aUL,
-      0x65e6956eUL, 0x7eaaffe6UL, 0x0821bccfUL, 0xe6ef15e8UL,
-      0xd9bae79bUL, 0xce4a6f36UL, 0xd4ea9f09UL, 0xd629b07cUL,
-      0xaf31a4b2UL, 0x312a3f23UL, 0x30c6a594UL, 0xc035a266UL,
-      0x37744ebcUL, 0xa6fc82caUL, 0xb0e090d0UL, 0x1533a7d8UL,
-      0x4af10498UL, 0xf741ecdaUL, 0x0e7fcd50UL, 0x2f1791f6UL,
-      0x8d764dd6UL, 0x4d43efb0UL, 0x54ccaa4dUL, 0xdfe49604UL,
-      0xe39ed1b5UL, 0x1b4c6a88UL, 0xb8c12c1fUL, 0x7f466551UL,
-      0x049d5eeaUL, 0x5d018c35UL, 0x73fa8774UL, 0x2efb0b41UL,
-      0x5ab3671dUL, 0x5292dbd2UL, 0x33e91056UL, 0x136dd647UL,
-      0x8c9ad761UL, 0x7a37a10cUL, 0x8e59f814UL, 0x89eb133cUL,
-      0xeecea927UL, 0x35b761c9UL, 0xede11ce5UL, 0x3c7a47b1UL,
-      0x599cd2dfUL, 0x3f55f273UL, 0x791814ceUL, 0xbf73c737UL,
-      0xea53f7cdUL, 0x5b5ffdaaUL, 0x14df3d6fUL, 0x867844dbUL,
-      0x81caaff3UL, 0x3eb968c4UL, 0x2c382434UL, 0x5fc2a340UL,
-      0x72161dc3UL, 0x0cbce225UL, 0x8b283c49UL, 0x41ff0d95UL,
-      0x7139a801UL, 0xde080cb3UL, 0x9cd8b4e4UL, 0x906456c1UL,
-      0x617bcb84UL, 0x70d532b6UL, 0x74486c5cUL, 0x42d0b857UL
-  };
-  static const SWord32 table4[] = {
-      0xa75051f4UL, 0x65537e41UL, 0xa4c31a17UL, 0x5e963a27UL,
-      0x6bcb3babUL, 0x45f11f9dUL, 0x58abacfaUL, 0x03934be3UL,
-      0xfa552030UL, 0x6df6ad76UL, 0x769188ccUL, 0x4c25f502UL,
-      0xd7fc4fe5UL, 0xcbd7c52aUL, 0x44802635UL, 0xa38fb562UL,
-      0x5a49deb1UL, 0x1b6725baUL, 0x0e9845eaUL, 0xc0e15dfeUL,
-      0x7502c32fUL, 0xf012814cUL, 0x97a38d46UL, 0xf9c66bd3UL,
-      0x5fe7038fUL, 0x9c951592UL, 0x7aebbf6dUL, 0x59da9552UL,
-      0x832dd4beUL, 0x21d35874UL, 0x692949e0UL, 0xc8448ec9UL,
-      0x896a75c2UL, 0x7978f48eUL, 0x3e6b9958UL, 0x71dd27b9UL,
-      0x4fb6bee1UL, 0xad17f088UL, 0xac66c920UL, 0x3ab47dceUL,
-      0x4a1863dfUL, 0x3182e51aUL, 0x33609751UL, 0x7f456253UL,
-      0x77e0b164UL, 0xae84bb6bUL, 0xa01cfe81UL, 0x2b94f908UL,
-      0x68587048UL, 0xfd198f45UL, 0x6c8794deUL, 0xf8b7527bUL,
-      0xd323ab73UL, 0x02e2724bUL, 0x8f57e31fUL, 0xab2a6655UL,
-      0x2807b2ebUL, 0xc2032fb5UL, 0x7b9a86c5UL, 0x08a5d337UL,
-      0x87f23028UL, 0xa5b223bfUL, 0x6aba0203UL, 0x825ced16UL,
-      0x1c2b8acfUL, 0xb492a779UL, 0xf2f0f307UL, 0xe2a14e69UL,
-      0xf4cd65daUL, 0xbed50605UL, 0x621fd134UL, 0xfe8ac4a6UL,
-      0x539d342eUL, 0x55a0a2f3UL, 0xe132058aUL, 0xeb75a4f6UL,
-      0xec390b83UL, 0xefaa4060UL, 0x9f065e71UL, 0x1051bd6eUL,
-      0x8af93e21UL, 0x063d96ddUL, 0x05aedd3eUL, 0xbd464de6UL,
-      0x8db59154UL, 0x5d0571c4UL, 0xd46f0406UL, 0x15ff6050UL,
-      0xfb241998UL, 0xe997d6bdUL, 0x43cc8940UL, 0x9e7767d9UL,
-      0x42bdb0e8UL, 0x8b880789UL, 0x5b38e719UL, 0xeedb79c8UL,
-      0x0a47a17cUL, 0x0fe97c42UL, 0x1ec9f884UL, 0x00000000UL,
-      0x86830980UL, 0xed48322bUL, 0x70ac1e11UL, 0x724e6c5aUL,
-      0xfffbfd0eUL, 0x38560f85UL, 0xd51e3daeUL, 0x3927362dUL,
-      0xd9640a0fUL, 0xa621685cUL, 0x54d19b5bUL, 0x2e3a2436UL,
-      0x67b10c0aUL, 0xe70f9357UL, 0x96d2b4eeUL, 0x919e1b9bUL,
-      0xc54f80c0UL, 0x20a261dcUL, 0x4b695a77UL, 0x1a161c12UL,
-      0xba0ae293UL, 0x2ae5c0a0UL, 0xe0433c22UL, 0x171d121bUL,
-      0x0d0b0e09UL, 0xc7adf28bUL, 0xa8b92db6UL, 0xa9c8141eUL,
-      0x198557f1UL, 0x074caf75UL, 0xddbbee99UL, 0x60fda37fUL,
-      0x269ff701UL, 0xf5bc5c72UL, 0x3bc54466UL, 0x7e345bfbUL,
-      0x29768b43UL, 0xc6dccb23UL, 0xfc68b6edUL, 0xf163b8e4UL,
-      0xdccad731UL, 0x85104263UL, 0x22401397UL, 0x112084c6UL,
-      0x247d854aUL, 0x3df8d2bbUL, 0x3211aef9UL, 0xa16dc729UL,
-      0x2f4b1d9eUL, 0x30f3dcb2UL, 0x52ec0d86UL, 0xe3d077c1UL,
-      0x166c2bb3UL, 0xb999a970UL, 0x48fa1194UL, 0x642247e9UL,
-      0x8cc4a8fcUL, 0x3f1aa0f0UL, 0x2cd8567dUL, 0x90ef2233UL,
-      0x4ec78749UL, 0xd1c1d938UL, 0xa2fe8ccaUL, 0x0b3698d4UL,
-      0x81cfa6f5UL, 0xde28a57aUL, 0x8e26dab7UL, 0xbfa43fadUL,
-      0x9de42c3aUL, 0x920d5078UL, 0xcc9b6a5fUL, 0x4662547eUL,
-      0x13c2f68dUL, 0xb8e890d8UL, 0xf75e2e39UL, 0xaff582c3UL,
-      0x80be9f5dUL, 0x937c69d0UL, 0x2da96fd5UL, 0x12b3cf25UL,
-      0x993bc8acUL, 0x7da71018UL, 0x636ee89cUL, 0xbb7bdb3bUL,
-      0x7809cd26UL, 0x18f46e59UL, 0xb701ec9aUL, 0x9aa8834fUL,
-      0x6e65e695UL, 0xe67eaaffUL, 0xcf0821bcUL, 0xe8e6ef15UL,
-      0x9bd9bae7UL, 0x36ce4a6fUL, 0x09d4ea9fUL, 0x7cd629b0UL,
-      0xb2af31a4UL, 0x23312a3fUL, 0x9430c6a5UL, 0x66c035a2UL,
-      0xbc37744eUL, 0xcaa6fc82UL, 0xd0b0e090UL, 0xd81533a7UL,
-      0x984af104UL, 0xdaf741ecUL, 0x500e7fcdUL, 0xf62f1791UL,
-      0xd68d764dUL, 0xb04d43efUL, 0x4d54ccaaUL, 0x04dfe496UL,
-      0xb5e39ed1UL, 0x881b4c6aUL, 0x1fb8c12cUL, 0x517f4665UL,
-      0xea049d5eUL, 0x355d018cUL, 0x7473fa87UL, 0x412efb0bUL,
-      0x1d5ab367UL, 0xd25292dbUL, 0x5633e910UL, 0x47136dd6UL,
-      0x618c9ad7UL, 0x0c7a37a1UL, 0x148e59f8UL, 0x3c89eb13UL,
-      0x27eecea9UL, 0xc935b761UL, 0xe5ede11cUL, 0xb13c7a47UL,
-      0xdf599cd2UL, 0x733f55f2UL, 0xce791814UL, 0x37bf73c7UL,
-      0xcdea53f7UL, 0xaa5b5ffdUL, 0x6f14df3dUL, 0xdb867844UL,
-      0xf381caafUL, 0xc43eb968UL, 0x342c3824UL, 0x405fc2a3UL,
-      0xc372161dUL, 0x250cbce2UL, 0x498b283cUL, 0x9541ff0dUL,
-      0x017139a8UL, 0xb3de080cUL, 0xe49cd8b4UL, 0xc1906456UL,
-      0x84617bcbUL, 0xb670d532UL, 0x5c74486cUL, 0x5742d0b8UL
-  };
-  static const SWord32 table5[] = {
-      0xf4a75051UL, 0x4165537eUL, 0x17a4c31aUL, 0x275e963aUL,
-      0xab6bcb3bUL, 0x9d45f11fUL, 0xfa58abacUL, 0xe303934bUL,
-      0x30fa5520UL, 0x766df6adUL, 0xcc769188UL, 0x024c25f5UL,
-      0xe5d7fc4fUL, 0x2acbd7c5UL, 0x35448026UL, 0x62a38fb5UL,
-      0xb15a49deUL, 0xba1b6725UL, 0xea0e9845UL, 0xfec0e15dUL,
-      0x2f7502c3UL, 0x4cf01281UL, 0x4697a38dUL, 0xd3f9c66bUL,
-      0x8f5fe703UL, 0x929c9515UL, 0x6d7aebbfUL, 0x5259da95UL,
-      0xbe832dd4UL, 0x7421d358UL, 0xe0692949UL, 0xc9c8448eUL,
-      0xc2896a75UL, 0x8e7978f4UL, 0x583e6b99UL, 0xb971dd27UL,
-      0xe14fb6beUL, 0x88ad17f0UL, 0x20ac66c9UL, 0xce3ab47dUL,
-      0xdf4a1863UL, 0x1a3182e5UL, 0x51336097UL, 0x537f4562UL,
-      0x6477e0b1UL, 0x6bae84bbUL, 0x81a01cfeUL, 0x082b94f9UL,
-      0x48685870UL, 0x45fd198fUL, 0xde6c8794UL, 0x7bf8b752UL,
-      0x73d323abUL, 0x4b02e272UL, 0x1f8f57e3UL, 0x55ab2a66UL,
-      0xeb2807b2UL, 0xb5c2032fUL, 0xc57b9a86UL, 0x3708a5d3UL,
-      0x2887f230UL, 0xbfa5b223UL, 0x036aba02UL, 0x16825cedUL,
-      0xcf1c2b8aUL, 0x79b492a7UL, 0x07f2f0f3UL, 0x69e2a14eUL,
-      0xdaf4cd65UL, 0x05bed506UL, 0x34621fd1UL, 0xa6fe8ac4UL,
-      0x2e539d34UL, 0xf355a0a2UL, 0x8ae13205UL, 0xf6eb75a4UL,
-      0x83ec390bUL, 0x60efaa40UL, 0x719f065eUL, 0x6e1051bdUL,
-      0x218af93eUL, 0xdd063d96UL, 0x3e05aeddUL, 0xe6bd464dUL,
-      0x548db591UL, 0xc45d0571UL, 0x06d46f04UL, 0x5015ff60UL,
-      0x98fb2419UL, 0xbde997d6UL, 0x4043cc89UL, 0xd99e7767UL,
-      0xe842bdb0UL, 0x898b8807UL, 0x195b38e7UL, 0xc8eedb79UL,
-      0x7c0a47a1UL, 0x420fe97cUL, 0x841ec9f8UL, 0x00000000UL,
-      0x80868309UL, 0x2bed4832UL, 0x1170ac1eUL, 0x5a724e6cUL,
-      0x0efffbfdUL, 0x8538560fUL, 0xaed51e3dUL, 0x2d392736UL,
-      0x0fd9640aUL, 0x5ca62168UL, 0x5b54d19bUL, 0x362e3a24UL,
-      0x0a67b10cUL, 0x57e70f93UL, 0xee96d2b4UL, 0x9b919e1bUL,
-      0xc0c54f80UL, 0xdc20a261UL, 0x774b695aUL, 0x121a161cUL,
-      0x93ba0ae2UL, 0xa02ae5c0UL, 0x22e0433cUL, 0x1b171d12UL,
-      0x090d0b0eUL, 0x8bc7adf2UL, 0xb6a8b92dUL, 0x1ea9c814UL,
-      0xf1198557UL, 0x75074cafUL, 0x99ddbbeeUL, 0x7f60fda3UL,
-      0x01269ff7UL, 0x72f5bc5cUL, 0x663bc544UL, 0xfb7e345bUL,
-      0x4329768bUL, 0x23c6dccbUL, 0xedfc68b6UL, 0xe4f163b8UL,
-      0x31dccad7UL, 0x63851042UL, 0x97224013UL, 0xc6112084UL,
-      0x4a247d85UL, 0xbb3df8d2UL, 0xf93211aeUL, 0x29a16dc7UL,
-      0x9e2f4b1dUL, 0xb230f3dcUL, 0x8652ec0dUL, 0xc1e3d077UL,
-      0xb3166c2bUL, 0x70b999a9UL, 0x9448fa11UL, 0xe9642247UL,
-      0xfc8cc4a8UL, 0xf03f1aa0UL, 0x7d2cd856UL, 0x3390ef22UL,
-      0x494ec787UL, 0x38d1c1d9UL, 0xcaa2fe8cUL, 0xd40b3698UL,
-      0xf581cfa6UL, 0x7ade28a5UL, 0xb78e26daUL, 0xadbfa43fUL,
-      0x3a9de42cUL, 0x78920d50UL, 0x5fcc9b6aUL, 0x7e466254UL,
-      0x8d13c2f6UL, 0xd8b8e890UL, 0x39f75e2eUL, 0xc3aff582UL,
-      0x5d80be9fUL, 0xd0937c69UL, 0xd52da96fUL, 0x2512b3cfUL,
-      0xac993bc8UL, 0x187da710UL, 0x9c636ee8UL, 0x3bbb7bdbUL,
-      0x267809cdUL, 0x5918f46eUL, 0x9ab701ecUL, 0x4f9aa883UL,
-      0x956e65e6UL, 0xffe67eaaUL, 0xbccf0821UL, 0x15e8e6efUL,
-      0xe79bd9baUL, 0x6f36ce4aUL, 0x9f09d4eaUL, 0xb07cd629UL,
-      0xa4b2af31UL, 0x3f23312aUL, 0xa59430c6UL, 0xa266c035UL,
-      0x4ebc3774UL, 0x82caa6fcUL, 0x90d0b0e0UL, 0xa7d81533UL,
-      0x04984af1UL, 0xecdaf741UL, 0xcd500e7fUL, 0x91f62f17UL,
-      0x4dd68d76UL, 0xefb04d43UL, 0xaa4d54ccUL, 0x9604dfe4UL,
-      0xd1b5e39eUL, 0x6a881b4cUL, 0x2c1fb8c1UL, 0x65517f46UL,
-      0x5eea049dUL, 0x8c355d01UL, 0x877473faUL, 0x0b412efbUL,
-      0x671d5ab3UL, 0xdbd25292UL, 0x105633e9UL, 0xd647136dUL,
-      0xd7618c9aUL, 0xa10c7a37UL, 0xf8148e59UL, 0x133c89ebUL,
-      0xa927eeceUL, 0x61c935b7UL, 0x1ce5ede1UL, 0x47b13c7aUL,
-      0xd2df599cUL, 0xf2733f55UL, 0x14ce7918UL, 0xc737bf73UL,
-      0xf7cdea53UL, 0xfdaa5b5fUL, 0x3d6f14dfUL, 0x44db8678UL,
-      0xaff381caUL, 0x68c43eb9UL, 0x24342c38UL, 0xa3405fc2UL,
-      0x1dc37216UL, 0xe2250cbcUL, 0x3c498b28UL, 0x0d9541ffUL,
-      0xa8017139UL, 0x0cb3de08UL, 0xb4e49cd8UL, 0x56c19064UL,
-      0xcb84617bUL, 0x32b670d5UL, 0x6c5c7448UL, 0xb85742d0UL
-  };
-  static const SWord8 table6[] = {
-        0,  14,  28,  18,  56,  54,  36,  42, 112, 126, 108,  98,  72,
-       70,  84,  90, 224, 238, 252, 242, 216, 214, 196, 202, 144, 158,
-      140, 130, 168, 166, 180, 186, 219, 213, 199, 201, 227, 237, 255,
-      241, 171, 165, 183, 185, 147, 157, 143, 129,  59,  53,  39,  41,
-        3,  13,  31,  17,  75,  69,  87,  89, 115, 125, 111,  97, 173,
-      163, 177, 191, 149, 155, 137, 135, 221, 211, 193, 207, 229, 235,
-      249, 247,  77,  67,  81,  95, 117, 123, 105, 103,  61,  51,  33,
-       47,   5,  11,  25,  23, 118, 120, 106, 100,  78,  64,  82,  92,
-        6,   8,  26,  20,  62,  48,  34,  44, 150, 152, 138, 132, 174,
-      160, 178, 188, 230, 232, 250, 244, 222, 208, 194, 204,  65,  79,
-       93,  83, 121, 119, 101, 107,  49,  63,  45,  35,   9,   7,  21,
-       27, 161, 175, 189, 179, 153, 151, 133, 139, 209, 223, 205, 195,
-      233, 231, 245, 251, 154, 148, 134, 136, 162, 172, 190, 176, 234,
-      228, 246, 248, 210, 220, 206, 192, 122, 116, 102, 104,  66,  76,
-       94,  80,  10,   4,  22,  24,  50,  60,  46,  32, 236, 226, 240,
-      254, 212, 218, 200, 198, 156, 146, 128, 142, 164, 170, 184, 182,
-       12,   2,  16,  30,  52,  58,  40,  38, 124, 114,  96, 110,  68,
-       74,  88,  86,  55,  57,  43,  37,  15,   1,  19,  29,  71,  73,
-       91,  85, 127, 113,  99, 109, 215, 217, 203, 197, 239, 225, 243,
-      253, 167, 169, 187, 181, 159, 145, 131, 141
-  };
-  static const SWord8 table7[] = {
-        0,  11,  22,  29,  44,  39,  58,  49,  88,  83,  78,  69, 116,
-      127,  98, 105, 176, 187, 166, 173, 156, 151, 138, 129, 232, 227,
-      254, 245, 196, 207, 210, 217, 123, 112, 109, 102,  87,  92,  65,
-       74,  35,  40,  53,  62,  15,   4,  25,  18, 203, 192, 221, 214,
-      231, 236, 241, 250, 147, 152, 133, 142, 191, 180, 169, 162, 246,
-      253, 224, 235, 218, 209, 204, 199, 174, 165, 184, 179, 130, 137,
-      148, 159,  70,  77,  80,  91, 106,  97, 124, 119,  30,  21,   8,
-        3,  50,  57,  36,  47, 141, 134, 155, 144, 161, 170, 183, 188,
-      213, 222, 195, 200, 249, 242, 239, 228,  61,  54,  43,  32,  17,
-       26,   7,  12, 101, 110, 115, 120,  73,  66,  95,  84, 247, 252,
-      225, 234, 219, 208, 205, 198, 175, 164, 185, 178, 131, 136, 149,
-      158,  71,  76,  81,  90, 107,  96, 125, 118,  31,  20,   9,   2,
-       51,  56,  37,  46, 140, 135, 154, 145, 160, 171, 182, 189, 212,
-      223, 194, 201, 248, 243, 238, 229,  60,  55,  42,  33,  16,  27,
-        6,  13, 100, 111, 114, 121,  72,  67,  94,  85,   1,  10,  23,
-       28,  45,  38,  59,  48,  89,  82,  79,  68, 117, 126,  99, 104,
-      177, 186, 167, 172, 157, 150, 139, 128, 233, 226, 255, 244, 197,
-      206, 211, 216, 122, 113, 108, 103,  86,  93,  64,  75,  34,  41,
-       52,  63,  14,   5,  24,  19, 202, 193, 220, 215, 230, 237, 240,
-      251, 146, 153, 132, 143, 190, 181, 168, 163
-  };
-  static const SWord8 table8[] = {
-        0,  13,  26,  23,  52,  57,  46,  35, 104, 101, 114, 127,  92,
-       81,  70,  75, 208, 221, 202, 199, 228, 233, 254, 243, 184, 181,
-      162, 175, 140, 129, 150, 155, 187, 182, 161, 172, 143, 130, 149,
-      152, 211, 222, 201, 196, 231, 234, 253, 240, 107, 102, 113, 124,
-       95,  82,  69,  72,   3,  14,  25,  20,  55,  58,  45,  32, 109,
-       96, 119, 122,  89,  84,  67,  78,   5,   8,  31,  18,  49,  60,
-       43,  38, 189, 176, 167, 170, 137, 132, 147, 158, 213, 216, 207,
-      194, 225, 236, 251, 246, 214, 219, 204, 193, 226, 239, 248, 245,
-      190, 179, 164, 169, 138, 135, 144, 157,   6,  11,  28,  17,  50,
-       63,  40,  37, 110,  99, 116, 121,  90,  87,  64,  77, 218, 215,
-      192, 205, 238, 227, 244, 249, 178, 191, 168, 165, 134, 139, 156,
-      145,  10,   7,  16,  29,  62,  51,  36,  41,  98, 111, 120, 117,
-       86,  91,  76,  65,  97, 108, 123, 118,  85,  88,  79,  66,   9,
-        4,  19,  30,  61,  48,  39,  42, 177, 188, 171, 166, 133, 136,
-      159, 146, 217, 212, 195, 206, 237, 224, 247, 250, 183, 186, 173,
-      160, 131, 142, 153, 148, 223, 210, 197, 200, 235, 230, 241, 252,
-      103, 106, 125, 112,  83,  94,  73,  68,  15,   2,  21,  24,  59,
-       54,  33,  44,  12,   1,  22,  27,  56,  53,  34,  47, 100, 105,
-      126, 115,  80,  93,  74,  71, 220, 209, 198, 203, 232, 229, 242,
-      255, 180, 185, 174, 163, 128, 141, 154, 151
-  };
-  static const SWord8 table9[] = {
-        0,   9,  18,  27,  36,  45,  54,  63,  72,  65,  90,  83, 108,
-      101, 126, 119, 144, 153, 130, 139, 180, 189, 166, 175, 216, 209,
-      202, 195, 252, 245, 238, 231,  59,  50,  41,  32,  31,  22,  13,
-        4, 115, 122,  97, 104,  87,  94,  69,  76, 171, 162, 185, 176,
-      143, 134, 157, 148, 227, 234, 241, 248, 199, 206, 213, 220, 118,
-      127, 100, 109,  82,  91,  64,  73,  62,  55,  44,  37,  26,  19,
-        8,   1, 230, 239, 244, 253, 194, 203, 208, 217, 174, 167, 188,
-      181, 138, 131, 152, 145,  77,  68,  95,  86, 105,  96, 123, 114,
-        5,  12,  23,  30,  33,  40,  51,  58, 221, 212, 207, 198, 249,
-      240, 235, 226, 149, 156, 135, 142, 177, 184, 163, 170, 236, 229,
-      254, 247, 200, 193, 218, 211, 164, 173, 182, 191, 128, 137, 146,
-      155, 124, 117, 110, 103,  88,  81,  74,  67,  52,  61,  38,  47,
-       16,  25,   2,  11, 215, 222, 197, 204, 243, 250, 225, 232, 159,
-      150, 141, 132, 187, 178, 169, 160,  71,  78,  85,  92,  99, 106,
-      113, 120,  15,   6,  29,  20,  43,  34,  57,  48, 154, 147, 136,
-      129, 190, 183, 172, 165, 210, 219, 192, 201, 246, 255, 228, 237,
-       10,   3,  24,  17,  46,  39,  60,  53,  66,  75,  80,  89, 102,
-      111, 116, 125, 161, 168, 179, 186, 133, 140, 151, 158, 233, 224,
-      251, 242, 205, 196, 223, 214,  49,  56,  35,  42,  21,  28,   7,
-       14, 121, 112, 107,  98,  93,  84,  79,  70
-  };
-  const SWord32 s520 = (s7 << 8) | (s7 >> 24);
-  const SWord16 s521 = (SWord16) (s520 >> 16);
-  const SWord8  s522 = (SWord8) (s521 >> 8);
-  const SWord8  s523 = table2[s522];
-  const SWord8  s524 = 1 ^ s523;
-  const SWord8  s525 = (SWord8) s521;
-  const SWord8  s526 = table2[s525];
-  const SWord16 s527 = (((SWord16) s524) << 8) | ((SWord16) s526);
-  const SWord16 s528 = (SWord16) s520;
-  const SWord8  s529 = (SWord8) (s528 >> 8);
-  const SWord8  s530 = table2[s529];
-  const SWord8  s531 = (SWord8) s528;
-  const SWord8  s532 = table2[s531];
-  const SWord16 s533 = (((SWord16) s530) << 8) | ((SWord16) s532);
-  const SWord32 s534 = (((SWord32) s527) << 16) | ((SWord32) s533);
-  const SWord32 s535 = s4 ^ s534;
-  const SWord32 s536 = s5 ^ s535;
-  const SWord32 s537 = s6 ^ s536;
-  const SWord32 s538 = s7 ^ s537;
-  const SWord32 s539 = (s538 << 8) | (s538 >> 24);
-  const SWord16 s540 = (SWord16) (s539 >> 16);
-  const SWord8  s541 = (SWord8) (s540 >> 8);
-  const SWord8  s542 = table2[s541];
-  const SWord8  s543 = 2 ^ s542;
-  const SWord8  s544 = (SWord8) s540;
-  const SWord8  s545 = table2[s544];
-  const SWord16 s546 = (((SWord16) s543) << 8) | ((SWord16) s545);
-  const SWord16 s547 = (SWord16) s539;
-  const SWord8  s548 = (SWord8) (s547 >> 8);
-  const SWord8  s549 = table2[s548];
-  const SWord8  s550 = (SWord8) s547;
-  const SWord8  s551 = table2[s550];
-  const SWord16 s552 = (((SWord16) s549) << 8) | ((SWord16) s551);
-  const SWord32 s553 = (((SWord32) s546) << 16) | ((SWord32) s552);
-  const SWord32 s554 = s535 ^ s553;
-  const SWord32 s555 = s536 ^ s554;
-  const SWord32 s556 = s537 ^ s555;
-  const SWord32 s557 = s538 ^ s556;
-  const SWord32 s558 = (s557 << 8) | (s557 >> 24);
-  const SWord16 s559 = (SWord16) (s558 >> 16);
-  const SWord8  s560 = (SWord8) (s559 >> 8);
-  const SWord8  s561 = table2[s560];
-  const SWord8  s562 = 4 ^ s561;
-  const SWord8  s563 = (SWord8) s559;
-  const SWord8  s564 = table2[s563];
-  const SWord16 s565 = (((SWord16) s562) << 8) | ((SWord16) s564);
-  const SWord16 s566 = (SWord16) s558;
-  const SWord8  s567 = (SWord8) (s566 >> 8);
-  const SWord8  s568 = table2[s567];
-  const SWord8  s569 = (SWord8) s566;
-  const SWord8  s570 = table2[s569];
-  const SWord16 s571 = (((SWord16) s568) << 8) | ((SWord16) s570);
-  const SWord32 s572 = (((SWord32) s565) << 16) | ((SWord32) s571);
-  const SWord32 s573 = s554 ^ s572;
-  const SWord32 s574 = s555 ^ s573;
-  const SWord32 s575 = s556 ^ s574;
-  const SWord32 s576 = s557 ^ s575;
-  const SWord32 s577 = (s576 << 8) | (s576 >> 24);
-  const SWord16 s578 = (SWord16) (s577 >> 16);
-  const SWord8  s579 = (SWord8) (s578 >> 8);
-  const SWord8  s580 = table2[s579];
-  const SWord8  s581 = 8 ^ s580;
-  const SWord8  s582 = (SWord8) s578;
-  const SWord8  s583 = table2[s582];
-  const SWord16 s584 = (((SWord16) s581) << 8) | ((SWord16) s583);
-  const SWord16 s585 = (SWord16) s577;
-  const SWord8  s586 = (SWord8) (s585 >> 8);
-  const SWord8  s587 = table2[s586];
-  const SWord8  s588 = (SWord8) s585;
-  const SWord8  s589 = table2[s588];
-  const SWord16 s590 = (((SWord16) s587) << 8) | ((SWord16) s589);
-  const SWord32 s591 = (((SWord32) s584) << 16) | ((SWord32) s590);
-  const SWord32 s592 = s573 ^ s591;
-  const SWord32 s593 = s574 ^ s592;
-  const SWord32 s594 = s575 ^ s593;
-  const SWord32 s595 = s576 ^ s594;
-  const SWord32 s596 = (s595 << 8) | (s595 >> 24);
-  const SWord16 s597 = (SWord16) (s596 >> 16);
-  const SWord8  s598 = (SWord8) (s597 >> 8);
-  const SWord8  s599 = table2[s598];
-  const SWord8  s600 = 16 ^ s599;
-  const SWord8  s601 = (SWord8) s597;
-  const SWord8  s602 = table2[s601];
-  const SWord16 s603 = (((SWord16) s600) << 8) | ((SWord16) s602);
-  const SWord16 s604 = (SWord16) s596;
-  const SWord8  s605 = (SWord8) (s604 >> 8);
-  const SWord8  s606 = table2[s605];
-  const SWord8  s607 = (SWord8) s604;
-  const SWord8  s608 = table2[s607];
-  const SWord16 s609 = (((SWord16) s606) << 8) | ((SWord16) s608);
-  const SWord32 s610 = (((SWord32) s603) << 16) | ((SWord32) s609);
-  const SWord32 s611 = s592 ^ s610;
-  const SWord32 s612 = s593 ^ s611;
-  const SWord32 s613 = s594 ^ s612;
-  const SWord32 s614 = s595 ^ s613;
-  const SWord32 s615 = (s614 << 8) | (s614 >> 24);
-  const SWord16 s616 = (SWord16) (s615 >> 16);
-  const SWord8  s617 = (SWord8) (s616 >> 8);
-  const SWord8  s618 = table2[s617];
-  const SWord8  s619 = 32 ^ s618;
-  const SWord8  s620 = (SWord8) s616;
-  const SWord8  s621 = table2[s620];
-  const SWord16 s622 = (((SWord16) s619) << 8) | ((SWord16) s621);
-  const SWord16 s623 = (SWord16) s615;
-  const SWord8  s624 = (SWord8) (s623 >> 8);
-  const SWord8  s625 = table2[s624];
-  const SWord8  s626 = (SWord8) s623;
-  const SWord8  s627 = table2[s626];
-  const SWord16 s628 = (((SWord16) s625) << 8) | ((SWord16) s627);
-  const SWord32 s629 = (((SWord32) s622) << 16) | ((SWord32) s628);
-  const SWord32 s630 = s611 ^ s629;
-  const SWord32 s631 = s612 ^ s630;
-  const SWord32 s632 = s613 ^ s631;
-  const SWord32 s633 = s614 ^ s632;
-  const SWord32 s634 = (s633 << 8) | (s633 >> 24);
-  const SWord16 s635 = (SWord16) (s634 >> 16);
-  const SWord8  s636 = (SWord8) (s635 >> 8);
-  const SWord8  s637 = table2[s636];
-  const SWord8  s638 = 64 ^ s637;
-  const SWord8  s639 = (SWord8) s635;
-  const SWord8  s640 = table2[s639];
-  const SWord16 s641 = (((SWord16) s638) << 8) | ((SWord16) s640);
-  const SWord16 s642 = (SWord16) s634;
-  const SWord8  s643 = (SWord8) (s642 >> 8);
-  const SWord8  s644 = table2[s643];
-  const SWord8  s645 = (SWord8) s642;
-  const SWord8  s646 = table2[s645];
-  const SWord16 s647 = (((SWord16) s644) << 8) | ((SWord16) s646);
-  const SWord32 s648 = (((SWord32) s641) << 16) | ((SWord32) s647);
-  const SWord32 s649 = s630 ^ s648;
-  const SWord32 s650 = s631 ^ s649;
-  const SWord32 s651 = s632 ^ s650;
-  const SWord32 s652 = s633 ^ s651;
-  const SWord32 s653 = (s652 << 8) | (s652 >> 24);
-  const SWord16 s654 = (SWord16) (s653 >> 16);
-  const SWord8  s655 = (SWord8) (s654 >> 8);
-  const SWord8  s656 = table2[s655];
-  const SWord8  s657 = 128 ^ s656;
-  const SWord8  s658 = (SWord8) s654;
-  const SWord8  s659 = table2[s658];
-  const SWord16 s660 = (((SWord16) s657) << 8) | ((SWord16) s659);
-  const SWord16 s661 = (SWord16) s653;
-  const SWord8  s662 = (SWord8) (s661 >> 8);
-  const SWord8  s663 = table2[s662];
-  const SWord8  s664 = (SWord8) s661;
-  const SWord8  s665 = table2[s664];
-  const SWord16 s666 = (((SWord16) s663) << 8) | ((SWord16) s665);
-  const SWord32 s667 = (((SWord32) s660) << 16) | ((SWord32) s666);
-  const SWord32 s668 = s649 ^ s667;
-  const SWord32 s669 = s650 ^ s668;
-  const SWord32 s670 = s651 ^ s669;
-  const SWord32 s671 = s652 ^ s670;
-  const SWord32 s672 = (s671 << 8) | (s671 >> 24);
-  const SWord16 s673 = (SWord16) (s672 >> 16);
-  const SWord8  s674 = (SWord8) (s673 >> 8);
-  const SWord8  s675 = table2[s674];
-  const SWord8  s676 = 27 ^ s675;
-  const SWord8  s677 = (SWord8) s673;
-  const SWord8  s678 = table2[s677];
-  const SWord16 s679 = (((SWord16) s676) << 8) | ((SWord16) s678);
-  const SWord16 s680 = (SWord16) s672;
-  const SWord8  s681 = (SWord8) (s680 >> 8);
-  const SWord8  s682 = table2[s681];
-  const SWord8  s683 = (SWord8) s680;
-  const SWord8  s684 = table2[s683];
-  const SWord16 s685 = (((SWord16) s682) << 8) | ((SWord16) s684);
-  const SWord32 s686 = (((SWord32) s679) << 16) | ((SWord32) s685);
-  const SWord32 s687 = s668 ^ s686;
-  const SWord32 s688 = s669 ^ s687;
-  const SWord32 s689 = s670 ^ s688;
-  const SWord32 s690 = s671 ^ s689;
-  const SWord32 s691 = (s690 << 8) | (s690 >> 24);
-  const SWord16 s692 = (SWord16) (s691 >> 16);
-  const SWord8  s693 = (SWord8) (s692 >> 8);
-  const SWord8  s694 = table2[s693];
-  const SWord8  s695 = 54 ^ s694;
-  const SWord8  s696 = (SWord8) s692;
-  const SWord8  s697 = table2[s696];
-  const SWord16 s698 = (((SWord16) s695) << 8) | ((SWord16) s697);
-  const SWord16 s699 = (SWord16) s691;
-  const SWord8  s700 = (SWord8) (s699 >> 8);
-  const SWord8  s701 = table2[s700];
-  const SWord8  s702 = (SWord8) s699;
-  const SWord8  s703 = table2[s702];
-  const SWord16 s704 = (((SWord16) s701) << 8) | ((SWord16) s703);
-  const SWord32 s705 = (((SWord32) s698) << 16) | ((SWord32) s704);
-  const SWord32 s706 = s687 ^ s705;
-  const SWord32 s707 = s0 ^ s706;
-  const SWord16 s708 = (SWord16) (s707 >> 16);
-  const SWord8  s709 = (SWord8) (s708 >> 8);
-  const SWord32 s710 = table1[s709];
-  const SWord32 s966 = s688 ^ s706;
-  const SWord32 s967 = s689 ^ s966;
-  const SWord32 s968 = s690 ^ s967;
-  const SWord32 s969 = s3 ^ s968;
-  const SWord16 s970 = (SWord16) (s969 >> 16);
-  const SWord8  s971 = (SWord8) s970;
-  const SWord32 s972 = table3[s971];
-  const SWord32 s973 = s710 ^ s972;
-  const SWord32 s1229 = s2 ^ s967;
-  const SWord16 s1230 = (SWord16) s1229;
-  const SWord8  s1231 = (SWord8) (s1230 >> 8);
-  const SWord32 s1232 = table4[s1231];
-  const SWord32 s1233 = s973 ^ s1232;
-  const SWord32 s1489 = s1 ^ s966;
-  const SWord16 s1490 = (SWord16) s1489;
-  const SWord8  s1491 = (SWord8) s1490;
-  const SWord32 s1492 = table5[s1491];
-  const SWord32 s1493 = s1233 ^ s1492;
-  const SWord16 s1494 = (SWord16) (s687 >> 16);
-  const SWord8  s1495 = (SWord8) (s1494 >> 8);
-  const SWord8  s1496 = table6[s1495];
-  const SWord8  s1497 = (SWord8) s1494;
-  const SWord8  s1498 = table7[s1497];
-  const SWord16 s1499 = (SWord16) s687;
-  const SWord8  s1500 = (SWord8) (s1499 >> 8);
-  const SWord8  s1501 = table8[s1500];
-  const SWord8  s1502 = (SWord8) s1499;
-  const SWord8  s1503 = table9[s1502];
-  const SWord8  s1504 = s1501 ^ s1503;
-  const SWord8  s1505 = s1498 ^ s1504;
-  const SWord8  s1506 = s1496 ^ s1505;
-  const SWord8  s1507 = table9[s1495];
-  const SWord8  s1508 = table6[s1497];
-  const SWord8  s1509 = table7[s1500];
-  const SWord8  s1510 = table8[s1502];
-  const SWord8  s1511 = s1509 ^ s1510;
-  const SWord8  s1512 = s1508 ^ s1511;
-  const SWord8  s1513 = s1507 ^ s1512;
-  const SWord16 s1514 = (((SWord16) s1506) << 8) | ((SWord16) s1513);
-  const SWord8  s1515 = table8[s1495];
-  const SWord8  s1516 = table9[s1497];
-  const SWord8  s1517 = table6[s1500];
-  const SWord8  s1518 = table7[s1502];
-  const SWord8  s1519 = s1517 ^ s1518;
-  const SWord8  s1520 = s1516 ^ s1519;
-  const SWord8  s1521 = s1515 ^ s1520;
-  const SWord8  s1522 = table7[s1495];
-  const SWord8  s1523 = table8[s1497];
-  const SWord8  s1524 = table9[s1500];
-  const SWord8  s1525 = table6[s1502];
-  const SWord8  s1526 = s1524 ^ s1525;
-  const SWord8  s1527 = s1523 ^ s1526;
-  const SWord8  s1528 = s1522 ^ s1527;
-  const SWord16 s1529 = (((SWord16) s1521) << 8) | ((SWord16) s1528);
-  const SWord32 s1530 = (((SWord32) s1514) << 16) | ((SWord32) s1529);
-  const SWord32 s1531 = s1493 ^ s1530;
-  const SWord16 s1532 = (SWord16) (s1531 >> 16);
-  const SWord8  s1533 = (SWord8) (s1532 >> 8);
-  const SWord32 s1534 = table1[s1533];
-  const SWord8  s1535 = (SWord8) (s970 >> 8);
-  const SWord32 s1536 = table1[s1535];
-  const SWord16 s1537 = (SWord16) (s1229 >> 16);
-  const SWord8  s1538 = (SWord8) s1537;
-  const SWord32 s1539 = table3[s1538];
-  const SWord32 s1540 = s1536 ^ s1539;
-  const SWord8  s1541 = (SWord8) (s1490 >> 8);
-  const SWord32 s1542 = table4[s1541];
-  const SWord32 s1543 = s1540 ^ s1542;
-  const SWord16 s1544 = (SWord16) s707;
-  const SWord8  s1545 = (SWord8) s1544;
-  const SWord32 s1546 = table5[s1545];
-  const SWord32 s1547 = s1543 ^ s1546;
-  const SWord16 s1548 = (SWord16) (s690 >> 16);
-  const SWord8  s1549 = (SWord8) (s1548 >> 8);
-  const SWord8  s1550 = table6[s1549];
-  const SWord8  s1551 = (SWord8) s1548;
-  const SWord8  s1552 = table7[s1551];
-  const SWord16 s1553 = (SWord16) s690;
-  const SWord8  s1554 = (SWord8) (s1553 >> 8);
-  const SWord8  s1555 = table8[s1554];
-  const SWord8  s1556 = (SWord8) s1553;
-  const SWord8  s1557 = table9[s1556];
-  const SWord8  s1558 = s1555 ^ s1557;
-  const SWord8  s1559 = s1552 ^ s1558;
-  const SWord8  s1560 = s1550 ^ s1559;
-  const SWord8  s1561 = table9[s1549];
-  const SWord8  s1562 = table6[s1551];
-  const SWord8  s1563 = table7[s1554];
-  const SWord8  s1564 = table8[s1556];
-  const SWord8  s1565 = s1563 ^ s1564;
-  const SWord8  s1566 = s1562 ^ s1565;
-  const SWord8  s1567 = s1561 ^ s1566;
-  const SWord16 s1568 = (((SWord16) s1560) << 8) | ((SWord16) s1567);
-  const SWord8  s1569 = table8[s1549];
-  const SWord8  s1570 = table9[s1551];
-  const SWord8  s1571 = table6[s1554];
-  const SWord8  s1572 = table7[s1556];
-  const SWord8  s1573 = s1571 ^ s1572;
-  const SWord8  s1574 = s1570 ^ s1573;
-  const SWord8  s1575 = s1569 ^ s1574;
-  const SWord8  s1576 = table7[s1549];
-  const SWord8  s1577 = table8[s1551];
-  const SWord8  s1578 = table9[s1554];
-  const SWord8  s1579 = table6[s1556];
-  const SWord8  s1580 = s1578 ^ s1579;
-  const SWord8  s1581 = s1577 ^ s1580;
-  const SWord8  s1582 = s1576 ^ s1581;
-  const SWord16 s1583 = (((SWord16) s1575) << 8) | ((SWord16) s1582);
-  const SWord32 s1584 = (((SWord32) s1568) << 16) | ((SWord32) s1583);
-  const SWord32 s1585 = s1547 ^ s1584;
-  const SWord16 s1586 = (SWord16) (s1585 >> 16);
-  const SWord8  s1587 = (SWord8) s1586;
-  const SWord32 s1588 = table3[s1587];
-  const SWord32 s1589 = s1534 ^ s1588;
-  const SWord8  s1590 = (SWord8) (s1537 >> 8);
-  const SWord32 s1591 = table1[s1590];
-  const SWord16 s1592 = (SWord16) (s1489 >> 16);
-  const SWord8  s1593 = (SWord8) s1592;
-  const SWord32 s1594 = table3[s1593];
-  const SWord32 s1595 = s1591 ^ s1594;
-  const SWord8  s1596 = (SWord8) (s1544 >> 8);
-  const SWord32 s1597 = table4[s1596];
-  const SWord32 s1598 = s1595 ^ s1597;
-  const SWord16 s1599 = (SWord16) s969;
-  const SWord8  s1600 = (SWord8) s1599;
-  const SWord32 s1601 = table5[s1600];
-  const SWord32 s1602 = s1598 ^ s1601;
-  const SWord16 s1603 = (SWord16) (s689 >> 16);
-  const SWord8  s1604 = (SWord8) (s1603 >> 8);
-  const SWord8  s1605 = table6[s1604];
-  const SWord8  s1606 = (SWord8) s1603;
-  const SWord8  s1607 = table7[s1606];
-  const SWord16 s1608 = (SWord16) s689;
-  const SWord8  s1609 = (SWord8) (s1608 >> 8);
-  const SWord8  s1610 = table8[s1609];
-  const SWord8  s1611 = (SWord8) s1608;
-  const SWord8  s1612 = table9[s1611];
-  const SWord8  s1613 = s1610 ^ s1612;
-  const SWord8  s1614 = s1607 ^ s1613;
-  const SWord8  s1615 = s1605 ^ s1614;
-  const SWord8  s1616 = table9[s1604];
-  const SWord8  s1617 = table6[s1606];
-  const SWord8  s1618 = table7[s1609];
-  const SWord8  s1619 = table8[s1611];
-  const SWord8  s1620 = s1618 ^ s1619;
-  const SWord8  s1621 = s1617 ^ s1620;
-  const SWord8  s1622 = s1616 ^ s1621;
-  const SWord16 s1623 = (((SWord16) s1615) << 8) | ((SWord16) s1622);
-  const SWord8  s1624 = table8[s1604];
-  const SWord8  s1625 = table9[s1606];
-  const SWord8  s1626 = table6[s1609];
-  const SWord8  s1627 = table7[s1611];
-  const SWord8  s1628 = s1626 ^ s1627;
-  const SWord8  s1629 = s1625 ^ s1628;
-  const SWord8  s1630 = s1624 ^ s1629;
-  const SWord8  s1631 = table7[s1604];
-  const SWord8  s1632 = table8[s1606];
-  const SWord8  s1633 = table9[s1609];
-  const SWord8  s1634 = table6[s1611];
-  const SWord8  s1635 = s1633 ^ s1634;
-  const SWord8  s1636 = s1632 ^ s1635;
-  const SWord8  s1637 = s1631 ^ s1636;
-  const SWord16 s1638 = (((SWord16) s1630) << 8) | ((SWord16) s1637);
-  const SWord32 s1639 = (((SWord32) s1623) << 16) | ((SWord32) s1638);
-  const SWord32 s1640 = s1602 ^ s1639;
-  const SWord16 s1641 = (SWord16) s1640;
-  const SWord8  s1642 = (SWord8) (s1641 >> 8);
-  const SWord32 s1643 = table4[s1642];
-  const SWord32 s1644 = s1589 ^ s1643;
-  const SWord8  s1645 = (SWord8) (s1592 >> 8);
-  const SWord32 s1646 = table1[s1645];
-  const SWord8  s1647 = (SWord8) s708;
-  const SWord32 s1648 = table3[s1647];
-  const SWord32 s1649 = s1646 ^ s1648;
-  const SWord8  s1650 = (SWord8) (s1599 >> 8);
-  const SWord32 s1651 = table4[s1650];
-  const SWord32 s1652 = s1649 ^ s1651;
-  const SWord8  s1653 = (SWord8) s1230;
-  const SWord32 s1654 = table5[s1653];
-  const SWord32 s1655 = s1652 ^ s1654;
-  const SWord16 s1656 = (SWord16) (s688 >> 16);
-  const SWord8  s1657 = (SWord8) (s1656 >> 8);
-  const SWord8  s1658 = table6[s1657];
-  const SWord8  s1659 = (SWord8) s1656;
-  const SWord8  s1660 = table7[s1659];
-  const SWord16 s1661 = (SWord16) s688;
-  const SWord8  s1662 = (SWord8) (s1661 >> 8);
-  const SWord8  s1663 = table8[s1662];
-  const SWord8  s1664 = (SWord8) s1661;
-  const SWord8  s1665 = table9[s1664];
-  const SWord8  s1666 = s1663 ^ s1665;
-  const SWord8  s1667 = s1660 ^ s1666;
-  const SWord8  s1668 = s1658 ^ s1667;
-  const SWord8  s1669 = table9[s1657];
-  const SWord8  s1670 = table6[s1659];
-  const SWord8  s1671 = table7[s1662];
-  const SWord8  s1672 = table8[s1664];
-  const SWord8  s1673 = s1671 ^ s1672;
-  const SWord8  s1674 = s1670 ^ s1673;
-  const SWord8  s1675 = s1669 ^ s1674;
-  const SWord16 s1676 = (((SWord16) s1668) << 8) | ((SWord16) s1675);
-  const SWord8  s1677 = table8[s1657];
-  const SWord8  s1678 = table9[s1659];
-  const SWord8  s1679 = table6[s1662];
-  const SWord8  s1680 = table7[s1664];
-  const SWord8  s1681 = s1679 ^ s1680;
-  const SWord8  s1682 = s1678 ^ s1681;
-  const SWord8  s1683 = s1677 ^ s1682;
-  const SWord8  s1684 = table7[s1657];
-  const SWord8  s1685 = table8[s1659];
-  const SWord8  s1686 = table9[s1662];
-  const SWord8  s1687 = table6[s1664];
-  const SWord8  s1688 = s1686 ^ s1687;
-  const SWord8  s1689 = s1685 ^ s1688;
-  const SWord8  s1690 = s1684 ^ s1689;
-  const SWord16 s1691 = (((SWord16) s1683) << 8) | ((SWord16) s1690);
-  const SWord32 s1692 = (((SWord32) s1676) << 16) | ((SWord32) s1691);
-  const SWord32 s1693 = s1655 ^ s1692;
-  const SWord16 s1694 = (SWord16) s1693;
-  const SWord8  s1695 = (SWord8) s1694;
-  const SWord32 s1696 = table5[s1695];
-  const SWord32 s1697 = s1644 ^ s1696;
-  const SWord16 s1698 = (SWord16) (s668 >> 16);
-  const SWord8  s1699 = (SWord8) (s1698 >> 8);
-  const SWord8  s1700 = table6[s1699];
-  const SWord8  s1701 = (SWord8) s1698;
-  const SWord8  s1702 = table7[s1701];
-  const SWord16 s1703 = (SWord16) s668;
-  const SWord8  s1704 = (SWord8) (s1703 >> 8);
-  const SWord8  s1705 = table8[s1704];
-  const SWord8  s1706 = (SWord8) s1703;
-  const SWord8  s1707 = table9[s1706];
-  const SWord8  s1708 = s1705 ^ s1707;
-  const SWord8  s1709 = s1702 ^ s1708;
-  const SWord8  s1710 = s1700 ^ s1709;
-  const SWord8  s1711 = table9[s1699];
-  const SWord8  s1712 = table6[s1701];
-  const SWord8  s1713 = table7[s1704];
-  const SWord8  s1714 = table8[s1706];
-  const SWord8  s1715 = s1713 ^ s1714;
-  const SWord8  s1716 = s1712 ^ s1715;
-  const SWord8  s1717 = s1711 ^ s1716;
-  const SWord16 s1718 = (((SWord16) s1710) << 8) | ((SWord16) s1717);
-  const SWord8  s1719 = table8[s1699];
-  const SWord8  s1720 = table9[s1701];
-  const SWord8  s1721 = table6[s1704];
-  const SWord8  s1722 = table7[s1706];
-  const SWord8  s1723 = s1721 ^ s1722;
-  const SWord8  s1724 = s1720 ^ s1723;
-  const SWord8  s1725 = s1719 ^ s1724;
-  const SWord8  s1726 = table7[s1699];
-  const SWord8  s1727 = table8[s1701];
-  const SWord8  s1728 = table9[s1704];
-  const SWord8  s1729 = table6[s1706];
-  const SWord8  s1730 = s1728 ^ s1729;
-  const SWord8  s1731 = s1727 ^ s1730;
-  const SWord8  s1732 = s1726 ^ s1731;
-  const SWord16 s1733 = (((SWord16) s1725) << 8) | ((SWord16) s1732);
-  const SWord32 s1734 = (((SWord32) s1718) << 16) | ((SWord32) s1733);
-  const SWord32 s1735 = s1697 ^ s1734;
-  const SWord16 s1736 = (SWord16) (s1735 >> 16);
-  const SWord8  s1737 = (SWord8) (s1736 >> 8);
-  const SWord32 s1738 = table1[s1737];
-  const SWord8  s1739 = (SWord8) (s1586 >> 8);
-  const SWord32 s1740 = table1[s1739];
-  const SWord16 s1741 = (SWord16) (s1640 >> 16);
-  const SWord8  s1742 = (SWord8) s1741;
-  const SWord32 s1743 = table3[s1742];
-  const SWord32 s1744 = s1740 ^ s1743;
-  const SWord8  s1745 = (SWord8) (s1694 >> 8);
-  const SWord32 s1746 = table4[s1745];
-  const SWord32 s1747 = s1744 ^ s1746;
-  const SWord16 s1748 = (SWord16) s1531;
-  const SWord8  s1749 = (SWord8) s1748;
-  const SWord32 s1750 = table5[s1749];
-  const SWord32 s1751 = s1747 ^ s1750;
-  const SWord16 s1752 = (SWord16) (s671 >> 16);
-  const SWord8  s1753 = (SWord8) (s1752 >> 8);
-  const SWord8  s1754 = table6[s1753];
-  const SWord8  s1755 = (SWord8) s1752;
-  const SWord8  s1756 = table7[s1755];
-  const SWord16 s1757 = (SWord16) s671;
-  const SWord8  s1758 = (SWord8) (s1757 >> 8);
-  const SWord8  s1759 = table8[s1758];
-  const SWord8  s1760 = (SWord8) s1757;
-  const SWord8  s1761 = table9[s1760];
-  const SWord8  s1762 = s1759 ^ s1761;
-  const SWord8  s1763 = s1756 ^ s1762;
-  const SWord8  s1764 = s1754 ^ s1763;
-  const SWord8  s1765 = table9[s1753];
-  const SWord8  s1766 = table6[s1755];
-  const SWord8  s1767 = table7[s1758];
-  const SWord8  s1768 = table8[s1760];
-  const SWord8  s1769 = s1767 ^ s1768;
-  const SWord8  s1770 = s1766 ^ s1769;
-  const SWord8  s1771 = s1765 ^ s1770;
-  const SWord16 s1772 = (((SWord16) s1764) << 8) | ((SWord16) s1771);
-  const SWord8  s1773 = table8[s1753];
-  const SWord8  s1774 = table9[s1755];
-  const SWord8  s1775 = table6[s1758];
-  const SWord8  s1776 = table7[s1760];
-  const SWord8  s1777 = s1775 ^ s1776;
-  const SWord8  s1778 = s1774 ^ s1777;
-  const SWord8  s1779 = s1773 ^ s1778;
-  const SWord8  s1780 = table7[s1753];
-  const SWord8  s1781 = table8[s1755];
-  const SWord8  s1782 = table9[s1758];
-  const SWord8  s1783 = table6[s1760];
-  const SWord8  s1784 = s1782 ^ s1783;
-  const SWord8  s1785 = s1781 ^ s1784;
-  const SWord8  s1786 = s1780 ^ s1785;
-  const SWord16 s1787 = (((SWord16) s1779) << 8) | ((SWord16) s1786);
-  const SWord32 s1788 = (((SWord32) s1772) << 16) | ((SWord32) s1787);
-  const SWord32 s1789 = s1751 ^ s1788;
-  const SWord16 s1790 = (SWord16) (s1789 >> 16);
-  const SWord8  s1791 = (SWord8) s1790;
-  const SWord32 s1792 = table3[s1791];
-  const SWord32 s1793 = s1738 ^ s1792;
-  const SWord8  s1794 = (SWord8) (s1741 >> 8);
-  const SWord32 s1795 = table1[s1794];
-  const SWord16 s1796 = (SWord16) (s1693 >> 16);
-  const SWord8  s1797 = (SWord8) s1796;
-  const SWord32 s1798 = table3[s1797];
-  const SWord32 s1799 = s1795 ^ s1798;
-  const SWord8  s1800 = (SWord8) (s1748 >> 8);
-  const SWord32 s1801 = table4[s1800];
-  const SWord32 s1802 = s1799 ^ s1801;
-  const SWord16 s1803 = (SWord16) s1585;
-  const SWord8  s1804 = (SWord8) s1803;
-  const SWord32 s1805 = table5[s1804];
-  const SWord32 s1806 = s1802 ^ s1805;
-  const SWord16 s1807 = (SWord16) (s670 >> 16);
-  const SWord8  s1808 = (SWord8) (s1807 >> 8);
-  const SWord8  s1809 = table6[s1808];
-  const SWord8  s1810 = (SWord8) s1807;
-  const SWord8  s1811 = table7[s1810];
-  const SWord16 s1812 = (SWord16) s670;
-  const SWord8  s1813 = (SWord8) (s1812 >> 8);
-  const SWord8  s1814 = table8[s1813];
-  const SWord8  s1815 = (SWord8) s1812;
-  const SWord8  s1816 = table9[s1815];
-  const SWord8  s1817 = s1814 ^ s1816;
-  const SWord8  s1818 = s1811 ^ s1817;
-  const SWord8  s1819 = s1809 ^ s1818;
-  const SWord8  s1820 = table9[s1808];
-  const SWord8  s1821 = table6[s1810];
-  const SWord8  s1822 = table7[s1813];
-  const SWord8  s1823 = table8[s1815];
-  const SWord8  s1824 = s1822 ^ s1823;
-  const SWord8  s1825 = s1821 ^ s1824;
-  const SWord8  s1826 = s1820 ^ s1825;
-  const SWord16 s1827 = (((SWord16) s1819) << 8) | ((SWord16) s1826);
-  const SWord8  s1828 = table8[s1808];
-  const SWord8  s1829 = table9[s1810];
-  const SWord8  s1830 = table6[s1813];
-  const SWord8  s1831 = table7[s1815];
-  const SWord8  s1832 = s1830 ^ s1831;
-  const SWord8  s1833 = s1829 ^ s1832;
-  const SWord8  s1834 = s1828 ^ s1833;
-  const SWord8  s1835 = table7[s1808];
-  const SWord8  s1836 = table8[s1810];
-  const SWord8  s1837 = table9[s1813];
-  const SWord8  s1838 = table6[s1815];
-  const SWord8  s1839 = s1837 ^ s1838;
-  const SWord8  s1840 = s1836 ^ s1839;
-  const SWord8  s1841 = s1835 ^ s1840;
-  const SWord16 s1842 = (((SWord16) s1834) << 8) | ((SWord16) s1841);
-  const SWord32 s1843 = (((SWord32) s1827) << 16) | ((SWord32) s1842);
-  const SWord32 s1844 = s1806 ^ s1843;
-  const SWord16 s1845 = (SWord16) s1844;
-  const SWord8  s1846 = (SWord8) (s1845 >> 8);
-  const SWord32 s1847 = table4[s1846];
-  const SWord32 s1848 = s1793 ^ s1847;
-  const SWord8  s1849 = (SWord8) (s1796 >> 8);
-  const SWord32 s1850 = table1[s1849];
-  const SWord8  s1851 = (SWord8) s1532;
-  const SWord32 s1852 = table3[s1851];
-  const SWord32 s1853 = s1850 ^ s1852;
-  const SWord8  s1854 = (SWord8) (s1803 >> 8);
-  const SWord32 s1855 = table4[s1854];
-  const SWord32 s1856 = s1853 ^ s1855;
-  const SWord8  s1857 = (SWord8) s1641;
-  const SWord32 s1858 = table5[s1857];
-  const SWord32 s1859 = s1856 ^ s1858;
-  const SWord16 s1860 = (SWord16) (s669 >> 16);
-  const SWord8  s1861 = (SWord8) (s1860 >> 8);
-  const SWord8  s1862 = table6[s1861];
-  const SWord8  s1863 = (SWord8) s1860;
-  const SWord8  s1864 = table7[s1863];
-  const SWord16 s1865 = (SWord16) s669;
-  const SWord8  s1866 = (SWord8) (s1865 >> 8);
-  const SWord8  s1867 = table8[s1866];
-  const SWord8  s1868 = (SWord8) s1865;
-  const SWord8  s1869 = table9[s1868];
-  const SWord8  s1870 = s1867 ^ s1869;
-  const SWord8  s1871 = s1864 ^ s1870;
-  const SWord8  s1872 = s1862 ^ s1871;
-  const SWord8  s1873 = table9[s1861];
-  const SWord8  s1874 = table6[s1863];
-  const SWord8  s1875 = table7[s1866];
-  const SWord8  s1876 = table8[s1868];
-  const SWord8  s1877 = s1875 ^ s1876;
-  const SWord8  s1878 = s1874 ^ s1877;
-  const SWord8  s1879 = s1873 ^ s1878;
-  const SWord16 s1880 = (((SWord16) s1872) << 8) | ((SWord16) s1879);
-  const SWord8  s1881 = table8[s1861];
-  const SWord8  s1882 = table9[s1863];
-  const SWord8  s1883 = table6[s1866];
-  const SWord8  s1884 = table7[s1868];
-  const SWord8  s1885 = s1883 ^ s1884;
-  const SWord8  s1886 = s1882 ^ s1885;
-  const SWord8  s1887 = s1881 ^ s1886;
-  const SWord8  s1888 = table7[s1861];
-  const SWord8  s1889 = table8[s1863];
-  const SWord8  s1890 = table9[s1866];
-  const SWord8  s1891 = table6[s1868];
-  const SWord8  s1892 = s1890 ^ s1891;
-  const SWord8  s1893 = s1889 ^ s1892;
-  const SWord8  s1894 = s1888 ^ s1893;
-  const SWord16 s1895 = (((SWord16) s1887) << 8) | ((SWord16) s1894);
-  const SWord32 s1896 = (((SWord32) s1880) << 16) | ((SWord32) s1895);
-  const SWord32 s1897 = s1859 ^ s1896;
-  const SWord16 s1898 = (SWord16) s1897;
-  const SWord8  s1899 = (SWord8) s1898;
-  const SWord32 s1900 = table5[s1899];
-  const SWord32 s1901 = s1848 ^ s1900;
-  const SWord16 s1902 = (SWord16) (s649 >> 16);
-  const SWord8  s1903 = (SWord8) (s1902 >> 8);
-  const SWord8  s1904 = table6[s1903];
-  const SWord8  s1905 = (SWord8) s1902;
-  const SWord8  s1906 = table7[s1905];
-  const SWord16 s1907 = (SWord16) s649;
-  const SWord8  s1908 = (SWord8) (s1907 >> 8);
-  const SWord8  s1909 = table8[s1908];
-  const SWord8  s1910 = (SWord8) s1907;
-  const SWord8  s1911 = table9[s1910];
-  const SWord8  s1912 = s1909 ^ s1911;
-  const SWord8  s1913 = s1906 ^ s1912;
-  const SWord8  s1914 = s1904 ^ s1913;
-  const SWord8  s1915 = table9[s1903];
-  const SWord8  s1916 = table6[s1905];
-  const SWord8  s1917 = table7[s1908];
-  const SWord8  s1918 = table8[s1910];
-  const SWord8  s1919 = s1917 ^ s1918;
-  const SWord8  s1920 = s1916 ^ s1919;
-  const SWord8  s1921 = s1915 ^ s1920;
-  const SWord16 s1922 = (((SWord16) s1914) << 8) | ((SWord16) s1921);
-  const SWord8  s1923 = table8[s1903];
-  const SWord8  s1924 = table9[s1905];
-  const SWord8  s1925 = table6[s1908];
-  const SWord8  s1926 = table7[s1910];
-  const SWord8  s1927 = s1925 ^ s1926;
-  const SWord8  s1928 = s1924 ^ s1927;
-  const SWord8  s1929 = s1923 ^ s1928;
-  const SWord8  s1930 = table7[s1903];
-  const SWord8  s1931 = table8[s1905];
-  const SWord8  s1932 = table9[s1908];
-  const SWord8  s1933 = table6[s1910];
-  const SWord8  s1934 = s1932 ^ s1933;
-  const SWord8  s1935 = s1931 ^ s1934;
-  const SWord8  s1936 = s1930 ^ s1935;
-  const SWord16 s1937 = (((SWord16) s1929) << 8) | ((SWord16) s1936);
-  const SWord32 s1938 = (((SWord32) s1922) << 16) | ((SWord32) s1937);
-  const SWord32 s1939 = s1901 ^ s1938;
-  const SWord16 s1940 = (SWord16) (s1939 >> 16);
-  const SWord8  s1941 = (SWord8) (s1940 >> 8);
-  const SWord32 s1942 = table1[s1941];
-  const SWord8  s1943 = (SWord8) (s1790 >> 8);
-  const SWord32 s1944 = table1[s1943];
-  const SWord16 s1945 = (SWord16) (s1844 >> 16);
-  const SWord8  s1946 = (SWord8) s1945;
-  const SWord32 s1947 = table3[s1946];
-  const SWord32 s1948 = s1944 ^ s1947;
-  const SWord8  s1949 = (SWord8) (s1898 >> 8);
-  const SWord32 s1950 = table4[s1949];
-  const SWord32 s1951 = s1948 ^ s1950;
-  const SWord16 s1952 = (SWord16) s1735;
-  const SWord8  s1953 = (SWord8) s1952;
-  const SWord32 s1954 = table5[s1953];
-  const SWord32 s1955 = s1951 ^ s1954;
-  const SWord16 s1956 = (SWord16) (s652 >> 16);
-  const SWord8  s1957 = (SWord8) (s1956 >> 8);
-  const SWord8  s1958 = table6[s1957];
-  const SWord8  s1959 = (SWord8) s1956;
-  const SWord8  s1960 = table7[s1959];
-  const SWord16 s1961 = (SWord16) s652;
-  const SWord8  s1962 = (SWord8) (s1961 >> 8);
-  const SWord8  s1963 = table8[s1962];
-  const SWord8  s1964 = (SWord8) s1961;
-  const SWord8  s1965 = table9[s1964];
-  const SWord8  s1966 = s1963 ^ s1965;
-  const SWord8  s1967 = s1960 ^ s1966;
-  const SWord8  s1968 = s1958 ^ s1967;
-  const SWord8  s1969 = table9[s1957];
-  const SWord8  s1970 = table6[s1959];
-  const SWord8  s1971 = table7[s1962];
-  const SWord8  s1972 = table8[s1964];
-  const SWord8  s1973 = s1971 ^ s1972;
-  const SWord8  s1974 = s1970 ^ s1973;
-  const SWord8  s1975 = s1969 ^ s1974;
-  const SWord16 s1976 = (((SWord16) s1968) << 8) | ((SWord16) s1975);
-  const SWord8  s1977 = table8[s1957];
-  const SWord8  s1978 = table9[s1959];
-  const SWord8  s1979 = table6[s1962];
-  const SWord8  s1980 = table7[s1964];
-  const SWord8  s1981 = s1979 ^ s1980;
-  const SWord8  s1982 = s1978 ^ s1981;
-  const SWord8  s1983 = s1977 ^ s1982;
-  const SWord8  s1984 = table7[s1957];
-  const SWord8  s1985 = table8[s1959];
-  const SWord8  s1986 = table9[s1962];
-  const SWord8  s1987 = table6[s1964];
-  const SWord8  s1988 = s1986 ^ s1987;
-  const SWord8  s1989 = s1985 ^ s1988;
-  const SWord8  s1990 = s1984 ^ s1989;
-  const SWord16 s1991 = (((SWord16) s1983) << 8) | ((SWord16) s1990);
-  const SWord32 s1992 = (((SWord32) s1976) << 16) | ((SWord32) s1991);
-  const SWord32 s1993 = s1955 ^ s1992;
-  const SWord16 s1994 = (SWord16) (s1993 >> 16);
-  const SWord8  s1995 = (SWord8) s1994;
-  const SWord32 s1996 = table3[s1995];
-  const SWord32 s1997 = s1942 ^ s1996;
-  const SWord8  s1998 = (SWord8) (s1945 >> 8);
-  const SWord32 s1999 = table1[s1998];
-  const SWord16 s2000 = (SWord16) (s1897 >> 16);
-  const SWord8  s2001 = (SWord8) s2000;
-  const SWord32 s2002 = table3[s2001];
-  const SWord32 s2003 = s1999 ^ s2002;
-  const SWord8  s2004 = (SWord8) (s1952 >> 8);
-  const SWord32 s2005 = table4[s2004];
-  const SWord32 s2006 = s2003 ^ s2005;
-  const SWord16 s2007 = (SWord16) s1789;
-  const SWord8  s2008 = (SWord8) s2007;
-  const SWord32 s2009 = table5[s2008];
-  const SWord32 s2010 = s2006 ^ s2009;
-  const SWord16 s2011 = (SWord16) (s651 >> 16);
-  const SWord8  s2012 = (SWord8) (s2011 >> 8);
-  const SWord8  s2013 = table6[s2012];
-  const SWord8  s2014 = (SWord8) s2011;
-  const SWord8  s2015 = table7[s2014];
-  const SWord16 s2016 = (SWord16) s651;
-  const SWord8  s2017 = (SWord8) (s2016 >> 8);
-  const SWord8  s2018 = table8[s2017];
-  const SWord8  s2019 = (SWord8) s2016;
-  const SWord8  s2020 = table9[s2019];
-  const SWord8  s2021 = s2018 ^ s2020;
-  const SWord8  s2022 = s2015 ^ s2021;
-  const SWord8  s2023 = s2013 ^ s2022;
-  const SWord8  s2024 = table9[s2012];
-  const SWord8  s2025 = table6[s2014];
-  const SWord8  s2026 = table7[s2017];
-  const SWord8  s2027 = table8[s2019];
-  const SWord8  s2028 = s2026 ^ s2027;
-  const SWord8  s2029 = s2025 ^ s2028;
-  const SWord8  s2030 = s2024 ^ s2029;
-  const SWord16 s2031 = (((SWord16) s2023) << 8) | ((SWord16) s2030);
-  const SWord8  s2032 = table8[s2012];
-  const SWord8  s2033 = table9[s2014];
-  const SWord8  s2034 = table6[s2017];
-  const SWord8  s2035 = table7[s2019];
-  const SWord8  s2036 = s2034 ^ s2035;
-  const SWord8  s2037 = s2033 ^ s2036;
-  const SWord8  s2038 = s2032 ^ s2037;
-  const SWord8  s2039 = table7[s2012];
-  const SWord8  s2040 = table8[s2014];
-  const SWord8  s2041 = table9[s2017];
-  const SWord8  s2042 = table6[s2019];
-  const SWord8  s2043 = s2041 ^ s2042;
-  const SWord8  s2044 = s2040 ^ s2043;
-  const SWord8  s2045 = s2039 ^ s2044;
-  const SWord16 s2046 = (((SWord16) s2038) << 8) | ((SWord16) s2045);
-  const SWord32 s2047 = (((SWord32) s2031) << 16) | ((SWord32) s2046);
-  const SWord32 s2048 = s2010 ^ s2047;
-  const SWord16 s2049 = (SWord16) s2048;
-  const SWord8  s2050 = (SWord8) (s2049 >> 8);
-  const SWord32 s2051 = table4[s2050];
-  const SWord32 s2052 = s1997 ^ s2051;
-  const SWord8  s2053 = (SWord8) (s2000 >> 8);
-  const SWord32 s2054 = table1[s2053];
-  const SWord8  s2055 = (SWord8) s1736;
-  const SWord32 s2056 = table3[s2055];
-  const SWord32 s2057 = s2054 ^ s2056;
-  const SWord8  s2058 = (SWord8) (s2007 >> 8);
-  const SWord32 s2059 = table4[s2058];
-  const SWord32 s2060 = s2057 ^ s2059;
-  const SWord8  s2061 = (SWord8) s1845;
-  const SWord32 s2062 = table5[s2061];
-  const SWord32 s2063 = s2060 ^ s2062;
-  const SWord16 s2064 = (SWord16) (s650 >> 16);
-  const SWord8  s2065 = (SWord8) (s2064 >> 8);
-  const SWord8  s2066 = table6[s2065];
-  const SWord8  s2067 = (SWord8) s2064;
-  const SWord8  s2068 = table7[s2067];
-  const SWord16 s2069 = (SWord16) s650;
-  const SWord8  s2070 = (SWord8) (s2069 >> 8);
-  const SWord8  s2071 = table8[s2070];
-  const SWord8  s2072 = (SWord8) s2069;
-  const SWord8  s2073 = table9[s2072];
-  const SWord8  s2074 = s2071 ^ s2073;
-  const SWord8  s2075 = s2068 ^ s2074;
-  const SWord8  s2076 = s2066 ^ s2075;
-  const SWord8  s2077 = table9[s2065];
-  const SWord8  s2078 = table6[s2067];
-  const SWord8  s2079 = table7[s2070];
-  const SWord8  s2080 = table8[s2072];
-  const SWord8  s2081 = s2079 ^ s2080;
-  const SWord8  s2082 = s2078 ^ s2081;
-  const SWord8  s2083 = s2077 ^ s2082;
-  const SWord16 s2084 = (((SWord16) s2076) << 8) | ((SWord16) s2083);
-  const SWord8  s2085 = table8[s2065];
-  const SWord8  s2086 = table9[s2067];
-  const SWord8  s2087 = table6[s2070];
-  const SWord8  s2088 = table7[s2072];
-  const SWord8  s2089 = s2087 ^ s2088;
-  const SWord8  s2090 = s2086 ^ s2089;
-  const SWord8  s2091 = s2085 ^ s2090;
-  const SWord8  s2092 = table7[s2065];
-  const SWord8  s2093 = table8[s2067];
-  const SWord8  s2094 = table9[s2070];
-  const SWord8  s2095 = table6[s2072];
-  const SWord8  s2096 = s2094 ^ s2095;
-  const SWord8  s2097 = s2093 ^ s2096;
-  const SWord8  s2098 = s2092 ^ s2097;
-  const SWord16 s2099 = (((SWord16) s2091) << 8) | ((SWord16) s2098);
-  const SWord32 s2100 = (((SWord32) s2084) << 16) | ((SWord32) s2099);
-  const SWord32 s2101 = s2063 ^ s2100;
-  const SWord16 s2102 = (SWord16) s2101;
-  const SWord8  s2103 = (SWord8) s2102;
-  const SWord32 s2104 = table5[s2103];
-  const SWord32 s2105 = s2052 ^ s2104;
-  const SWord16 s2106 = (SWord16) (s630 >> 16);
-  const SWord8  s2107 = (SWord8) (s2106 >> 8);
-  const SWord8  s2108 = table6[s2107];
-  const SWord8  s2109 = (SWord8) s2106;
-  const SWord8  s2110 = table7[s2109];
-  const SWord16 s2111 = (SWord16) s630;
-  const SWord8  s2112 = (SWord8) (s2111 >> 8);
-  const SWord8  s2113 = table8[s2112];
-  const SWord8  s2114 = (SWord8) s2111;
-  const SWord8  s2115 = table9[s2114];
-  const SWord8  s2116 = s2113 ^ s2115;
-  const SWord8  s2117 = s2110 ^ s2116;
-  const SWord8  s2118 = s2108 ^ s2117;
-  const SWord8  s2119 = table9[s2107];
-  const SWord8  s2120 = table6[s2109];
-  const SWord8  s2121 = table7[s2112];
-  const SWord8  s2122 = table8[s2114];
-  const SWord8  s2123 = s2121 ^ s2122;
-  const SWord8  s2124 = s2120 ^ s2123;
-  const SWord8  s2125 = s2119 ^ s2124;
-  const SWord16 s2126 = (((SWord16) s2118) << 8) | ((SWord16) s2125);
-  const SWord8  s2127 = table8[s2107];
-  const SWord8  s2128 = table9[s2109];
-  const SWord8  s2129 = table6[s2112];
-  const SWord8  s2130 = table7[s2114];
-  const SWord8  s2131 = s2129 ^ s2130;
-  const SWord8  s2132 = s2128 ^ s2131;
-  const SWord8  s2133 = s2127 ^ s2132;
-  const SWord8  s2134 = table7[s2107];
-  const SWord8  s2135 = table8[s2109];
-  const SWord8  s2136 = table9[s2112];
-  const SWord8  s2137 = table6[s2114];
-  const SWord8  s2138 = s2136 ^ s2137;
-  const SWord8  s2139 = s2135 ^ s2138;
-  const SWord8  s2140 = s2134 ^ s2139;
-  const SWord16 s2141 = (((SWord16) s2133) << 8) | ((SWord16) s2140);
-  const SWord32 s2142 = (((SWord32) s2126) << 16) | ((SWord32) s2141);
-  const SWord32 s2143 = s2105 ^ s2142;
-  const SWord16 s2144 = (SWord16) (s2143 >> 16);
-  const SWord8  s2145 = (SWord8) (s2144 >> 8);
-  const SWord32 s2146 = table1[s2145];
-  const SWord8  s2147 = (SWord8) (s1994 >> 8);
-  const SWord32 s2148 = table1[s2147];
-  const SWord16 s2149 = (SWord16) (s2048 >> 16);
-  const SWord8  s2150 = (SWord8) s2149;
-  const SWord32 s2151 = table3[s2150];
-  const SWord32 s2152 = s2148 ^ s2151;
-  const SWord8  s2153 = (SWord8) (s2102 >> 8);
-  const SWord32 s2154 = table4[s2153];
-  const SWord32 s2155 = s2152 ^ s2154;
-  const SWord16 s2156 = (SWord16) s1939;
-  const SWord8  s2157 = (SWord8) s2156;
-  const SWord32 s2158 = table5[s2157];
-  const SWord32 s2159 = s2155 ^ s2158;
-  const SWord16 s2160 = (SWord16) (s633 >> 16);
-  const SWord8  s2161 = (SWord8) (s2160 >> 8);
-  const SWord8  s2162 = table6[s2161];
-  const SWord8  s2163 = (SWord8) s2160;
-  const SWord8  s2164 = table7[s2163];
-  const SWord16 s2165 = (SWord16) s633;
-  const SWord8  s2166 = (SWord8) (s2165 >> 8);
-  const SWord8  s2167 = table8[s2166];
-  const SWord8  s2168 = (SWord8) s2165;
-  const SWord8  s2169 = table9[s2168];
-  const SWord8  s2170 = s2167 ^ s2169;
-  const SWord8  s2171 = s2164 ^ s2170;
-  const SWord8  s2172 = s2162 ^ s2171;
-  const SWord8  s2173 = table9[s2161];
-  const SWord8  s2174 = table6[s2163];
-  const SWord8  s2175 = table7[s2166];
-  const SWord8  s2176 = table8[s2168];
-  const SWord8  s2177 = s2175 ^ s2176;
-  const SWord8  s2178 = s2174 ^ s2177;
-  const SWord8  s2179 = s2173 ^ s2178;
-  const SWord16 s2180 = (((SWord16) s2172) << 8) | ((SWord16) s2179);
-  const SWord8  s2181 = table8[s2161];
-  const SWord8  s2182 = table9[s2163];
-  const SWord8  s2183 = table6[s2166];
-  const SWord8  s2184 = table7[s2168];
-  const SWord8  s2185 = s2183 ^ s2184;
-  const SWord8  s2186 = s2182 ^ s2185;
-  const SWord8  s2187 = s2181 ^ s2186;
-  const SWord8  s2188 = table7[s2161];
-  const SWord8  s2189 = table8[s2163];
-  const SWord8  s2190 = table9[s2166];
-  const SWord8  s2191 = table6[s2168];
-  const SWord8  s2192 = s2190 ^ s2191;
-  const SWord8  s2193 = s2189 ^ s2192;
-  const SWord8  s2194 = s2188 ^ s2193;
-  const SWord16 s2195 = (((SWord16) s2187) << 8) | ((SWord16) s2194);
-  const SWord32 s2196 = (((SWord32) s2180) << 16) | ((SWord32) s2195);
-  const SWord32 s2197 = s2159 ^ s2196;
-  const SWord16 s2198 = (SWord16) (s2197 >> 16);
-  const SWord8  s2199 = (SWord8) s2198;
-  const SWord32 s2200 = table3[s2199];
-  const SWord32 s2201 = s2146 ^ s2200;
-  const SWord8  s2202 = (SWord8) (s2149 >> 8);
-  const SWord32 s2203 = table1[s2202];
-  const SWord16 s2204 = (SWord16) (s2101 >> 16);
-  const SWord8  s2205 = (SWord8) s2204;
-  const SWord32 s2206 = table3[s2205];
-  const SWord32 s2207 = s2203 ^ s2206;
-  const SWord8  s2208 = (SWord8) (s2156 >> 8);
-  const SWord32 s2209 = table4[s2208];
-  const SWord32 s2210 = s2207 ^ s2209;
-  const SWord16 s2211 = (SWord16) s1993;
-  const SWord8  s2212 = (SWord8) s2211;
-  const SWord32 s2213 = table5[s2212];
-  const SWord32 s2214 = s2210 ^ s2213;
-  const SWord16 s2215 = (SWord16) (s632 >> 16);
-  const SWord8  s2216 = (SWord8) (s2215 >> 8);
-  const SWord8  s2217 = table6[s2216];
-  const SWord8  s2218 = (SWord8) s2215;
-  const SWord8  s2219 = table7[s2218];
-  const SWord16 s2220 = (SWord16) s632;
-  const SWord8  s2221 = (SWord8) (s2220 >> 8);
-  const SWord8  s2222 = table8[s2221];
-  const SWord8  s2223 = (SWord8) s2220;
-  const SWord8  s2224 = table9[s2223];
-  const SWord8  s2225 = s2222 ^ s2224;
-  const SWord8  s2226 = s2219 ^ s2225;
-  const SWord8  s2227 = s2217 ^ s2226;
-  const SWord8  s2228 = table9[s2216];
-  const SWord8  s2229 = table6[s2218];
-  const SWord8  s2230 = table7[s2221];
-  const SWord8  s2231 = table8[s2223];
-  const SWord8  s2232 = s2230 ^ s2231;
-  const SWord8  s2233 = s2229 ^ s2232;
-  const SWord8  s2234 = s2228 ^ s2233;
-  const SWord16 s2235 = (((SWord16) s2227) << 8) | ((SWord16) s2234);
-  const SWord8  s2236 = table8[s2216];
-  const SWord8  s2237 = table9[s2218];
-  const SWord8  s2238 = table6[s2221];
-  const SWord8  s2239 = table7[s2223];
-  const SWord8  s2240 = s2238 ^ s2239;
-  const SWord8  s2241 = s2237 ^ s2240;
-  const SWord8  s2242 = s2236 ^ s2241;
-  const SWord8  s2243 = table7[s2216];
-  const SWord8  s2244 = table8[s2218];
-  const SWord8  s2245 = table9[s2221];
-  const SWord8  s2246 = table6[s2223];
-  const SWord8  s2247 = s2245 ^ s2246;
-  const SWord8  s2248 = s2244 ^ s2247;
-  const SWord8  s2249 = s2243 ^ s2248;
-  const SWord16 s2250 = (((SWord16) s2242) << 8) | ((SWord16) s2249);
-  const SWord32 s2251 = (((SWord32) s2235) << 16) | ((SWord32) s2250);
-  const SWord32 s2252 = s2214 ^ s2251;
-  const SWord16 s2253 = (SWord16) s2252;
-  const SWord8  s2254 = (SWord8) (s2253 >> 8);
-  const SWord32 s2255 = table4[s2254];
-  const SWord32 s2256 = s2201 ^ s2255;
-  const SWord8  s2257 = (SWord8) (s2204 >> 8);
-  const SWord32 s2258 = table1[s2257];
-  const SWord8  s2259 = (SWord8) s1940;
-  const SWord32 s2260 = table3[s2259];
-  const SWord32 s2261 = s2258 ^ s2260;
-  const SWord8  s2262 = (SWord8) (s2211 >> 8);
-  const SWord32 s2263 = table4[s2262];
-  const SWord32 s2264 = s2261 ^ s2263;
-  const SWord8  s2265 = (SWord8) s2049;
-  const SWord32 s2266 = table5[s2265];
-  const SWord32 s2267 = s2264 ^ s2266;
-  const SWord16 s2268 = (SWord16) (s631 >> 16);
-  const SWord8  s2269 = (SWord8) (s2268 >> 8);
-  const SWord8  s2270 = table6[s2269];
-  const SWord8  s2271 = (SWord8) s2268;
-  const SWord8  s2272 = table7[s2271];
-  const SWord16 s2273 = (SWord16) s631;
-  const SWord8  s2274 = (SWord8) (s2273 >> 8);
-  const SWord8  s2275 = table8[s2274];
-  const SWord8  s2276 = (SWord8) s2273;
-  const SWord8  s2277 = table9[s2276];
-  const SWord8  s2278 = s2275 ^ s2277;
-  const SWord8  s2279 = s2272 ^ s2278;
-  const SWord8  s2280 = s2270 ^ s2279;
-  const SWord8  s2281 = table9[s2269];
-  const SWord8  s2282 = table6[s2271];
-  const SWord8  s2283 = table7[s2274];
-  const SWord8  s2284 = table8[s2276];
-  const SWord8  s2285 = s2283 ^ s2284;
-  const SWord8  s2286 = s2282 ^ s2285;
-  const SWord8  s2287 = s2281 ^ s2286;
-  const SWord16 s2288 = (((SWord16) s2280) << 8) | ((SWord16) s2287);
-  const SWord8  s2289 = table8[s2269];
-  const SWord8  s2290 = table9[s2271];
-  const SWord8  s2291 = table6[s2274];
-  const SWord8  s2292 = table7[s2276];
-  const SWord8  s2293 = s2291 ^ s2292;
-  const SWord8  s2294 = s2290 ^ s2293;
-  const SWord8  s2295 = s2289 ^ s2294;
-  const SWord8  s2296 = table7[s2269];
-  const SWord8  s2297 = table8[s2271];
-  const SWord8  s2298 = table9[s2274];
-  const SWord8  s2299 = table6[s2276];
-  const SWord8  s2300 = s2298 ^ s2299;
-  const SWord8  s2301 = s2297 ^ s2300;
-  const SWord8  s2302 = s2296 ^ s2301;
-  const SWord16 s2303 = (((SWord16) s2295) << 8) | ((SWord16) s2302);
-  const SWord32 s2304 = (((SWord32) s2288) << 16) | ((SWord32) s2303);
-  const SWord32 s2305 = s2267 ^ s2304;
-  const SWord16 s2306 = (SWord16) s2305;
-  const SWord8  s2307 = (SWord8) s2306;
-  const SWord32 s2308 = table5[s2307];
-  const SWord32 s2309 = s2256 ^ s2308;
-  const SWord16 s2310 = (SWord16) (s611 >> 16);
-  const SWord8  s2311 = (SWord8) (s2310 >> 8);
-  const SWord8  s2312 = table6[s2311];
-  const SWord8  s2313 = (SWord8) s2310;
-  const SWord8  s2314 = table7[s2313];
-  const SWord16 s2315 = (SWord16) s611;
-  const SWord8  s2316 = (SWord8) (s2315 >> 8);
-  const SWord8  s2317 = table8[s2316];
-  const SWord8  s2318 = (SWord8) s2315;
-  const SWord8  s2319 = table9[s2318];
-  const SWord8  s2320 = s2317 ^ s2319;
-  const SWord8  s2321 = s2314 ^ s2320;
-  const SWord8  s2322 = s2312 ^ s2321;
-  const SWord8  s2323 = table9[s2311];
-  const SWord8  s2324 = table6[s2313];
-  const SWord8  s2325 = table7[s2316];
-  const SWord8  s2326 = table8[s2318];
-  const SWord8  s2327 = s2325 ^ s2326;
-  const SWord8  s2328 = s2324 ^ s2327;
-  const SWord8  s2329 = s2323 ^ s2328;
-  const SWord16 s2330 = (((SWord16) s2322) << 8) | ((SWord16) s2329);
-  const SWord8  s2331 = table8[s2311];
-  const SWord8  s2332 = table9[s2313];
-  const SWord8  s2333 = table6[s2316];
-  const SWord8  s2334 = table7[s2318];
-  const SWord8  s2335 = s2333 ^ s2334;
-  const SWord8  s2336 = s2332 ^ s2335;
-  const SWord8  s2337 = s2331 ^ s2336;
-  const SWord8  s2338 = table7[s2311];
-  const SWord8  s2339 = table8[s2313];
-  const SWord8  s2340 = table9[s2316];
-  const SWord8  s2341 = table6[s2318];
-  const SWord8  s2342 = s2340 ^ s2341;
-  const SWord8  s2343 = s2339 ^ s2342;
-  const SWord8  s2344 = s2338 ^ s2343;
-  const SWord16 s2345 = (((SWord16) s2337) << 8) | ((SWord16) s2344);
-  const SWord32 s2346 = (((SWord32) s2330) << 16) | ((SWord32) s2345);
-  const SWord32 s2347 = s2309 ^ s2346;
-  const SWord16 s2348 = (SWord16) (s2347 >> 16);
-  const SWord8  s2349 = (SWord8) (s2348 >> 8);
-  const SWord32 s2350 = table1[s2349];
-  const SWord8  s2351 = (SWord8) (s2198 >> 8);
-  const SWord32 s2352 = table1[s2351];
-  const SWord16 s2353 = (SWord16) (s2252 >> 16);
-  const SWord8  s2354 = (SWord8) s2353;
-  const SWord32 s2355 = table3[s2354];
-  const SWord32 s2356 = s2352 ^ s2355;
-  const SWord8  s2357 = (SWord8) (s2306 >> 8);
-  const SWord32 s2358 = table4[s2357];
-  const SWord32 s2359 = s2356 ^ s2358;
-  const SWord16 s2360 = (SWord16) s2143;
-  const SWord8  s2361 = (SWord8) s2360;
-  const SWord32 s2362 = table5[s2361];
-  const SWord32 s2363 = s2359 ^ s2362;
-  const SWord16 s2364 = (SWord16) (s614 >> 16);
-  const SWord8  s2365 = (SWord8) (s2364 >> 8);
-  const SWord8  s2366 = table6[s2365];
-  const SWord8  s2367 = (SWord8) s2364;
-  const SWord8  s2368 = table7[s2367];
-  const SWord16 s2369 = (SWord16) s614;
-  const SWord8  s2370 = (SWord8) (s2369 >> 8);
-  const SWord8  s2371 = table8[s2370];
-  const SWord8  s2372 = (SWord8) s2369;
-  const SWord8  s2373 = table9[s2372];
-  const SWord8  s2374 = s2371 ^ s2373;
-  const SWord8  s2375 = s2368 ^ s2374;
-  const SWord8  s2376 = s2366 ^ s2375;
-  const SWord8  s2377 = table9[s2365];
-  const SWord8  s2378 = table6[s2367];
-  const SWord8  s2379 = table7[s2370];
-  const SWord8  s2380 = table8[s2372];
-  const SWord8  s2381 = s2379 ^ s2380;
-  const SWord8  s2382 = s2378 ^ s2381;
-  const SWord8  s2383 = s2377 ^ s2382;
-  const SWord16 s2384 = (((SWord16) s2376) << 8) | ((SWord16) s2383);
-  const SWord8  s2385 = table8[s2365];
-  const SWord8  s2386 = table9[s2367];
-  const SWord8  s2387 = table6[s2370];
-  const SWord8  s2388 = table7[s2372];
-  const SWord8  s2389 = s2387 ^ s2388;
-  const SWord8  s2390 = s2386 ^ s2389;
-  const SWord8  s2391 = s2385 ^ s2390;
-  const SWord8  s2392 = table7[s2365];
-  const SWord8  s2393 = table8[s2367];
-  const SWord8  s2394 = table9[s2370];
-  const SWord8  s2395 = table6[s2372];
-  const SWord8  s2396 = s2394 ^ s2395;
-  const SWord8  s2397 = s2393 ^ s2396;
-  const SWord8  s2398 = s2392 ^ s2397;
-  const SWord16 s2399 = (((SWord16) s2391) << 8) | ((SWord16) s2398);
-  const SWord32 s2400 = (((SWord32) s2384) << 16) | ((SWord32) s2399);
-  const SWord32 s2401 = s2363 ^ s2400;
-  const SWord16 s2402 = (SWord16) (s2401 >> 16);
-  const SWord8  s2403 = (SWord8) s2402;
-  const SWord32 s2404 = table3[s2403];
-  const SWord32 s2405 = s2350 ^ s2404;
-  const SWord8  s2406 = (SWord8) (s2353 >> 8);
-  const SWord32 s2407 = table1[s2406];
-  const SWord16 s2408 = (SWord16) (s2305 >> 16);
-  const SWord8  s2409 = (SWord8) s2408;
-  const SWord32 s2410 = table3[s2409];
-  const SWord32 s2411 = s2407 ^ s2410;
-  const SWord8  s2412 = (SWord8) (s2360 >> 8);
-  const SWord32 s2413 = table4[s2412];
-  const SWord32 s2414 = s2411 ^ s2413;
-  const SWord16 s2415 = (SWord16) s2197;
-  const SWord8  s2416 = (SWord8) s2415;
-  const SWord32 s2417 = table5[s2416];
-  const SWord32 s2418 = s2414 ^ s2417;
-  const SWord16 s2419 = (SWord16) (s613 >> 16);
-  const SWord8  s2420 = (SWord8) (s2419 >> 8);
-  const SWord8  s2421 = table6[s2420];
-  const SWord8  s2422 = (SWord8) s2419;
-  const SWord8  s2423 = table7[s2422];
-  const SWord16 s2424 = (SWord16) s613;
-  const SWord8  s2425 = (SWord8) (s2424 >> 8);
-  const SWord8  s2426 = table8[s2425];
-  const SWord8  s2427 = (SWord8) s2424;
-  const SWord8  s2428 = table9[s2427];
-  const SWord8  s2429 = s2426 ^ s2428;
-  const SWord8  s2430 = s2423 ^ s2429;
-  const SWord8  s2431 = s2421 ^ s2430;
-  const SWord8  s2432 = table9[s2420];
-  const SWord8  s2433 = table6[s2422];
-  const SWord8  s2434 = table7[s2425];
-  const SWord8  s2435 = table8[s2427];
-  const SWord8  s2436 = s2434 ^ s2435;
-  const SWord8  s2437 = s2433 ^ s2436;
-  const SWord8  s2438 = s2432 ^ s2437;
-  const SWord16 s2439 = (((SWord16) s2431) << 8) | ((SWord16) s2438);
-  const SWord8  s2440 = table8[s2420];
-  const SWord8  s2441 = table9[s2422];
-  const SWord8  s2442 = table6[s2425];
-  const SWord8  s2443 = table7[s2427];
-  const SWord8  s2444 = s2442 ^ s2443;
-  const SWord8  s2445 = s2441 ^ s2444;
-  const SWord8  s2446 = s2440 ^ s2445;
-  const SWord8  s2447 = table7[s2420];
-  const SWord8  s2448 = table8[s2422];
-  const SWord8  s2449 = table9[s2425];
-  const SWord8  s2450 = table6[s2427];
-  const SWord8  s2451 = s2449 ^ s2450;
-  const SWord8  s2452 = s2448 ^ s2451;
-  const SWord8  s2453 = s2447 ^ s2452;
-  const SWord16 s2454 = (((SWord16) s2446) << 8) | ((SWord16) s2453);
-  const SWord32 s2455 = (((SWord32) s2439) << 16) | ((SWord32) s2454);
-  const SWord32 s2456 = s2418 ^ s2455;
-  const SWord16 s2457 = (SWord16) s2456;
-  const SWord8  s2458 = (SWord8) (s2457 >> 8);
-  const SWord32 s2459 = table4[s2458];
-  const SWord32 s2460 = s2405 ^ s2459;
-  const SWord8  s2461 = (SWord8) (s2408 >> 8);
-  const SWord32 s2462 = table1[s2461];
-  const SWord8  s2463 = (SWord8) s2144;
-  const SWord32 s2464 = table3[s2463];
-  const SWord32 s2465 = s2462 ^ s2464;
-  const SWord8  s2466 = (SWord8) (s2415 >> 8);
-  const SWord32 s2467 = table4[s2466];
-  const SWord32 s2468 = s2465 ^ s2467;
-  const SWord8  s2469 = (SWord8) s2253;
-  const SWord32 s2470 = table5[s2469];
-  const SWord32 s2471 = s2468 ^ s2470;
-  const SWord16 s2472 = (SWord16) (s612 >> 16);
-  const SWord8  s2473 = (SWord8) (s2472 >> 8);
-  const SWord8  s2474 = table6[s2473];
-  const SWord8  s2475 = (SWord8) s2472;
-  const SWord8  s2476 = table7[s2475];
-  const SWord16 s2477 = (SWord16) s612;
-  const SWord8  s2478 = (SWord8) (s2477 >> 8);
-  const SWord8  s2479 = table8[s2478];
-  const SWord8  s2480 = (SWord8) s2477;
-  const SWord8  s2481 = table9[s2480];
-  const SWord8  s2482 = s2479 ^ s2481;
-  const SWord8  s2483 = s2476 ^ s2482;
-  const SWord8  s2484 = s2474 ^ s2483;
-  const SWord8  s2485 = table9[s2473];
-  const SWord8  s2486 = table6[s2475];
-  const SWord8  s2487 = table7[s2478];
-  const SWord8  s2488 = table8[s2480];
-  const SWord8  s2489 = s2487 ^ s2488;
-  const SWord8  s2490 = s2486 ^ s2489;
-  const SWord8  s2491 = s2485 ^ s2490;
-  const SWord16 s2492 = (((SWord16) s2484) << 8) | ((SWord16) s2491);
-  const SWord8  s2493 = table8[s2473];
-  const SWord8  s2494 = table9[s2475];
-  const SWord8  s2495 = table6[s2478];
-  const SWord8  s2496 = table7[s2480];
-  const SWord8  s2497 = s2495 ^ s2496;
-  const SWord8  s2498 = s2494 ^ s2497;
-  const SWord8  s2499 = s2493 ^ s2498;
-  const SWord8  s2500 = table7[s2473];
-  const SWord8  s2501 = table8[s2475];
-  const SWord8  s2502 = table9[s2478];
-  const SWord8  s2503 = table6[s2480];
-  const SWord8  s2504 = s2502 ^ s2503;
-  const SWord8  s2505 = s2501 ^ s2504;
-  const SWord8  s2506 = s2500 ^ s2505;
-  const SWord16 s2507 = (((SWord16) s2499) << 8) | ((SWord16) s2506);
-  const SWord32 s2508 = (((SWord32) s2492) << 16) | ((SWord32) s2507);
-  const SWord32 s2509 = s2471 ^ s2508;
-  const SWord16 s2510 = (SWord16) s2509;
-  const SWord8  s2511 = (SWord8) s2510;
-  const SWord32 s2512 = table5[s2511];
-  const SWord32 s2513 = s2460 ^ s2512;
-  const SWord16 s2514 = (SWord16) (s592 >> 16);
-  const SWord8  s2515 = (SWord8) (s2514 >> 8);
-  const SWord8  s2516 = table6[s2515];
-  const SWord8  s2517 = (SWord8) s2514;
-  const SWord8  s2518 = table7[s2517];
-  const SWord16 s2519 = (SWord16) s592;
-  const SWord8  s2520 = (SWord8) (s2519 >> 8);
-  const SWord8  s2521 = table8[s2520];
-  const SWord8  s2522 = (SWord8) s2519;
-  const SWord8  s2523 = table9[s2522];
-  const SWord8  s2524 = s2521 ^ s2523;
-  const SWord8  s2525 = s2518 ^ s2524;
-  const SWord8  s2526 = s2516 ^ s2525;
-  const SWord8  s2527 = table9[s2515];
-  const SWord8  s2528 = table6[s2517];
-  const SWord8  s2529 = table7[s2520];
-  const SWord8  s2530 = table8[s2522];
-  const SWord8  s2531 = s2529 ^ s2530;
-  const SWord8  s2532 = s2528 ^ s2531;
-  const SWord8  s2533 = s2527 ^ s2532;
-  const SWord16 s2534 = (((SWord16) s2526) << 8) | ((SWord16) s2533);
-  const SWord8  s2535 = table8[s2515];
-  const SWord8  s2536 = table9[s2517];
-  const SWord8  s2537 = table6[s2520];
-  const SWord8  s2538 = table7[s2522];
-  const SWord8  s2539 = s2537 ^ s2538;
-  const SWord8  s2540 = s2536 ^ s2539;
-  const SWord8  s2541 = s2535 ^ s2540;
-  const SWord8  s2542 = table7[s2515];
-  const SWord8  s2543 = table8[s2517];
-  const SWord8  s2544 = table9[s2520];
-  const SWord8  s2545 = table6[s2522];
-  const SWord8  s2546 = s2544 ^ s2545;
-  const SWord8  s2547 = s2543 ^ s2546;
-  const SWord8  s2548 = s2542 ^ s2547;
-  const SWord16 s2549 = (((SWord16) s2541) << 8) | ((SWord16) s2548);
-  const SWord32 s2550 = (((SWord32) s2534) << 16) | ((SWord32) s2549);
-  const SWord32 s2551 = s2513 ^ s2550;
-  const SWord16 s2552 = (SWord16) (s2551 >> 16);
-  const SWord8  s2553 = (SWord8) (s2552 >> 8);
-  const SWord32 s2554 = table1[s2553];
-  const SWord8  s2555 = (SWord8) (s2402 >> 8);
-  const SWord32 s2556 = table1[s2555];
-  const SWord16 s2557 = (SWord16) (s2456 >> 16);
-  const SWord8  s2558 = (SWord8) s2557;
-  const SWord32 s2559 = table3[s2558];
-  const SWord32 s2560 = s2556 ^ s2559;
-  const SWord8  s2561 = (SWord8) (s2510 >> 8);
-  const SWord32 s2562 = table4[s2561];
-  const SWord32 s2563 = s2560 ^ s2562;
-  const SWord16 s2564 = (SWord16) s2347;
-  const SWord8  s2565 = (SWord8) s2564;
-  const SWord32 s2566 = table5[s2565];
-  const SWord32 s2567 = s2563 ^ s2566;
-  const SWord16 s2568 = (SWord16) (s595 >> 16);
-  const SWord8  s2569 = (SWord8) (s2568 >> 8);
-  const SWord8  s2570 = table6[s2569];
-  const SWord8  s2571 = (SWord8) s2568;
-  const SWord8  s2572 = table7[s2571];
-  const SWord16 s2573 = (SWord16) s595;
-  const SWord8  s2574 = (SWord8) (s2573 >> 8);
-  const SWord8  s2575 = table8[s2574];
-  const SWord8  s2576 = (SWord8) s2573;
-  const SWord8  s2577 = table9[s2576];
-  const SWord8  s2578 = s2575 ^ s2577;
-  const SWord8  s2579 = s2572 ^ s2578;
-  const SWord8  s2580 = s2570 ^ s2579;
-  const SWord8  s2581 = table9[s2569];
-  const SWord8  s2582 = table6[s2571];
-  const SWord8  s2583 = table7[s2574];
-  const SWord8  s2584 = table8[s2576];
-  const SWord8  s2585 = s2583 ^ s2584;
-  const SWord8  s2586 = s2582 ^ s2585;
-  const SWord8  s2587 = s2581 ^ s2586;
-  const SWord16 s2588 = (((SWord16) s2580) << 8) | ((SWord16) s2587);
-  const SWord8  s2589 = table8[s2569];
-  const SWord8  s2590 = table9[s2571];
-  const SWord8  s2591 = table6[s2574];
-  const SWord8  s2592 = table7[s2576];
-  const SWord8  s2593 = s2591 ^ s2592;
-  const SWord8  s2594 = s2590 ^ s2593;
-  const SWord8  s2595 = s2589 ^ s2594;
-  const SWord8  s2596 = table7[s2569];
-  const SWord8  s2597 = table8[s2571];
-  const SWord8  s2598 = table9[s2574];
-  const SWord8  s2599 = table6[s2576];
-  const SWord8  s2600 = s2598 ^ s2599;
-  const SWord8  s2601 = s2597 ^ s2600;
-  const SWord8  s2602 = s2596 ^ s2601;
-  const SWord16 s2603 = (((SWord16) s2595) << 8) | ((SWord16) s2602);
-  const SWord32 s2604 = (((SWord32) s2588) << 16) | ((SWord32) s2603);
-  const SWord32 s2605 = s2567 ^ s2604;
-  const SWord16 s2606 = (SWord16) (s2605 >> 16);
-  const SWord8  s2607 = (SWord8) s2606;
-  const SWord32 s2608 = table3[s2607];
-  const SWord32 s2609 = s2554 ^ s2608;
-  const SWord8  s2610 = (SWord8) (s2557 >> 8);
-  const SWord32 s2611 = table1[s2610];
-  const SWord16 s2612 = (SWord16) (s2509 >> 16);
-  const SWord8  s2613 = (SWord8) s2612;
-  const SWord32 s2614 = table3[s2613];
-  const SWord32 s2615 = s2611 ^ s2614;
-  const SWord8  s2616 = (SWord8) (s2564 >> 8);
-  const SWord32 s2617 = table4[s2616];
-  const SWord32 s2618 = s2615 ^ s2617;
-  const SWord16 s2619 = (SWord16) s2401;
-  const SWord8  s2620 = (SWord8) s2619;
-  const SWord32 s2621 = table5[s2620];
-  const SWord32 s2622 = s2618 ^ s2621;
-  const SWord16 s2623 = (SWord16) (s594 >> 16);
-  const SWord8  s2624 = (SWord8) (s2623 >> 8);
-  const SWord8  s2625 = table6[s2624];
-  const SWord8  s2626 = (SWord8) s2623;
-  const SWord8  s2627 = table7[s2626];
-  const SWord16 s2628 = (SWord16) s594;
-  const SWord8  s2629 = (SWord8) (s2628 >> 8);
-  const SWord8  s2630 = table8[s2629];
-  const SWord8  s2631 = (SWord8) s2628;
-  const SWord8  s2632 = table9[s2631];
-  const SWord8  s2633 = s2630 ^ s2632;
-  const SWord8  s2634 = s2627 ^ s2633;
-  const SWord8  s2635 = s2625 ^ s2634;
-  const SWord8  s2636 = table9[s2624];
-  const SWord8  s2637 = table6[s2626];
-  const SWord8  s2638 = table7[s2629];
-  const SWord8  s2639 = table8[s2631];
-  const SWord8  s2640 = s2638 ^ s2639;
-  const SWord8  s2641 = s2637 ^ s2640;
-  const SWord8  s2642 = s2636 ^ s2641;
-  const SWord16 s2643 = (((SWord16) s2635) << 8) | ((SWord16) s2642);
-  const SWord8  s2644 = table8[s2624];
-  const SWord8  s2645 = table9[s2626];
-  const SWord8  s2646 = table6[s2629];
-  const SWord8  s2647 = table7[s2631];
-  const SWord8  s2648 = s2646 ^ s2647;
-  const SWord8  s2649 = s2645 ^ s2648;
-  const SWord8  s2650 = s2644 ^ s2649;
-  const SWord8  s2651 = table7[s2624];
-  const SWord8  s2652 = table8[s2626];
-  const SWord8  s2653 = table9[s2629];
-  const SWord8  s2654 = table6[s2631];
-  const SWord8  s2655 = s2653 ^ s2654;
-  const SWord8  s2656 = s2652 ^ s2655;
-  const SWord8  s2657 = s2651 ^ s2656;
-  const SWord16 s2658 = (((SWord16) s2650) << 8) | ((SWord16) s2657);
-  const SWord32 s2659 = (((SWord32) s2643) << 16) | ((SWord32) s2658);
-  const SWord32 s2660 = s2622 ^ s2659;
-  const SWord16 s2661 = (SWord16) s2660;
-  const SWord8  s2662 = (SWord8) (s2661 >> 8);
-  const SWord32 s2663 = table4[s2662];
-  const SWord32 s2664 = s2609 ^ s2663;
-  const SWord8  s2665 = (SWord8) (s2612 >> 8);
-  const SWord32 s2666 = table1[s2665];
-  const SWord8  s2667 = (SWord8) s2348;
-  const SWord32 s2668 = table3[s2667];
-  const SWord32 s2669 = s2666 ^ s2668;
-  const SWord8  s2670 = (SWord8) (s2619 >> 8);
-  const SWord32 s2671 = table4[s2670];
-  const SWord32 s2672 = s2669 ^ s2671;
-  const SWord8  s2673 = (SWord8) s2457;
-  const SWord32 s2674 = table5[s2673];
-  const SWord32 s2675 = s2672 ^ s2674;
-  const SWord16 s2676 = (SWord16) (s593 >> 16);
-  const SWord8  s2677 = (SWord8) (s2676 >> 8);
-  const SWord8  s2678 = table6[s2677];
-  const SWord8  s2679 = (SWord8) s2676;
-  const SWord8  s2680 = table7[s2679];
-  const SWord16 s2681 = (SWord16) s593;
-  const SWord8  s2682 = (SWord8) (s2681 >> 8);
-  const SWord8  s2683 = table8[s2682];
-  const SWord8  s2684 = (SWord8) s2681;
-  const SWord8  s2685 = table9[s2684];
-  const SWord8  s2686 = s2683 ^ s2685;
-  const SWord8  s2687 = s2680 ^ s2686;
-  const SWord8  s2688 = s2678 ^ s2687;
-  const SWord8  s2689 = table9[s2677];
-  const SWord8  s2690 = table6[s2679];
-  const SWord8  s2691 = table7[s2682];
-  const SWord8  s2692 = table8[s2684];
-  const SWord8  s2693 = s2691 ^ s2692;
-  const SWord8  s2694 = s2690 ^ s2693;
-  const SWord8  s2695 = s2689 ^ s2694;
-  const SWord16 s2696 = (((SWord16) s2688) << 8) | ((SWord16) s2695);
-  const SWord8  s2697 = table8[s2677];
-  const SWord8  s2698 = table9[s2679];
-  const SWord8  s2699 = table6[s2682];
-  const SWord8  s2700 = table7[s2684];
-  const SWord8  s2701 = s2699 ^ s2700;
-  const SWord8  s2702 = s2698 ^ s2701;
-  const SWord8  s2703 = s2697 ^ s2702;
-  const SWord8  s2704 = table7[s2677];
-  const SWord8  s2705 = table8[s2679];
-  const SWord8  s2706 = table9[s2682];
-  const SWord8  s2707 = table6[s2684];
-  const SWord8  s2708 = s2706 ^ s2707;
-  const SWord8  s2709 = s2705 ^ s2708;
-  const SWord8  s2710 = s2704 ^ s2709;
-  const SWord16 s2711 = (((SWord16) s2703) << 8) | ((SWord16) s2710);
-  const SWord32 s2712 = (((SWord32) s2696) << 16) | ((SWord32) s2711);
-  const SWord32 s2713 = s2675 ^ s2712;
-  const SWord16 s2714 = (SWord16) s2713;
-  const SWord8  s2715 = (SWord8) s2714;
-  const SWord32 s2716 = table5[s2715];
-  const SWord32 s2717 = s2664 ^ s2716;
-  const SWord16 s2718 = (SWord16) (s573 >> 16);
-  const SWord8  s2719 = (SWord8) (s2718 >> 8);
-  const SWord8  s2720 = table6[s2719];
-  const SWord8  s2721 = (SWord8) s2718;
-  const SWord8  s2722 = table7[s2721];
-  const SWord16 s2723 = (SWord16) s573;
-  const SWord8  s2724 = (SWord8) (s2723 >> 8);
-  const SWord8  s2725 = table8[s2724];
-  const SWord8  s2726 = (SWord8) s2723;
-  const SWord8  s2727 = table9[s2726];
-  const SWord8  s2728 = s2725 ^ s2727;
-  const SWord8  s2729 = s2722 ^ s2728;
-  const SWord8  s2730 = s2720 ^ s2729;
-  const SWord8  s2731 = table9[s2719];
-  const SWord8  s2732 = table6[s2721];
-  const SWord8  s2733 = table7[s2724];
-  const SWord8  s2734 = table8[s2726];
-  const SWord8  s2735 = s2733 ^ s2734;
-  const SWord8  s2736 = s2732 ^ s2735;
-  const SWord8  s2737 = s2731 ^ s2736;
-  const SWord16 s2738 = (((SWord16) s2730) << 8) | ((SWord16) s2737);
-  const SWord8  s2739 = table8[s2719];
-  const SWord8  s2740 = table9[s2721];
-  const SWord8  s2741 = table6[s2724];
-  const SWord8  s2742 = table7[s2726];
-  const SWord8  s2743 = s2741 ^ s2742;
-  const SWord8  s2744 = s2740 ^ s2743;
-  const SWord8  s2745 = s2739 ^ s2744;
-  const SWord8  s2746 = table7[s2719];
-  const SWord8  s2747 = table8[s2721];
-  const SWord8  s2748 = table9[s2724];
-  const SWord8  s2749 = table6[s2726];
-  const SWord8  s2750 = s2748 ^ s2749;
-  const SWord8  s2751 = s2747 ^ s2750;
-  const SWord8  s2752 = s2746 ^ s2751;
-  const SWord16 s2753 = (((SWord16) s2745) << 8) | ((SWord16) s2752);
-  const SWord32 s2754 = (((SWord32) s2738) << 16) | ((SWord32) s2753);
-  const SWord32 s2755 = s2717 ^ s2754;
-  const SWord16 s2756 = (SWord16) (s2755 >> 16);
-  const SWord8  s2757 = (SWord8) (s2756 >> 8);
-  const SWord32 s2758 = table1[s2757];
-  const SWord8  s2759 = (SWord8) (s2606 >> 8);
-  const SWord32 s2760 = table1[s2759];
-  const SWord16 s2761 = (SWord16) (s2660 >> 16);
-  const SWord8  s2762 = (SWord8) s2761;
-  const SWord32 s2763 = table3[s2762];
-  const SWord32 s2764 = s2760 ^ s2763;
-  const SWord8  s2765 = (SWord8) (s2714 >> 8);
-  const SWord32 s2766 = table4[s2765];
-  const SWord32 s2767 = s2764 ^ s2766;
-  const SWord16 s2768 = (SWord16) s2551;
-  const SWord8  s2769 = (SWord8) s2768;
-  const SWord32 s2770 = table5[s2769];
-  const SWord32 s2771 = s2767 ^ s2770;
-  const SWord16 s2772 = (SWord16) (s576 >> 16);
-  const SWord8  s2773 = (SWord8) (s2772 >> 8);
-  const SWord8  s2774 = table6[s2773];
-  const SWord8  s2775 = (SWord8) s2772;
-  const SWord8  s2776 = table7[s2775];
-  const SWord16 s2777 = (SWord16) s576;
-  const SWord8  s2778 = (SWord8) (s2777 >> 8);
-  const SWord8  s2779 = table8[s2778];
-  const SWord8  s2780 = (SWord8) s2777;
-  const SWord8  s2781 = table9[s2780];
-  const SWord8  s2782 = s2779 ^ s2781;
-  const SWord8  s2783 = s2776 ^ s2782;
-  const SWord8  s2784 = s2774 ^ s2783;
-  const SWord8  s2785 = table9[s2773];
-  const SWord8  s2786 = table6[s2775];
-  const SWord8  s2787 = table7[s2778];
-  const SWord8  s2788 = table8[s2780];
-  const SWord8  s2789 = s2787 ^ s2788;
-  const SWord8  s2790 = s2786 ^ s2789;
-  const SWord8  s2791 = s2785 ^ s2790;
-  const SWord16 s2792 = (((SWord16) s2784) << 8) | ((SWord16) s2791);
-  const SWord8  s2793 = table8[s2773];
-  const SWord8  s2794 = table9[s2775];
-  const SWord8  s2795 = table6[s2778];
-  const SWord8  s2796 = table7[s2780];
-  const SWord8  s2797 = s2795 ^ s2796;
-  const SWord8  s2798 = s2794 ^ s2797;
-  const SWord8  s2799 = s2793 ^ s2798;
-  const SWord8  s2800 = table7[s2773];
-  const SWord8  s2801 = table8[s2775];
-  const SWord8  s2802 = table9[s2778];
-  const SWord8  s2803 = table6[s2780];
-  const SWord8  s2804 = s2802 ^ s2803;
-  const SWord8  s2805 = s2801 ^ s2804;
-  const SWord8  s2806 = s2800 ^ s2805;
-  const SWord16 s2807 = (((SWord16) s2799) << 8) | ((SWord16) s2806);
-  const SWord32 s2808 = (((SWord32) s2792) << 16) | ((SWord32) s2807);
-  const SWord32 s2809 = s2771 ^ s2808;
-  const SWord16 s2810 = (SWord16) (s2809 >> 16);
-  const SWord8  s2811 = (SWord8) s2810;
-  const SWord32 s2812 = table3[s2811];
-  const SWord32 s2813 = s2758 ^ s2812;
-  const SWord8  s2814 = (SWord8) (s2761 >> 8);
-  const SWord32 s2815 = table1[s2814];
-  const SWord16 s2816 = (SWord16) (s2713 >> 16);
-  const SWord8  s2817 = (SWord8) s2816;
-  const SWord32 s2818 = table3[s2817];
-  const SWord32 s2819 = s2815 ^ s2818;
-  const SWord8  s2820 = (SWord8) (s2768 >> 8);
-  const SWord32 s2821 = table4[s2820];
-  const SWord32 s2822 = s2819 ^ s2821;
-  const SWord16 s2823 = (SWord16) s2605;
-  const SWord8  s2824 = (SWord8) s2823;
-  const SWord32 s2825 = table5[s2824];
-  const SWord32 s2826 = s2822 ^ s2825;
-  const SWord16 s2827 = (SWord16) (s575 >> 16);
-  const SWord8  s2828 = (SWord8) (s2827 >> 8);
-  const SWord8  s2829 = table6[s2828];
-  const SWord8  s2830 = (SWord8) s2827;
-  const SWord8  s2831 = table7[s2830];
-  const SWord16 s2832 = (SWord16) s575;
-  const SWord8  s2833 = (SWord8) (s2832 >> 8);
-  const SWord8  s2834 = table8[s2833];
-  const SWord8  s2835 = (SWord8) s2832;
-  const SWord8  s2836 = table9[s2835];
-  const SWord8  s2837 = s2834 ^ s2836;
-  const SWord8  s2838 = s2831 ^ s2837;
-  const SWord8  s2839 = s2829 ^ s2838;
-  const SWord8  s2840 = table9[s2828];
-  const SWord8  s2841 = table6[s2830];
-  const SWord8  s2842 = table7[s2833];
-  const SWord8  s2843 = table8[s2835];
-  const SWord8  s2844 = s2842 ^ s2843;
-  const SWord8  s2845 = s2841 ^ s2844;
-  const SWord8  s2846 = s2840 ^ s2845;
-  const SWord16 s2847 = (((SWord16) s2839) << 8) | ((SWord16) s2846);
-  const SWord8  s2848 = table8[s2828];
-  const SWord8  s2849 = table9[s2830];
-  const SWord8  s2850 = table6[s2833];
-  const SWord8  s2851 = table7[s2835];
-  const SWord8  s2852 = s2850 ^ s2851;
-  const SWord8  s2853 = s2849 ^ s2852;
-  const SWord8  s2854 = s2848 ^ s2853;
-  const SWord8  s2855 = table7[s2828];
-  const SWord8  s2856 = table8[s2830];
-  const SWord8  s2857 = table9[s2833];
-  const SWord8  s2858 = table6[s2835];
-  const SWord8  s2859 = s2857 ^ s2858;
-  const SWord8  s2860 = s2856 ^ s2859;
-  const SWord8  s2861 = s2855 ^ s2860;
-  const SWord16 s2862 = (((SWord16) s2854) << 8) | ((SWord16) s2861);
-  const SWord32 s2863 = (((SWord32) s2847) << 16) | ((SWord32) s2862);
-  const SWord32 s2864 = s2826 ^ s2863;
-  const SWord16 s2865 = (SWord16) s2864;
-  const SWord8  s2866 = (SWord8) (s2865 >> 8);
-  const SWord32 s2867 = table4[s2866];
-  const SWord32 s2868 = s2813 ^ s2867;
-  const SWord8  s2869 = (SWord8) (s2816 >> 8);
-  const SWord32 s2870 = table1[s2869];
-  const SWord8  s2871 = (SWord8) s2552;
-  const SWord32 s2872 = table3[s2871];
-  const SWord32 s2873 = s2870 ^ s2872;
-  const SWord8  s2874 = (SWord8) (s2823 >> 8);
-  const SWord32 s2875 = table4[s2874];
-  const SWord32 s2876 = s2873 ^ s2875;
-  const SWord8  s2877 = (SWord8) s2661;
-  const SWord32 s2878 = table5[s2877];
-  const SWord32 s2879 = s2876 ^ s2878;
-  const SWord16 s2880 = (SWord16) (s574 >> 16);
-  const SWord8  s2881 = (SWord8) (s2880 >> 8);
-  const SWord8  s2882 = table6[s2881];
-  const SWord8  s2883 = (SWord8) s2880;
-  const SWord8  s2884 = table7[s2883];
-  const SWord16 s2885 = (SWord16) s574;
-  const SWord8  s2886 = (SWord8) (s2885 >> 8);
-  const SWord8  s2887 = table8[s2886];
-  const SWord8  s2888 = (SWord8) s2885;
-  const SWord8  s2889 = table9[s2888];
-  const SWord8  s2890 = s2887 ^ s2889;
-  const SWord8  s2891 = s2884 ^ s2890;
-  const SWord8  s2892 = s2882 ^ s2891;
-  const SWord8  s2893 = table9[s2881];
-  const SWord8  s2894 = table6[s2883];
-  const SWord8  s2895 = table7[s2886];
-  const SWord8  s2896 = table8[s2888];
-  const SWord8  s2897 = s2895 ^ s2896;
-  const SWord8  s2898 = s2894 ^ s2897;
-  const SWord8  s2899 = s2893 ^ s2898;
-  const SWord16 s2900 = (((SWord16) s2892) << 8) | ((SWord16) s2899);
-  const SWord8  s2901 = table8[s2881];
-  const SWord8  s2902 = table9[s2883];
-  const SWord8  s2903 = table6[s2886];
-  const SWord8  s2904 = table7[s2888];
-  const SWord8  s2905 = s2903 ^ s2904;
-  const SWord8  s2906 = s2902 ^ s2905;
-  const SWord8  s2907 = s2901 ^ s2906;
-  const SWord8  s2908 = table7[s2881];
-  const SWord8  s2909 = table8[s2883];
-  const SWord8  s2910 = table9[s2886];
-  const SWord8  s2911 = table6[s2888];
-  const SWord8  s2912 = s2910 ^ s2911;
-  const SWord8  s2913 = s2909 ^ s2912;
-  const SWord8  s2914 = s2908 ^ s2913;
-  const SWord16 s2915 = (((SWord16) s2907) << 8) | ((SWord16) s2914);
-  const SWord32 s2916 = (((SWord32) s2900) << 16) | ((SWord32) s2915);
-  const SWord32 s2917 = s2879 ^ s2916;
-  const SWord16 s2918 = (SWord16) s2917;
-  const SWord8  s2919 = (SWord8) s2918;
-  const SWord32 s2920 = table5[s2919];
-  const SWord32 s2921 = s2868 ^ s2920;
-  const SWord16 s2922 = (SWord16) (s554 >> 16);
-  const SWord8  s2923 = (SWord8) (s2922 >> 8);
-  const SWord8  s2924 = table6[s2923];
-  const SWord8  s2925 = (SWord8) s2922;
-  const SWord8  s2926 = table7[s2925];
-  const SWord16 s2927 = (SWord16) s554;
-  const SWord8  s2928 = (SWord8) (s2927 >> 8);
-  const SWord8  s2929 = table8[s2928];
-  const SWord8  s2930 = (SWord8) s2927;
-  const SWord8  s2931 = table9[s2930];
-  const SWord8  s2932 = s2929 ^ s2931;
-  const SWord8  s2933 = s2926 ^ s2932;
-  const SWord8  s2934 = s2924 ^ s2933;
-  const SWord8  s2935 = table9[s2923];
-  const SWord8  s2936 = table6[s2925];
-  const SWord8  s2937 = table7[s2928];
-  const SWord8  s2938 = table8[s2930];
-  const SWord8  s2939 = s2937 ^ s2938;
-  const SWord8  s2940 = s2936 ^ s2939;
-  const SWord8  s2941 = s2935 ^ s2940;
-  const SWord16 s2942 = (((SWord16) s2934) << 8) | ((SWord16) s2941);
-  const SWord8  s2943 = table8[s2923];
-  const SWord8  s2944 = table9[s2925];
-  const SWord8  s2945 = table6[s2928];
-  const SWord8  s2946 = table7[s2930];
-  const SWord8  s2947 = s2945 ^ s2946;
-  const SWord8  s2948 = s2944 ^ s2947;
-  const SWord8  s2949 = s2943 ^ s2948;
-  const SWord8  s2950 = table7[s2923];
-  const SWord8  s2951 = table8[s2925];
-  const SWord8  s2952 = table9[s2928];
-  const SWord8  s2953 = table6[s2930];
-  const SWord8  s2954 = s2952 ^ s2953;
-  const SWord8  s2955 = s2951 ^ s2954;
-  const SWord8  s2956 = s2950 ^ s2955;
-  const SWord16 s2957 = (((SWord16) s2949) << 8) | ((SWord16) s2956);
-  const SWord32 s2958 = (((SWord32) s2942) << 16) | ((SWord32) s2957);
-  const SWord32 s2959 = s2921 ^ s2958;
-  const SWord16 s2960 = (SWord16) (s2959 >> 16);
-  const SWord8  s2961 = (SWord8) (s2960 >> 8);
-  const SWord32 s2962 = table1[s2961];
-  const SWord8  s2963 = (SWord8) (s2810 >> 8);
-  const SWord32 s2964 = table1[s2963];
-  const SWord16 s2965 = (SWord16) (s2864 >> 16);
-  const SWord8  s2966 = (SWord8) s2965;
-  const SWord32 s2967 = table3[s2966];
-  const SWord32 s2968 = s2964 ^ s2967;
-  const SWord8  s2969 = (SWord8) (s2918 >> 8);
-  const SWord32 s2970 = table4[s2969];
-  const SWord32 s2971 = s2968 ^ s2970;
-  const SWord16 s2972 = (SWord16) s2755;
-  const SWord8  s2973 = (SWord8) s2972;
-  const SWord32 s2974 = table5[s2973];
-  const SWord32 s2975 = s2971 ^ s2974;
-  const SWord16 s2976 = (SWord16) (s557 >> 16);
-  const SWord8  s2977 = (SWord8) (s2976 >> 8);
-  const SWord8  s2978 = table6[s2977];
-  const SWord8  s2979 = (SWord8) s2976;
-  const SWord8  s2980 = table7[s2979];
-  const SWord16 s2981 = (SWord16) s557;
-  const SWord8  s2982 = (SWord8) (s2981 >> 8);
-  const SWord8  s2983 = table8[s2982];
-  const SWord8  s2984 = (SWord8) s2981;
-  const SWord8  s2985 = table9[s2984];
-  const SWord8  s2986 = s2983 ^ s2985;
-  const SWord8  s2987 = s2980 ^ s2986;
-  const SWord8  s2988 = s2978 ^ s2987;
-  const SWord8  s2989 = table9[s2977];
-  const SWord8  s2990 = table6[s2979];
-  const SWord8  s2991 = table7[s2982];
-  const SWord8  s2992 = table8[s2984];
-  const SWord8  s2993 = s2991 ^ s2992;
-  const SWord8  s2994 = s2990 ^ s2993;
-  const SWord8  s2995 = s2989 ^ s2994;
-  const SWord16 s2996 = (((SWord16) s2988) << 8) | ((SWord16) s2995);
-  const SWord8  s2997 = table8[s2977];
-  const SWord8  s2998 = table9[s2979];
-  const SWord8  s2999 = table6[s2982];
-  const SWord8  s3000 = table7[s2984];
-  const SWord8  s3001 = s2999 ^ s3000;
-  const SWord8  s3002 = s2998 ^ s3001;
-  const SWord8  s3003 = s2997 ^ s3002;
-  const SWord8  s3004 = table7[s2977];
-  const SWord8  s3005 = table8[s2979];
-  const SWord8  s3006 = table9[s2982];
-  const SWord8  s3007 = table6[s2984];
-  const SWord8  s3008 = s3006 ^ s3007;
-  const SWord8  s3009 = s3005 ^ s3008;
-  const SWord8  s3010 = s3004 ^ s3009;
-  const SWord16 s3011 = (((SWord16) s3003) << 8) | ((SWord16) s3010);
-  const SWord32 s3012 = (((SWord32) s2996) << 16) | ((SWord32) s3011);
-  const SWord32 s3013 = s2975 ^ s3012;
-  const SWord16 s3014 = (SWord16) (s3013 >> 16);
-  const SWord8  s3015 = (SWord8) s3014;
-  const SWord32 s3016 = table3[s3015];
-  const SWord32 s3017 = s2962 ^ s3016;
-  const SWord8  s3018 = (SWord8) (s2965 >> 8);
-  const SWord32 s3019 = table1[s3018];
-  const SWord16 s3020 = (SWord16) (s2917 >> 16);
-  const SWord8  s3021 = (SWord8) s3020;
-  const SWord32 s3022 = table3[s3021];
-  const SWord32 s3023 = s3019 ^ s3022;
-  const SWord8  s3024 = (SWord8) (s2972 >> 8);
-  const SWord32 s3025 = table4[s3024];
-  const SWord32 s3026 = s3023 ^ s3025;
-  const SWord16 s3027 = (SWord16) s2809;
-  const SWord8  s3028 = (SWord8) s3027;
-  const SWord32 s3029 = table5[s3028];
-  const SWord32 s3030 = s3026 ^ s3029;
-  const SWord16 s3031 = (SWord16) (s556 >> 16);
-  const SWord8  s3032 = (SWord8) (s3031 >> 8);
-  const SWord8  s3033 = table6[s3032];
-  const SWord8  s3034 = (SWord8) s3031;
-  const SWord8  s3035 = table7[s3034];
-  const SWord16 s3036 = (SWord16) s556;
-  const SWord8  s3037 = (SWord8) (s3036 >> 8);
-  const SWord8  s3038 = table8[s3037];
-  const SWord8  s3039 = (SWord8) s3036;
-  const SWord8  s3040 = table9[s3039];
-  const SWord8  s3041 = s3038 ^ s3040;
-  const SWord8  s3042 = s3035 ^ s3041;
-  const SWord8  s3043 = s3033 ^ s3042;
-  const SWord8  s3044 = table9[s3032];
-  const SWord8  s3045 = table6[s3034];
-  const SWord8  s3046 = table7[s3037];
-  const SWord8  s3047 = table8[s3039];
-  const SWord8  s3048 = s3046 ^ s3047;
-  const SWord8  s3049 = s3045 ^ s3048;
-  const SWord8  s3050 = s3044 ^ s3049;
-  const SWord16 s3051 = (((SWord16) s3043) << 8) | ((SWord16) s3050);
-  const SWord8  s3052 = table8[s3032];
-  const SWord8  s3053 = table9[s3034];
-  const SWord8  s3054 = table6[s3037];
-  const SWord8  s3055 = table7[s3039];
-  const SWord8  s3056 = s3054 ^ s3055;
-  const SWord8  s3057 = s3053 ^ s3056;
-  const SWord8  s3058 = s3052 ^ s3057;
-  const SWord8  s3059 = table7[s3032];
-  const SWord8  s3060 = table8[s3034];
-  const SWord8  s3061 = table9[s3037];
-  const SWord8  s3062 = table6[s3039];
-  const SWord8  s3063 = s3061 ^ s3062;
-  const SWord8  s3064 = s3060 ^ s3063;
-  const SWord8  s3065 = s3059 ^ s3064;
-  const SWord16 s3066 = (((SWord16) s3058) << 8) | ((SWord16) s3065);
-  const SWord32 s3067 = (((SWord32) s3051) << 16) | ((SWord32) s3066);
-  const SWord32 s3068 = s3030 ^ s3067;
-  const SWord16 s3069 = (SWord16) s3068;
-  const SWord8  s3070 = (SWord8) (s3069 >> 8);
-  const SWord32 s3071 = table4[s3070];
-  const SWord32 s3072 = s3017 ^ s3071;
-  const SWord8  s3073 = (SWord8) (s3020 >> 8);
-  const SWord32 s3074 = table1[s3073];
-  const SWord8  s3075 = (SWord8) s2756;
-  const SWord32 s3076 = table3[s3075];
-  const SWord32 s3077 = s3074 ^ s3076;
-  const SWord8  s3078 = (SWord8) (s3027 >> 8);
-  const SWord32 s3079 = table4[s3078];
-  const SWord32 s3080 = s3077 ^ s3079;
-  const SWord8  s3081 = (SWord8) s2865;
-  const SWord32 s3082 = table5[s3081];
-  const SWord32 s3083 = s3080 ^ s3082;
-  const SWord16 s3084 = (SWord16) (s555 >> 16);
-  const SWord8  s3085 = (SWord8) (s3084 >> 8);
-  const SWord8  s3086 = table6[s3085];
-  const SWord8  s3087 = (SWord8) s3084;
-  const SWord8  s3088 = table7[s3087];
-  const SWord16 s3089 = (SWord16) s555;
-  const SWord8  s3090 = (SWord8) (s3089 >> 8);
-  const SWord8  s3091 = table8[s3090];
-  const SWord8  s3092 = (SWord8) s3089;
-  const SWord8  s3093 = table9[s3092];
-  const SWord8  s3094 = s3091 ^ s3093;
-  const SWord8  s3095 = s3088 ^ s3094;
-  const SWord8  s3096 = s3086 ^ s3095;
-  const SWord8  s3097 = table9[s3085];
-  const SWord8  s3098 = table6[s3087];
-  const SWord8  s3099 = table7[s3090];
-  const SWord8  s3100 = table8[s3092];
-  const SWord8  s3101 = s3099 ^ s3100;
-  const SWord8  s3102 = s3098 ^ s3101;
-  const SWord8  s3103 = s3097 ^ s3102;
-  const SWord16 s3104 = (((SWord16) s3096) << 8) | ((SWord16) s3103);
-  const SWord8  s3105 = table8[s3085];
-  const SWord8  s3106 = table9[s3087];
-  const SWord8  s3107 = table6[s3090];
-  const SWord8  s3108 = table7[s3092];
-  const SWord8  s3109 = s3107 ^ s3108;
-  const SWord8  s3110 = s3106 ^ s3109;
-  const SWord8  s3111 = s3105 ^ s3110;
-  const SWord8  s3112 = table7[s3085];
-  const SWord8  s3113 = table8[s3087];
-  const SWord8  s3114 = table9[s3090];
-  const SWord8  s3115 = table6[s3092];
-  const SWord8  s3116 = s3114 ^ s3115;
-  const SWord8  s3117 = s3113 ^ s3116;
-  const SWord8  s3118 = s3112 ^ s3117;
-  const SWord16 s3119 = (((SWord16) s3111) << 8) | ((SWord16) s3118);
-  const SWord32 s3120 = (((SWord32) s3104) << 16) | ((SWord32) s3119);
-  const SWord32 s3121 = s3083 ^ s3120;
-  const SWord16 s3122 = (SWord16) s3121;
-  const SWord8  s3123 = (SWord8) s3122;
-  const SWord32 s3124 = table5[s3123];
-  const SWord32 s3125 = s3072 ^ s3124;
-  const SWord16 s3126 = (SWord16) (s535 >> 16);
-  const SWord8  s3127 = (SWord8) (s3126 >> 8);
-  const SWord8  s3128 = table6[s3127];
-  const SWord8  s3129 = (SWord8) s3126;
-  const SWord8  s3130 = table7[s3129];
-  const SWord16 s3131 = (SWord16) s535;
-  const SWord8  s3132 = (SWord8) (s3131 >> 8);
-  const SWord8  s3133 = table8[s3132];
-  const SWord8  s3134 = (SWord8) s3131;
-  const SWord8  s3135 = table9[s3134];
-  const SWord8  s3136 = s3133 ^ s3135;
-  const SWord8  s3137 = s3130 ^ s3136;
-  const SWord8  s3138 = s3128 ^ s3137;
-  const SWord8  s3139 = table9[s3127];
-  const SWord8  s3140 = table6[s3129];
-  const SWord8  s3141 = table7[s3132];
-  const SWord8  s3142 = table8[s3134];
-  const SWord8  s3143 = s3141 ^ s3142;
-  const SWord8  s3144 = s3140 ^ s3143;
-  const SWord8  s3145 = s3139 ^ s3144;
-  const SWord16 s3146 = (((SWord16) s3138) << 8) | ((SWord16) s3145);
-  const SWord8  s3147 = table8[s3127];
-  const SWord8  s3148 = table9[s3129];
-  const SWord8  s3149 = table6[s3132];
-  const SWord8  s3150 = table7[s3134];
-  const SWord8  s3151 = s3149 ^ s3150;
-  const SWord8  s3152 = s3148 ^ s3151;
-  const SWord8  s3153 = s3147 ^ s3152;
-  const SWord8  s3154 = table7[s3127];
-  const SWord8  s3155 = table8[s3129];
-  const SWord8  s3156 = table9[s3132];
-  const SWord8  s3157 = table6[s3134];
-  const SWord8  s3158 = s3156 ^ s3157;
-  const SWord8  s3159 = s3155 ^ s3158;
-  const SWord8  s3160 = s3154 ^ s3159;
-  const SWord16 s3161 = (((SWord16) s3153) << 8) | ((SWord16) s3160);
-  const SWord32 s3162 = (((SWord32) s3146) << 16) | ((SWord32) s3161);
-  const SWord32 s3163 = s3125 ^ s3162;
-  const SWord16 s3164 = (SWord16) (s3163 >> 16);
-  const SWord8  s3165 = (SWord8) (s3164 >> 8);
-  const SWord8  s3166 = table0[s3165];
-  const SWord8  s3167 = (SWord8) (s3014 >> 8);
-  const SWord32 s3168 = table1[s3167];
-  const SWord16 s3169 = (SWord16) (s3068 >> 16);
-  const SWord8  s3170 = (SWord8) s3169;
-  const SWord32 s3171 = table3[s3170];
-  const SWord32 s3172 = s3168 ^ s3171;
-  const SWord8  s3173 = (SWord8) (s3122 >> 8);
-  const SWord32 s3174 = table4[s3173];
-  const SWord32 s3175 = s3172 ^ s3174;
-  const SWord16 s3176 = (SWord16) s2959;
-  const SWord8  s3177 = (SWord8) s3176;
-  const SWord32 s3178 = table5[s3177];
-  const SWord32 s3179 = s3175 ^ s3178;
-  const SWord16 s3180 = (SWord16) (s538 >> 16);
-  const SWord8  s3181 = (SWord8) (s3180 >> 8);
-  const SWord8  s3182 = table6[s3181];
-  const SWord8  s3183 = (SWord8) s3180;
-  const SWord8  s3184 = table7[s3183];
-  const SWord16 s3185 = (SWord16) s538;
-  const SWord8  s3186 = (SWord8) (s3185 >> 8);
-  const SWord8  s3187 = table8[s3186];
-  const SWord8  s3188 = (SWord8) s3185;
-  const SWord8  s3189 = table9[s3188];
-  const SWord8  s3190 = s3187 ^ s3189;
-  const SWord8  s3191 = s3184 ^ s3190;
-  const SWord8  s3192 = s3182 ^ s3191;
-  const SWord8  s3193 = table9[s3181];
-  const SWord8  s3194 = table6[s3183];
-  const SWord8  s3195 = table7[s3186];
-  const SWord8  s3196 = table8[s3188];
-  const SWord8  s3197 = s3195 ^ s3196;
-  const SWord8  s3198 = s3194 ^ s3197;
-  const SWord8  s3199 = s3193 ^ s3198;
-  const SWord16 s3200 = (((SWord16) s3192) << 8) | ((SWord16) s3199);
-  const SWord8  s3201 = table8[s3181];
-  const SWord8  s3202 = table9[s3183];
-  const SWord8  s3203 = table6[s3186];
-  const SWord8  s3204 = table7[s3188];
-  const SWord8  s3205 = s3203 ^ s3204;
-  const SWord8  s3206 = s3202 ^ s3205;
-  const SWord8  s3207 = s3201 ^ s3206;
-  const SWord8  s3208 = table7[s3181];
-  const SWord8  s3209 = table8[s3183];
-  const SWord8  s3210 = table9[s3186];
-  const SWord8  s3211 = table6[s3188];
-  const SWord8  s3212 = s3210 ^ s3211;
-  const SWord8  s3213 = s3209 ^ s3212;
-  const SWord8  s3214 = s3208 ^ s3213;
-  const SWord16 s3215 = (((SWord16) s3207) << 8) | ((SWord16) s3214);
-  const SWord32 s3216 = (((SWord32) s3200) << 16) | ((SWord32) s3215);
-  const SWord32 s3217 = s3179 ^ s3216;
-  const SWord16 s3218 = (SWord16) (s3217 >> 16);
-  const SWord8  s3219 = (SWord8) s3218;
-  const SWord8  s3220 = table0[s3219];
-  const SWord16 s3221 = (((SWord16) s3166) << 8) | ((SWord16) s3220);
-  const SWord8  s3222 = (SWord8) (s3169 >> 8);
-  const SWord32 s3223 = table1[s3222];
-  const SWord16 s3224 = (SWord16) (s3121 >> 16);
-  const SWord8  s3225 = (SWord8) s3224;
-  const SWord32 s3226 = table3[s3225];
-  const SWord32 s3227 = s3223 ^ s3226;
-  const SWord8  s3228 = (SWord8) (s3176 >> 8);
-  const SWord32 s3229 = table4[s3228];
-  const SWord32 s3230 = s3227 ^ s3229;
-  const SWord16 s3231 = (SWord16) s3013;
-  const SWord8  s3232 = (SWord8) s3231;
-  const SWord32 s3233 = table5[s3232];
-  const SWord32 s3234 = s3230 ^ s3233;
-  const SWord16 s3235 = (SWord16) (s537 >> 16);
-  const SWord8  s3236 = (SWord8) (s3235 >> 8);
-  const SWord8  s3237 = table6[s3236];
-  const SWord8  s3238 = (SWord8) s3235;
-  const SWord8  s3239 = table7[s3238];
-  const SWord16 s3240 = (SWord16) s537;
-  const SWord8  s3241 = (SWord8) (s3240 >> 8);
-  const SWord8  s3242 = table8[s3241];
-  const SWord8  s3243 = (SWord8) s3240;
-  const SWord8  s3244 = table9[s3243];
-  const SWord8  s3245 = s3242 ^ s3244;
-  const SWord8  s3246 = s3239 ^ s3245;
-  const SWord8  s3247 = s3237 ^ s3246;
-  const SWord8  s3248 = table9[s3236];
-  const SWord8  s3249 = table6[s3238];
-  const SWord8  s3250 = table7[s3241];
-  const SWord8  s3251 = table8[s3243];
-  const SWord8  s3252 = s3250 ^ s3251;
-  const SWord8  s3253 = s3249 ^ s3252;
-  const SWord8  s3254 = s3248 ^ s3253;
-  const SWord16 s3255 = (((SWord16) s3247) << 8) | ((SWord16) s3254);
-  const SWord8  s3256 = table8[s3236];
-  const SWord8  s3257 = table9[s3238];
-  const SWord8  s3258 = table6[s3241];
-  const SWord8  s3259 = table7[s3243];
-  const SWord8  s3260 = s3258 ^ s3259;
-  const SWord8  s3261 = s3257 ^ s3260;
-  const SWord8  s3262 = s3256 ^ s3261;
-  const SWord8  s3263 = table7[s3236];
-  const SWord8  s3264 = table8[s3238];
-  const SWord8  s3265 = table9[s3241];
-  const SWord8  s3266 = table6[s3243];
-  const SWord8  s3267 = s3265 ^ s3266;
-  const SWord8  s3268 = s3264 ^ s3267;
-  const SWord8  s3269 = s3263 ^ s3268;
-  const SWord16 s3270 = (((SWord16) s3262) << 8) | ((SWord16) s3269);
-  const SWord32 s3271 = (((SWord32) s3255) << 16) | ((SWord32) s3270);
-  const SWord32 s3272 = s3234 ^ s3271;
-  const SWord16 s3273 = (SWord16) s3272;
-  const SWord8  s3274 = (SWord8) (s3273 >> 8);
-  const SWord8  s3275 = table0[s3274];
-  const SWord8  s3276 = (SWord8) (s3224 >> 8);
-  const SWord32 s3277 = table1[s3276];
-  const SWord8  s3278 = (SWord8) s2960;
-  const SWord32 s3279 = table3[s3278];
-  const SWord32 s3280 = s3277 ^ s3279;
-  const SWord8  s3281 = (SWord8) (s3231 >> 8);
-  const SWord32 s3282 = table4[s3281];
-  const SWord32 s3283 = s3280 ^ s3282;
-  const SWord8  s3284 = (SWord8) s3069;
-  const SWord32 s3285 = table5[s3284];
-  const SWord32 s3286 = s3283 ^ s3285;
-  const SWord16 s3287 = (SWord16) (s536 >> 16);
-  const SWord8  s3288 = (SWord8) (s3287 >> 8);
-  const SWord8  s3289 = table6[s3288];
-  const SWord8  s3290 = (SWord8) s3287;
-  const SWord8  s3291 = table7[s3290];
-  const SWord16 s3292 = (SWord16) s536;
-  const SWord8  s3293 = (SWord8) (s3292 >> 8);
-  const SWord8  s3294 = table8[s3293];
-  const SWord8  s3295 = (SWord8) s3292;
-  const SWord8  s3296 = table9[s3295];
-  const SWord8  s3297 = s3294 ^ s3296;
-  const SWord8  s3298 = s3291 ^ s3297;
-  const SWord8  s3299 = s3289 ^ s3298;
-  const SWord8  s3300 = table9[s3288];
-  const SWord8  s3301 = table6[s3290];
-  const SWord8  s3302 = table7[s3293];
-  const SWord8  s3303 = table8[s3295];
-  const SWord8  s3304 = s3302 ^ s3303;
-  const SWord8  s3305 = s3301 ^ s3304;
-  const SWord8  s3306 = s3300 ^ s3305;
-  const SWord16 s3307 = (((SWord16) s3299) << 8) | ((SWord16) s3306);
-  const SWord8  s3308 = table8[s3288];
-  const SWord8  s3309 = table9[s3290];
-  const SWord8  s3310 = table6[s3293];
-  const SWord8  s3311 = table7[s3295];
-  const SWord8  s3312 = s3310 ^ s3311;
-  const SWord8  s3313 = s3309 ^ s3312;
-  const SWord8  s3314 = s3308 ^ s3313;
-  const SWord8  s3315 = table7[s3288];
-  const SWord8  s3316 = table8[s3290];
-  const SWord8  s3317 = table9[s3293];
-  const SWord8  s3318 = table6[s3295];
-  const SWord8  s3319 = s3317 ^ s3318;
-  const SWord8  s3320 = s3316 ^ s3319;
-  const SWord8  s3321 = s3315 ^ s3320;
-  const SWord16 s3322 = (((SWord16) s3314) << 8) | ((SWord16) s3321);
-  const SWord32 s3323 = (((SWord32) s3307) << 16) | ((SWord32) s3322);
-  const SWord32 s3324 = s3286 ^ s3323;
-  const SWord16 s3325 = (SWord16) s3324;
-  const SWord8  s3326 = (SWord8) s3325;
-  const SWord8  s3327 = table0[s3326];
-  const SWord16 s3328 = (((SWord16) s3275) << 8) | ((SWord16) s3327);
-  const SWord32 s3329 = (((SWord32) s3221) << 16) | ((SWord32) s3328);
-  const SWord32 s3330 = s4 ^ s3329;
-  const SWord16 s3331 = (SWord16) (s3324 >> 16);
-  const SWord8  s3332 = (SWord8) (s3331 >> 8);
-  const SWord8  s3333 = table0[s3332];
-  const SWord8  s3334 = (SWord8) s3164;
-  const SWord8  s3335 = table0[s3334];
-  const SWord16 s3336 = (((SWord16) s3333) << 8) | ((SWord16) s3335);
-  const SWord16 s3337 = (SWord16) s3217;
-  const SWord8  s3338 = (SWord8) (s3337 >> 8);
-  const SWord8  s3339 = table0[s3338];
-  const SWord8  s3340 = (SWord8) s3273;
-  const SWord8  s3341 = table0[s3340];
-  const SWord16 s3342 = (((SWord16) s3339) << 8) | ((SWord16) s3341);
-  const SWord32 s3343 = (((SWord32) s3336) << 16) | ((SWord32) s3342);
-  const SWord32 s3344 = s5 ^ s3343;
-  const SWord16 s3345 = (SWord16) (s3272 >> 16);
-  const SWord8  s3346 = (SWord8) (s3345 >> 8);
-  const SWord8  s3347 = table0[s3346];
-  const SWord8  s3348 = (SWord8) s3331;
-  const SWord8  s3349 = table0[s3348];
-  const SWord16 s3350 = (((SWord16) s3347) << 8) | ((SWord16) s3349);
-  const SWord16 s3351 = (SWord16) s3163;
-  const SWord8  s3352 = (SWord8) (s3351 >> 8);
-  const SWord8  s3353 = table0[s3352];
-  const SWord8  s3354 = (SWord8) s3337;
-  const SWord8  s3355 = table0[s3354];
-  const SWord16 s3356 = (((SWord16) s3353) << 8) | ((SWord16) s3355);
-  const SWord32 s3357 = (((SWord32) s3350) << 16) | ((SWord32) s3356);
-  const SWord32 s3358 = s6 ^ s3357;
-  const SWord8  s3359 = (SWord8) (s3218 >> 8);
-  const SWord8  s3360 = table0[s3359];
-  const SWord8  s3361 = (SWord8) s3345;
-  const SWord8  s3362 = table0[s3361];
-  const SWord16 s3363 = (((SWord16) s3360) << 8) | ((SWord16) s3362);
-  const SWord8  s3364 = (SWord8) (s3325 >> 8);
-  const SWord8  s3365 = table0[s3364];
-  const SWord8  s3366 = (SWord8) s3351;
-  const SWord8  s3367 = table0[s3366];
-  const SWord16 s3368 = (((SWord16) s3365) << 8) | ((SWord16) s3367);
-  const SWord32 s3369 = (((SWord32) s3363) << 16) | ((SWord32) s3368);
-  const SWord32 s3370 = s7 ^ s3369;
-  
-  ct[0] = s3330;
-  ct[1] = s3344;
-  ct[2] = s3358;
-  ct[3] = s3370;
-}
-== END: "aes128Dec.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Enc.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Enc.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Enc.gold
+++ /dev/null
@@ -1,1155 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for aes128Enc. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: aes128Enc_driver
-
-aes128Enc.o: aes128Enc.c aes128Enc.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-aes128Enc_driver.o: aes128Enc_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-aes128Enc_driver: aes128Enc.o aes128Enc_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f aes128Enc_driver
-== END: "Makefile" ==================
-== BEGIN: "aes128Enc.h" ================
-/* Header file for aes128Enc. Automatically generated by SBV. Do not edit! */
-
-#ifndef __aes128Enc__HEADER_INCLUDED__
-#define __aes128Enc__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-void aes128Enc(const SWord32 *pt, const SWord32 *key, SWord32 *ct);
-
-#endif /* __aes128Enc__HEADER_INCLUDED__ */
-== END: "aes128Enc.h" ==================
-== BEGIN: "aes128Enc_driver.c" ================
-/* Example driver program for aes128Enc. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "aes128Enc.h"
-
-int main(void)
-{
-  const SWord32 pt[4] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array pt:\n");
-  int pt_ctr;
-  for(pt_ctr = 0;  pt_ctr < 4 ; ++pt_ctr)
-    printf("  pt[%d] = 0x%08"PRIx32"UL\n", pt_ctr ,pt[pt_ctr]);
-  
-  const SWord32 key[4] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array key:\n");
-  int key_ctr;
-  for(key_ctr = 0;  key_ctr < 4 ; ++key_ctr)
-    printf("  key[%d] = 0x%08"PRIx32"UL\n", key_ctr ,key[key_ctr]);
-  
-  SWord32 ct[4];
-  
-  aes128Enc(pt, key, ct);
-  
-  printf("aes128Enc(pt, key, ct) ->\n");
-  int ct_ctr;
-  for(ct_ctr = 0;  ct_ctr < 4 ; ++ct_ctr)
-    printf("  ct[%d] = 0x%08"PRIx32"UL\n", ct_ctr ,ct[ct_ctr]);
-
-  return 0;
-}
-== END: "aes128Enc_driver.c" ==================
-== BEGIN: "aes128Enc.c" ================
-/* File: "aes128Enc.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "aes128Enc.h"
-
-void aes128Enc(const SWord32 *pt, const SWord32 *key, SWord32 *ct)
-{
-  const SWord32 s0 = pt[0];
-  const SWord32 s1 = pt[1];
-  const SWord32 s2 = pt[2];
-  const SWord32 s3 = pt[3];
-  const SWord32 s4 = key[0];
-  const SWord32 s5 = key[1];
-  const SWord32 s6 = key[2];
-  const SWord32 s7 = key[3];
-  static const SWord8 table0[] = {
-       99, 124, 119, 123, 242, 107, 111, 197,  48,   1, 103,  43, 254,
-      215, 171, 118, 202, 130, 201, 125, 250,  89,  71, 240, 173, 212,
-      162, 175, 156, 164, 114, 192, 183, 253, 147,  38,  54,  63, 247,
-      204,  52, 165, 229, 241, 113, 216,  49,  21,   4, 199,  35, 195,
-       24, 150,   5, 154,   7,  18, 128, 226, 235,  39, 178, 117,   9,
-      131,  44,  26,  27, 110,  90, 160,  82,  59, 214, 179,  41, 227,
-       47, 132,  83, 209,   0, 237,  32, 252, 177,  91, 106, 203, 190,
-       57,  74,  76,  88, 207, 208, 239, 170, 251,  67,  77,  51, 133,
-       69, 249,   2, 127,  80,  60, 159, 168,  81, 163,  64, 143, 146,
-      157,  56, 245, 188, 182, 218,  33,  16, 255, 243, 210, 205,  12,
-       19, 236,  95, 151,  68,  23, 196, 167, 126,  61, 100,  93,  25,
-      115,  96, 129,  79, 220,  34,  42, 144, 136,  70, 238, 184,  20,
-      222,  94,  11, 219, 224,  50,  58,  10,  73,   6,  36,  92, 194,
-      211, 172,  98, 145, 149, 228, 121, 231, 200,  55, 109, 141, 213,
-       78, 169, 108,  86, 244, 234, 101, 122, 174,   8, 186, 120,  37,
-       46,  28, 166, 180, 198, 232, 221, 116,  31,  75, 189, 139, 138,
-      112,  62, 181, 102,  72,   3, 246,  14,  97,  53,  87, 185, 134,
-      193,  29, 158, 225, 248, 152,  17, 105, 217, 142, 148, 155,  30,
-      135, 233, 206,  85,  40, 223, 140, 161, 137,  13, 191, 230,  66,
-      104,  65, 153,  45,  15, 176,  84, 187,  22
-  };
-  static const SWord32 table1[] = {
-      0xc66363a5UL, 0xf87c7c84UL, 0xee777799UL, 0xf67b7b8dUL,
-      0xfff2f20dUL, 0xd66b6bbdUL, 0xde6f6fb1UL, 0x91c5c554UL,
-      0x60303050UL, 0x02010103UL, 0xce6767a9UL, 0x562b2b7dUL,
-      0xe7fefe19UL, 0xb5d7d762UL, 0x4dababe6UL, 0xec76769aUL,
-      0x8fcaca45UL, 0x1f82829dUL, 0x89c9c940UL, 0xfa7d7d87UL,
-      0xeffafa15UL, 0xb25959ebUL, 0x8e4747c9UL, 0xfbf0f00bUL,
-      0x41adadecUL, 0xb3d4d467UL, 0x5fa2a2fdUL, 0x45afafeaUL,
-      0x239c9cbfUL, 0x53a4a4f7UL, 0xe4727296UL, 0x9bc0c05bUL,
-      0x75b7b7c2UL, 0xe1fdfd1cUL, 0x3d9393aeUL, 0x4c26266aUL,
-      0x6c36365aUL, 0x7e3f3f41UL, 0xf5f7f702UL, 0x83cccc4fUL,
-      0x6834345cUL, 0x51a5a5f4UL, 0xd1e5e534UL, 0xf9f1f108UL,
-      0xe2717193UL, 0xabd8d873UL, 0x62313153UL, 0x2a15153fUL,
-      0x0804040cUL, 0x95c7c752UL, 0x46232365UL, 0x9dc3c35eUL,
-      0x30181828UL, 0x379696a1UL, 0x0a05050fUL, 0x2f9a9ab5UL,
-      0x0e070709UL, 0x24121236UL, 0x1b80809bUL, 0xdfe2e23dUL,
-      0xcdebeb26UL, 0x4e272769UL, 0x7fb2b2cdUL, 0xea75759fUL,
-      0x1209091bUL, 0x1d83839eUL, 0x582c2c74UL, 0x341a1a2eUL,
-      0x361b1b2dUL, 0xdc6e6eb2UL, 0xb45a5aeeUL, 0x5ba0a0fbUL,
-      0xa45252f6UL, 0x763b3b4dUL, 0xb7d6d661UL, 0x7db3b3ceUL,
-      0x5229297bUL, 0xdde3e33eUL, 0x5e2f2f71UL, 0x13848497UL,
-      0xa65353f5UL, 0xb9d1d168UL, 0x00000000UL, 0xc1eded2cUL,
-      0x40202060UL, 0xe3fcfc1fUL, 0x79b1b1c8UL, 0xb65b5bedUL,
-      0xd46a6abeUL, 0x8dcbcb46UL, 0x67bebed9UL, 0x7239394bUL,
-      0x944a4adeUL, 0x984c4cd4UL, 0xb05858e8UL, 0x85cfcf4aUL,
-      0xbbd0d06bUL, 0xc5efef2aUL, 0x4faaaae5UL, 0xedfbfb16UL,
-      0x864343c5UL, 0x9a4d4dd7UL, 0x66333355UL, 0x11858594UL,
-      0x8a4545cfUL, 0xe9f9f910UL, 0x04020206UL, 0xfe7f7f81UL,
-      0xa05050f0UL, 0x783c3c44UL, 0x259f9fbaUL, 0x4ba8a8e3UL,
-      0xa25151f3UL, 0x5da3a3feUL, 0x804040c0UL, 0x058f8f8aUL,
-      0x3f9292adUL, 0x219d9dbcUL, 0x70383848UL, 0xf1f5f504UL,
-      0x63bcbcdfUL, 0x77b6b6c1UL, 0xafdada75UL, 0x42212163UL,
-      0x20101030UL, 0xe5ffff1aUL, 0xfdf3f30eUL, 0xbfd2d26dUL,
-      0x81cdcd4cUL, 0x180c0c14UL, 0x26131335UL, 0xc3ecec2fUL,
-      0xbe5f5fe1UL, 0x359797a2UL, 0x884444ccUL, 0x2e171739UL,
-      0x93c4c457UL, 0x55a7a7f2UL, 0xfc7e7e82UL, 0x7a3d3d47UL,
-      0xc86464acUL, 0xba5d5de7UL, 0x3219192bUL, 0xe6737395UL,
-      0xc06060a0UL, 0x19818198UL, 0x9e4f4fd1UL, 0xa3dcdc7fUL,
-      0x44222266UL, 0x542a2a7eUL, 0x3b9090abUL, 0x0b888883UL,
-      0x8c4646caUL, 0xc7eeee29UL, 0x6bb8b8d3UL, 0x2814143cUL,
-      0xa7dede79UL, 0xbc5e5ee2UL, 0x160b0b1dUL, 0xaddbdb76UL,
-      0xdbe0e03bUL, 0x64323256UL, 0x743a3a4eUL, 0x140a0a1eUL,
-      0x924949dbUL, 0x0c06060aUL, 0x4824246cUL, 0xb85c5ce4UL,
-      0x9fc2c25dUL, 0xbdd3d36eUL, 0x43acacefUL, 0xc46262a6UL,
-      0x399191a8UL, 0x319595a4UL, 0xd3e4e437UL, 0xf279798bUL,
-      0xd5e7e732UL, 0x8bc8c843UL, 0x6e373759UL, 0xda6d6db7UL,
-      0x018d8d8cUL, 0xb1d5d564UL, 0x9c4e4ed2UL, 0x49a9a9e0UL,
-      0xd86c6cb4UL, 0xac5656faUL, 0xf3f4f407UL, 0xcfeaea25UL,
-      0xca6565afUL, 0xf47a7a8eUL, 0x47aeaee9UL, 0x10080818UL,
-      0x6fbabad5UL, 0xf0787888UL, 0x4a25256fUL, 0x5c2e2e72UL,
-      0x381c1c24UL, 0x57a6a6f1UL, 0x73b4b4c7UL, 0x97c6c651UL,
-      0xcbe8e823UL, 0xa1dddd7cUL, 0xe874749cUL, 0x3e1f1f21UL,
-      0x964b4bddUL, 0x61bdbddcUL, 0x0d8b8b86UL, 0x0f8a8a85UL,
-      0xe0707090UL, 0x7c3e3e42UL, 0x71b5b5c4UL, 0xcc6666aaUL,
-      0x904848d8UL, 0x06030305UL, 0xf7f6f601UL, 0x1c0e0e12UL,
-      0xc26161a3UL, 0x6a35355fUL, 0xae5757f9UL, 0x69b9b9d0UL,
-      0x17868691UL, 0x99c1c158UL, 0x3a1d1d27UL, 0x279e9eb9UL,
-      0xd9e1e138UL, 0xebf8f813UL, 0x2b9898b3UL, 0x22111133UL,
-      0xd26969bbUL, 0xa9d9d970UL, 0x078e8e89UL, 0x339494a7UL,
-      0x2d9b9bb6UL, 0x3c1e1e22UL, 0x15878792UL, 0xc9e9e920UL,
-      0x87cece49UL, 0xaa5555ffUL, 0x50282878UL, 0xa5dfdf7aUL,
-      0x038c8c8fUL, 0x59a1a1f8UL, 0x09898980UL, 0x1a0d0d17UL,
-      0x65bfbfdaUL, 0xd7e6e631UL, 0x844242c6UL, 0xd06868b8UL,
-      0x824141c3UL, 0x299999b0UL, 0x5a2d2d77UL, 0x1e0f0f11UL,
-      0x7bb0b0cbUL, 0xa85454fcUL, 0x6dbbbbd6UL, 0x2c16163aUL
-  };
-  static const SWord32 table2[] = {
-      0xa5c66363UL, 0x84f87c7cUL, 0x99ee7777UL, 0x8df67b7bUL,
-      0x0dfff2f2UL, 0xbdd66b6bUL, 0xb1de6f6fUL, 0x5491c5c5UL,
-      0x50603030UL, 0x03020101UL, 0xa9ce6767UL, 0x7d562b2bUL,
-      0x19e7fefeUL, 0x62b5d7d7UL, 0xe64dababUL, 0x9aec7676UL,
-      0x458fcacaUL, 0x9d1f8282UL, 0x4089c9c9UL, 0x87fa7d7dUL,
-      0x15effafaUL, 0xebb25959UL, 0xc98e4747UL, 0x0bfbf0f0UL,
-      0xec41adadUL, 0x67b3d4d4UL, 0xfd5fa2a2UL, 0xea45afafUL,
-      0xbf239c9cUL, 0xf753a4a4UL, 0x96e47272UL, 0x5b9bc0c0UL,
-      0xc275b7b7UL, 0x1ce1fdfdUL, 0xae3d9393UL, 0x6a4c2626UL,
-      0x5a6c3636UL, 0x417e3f3fUL, 0x02f5f7f7UL, 0x4f83ccccUL,
-      0x5c683434UL, 0xf451a5a5UL, 0x34d1e5e5UL, 0x08f9f1f1UL,
-      0x93e27171UL, 0x73abd8d8UL, 0x53623131UL, 0x3f2a1515UL,
-      0x0c080404UL, 0x5295c7c7UL, 0x65462323UL, 0x5e9dc3c3UL,
-      0x28301818UL, 0xa1379696UL, 0x0f0a0505UL, 0xb52f9a9aUL,
-      0x090e0707UL, 0x36241212UL, 0x9b1b8080UL, 0x3ddfe2e2UL,
-      0x26cdebebUL, 0x694e2727UL, 0xcd7fb2b2UL, 0x9fea7575UL,
-      0x1b120909UL, 0x9e1d8383UL, 0x74582c2cUL, 0x2e341a1aUL,
-      0x2d361b1bUL, 0xb2dc6e6eUL, 0xeeb45a5aUL, 0xfb5ba0a0UL,
-      0xf6a45252UL, 0x4d763b3bUL, 0x61b7d6d6UL, 0xce7db3b3UL,
-      0x7b522929UL, 0x3edde3e3UL, 0x715e2f2fUL, 0x97138484UL,
-      0xf5a65353UL, 0x68b9d1d1UL, 0x00000000UL, 0x2cc1ededUL,
-      0x60402020UL, 0x1fe3fcfcUL, 0xc879b1b1UL, 0xedb65b5bUL,
-      0xbed46a6aUL, 0x468dcbcbUL, 0xd967bebeUL, 0x4b723939UL,
-      0xde944a4aUL, 0xd4984c4cUL, 0xe8b05858UL, 0x4a85cfcfUL,
-      0x6bbbd0d0UL, 0x2ac5efefUL, 0xe54faaaaUL, 0x16edfbfbUL,
-      0xc5864343UL, 0xd79a4d4dUL, 0x55663333UL, 0x94118585UL,
-      0xcf8a4545UL, 0x10e9f9f9UL, 0x06040202UL, 0x81fe7f7fUL,
-      0xf0a05050UL, 0x44783c3cUL, 0xba259f9fUL, 0xe34ba8a8UL,
-      0xf3a25151UL, 0xfe5da3a3UL, 0xc0804040UL, 0x8a058f8fUL,
-      0xad3f9292UL, 0xbc219d9dUL, 0x48703838UL, 0x04f1f5f5UL,
-      0xdf63bcbcUL, 0xc177b6b6UL, 0x75afdadaUL, 0x63422121UL,
-      0x30201010UL, 0x1ae5ffffUL, 0x0efdf3f3UL, 0x6dbfd2d2UL,
-      0x4c81cdcdUL, 0x14180c0cUL, 0x35261313UL, 0x2fc3ececUL,
-      0xe1be5f5fUL, 0xa2359797UL, 0xcc884444UL, 0x392e1717UL,
-      0x5793c4c4UL, 0xf255a7a7UL, 0x82fc7e7eUL, 0x477a3d3dUL,
-      0xacc86464UL, 0xe7ba5d5dUL, 0x2b321919UL, 0x95e67373UL,
-      0xa0c06060UL, 0x98198181UL, 0xd19e4f4fUL, 0x7fa3dcdcUL,
-      0x66442222UL, 0x7e542a2aUL, 0xab3b9090UL, 0x830b8888UL,
-      0xca8c4646UL, 0x29c7eeeeUL, 0xd36bb8b8UL, 0x3c281414UL,
-      0x79a7dedeUL, 0xe2bc5e5eUL, 0x1d160b0bUL, 0x76addbdbUL,
-      0x3bdbe0e0UL, 0x56643232UL, 0x4e743a3aUL, 0x1e140a0aUL,
-      0xdb924949UL, 0x0a0c0606UL, 0x6c482424UL, 0xe4b85c5cUL,
-      0x5d9fc2c2UL, 0x6ebdd3d3UL, 0xef43acacUL, 0xa6c46262UL,
-      0xa8399191UL, 0xa4319595UL, 0x37d3e4e4UL, 0x8bf27979UL,
-      0x32d5e7e7UL, 0x438bc8c8UL, 0x596e3737UL, 0xb7da6d6dUL,
-      0x8c018d8dUL, 0x64b1d5d5UL, 0xd29c4e4eUL, 0xe049a9a9UL,
-      0xb4d86c6cUL, 0xfaac5656UL, 0x07f3f4f4UL, 0x25cfeaeaUL,
-      0xafca6565UL, 0x8ef47a7aUL, 0xe947aeaeUL, 0x18100808UL,
-      0xd56fbabaUL, 0x88f07878UL, 0x6f4a2525UL, 0x725c2e2eUL,
-      0x24381c1cUL, 0xf157a6a6UL, 0xc773b4b4UL, 0x5197c6c6UL,
-      0x23cbe8e8UL, 0x7ca1ddddUL, 0x9ce87474UL, 0x213e1f1fUL,
-      0xdd964b4bUL, 0xdc61bdbdUL, 0x860d8b8bUL, 0x850f8a8aUL,
-      0x90e07070UL, 0x427c3e3eUL, 0xc471b5b5UL, 0xaacc6666UL,
-      0xd8904848UL, 0x05060303UL, 0x01f7f6f6UL, 0x121c0e0eUL,
-      0xa3c26161UL, 0x5f6a3535UL, 0xf9ae5757UL, 0xd069b9b9UL,
-      0x91178686UL, 0x5899c1c1UL, 0x273a1d1dUL, 0xb9279e9eUL,
-      0x38d9e1e1UL, 0x13ebf8f8UL, 0xb32b9898UL, 0x33221111UL,
-      0xbbd26969UL, 0x70a9d9d9UL, 0x89078e8eUL, 0xa7339494UL,
-      0xb62d9b9bUL, 0x223c1e1eUL, 0x92158787UL, 0x20c9e9e9UL,
-      0x4987ceceUL, 0xffaa5555UL, 0x78502828UL, 0x7aa5dfdfUL,
-      0x8f038c8cUL, 0xf859a1a1UL, 0x80098989UL, 0x171a0d0dUL,
-      0xda65bfbfUL, 0x31d7e6e6UL, 0xc6844242UL, 0xb8d06868UL,
-      0xc3824141UL, 0xb0299999UL, 0x775a2d2dUL, 0x111e0f0fUL,
-      0xcb7bb0b0UL, 0xfca85454UL, 0xd66dbbbbUL, 0x3a2c1616UL
-  };
-  static const SWord32 table3[] = {
-      0x63a5c663UL, 0x7c84f87cUL, 0x7799ee77UL, 0x7b8df67bUL,
-      0xf20dfff2UL, 0x6bbdd66bUL, 0x6fb1de6fUL, 0xc55491c5UL,
-      0x30506030UL, 0x01030201UL, 0x67a9ce67UL, 0x2b7d562bUL,
-      0xfe19e7feUL, 0xd762b5d7UL, 0xabe64dabUL, 0x769aec76UL,
-      0xca458fcaUL, 0x829d1f82UL, 0xc94089c9UL, 0x7d87fa7dUL,
-      0xfa15effaUL, 0x59ebb259UL, 0x47c98e47UL, 0xf00bfbf0UL,
-      0xadec41adUL, 0xd467b3d4UL, 0xa2fd5fa2UL, 0xafea45afUL,
-      0x9cbf239cUL, 0xa4f753a4UL, 0x7296e472UL, 0xc05b9bc0UL,
-      0xb7c275b7UL, 0xfd1ce1fdUL, 0x93ae3d93UL, 0x266a4c26UL,
-      0x365a6c36UL, 0x3f417e3fUL, 0xf702f5f7UL, 0xcc4f83ccUL,
-      0x345c6834UL, 0xa5f451a5UL, 0xe534d1e5UL, 0xf108f9f1UL,
-      0x7193e271UL, 0xd873abd8UL, 0x31536231UL, 0x153f2a15UL,
-      0x040c0804UL, 0xc75295c7UL, 0x23654623UL, 0xc35e9dc3UL,
-      0x18283018UL, 0x96a13796UL, 0x050f0a05UL, 0x9ab52f9aUL,
-      0x07090e07UL, 0x12362412UL, 0x809b1b80UL, 0xe23ddfe2UL,
-      0xeb26cdebUL, 0x27694e27UL, 0xb2cd7fb2UL, 0x759fea75UL,
-      0x091b1209UL, 0x839e1d83UL, 0x2c74582cUL, 0x1a2e341aUL,
-      0x1b2d361bUL, 0x6eb2dc6eUL, 0x5aeeb45aUL, 0xa0fb5ba0UL,
-      0x52f6a452UL, 0x3b4d763bUL, 0xd661b7d6UL, 0xb3ce7db3UL,
-      0x297b5229UL, 0xe33edde3UL, 0x2f715e2fUL, 0x84971384UL,
-      0x53f5a653UL, 0xd168b9d1UL, 0x00000000UL, 0xed2cc1edUL,
-      0x20604020UL, 0xfc1fe3fcUL, 0xb1c879b1UL, 0x5bedb65bUL,
-      0x6abed46aUL, 0xcb468dcbUL, 0xbed967beUL, 0x394b7239UL,
-      0x4ade944aUL, 0x4cd4984cUL, 0x58e8b058UL, 0xcf4a85cfUL,
-      0xd06bbbd0UL, 0xef2ac5efUL, 0xaae54faaUL, 0xfb16edfbUL,
-      0x43c58643UL, 0x4dd79a4dUL, 0x33556633UL, 0x85941185UL,
-      0x45cf8a45UL, 0xf910e9f9UL, 0x02060402UL, 0x7f81fe7fUL,
-      0x50f0a050UL, 0x3c44783cUL, 0x9fba259fUL, 0xa8e34ba8UL,
-      0x51f3a251UL, 0xa3fe5da3UL, 0x40c08040UL, 0x8f8a058fUL,
-      0x92ad3f92UL, 0x9dbc219dUL, 0x38487038UL, 0xf504f1f5UL,
-      0xbcdf63bcUL, 0xb6c177b6UL, 0xda75afdaUL, 0x21634221UL,
-      0x10302010UL, 0xff1ae5ffUL, 0xf30efdf3UL, 0xd26dbfd2UL,
-      0xcd4c81cdUL, 0x0c14180cUL, 0x13352613UL, 0xec2fc3ecUL,
-      0x5fe1be5fUL, 0x97a23597UL, 0x44cc8844UL, 0x17392e17UL,
-      0xc45793c4UL, 0xa7f255a7UL, 0x7e82fc7eUL, 0x3d477a3dUL,
-      0x64acc864UL, 0x5de7ba5dUL, 0x192b3219UL, 0x7395e673UL,
-      0x60a0c060UL, 0x81981981UL, 0x4fd19e4fUL, 0xdc7fa3dcUL,
-      0x22664422UL, 0x2a7e542aUL, 0x90ab3b90UL, 0x88830b88UL,
-      0x46ca8c46UL, 0xee29c7eeUL, 0xb8d36bb8UL, 0x143c2814UL,
-      0xde79a7deUL, 0x5ee2bc5eUL, 0x0b1d160bUL, 0xdb76addbUL,
-      0xe03bdbe0UL, 0x32566432UL, 0x3a4e743aUL, 0x0a1e140aUL,
-      0x49db9249UL, 0x060a0c06UL, 0x246c4824UL, 0x5ce4b85cUL,
-      0xc25d9fc2UL, 0xd36ebdd3UL, 0xacef43acUL, 0x62a6c462UL,
-      0x91a83991UL, 0x95a43195UL, 0xe437d3e4UL, 0x798bf279UL,
-      0xe732d5e7UL, 0xc8438bc8UL, 0x37596e37UL, 0x6db7da6dUL,
-      0x8d8c018dUL, 0xd564b1d5UL, 0x4ed29c4eUL, 0xa9e049a9UL,
-      0x6cb4d86cUL, 0x56faac56UL, 0xf407f3f4UL, 0xea25cfeaUL,
-      0x65afca65UL, 0x7a8ef47aUL, 0xaee947aeUL, 0x08181008UL,
-      0xbad56fbaUL, 0x7888f078UL, 0x256f4a25UL, 0x2e725c2eUL,
-      0x1c24381cUL, 0xa6f157a6UL, 0xb4c773b4UL, 0xc65197c6UL,
-      0xe823cbe8UL, 0xdd7ca1ddUL, 0x749ce874UL, 0x1f213e1fUL,
-      0x4bdd964bUL, 0xbddc61bdUL, 0x8b860d8bUL, 0x8a850f8aUL,
-      0x7090e070UL, 0x3e427c3eUL, 0xb5c471b5UL, 0x66aacc66UL,
-      0x48d89048UL, 0x03050603UL, 0xf601f7f6UL, 0x0e121c0eUL,
-      0x61a3c261UL, 0x355f6a35UL, 0x57f9ae57UL, 0xb9d069b9UL,
-      0x86911786UL, 0xc15899c1UL, 0x1d273a1dUL, 0x9eb9279eUL,
-      0xe138d9e1UL, 0xf813ebf8UL, 0x98b32b98UL, 0x11332211UL,
-      0x69bbd269UL, 0xd970a9d9UL, 0x8e89078eUL, 0x94a73394UL,
-      0x9bb62d9bUL, 0x1e223c1eUL, 0x87921587UL, 0xe920c9e9UL,
-      0xce4987ceUL, 0x55ffaa55UL, 0x28785028UL, 0xdf7aa5dfUL,
-      0x8c8f038cUL, 0xa1f859a1UL, 0x89800989UL, 0x0d171a0dUL,
-      0xbfda65bfUL, 0xe631d7e6UL, 0x42c68442UL, 0x68b8d068UL,
-      0x41c38241UL, 0x99b02999UL, 0x2d775a2dUL, 0x0f111e0fUL,
-      0xb0cb7bb0UL, 0x54fca854UL, 0xbbd66dbbUL, 0x163a2c16UL
-  };
-  static const SWord32 table4[] = {
-      0x6363a5c6UL, 0x7c7c84f8UL, 0x777799eeUL, 0x7b7b8df6UL,
-      0xf2f20dffUL, 0x6b6bbdd6UL, 0x6f6fb1deUL, 0xc5c55491UL,
-      0x30305060UL, 0x01010302UL, 0x6767a9ceUL, 0x2b2b7d56UL,
-      0xfefe19e7UL, 0xd7d762b5UL, 0xababe64dUL, 0x76769aecUL,
-      0xcaca458fUL, 0x82829d1fUL, 0xc9c94089UL, 0x7d7d87faUL,
-      0xfafa15efUL, 0x5959ebb2UL, 0x4747c98eUL, 0xf0f00bfbUL,
-      0xadadec41UL, 0xd4d467b3UL, 0xa2a2fd5fUL, 0xafafea45UL,
-      0x9c9cbf23UL, 0xa4a4f753UL, 0x727296e4UL, 0xc0c05b9bUL,
-      0xb7b7c275UL, 0xfdfd1ce1UL, 0x9393ae3dUL, 0x26266a4cUL,
-      0x36365a6cUL, 0x3f3f417eUL, 0xf7f702f5UL, 0xcccc4f83UL,
-      0x34345c68UL, 0xa5a5f451UL, 0xe5e534d1UL, 0xf1f108f9UL,
-      0x717193e2UL, 0xd8d873abUL, 0x31315362UL, 0x15153f2aUL,
-      0x04040c08UL, 0xc7c75295UL, 0x23236546UL, 0xc3c35e9dUL,
-      0x18182830UL, 0x9696a137UL, 0x05050f0aUL, 0x9a9ab52fUL,
-      0x0707090eUL, 0x12123624UL, 0x80809b1bUL, 0xe2e23ddfUL,
-      0xebeb26cdUL, 0x2727694eUL, 0xb2b2cd7fUL, 0x75759feaUL,
-      0x09091b12UL, 0x83839e1dUL, 0x2c2c7458UL, 0x1a1a2e34UL,
-      0x1b1b2d36UL, 0x6e6eb2dcUL, 0x5a5aeeb4UL, 0xa0a0fb5bUL,
-      0x5252f6a4UL, 0x3b3b4d76UL, 0xd6d661b7UL, 0xb3b3ce7dUL,
-      0x29297b52UL, 0xe3e33eddUL, 0x2f2f715eUL, 0x84849713UL,
-      0x5353f5a6UL, 0xd1d168b9UL, 0x00000000UL, 0xeded2cc1UL,
-      0x20206040UL, 0xfcfc1fe3UL, 0xb1b1c879UL, 0x5b5bedb6UL,
-      0x6a6abed4UL, 0xcbcb468dUL, 0xbebed967UL, 0x39394b72UL,
-      0x4a4ade94UL, 0x4c4cd498UL, 0x5858e8b0UL, 0xcfcf4a85UL,
-      0xd0d06bbbUL, 0xefef2ac5UL, 0xaaaae54fUL, 0xfbfb16edUL,
-      0x4343c586UL, 0x4d4dd79aUL, 0x33335566UL, 0x85859411UL,
-      0x4545cf8aUL, 0xf9f910e9UL, 0x02020604UL, 0x7f7f81feUL,
-      0x5050f0a0UL, 0x3c3c4478UL, 0x9f9fba25UL, 0xa8a8e34bUL,
-      0x5151f3a2UL, 0xa3a3fe5dUL, 0x4040c080UL, 0x8f8f8a05UL,
-      0x9292ad3fUL, 0x9d9dbc21UL, 0x38384870UL, 0xf5f504f1UL,
-      0xbcbcdf63UL, 0xb6b6c177UL, 0xdada75afUL, 0x21216342UL,
-      0x10103020UL, 0xffff1ae5UL, 0xf3f30efdUL, 0xd2d26dbfUL,
-      0xcdcd4c81UL, 0x0c0c1418UL, 0x13133526UL, 0xecec2fc3UL,
-      0x5f5fe1beUL, 0x9797a235UL, 0x4444cc88UL, 0x1717392eUL,
-      0xc4c45793UL, 0xa7a7f255UL, 0x7e7e82fcUL, 0x3d3d477aUL,
-      0x6464acc8UL, 0x5d5de7baUL, 0x19192b32UL, 0x737395e6UL,
-      0x6060a0c0UL, 0x81819819UL, 0x4f4fd19eUL, 0xdcdc7fa3UL,
-      0x22226644UL, 0x2a2a7e54UL, 0x9090ab3bUL, 0x8888830bUL,
-      0x4646ca8cUL, 0xeeee29c7UL, 0xb8b8d36bUL, 0x14143c28UL,
-      0xdede79a7UL, 0x5e5ee2bcUL, 0x0b0b1d16UL, 0xdbdb76adUL,
-      0xe0e03bdbUL, 0x32325664UL, 0x3a3a4e74UL, 0x0a0a1e14UL,
-      0x4949db92UL, 0x06060a0cUL, 0x24246c48UL, 0x5c5ce4b8UL,
-      0xc2c25d9fUL, 0xd3d36ebdUL, 0xacacef43UL, 0x6262a6c4UL,
-      0x9191a839UL, 0x9595a431UL, 0xe4e437d3UL, 0x79798bf2UL,
-      0xe7e732d5UL, 0xc8c8438bUL, 0x3737596eUL, 0x6d6db7daUL,
-      0x8d8d8c01UL, 0xd5d564b1UL, 0x4e4ed29cUL, 0xa9a9e049UL,
-      0x6c6cb4d8UL, 0x5656faacUL, 0xf4f407f3UL, 0xeaea25cfUL,
-      0x6565afcaUL, 0x7a7a8ef4UL, 0xaeaee947UL, 0x08081810UL,
-      0xbabad56fUL, 0x787888f0UL, 0x25256f4aUL, 0x2e2e725cUL,
-      0x1c1c2438UL, 0xa6a6f157UL, 0xb4b4c773UL, 0xc6c65197UL,
-      0xe8e823cbUL, 0xdddd7ca1UL, 0x74749ce8UL, 0x1f1f213eUL,
-      0x4b4bdd96UL, 0xbdbddc61UL, 0x8b8b860dUL, 0x8a8a850fUL,
-      0x707090e0UL, 0x3e3e427cUL, 0xb5b5c471UL, 0x6666aaccUL,
-      0x4848d890UL, 0x03030506UL, 0xf6f601f7UL, 0x0e0e121cUL,
-      0x6161a3c2UL, 0x35355f6aUL, 0x5757f9aeUL, 0xb9b9d069UL,
-      0x86869117UL, 0xc1c15899UL, 0x1d1d273aUL, 0x9e9eb927UL,
-      0xe1e138d9UL, 0xf8f813ebUL, 0x9898b32bUL, 0x11113322UL,
-      0x6969bbd2UL, 0xd9d970a9UL, 0x8e8e8907UL, 0x9494a733UL,
-      0x9b9bb62dUL, 0x1e1e223cUL, 0x87879215UL, 0xe9e920c9UL,
-      0xcece4987UL, 0x5555ffaaUL, 0x28287850UL, 0xdfdf7aa5UL,
-      0x8c8c8f03UL, 0xa1a1f859UL, 0x89898009UL, 0x0d0d171aUL,
-      0xbfbfda65UL, 0xe6e631d7UL, 0x4242c684UL, 0x6868b8d0UL,
-      0x4141c382UL, 0x9999b029UL, 0x2d2d775aUL, 0x0f0f111eUL,
-      0xb0b0cb7bUL, 0x5454fca8UL, 0xbbbbd66dUL, 0x16163a2cUL
-  };
-  const SWord32 s520 = s0 ^ s4;
-  const SWord16 s521 = (SWord16) (s520 >> 16);
-  const SWord8  s522 = (SWord8) (s521 >> 8);
-  const SWord32 s523 = table1[s522];
-  const SWord32 s779 = s1 ^ s5;
-  const SWord16 s780 = (SWord16) (s779 >> 16);
-  const SWord8  s781 = (SWord8) s780;
-  const SWord32 s782 = table2[s781];
-  const SWord32 s783 = s523 ^ s782;
-  const SWord32 s1039 = s2 ^ s6;
-  const SWord16 s1040 = (SWord16) s1039;
-  const SWord8  s1041 = (SWord8) (s1040 >> 8);
-  const SWord32 s1042 = table3[s1041];
-  const SWord32 s1043 = s783 ^ s1042;
-  const SWord32 s1299 = s3 ^ s7;
-  const SWord16 s1300 = (SWord16) s1299;
-  const SWord8  s1301 = (SWord8) s1300;
-  const SWord32 s1302 = table4[s1301];
-  const SWord32 s1303 = s1043 ^ s1302;
-  const SWord32 s1304 = (s7 << 8) | (s7 >> 24);
-  const SWord16 s1305 = (SWord16) (s1304 >> 16);
-  const SWord8  s1306 = (SWord8) (s1305 >> 8);
-  const SWord8  s1307 = table0[s1306];
-  const SWord8  s1308 = 1 ^ s1307;
-  const SWord8  s1309 = (SWord8) s1305;
-  const SWord8  s1310 = table0[s1309];
-  const SWord16 s1311 = (((SWord16) s1308) << 8) | ((SWord16) s1310);
-  const SWord16 s1312 = (SWord16) s1304;
-  const SWord8  s1313 = (SWord8) (s1312 >> 8);
-  const SWord8  s1314 = table0[s1313];
-  const SWord8  s1315 = (SWord8) s1312;
-  const SWord8  s1316 = table0[s1315];
-  const SWord16 s1317 = (((SWord16) s1314) << 8) | ((SWord16) s1316);
-  const SWord32 s1318 = (((SWord32) s1311) << 16) | ((SWord32) s1317);
-  const SWord32 s1319 = s4 ^ s1318;
-  const SWord32 s1320 = s1303 ^ s1319;
-  const SWord16 s1321 = (SWord16) (s1320 >> 16);
-  const SWord8  s1322 = (SWord8) (s1321 >> 8);
-  const SWord32 s1323 = table1[s1322];
-  const SWord8  s1324 = (SWord8) (s780 >> 8);
-  const SWord32 s1325 = table1[s1324];
-  const SWord16 s1326 = (SWord16) (s1039 >> 16);
-  const SWord8  s1327 = (SWord8) s1326;
-  const SWord32 s1328 = table2[s1327];
-  const SWord32 s1329 = s1325 ^ s1328;
-  const SWord8  s1330 = (SWord8) (s1300 >> 8);
-  const SWord32 s1331 = table3[s1330];
-  const SWord32 s1332 = s1329 ^ s1331;
-  const SWord16 s1333 = (SWord16) s520;
-  const SWord8  s1334 = (SWord8) s1333;
-  const SWord32 s1335 = table4[s1334];
-  const SWord32 s1336 = s1332 ^ s1335;
-  const SWord32 s1337 = s5 ^ s1319;
-  const SWord32 s1338 = s1336 ^ s1337;
-  const SWord16 s1339 = (SWord16) (s1338 >> 16);
-  const SWord8  s1340 = (SWord8) s1339;
-  const SWord32 s1341 = table2[s1340];
-  const SWord32 s1342 = s1323 ^ s1341;
-  const SWord8  s1343 = (SWord8) (s1326 >> 8);
-  const SWord32 s1344 = table1[s1343];
-  const SWord16 s1345 = (SWord16) (s1299 >> 16);
-  const SWord8  s1346 = (SWord8) s1345;
-  const SWord32 s1347 = table2[s1346];
-  const SWord32 s1348 = s1344 ^ s1347;
-  const SWord8  s1349 = (SWord8) (s1333 >> 8);
-  const SWord32 s1350 = table3[s1349];
-  const SWord32 s1351 = s1348 ^ s1350;
-  const SWord16 s1352 = (SWord16) s779;
-  const SWord8  s1353 = (SWord8) s1352;
-  const SWord32 s1354 = table4[s1353];
-  const SWord32 s1355 = s1351 ^ s1354;
-  const SWord32 s1356 = s6 ^ s1337;
-  const SWord32 s1357 = s1355 ^ s1356;
-  const SWord16 s1358 = (SWord16) s1357;
-  const SWord8  s1359 = (SWord8) (s1358 >> 8);
-  const SWord32 s1360 = table3[s1359];
-  const SWord32 s1361 = s1342 ^ s1360;
-  const SWord8  s1362 = (SWord8) (s1345 >> 8);
-  const SWord32 s1363 = table1[s1362];
-  const SWord8  s1364 = (SWord8) s521;
-  const SWord32 s1365 = table2[s1364];
-  const SWord32 s1366 = s1363 ^ s1365;
-  const SWord8  s1367 = (SWord8) (s1352 >> 8);
-  const SWord32 s1368 = table3[s1367];
-  const SWord32 s1369 = s1366 ^ s1368;
-  const SWord8  s1370 = (SWord8) s1040;
-  const SWord32 s1371 = table4[s1370];
-  const SWord32 s1372 = s1369 ^ s1371;
-  const SWord32 s1373 = s7 ^ s1356;
-  const SWord32 s1374 = s1372 ^ s1373;
-  const SWord16 s1375 = (SWord16) s1374;
-  const SWord8  s1376 = (SWord8) s1375;
-  const SWord32 s1377 = table4[s1376];
-  const SWord32 s1378 = s1361 ^ s1377;
-  const SWord32 s1379 = (s1373 << 8) | (s1373 >> 24);
-  const SWord16 s1380 = (SWord16) (s1379 >> 16);
-  const SWord8  s1381 = (SWord8) (s1380 >> 8);
-  const SWord8  s1382 = table0[s1381];
-  const SWord8  s1383 = 2 ^ s1382;
-  const SWord8  s1384 = (SWord8) s1380;
-  const SWord8  s1385 = table0[s1384];
-  const SWord16 s1386 = (((SWord16) s1383) << 8) | ((SWord16) s1385);
-  const SWord16 s1387 = (SWord16) s1379;
-  const SWord8  s1388 = (SWord8) (s1387 >> 8);
-  const SWord8  s1389 = table0[s1388];
-  const SWord8  s1390 = (SWord8) s1387;
-  const SWord8  s1391 = table0[s1390];
-  const SWord16 s1392 = (((SWord16) s1389) << 8) | ((SWord16) s1391);
-  const SWord32 s1393 = (((SWord32) s1386) << 16) | ((SWord32) s1392);
-  const SWord32 s1394 = s1319 ^ s1393;
-  const SWord32 s1395 = s1378 ^ s1394;
-  const SWord16 s1396 = (SWord16) (s1395 >> 16);
-  const SWord8  s1397 = (SWord8) (s1396 >> 8);
-  const SWord32 s1398 = table1[s1397];
-  const SWord8  s1399 = (SWord8) (s1339 >> 8);
-  const SWord32 s1400 = table1[s1399];
-  const SWord16 s1401 = (SWord16) (s1357 >> 16);
-  const SWord8  s1402 = (SWord8) s1401;
-  const SWord32 s1403 = table2[s1402];
-  const SWord32 s1404 = s1400 ^ s1403;
-  const SWord8  s1405 = (SWord8) (s1375 >> 8);
-  const SWord32 s1406 = table3[s1405];
-  const SWord32 s1407 = s1404 ^ s1406;
-  const SWord16 s1408 = (SWord16) s1320;
-  const SWord8  s1409 = (SWord8) s1408;
-  const SWord32 s1410 = table4[s1409];
-  const SWord32 s1411 = s1407 ^ s1410;
-  const SWord32 s1412 = s1337 ^ s1394;
-  const SWord32 s1413 = s1411 ^ s1412;
-  const SWord16 s1414 = (SWord16) (s1413 >> 16);
-  const SWord8  s1415 = (SWord8) s1414;
-  const SWord32 s1416 = table2[s1415];
-  const SWord32 s1417 = s1398 ^ s1416;
-  const SWord8  s1418 = (SWord8) (s1401 >> 8);
-  const SWord32 s1419 = table1[s1418];
-  const SWord16 s1420 = (SWord16) (s1374 >> 16);
-  const SWord8  s1421 = (SWord8) s1420;
-  const SWord32 s1422 = table2[s1421];
-  const SWord32 s1423 = s1419 ^ s1422;
-  const SWord8  s1424 = (SWord8) (s1408 >> 8);
-  const SWord32 s1425 = table3[s1424];
-  const SWord32 s1426 = s1423 ^ s1425;
-  const SWord16 s1427 = (SWord16) s1338;
-  const SWord8  s1428 = (SWord8) s1427;
-  const SWord32 s1429 = table4[s1428];
-  const SWord32 s1430 = s1426 ^ s1429;
-  const SWord32 s1431 = s1356 ^ s1412;
-  const SWord32 s1432 = s1430 ^ s1431;
-  const SWord16 s1433 = (SWord16) s1432;
-  const SWord8  s1434 = (SWord8) (s1433 >> 8);
-  const SWord32 s1435 = table3[s1434];
-  const SWord32 s1436 = s1417 ^ s1435;
-  const SWord8  s1437 = (SWord8) (s1420 >> 8);
-  const SWord32 s1438 = table1[s1437];
-  const SWord8  s1439 = (SWord8) s1321;
-  const SWord32 s1440 = table2[s1439];
-  const SWord32 s1441 = s1438 ^ s1440;
-  const SWord8  s1442 = (SWord8) (s1427 >> 8);
-  const SWord32 s1443 = table3[s1442];
-  const SWord32 s1444 = s1441 ^ s1443;
-  const SWord8  s1445 = (SWord8) s1358;
-  const SWord32 s1446 = table4[s1445];
-  const SWord32 s1447 = s1444 ^ s1446;
-  const SWord32 s1448 = s1373 ^ s1431;
-  const SWord32 s1449 = s1447 ^ s1448;
-  const SWord16 s1450 = (SWord16) s1449;
-  const SWord8  s1451 = (SWord8) s1450;
-  const SWord32 s1452 = table4[s1451];
-  const SWord32 s1453 = s1436 ^ s1452;
-  const SWord32 s1454 = (s1448 << 8) | (s1448 >> 24);
-  const SWord16 s1455 = (SWord16) (s1454 >> 16);
-  const SWord8  s1456 = (SWord8) (s1455 >> 8);
-  const SWord8  s1457 = table0[s1456];
-  const SWord8  s1458 = 4 ^ s1457;
-  const SWord8  s1459 = (SWord8) s1455;
-  const SWord8  s1460 = table0[s1459];
-  const SWord16 s1461 = (((SWord16) s1458) << 8) | ((SWord16) s1460);
-  const SWord16 s1462 = (SWord16) s1454;
-  const SWord8  s1463 = (SWord8) (s1462 >> 8);
-  const SWord8  s1464 = table0[s1463];
-  const SWord8  s1465 = (SWord8) s1462;
-  const SWord8  s1466 = table0[s1465];
-  const SWord16 s1467 = (((SWord16) s1464) << 8) | ((SWord16) s1466);
-  const SWord32 s1468 = (((SWord32) s1461) << 16) | ((SWord32) s1467);
-  const SWord32 s1469 = s1394 ^ s1468;
-  const SWord32 s1470 = s1453 ^ s1469;
-  const SWord16 s1471 = (SWord16) (s1470 >> 16);
-  const SWord8  s1472 = (SWord8) (s1471 >> 8);
-  const SWord32 s1473 = table1[s1472];
-  const SWord8  s1474 = (SWord8) (s1414 >> 8);
-  const SWord32 s1475 = table1[s1474];
-  const SWord16 s1476 = (SWord16) (s1432 >> 16);
-  const SWord8  s1477 = (SWord8) s1476;
-  const SWord32 s1478 = table2[s1477];
-  const SWord32 s1479 = s1475 ^ s1478;
-  const SWord8  s1480 = (SWord8) (s1450 >> 8);
-  const SWord32 s1481 = table3[s1480];
-  const SWord32 s1482 = s1479 ^ s1481;
-  const SWord16 s1483 = (SWord16) s1395;
-  const SWord8  s1484 = (SWord8) s1483;
-  const SWord32 s1485 = table4[s1484];
-  const SWord32 s1486 = s1482 ^ s1485;
-  const SWord32 s1487 = s1412 ^ s1469;
-  const SWord32 s1488 = s1486 ^ s1487;
-  const SWord16 s1489 = (SWord16) (s1488 >> 16);
-  const SWord8  s1490 = (SWord8) s1489;
-  const SWord32 s1491 = table2[s1490];
-  const SWord32 s1492 = s1473 ^ s1491;
-  const SWord8  s1493 = (SWord8) (s1476 >> 8);
-  const SWord32 s1494 = table1[s1493];
-  const SWord16 s1495 = (SWord16) (s1449 >> 16);
-  const SWord8  s1496 = (SWord8) s1495;
-  const SWord32 s1497 = table2[s1496];
-  const SWord32 s1498 = s1494 ^ s1497;
-  const SWord8  s1499 = (SWord8) (s1483 >> 8);
-  const SWord32 s1500 = table3[s1499];
-  const SWord32 s1501 = s1498 ^ s1500;
-  const SWord16 s1502 = (SWord16) s1413;
-  const SWord8  s1503 = (SWord8) s1502;
-  const SWord32 s1504 = table4[s1503];
-  const SWord32 s1505 = s1501 ^ s1504;
-  const SWord32 s1506 = s1431 ^ s1487;
-  const SWord32 s1507 = s1505 ^ s1506;
-  const SWord16 s1508 = (SWord16) s1507;
-  const SWord8  s1509 = (SWord8) (s1508 >> 8);
-  const SWord32 s1510 = table3[s1509];
-  const SWord32 s1511 = s1492 ^ s1510;
-  const SWord8  s1512 = (SWord8) (s1495 >> 8);
-  const SWord32 s1513 = table1[s1512];
-  const SWord8  s1514 = (SWord8) s1396;
-  const SWord32 s1515 = table2[s1514];
-  const SWord32 s1516 = s1513 ^ s1515;
-  const SWord8  s1517 = (SWord8) (s1502 >> 8);
-  const SWord32 s1518 = table3[s1517];
-  const SWord32 s1519 = s1516 ^ s1518;
-  const SWord8  s1520 = (SWord8) s1433;
-  const SWord32 s1521 = table4[s1520];
-  const SWord32 s1522 = s1519 ^ s1521;
-  const SWord32 s1523 = s1448 ^ s1506;
-  const SWord32 s1524 = s1522 ^ s1523;
-  const SWord16 s1525 = (SWord16) s1524;
-  const SWord8  s1526 = (SWord8) s1525;
-  const SWord32 s1527 = table4[s1526];
-  const SWord32 s1528 = s1511 ^ s1527;
-  const SWord32 s1529 = (s1523 << 8) | (s1523 >> 24);
-  const SWord16 s1530 = (SWord16) (s1529 >> 16);
-  const SWord8  s1531 = (SWord8) (s1530 >> 8);
-  const SWord8  s1532 = table0[s1531];
-  const SWord8  s1533 = 8 ^ s1532;
-  const SWord8  s1534 = (SWord8) s1530;
-  const SWord8  s1535 = table0[s1534];
-  const SWord16 s1536 = (((SWord16) s1533) << 8) | ((SWord16) s1535);
-  const SWord16 s1537 = (SWord16) s1529;
-  const SWord8  s1538 = (SWord8) (s1537 >> 8);
-  const SWord8  s1539 = table0[s1538];
-  const SWord8  s1540 = (SWord8) s1537;
-  const SWord8  s1541 = table0[s1540];
-  const SWord16 s1542 = (((SWord16) s1539) << 8) | ((SWord16) s1541);
-  const SWord32 s1543 = (((SWord32) s1536) << 16) | ((SWord32) s1542);
-  const SWord32 s1544 = s1469 ^ s1543;
-  const SWord32 s1545 = s1528 ^ s1544;
-  const SWord16 s1546 = (SWord16) (s1545 >> 16);
-  const SWord8  s1547 = (SWord8) (s1546 >> 8);
-  const SWord32 s1548 = table1[s1547];
-  const SWord8  s1549 = (SWord8) (s1489 >> 8);
-  const SWord32 s1550 = table1[s1549];
-  const SWord16 s1551 = (SWord16) (s1507 >> 16);
-  const SWord8  s1552 = (SWord8) s1551;
-  const SWord32 s1553 = table2[s1552];
-  const SWord32 s1554 = s1550 ^ s1553;
-  const SWord8  s1555 = (SWord8) (s1525 >> 8);
-  const SWord32 s1556 = table3[s1555];
-  const SWord32 s1557 = s1554 ^ s1556;
-  const SWord16 s1558 = (SWord16) s1470;
-  const SWord8  s1559 = (SWord8) s1558;
-  const SWord32 s1560 = table4[s1559];
-  const SWord32 s1561 = s1557 ^ s1560;
-  const SWord32 s1562 = s1487 ^ s1544;
-  const SWord32 s1563 = s1561 ^ s1562;
-  const SWord16 s1564 = (SWord16) (s1563 >> 16);
-  const SWord8  s1565 = (SWord8) s1564;
-  const SWord32 s1566 = table2[s1565];
-  const SWord32 s1567 = s1548 ^ s1566;
-  const SWord8  s1568 = (SWord8) (s1551 >> 8);
-  const SWord32 s1569 = table1[s1568];
-  const SWord16 s1570 = (SWord16) (s1524 >> 16);
-  const SWord8  s1571 = (SWord8) s1570;
-  const SWord32 s1572 = table2[s1571];
-  const SWord32 s1573 = s1569 ^ s1572;
-  const SWord8  s1574 = (SWord8) (s1558 >> 8);
-  const SWord32 s1575 = table3[s1574];
-  const SWord32 s1576 = s1573 ^ s1575;
-  const SWord16 s1577 = (SWord16) s1488;
-  const SWord8  s1578 = (SWord8) s1577;
-  const SWord32 s1579 = table4[s1578];
-  const SWord32 s1580 = s1576 ^ s1579;
-  const SWord32 s1581 = s1506 ^ s1562;
-  const SWord32 s1582 = s1580 ^ s1581;
-  const SWord16 s1583 = (SWord16) s1582;
-  const SWord8  s1584 = (SWord8) (s1583 >> 8);
-  const SWord32 s1585 = table3[s1584];
-  const SWord32 s1586 = s1567 ^ s1585;
-  const SWord8  s1587 = (SWord8) (s1570 >> 8);
-  const SWord32 s1588 = table1[s1587];
-  const SWord8  s1589 = (SWord8) s1471;
-  const SWord32 s1590 = table2[s1589];
-  const SWord32 s1591 = s1588 ^ s1590;
-  const SWord8  s1592 = (SWord8) (s1577 >> 8);
-  const SWord32 s1593 = table3[s1592];
-  const SWord32 s1594 = s1591 ^ s1593;
-  const SWord8  s1595 = (SWord8) s1508;
-  const SWord32 s1596 = table4[s1595];
-  const SWord32 s1597 = s1594 ^ s1596;
-  const SWord32 s1598 = s1523 ^ s1581;
-  const SWord32 s1599 = s1597 ^ s1598;
-  const SWord16 s1600 = (SWord16) s1599;
-  const SWord8  s1601 = (SWord8) s1600;
-  const SWord32 s1602 = table4[s1601];
-  const SWord32 s1603 = s1586 ^ s1602;
-  const SWord32 s1604 = (s1598 << 8) | (s1598 >> 24);
-  const SWord16 s1605 = (SWord16) (s1604 >> 16);
-  const SWord8  s1606 = (SWord8) (s1605 >> 8);
-  const SWord8  s1607 = table0[s1606];
-  const SWord8  s1608 = 16 ^ s1607;
-  const SWord8  s1609 = (SWord8) s1605;
-  const SWord8  s1610 = table0[s1609];
-  const SWord16 s1611 = (((SWord16) s1608) << 8) | ((SWord16) s1610);
-  const SWord16 s1612 = (SWord16) s1604;
-  const SWord8  s1613 = (SWord8) (s1612 >> 8);
-  const SWord8  s1614 = table0[s1613];
-  const SWord8  s1615 = (SWord8) s1612;
-  const SWord8  s1616 = table0[s1615];
-  const SWord16 s1617 = (((SWord16) s1614) << 8) | ((SWord16) s1616);
-  const SWord32 s1618 = (((SWord32) s1611) << 16) | ((SWord32) s1617);
-  const SWord32 s1619 = s1544 ^ s1618;
-  const SWord32 s1620 = s1603 ^ s1619;
-  const SWord16 s1621 = (SWord16) (s1620 >> 16);
-  const SWord8  s1622 = (SWord8) (s1621 >> 8);
-  const SWord32 s1623 = table1[s1622];
-  const SWord8  s1624 = (SWord8) (s1564 >> 8);
-  const SWord32 s1625 = table1[s1624];
-  const SWord16 s1626 = (SWord16) (s1582 >> 16);
-  const SWord8  s1627 = (SWord8) s1626;
-  const SWord32 s1628 = table2[s1627];
-  const SWord32 s1629 = s1625 ^ s1628;
-  const SWord8  s1630 = (SWord8) (s1600 >> 8);
-  const SWord32 s1631 = table3[s1630];
-  const SWord32 s1632 = s1629 ^ s1631;
-  const SWord16 s1633 = (SWord16) s1545;
-  const SWord8  s1634 = (SWord8) s1633;
-  const SWord32 s1635 = table4[s1634];
-  const SWord32 s1636 = s1632 ^ s1635;
-  const SWord32 s1637 = s1562 ^ s1619;
-  const SWord32 s1638 = s1636 ^ s1637;
-  const SWord16 s1639 = (SWord16) (s1638 >> 16);
-  const SWord8  s1640 = (SWord8) s1639;
-  const SWord32 s1641 = table2[s1640];
-  const SWord32 s1642 = s1623 ^ s1641;
-  const SWord8  s1643 = (SWord8) (s1626 >> 8);
-  const SWord32 s1644 = table1[s1643];
-  const SWord16 s1645 = (SWord16) (s1599 >> 16);
-  const SWord8  s1646 = (SWord8) s1645;
-  const SWord32 s1647 = table2[s1646];
-  const SWord32 s1648 = s1644 ^ s1647;
-  const SWord8  s1649 = (SWord8) (s1633 >> 8);
-  const SWord32 s1650 = table3[s1649];
-  const SWord32 s1651 = s1648 ^ s1650;
-  const SWord16 s1652 = (SWord16) s1563;
-  const SWord8  s1653 = (SWord8) s1652;
-  const SWord32 s1654 = table4[s1653];
-  const SWord32 s1655 = s1651 ^ s1654;
-  const SWord32 s1656 = s1581 ^ s1637;
-  const SWord32 s1657 = s1655 ^ s1656;
-  const SWord16 s1658 = (SWord16) s1657;
-  const SWord8  s1659 = (SWord8) (s1658 >> 8);
-  const SWord32 s1660 = table3[s1659];
-  const SWord32 s1661 = s1642 ^ s1660;
-  const SWord8  s1662 = (SWord8) (s1645 >> 8);
-  const SWord32 s1663 = table1[s1662];
-  const SWord8  s1664 = (SWord8) s1546;
-  const SWord32 s1665 = table2[s1664];
-  const SWord32 s1666 = s1663 ^ s1665;
-  const SWord8  s1667 = (SWord8) (s1652 >> 8);
-  const SWord32 s1668 = table3[s1667];
-  const SWord32 s1669 = s1666 ^ s1668;
-  const SWord8  s1670 = (SWord8) s1583;
-  const SWord32 s1671 = table4[s1670];
-  const SWord32 s1672 = s1669 ^ s1671;
-  const SWord32 s1673 = s1598 ^ s1656;
-  const SWord32 s1674 = s1672 ^ s1673;
-  const SWord16 s1675 = (SWord16) s1674;
-  const SWord8  s1676 = (SWord8) s1675;
-  const SWord32 s1677 = table4[s1676];
-  const SWord32 s1678 = s1661 ^ s1677;
-  const SWord32 s1679 = (s1673 << 8) | (s1673 >> 24);
-  const SWord16 s1680 = (SWord16) (s1679 >> 16);
-  const SWord8  s1681 = (SWord8) (s1680 >> 8);
-  const SWord8  s1682 = table0[s1681];
-  const SWord8  s1683 = 32 ^ s1682;
-  const SWord8  s1684 = (SWord8) s1680;
-  const SWord8  s1685 = table0[s1684];
-  const SWord16 s1686 = (((SWord16) s1683) << 8) | ((SWord16) s1685);
-  const SWord16 s1687 = (SWord16) s1679;
-  const SWord8  s1688 = (SWord8) (s1687 >> 8);
-  const SWord8  s1689 = table0[s1688];
-  const SWord8  s1690 = (SWord8) s1687;
-  const SWord8  s1691 = table0[s1690];
-  const SWord16 s1692 = (((SWord16) s1689) << 8) | ((SWord16) s1691);
-  const SWord32 s1693 = (((SWord32) s1686) << 16) | ((SWord32) s1692);
-  const SWord32 s1694 = s1619 ^ s1693;
-  const SWord32 s1695 = s1678 ^ s1694;
-  const SWord16 s1696 = (SWord16) (s1695 >> 16);
-  const SWord8  s1697 = (SWord8) (s1696 >> 8);
-  const SWord32 s1698 = table1[s1697];
-  const SWord8  s1699 = (SWord8) (s1639 >> 8);
-  const SWord32 s1700 = table1[s1699];
-  const SWord16 s1701 = (SWord16) (s1657 >> 16);
-  const SWord8  s1702 = (SWord8) s1701;
-  const SWord32 s1703 = table2[s1702];
-  const SWord32 s1704 = s1700 ^ s1703;
-  const SWord8  s1705 = (SWord8) (s1675 >> 8);
-  const SWord32 s1706 = table3[s1705];
-  const SWord32 s1707 = s1704 ^ s1706;
-  const SWord16 s1708 = (SWord16) s1620;
-  const SWord8  s1709 = (SWord8) s1708;
-  const SWord32 s1710 = table4[s1709];
-  const SWord32 s1711 = s1707 ^ s1710;
-  const SWord32 s1712 = s1637 ^ s1694;
-  const SWord32 s1713 = s1711 ^ s1712;
-  const SWord16 s1714 = (SWord16) (s1713 >> 16);
-  const SWord8  s1715 = (SWord8) s1714;
-  const SWord32 s1716 = table2[s1715];
-  const SWord32 s1717 = s1698 ^ s1716;
-  const SWord8  s1718 = (SWord8) (s1701 >> 8);
-  const SWord32 s1719 = table1[s1718];
-  const SWord16 s1720 = (SWord16) (s1674 >> 16);
-  const SWord8  s1721 = (SWord8) s1720;
-  const SWord32 s1722 = table2[s1721];
-  const SWord32 s1723 = s1719 ^ s1722;
-  const SWord8  s1724 = (SWord8) (s1708 >> 8);
-  const SWord32 s1725 = table3[s1724];
-  const SWord32 s1726 = s1723 ^ s1725;
-  const SWord16 s1727 = (SWord16) s1638;
-  const SWord8  s1728 = (SWord8) s1727;
-  const SWord32 s1729 = table4[s1728];
-  const SWord32 s1730 = s1726 ^ s1729;
-  const SWord32 s1731 = s1656 ^ s1712;
-  const SWord32 s1732 = s1730 ^ s1731;
-  const SWord16 s1733 = (SWord16) s1732;
-  const SWord8  s1734 = (SWord8) (s1733 >> 8);
-  const SWord32 s1735 = table3[s1734];
-  const SWord32 s1736 = s1717 ^ s1735;
-  const SWord8  s1737 = (SWord8) (s1720 >> 8);
-  const SWord32 s1738 = table1[s1737];
-  const SWord8  s1739 = (SWord8) s1621;
-  const SWord32 s1740 = table2[s1739];
-  const SWord32 s1741 = s1738 ^ s1740;
-  const SWord8  s1742 = (SWord8) (s1727 >> 8);
-  const SWord32 s1743 = table3[s1742];
-  const SWord32 s1744 = s1741 ^ s1743;
-  const SWord8  s1745 = (SWord8) s1658;
-  const SWord32 s1746 = table4[s1745];
-  const SWord32 s1747 = s1744 ^ s1746;
-  const SWord32 s1748 = s1673 ^ s1731;
-  const SWord32 s1749 = s1747 ^ s1748;
-  const SWord16 s1750 = (SWord16) s1749;
-  const SWord8  s1751 = (SWord8) s1750;
-  const SWord32 s1752 = table4[s1751];
-  const SWord32 s1753 = s1736 ^ s1752;
-  const SWord32 s1754 = (s1748 << 8) | (s1748 >> 24);
-  const SWord16 s1755 = (SWord16) (s1754 >> 16);
-  const SWord8  s1756 = (SWord8) (s1755 >> 8);
-  const SWord8  s1757 = table0[s1756];
-  const SWord8  s1758 = 64 ^ s1757;
-  const SWord8  s1759 = (SWord8) s1755;
-  const SWord8  s1760 = table0[s1759];
-  const SWord16 s1761 = (((SWord16) s1758) << 8) | ((SWord16) s1760);
-  const SWord16 s1762 = (SWord16) s1754;
-  const SWord8  s1763 = (SWord8) (s1762 >> 8);
-  const SWord8  s1764 = table0[s1763];
-  const SWord8  s1765 = (SWord8) s1762;
-  const SWord8  s1766 = table0[s1765];
-  const SWord16 s1767 = (((SWord16) s1764) << 8) | ((SWord16) s1766);
-  const SWord32 s1768 = (((SWord32) s1761) << 16) | ((SWord32) s1767);
-  const SWord32 s1769 = s1694 ^ s1768;
-  const SWord32 s1770 = s1753 ^ s1769;
-  const SWord16 s1771 = (SWord16) (s1770 >> 16);
-  const SWord8  s1772 = (SWord8) (s1771 >> 8);
-  const SWord32 s1773 = table1[s1772];
-  const SWord8  s1774 = (SWord8) (s1714 >> 8);
-  const SWord32 s1775 = table1[s1774];
-  const SWord16 s1776 = (SWord16) (s1732 >> 16);
-  const SWord8  s1777 = (SWord8) s1776;
-  const SWord32 s1778 = table2[s1777];
-  const SWord32 s1779 = s1775 ^ s1778;
-  const SWord8  s1780 = (SWord8) (s1750 >> 8);
-  const SWord32 s1781 = table3[s1780];
-  const SWord32 s1782 = s1779 ^ s1781;
-  const SWord16 s1783 = (SWord16) s1695;
-  const SWord8  s1784 = (SWord8) s1783;
-  const SWord32 s1785 = table4[s1784];
-  const SWord32 s1786 = s1782 ^ s1785;
-  const SWord32 s1787 = s1712 ^ s1769;
-  const SWord32 s1788 = s1786 ^ s1787;
-  const SWord16 s1789 = (SWord16) (s1788 >> 16);
-  const SWord8  s1790 = (SWord8) s1789;
-  const SWord32 s1791 = table2[s1790];
-  const SWord32 s1792 = s1773 ^ s1791;
-  const SWord8  s1793 = (SWord8) (s1776 >> 8);
-  const SWord32 s1794 = table1[s1793];
-  const SWord16 s1795 = (SWord16) (s1749 >> 16);
-  const SWord8  s1796 = (SWord8) s1795;
-  const SWord32 s1797 = table2[s1796];
-  const SWord32 s1798 = s1794 ^ s1797;
-  const SWord8  s1799 = (SWord8) (s1783 >> 8);
-  const SWord32 s1800 = table3[s1799];
-  const SWord32 s1801 = s1798 ^ s1800;
-  const SWord16 s1802 = (SWord16) s1713;
-  const SWord8  s1803 = (SWord8) s1802;
-  const SWord32 s1804 = table4[s1803];
-  const SWord32 s1805 = s1801 ^ s1804;
-  const SWord32 s1806 = s1731 ^ s1787;
-  const SWord32 s1807 = s1805 ^ s1806;
-  const SWord16 s1808 = (SWord16) s1807;
-  const SWord8  s1809 = (SWord8) (s1808 >> 8);
-  const SWord32 s1810 = table3[s1809];
-  const SWord32 s1811 = s1792 ^ s1810;
-  const SWord8  s1812 = (SWord8) (s1795 >> 8);
-  const SWord32 s1813 = table1[s1812];
-  const SWord8  s1814 = (SWord8) s1696;
-  const SWord32 s1815 = table2[s1814];
-  const SWord32 s1816 = s1813 ^ s1815;
-  const SWord8  s1817 = (SWord8) (s1802 >> 8);
-  const SWord32 s1818 = table3[s1817];
-  const SWord32 s1819 = s1816 ^ s1818;
-  const SWord8  s1820 = (SWord8) s1733;
-  const SWord32 s1821 = table4[s1820];
-  const SWord32 s1822 = s1819 ^ s1821;
-  const SWord32 s1823 = s1748 ^ s1806;
-  const SWord32 s1824 = s1822 ^ s1823;
-  const SWord16 s1825 = (SWord16) s1824;
-  const SWord8  s1826 = (SWord8) s1825;
-  const SWord32 s1827 = table4[s1826];
-  const SWord32 s1828 = s1811 ^ s1827;
-  const SWord32 s1829 = (s1823 << 8) | (s1823 >> 24);
-  const SWord16 s1830 = (SWord16) (s1829 >> 16);
-  const SWord8  s1831 = (SWord8) (s1830 >> 8);
-  const SWord8  s1832 = table0[s1831];
-  const SWord8  s1833 = 128 ^ s1832;
-  const SWord8  s1834 = (SWord8) s1830;
-  const SWord8  s1835 = table0[s1834];
-  const SWord16 s1836 = (((SWord16) s1833) << 8) | ((SWord16) s1835);
-  const SWord16 s1837 = (SWord16) s1829;
-  const SWord8  s1838 = (SWord8) (s1837 >> 8);
-  const SWord8  s1839 = table0[s1838];
-  const SWord8  s1840 = (SWord8) s1837;
-  const SWord8  s1841 = table0[s1840];
-  const SWord16 s1842 = (((SWord16) s1839) << 8) | ((SWord16) s1841);
-  const SWord32 s1843 = (((SWord32) s1836) << 16) | ((SWord32) s1842);
-  const SWord32 s1844 = s1769 ^ s1843;
-  const SWord32 s1845 = s1828 ^ s1844;
-  const SWord16 s1846 = (SWord16) (s1845 >> 16);
-  const SWord8  s1847 = (SWord8) (s1846 >> 8);
-  const SWord32 s1848 = table1[s1847];
-  const SWord8  s1849 = (SWord8) (s1789 >> 8);
-  const SWord32 s1850 = table1[s1849];
-  const SWord16 s1851 = (SWord16) (s1807 >> 16);
-  const SWord8  s1852 = (SWord8) s1851;
-  const SWord32 s1853 = table2[s1852];
-  const SWord32 s1854 = s1850 ^ s1853;
-  const SWord8  s1855 = (SWord8) (s1825 >> 8);
-  const SWord32 s1856 = table3[s1855];
-  const SWord32 s1857 = s1854 ^ s1856;
-  const SWord16 s1858 = (SWord16) s1770;
-  const SWord8  s1859 = (SWord8) s1858;
-  const SWord32 s1860 = table4[s1859];
-  const SWord32 s1861 = s1857 ^ s1860;
-  const SWord32 s1862 = s1787 ^ s1844;
-  const SWord32 s1863 = s1861 ^ s1862;
-  const SWord16 s1864 = (SWord16) (s1863 >> 16);
-  const SWord8  s1865 = (SWord8) s1864;
-  const SWord32 s1866 = table2[s1865];
-  const SWord32 s1867 = s1848 ^ s1866;
-  const SWord8  s1868 = (SWord8) (s1851 >> 8);
-  const SWord32 s1869 = table1[s1868];
-  const SWord16 s1870 = (SWord16) (s1824 >> 16);
-  const SWord8  s1871 = (SWord8) s1870;
-  const SWord32 s1872 = table2[s1871];
-  const SWord32 s1873 = s1869 ^ s1872;
-  const SWord8  s1874 = (SWord8) (s1858 >> 8);
-  const SWord32 s1875 = table3[s1874];
-  const SWord32 s1876 = s1873 ^ s1875;
-  const SWord16 s1877 = (SWord16) s1788;
-  const SWord8  s1878 = (SWord8) s1877;
-  const SWord32 s1879 = table4[s1878];
-  const SWord32 s1880 = s1876 ^ s1879;
-  const SWord32 s1881 = s1806 ^ s1862;
-  const SWord32 s1882 = s1880 ^ s1881;
-  const SWord16 s1883 = (SWord16) s1882;
-  const SWord8  s1884 = (SWord8) (s1883 >> 8);
-  const SWord32 s1885 = table3[s1884];
-  const SWord32 s1886 = s1867 ^ s1885;
-  const SWord8  s1887 = (SWord8) (s1870 >> 8);
-  const SWord32 s1888 = table1[s1887];
-  const SWord8  s1889 = (SWord8) s1771;
-  const SWord32 s1890 = table2[s1889];
-  const SWord32 s1891 = s1888 ^ s1890;
-  const SWord8  s1892 = (SWord8) (s1877 >> 8);
-  const SWord32 s1893 = table3[s1892];
-  const SWord32 s1894 = s1891 ^ s1893;
-  const SWord8  s1895 = (SWord8) s1808;
-  const SWord32 s1896 = table4[s1895];
-  const SWord32 s1897 = s1894 ^ s1896;
-  const SWord32 s1898 = s1823 ^ s1881;
-  const SWord32 s1899 = s1897 ^ s1898;
-  const SWord16 s1900 = (SWord16) s1899;
-  const SWord8  s1901 = (SWord8) s1900;
-  const SWord32 s1902 = table4[s1901];
-  const SWord32 s1903 = s1886 ^ s1902;
-  const SWord32 s1904 = (s1898 << 8) | (s1898 >> 24);
-  const SWord16 s1905 = (SWord16) (s1904 >> 16);
-  const SWord8  s1906 = (SWord8) (s1905 >> 8);
-  const SWord8  s1907 = table0[s1906];
-  const SWord8  s1908 = 27 ^ s1907;
-  const SWord8  s1909 = (SWord8) s1905;
-  const SWord8  s1910 = table0[s1909];
-  const SWord16 s1911 = (((SWord16) s1908) << 8) | ((SWord16) s1910);
-  const SWord16 s1912 = (SWord16) s1904;
-  const SWord8  s1913 = (SWord8) (s1912 >> 8);
-  const SWord8  s1914 = table0[s1913];
-  const SWord8  s1915 = (SWord8) s1912;
-  const SWord8  s1916 = table0[s1915];
-  const SWord16 s1917 = (((SWord16) s1914) << 8) | ((SWord16) s1916);
-  const SWord32 s1918 = (((SWord32) s1911) << 16) | ((SWord32) s1917);
-  const SWord32 s1919 = s1844 ^ s1918;
-  const SWord32 s1920 = s1903 ^ s1919;
-  const SWord16 s1921 = (SWord16) (s1920 >> 16);
-  const SWord8  s1922 = (SWord8) (s1921 >> 8);
-  const SWord8  s1923 = table0[s1922];
-  const SWord8  s1924 = (SWord8) (s1864 >> 8);
-  const SWord32 s1925 = table1[s1924];
-  const SWord16 s1926 = (SWord16) (s1882 >> 16);
-  const SWord8  s1927 = (SWord8) s1926;
-  const SWord32 s1928 = table2[s1927];
-  const SWord32 s1929 = s1925 ^ s1928;
-  const SWord8  s1930 = (SWord8) (s1900 >> 8);
-  const SWord32 s1931 = table3[s1930];
-  const SWord32 s1932 = s1929 ^ s1931;
-  const SWord16 s1933 = (SWord16) s1845;
-  const SWord8  s1934 = (SWord8) s1933;
-  const SWord32 s1935 = table4[s1934];
-  const SWord32 s1936 = s1932 ^ s1935;
-  const SWord32 s1937 = s1862 ^ s1919;
-  const SWord32 s1938 = s1936 ^ s1937;
-  const SWord16 s1939 = (SWord16) (s1938 >> 16);
-  const SWord8  s1940 = (SWord8) s1939;
-  const SWord8  s1941 = table0[s1940];
-  const SWord16 s1942 = (((SWord16) s1923) << 8) | ((SWord16) s1941);
-  const SWord8  s1943 = (SWord8) (s1926 >> 8);
-  const SWord32 s1944 = table1[s1943];
-  const SWord16 s1945 = (SWord16) (s1899 >> 16);
-  const SWord8  s1946 = (SWord8) s1945;
-  const SWord32 s1947 = table2[s1946];
-  const SWord32 s1948 = s1944 ^ s1947;
-  const SWord8  s1949 = (SWord8) (s1933 >> 8);
-  const SWord32 s1950 = table3[s1949];
-  const SWord32 s1951 = s1948 ^ s1950;
-  const SWord16 s1952 = (SWord16) s1863;
-  const SWord8  s1953 = (SWord8) s1952;
-  const SWord32 s1954 = table4[s1953];
-  const SWord32 s1955 = s1951 ^ s1954;
-  const SWord32 s1956 = s1881 ^ s1937;
-  const SWord32 s1957 = s1955 ^ s1956;
-  const SWord16 s1958 = (SWord16) s1957;
-  const SWord8  s1959 = (SWord8) (s1958 >> 8);
-  const SWord8  s1960 = table0[s1959];
-  const SWord8  s1961 = (SWord8) (s1945 >> 8);
-  const SWord32 s1962 = table1[s1961];
-  const SWord8  s1963 = (SWord8) s1846;
-  const SWord32 s1964 = table2[s1963];
-  const SWord32 s1965 = s1962 ^ s1964;
-  const SWord8  s1966 = (SWord8) (s1952 >> 8);
-  const SWord32 s1967 = table3[s1966];
-  const SWord32 s1968 = s1965 ^ s1967;
-  const SWord8  s1969 = (SWord8) s1883;
-  const SWord32 s1970 = table4[s1969];
-  const SWord32 s1971 = s1968 ^ s1970;
-  const SWord32 s1972 = s1898 ^ s1956;
-  const SWord32 s1973 = s1971 ^ s1972;
-  const SWord16 s1974 = (SWord16) s1973;
-  const SWord8  s1975 = (SWord8) s1974;
-  const SWord8  s1976 = table0[s1975];
-  const SWord16 s1977 = (((SWord16) s1960) << 8) | ((SWord16) s1976);
-  const SWord32 s1978 = (((SWord32) s1942) << 16) | ((SWord32) s1977);
-  const SWord32 s1979 = (s1972 << 8) | (s1972 >> 24);
-  const SWord16 s1980 = (SWord16) (s1979 >> 16);
-  const SWord8  s1981 = (SWord8) (s1980 >> 8);
-  const SWord8  s1982 = table0[s1981];
-  const SWord8  s1983 = 54 ^ s1982;
-  const SWord8  s1984 = (SWord8) s1980;
-  const SWord8  s1985 = table0[s1984];
-  const SWord16 s1986 = (((SWord16) s1983) << 8) | ((SWord16) s1985);
-  const SWord16 s1987 = (SWord16) s1979;
-  const SWord8  s1988 = (SWord8) (s1987 >> 8);
-  const SWord8  s1989 = table0[s1988];
-  const SWord8  s1990 = (SWord8) s1987;
-  const SWord8  s1991 = table0[s1990];
-  const SWord16 s1992 = (((SWord16) s1989) << 8) | ((SWord16) s1991);
-  const SWord32 s1993 = (((SWord32) s1986) << 16) | ((SWord32) s1992);
-  const SWord32 s1994 = s1919 ^ s1993;
-  const SWord32 s1995 = s1978 ^ s1994;
-  const SWord8  s1996 = (SWord8) (s1939 >> 8);
-  const SWord8  s1997 = table0[s1996];
-  const SWord16 s1998 = (SWord16) (s1957 >> 16);
-  const SWord8  s1999 = (SWord8) s1998;
-  const SWord8  s2000 = table0[s1999];
-  const SWord16 s2001 = (((SWord16) s1997) << 8) | ((SWord16) s2000);
-  const SWord8  s2002 = (SWord8) (s1974 >> 8);
-  const SWord8  s2003 = table0[s2002];
-  const SWord16 s2004 = (SWord16) s1920;
-  const SWord8  s2005 = (SWord8) s2004;
-  const SWord8  s2006 = table0[s2005];
-  const SWord16 s2007 = (((SWord16) s2003) << 8) | ((SWord16) s2006);
-  const SWord32 s2008 = (((SWord32) s2001) << 16) | ((SWord32) s2007);
-  const SWord32 s2009 = s1937 ^ s1994;
-  const SWord32 s2010 = s2008 ^ s2009;
-  const SWord8  s2011 = (SWord8) (s1998 >> 8);
-  const SWord8  s2012 = table0[s2011];
-  const SWord16 s2013 = (SWord16) (s1973 >> 16);
-  const SWord8  s2014 = (SWord8) s2013;
-  const SWord8  s2015 = table0[s2014];
-  const SWord16 s2016 = (((SWord16) s2012) << 8) | ((SWord16) s2015);
-  const SWord8  s2017 = (SWord8) (s2004 >> 8);
-  const SWord8  s2018 = table0[s2017];
-  const SWord16 s2019 = (SWord16) s1938;
-  const SWord8  s2020 = (SWord8) s2019;
-  const SWord8  s2021 = table0[s2020];
-  const SWord16 s2022 = (((SWord16) s2018) << 8) | ((SWord16) s2021);
-  const SWord32 s2023 = (((SWord32) s2016) << 16) | ((SWord32) s2022);
-  const SWord32 s2024 = s1956 ^ s2009;
-  const SWord32 s2025 = s2023 ^ s2024;
-  const SWord8  s2026 = (SWord8) (s2013 >> 8);
-  const SWord8  s2027 = table0[s2026];
-  const SWord8  s2028 = (SWord8) s1921;
-  const SWord8  s2029 = table0[s2028];
-  const SWord16 s2030 = (((SWord16) s2027) << 8) | ((SWord16) s2029);
-  const SWord8  s2031 = (SWord8) (s2019 >> 8);
-  const SWord8  s2032 = table0[s2031];
-  const SWord8  s2033 = (SWord8) s1958;
-  const SWord8  s2034 = table0[s2033];
-  const SWord16 s2035 = (((SWord16) s2032) << 8) | ((SWord16) s2034);
-  const SWord32 s2036 = (((SWord32) s2030) << 16) | ((SWord32) s2035);
-  const SWord32 s2037 = s1972 ^ s2024;
-  const SWord32 s2038 = s2036 ^ s2037;
-  
-  ct[0] = s1995;
-  ct[1] = s2010;
-  ct[2] = s2025;
-  ct[3] = s2038;
-}
-== END: "aes128Enc.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Lib.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Lib.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/aes128Lib.gold
+++ /dev/null
@@ -1,3763 +0,0 @@
-== BEGIN: "aes128KeySchedule.c" ================
-/* File: "aes128KeySchedule.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "aes128Lib.h"
-
-void aes128KeySchedule(const SWord32 *key, SWord32 *encKS,
-                       SWord32 *decKS)
-{
-  const SWord32 s0 = key[0];
-  const SWord32 s1 = key[1];
-  const SWord32 s2 = key[2];
-  const SWord32 s3 = key[3];
-  static const SWord8 table0[] = {
-       99, 124, 119, 123, 242, 107, 111, 197,  48,   1, 103,  43, 254,
-      215, 171, 118, 202, 130, 201, 125, 250,  89,  71, 240, 173, 212,
-      162, 175, 156, 164, 114, 192, 183, 253, 147,  38,  54,  63, 247,
-      204,  52, 165, 229, 241, 113, 216,  49,  21,   4, 199,  35, 195,
-       24, 150,   5, 154,   7,  18, 128, 226, 235,  39, 178, 117,   9,
-      131,  44,  26,  27, 110,  90, 160,  82,  59, 214, 179,  41, 227,
-       47, 132,  83, 209,   0, 237,  32, 252, 177,  91, 106, 203, 190,
-       57,  74,  76,  88, 207, 208, 239, 170, 251,  67,  77,  51, 133,
-       69, 249,   2, 127,  80,  60, 159, 168,  81, 163,  64, 143, 146,
-      157,  56, 245, 188, 182, 218,  33,  16, 255, 243, 210, 205,  12,
-       19, 236,  95, 151,  68,  23, 196, 167, 126,  61, 100,  93,  25,
-      115,  96, 129,  79, 220,  34,  42, 144, 136,  70, 238, 184,  20,
-      222,  94,  11, 219, 224,  50,  58,  10,  73,   6,  36,  92, 194,
-      211, 172,  98, 145, 149, 228, 121, 231, 200,  55, 109, 141, 213,
-       78, 169, 108,  86, 244, 234, 101, 122, 174,   8, 186, 120,  37,
-       46,  28, 166, 180, 198, 232, 221, 116,  31,  75, 189, 139, 138,
-      112,  62, 181, 102,  72,   3, 246,  14,  97,  53,  87, 185, 134,
-      193,  29, 158, 225, 248, 152,  17, 105, 217, 142, 148, 155,  30,
-      135, 233, 206,  85,  40, 223, 140, 161, 137,  13, 191, 230,  66,
-      104,  65, 153,  45,  15, 176,  84, 187,  22
-  };
-  static const SWord8 table1[] = {
-        0,  14,  28,  18,  56,  54,  36,  42, 112, 126, 108,  98,  72,
-       70,  84,  90, 224, 238, 252, 242, 216, 214, 196, 202, 144, 158,
-      140, 130, 168, 166, 180, 186, 219, 213, 199, 201, 227, 237, 255,
-      241, 171, 165, 183, 185, 147, 157, 143, 129,  59,  53,  39,  41,
-        3,  13,  31,  17,  75,  69,  87,  89, 115, 125, 111,  97, 173,
-      163, 177, 191, 149, 155, 137, 135, 221, 211, 193, 207, 229, 235,
-      249, 247,  77,  67,  81,  95, 117, 123, 105, 103,  61,  51,  33,
-       47,   5,  11,  25,  23, 118, 120, 106, 100,  78,  64,  82,  92,
-        6,   8,  26,  20,  62,  48,  34,  44, 150, 152, 138, 132, 174,
-      160, 178, 188, 230, 232, 250, 244, 222, 208, 194, 204,  65,  79,
-       93,  83, 121, 119, 101, 107,  49,  63,  45,  35,   9,   7,  21,
-       27, 161, 175, 189, 179, 153, 151, 133, 139, 209, 223, 205, 195,
-      233, 231, 245, 251, 154, 148, 134, 136, 162, 172, 190, 176, 234,
-      228, 246, 248, 210, 220, 206, 192, 122, 116, 102, 104,  66,  76,
-       94,  80,  10,   4,  22,  24,  50,  60,  46,  32, 236, 226, 240,
-      254, 212, 218, 200, 198, 156, 146, 128, 142, 164, 170, 184, 182,
-       12,   2,  16,  30,  52,  58,  40,  38, 124, 114,  96, 110,  68,
-       74,  88,  86,  55,  57,  43,  37,  15,   1,  19,  29,  71,  73,
-       91,  85, 127, 113,  99, 109, 215, 217, 203, 197, 239, 225, 243,
-      253, 167, 169, 187, 181, 159, 145, 131, 141
-  };
-  static const SWord8 table2[] = {
-        0,  11,  22,  29,  44,  39,  58,  49,  88,  83,  78,  69, 116,
-      127,  98, 105, 176, 187, 166, 173, 156, 151, 138, 129, 232, 227,
-      254, 245, 196, 207, 210, 217, 123, 112, 109, 102,  87,  92,  65,
-       74,  35,  40,  53,  62,  15,   4,  25,  18, 203, 192, 221, 214,
-      231, 236, 241, 250, 147, 152, 133, 142, 191, 180, 169, 162, 246,
-      253, 224, 235, 218, 209, 204, 199, 174, 165, 184, 179, 130, 137,
-      148, 159,  70,  77,  80,  91, 106,  97, 124, 119,  30,  21,   8,
-        3,  50,  57,  36,  47, 141, 134, 155, 144, 161, 170, 183, 188,
-      213, 222, 195, 200, 249, 242, 239, 228,  61,  54,  43,  32,  17,
-       26,   7,  12, 101, 110, 115, 120,  73,  66,  95,  84, 247, 252,
-      225, 234, 219, 208, 205, 198, 175, 164, 185, 178, 131, 136, 149,
-      158,  71,  76,  81,  90, 107,  96, 125, 118,  31,  20,   9,   2,
-       51,  56,  37,  46, 140, 135, 154, 145, 160, 171, 182, 189, 212,
-      223, 194, 201, 248, 243, 238, 229,  60,  55,  42,  33,  16,  27,
-        6,  13, 100, 111, 114, 121,  72,  67,  94,  85,   1,  10,  23,
-       28,  45,  38,  59,  48,  89,  82,  79,  68, 117, 126,  99, 104,
-      177, 186, 167, 172, 157, 150, 139, 128, 233, 226, 255, 244, 197,
-      206, 211, 216, 122, 113, 108, 103,  86,  93,  64,  75,  34,  41,
-       52,  63,  14,   5,  24,  19, 202, 193, 220, 215, 230, 237, 240,
-      251, 146, 153, 132, 143, 190, 181, 168, 163
-  };
-  static const SWord8 table3[] = {
-        0,  13,  26,  23,  52,  57,  46,  35, 104, 101, 114, 127,  92,
-       81,  70,  75, 208, 221, 202, 199, 228, 233, 254, 243, 184, 181,
-      162, 175, 140, 129, 150, 155, 187, 182, 161, 172, 143, 130, 149,
-      152, 211, 222, 201, 196, 231, 234, 253, 240, 107, 102, 113, 124,
-       95,  82,  69,  72,   3,  14,  25,  20,  55,  58,  45,  32, 109,
-       96, 119, 122,  89,  84,  67,  78,   5,   8,  31,  18,  49,  60,
-       43,  38, 189, 176, 167, 170, 137, 132, 147, 158, 213, 216, 207,
-      194, 225, 236, 251, 246, 214, 219, 204, 193, 226, 239, 248, 245,
-      190, 179, 164, 169, 138, 135, 144, 157,   6,  11,  28,  17,  50,
-       63,  40,  37, 110,  99, 116, 121,  90,  87,  64,  77, 218, 215,
-      192, 205, 238, 227, 244, 249, 178, 191, 168, 165, 134, 139, 156,
-      145,  10,   7,  16,  29,  62,  51,  36,  41,  98, 111, 120, 117,
-       86,  91,  76,  65,  97, 108, 123, 118,  85,  88,  79,  66,   9,
-        4,  19,  30,  61,  48,  39,  42, 177, 188, 171, 166, 133, 136,
-      159, 146, 217, 212, 195, 206, 237, 224, 247, 250, 183, 186, 173,
-      160, 131, 142, 153, 148, 223, 210, 197, 200, 235, 230, 241, 252,
-      103, 106, 125, 112,  83,  94,  73,  68,  15,   2,  21,  24,  59,
-       54,  33,  44,  12,   1,  22,  27,  56,  53,  34,  47, 100, 105,
-      126, 115,  80,  93,  74,  71, 220, 209, 198, 203, 232, 229, 242,
-      255, 180, 185, 174, 163, 128, 141, 154, 151
-  };
-  static const SWord8 table4[] = {
-        0,   9,  18,  27,  36,  45,  54,  63,  72,  65,  90,  83, 108,
-      101, 126, 119, 144, 153, 130, 139, 180, 189, 166, 175, 216, 209,
-      202, 195, 252, 245, 238, 231,  59,  50,  41,  32,  31,  22,  13,
-        4, 115, 122,  97, 104,  87,  94,  69,  76, 171, 162, 185, 176,
-      143, 134, 157, 148, 227, 234, 241, 248, 199, 206, 213, 220, 118,
-      127, 100, 109,  82,  91,  64,  73,  62,  55,  44,  37,  26,  19,
-        8,   1, 230, 239, 244, 253, 194, 203, 208, 217, 174, 167, 188,
-      181, 138, 131, 152, 145,  77,  68,  95,  86, 105,  96, 123, 114,
-        5,  12,  23,  30,  33,  40,  51,  58, 221, 212, 207, 198, 249,
-      240, 235, 226, 149, 156, 135, 142, 177, 184, 163, 170, 236, 229,
-      254, 247, 200, 193, 218, 211, 164, 173, 182, 191, 128, 137, 146,
-      155, 124, 117, 110, 103,  88,  81,  74,  67,  52,  61,  38,  47,
-       16,  25,   2,  11, 215, 222, 197, 204, 243, 250, 225, 232, 159,
-      150, 141, 132, 187, 178, 169, 160,  71,  78,  85,  92,  99, 106,
-      113, 120,  15,   6,  29,  20,  43,  34,  57,  48, 154, 147, 136,
-      129, 190, 183, 172, 165, 210, 219, 192, 201, 246, 255, 228, 237,
-       10,   3,  24,  17,  46,  39,  60,  53,  66,  75,  80,  89, 102,
-      111, 116, 125, 161, 168, 179, 186, 133, 140, 151, 158, 233, 224,
-      251, 242, 205, 196, 223, 214,  49,  56,  35,  42,  21,  28,   7,
-       14, 121, 112, 107,  98,  93,  84,  79,  70
-  };
-  const SWord32 s260 = (s3 << 8) | (s3 >> 24);
-  const SWord16 s261 = (SWord16) (s260 >> 16);
-  const SWord8  s262 = (SWord8) (s261 >> 8);
-  const SWord8  s263 = table0[s262];
-  const SWord8  s264 = 1 ^ s263;
-  const SWord8  s265 = (SWord8) s261;
-  const SWord8  s266 = table0[s265];
-  const SWord16 s267 = (((SWord16) s264) << 8) | ((SWord16) s266);
-  const SWord16 s268 = (SWord16) s260;
-  const SWord8  s269 = (SWord8) (s268 >> 8);
-  const SWord8  s270 = table0[s269];
-  const SWord8  s271 = (SWord8) s268;
-  const SWord8  s272 = table0[s271];
-  const SWord16 s273 = (((SWord16) s270) << 8) | ((SWord16) s272);
-  const SWord32 s274 = (((SWord32) s267) << 16) | ((SWord32) s273);
-  const SWord32 s275 = s0 ^ s274;
-  const SWord32 s276 = s1 ^ s275;
-  const SWord32 s277 = s2 ^ s276;
-  const SWord32 s278 = s3 ^ s277;
-  const SWord32 s279 = (s278 << 8) | (s278 >> 24);
-  const SWord16 s280 = (SWord16) (s279 >> 16);
-  const SWord8  s281 = (SWord8) (s280 >> 8);
-  const SWord8  s282 = table0[s281];
-  const SWord8  s283 = 2 ^ s282;
-  const SWord8  s284 = (SWord8) s280;
-  const SWord8  s285 = table0[s284];
-  const SWord16 s286 = (((SWord16) s283) << 8) | ((SWord16) s285);
-  const SWord16 s287 = (SWord16) s279;
-  const SWord8  s288 = (SWord8) (s287 >> 8);
-  const SWord8  s289 = table0[s288];
-  const SWord8  s290 = (SWord8) s287;
-  const SWord8  s291 = table0[s290];
-  const SWord16 s292 = (((SWord16) s289) << 8) | ((SWord16) s291);
-  const SWord32 s293 = (((SWord32) s286) << 16) | ((SWord32) s292);
-  const SWord32 s294 = s275 ^ s293;
-  const SWord32 s295 = s276 ^ s294;
-  const SWord32 s296 = s277 ^ s295;
-  const SWord32 s297 = s278 ^ s296;
-  const SWord32 s298 = (s297 << 8) | (s297 >> 24);
-  const SWord16 s299 = (SWord16) (s298 >> 16);
-  const SWord8  s300 = (SWord8) (s299 >> 8);
-  const SWord8  s301 = table0[s300];
-  const SWord8  s302 = 4 ^ s301;
-  const SWord8  s303 = (SWord8) s299;
-  const SWord8  s304 = table0[s303];
-  const SWord16 s305 = (((SWord16) s302) << 8) | ((SWord16) s304);
-  const SWord16 s306 = (SWord16) s298;
-  const SWord8  s307 = (SWord8) (s306 >> 8);
-  const SWord8  s308 = table0[s307];
-  const SWord8  s309 = (SWord8) s306;
-  const SWord8  s310 = table0[s309];
-  const SWord16 s311 = (((SWord16) s308) << 8) | ((SWord16) s310);
-  const SWord32 s312 = (((SWord32) s305) << 16) | ((SWord32) s311);
-  const SWord32 s313 = s294 ^ s312;
-  const SWord32 s314 = s295 ^ s313;
-  const SWord32 s315 = s296 ^ s314;
-  const SWord32 s316 = s297 ^ s315;
-  const SWord32 s317 = (s316 << 8) | (s316 >> 24);
-  const SWord16 s318 = (SWord16) (s317 >> 16);
-  const SWord8  s319 = (SWord8) (s318 >> 8);
-  const SWord8  s320 = table0[s319];
-  const SWord8  s321 = 8 ^ s320;
-  const SWord8  s322 = (SWord8) s318;
-  const SWord8  s323 = table0[s322];
-  const SWord16 s324 = (((SWord16) s321) << 8) | ((SWord16) s323);
-  const SWord16 s325 = (SWord16) s317;
-  const SWord8  s326 = (SWord8) (s325 >> 8);
-  const SWord8  s327 = table0[s326];
-  const SWord8  s328 = (SWord8) s325;
-  const SWord8  s329 = table0[s328];
-  const SWord16 s330 = (((SWord16) s327) << 8) | ((SWord16) s329);
-  const SWord32 s331 = (((SWord32) s324) << 16) | ((SWord32) s330);
-  const SWord32 s332 = s313 ^ s331;
-  const SWord32 s333 = s314 ^ s332;
-  const SWord32 s334 = s315 ^ s333;
-  const SWord32 s335 = s316 ^ s334;
-  const SWord32 s336 = (s335 << 8) | (s335 >> 24);
-  const SWord16 s337 = (SWord16) (s336 >> 16);
-  const SWord8  s338 = (SWord8) (s337 >> 8);
-  const SWord8  s339 = table0[s338];
-  const SWord8  s340 = 16 ^ s339;
-  const SWord8  s341 = (SWord8) s337;
-  const SWord8  s342 = table0[s341];
-  const SWord16 s343 = (((SWord16) s340) << 8) | ((SWord16) s342);
-  const SWord16 s344 = (SWord16) s336;
-  const SWord8  s345 = (SWord8) (s344 >> 8);
-  const SWord8  s346 = table0[s345];
-  const SWord8  s347 = (SWord8) s344;
-  const SWord8  s348 = table0[s347];
-  const SWord16 s349 = (((SWord16) s346) << 8) | ((SWord16) s348);
-  const SWord32 s350 = (((SWord32) s343) << 16) | ((SWord32) s349);
-  const SWord32 s351 = s332 ^ s350;
-  const SWord32 s352 = s333 ^ s351;
-  const SWord32 s353 = s334 ^ s352;
-  const SWord32 s354 = s335 ^ s353;
-  const SWord32 s355 = (s354 << 8) | (s354 >> 24);
-  const SWord16 s356 = (SWord16) (s355 >> 16);
-  const SWord8  s357 = (SWord8) (s356 >> 8);
-  const SWord8  s358 = table0[s357];
-  const SWord8  s359 = 32 ^ s358;
-  const SWord8  s360 = (SWord8) s356;
-  const SWord8  s361 = table0[s360];
-  const SWord16 s362 = (((SWord16) s359) << 8) | ((SWord16) s361);
-  const SWord16 s363 = (SWord16) s355;
-  const SWord8  s364 = (SWord8) (s363 >> 8);
-  const SWord8  s365 = table0[s364];
-  const SWord8  s366 = (SWord8) s363;
-  const SWord8  s367 = table0[s366];
-  const SWord16 s368 = (((SWord16) s365) << 8) | ((SWord16) s367);
-  const SWord32 s369 = (((SWord32) s362) << 16) | ((SWord32) s368);
-  const SWord32 s370 = s351 ^ s369;
-  const SWord32 s371 = s352 ^ s370;
-  const SWord32 s372 = s353 ^ s371;
-  const SWord32 s373 = s354 ^ s372;
-  const SWord32 s374 = (s373 << 8) | (s373 >> 24);
-  const SWord16 s375 = (SWord16) (s374 >> 16);
-  const SWord8  s376 = (SWord8) (s375 >> 8);
-  const SWord8  s377 = table0[s376];
-  const SWord8  s378 = 64 ^ s377;
-  const SWord8  s379 = (SWord8) s375;
-  const SWord8  s380 = table0[s379];
-  const SWord16 s381 = (((SWord16) s378) << 8) | ((SWord16) s380);
-  const SWord16 s382 = (SWord16) s374;
-  const SWord8  s383 = (SWord8) (s382 >> 8);
-  const SWord8  s384 = table0[s383];
-  const SWord8  s385 = (SWord8) s382;
-  const SWord8  s386 = table0[s385];
-  const SWord16 s387 = (((SWord16) s384) << 8) | ((SWord16) s386);
-  const SWord32 s388 = (((SWord32) s381) << 16) | ((SWord32) s387);
-  const SWord32 s389 = s370 ^ s388;
-  const SWord32 s390 = s371 ^ s389;
-  const SWord32 s391 = s372 ^ s390;
-  const SWord32 s392 = s373 ^ s391;
-  const SWord32 s393 = (s392 << 8) | (s392 >> 24);
-  const SWord16 s394 = (SWord16) (s393 >> 16);
-  const SWord8  s395 = (SWord8) (s394 >> 8);
-  const SWord8  s396 = table0[s395];
-  const SWord8  s397 = 128 ^ s396;
-  const SWord8  s398 = (SWord8) s394;
-  const SWord8  s399 = table0[s398];
-  const SWord16 s400 = (((SWord16) s397) << 8) | ((SWord16) s399);
-  const SWord16 s401 = (SWord16) s393;
-  const SWord8  s402 = (SWord8) (s401 >> 8);
-  const SWord8  s403 = table0[s402];
-  const SWord8  s404 = (SWord8) s401;
-  const SWord8  s405 = table0[s404];
-  const SWord16 s406 = (((SWord16) s403) << 8) | ((SWord16) s405);
-  const SWord32 s407 = (((SWord32) s400) << 16) | ((SWord32) s406);
-  const SWord32 s408 = s389 ^ s407;
-  const SWord32 s409 = s390 ^ s408;
-  const SWord32 s410 = s391 ^ s409;
-  const SWord32 s411 = s392 ^ s410;
-  const SWord32 s412 = (s411 << 8) | (s411 >> 24);
-  const SWord16 s413 = (SWord16) (s412 >> 16);
-  const SWord8  s414 = (SWord8) (s413 >> 8);
-  const SWord8  s415 = table0[s414];
-  const SWord8  s416 = 27 ^ s415;
-  const SWord8  s417 = (SWord8) s413;
-  const SWord8  s418 = table0[s417];
-  const SWord16 s419 = (((SWord16) s416) << 8) | ((SWord16) s418);
-  const SWord16 s420 = (SWord16) s412;
-  const SWord8  s421 = (SWord8) (s420 >> 8);
-  const SWord8  s422 = table0[s421];
-  const SWord8  s423 = (SWord8) s420;
-  const SWord8  s424 = table0[s423];
-  const SWord16 s425 = (((SWord16) s422) << 8) | ((SWord16) s424);
-  const SWord32 s426 = (((SWord32) s419) << 16) | ((SWord32) s425);
-  const SWord32 s427 = s408 ^ s426;
-  const SWord32 s428 = s409 ^ s427;
-  const SWord32 s429 = s410 ^ s428;
-  const SWord32 s430 = s411 ^ s429;
-  const SWord32 s431 = (s430 << 8) | (s430 >> 24);
-  const SWord16 s432 = (SWord16) (s431 >> 16);
-  const SWord8  s433 = (SWord8) (s432 >> 8);
-  const SWord8  s434 = table0[s433];
-  const SWord8  s435 = 54 ^ s434;
-  const SWord8  s436 = (SWord8) s432;
-  const SWord8  s437 = table0[s436];
-  const SWord16 s438 = (((SWord16) s435) << 8) | ((SWord16) s437);
-  const SWord16 s439 = (SWord16) s431;
-  const SWord8  s440 = (SWord8) (s439 >> 8);
-  const SWord8  s441 = table0[s440];
-  const SWord8  s442 = (SWord8) s439;
-  const SWord8  s443 = table0[s442];
-  const SWord16 s444 = (((SWord16) s441) << 8) | ((SWord16) s443);
-  const SWord32 s445 = (((SWord32) s438) << 16) | ((SWord32) s444);
-  const SWord32 s446 = s427 ^ s445;
-  const SWord32 s447 = s428 ^ s446;
-  const SWord32 s448 = s429 ^ s447;
-  const SWord32 s449 = s430 ^ s448;
-  const SWord16 s450 = (SWord16) (s427 >> 16);
-  const SWord8  s451 = (SWord8) (s450 >> 8);
-  const SWord8  s452 = table1[s451];
-  const SWord8  s453 = (SWord8) s450;
-  const SWord8  s454 = table2[s453];
-  const SWord16 s455 = (SWord16) s427;
-  const SWord8  s456 = (SWord8) (s455 >> 8);
-  const SWord8  s457 = table3[s456];
-  const SWord8  s458 = (SWord8) s455;
-  const SWord8  s459 = table4[s458];
-  const SWord8  s460 = s457 ^ s459;
-  const SWord8  s461 = s454 ^ s460;
-  const SWord8  s462 = s452 ^ s461;
-  const SWord8  s463 = table4[s451];
-  const SWord8  s464 = table1[s453];
-  const SWord8  s465 = table2[s456];
-  const SWord8  s466 = table3[s458];
-  const SWord8  s467 = s465 ^ s466;
-  const SWord8  s468 = s464 ^ s467;
-  const SWord8  s469 = s463 ^ s468;
-  const SWord16 s470 = (((SWord16) s462) << 8) | ((SWord16) s469);
-  const SWord8  s471 = table3[s451];
-  const SWord8  s472 = table4[s453];
-  const SWord8  s473 = table1[s456];
-  const SWord8  s474 = table2[s458];
-  const SWord8  s475 = s473 ^ s474;
-  const SWord8  s476 = s472 ^ s475;
-  const SWord8  s477 = s471 ^ s476;
-  const SWord8  s478 = table2[s451];
-  const SWord8  s479 = table3[s453];
-  const SWord8  s480 = table4[s456];
-  const SWord8  s481 = table1[s458];
-  const SWord8  s482 = s480 ^ s481;
-  const SWord8  s483 = s479 ^ s482;
-  const SWord8  s484 = s478 ^ s483;
-  const SWord16 s485 = (((SWord16) s477) << 8) | ((SWord16) s484);
-  const SWord32 s486 = (((SWord32) s470) << 16) | ((SWord32) s485);
-  const SWord16 s487 = (SWord16) (s428 >> 16);
-  const SWord8  s488 = (SWord8) (s487 >> 8);
-  const SWord8  s489 = table1[s488];
-  const SWord8  s490 = (SWord8) s487;
-  const SWord8  s491 = table2[s490];
-  const SWord16 s492 = (SWord16) s428;
-  const SWord8  s493 = (SWord8) (s492 >> 8);
-  const SWord8  s494 = table3[s493];
-  const SWord8  s495 = (SWord8) s492;
-  const SWord8  s496 = table4[s495];
-  const SWord8  s497 = s494 ^ s496;
-  const SWord8  s498 = s491 ^ s497;
-  const SWord8  s499 = s489 ^ s498;
-  const SWord8  s500 = table4[s488];
-  const SWord8  s501 = table1[s490];
-  const SWord8  s502 = table2[s493];
-  const SWord8  s503 = table3[s495];
-  const SWord8  s504 = s502 ^ s503;
-  const SWord8  s505 = s501 ^ s504;
-  const SWord8  s506 = s500 ^ s505;
-  const SWord16 s507 = (((SWord16) s499) << 8) | ((SWord16) s506);
-  const SWord8  s508 = table3[s488];
-  const SWord8  s509 = table4[s490];
-  const SWord8  s510 = table1[s493];
-  const SWord8  s511 = table2[s495];
-  const SWord8  s512 = s510 ^ s511;
-  const SWord8  s513 = s509 ^ s512;
-  const SWord8  s514 = s508 ^ s513;
-  const SWord8  s515 = table2[s488];
-  const SWord8  s516 = table3[s490];
-  const SWord8  s517 = table4[s493];
-  const SWord8  s518 = table1[s495];
-  const SWord8  s519 = s517 ^ s518;
-  const SWord8  s520 = s516 ^ s519;
-  const SWord8  s521 = s515 ^ s520;
-  const SWord16 s522 = (((SWord16) s514) << 8) | ((SWord16) s521);
-  const SWord32 s523 = (((SWord32) s507) << 16) | ((SWord32) s522);
-  const SWord16 s524 = (SWord16) (s429 >> 16);
-  const SWord8  s525 = (SWord8) (s524 >> 8);
-  const SWord8  s526 = table1[s525];
-  const SWord8  s527 = (SWord8) s524;
-  const SWord8  s528 = table2[s527];
-  const SWord16 s529 = (SWord16) s429;
-  const SWord8  s530 = (SWord8) (s529 >> 8);
-  const SWord8  s531 = table3[s530];
-  const SWord8  s532 = (SWord8) s529;
-  const SWord8  s533 = table4[s532];
-  const SWord8  s534 = s531 ^ s533;
-  const SWord8  s535 = s528 ^ s534;
-  const SWord8  s536 = s526 ^ s535;
-  const SWord8  s537 = table4[s525];
-  const SWord8  s538 = table1[s527];
-  const SWord8  s539 = table2[s530];
-  const SWord8  s540 = table3[s532];
-  const SWord8  s541 = s539 ^ s540;
-  const SWord8  s542 = s538 ^ s541;
-  const SWord8  s543 = s537 ^ s542;
-  const SWord16 s544 = (((SWord16) s536) << 8) | ((SWord16) s543);
-  const SWord8  s545 = table3[s525];
-  const SWord8  s546 = table4[s527];
-  const SWord8  s547 = table1[s530];
-  const SWord8  s548 = table2[s532];
-  const SWord8  s549 = s547 ^ s548;
-  const SWord8  s550 = s546 ^ s549;
-  const SWord8  s551 = s545 ^ s550;
-  const SWord8  s552 = table2[s525];
-  const SWord8  s553 = table3[s527];
-  const SWord8  s554 = table4[s530];
-  const SWord8  s555 = table1[s532];
-  const SWord8  s556 = s554 ^ s555;
-  const SWord8  s557 = s553 ^ s556;
-  const SWord8  s558 = s552 ^ s557;
-  const SWord16 s559 = (((SWord16) s551) << 8) | ((SWord16) s558);
-  const SWord32 s560 = (((SWord32) s544) << 16) | ((SWord32) s559);
-  const SWord16 s561 = (SWord16) (s430 >> 16);
-  const SWord8  s562 = (SWord8) (s561 >> 8);
-  const SWord8  s563 = table1[s562];
-  const SWord8  s564 = (SWord8) s561;
-  const SWord8  s565 = table2[s564];
-  const SWord16 s566 = (SWord16) s430;
-  const SWord8  s567 = (SWord8) (s566 >> 8);
-  const SWord8  s568 = table3[s567];
-  const SWord8  s569 = (SWord8) s566;
-  const SWord8  s570 = table4[s569];
-  const SWord8  s571 = s568 ^ s570;
-  const SWord8  s572 = s565 ^ s571;
-  const SWord8  s573 = s563 ^ s572;
-  const SWord8  s574 = table4[s562];
-  const SWord8  s575 = table1[s564];
-  const SWord8  s576 = table2[s567];
-  const SWord8  s577 = table3[s569];
-  const SWord8  s578 = s576 ^ s577;
-  const SWord8  s579 = s575 ^ s578;
-  const SWord8  s580 = s574 ^ s579;
-  const SWord16 s581 = (((SWord16) s573) << 8) | ((SWord16) s580);
-  const SWord8  s582 = table3[s562];
-  const SWord8  s583 = table4[s564];
-  const SWord8  s584 = table1[s567];
-  const SWord8  s585 = table2[s569];
-  const SWord8  s586 = s584 ^ s585;
-  const SWord8  s587 = s583 ^ s586;
-  const SWord8  s588 = s582 ^ s587;
-  const SWord8  s589 = table2[s562];
-  const SWord8  s590 = table3[s564];
-  const SWord8  s591 = table4[s567];
-  const SWord8  s592 = table1[s569];
-  const SWord8  s593 = s591 ^ s592;
-  const SWord8  s594 = s590 ^ s593;
-  const SWord8  s595 = s589 ^ s594;
-  const SWord16 s596 = (((SWord16) s588) << 8) | ((SWord16) s595);
-  const SWord32 s597 = (((SWord32) s581) << 16) | ((SWord32) s596);
-  const SWord16 s598 = (SWord16) (s408 >> 16);
-  const SWord8  s599 = (SWord8) (s598 >> 8);
-  const SWord8  s600 = table1[s599];
-  const SWord8  s601 = (SWord8) s598;
-  const SWord8  s602 = table2[s601];
-  const SWord16 s603 = (SWord16) s408;
-  const SWord8  s604 = (SWord8) (s603 >> 8);
-  const SWord8  s605 = table3[s604];
-  const SWord8  s606 = (SWord8) s603;
-  const SWord8  s607 = table4[s606];
-  const SWord8  s608 = s605 ^ s607;
-  const SWord8  s609 = s602 ^ s608;
-  const SWord8  s610 = s600 ^ s609;
-  const SWord8  s611 = table4[s599];
-  const SWord8  s612 = table1[s601];
-  const SWord8  s613 = table2[s604];
-  const SWord8  s614 = table3[s606];
-  const SWord8  s615 = s613 ^ s614;
-  const SWord8  s616 = s612 ^ s615;
-  const SWord8  s617 = s611 ^ s616;
-  const SWord16 s618 = (((SWord16) s610) << 8) | ((SWord16) s617);
-  const SWord8  s619 = table3[s599];
-  const SWord8  s620 = table4[s601];
-  const SWord8  s621 = table1[s604];
-  const SWord8  s622 = table2[s606];
-  const SWord8  s623 = s621 ^ s622;
-  const SWord8  s624 = s620 ^ s623;
-  const SWord8  s625 = s619 ^ s624;
-  const SWord8  s626 = table2[s599];
-  const SWord8  s627 = table3[s601];
-  const SWord8  s628 = table4[s604];
-  const SWord8  s629 = table1[s606];
-  const SWord8  s630 = s628 ^ s629;
-  const SWord8  s631 = s627 ^ s630;
-  const SWord8  s632 = s626 ^ s631;
-  const SWord16 s633 = (((SWord16) s625) << 8) | ((SWord16) s632);
-  const SWord32 s634 = (((SWord32) s618) << 16) | ((SWord32) s633);
-  const SWord16 s635 = (SWord16) (s409 >> 16);
-  const SWord8  s636 = (SWord8) (s635 >> 8);
-  const SWord8  s637 = table1[s636];
-  const SWord8  s638 = (SWord8) s635;
-  const SWord8  s639 = table2[s638];
-  const SWord16 s640 = (SWord16) s409;
-  const SWord8  s641 = (SWord8) (s640 >> 8);
-  const SWord8  s642 = table3[s641];
-  const SWord8  s643 = (SWord8) s640;
-  const SWord8  s644 = table4[s643];
-  const SWord8  s645 = s642 ^ s644;
-  const SWord8  s646 = s639 ^ s645;
-  const SWord8  s647 = s637 ^ s646;
-  const SWord8  s648 = table4[s636];
-  const SWord8  s649 = table1[s638];
-  const SWord8  s650 = table2[s641];
-  const SWord8  s651 = table3[s643];
-  const SWord8  s652 = s650 ^ s651;
-  const SWord8  s653 = s649 ^ s652;
-  const SWord8  s654 = s648 ^ s653;
-  const SWord16 s655 = (((SWord16) s647) << 8) | ((SWord16) s654);
-  const SWord8  s656 = table3[s636];
-  const SWord8  s657 = table4[s638];
-  const SWord8  s658 = table1[s641];
-  const SWord8  s659 = table2[s643];
-  const SWord8  s660 = s658 ^ s659;
-  const SWord8  s661 = s657 ^ s660;
-  const SWord8  s662 = s656 ^ s661;
-  const SWord8  s663 = table2[s636];
-  const SWord8  s664 = table3[s638];
-  const SWord8  s665 = table4[s641];
-  const SWord8  s666 = table1[s643];
-  const SWord8  s667 = s665 ^ s666;
-  const SWord8  s668 = s664 ^ s667;
-  const SWord8  s669 = s663 ^ s668;
-  const SWord16 s670 = (((SWord16) s662) << 8) | ((SWord16) s669);
-  const SWord32 s671 = (((SWord32) s655) << 16) | ((SWord32) s670);
-  const SWord16 s672 = (SWord16) (s410 >> 16);
-  const SWord8  s673 = (SWord8) (s672 >> 8);
-  const SWord8  s674 = table1[s673];
-  const SWord8  s675 = (SWord8) s672;
-  const SWord8  s676 = table2[s675];
-  const SWord16 s677 = (SWord16) s410;
-  const SWord8  s678 = (SWord8) (s677 >> 8);
-  const SWord8  s679 = table3[s678];
-  const SWord8  s680 = (SWord8) s677;
-  const SWord8  s681 = table4[s680];
-  const SWord8  s682 = s679 ^ s681;
-  const SWord8  s683 = s676 ^ s682;
-  const SWord8  s684 = s674 ^ s683;
-  const SWord8  s685 = table4[s673];
-  const SWord8  s686 = table1[s675];
-  const SWord8  s687 = table2[s678];
-  const SWord8  s688 = table3[s680];
-  const SWord8  s689 = s687 ^ s688;
-  const SWord8  s690 = s686 ^ s689;
-  const SWord8  s691 = s685 ^ s690;
-  const SWord16 s692 = (((SWord16) s684) << 8) | ((SWord16) s691);
-  const SWord8  s693 = table3[s673];
-  const SWord8  s694 = table4[s675];
-  const SWord8  s695 = table1[s678];
-  const SWord8  s696 = table2[s680];
-  const SWord8  s697 = s695 ^ s696;
-  const SWord8  s698 = s694 ^ s697;
-  const SWord8  s699 = s693 ^ s698;
-  const SWord8  s700 = table2[s673];
-  const SWord8  s701 = table3[s675];
-  const SWord8  s702 = table4[s678];
-  const SWord8  s703 = table1[s680];
-  const SWord8  s704 = s702 ^ s703;
-  const SWord8  s705 = s701 ^ s704;
-  const SWord8  s706 = s700 ^ s705;
-  const SWord16 s707 = (((SWord16) s699) << 8) | ((SWord16) s706);
-  const SWord32 s708 = (((SWord32) s692) << 16) | ((SWord32) s707);
-  const SWord16 s709 = (SWord16) (s411 >> 16);
-  const SWord8  s710 = (SWord8) (s709 >> 8);
-  const SWord8  s711 = table1[s710];
-  const SWord8  s712 = (SWord8) s709;
-  const SWord8  s713 = table2[s712];
-  const SWord16 s714 = (SWord16) s411;
-  const SWord8  s715 = (SWord8) (s714 >> 8);
-  const SWord8  s716 = table3[s715];
-  const SWord8  s717 = (SWord8) s714;
-  const SWord8  s718 = table4[s717];
-  const SWord8  s719 = s716 ^ s718;
-  const SWord8  s720 = s713 ^ s719;
-  const SWord8  s721 = s711 ^ s720;
-  const SWord8  s722 = table4[s710];
-  const SWord8  s723 = table1[s712];
-  const SWord8  s724 = table2[s715];
-  const SWord8  s725 = table3[s717];
-  const SWord8  s726 = s724 ^ s725;
-  const SWord8  s727 = s723 ^ s726;
-  const SWord8  s728 = s722 ^ s727;
-  const SWord16 s729 = (((SWord16) s721) << 8) | ((SWord16) s728);
-  const SWord8  s730 = table3[s710];
-  const SWord8  s731 = table4[s712];
-  const SWord8  s732 = table1[s715];
-  const SWord8  s733 = table2[s717];
-  const SWord8  s734 = s732 ^ s733;
-  const SWord8  s735 = s731 ^ s734;
-  const SWord8  s736 = s730 ^ s735;
-  const SWord8  s737 = table2[s710];
-  const SWord8  s738 = table3[s712];
-  const SWord8  s739 = table4[s715];
-  const SWord8  s740 = table1[s717];
-  const SWord8  s741 = s739 ^ s740;
-  const SWord8  s742 = s738 ^ s741;
-  const SWord8  s743 = s737 ^ s742;
-  const SWord16 s744 = (((SWord16) s736) << 8) | ((SWord16) s743);
-  const SWord32 s745 = (((SWord32) s729) << 16) | ((SWord32) s744);
-  const SWord16 s746 = (SWord16) (s389 >> 16);
-  const SWord8  s747 = (SWord8) (s746 >> 8);
-  const SWord8  s748 = table1[s747];
-  const SWord8  s749 = (SWord8) s746;
-  const SWord8  s750 = table2[s749];
-  const SWord16 s751 = (SWord16) s389;
-  const SWord8  s752 = (SWord8) (s751 >> 8);
-  const SWord8  s753 = table3[s752];
-  const SWord8  s754 = (SWord8) s751;
-  const SWord8  s755 = table4[s754];
-  const SWord8  s756 = s753 ^ s755;
-  const SWord8  s757 = s750 ^ s756;
-  const SWord8  s758 = s748 ^ s757;
-  const SWord8  s759 = table4[s747];
-  const SWord8  s760 = table1[s749];
-  const SWord8  s761 = table2[s752];
-  const SWord8  s762 = table3[s754];
-  const SWord8  s763 = s761 ^ s762;
-  const SWord8  s764 = s760 ^ s763;
-  const SWord8  s765 = s759 ^ s764;
-  const SWord16 s766 = (((SWord16) s758) << 8) | ((SWord16) s765);
-  const SWord8  s767 = table3[s747];
-  const SWord8  s768 = table4[s749];
-  const SWord8  s769 = table1[s752];
-  const SWord8  s770 = table2[s754];
-  const SWord8  s771 = s769 ^ s770;
-  const SWord8  s772 = s768 ^ s771;
-  const SWord8  s773 = s767 ^ s772;
-  const SWord8  s774 = table2[s747];
-  const SWord8  s775 = table3[s749];
-  const SWord8  s776 = table4[s752];
-  const SWord8  s777 = table1[s754];
-  const SWord8  s778 = s776 ^ s777;
-  const SWord8  s779 = s775 ^ s778;
-  const SWord8  s780 = s774 ^ s779;
-  const SWord16 s781 = (((SWord16) s773) << 8) | ((SWord16) s780);
-  const SWord32 s782 = (((SWord32) s766) << 16) | ((SWord32) s781);
-  const SWord16 s783 = (SWord16) (s390 >> 16);
-  const SWord8  s784 = (SWord8) (s783 >> 8);
-  const SWord8  s785 = table1[s784];
-  const SWord8  s786 = (SWord8) s783;
-  const SWord8  s787 = table2[s786];
-  const SWord16 s788 = (SWord16) s390;
-  const SWord8  s789 = (SWord8) (s788 >> 8);
-  const SWord8  s790 = table3[s789];
-  const SWord8  s791 = (SWord8) s788;
-  const SWord8  s792 = table4[s791];
-  const SWord8  s793 = s790 ^ s792;
-  const SWord8  s794 = s787 ^ s793;
-  const SWord8  s795 = s785 ^ s794;
-  const SWord8  s796 = table4[s784];
-  const SWord8  s797 = table1[s786];
-  const SWord8  s798 = table2[s789];
-  const SWord8  s799 = table3[s791];
-  const SWord8  s800 = s798 ^ s799;
-  const SWord8  s801 = s797 ^ s800;
-  const SWord8  s802 = s796 ^ s801;
-  const SWord16 s803 = (((SWord16) s795) << 8) | ((SWord16) s802);
-  const SWord8  s804 = table3[s784];
-  const SWord8  s805 = table4[s786];
-  const SWord8  s806 = table1[s789];
-  const SWord8  s807 = table2[s791];
-  const SWord8  s808 = s806 ^ s807;
-  const SWord8  s809 = s805 ^ s808;
-  const SWord8  s810 = s804 ^ s809;
-  const SWord8  s811 = table2[s784];
-  const SWord8  s812 = table3[s786];
-  const SWord8  s813 = table4[s789];
-  const SWord8  s814 = table1[s791];
-  const SWord8  s815 = s813 ^ s814;
-  const SWord8  s816 = s812 ^ s815;
-  const SWord8  s817 = s811 ^ s816;
-  const SWord16 s818 = (((SWord16) s810) << 8) | ((SWord16) s817);
-  const SWord32 s819 = (((SWord32) s803) << 16) | ((SWord32) s818);
-  const SWord16 s820 = (SWord16) (s391 >> 16);
-  const SWord8  s821 = (SWord8) (s820 >> 8);
-  const SWord8  s822 = table1[s821];
-  const SWord8  s823 = (SWord8) s820;
-  const SWord8  s824 = table2[s823];
-  const SWord16 s825 = (SWord16) s391;
-  const SWord8  s826 = (SWord8) (s825 >> 8);
-  const SWord8  s827 = table3[s826];
-  const SWord8  s828 = (SWord8) s825;
-  const SWord8  s829 = table4[s828];
-  const SWord8  s830 = s827 ^ s829;
-  const SWord8  s831 = s824 ^ s830;
-  const SWord8  s832 = s822 ^ s831;
-  const SWord8  s833 = table4[s821];
-  const SWord8  s834 = table1[s823];
-  const SWord8  s835 = table2[s826];
-  const SWord8  s836 = table3[s828];
-  const SWord8  s837 = s835 ^ s836;
-  const SWord8  s838 = s834 ^ s837;
-  const SWord8  s839 = s833 ^ s838;
-  const SWord16 s840 = (((SWord16) s832) << 8) | ((SWord16) s839);
-  const SWord8  s841 = table3[s821];
-  const SWord8  s842 = table4[s823];
-  const SWord8  s843 = table1[s826];
-  const SWord8  s844 = table2[s828];
-  const SWord8  s845 = s843 ^ s844;
-  const SWord8  s846 = s842 ^ s845;
-  const SWord8  s847 = s841 ^ s846;
-  const SWord8  s848 = table2[s821];
-  const SWord8  s849 = table3[s823];
-  const SWord8  s850 = table4[s826];
-  const SWord8  s851 = table1[s828];
-  const SWord8  s852 = s850 ^ s851;
-  const SWord8  s853 = s849 ^ s852;
-  const SWord8  s854 = s848 ^ s853;
-  const SWord16 s855 = (((SWord16) s847) << 8) | ((SWord16) s854);
-  const SWord32 s856 = (((SWord32) s840) << 16) | ((SWord32) s855);
-  const SWord16 s857 = (SWord16) (s392 >> 16);
-  const SWord8  s858 = (SWord8) (s857 >> 8);
-  const SWord8  s859 = table1[s858];
-  const SWord8  s860 = (SWord8) s857;
-  const SWord8  s861 = table2[s860];
-  const SWord16 s862 = (SWord16) s392;
-  const SWord8  s863 = (SWord8) (s862 >> 8);
-  const SWord8  s864 = table3[s863];
-  const SWord8  s865 = (SWord8) s862;
-  const SWord8  s866 = table4[s865];
-  const SWord8  s867 = s864 ^ s866;
-  const SWord8  s868 = s861 ^ s867;
-  const SWord8  s869 = s859 ^ s868;
-  const SWord8  s870 = table4[s858];
-  const SWord8  s871 = table1[s860];
-  const SWord8  s872 = table2[s863];
-  const SWord8  s873 = table3[s865];
-  const SWord8  s874 = s872 ^ s873;
-  const SWord8  s875 = s871 ^ s874;
-  const SWord8  s876 = s870 ^ s875;
-  const SWord16 s877 = (((SWord16) s869) << 8) | ((SWord16) s876);
-  const SWord8  s878 = table3[s858];
-  const SWord8  s879 = table4[s860];
-  const SWord8  s880 = table1[s863];
-  const SWord8  s881 = table2[s865];
-  const SWord8  s882 = s880 ^ s881;
-  const SWord8  s883 = s879 ^ s882;
-  const SWord8  s884 = s878 ^ s883;
-  const SWord8  s885 = table2[s858];
-  const SWord8  s886 = table3[s860];
-  const SWord8  s887 = table4[s863];
-  const SWord8  s888 = table1[s865];
-  const SWord8  s889 = s887 ^ s888;
-  const SWord8  s890 = s886 ^ s889;
-  const SWord8  s891 = s885 ^ s890;
-  const SWord16 s892 = (((SWord16) s884) << 8) | ((SWord16) s891);
-  const SWord32 s893 = (((SWord32) s877) << 16) | ((SWord32) s892);
-  const SWord16 s894 = (SWord16) (s370 >> 16);
-  const SWord8  s895 = (SWord8) (s894 >> 8);
-  const SWord8  s896 = table1[s895];
-  const SWord8  s897 = (SWord8) s894;
-  const SWord8  s898 = table2[s897];
-  const SWord16 s899 = (SWord16) s370;
-  const SWord8  s900 = (SWord8) (s899 >> 8);
-  const SWord8  s901 = table3[s900];
-  const SWord8  s902 = (SWord8) s899;
-  const SWord8  s903 = table4[s902];
-  const SWord8  s904 = s901 ^ s903;
-  const SWord8  s905 = s898 ^ s904;
-  const SWord8  s906 = s896 ^ s905;
-  const SWord8  s907 = table4[s895];
-  const SWord8  s908 = table1[s897];
-  const SWord8  s909 = table2[s900];
-  const SWord8  s910 = table3[s902];
-  const SWord8  s911 = s909 ^ s910;
-  const SWord8  s912 = s908 ^ s911;
-  const SWord8  s913 = s907 ^ s912;
-  const SWord16 s914 = (((SWord16) s906) << 8) | ((SWord16) s913);
-  const SWord8  s915 = table3[s895];
-  const SWord8  s916 = table4[s897];
-  const SWord8  s917 = table1[s900];
-  const SWord8  s918 = table2[s902];
-  const SWord8  s919 = s917 ^ s918;
-  const SWord8  s920 = s916 ^ s919;
-  const SWord8  s921 = s915 ^ s920;
-  const SWord8  s922 = table2[s895];
-  const SWord8  s923 = table3[s897];
-  const SWord8  s924 = table4[s900];
-  const SWord8  s925 = table1[s902];
-  const SWord8  s926 = s924 ^ s925;
-  const SWord8  s927 = s923 ^ s926;
-  const SWord8  s928 = s922 ^ s927;
-  const SWord16 s929 = (((SWord16) s921) << 8) | ((SWord16) s928);
-  const SWord32 s930 = (((SWord32) s914) << 16) | ((SWord32) s929);
-  const SWord16 s931 = (SWord16) (s371 >> 16);
-  const SWord8  s932 = (SWord8) (s931 >> 8);
-  const SWord8  s933 = table1[s932];
-  const SWord8  s934 = (SWord8) s931;
-  const SWord8  s935 = table2[s934];
-  const SWord16 s936 = (SWord16) s371;
-  const SWord8  s937 = (SWord8) (s936 >> 8);
-  const SWord8  s938 = table3[s937];
-  const SWord8  s939 = (SWord8) s936;
-  const SWord8  s940 = table4[s939];
-  const SWord8  s941 = s938 ^ s940;
-  const SWord8  s942 = s935 ^ s941;
-  const SWord8  s943 = s933 ^ s942;
-  const SWord8  s944 = table4[s932];
-  const SWord8  s945 = table1[s934];
-  const SWord8  s946 = table2[s937];
-  const SWord8  s947 = table3[s939];
-  const SWord8  s948 = s946 ^ s947;
-  const SWord8  s949 = s945 ^ s948;
-  const SWord8  s950 = s944 ^ s949;
-  const SWord16 s951 = (((SWord16) s943) << 8) | ((SWord16) s950);
-  const SWord8  s952 = table3[s932];
-  const SWord8  s953 = table4[s934];
-  const SWord8  s954 = table1[s937];
-  const SWord8  s955 = table2[s939];
-  const SWord8  s956 = s954 ^ s955;
-  const SWord8  s957 = s953 ^ s956;
-  const SWord8  s958 = s952 ^ s957;
-  const SWord8  s959 = table2[s932];
-  const SWord8  s960 = table3[s934];
-  const SWord8  s961 = table4[s937];
-  const SWord8  s962 = table1[s939];
-  const SWord8  s963 = s961 ^ s962;
-  const SWord8  s964 = s960 ^ s963;
-  const SWord8  s965 = s959 ^ s964;
-  const SWord16 s966 = (((SWord16) s958) << 8) | ((SWord16) s965);
-  const SWord32 s967 = (((SWord32) s951) << 16) | ((SWord32) s966);
-  const SWord16 s968 = (SWord16) (s372 >> 16);
-  const SWord8  s969 = (SWord8) (s968 >> 8);
-  const SWord8  s970 = table1[s969];
-  const SWord8  s971 = (SWord8) s968;
-  const SWord8  s972 = table2[s971];
-  const SWord16 s973 = (SWord16) s372;
-  const SWord8  s974 = (SWord8) (s973 >> 8);
-  const SWord8  s975 = table3[s974];
-  const SWord8  s976 = (SWord8) s973;
-  const SWord8  s977 = table4[s976];
-  const SWord8  s978 = s975 ^ s977;
-  const SWord8  s979 = s972 ^ s978;
-  const SWord8  s980 = s970 ^ s979;
-  const SWord8  s981 = table4[s969];
-  const SWord8  s982 = table1[s971];
-  const SWord8  s983 = table2[s974];
-  const SWord8  s984 = table3[s976];
-  const SWord8  s985 = s983 ^ s984;
-  const SWord8  s986 = s982 ^ s985;
-  const SWord8  s987 = s981 ^ s986;
-  const SWord16 s988 = (((SWord16) s980) << 8) | ((SWord16) s987);
-  const SWord8  s989 = table3[s969];
-  const SWord8  s990 = table4[s971];
-  const SWord8  s991 = table1[s974];
-  const SWord8  s992 = table2[s976];
-  const SWord8  s993 = s991 ^ s992;
-  const SWord8  s994 = s990 ^ s993;
-  const SWord8  s995 = s989 ^ s994;
-  const SWord8  s996 = table2[s969];
-  const SWord8  s997 = table3[s971];
-  const SWord8  s998 = table4[s974];
-  const SWord8  s999 = table1[s976];
-  const SWord8  s1000 = s998 ^ s999;
-  const SWord8  s1001 = s997 ^ s1000;
-  const SWord8  s1002 = s996 ^ s1001;
-  const SWord16 s1003 = (((SWord16) s995) << 8) | ((SWord16) s1002);
-  const SWord32 s1004 = (((SWord32) s988) << 16) | ((SWord32) s1003);
-  const SWord16 s1005 = (SWord16) (s373 >> 16);
-  const SWord8  s1006 = (SWord8) (s1005 >> 8);
-  const SWord8  s1007 = table1[s1006];
-  const SWord8  s1008 = (SWord8) s1005;
-  const SWord8  s1009 = table2[s1008];
-  const SWord16 s1010 = (SWord16) s373;
-  const SWord8  s1011 = (SWord8) (s1010 >> 8);
-  const SWord8  s1012 = table3[s1011];
-  const SWord8  s1013 = (SWord8) s1010;
-  const SWord8  s1014 = table4[s1013];
-  const SWord8  s1015 = s1012 ^ s1014;
-  const SWord8  s1016 = s1009 ^ s1015;
-  const SWord8  s1017 = s1007 ^ s1016;
-  const SWord8  s1018 = table4[s1006];
-  const SWord8  s1019 = table1[s1008];
-  const SWord8  s1020 = table2[s1011];
-  const SWord8  s1021 = table3[s1013];
-  const SWord8  s1022 = s1020 ^ s1021;
-  const SWord8  s1023 = s1019 ^ s1022;
-  const SWord8  s1024 = s1018 ^ s1023;
-  const SWord16 s1025 = (((SWord16) s1017) << 8) | ((SWord16) s1024);
-  const SWord8  s1026 = table3[s1006];
-  const SWord8  s1027 = table4[s1008];
-  const SWord8  s1028 = table1[s1011];
-  const SWord8  s1029 = table2[s1013];
-  const SWord8  s1030 = s1028 ^ s1029;
-  const SWord8  s1031 = s1027 ^ s1030;
-  const SWord8  s1032 = s1026 ^ s1031;
-  const SWord8  s1033 = table2[s1006];
-  const SWord8  s1034 = table3[s1008];
-  const SWord8  s1035 = table4[s1011];
-  const SWord8  s1036 = table1[s1013];
-  const SWord8  s1037 = s1035 ^ s1036;
-  const SWord8  s1038 = s1034 ^ s1037;
-  const SWord8  s1039 = s1033 ^ s1038;
-  const SWord16 s1040 = (((SWord16) s1032) << 8) | ((SWord16) s1039);
-  const SWord32 s1041 = (((SWord32) s1025) << 16) | ((SWord32) s1040);
-  const SWord16 s1042 = (SWord16) (s351 >> 16);
-  const SWord8  s1043 = (SWord8) (s1042 >> 8);
-  const SWord8  s1044 = table1[s1043];
-  const SWord8  s1045 = (SWord8) s1042;
-  const SWord8  s1046 = table2[s1045];
-  const SWord16 s1047 = (SWord16) s351;
-  const SWord8  s1048 = (SWord8) (s1047 >> 8);
-  const SWord8  s1049 = table3[s1048];
-  const SWord8  s1050 = (SWord8) s1047;
-  const SWord8  s1051 = table4[s1050];
-  const SWord8  s1052 = s1049 ^ s1051;
-  const SWord8  s1053 = s1046 ^ s1052;
-  const SWord8  s1054 = s1044 ^ s1053;
-  const SWord8  s1055 = table4[s1043];
-  const SWord8  s1056 = table1[s1045];
-  const SWord8  s1057 = table2[s1048];
-  const SWord8  s1058 = table3[s1050];
-  const SWord8  s1059 = s1057 ^ s1058;
-  const SWord8  s1060 = s1056 ^ s1059;
-  const SWord8  s1061 = s1055 ^ s1060;
-  const SWord16 s1062 = (((SWord16) s1054) << 8) | ((SWord16) s1061);
-  const SWord8  s1063 = table3[s1043];
-  const SWord8  s1064 = table4[s1045];
-  const SWord8  s1065 = table1[s1048];
-  const SWord8  s1066 = table2[s1050];
-  const SWord8  s1067 = s1065 ^ s1066;
-  const SWord8  s1068 = s1064 ^ s1067;
-  const SWord8  s1069 = s1063 ^ s1068;
-  const SWord8  s1070 = table2[s1043];
-  const SWord8  s1071 = table3[s1045];
-  const SWord8  s1072 = table4[s1048];
-  const SWord8  s1073 = table1[s1050];
-  const SWord8  s1074 = s1072 ^ s1073;
-  const SWord8  s1075 = s1071 ^ s1074;
-  const SWord8  s1076 = s1070 ^ s1075;
-  const SWord16 s1077 = (((SWord16) s1069) << 8) | ((SWord16) s1076);
-  const SWord32 s1078 = (((SWord32) s1062) << 16) | ((SWord32) s1077);
-  const SWord16 s1079 = (SWord16) (s352 >> 16);
-  const SWord8  s1080 = (SWord8) (s1079 >> 8);
-  const SWord8  s1081 = table1[s1080];
-  const SWord8  s1082 = (SWord8) s1079;
-  const SWord8  s1083 = table2[s1082];
-  const SWord16 s1084 = (SWord16) s352;
-  const SWord8  s1085 = (SWord8) (s1084 >> 8);
-  const SWord8  s1086 = table3[s1085];
-  const SWord8  s1087 = (SWord8) s1084;
-  const SWord8  s1088 = table4[s1087];
-  const SWord8  s1089 = s1086 ^ s1088;
-  const SWord8  s1090 = s1083 ^ s1089;
-  const SWord8  s1091 = s1081 ^ s1090;
-  const SWord8  s1092 = table4[s1080];
-  const SWord8  s1093 = table1[s1082];
-  const SWord8  s1094 = table2[s1085];
-  const SWord8  s1095 = table3[s1087];
-  const SWord8  s1096 = s1094 ^ s1095;
-  const SWord8  s1097 = s1093 ^ s1096;
-  const SWord8  s1098 = s1092 ^ s1097;
-  const SWord16 s1099 = (((SWord16) s1091) << 8) | ((SWord16) s1098);
-  const SWord8  s1100 = table3[s1080];
-  const SWord8  s1101 = table4[s1082];
-  const SWord8  s1102 = table1[s1085];
-  const SWord8  s1103 = table2[s1087];
-  const SWord8  s1104 = s1102 ^ s1103;
-  const SWord8  s1105 = s1101 ^ s1104;
-  const SWord8  s1106 = s1100 ^ s1105;
-  const SWord8  s1107 = table2[s1080];
-  const SWord8  s1108 = table3[s1082];
-  const SWord8  s1109 = table4[s1085];
-  const SWord8  s1110 = table1[s1087];
-  const SWord8  s1111 = s1109 ^ s1110;
-  const SWord8  s1112 = s1108 ^ s1111;
-  const SWord8  s1113 = s1107 ^ s1112;
-  const SWord16 s1114 = (((SWord16) s1106) << 8) | ((SWord16) s1113);
-  const SWord32 s1115 = (((SWord32) s1099) << 16) | ((SWord32) s1114);
-  const SWord16 s1116 = (SWord16) (s353 >> 16);
-  const SWord8  s1117 = (SWord8) (s1116 >> 8);
-  const SWord8  s1118 = table1[s1117];
-  const SWord8  s1119 = (SWord8) s1116;
-  const SWord8  s1120 = table2[s1119];
-  const SWord16 s1121 = (SWord16) s353;
-  const SWord8  s1122 = (SWord8) (s1121 >> 8);
-  const SWord8  s1123 = table3[s1122];
-  const SWord8  s1124 = (SWord8) s1121;
-  const SWord8  s1125 = table4[s1124];
-  const SWord8  s1126 = s1123 ^ s1125;
-  const SWord8  s1127 = s1120 ^ s1126;
-  const SWord8  s1128 = s1118 ^ s1127;
-  const SWord8  s1129 = table4[s1117];
-  const SWord8  s1130 = table1[s1119];
-  const SWord8  s1131 = table2[s1122];
-  const SWord8  s1132 = table3[s1124];
-  const SWord8  s1133 = s1131 ^ s1132;
-  const SWord8  s1134 = s1130 ^ s1133;
-  const SWord8  s1135 = s1129 ^ s1134;
-  const SWord16 s1136 = (((SWord16) s1128) << 8) | ((SWord16) s1135);
-  const SWord8  s1137 = table3[s1117];
-  const SWord8  s1138 = table4[s1119];
-  const SWord8  s1139 = table1[s1122];
-  const SWord8  s1140 = table2[s1124];
-  const SWord8  s1141 = s1139 ^ s1140;
-  const SWord8  s1142 = s1138 ^ s1141;
-  const SWord8  s1143 = s1137 ^ s1142;
-  const SWord8  s1144 = table2[s1117];
-  const SWord8  s1145 = table3[s1119];
-  const SWord8  s1146 = table4[s1122];
-  const SWord8  s1147 = table1[s1124];
-  const SWord8  s1148 = s1146 ^ s1147;
-  const SWord8  s1149 = s1145 ^ s1148;
-  const SWord8  s1150 = s1144 ^ s1149;
-  const SWord16 s1151 = (((SWord16) s1143) << 8) | ((SWord16) s1150);
-  const SWord32 s1152 = (((SWord32) s1136) << 16) | ((SWord32) s1151);
-  const SWord16 s1153 = (SWord16) (s354 >> 16);
-  const SWord8  s1154 = (SWord8) (s1153 >> 8);
-  const SWord8  s1155 = table1[s1154];
-  const SWord8  s1156 = (SWord8) s1153;
-  const SWord8  s1157 = table2[s1156];
-  const SWord16 s1158 = (SWord16) s354;
-  const SWord8  s1159 = (SWord8) (s1158 >> 8);
-  const SWord8  s1160 = table3[s1159];
-  const SWord8  s1161 = (SWord8) s1158;
-  const SWord8  s1162 = table4[s1161];
-  const SWord8  s1163 = s1160 ^ s1162;
-  const SWord8  s1164 = s1157 ^ s1163;
-  const SWord8  s1165 = s1155 ^ s1164;
-  const SWord8  s1166 = table4[s1154];
-  const SWord8  s1167 = table1[s1156];
-  const SWord8  s1168 = table2[s1159];
-  const SWord8  s1169 = table3[s1161];
-  const SWord8  s1170 = s1168 ^ s1169;
-  const SWord8  s1171 = s1167 ^ s1170;
-  const SWord8  s1172 = s1166 ^ s1171;
-  const SWord16 s1173 = (((SWord16) s1165) << 8) | ((SWord16) s1172);
-  const SWord8  s1174 = table3[s1154];
-  const SWord8  s1175 = table4[s1156];
-  const SWord8  s1176 = table1[s1159];
-  const SWord8  s1177 = table2[s1161];
-  const SWord8  s1178 = s1176 ^ s1177;
-  const SWord8  s1179 = s1175 ^ s1178;
-  const SWord8  s1180 = s1174 ^ s1179;
-  const SWord8  s1181 = table2[s1154];
-  const SWord8  s1182 = table3[s1156];
-  const SWord8  s1183 = table4[s1159];
-  const SWord8  s1184 = table1[s1161];
-  const SWord8  s1185 = s1183 ^ s1184;
-  const SWord8  s1186 = s1182 ^ s1185;
-  const SWord8  s1187 = s1181 ^ s1186;
-  const SWord16 s1188 = (((SWord16) s1180) << 8) | ((SWord16) s1187);
-  const SWord32 s1189 = (((SWord32) s1173) << 16) | ((SWord32) s1188);
-  const SWord16 s1190 = (SWord16) (s332 >> 16);
-  const SWord8  s1191 = (SWord8) (s1190 >> 8);
-  const SWord8  s1192 = table1[s1191];
-  const SWord8  s1193 = (SWord8) s1190;
-  const SWord8  s1194 = table2[s1193];
-  const SWord16 s1195 = (SWord16) s332;
-  const SWord8  s1196 = (SWord8) (s1195 >> 8);
-  const SWord8  s1197 = table3[s1196];
-  const SWord8  s1198 = (SWord8) s1195;
-  const SWord8  s1199 = table4[s1198];
-  const SWord8  s1200 = s1197 ^ s1199;
-  const SWord8  s1201 = s1194 ^ s1200;
-  const SWord8  s1202 = s1192 ^ s1201;
-  const SWord8  s1203 = table4[s1191];
-  const SWord8  s1204 = table1[s1193];
-  const SWord8  s1205 = table2[s1196];
-  const SWord8  s1206 = table3[s1198];
-  const SWord8  s1207 = s1205 ^ s1206;
-  const SWord8  s1208 = s1204 ^ s1207;
-  const SWord8  s1209 = s1203 ^ s1208;
-  const SWord16 s1210 = (((SWord16) s1202) << 8) | ((SWord16) s1209);
-  const SWord8  s1211 = table3[s1191];
-  const SWord8  s1212 = table4[s1193];
-  const SWord8  s1213 = table1[s1196];
-  const SWord8  s1214 = table2[s1198];
-  const SWord8  s1215 = s1213 ^ s1214;
-  const SWord8  s1216 = s1212 ^ s1215;
-  const SWord8  s1217 = s1211 ^ s1216;
-  const SWord8  s1218 = table2[s1191];
-  const SWord8  s1219 = table3[s1193];
-  const SWord8  s1220 = table4[s1196];
-  const SWord8  s1221 = table1[s1198];
-  const SWord8  s1222 = s1220 ^ s1221;
-  const SWord8  s1223 = s1219 ^ s1222;
-  const SWord8  s1224 = s1218 ^ s1223;
-  const SWord16 s1225 = (((SWord16) s1217) << 8) | ((SWord16) s1224);
-  const SWord32 s1226 = (((SWord32) s1210) << 16) | ((SWord32) s1225);
-  const SWord16 s1227 = (SWord16) (s333 >> 16);
-  const SWord8  s1228 = (SWord8) (s1227 >> 8);
-  const SWord8  s1229 = table1[s1228];
-  const SWord8  s1230 = (SWord8) s1227;
-  const SWord8  s1231 = table2[s1230];
-  const SWord16 s1232 = (SWord16) s333;
-  const SWord8  s1233 = (SWord8) (s1232 >> 8);
-  const SWord8  s1234 = table3[s1233];
-  const SWord8  s1235 = (SWord8) s1232;
-  const SWord8  s1236 = table4[s1235];
-  const SWord8  s1237 = s1234 ^ s1236;
-  const SWord8  s1238 = s1231 ^ s1237;
-  const SWord8  s1239 = s1229 ^ s1238;
-  const SWord8  s1240 = table4[s1228];
-  const SWord8  s1241 = table1[s1230];
-  const SWord8  s1242 = table2[s1233];
-  const SWord8  s1243 = table3[s1235];
-  const SWord8  s1244 = s1242 ^ s1243;
-  const SWord8  s1245 = s1241 ^ s1244;
-  const SWord8  s1246 = s1240 ^ s1245;
-  const SWord16 s1247 = (((SWord16) s1239) << 8) | ((SWord16) s1246);
-  const SWord8  s1248 = table3[s1228];
-  const SWord8  s1249 = table4[s1230];
-  const SWord8  s1250 = table1[s1233];
-  const SWord8  s1251 = table2[s1235];
-  const SWord8  s1252 = s1250 ^ s1251;
-  const SWord8  s1253 = s1249 ^ s1252;
-  const SWord8  s1254 = s1248 ^ s1253;
-  const SWord8  s1255 = table2[s1228];
-  const SWord8  s1256 = table3[s1230];
-  const SWord8  s1257 = table4[s1233];
-  const SWord8  s1258 = table1[s1235];
-  const SWord8  s1259 = s1257 ^ s1258;
-  const SWord8  s1260 = s1256 ^ s1259;
-  const SWord8  s1261 = s1255 ^ s1260;
-  const SWord16 s1262 = (((SWord16) s1254) << 8) | ((SWord16) s1261);
-  const SWord32 s1263 = (((SWord32) s1247) << 16) | ((SWord32) s1262);
-  const SWord16 s1264 = (SWord16) (s334 >> 16);
-  const SWord8  s1265 = (SWord8) (s1264 >> 8);
-  const SWord8  s1266 = table1[s1265];
-  const SWord8  s1267 = (SWord8) s1264;
-  const SWord8  s1268 = table2[s1267];
-  const SWord16 s1269 = (SWord16) s334;
-  const SWord8  s1270 = (SWord8) (s1269 >> 8);
-  const SWord8  s1271 = table3[s1270];
-  const SWord8  s1272 = (SWord8) s1269;
-  const SWord8  s1273 = table4[s1272];
-  const SWord8  s1274 = s1271 ^ s1273;
-  const SWord8  s1275 = s1268 ^ s1274;
-  const SWord8  s1276 = s1266 ^ s1275;
-  const SWord8  s1277 = table4[s1265];
-  const SWord8  s1278 = table1[s1267];
-  const SWord8  s1279 = table2[s1270];
-  const SWord8  s1280 = table3[s1272];
-  const SWord8  s1281 = s1279 ^ s1280;
-  const SWord8  s1282 = s1278 ^ s1281;
-  const SWord8  s1283 = s1277 ^ s1282;
-  const SWord16 s1284 = (((SWord16) s1276) << 8) | ((SWord16) s1283);
-  const SWord8  s1285 = table3[s1265];
-  const SWord8  s1286 = table4[s1267];
-  const SWord8  s1287 = table1[s1270];
-  const SWord8  s1288 = table2[s1272];
-  const SWord8  s1289 = s1287 ^ s1288;
-  const SWord8  s1290 = s1286 ^ s1289;
-  const SWord8  s1291 = s1285 ^ s1290;
-  const SWord8  s1292 = table2[s1265];
-  const SWord8  s1293 = table3[s1267];
-  const SWord8  s1294 = table4[s1270];
-  const SWord8  s1295 = table1[s1272];
-  const SWord8  s1296 = s1294 ^ s1295;
-  const SWord8  s1297 = s1293 ^ s1296;
-  const SWord8  s1298 = s1292 ^ s1297;
-  const SWord16 s1299 = (((SWord16) s1291) << 8) | ((SWord16) s1298);
-  const SWord32 s1300 = (((SWord32) s1284) << 16) | ((SWord32) s1299);
-  const SWord16 s1301 = (SWord16) (s335 >> 16);
-  const SWord8  s1302 = (SWord8) (s1301 >> 8);
-  const SWord8  s1303 = table1[s1302];
-  const SWord8  s1304 = (SWord8) s1301;
-  const SWord8  s1305 = table2[s1304];
-  const SWord16 s1306 = (SWord16) s335;
-  const SWord8  s1307 = (SWord8) (s1306 >> 8);
-  const SWord8  s1308 = table3[s1307];
-  const SWord8  s1309 = (SWord8) s1306;
-  const SWord8  s1310 = table4[s1309];
-  const SWord8  s1311 = s1308 ^ s1310;
-  const SWord8  s1312 = s1305 ^ s1311;
-  const SWord8  s1313 = s1303 ^ s1312;
-  const SWord8  s1314 = table4[s1302];
-  const SWord8  s1315 = table1[s1304];
-  const SWord8  s1316 = table2[s1307];
-  const SWord8  s1317 = table3[s1309];
-  const SWord8  s1318 = s1316 ^ s1317;
-  const SWord8  s1319 = s1315 ^ s1318;
-  const SWord8  s1320 = s1314 ^ s1319;
-  const SWord16 s1321 = (((SWord16) s1313) << 8) | ((SWord16) s1320);
-  const SWord8  s1322 = table3[s1302];
-  const SWord8  s1323 = table4[s1304];
-  const SWord8  s1324 = table1[s1307];
-  const SWord8  s1325 = table2[s1309];
-  const SWord8  s1326 = s1324 ^ s1325;
-  const SWord8  s1327 = s1323 ^ s1326;
-  const SWord8  s1328 = s1322 ^ s1327;
-  const SWord8  s1329 = table2[s1302];
-  const SWord8  s1330 = table3[s1304];
-  const SWord8  s1331 = table4[s1307];
-  const SWord8  s1332 = table1[s1309];
-  const SWord8  s1333 = s1331 ^ s1332;
-  const SWord8  s1334 = s1330 ^ s1333;
-  const SWord8  s1335 = s1329 ^ s1334;
-  const SWord16 s1336 = (((SWord16) s1328) << 8) | ((SWord16) s1335);
-  const SWord32 s1337 = (((SWord32) s1321) << 16) | ((SWord32) s1336);
-  const SWord16 s1338 = (SWord16) (s313 >> 16);
-  const SWord8  s1339 = (SWord8) (s1338 >> 8);
-  const SWord8  s1340 = table1[s1339];
-  const SWord8  s1341 = (SWord8) s1338;
-  const SWord8  s1342 = table2[s1341];
-  const SWord16 s1343 = (SWord16) s313;
-  const SWord8  s1344 = (SWord8) (s1343 >> 8);
-  const SWord8  s1345 = table3[s1344];
-  const SWord8  s1346 = (SWord8) s1343;
-  const SWord8  s1347 = table4[s1346];
-  const SWord8  s1348 = s1345 ^ s1347;
-  const SWord8  s1349 = s1342 ^ s1348;
-  const SWord8  s1350 = s1340 ^ s1349;
-  const SWord8  s1351 = table4[s1339];
-  const SWord8  s1352 = table1[s1341];
-  const SWord8  s1353 = table2[s1344];
-  const SWord8  s1354 = table3[s1346];
-  const SWord8  s1355 = s1353 ^ s1354;
-  const SWord8  s1356 = s1352 ^ s1355;
-  const SWord8  s1357 = s1351 ^ s1356;
-  const SWord16 s1358 = (((SWord16) s1350) << 8) | ((SWord16) s1357);
-  const SWord8  s1359 = table3[s1339];
-  const SWord8  s1360 = table4[s1341];
-  const SWord8  s1361 = table1[s1344];
-  const SWord8  s1362 = table2[s1346];
-  const SWord8  s1363 = s1361 ^ s1362;
-  const SWord8  s1364 = s1360 ^ s1363;
-  const SWord8  s1365 = s1359 ^ s1364;
-  const SWord8  s1366 = table2[s1339];
-  const SWord8  s1367 = table3[s1341];
-  const SWord8  s1368 = table4[s1344];
-  const SWord8  s1369 = table1[s1346];
-  const SWord8  s1370 = s1368 ^ s1369;
-  const SWord8  s1371 = s1367 ^ s1370;
-  const SWord8  s1372 = s1366 ^ s1371;
-  const SWord16 s1373 = (((SWord16) s1365) << 8) | ((SWord16) s1372);
-  const SWord32 s1374 = (((SWord32) s1358) << 16) | ((SWord32) s1373);
-  const SWord16 s1375 = (SWord16) (s314 >> 16);
-  const SWord8  s1376 = (SWord8) (s1375 >> 8);
-  const SWord8  s1377 = table1[s1376];
-  const SWord8  s1378 = (SWord8) s1375;
-  const SWord8  s1379 = table2[s1378];
-  const SWord16 s1380 = (SWord16) s314;
-  const SWord8  s1381 = (SWord8) (s1380 >> 8);
-  const SWord8  s1382 = table3[s1381];
-  const SWord8  s1383 = (SWord8) s1380;
-  const SWord8  s1384 = table4[s1383];
-  const SWord8  s1385 = s1382 ^ s1384;
-  const SWord8  s1386 = s1379 ^ s1385;
-  const SWord8  s1387 = s1377 ^ s1386;
-  const SWord8  s1388 = table4[s1376];
-  const SWord8  s1389 = table1[s1378];
-  const SWord8  s1390 = table2[s1381];
-  const SWord8  s1391 = table3[s1383];
-  const SWord8  s1392 = s1390 ^ s1391;
-  const SWord8  s1393 = s1389 ^ s1392;
-  const SWord8  s1394 = s1388 ^ s1393;
-  const SWord16 s1395 = (((SWord16) s1387) << 8) | ((SWord16) s1394);
-  const SWord8  s1396 = table3[s1376];
-  const SWord8  s1397 = table4[s1378];
-  const SWord8  s1398 = table1[s1381];
-  const SWord8  s1399 = table2[s1383];
-  const SWord8  s1400 = s1398 ^ s1399;
-  const SWord8  s1401 = s1397 ^ s1400;
-  const SWord8  s1402 = s1396 ^ s1401;
-  const SWord8  s1403 = table2[s1376];
-  const SWord8  s1404 = table3[s1378];
-  const SWord8  s1405 = table4[s1381];
-  const SWord8  s1406 = table1[s1383];
-  const SWord8  s1407 = s1405 ^ s1406;
-  const SWord8  s1408 = s1404 ^ s1407;
-  const SWord8  s1409 = s1403 ^ s1408;
-  const SWord16 s1410 = (((SWord16) s1402) << 8) | ((SWord16) s1409);
-  const SWord32 s1411 = (((SWord32) s1395) << 16) | ((SWord32) s1410);
-  const SWord16 s1412 = (SWord16) (s315 >> 16);
-  const SWord8  s1413 = (SWord8) (s1412 >> 8);
-  const SWord8  s1414 = table1[s1413];
-  const SWord8  s1415 = (SWord8) s1412;
-  const SWord8  s1416 = table2[s1415];
-  const SWord16 s1417 = (SWord16) s315;
-  const SWord8  s1418 = (SWord8) (s1417 >> 8);
-  const SWord8  s1419 = table3[s1418];
-  const SWord8  s1420 = (SWord8) s1417;
-  const SWord8  s1421 = table4[s1420];
-  const SWord8  s1422 = s1419 ^ s1421;
-  const SWord8  s1423 = s1416 ^ s1422;
-  const SWord8  s1424 = s1414 ^ s1423;
-  const SWord8  s1425 = table4[s1413];
-  const SWord8  s1426 = table1[s1415];
-  const SWord8  s1427 = table2[s1418];
-  const SWord8  s1428 = table3[s1420];
-  const SWord8  s1429 = s1427 ^ s1428;
-  const SWord8  s1430 = s1426 ^ s1429;
-  const SWord8  s1431 = s1425 ^ s1430;
-  const SWord16 s1432 = (((SWord16) s1424) << 8) | ((SWord16) s1431);
-  const SWord8  s1433 = table3[s1413];
-  const SWord8  s1434 = table4[s1415];
-  const SWord8  s1435 = table1[s1418];
-  const SWord8  s1436 = table2[s1420];
-  const SWord8  s1437 = s1435 ^ s1436;
-  const SWord8  s1438 = s1434 ^ s1437;
-  const SWord8  s1439 = s1433 ^ s1438;
-  const SWord8  s1440 = table2[s1413];
-  const SWord8  s1441 = table3[s1415];
-  const SWord8  s1442 = table4[s1418];
-  const SWord8  s1443 = table1[s1420];
-  const SWord8  s1444 = s1442 ^ s1443;
-  const SWord8  s1445 = s1441 ^ s1444;
-  const SWord8  s1446 = s1440 ^ s1445;
-  const SWord16 s1447 = (((SWord16) s1439) << 8) | ((SWord16) s1446);
-  const SWord32 s1448 = (((SWord32) s1432) << 16) | ((SWord32) s1447);
-  const SWord16 s1449 = (SWord16) (s316 >> 16);
-  const SWord8  s1450 = (SWord8) (s1449 >> 8);
-  const SWord8  s1451 = table1[s1450];
-  const SWord8  s1452 = (SWord8) s1449;
-  const SWord8  s1453 = table2[s1452];
-  const SWord16 s1454 = (SWord16) s316;
-  const SWord8  s1455 = (SWord8) (s1454 >> 8);
-  const SWord8  s1456 = table3[s1455];
-  const SWord8  s1457 = (SWord8) s1454;
-  const SWord8  s1458 = table4[s1457];
-  const SWord8  s1459 = s1456 ^ s1458;
-  const SWord8  s1460 = s1453 ^ s1459;
-  const SWord8  s1461 = s1451 ^ s1460;
-  const SWord8  s1462 = table4[s1450];
-  const SWord8  s1463 = table1[s1452];
-  const SWord8  s1464 = table2[s1455];
-  const SWord8  s1465 = table3[s1457];
-  const SWord8  s1466 = s1464 ^ s1465;
-  const SWord8  s1467 = s1463 ^ s1466;
-  const SWord8  s1468 = s1462 ^ s1467;
-  const SWord16 s1469 = (((SWord16) s1461) << 8) | ((SWord16) s1468);
-  const SWord8  s1470 = table3[s1450];
-  const SWord8  s1471 = table4[s1452];
-  const SWord8  s1472 = table1[s1455];
-  const SWord8  s1473 = table2[s1457];
-  const SWord8  s1474 = s1472 ^ s1473;
-  const SWord8  s1475 = s1471 ^ s1474;
-  const SWord8  s1476 = s1470 ^ s1475;
-  const SWord8  s1477 = table2[s1450];
-  const SWord8  s1478 = table3[s1452];
-  const SWord8  s1479 = table4[s1455];
-  const SWord8  s1480 = table1[s1457];
-  const SWord8  s1481 = s1479 ^ s1480;
-  const SWord8  s1482 = s1478 ^ s1481;
-  const SWord8  s1483 = s1477 ^ s1482;
-  const SWord16 s1484 = (((SWord16) s1476) << 8) | ((SWord16) s1483);
-  const SWord32 s1485 = (((SWord32) s1469) << 16) | ((SWord32) s1484);
-  const SWord16 s1486 = (SWord16) (s294 >> 16);
-  const SWord8  s1487 = (SWord8) (s1486 >> 8);
-  const SWord8  s1488 = table1[s1487];
-  const SWord8  s1489 = (SWord8) s1486;
-  const SWord8  s1490 = table2[s1489];
-  const SWord16 s1491 = (SWord16) s294;
-  const SWord8  s1492 = (SWord8) (s1491 >> 8);
-  const SWord8  s1493 = table3[s1492];
-  const SWord8  s1494 = (SWord8) s1491;
-  const SWord8  s1495 = table4[s1494];
-  const SWord8  s1496 = s1493 ^ s1495;
-  const SWord8  s1497 = s1490 ^ s1496;
-  const SWord8  s1498 = s1488 ^ s1497;
-  const SWord8  s1499 = table4[s1487];
-  const SWord8  s1500 = table1[s1489];
-  const SWord8  s1501 = table2[s1492];
-  const SWord8  s1502 = table3[s1494];
-  const SWord8  s1503 = s1501 ^ s1502;
-  const SWord8  s1504 = s1500 ^ s1503;
-  const SWord8  s1505 = s1499 ^ s1504;
-  const SWord16 s1506 = (((SWord16) s1498) << 8) | ((SWord16) s1505);
-  const SWord8  s1507 = table3[s1487];
-  const SWord8  s1508 = table4[s1489];
-  const SWord8  s1509 = table1[s1492];
-  const SWord8  s1510 = table2[s1494];
-  const SWord8  s1511 = s1509 ^ s1510;
-  const SWord8  s1512 = s1508 ^ s1511;
-  const SWord8  s1513 = s1507 ^ s1512;
-  const SWord8  s1514 = table2[s1487];
-  const SWord8  s1515 = table3[s1489];
-  const SWord8  s1516 = table4[s1492];
-  const SWord8  s1517 = table1[s1494];
-  const SWord8  s1518 = s1516 ^ s1517;
-  const SWord8  s1519 = s1515 ^ s1518;
-  const SWord8  s1520 = s1514 ^ s1519;
-  const SWord16 s1521 = (((SWord16) s1513) << 8) | ((SWord16) s1520);
-  const SWord32 s1522 = (((SWord32) s1506) << 16) | ((SWord32) s1521);
-  const SWord16 s1523 = (SWord16) (s295 >> 16);
-  const SWord8  s1524 = (SWord8) (s1523 >> 8);
-  const SWord8  s1525 = table1[s1524];
-  const SWord8  s1526 = (SWord8) s1523;
-  const SWord8  s1527 = table2[s1526];
-  const SWord16 s1528 = (SWord16) s295;
-  const SWord8  s1529 = (SWord8) (s1528 >> 8);
-  const SWord8  s1530 = table3[s1529];
-  const SWord8  s1531 = (SWord8) s1528;
-  const SWord8  s1532 = table4[s1531];
-  const SWord8  s1533 = s1530 ^ s1532;
-  const SWord8  s1534 = s1527 ^ s1533;
-  const SWord8  s1535 = s1525 ^ s1534;
-  const SWord8  s1536 = table4[s1524];
-  const SWord8  s1537 = table1[s1526];
-  const SWord8  s1538 = table2[s1529];
-  const SWord8  s1539 = table3[s1531];
-  const SWord8  s1540 = s1538 ^ s1539;
-  const SWord8  s1541 = s1537 ^ s1540;
-  const SWord8  s1542 = s1536 ^ s1541;
-  const SWord16 s1543 = (((SWord16) s1535) << 8) | ((SWord16) s1542);
-  const SWord8  s1544 = table3[s1524];
-  const SWord8  s1545 = table4[s1526];
-  const SWord8  s1546 = table1[s1529];
-  const SWord8  s1547 = table2[s1531];
-  const SWord8  s1548 = s1546 ^ s1547;
-  const SWord8  s1549 = s1545 ^ s1548;
-  const SWord8  s1550 = s1544 ^ s1549;
-  const SWord8  s1551 = table2[s1524];
-  const SWord8  s1552 = table3[s1526];
-  const SWord8  s1553 = table4[s1529];
-  const SWord8  s1554 = table1[s1531];
-  const SWord8  s1555 = s1553 ^ s1554;
-  const SWord8  s1556 = s1552 ^ s1555;
-  const SWord8  s1557 = s1551 ^ s1556;
-  const SWord16 s1558 = (((SWord16) s1550) << 8) | ((SWord16) s1557);
-  const SWord32 s1559 = (((SWord32) s1543) << 16) | ((SWord32) s1558);
-  const SWord16 s1560 = (SWord16) (s296 >> 16);
-  const SWord8  s1561 = (SWord8) (s1560 >> 8);
-  const SWord8  s1562 = table1[s1561];
-  const SWord8  s1563 = (SWord8) s1560;
-  const SWord8  s1564 = table2[s1563];
-  const SWord16 s1565 = (SWord16) s296;
-  const SWord8  s1566 = (SWord8) (s1565 >> 8);
-  const SWord8  s1567 = table3[s1566];
-  const SWord8  s1568 = (SWord8) s1565;
-  const SWord8  s1569 = table4[s1568];
-  const SWord8  s1570 = s1567 ^ s1569;
-  const SWord8  s1571 = s1564 ^ s1570;
-  const SWord8  s1572 = s1562 ^ s1571;
-  const SWord8  s1573 = table4[s1561];
-  const SWord8  s1574 = table1[s1563];
-  const SWord8  s1575 = table2[s1566];
-  const SWord8  s1576 = table3[s1568];
-  const SWord8  s1577 = s1575 ^ s1576;
-  const SWord8  s1578 = s1574 ^ s1577;
-  const SWord8  s1579 = s1573 ^ s1578;
-  const SWord16 s1580 = (((SWord16) s1572) << 8) | ((SWord16) s1579);
-  const SWord8  s1581 = table3[s1561];
-  const SWord8  s1582 = table4[s1563];
-  const SWord8  s1583 = table1[s1566];
-  const SWord8  s1584 = table2[s1568];
-  const SWord8  s1585 = s1583 ^ s1584;
-  const SWord8  s1586 = s1582 ^ s1585;
-  const SWord8  s1587 = s1581 ^ s1586;
-  const SWord8  s1588 = table2[s1561];
-  const SWord8  s1589 = table3[s1563];
-  const SWord8  s1590 = table4[s1566];
-  const SWord8  s1591 = table1[s1568];
-  const SWord8  s1592 = s1590 ^ s1591;
-  const SWord8  s1593 = s1589 ^ s1592;
-  const SWord8  s1594 = s1588 ^ s1593;
-  const SWord16 s1595 = (((SWord16) s1587) << 8) | ((SWord16) s1594);
-  const SWord32 s1596 = (((SWord32) s1580) << 16) | ((SWord32) s1595);
-  const SWord16 s1597 = (SWord16) (s297 >> 16);
-  const SWord8  s1598 = (SWord8) (s1597 >> 8);
-  const SWord8  s1599 = table1[s1598];
-  const SWord8  s1600 = (SWord8) s1597;
-  const SWord8  s1601 = table2[s1600];
-  const SWord16 s1602 = (SWord16) s297;
-  const SWord8  s1603 = (SWord8) (s1602 >> 8);
-  const SWord8  s1604 = table3[s1603];
-  const SWord8  s1605 = (SWord8) s1602;
-  const SWord8  s1606 = table4[s1605];
-  const SWord8  s1607 = s1604 ^ s1606;
-  const SWord8  s1608 = s1601 ^ s1607;
-  const SWord8  s1609 = s1599 ^ s1608;
-  const SWord8  s1610 = table4[s1598];
-  const SWord8  s1611 = table1[s1600];
-  const SWord8  s1612 = table2[s1603];
-  const SWord8  s1613 = table3[s1605];
-  const SWord8  s1614 = s1612 ^ s1613;
-  const SWord8  s1615 = s1611 ^ s1614;
-  const SWord8  s1616 = s1610 ^ s1615;
-  const SWord16 s1617 = (((SWord16) s1609) << 8) | ((SWord16) s1616);
-  const SWord8  s1618 = table3[s1598];
-  const SWord8  s1619 = table4[s1600];
-  const SWord8  s1620 = table1[s1603];
-  const SWord8  s1621 = table2[s1605];
-  const SWord8  s1622 = s1620 ^ s1621;
-  const SWord8  s1623 = s1619 ^ s1622;
-  const SWord8  s1624 = s1618 ^ s1623;
-  const SWord8  s1625 = table2[s1598];
-  const SWord8  s1626 = table3[s1600];
-  const SWord8  s1627 = table4[s1603];
-  const SWord8  s1628 = table1[s1605];
-  const SWord8  s1629 = s1627 ^ s1628;
-  const SWord8  s1630 = s1626 ^ s1629;
-  const SWord8  s1631 = s1625 ^ s1630;
-  const SWord16 s1632 = (((SWord16) s1624) << 8) | ((SWord16) s1631);
-  const SWord32 s1633 = (((SWord32) s1617) << 16) | ((SWord32) s1632);
-  const SWord16 s1634 = (SWord16) (s275 >> 16);
-  const SWord8  s1635 = (SWord8) (s1634 >> 8);
-  const SWord8  s1636 = table1[s1635];
-  const SWord8  s1637 = (SWord8) s1634;
-  const SWord8  s1638 = table2[s1637];
-  const SWord16 s1639 = (SWord16) s275;
-  const SWord8  s1640 = (SWord8) (s1639 >> 8);
-  const SWord8  s1641 = table3[s1640];
-  const SWord8  s1642 = (SWord8) s1639;
-  const SWord8  s1643 = table4[s1642];
-  const SWord8  s1644 = s1641 ^ s1643;
-  const SWord8  s1645 = s1638 ^ s1644;
-  const SWord8  s1646 = s1636 ^ s1645;
-  const SWord8  s1647 = table4[s1635];
-  const SWord8  s1648 = table1[s1637];
-  const SWord8  s1649 = table2[s1640];
-  const SWord8  s1650 = table3[s1642];
-  const SWord8  s1651 = s1649 ^ s1650;
-  const SWord8  s1652 = s1648 ^ s1651;
-  const SWord8  s1653 = s1647 ^ s1652;
-  const SWord16 s1654 = (((SWord16) s1646) << 8) | ((SWord16) s1653);
-  const SWord8  s1655 = table3[s1635];
-  const SWord8  s1656 = table4[s1637];
-  const SWord8  s1657 = table1[s1640];
-  const SWord8  s1658 = table2[s1642];
-  const SWord8  s1659 = s1657 ^ s1658;
-  const SWord8  s1660 = s1656 ^ s1659;
-  const SWord8  s1661 = s1655 ^ s1660;
-  const SWord8  s1662 = table2[s1635];
-  const SWord8  s1663 = table3[s1637];
-  const SWord8  s1664 = table4[s1640];
-  const SWord8  s1665 = table1[s1642];
-  const SWord8  s1666 = s1664 ^ s1665;
-  const SWord8  s1667 = s1663 ^ s1666;
-  const SWord8  s1668 = s1662 ^ s1667;
-  const SWord16 s1669 = (((SWord16) s1661) << 8) | ((SWord16) s1668);
-  const SWord32 s1670 = (((SWord32) s1654) << 16) | ((SWord32) s1669);
-  const SWord16 s1671 = (SWord16) (s276 >> 16);
-  const SWord8  s1672 = (SWord8) (s1671 >> 8);
-  const SWord8  s1673 = table1[s1672];
-  const SWord8  s1674 = (SWord8) s1671;
-  const SWord8  s1675 = table2[s1674];
-  const SWord16 s1676 = (SWord16) s276;
-  const SWord8  s1677 = (SWord8) (s1676 >> 8);
-  const SWord8  s1678 = table3[s1677];
-  const SWord8  s1679 = (SWord8) s1676;
-  const SWord8  s1680 = table4[s1679];
-  const SWord8  s1681 = s1678 ^ s1680;
-  const SWord8  s1682 = s1675 ^ s1681;
-  const SWord8  s1683 = s1673 ^ s1682;
-  const SWord8  s1684 = table4[s1672];
-  const SWord8  s1685 = table1[s1674];
-  const SWord8  s1686 = table2[s1677];
-  const SWord8  s1687 = table3[s1679];
-  const SWord8  s1688 = s1686 ^ s1687;
-  const SWord8  s1689 = s1685 ^ s1688;
-  const SWord8  s1690 = s1684 ^ s1689;
-  const SWord16 s1691 = (((SWord16) s1683) << 8) | ((SWord16) s1690);
-  const SWord8  s1692 = table3[s1672];
-  const SWord8  s1693 = table4[s1674];
-  const SWord8  s1694 = table1[s1677];
-  const SWord8  s1695 = table2[s1679];
-  const SWord8  s1696 = s1694 ^ s1695;
-  const SWord8  s1697 = s1693 ^ s1696;
-  const SWord8  s1698 = s1692 ^ s1697;
-  const SWord8  s1699 = table2[s1672];
-  const SWord8  s1700 = table3[s1674];
-  const SWord8  s1701 = table4[s1677];
-  const SWord8  s1702 = table1[s1679];
-  const SWord8  s1703 = s1701 ^ s1702;
-  const SWord8  s1704 = s1700 ^ s1703;
-  const SWord8  s1705 = s1699 ^ s1704;
-  const SWord16 s1706 = (((SWord16) s1698) << 8) | ((SWord16) s1705);
-  const SWord32 s1707 = (((SWord32) s1691) << 16) | ((SWord32) s1706);
-  const SWord16 s1708 = (SWord16) (s277 >> 16);
-  const SWord8  s1709 = (SWord8) (s1708 >> 8);
-  const SWord8  s1710 = table1[s1709];
-  const SWord8  s1711 = (SWord8) s1708;
-  const SWord8  s1712 = table2[s1711];
-  const SWord16 s1713 = (SWord16) s277;
-  const SWord8  s1714 = (SWord8) (s1713 >> 8);
-  const SWord8  s1715 = table3[s1714];
-  const SWord8  s1716 = (SWord8) s1713;
-  const SWord8  s1717 = table4[s1716];
-  const SWord8  s1718 = s1715 ^ s1717;
-  const SWord8  s1719 = s1712 ^ s1718;
-  const SWord8  s1720 = s1710 ^ s1719;
-  const SWord8  s1721 = table4[s1709];
-  const SWord8  s1722 = table1[s1711];
-  const SWord8  s1723 = table2[s1714];
-  const SWord8  s1724 = table3[s1716];
-  const SWord8  s1725 = s1723 ^ s1724;
-  const SWord8  s1726 = s1722 ^ s1725;
-  const SWord8  s1727 = s1721 ^ s1726;
-  const SWord16 s1728 = (((SWord16) s1720) << 8) | ((SWord16) s1727);
-  const SWord8  s1729 = table3[s1709];
-  const SWord8  s1730 = table4[s1711];
-  const SWord8  s1731 = table1[s1714];
-  const SWord8  s1732 = table2[s1716];
-  const SWord8  s1733 = s1731 ^ s1732;
-  const SWord8  s1734 = s1730 ^ s1733;
-  const SWord8  s1735 = s1729 ^ s1734;
-  const SWord8  s1736 = table2[s1709];
-  const SWord8  s1737 = table3[s1711];
-  const SWord8  s1738 = table4[s1714];
-  const SWord8  s1739 = table1[s1716];
-  const SWord8  s1740 = s1738 ^ s1739;
-  const SWord8  s1741 = s1737 ^ s1740;
-  const SWord8  s1742 = s1736 ^ s1741;
-  const SWord16 s1743 = (((SWord16) s1735) << 8) | ((SWord16) s1742);
-  const SWord32 s1744 = (((SWord32) s1728) << 16) | ((SWord32) s1743);
-  const SWord16 s1745 = (SWord16) (s278 >> 16);
-  const SWord8  s1746 = (SWord8) (s1745 >> 8);
-  const SWord8  s1747 = table1[s1746];
-  const SWord8  s1748 = (SWord8) s1745;
-  const SWord8  s1749 = table2[s1748];
-  const SWord16 s1750 = (SWord16) s278;
-  const SWord8  s1751 = (SWord8) (s1750 >> 8);
-  const SWord8  s1752 = table3[s1751];
-  const SWord8  s1753 = (SWord8) s1750;
-  const SWord8  s1754 = table4[s1753];
-  const SWord8  s1755 = s1752 ^ s1754;
-  const SWord8  s1756 = s1749 ^ s1755;
-  const SWord8  s1757 = s1747 ^ s1756;
-  const SWord8  s1758 = table4[s1746];
-  const SWord8  s1759 = table1[s1748];
-  const SWord8  s1760 = table2[s1751];
-  const SWord8  s1761 = table3[s1753];
-  const SWord8  s1762 = s1760 ^ s1761;
-  const SWord8  s1763 = s1759 ^ s1762;
-  const SWord8  s1764 = s1758 ^ s1763;
-  const SWord16 s1765 = (((SWord16) s1757) << 8) | ((SWord16) s1764);
-  const SWord8  s1766 = table3[s1746];
-  const SWord8  s1767 = table4[s1748];
-  const SWord8  s1768 = table1[s1751];
-  const SWord8  s1769 = table2[s1753];
-  const SWord8  s1770 = s1768 ^ s1769;
-  const SWord8  s1771 = s1767 ^ s1770;
-  const SWord8  s1772 = s1766 ^ s1771;
-  const SWord8  s1773 = table2[s1746];
-  const SWord8  s1774 = table3[s1748];
-  const SWord8  s1775 = table4[s1751];
-  const SWord8  s1776 = table1[s1753];
-  const SWord8  s1777 = s1775 ^ s1776;
-  const SWord8  s1778 = s1774 ^ s1777;
-  const SWord8  s1779 = s1773 ^ s1778;
-  const SWord16 s1780 = (((SWord16) s1772) << 8) | ((SWord16) s1779);
-  const SWord32 s1781 = (((SWord32) s1765) << 16) | ((SWord32) s1780);
-  
-  encKS[0] = s0;
-  encKS[1] = s1;
-  encKS[2] = s2;
-  encKS[3] = s3;
-  encKS[4] = s275;
-  encKS[5] = s276;
-  encKS[6] = s277;
-  encKS[7] = s278;
-  encKS[8] = s294;
-  encKS[9] = s295;
-  encKS[10] = s296;
-  encKS[11] = s297;
-  encKS[12] = s313;
-  encKS[13] = s314;
-  encKS[14] = s315;
-  encKS[15] = s316;
-  encKS[16] = s332;
-  encKS[17] = s333;
-  encKS[18] = s334;
-  encKS[19] = s335;
-  encKS[20] = s351;
-  encKS[21] = s352;
-  encKS[22] = s353;
-  encKS[23] = s354;
-  encKS[24] = s370;
-  encKS[25] = s371;
-  encKS[26] = s372;
-  encKS[27] = s373;
-  encKS[28] = s389;
-  encKS[29] = s390;
-  encKS[30] = s391;
-  encKS[31] = s392;
-  encKS[32] = s408;
-  encKS[33] = s409;
-  encKS[34] = s410;
-  encKS[35] = s411;
-  encKS[36] = s427;
-  encKS[37] = s428;
-  encKS[38] = s429;
-  encKS[39] = s430;
-  encKS[40] = s446;
-  encKS[41] = s447;
-  encKS[42] = s448;
-  encKS[43] = s449;
-  decKS[0] = s446;
-  decKS[1] = s447;
-  decKS[2] = s448;
-  decKS[3] = s449;
-  decKS[4] = s486;
-  decKS[5] = s523;
-  decKS[6] = s560;
-  decKS[7] = s597;
-  decKS[8] = s634;
-  decKS[9] = s671;
-  decKS[10] = s708;
-  decKS[11] = s745;
-  decKS[12] = s782;
-  decKS[13] = s819;
-  decKS[14] = s856;
-  decKS[15] = s893;
-  decKS[16] = s930;
-  decKS[17] = s967;
-  decKS[18] = s1004;
-  decKS[19] = s1041;
-  decKS[20] = s1078;
-  decKS[21] = s1115;
-  decKS[22] = s1152;
-  decKS[23] = s1189;
-  decKS[24] = s1226;
-  decKS[25] = s1263;
-  decKS[26] = s1300;
-  decKS[27] = s1337;
-  decKS[28] = s1374;
-  decKS[29] = s1411;
-  decKS[30] = s1448;
-  decKS[31] = s1485;
-  decKS[32] = s1522;
-  decKS[33] = s1559;
-  decKS[34] = s1596;
-  decKS[35] = s1633;
-  decKS[36] = s1670;
-  decKS[37] = s1707;
-  decKS[38] = s1744;
-  decKS[39] = s1781;
-  decKS[40] = s0;
-  decKS[41] = s1;
-  decKS[42] = s2;
-  decKS[43] = s3;
-}
-== END: "aes128KeySchedule.c" ==================
-== BEGIN: "aes128BlockEncrypt.c" ================
-/* File: "aes128BlockEncrypt.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "aes128Lib.h"
-
-void aes128BlockEncrypt(const SWord32 *pt, const SWord32 *xkey,
-                        SWord32 *ct)
-{
-  const SWord32 s0 = pt[0];
-  const SWord32 s1 = pt[1];
-  const SWord32 s2 = pt[2];
-  const SWord32 s3 = pt[3];
-  const SWord32 s4 = xkey[0];
-  const SWord32 s5 = xkey[1];
-  const SWord32 s6 = xkey[2];
-  const SWord32 s7 = xkey[3];
-  const SWord32 s8 = xkey[4];
-  const SWord32 s9 = xkey[5];
-  const SWord32 s10 = xkey[6];
-  const SWord32 s11 = xkey[7];
-  const SWord32 s12 = xkey[8];
-  const SWord32 s13 = xkey[9];
-  const SWord32 s14 = xkey[10];
-  const SWord32 s15 = xkey[11];
-  const SWord32 s16 = xkey[12];
-  const SWord32 s17 = xkey[13];
-  const SWord32 s18 = xkey[14];
-  const SWord32 s19 = xkey[15];
-  const SWord32 s20 = xkey[16];
-  const SWord32 s21 = xkey[17];
-  const SWord32 s22 = xkey[18];
-  const SWord32 s23 = xkey[19];
-  const SWord32 s24 = xkey[20];
-  const SWord32 s25 = xkey[21];
-  const SWord32 s26 = xkey[22];
-  const SWord32 s27 = xkey[23];
-  const SWord32 s28 = xkey[24];
-  const SWord32 s29 = xkey[25];
-  const SWord32 s30 = xkey[26];
-  const SWord32 s31 = xkey[27];
-  const SWord32 s32 = xkey[28];
-  const SWord32 s33 = xkey[29];
-  const SWord32 s34 = xkey[30];
-  const SWord32 s35 = xkey[31];
-  const SWord32 s36 = xkey[32];
-  const SWord32 s37 = xkey[33];
-  const SWord32 s38 = xkey[34];
-  const SWord32 s39 = xkey[35];
-  const SWord32 s40 = xkey[36];
-  const SWord32 s41 = xkey[37];
-  const SWord32 s42 = xkey[38];
-  const SWord32 s43 = xkey[39];
-  const SWord32 s44 = xkey[40];
-  const SWord32 s45 = xkey[41];
-  const SWord32 s46 = xkey[42];
-  const SWord32 s47 = xkey[43];
-  static const SWord8 table0[] = {
-       99, 124, 119, 123, 242, 107, 111, 197,  48,   1, 103,  43, 254,
-      215, 171, 118, 202, 130, 201, 125, 250,  89,  71, 240, 173, 212,
-      162, 175, 156, 164, 114, 192, 183, 253, 147,  38,  54,  63, 247,
-      204,  52, 165, 229, 241, 113, 216,  49,  21,   4, 199,  35, 195,
-       24, 150,   5, 154,   7,  18, 128, 226, 235,  39, 178, 117,   9,
-      131,  44,  26,  27, 110,  90, 160,  82,  59, 214, 179,  41, 227,
-       47, 132,  83, 209,   0, 237,  32, 252, 177,  91, 106, 203, 190,
-       57,  74,  76,  88, 207, 208, 239, 170, 251,  67,  77,  51, 133,
-       69, 249,   2, 127,  80,  60, 159, 168,  81, 163,  64, 143, 146,
-      157,  56, 245, 188, 182, 218,  33,  16, 255, 243, 210, 205,  12,
-       19, 236,  95, 151,  68,  23, 196, 167, 126,  61, 100,  93,  25,
-      115,  96, 129,  79, 220,  34,  42, 144, 136,  70, 238, 184,  20,
-      222,  94,  11, 219, 224,  50,  58,  10,  73,   6,  36,  92, 194,
-      211, 172,  98, 145, 149, 228, 121, 231, 200,  55, 109, 141, 213,
-       78, 169, 108,  86, 244, 234, 101, 122, 174,   8, 186, 120,  37,
-       46,  28, 166, 180, 198, 232, 221, 116,  31,  75, 189, 139, 138,
-      112,  62, 181, 102,  72,   3, 246,  14,  97,  53,  87, 185, 134,
-      193,  29, 158, 225, 248, 152,  17, 105, 217, 142, 148, 155,  30,
-      135, 233, 206,  85,  40, 223, 140, 161, 137,  13, 191, 230,  66,
-      104,  65, 153,  45,  15, 176,  84, 187,  22
-  };
-  static const SWord32 table1[] = {
-      0xc66363a5UL, 0xf87c7c84UL, 0xee777799UL, 0xf67b7b8dUL,
-      0xfff2f20dUL, 0xd66b6bbdUL, 0xde6f6fb1UL, 0x91c5c554UL,
-      0x60303050UL, 0x02010103UL, 0xce6767a9UL, 0x562b2b7dUL,
-      0xe7fefe19UL, 0xb5d7d762UL, 0x4dababe6UL, 0xec76769aUL,
-      0x8fcaca45UL, 0x1f82829dUL, 0x89c9c940UL, 0xfa7d7d87UL,
-      0xeffafa15UL, 0xb25959ebUL, 0x8e4747c9UL, 0xfbf0f00bUL,
-      0x41adadecUL, 0xb3d4d467UL, 0x5fa2a2fdUL, 0x45afafeaUL,
-      0x239c9cbfUL, 0x53a4a4f7UL, 0xe4727296UL, 0x9bc0c05bUL,
-      0x75b7b7c2UL, 0xe1fdfd1cUL, 0x3d9393aeUL, 0x4c26266aUL,
-      0x6c36365aUL, 0x7e3f3f41UL, 0xf5f7f702UL, 0x83cccc4fUL,
-      0x6834345cUL, 0x51a5a5f4UL, 0xd1e5e534UL, 0xf9f1f108UL,
-      0xe2717193UL, 0xabd8d873UL, 0x62313153UL, 0x2a15153fUL,
-      0x0804040cUL, 0x95c7c752UL, 0x46232365UL, 0x9dc3c35eUL,
-      0x30181828UL, 0x379696a1UL, 0x0a05050fUL, 0x2f9a9ab5UL,
-      0x0e070709UL, 0x24121236UL, 0x1b80809bUL, 0xdfe2e23dUL,
-      0xcdebeb26UL, 0x4e272769UL, 0x7fb2b2cdUL, 0xea75759fUL,
-      0x1209091bUL, 0x1d83839eUL, 0x582c2c74UL, 0x341a1a2eUL,
-      0x361b1b2dUL, 0xdc6e6eb2UL, 0xb45a5aeeUL, 0x5ba0a0fbUL,
-      0xa45252f6UL, 0x763b3b4dUL, 0xb7d6d661UL, 0x7db3b3ceUL,
-      0x5229297bUL, 0xdde3e33eUL, 0x5e2f2f71UL, 0x13848497UL,
-      0xa65353f5UL, 0xb9d1d168UL, 0x00000000UL, 0xc1eded2cUL,
-      0x40202060UL, 0xe3fcfc1fUL, 0x79b1b1c8UL, 0xb65b5bedUL,
-      0xd46a6abeUL, 0x8dcbcb46UL, 0x67bebed9UL, 0x7239394bUL,
-      0x944a4adeUL, 0x984c4cd4UL, 0xb05858e8UL, 0x85cfcf4aUL,
-      0xbbd0d06bUL, 0xc5efef2aUL, 0x4faaaae5UL, 0xedfbfb16UL,
-      0x864343c5UL, 0x9a4d4dd7UL, 0x66333355UL, 0x11858594UL,
-      0x8a4545cfUL, 0xe9f9f910UL, 0x04020206UL, 0xfe7f7f81UL,
-      0xa05050f0UL, 0x783c3c44UL, 0x259f9fbaUL, 0x4ba8a8e3UL,
-      0xa25151f3UL, 0x5da3a3feUL, 0x804040c0UL, 0x058f8f8aUL,
-      0x3f9292adUL, 0x219d9dbcUL, 0x70383848UL, 0xf1f5f504UL,
-      0x63bcbcdfUL, 0x77b6b6c1UL, 0xafdada75UL, 0x42212163UL,
-      0x20101030UL, 0xe5ffff1aUL, 0xfdf3f30eUL, 0xbfd2d26dUL,
-      0x81cdcd4cUL, 0x180c0c14UL, 0x26131335UL, 0xc3ecec2fUL,
-      0xbe5f5fe1UL, 0x359797a2UL, 0x884444ccUL, 0x2e171739UL,
-      0x93c4c457UL, 0x55a7a7f2UL, 0xfc7e7e82UL, 0x7a3d3d47UL,
-      0xc86464acUL, 0xba5d5de7UL, 0x3219192bUL, 0xe6737395UL,
-      0xc06060a0UL, 0x19818198UL, 0x9e4f4fd1UL, 0xa3dcdc7fUL,
-      0x44222266UL, 0x542a2a7eUL, 0x3b9090abUL, 0x0b888883UL,
-      0x8c4646caUL, 0xc7eeee29UL, 0x6bb8b8d3UL, 0x2814143cUL,
-      0xa7dede79UL, 0xbc5e5ee2UL, 0x160b0b1dUL, 0xaddbdb76UL,
-      0xdbe0e03bUL, 0x64323256UL, 0x743a3a4eUL, 0x140a0a1eUL,
-      0x924949dbUL, 0x0c06060aUL, 0x4824246cUL, 0xb85c5ce4UL,
-      0x9fc2c25dUL, 0xbdd3d36eUL, 0x43acacefUL, 0xc46262a6UL,
-      0x399191a8UL, 0x319595a4UL, 0xd3e4e437UL, 0xf279798bUL,
-      0xd5e7e732UL, 0x8bc8c843UL, 0x6e373759UL, 0xda6d6db7UL,
-      0x018d8d8cUL, 0xb1d5d564UL, 0x9c4e4ed2UL, 0x49a9a9e0UL,
-      0xd86c6cb4UL, 0xac5656faUL, 0xf3f4f407UL, 0xcfeaea25UL,
-      0xca6565afUL, 0xf47a7a8eUL, 0x47aeaee9UL, 0x10080818UL,
-      0x6fbabad5UL, 0xf0787888UL, 0x4a25256fUL, 0x5c2e2e72UL,
-      0x381c1c24UL, 0x57a6a6f1UL, 0x73b4b4c7UL, 0x97c6c651UL,
-      0xcbe8e823UL, 0xa1dddd7cUL, 0xe874749cUL, 0x3e1f1f21UL,
-      0x964b4bddUL, 0x61bdbddcUL, 0x0d8b8b86UL, 0x0f8a8a85UL,
-      0xe0707090UL, 0x7c3e3e42UL, 0x71b5b5c4UL, 0xcc6666aaUL,
-      0x904848d8UL, 0x06030305UL, 0xf7f6f601UL, 0x1c0e0e12UL,
-      0xc26161a3UL, 0x6a35355fUL, 0xae5757f9UL, 0x69b9b9d0UL,
-      0x17868691UL, 0x99c1c158UL, 0x3a1d1d27UL, 0x279e9eb9UL,
-      0xd9e1e138UL, 0xebf8f813UL, 0x2b9898b3UL, 0x22111133UL,
-      0xd26969bbUL, 0xa9d9d970UL, 0x078e8e89UL, 0x339494a7UL,
-      0x2d9b9bb6UL, 0x3c1e1e22UL, 0x15878792UL, 0xc9e9e920UL,
-      0x87cece49UL, 0xaa5555ffUL, 0x50282878UL, 0xa5dfdf7aUL,
-      0x038c8c8fUL, 0x59a1a1f8UL, 0x09898980UL, 0x1a0d0d17UL,
-      0x65bfbfdaUL, 0xd7e6e631UL, 0x844242c6UL, 0xd06868b8UL,
-      0x824141c3UL, 0x299999b0UL, 0x5a2d2d77UL, 0x1e0f0f11UL,
-      0x7bb0b0cbUL, 0xa85454fcUL, 0x6dbbbbd6UL, 0x2c16163aUL
-  };
-  static const SWord32 table2[] = {
-      0xa5c66363UL, 0x84f87c7cUL, 0x99ee7777UL, 0x8df67b7bUL,
-      0x0dfff2f2UL, 0xbdd66b6bUL, 0xb1de6f6fUL, 0x5491c5c5UL,
-      0x50603030UL, 0x03020101UL, 0xa9ce6767UL, 0x7d562b2bUL,
-      0x19e7fefeUL, 0x62b5d7d7UL, 0xe64dababUL, 0x9aec7676UL,
-      0x458fcacaUL, 0x9d1f8282UL, 0x4089c9c9UL, 0x87fa7d7dUL,
-      0x15effafaUL, 0xebb25959UL, 0xc98e4747UL, 0x0bfbf0f0UL,
-      0xec41adadUL, 0x67b3d4d4UL, 0xfd5fa2a2UL, 0xea45afafUL,
-      0xbf239c9cUL, 0xf753a4a4UL, 0x96e47272UL, 0x5b9bc0c0UL,
-      0xc275b7b7UL, 0x1ce1fdfdUL, 0xae3d9393UL, 0x6a4c2626UL,
-      0x5a6c3636UL, 0x417e3f3fUL, 0x02f5f7f7UL, 0x4f83ccccUL,
-      0x5c683434UL, 0xf451a5a5UL, 0x34d1e5e5UL, 0x08f9f1f1UL,
-      0x93e27171UL, 0x73abd8d8UL, 0x53623131UL, 0x3f2a1515UL,
-      0x0c080404UL, 0x5295c7c7UL, 0x65462323UL, 0x5e9dc3c3UL,
-      0x28301818UL, 0xa1379696UL, 0x0f0a0505UL, 0xb52f9a9aUL,
-      0x090e0707UL, 0x36241212UL, 0x9b1b8080UL, 0x3ddfe2e2UL,
-      0x26cdebebUL, 0x694e2727UL, 0xcd7fb2b2UL, 0x9fea7575UL,
-      0x1b120909UL, 0x9e1d8383UL, 0x74582c2cUL, 0x2e341a1aUL,
-      0x2d361b1bUL, 0xb2dc6e6eUL, 0xeeb45a5aUL, 0xfb5ba0a0UL,
-      0xf6a45252UL, 0x4d763b3bUL, 0x61b7d6d6UL, 0xce7db3b3UL,
-      0x7b522929UL, 0x3edde3e3UL, 0x715e2f2fUL, 0x97138484UL,
-      0xf5a65353UL, 0x68b9d1d1UL, 0x00000000UL, 0x2cc1ededUL,
-      0x60402020UL, 0x1fe3fcfcUL, 0xc879b1b1UL, 0xedb65b5bUL,
-      0xbed46a6aUL, 0x468dcbcbUL, 0xd967bebeUL, 0x4b723939UL,
-      0xde944a4aUL, 0xd4984c4cUL, 0xe8b05858UL, 0x4a85cfcfUL,
-      0x6bbbd0d0UL, 0x2ac5efefUL, 0xe54faaaaUL, 0x16edfbfbUL,
-      0xc5864343UL, 0xd79a4d4dUL, 0x55663333UL, 0x94118585UL,
-      0xcf8a4545UL, 0x10e9f9f9UL, 0x06040202UL, 0x81fe7f7fUL,
-      0xf0a05050UL, 0x44783c3cUL, 0xba259f9fUL, 0xe34ba8a8UL,
-      0xf3a25151UL, 0xfe5da3a3UL, 0xc0804040UL, 0x8a058f8fUL,
-      0xad3f9292UL, 0xbc219d9dUL, 0x48703838UL, 0x04f1f5f5UL,
-      0xdf63bcbcUL, 0xc177b6b6UL, 0x75afdadaUL, 0x63422121UL,
-      0x30201010UL, 0x1ae5ffffUL, 0x0efdf3f3UL, 0x6dbfd2d2UL,
-      0x4c81cdcdUL, 0x14180c0cUL, 0x35261313UL, 0x2fc3ececUL,
-      0xe1be5f5fUL, 0xa2359797UL, 0xcc884444UL, 0x392e1717UL,
-      0x5793c4c4UL, 0xf255a7a7UL, 0x82fc7e7eUL, 0x477a3d3dUL,
-      0xacc86464UL, 0xe7ba5d5dUL, 0x2b321919UL, 0x95e67373UL,
-      0xa0c06060UL, 0x98198181UL, 0xd19e4f4fUL, 0x7fa3dcdcUL,
-      0x66442222UL, 0x7e542a2aUL, 0xab3b9090UL, 0x830b8888UL,
-      0xca8c4646UL, 0x29c7eeeeUL, 0xd36bb8b8UL, 0x3c281414UL,
-      0x79a7dedeUL, 0xe2bc5e5eUL, 0x1d160b0bUL, 0x76addbdbUL,
-      0x3bdbe0e0UL, 0x56643232UL, 0x4e743a3aUL, 0x1e140a0aUL,
-      0xdb924949UL, 0x0a0c0606UL, 0x6c482424UL, 0xe4b85c5cUL,
-      0x5d9fc2c2UL, 0x6ebdd3d3UL, 0xef43acacUL, 0xa6c46262UL,
-      0xa8399191UL, 0xa4319595UL, 0x37d3e4e4UL, 0x8bf27979UL,
-      0x32d5e7e7UL, 0x438bc8c8UL, 0x596e3737UL, 0xb7da6d6dUL,
-      0x8c018d8dUL, 0x64b1d5d5UL, 0xd29c4e4eUL, 0xe049a9a9UL,
-      0xb4d86c6cUL, 0xfaac5656UL, 0x07f3f4f4UL, 0x25cfeaeaUL,
-      0xafca6565UL, 0x8ef47a7aUL, 0xe947aeaeUL, 0x18100808UL,
-      0xd56fbabaUL, 0x88f07878UL, 0x6f4a2525UL, 0x725c2e2eUL,
-      0x24381c1cUL, 0xf157a6a6UL, 0xc773b4b4UL, 0x5197c6c6UL,
-      0x23cbe8e8UL, 0x7ca1ddddUL, 0x9ce87474UL, 0x213e1f1fUL,
-      0xdd964b4bUL, 0xdc61bdbdUL, 0x860d8b8bUL, 0x850f8a8aUL,
-      0x90e07070UL, 0x427c3e3eUL, 0xc471b5b5UL, 0xaacc6666UL,
-      0xd8904848UL, 0x05060303UL, 0x01f7f6f6UL, 0x121c0e0eUL,
-      0xa3c26161UL, 0x5f6a3535UL, 0xf9ae5757UL, 0xd069b9b9UL,
-      0x91178686UL, 0x5899c1c1UL, 0x273a1d1dUL, 0xb9279e9eUL,
-      0x38d9e1e1UL, 0x13ebf8f8UL, 0xb32b9898UL, 0x33221111UL,
-      0xbbd26969UL, 0x70a9d9d9UL, 0x89078e8eUL, 0xa7339494UL,
-      0xb62d9b9bUL, 0x223c1e1eUL, 0x92158787UL, 0x20c9e9e9UL,
-      0x4987ceceUL, 0xffaa5555UL, 0x78502828UL, 0x7aa5dfdfUL,
-      0x8f038c8cUL, 0xf859a1a1UL, 0x80098989UL, 0x171a0d0dUL,
-      0xda65bfbfUL, 0x31d7e6e6UL, 0xc6844242UL, 0xb8d06868UL,
-      0xc3824141UL, 0xb0299999UL, 0x775a2d2dUL, 0x111e0f0fUL,
-      0xcb7bb0b0UL, 0xfca85454UL, 0xd66dbbbbUL, 0x3a2c1616UL
-  };
-  static const SWord32 table3[] = {
-      0x63a5c663UL, 0x7c84f87cUL, 0x7799ee77UL, 0x7b8df67bUL,
-      0xf20dfff2UL, 0x6bbdd66bUL, 0x6fb1de6fUL, 0xc55491c5UL,
-      0x30506030UL, 0x01030201UL, 0x67a9ce67UL, 0x2b7d562bUL,
-      0xfe19e7feUL, 0xd762b5d7UL, 0xabe64dabUL, 0x769aec76UL,
-      0xca458fcaUL, 0x829d1f82UL, 0xc94089c9UL, 0x7d87fa7dUL,
-      0xfa15effaUL, 0x59ebb259UL, 0x47c98e47UL, 0xf00bfbf0UL,
-      0xadec41adUL, 0xd467b3d4UL, 0xa2fd5fa2UL, 0xafea45afUL,
-      0x9cbf239cUL, 0xa4f753a4UL, 0x7296e472UL, 0xc05b9bc0UL,
-      0xb7c275b7UL, 0xfd1ce1fdUL, 0x93ae3d93UL, 0x266a4c26UL,
-      0x365a6c36UL, 0x3f417e3fUL, 0xf702f5f7UL, 0xcc4f83ccUL,
-      0x345c6834UL, 0xa5f451a5UL, 0xe534d1e5UL, 0xf108f9f1UL,
-      0x7193e271UL, 0xd873abd8UL, 0x31536231UL, 0x153f2a15UL,
-      0x040c0804UL, 0xc75295c7UL, 0x23654623UL, 0xc35e9dc3UL,
-      0x18283018UL, 0x96a13796UL, 0x050f0a05UL, 0x9ab52f9aUL,
-      0x07090e07UL, 0x12362412UL, 0x809b1b80UL, 0xe23ddfe2UL,
-      0xeb26cdebUL, 0x27694e27UL, 0xb2cd7fb2UL, 0x759fea75UL,
-      0x091b1209UL, 0x839e1d83UL, 0x2c74582cUL, 0x1a2e341aUL,
-      0x1b2d361bUL, 0x6eb2dc6eUL, 0x5aeeb45aUL, 0xa0fb5ba0UL,
-      0x52f6a452UL, 0x3b4d763bUL, 0xd661b7d6UL, 0xb3ce7db3UL,
-      0x297b5229UL, 0xe33edde3UL, 0x2f715e2fUL, 0x84971384UL,
-      0x53f5a653UL, 0xd168b9d1UL, 0x00000000UL, 0xed2cc1edUL,
-      0x20604020UL, 0xfc1fe3fcUL, 0xb1c879b1UL, 0x5bedb65bUL,
-      0x6abed46aUL, 0xcb468dcbUL, 0xbed967beUL, 0x394b7239UL,
-      0x4ade944aUL, 0x4cd4984cUL, 0x58e8b058UL, 0xcf4a85cfUL,
-      0xd06bbbd0UL, 0xef2ac5efUL, 0xaae54faaUL, 0xfb16edfbUL,
-      0x43c58643UL, 0x4dd79a4dUL, 0x33556633UL, 0x85941185UL,
-      0x45cf8a45UL, 0xf910e9f9UL, 0x02060402UL, 0x7f81fe7fUL,
-      0x50f0a050UL, 0x3c44783cUL, 0x9fba259fUL, 0xa8e34ba8UL,
-      0x51f3a251UL, 0xa3fe5da3UL, 0x40c08040UL, 0x8f8a058fUL,
-      0x92ad3f92UL, 0x9dbc219dUL, 0x38487038UL, 0xf504f1f5UL,
-      0xbcdf63bcUL, 0xb6c177b6UL, 0xda75afdaUL, 0x21634221UL,
-      0x10302010UL, 0xff1ae5ffUL, 0xf30efdf3UL, 0xd26dbfd2UL,
-      0xcd4c81cdUL, 0x0c14180cUL, 0x13352613UL, 0xec2fc3ecUL,
-      0x5fe1be5fUL, 0x97a23597UL, 0x44cc8844UL, 0x17392e17UL,
-      0xc45793c4UL, 0xa7f255a7UL, 0x7e82fc7eUL, 0x3d477a3dUL,
-      0x64acc864UL, 0x5de7ba5dUL, 0x192b3219UL, 0x7395e673UL,
-      0x60a0c060UL, 0x81981981UL, 0x4fd19e4fUL, 0xdc7fa3dcUL,
-      0x22664422UL, 0x2a7e542aUL, 0x90ab3b90UL, 0x88830b88UL,
-      0x46ca8c46UL, 0xee29c7eeUL, 0xb8d36bb8UL, 0x143c2814UL,
-      0xde79a7deUL, 0x5ee2bc5eUL, 0x0b1d160bUL, 0xdb76addbUL,
-      0xe03bdbe0UL, 0x32566432UL, 0x3a4e743aUL, 0x0a1e140aUL,
-      0x49db9249UL, 0x060a0c06UL, 0x246c4824UL, 0x5ce4b85cUL,
-      0xc25d9fc2UL, 0xd36ebdd3UL, 0xacef43acUL, 0x62a6c462UL,
-      0x91a83991UL, 0x95a43195UL, 0xe437d3e4UL, 0x798bf279UL,
-      0xe732d5e7UL, 0xc8438bc8UL, 0x37596e37UL, 0x6db7da6dUL,
-      0x8d8c018dUL, 0xd564b1d5UL, 0x4ed29c4eUL, 0xa9e049a9UL,
-      0x6cb4d86cUL, 0x56faac56UL, 0xf407f3f4UL, 0xea25cfeaUL,
-      0x65afca65UL, 0x7a8ef47aUL, 0xaee947aeUL, 0x08181008UL,
-      0xbad56fbaUL, 0x7888f078UL, 0x256f4a25UL, 0x2e725c2eUL,
-      0x1c24381cUL, 0xa6f157a6UL, 0xb4c773b4UL, 0xc65197c6UL,
-      0xe823cbe8UL, 0xdd7ca1ddUL, 0x749ce874UL, 0x1f213e1fUL,
-      0x4bdd964bUL, 0xbddc61bdUL, 0x8b860d8bUL, 0x8a850f8aUL,
-      0x7090e070UL, 0x3e427c3eUL, 0xb5c471b5UL, 0x66aacc66UL,
-      0x48d89048UL, 0x03050603UL, 0xf601f7f6UL, 0x0e121c0eUL,
-      0x61a3c261UL, 0x355f6a35UL, 0x57f9ae57UL, 0xb9d069b9UL,
-      0x86911786UL, 0xc15899c1UL, 0x1d273a1dUL, 0x9eb9279eUL,
-      0xe138d9e1UL, 0xf813ebf8UL, 0x98b32b98UL, 0x11332211UL,
-      0x69bbd269UL, 0xd970a9d9UL, 0x8e89078eUL, 0x94a73394UL,
-      0x9bb62d9bUL, 0x1e223c1eUL, 0x87921587UL, 0xe920c9e9UL,
-      0xce4987ceUL, 0x55ffaa55UL, 0x28785028UL, 0xdf7aa5dfUL,
-      0x8c8f038cUL, 0xa1f859a1UL, 0x89800989UL, 0x0d171a0dUL,
-      0xbfda65bfUL, 0xe631d7e6UL, 0x42c68442UL, 0x68b8d068UL,
-      0x41c38241UL, 0x99b02999UL, 0x2d775a2dUL, 0x0f111e0fUL,
-      0xb0cb7bb0UL, 0x54fca854UL, 0xbbd66dbbUL, 0x163a2c16UL
-  };
-  static const SWord32 table4[] = {
-      0x6363a5c6UL, 0x7c7c84f8UL, 0x777799eeUL, 0x7b7b8df6UL,
-      0xf2f20dffUL, 0x6b6bbdd6UL, 0x6f6fb1deUL, 0xc5c55491UL,
-      0x30305060UL, 0x01010302UL, 0x6767a9ceUL, 0x2b2b7d56UL,
-      0xfefe19e7UL, 0xd7d762b5UL, 0xababe64dUL, 0x76769aecUL,
-      0xcaca458fUL, 0x82829d1fUL, 0xc9c94089UL, 0x7d7d87faUL,
-      0xfafa15efUL, 0x5959ebb2UL, 0x4747c98eUL, 0xf0f00bfbUL,
-      0xadadec41UL, 0xd4d467b3UL, 0xa2a2fd5fUL, 0xafafea45UL,
-      0x9c9cbf23UL, 0xa4a4f753UL, 0x727296e4UL, 0xc0c05b9bUL,
-      0xb7b7c275UL, 0xfdfd1ce1UL, 0x9393ae3dUL, 0x26266a4cUL,
-      0x36365a6cUL, 0x3f3f417eUL, 0xf7f702f5UL, 0xcccc4f83UL,
-      0x34345c68UL, 0xa5a5f451UL, 0xe5e534d1UL, 0xf1f108f9UL,
-      0x717193e2UL, 0xd8d873abUL, 0x31315362UL, 0x15153f2aUL,
-      0x04040c08UL, 0xc7c75295UL, 0x23236546UL, 0xc3c35e9dUL,
-      0x18182830UL, 0x9696a137UL, 0x05050f0aUL, 0x9a9ab52fUL,
-      0x0707090eUL, 0x12123624UL, 0x80809b1bUL, 0xe2e23ddfUL,
-      0xebeb26cdUL, 0x2727694eUL, 0xb2b2cd7fUL, 0x75759feaUL,
-      0x09091b12UL, 0x83839e1dUL, 0x2c2c7458UL, 0x1a1a2e34UL,
-      0x1b1b2d36UL, 0x6e6eb2dcUL, 0x5a5aeeb4UL, 0xa0a0fb5bUL,
-      0x5252f6a4UL, 0x3b3b4d76UL, 0xd6d661b7UL, 0xb3b3ce7dUL,
-      0x29297b52UL, 0xe3e33eddUL, 0x2f2f715eUL, 0x84849713UL,
-      0x5353f5a6UL, 0xd1d168b9UL, 0x00000000UL, 0xeded2cc1UL,
-      0x20206040UL, 0xfcfc1fe3UL, 0xb1b1c879UL, 0x5b5bedb6UL,
-      0x6a6abed4UL, 0xcbcb468dUL, 0xbebed967UL, 0x39394b72UL,
-      0x4a4ade94UL, 0x4c4cd498UL, 0x5858e8b0UL, 0xcfcf4a85UL,
-      0xd0d06bbbUL, 0xefef2ac5UL, 0xaaaae54fUL, 0xfbfb16edUL,
-      0x4343c586UL, 0x4d4dd79aUL, 0x33335566UL, 0x85859411UL,
-      0x4545cf8aUL, 0xf9f910e9UL, 0x02020604UL, 0x7f7f81feUL,
-      0x5050f0a0UL, 0x3c3c4478UL, 0x9f9fba25UL, 0xa8a8e34bUL,
-      0x5151f3a2UL, 0xa3a3fe5dUL, 0x4040c080UL, 0x8f8f8a05UL,
-      0x9292ad3fUL, 0x9d9dbc21UL, 0x38384870UL, 0xf5f504f1UL,
-      0xbcbcdf63UL, 0xb6b6c177UL, 0xdada75afUL, 0x21216342UL,
-      0x10103020UL, 0xffff1ae5UL, 0xf3f30efdUL, 0xd2d26dbfUL,
-      0xcdcd4c81UL, 0x0c0c1418UL, 0x13133526UL, 0xecec2fc3UL,
-      0x5f5fe1beUL, 0x9797a235UL, 0x4444cc88UL, 0x1717392eUL,
-      0xc4c45793UL, 0xa7a7f255UL, 0x7e7e82fcUL, 0x3d3d477aUL,
-      0x6464acc8UL, 0x5d5de7baUL, 0x19192b32UL, 0x737395e6UL,
-      0x6060a0c0UL, 0x81819819UL, 0x4f4fd19eUL, 0xdcdc7fa3UL,
-      0x22226644UL, 0x2a2a7e54UL, 0x9090ab3bUL, 0x8888830bUL,
-      0x4646ca8cUL, 0xeeee29c7UL, 0xb8b8d36bUL, 0x14143c28UL,
-      0xdede79a7UL, 0x5e5ee2bcUL, 0x0b0b1d16UL, 0xdbdb76adUL,
-      0xe0e03bdbUL, 0x32325664UL, 0x3a3a4e74UL, 0x0a0a1e14UL,
-      0x4949db92UL, 0x06060a0cUL, 0x24246c48UL, 0x5c5ce4b8UL,
-      0xc2c25d9fUL, 0xd3d36ebdUL, 0xacacef43UL, 0x6262a6c4UL,
-      0x9191a839UL, 0x9595a431UL, 0xe4e437d3UL, 0x79798bf2UL,
-      0xe7e732d5UL, 0xc8c8438bUL, 0x3737596eUL, 0x6d6db7daUL,
-      0x8d8d8c01UL, 0xd5d564b1UL, 0x4e4ed29cUL, 0xa9a9e049UL,
-      0x6c6cb4d8UL, 0x5656faacUL, 0xf4f407f3UL, 0xeaea25cfUL,
-      0x6565afcaUL, 0x7a7a8ef4UL, 0xaeaee947UL, 0x08081810UL,
-      0xbabad56fUL, 0x787888f0UL, 0x25256f4aUL, 0x2e2e725cUL,
-      0x1c1c2438UL, 0xa6a6f157UL, 0xb4b4c773UL, 0xc6c65197UL,
-      0xe8e823cbUL, 0xdddd7ca1UL, 0x74749ce8UL, 0x1f1f213eUL,
-      0x4b4bdd96UL, 0xbdbddc61UL, 0x8b8b860dUL, 0x8a8a850fUL,
-      0x707090e0UL, 0x3e3e427cUL, 0xb5b5c471UL, 0x6666aaccUL,
-      0x4848d890UL, 0x03030506UL, 0xf6f601f7UL, 0x0e0e121cUL,
-      0x6161a3c2UL, 0x35355f6aUL, 0x5757f9aeUL, 0xb9b9d069UL,
-      0x86869117UL, 0xc1c15899UL, 0x1d1d273aUL, 0x9e9eb927UL,
-      0xe1e138d9UL, 0xf8f813ebUL, 0x9898b32bUL, 0x11113322UL,
-      0x6969bbd2UL, 0xd9d970a9UL, 0x8e8e8907UL, 0x9494a733UL,
-      0x9b9bb62dUL, 0x1e1e223cUL, 0x87879215UL, 0xe9e920c9UL,
-      0xcece4987UL, 0x5555ffaaUL, 0x28287850UL, 0xdfdf7aa5UL,
-      0x8c8c8f03UL, 0xa1a1f859UL, 0x89898009UL, 0x0d0d171aUL,
-      0xbfbfda65UL, 0xe6e631d7UL, 0x4242c684UL, 0x6868b8d0UL,
-      0x4141c382UL, 0x9999b029UL, 0x2d2d775aUL, 0x0f0f111eUL,
-      0xb0b0cb7bUL, 0x5454fca8UL, 0xbbbbd66dUL, 0x16163a2cUL
-  };
-  const SWord32 s560 = s0 ^ s4;
-  const SWord16 s561 = (SWord16) (s560 >> 16);
-  const SWord8  s562 = (SWord8) (s561 >> 8);
-  const SWord32 s563 = table1[s562];
-  const SWord32 s819 = s1 ^ s5;
-  const SWord16 s820 = (SWord16) (s819 >> 16);
-  const SWord8  s821 = (SWord8) s820;
-  const SWord32 s822 = table2[s821];
-  const SWord32 s823 = s563 ^ s822;
-  const SWord32 s1079 = s2 ^ s6;
-  const SWord16 s1080 = (SWord16) s1079;
-  const SWord8  s1081 = (SWord8) (s1080 >> 8);
-  const SWord32 s1082 = table3[s1081];
-  const SWord32 s1083 = s823 ^ s1082;
-  const SWord32 s1339 = s3 ^ s7;
-  const SWord16 s1340 = (SWord16) s1339;
-  const SWord8  s1341 = (SWord8) s1340;
-  const SWord32 s1342 = table4[s1341];
-  const SWord32 s1343 = s1083 ^ s1342;
-  const SWord32 s1344 = s8 ^ s1343;
-  const SWord16 s1345 = (SWord16) (s1344 >> 16);
-  const SWord8  s1346 = (SWord8) (s1345 >> 8);
-  const SWord32 s1347 = table1[s1346];
-  const SWord8  s1348 = (SWord8) (s820 >> 8);
-  const SWord32 s1349 = table1[s1348];
-  const SWord16 s1350 = (SWord16) (s1079 >> 16);
-  const SWord8  s1351 = (SWord8) s1350;
-  const SWord32 s1352 = table2[s1351];
-  const SWord32 s1353 = s1349 ^ s1352;
-  const SWord8  s1354 = (SWord8) (s1340 >> 8);
-  const SWord32 s1355 = table3[s1354];
-  const SWord32 s1356 = s1353 ^ s1355;
-  const SWord16 s1357 = (SWord16) s560;
-  const SWord8  s1358 = (SWord8) s1357;
-  const SWord32 s1359 = table4[s1358];
-  const SWord32 s1360 = s1356 ^ s1359;
-  const SWord32 s1361 = s9 ^ s1360;
-  const SWord16 s1362 = (SWord16) (s1361 >> 16);
-  const SWord8  s1363 = (SWord8) s1362;
-  const SWord32 s1364 = table2[s1363];
-  const SWord32 s1365 = s1347 ^ s1364;
-  const SWord8  s1366 = (SWord8) (s1350 >> 8);
-  const SWord32 s1367 = table1[s1366];
-  const SWord16 s1368 = (SWord16) (s1339 >> 16);
-  const SWord8  s1369 = (SWord8) s1368;
-  const SWord32 s1370 = table2[s1369];
-  const SWord32 s1371 = s1367 ^ s1370;
-  const SWord8  s1372 = (SWord8) (s1357 >> 8);
-  const SWord32 s1373 = table3[s1372];
-  const SWord32 s1374 = s1371 ^ s1373;
-  const SWord16 s1375 = (SWord16) s819;
-  const SWord8  s1376 = (SWord8) s1375;
-  const SWord32 s1377 = table4[s1376];
-  const SWord32 s1378 = s1374 ^ s1377;
-  const SWord32 s1379 = s10 ^ s1378;
-  const SWord16 s1380 = (SWord16) s1379;
-  const SWord8  s1381 = (SWord8) (s1380 >> 8);
-  const SWord32 s1382 = table3[s1381];
-  const SWord32 s1383 = s1365 ^ s1382;
-  const SWord8  s1384 = (SWord8) (s1368 >> 8);
-  const SWord32 s1385 = table1[s1384];
-  const SWord8  s1386 = (SWord8) s561;
-  const SWord32 s1387 = table2[s1386];
-  const SWord32 s1388 = s1385 ^ s1387;
-  const SWord8  s1389 = (SWord8) (s1375 >> 8);
-  const SWord32 s1390 = table3[s1389];
-  const SWord32 s1391 = s1388 ^ s1390;
-  const SWord8  s1392 = (SWord8) s1080;
-  const SWord32 s1393 = table4[s1392];
-  const SWord32 s1394 = s1391 ^ s1393;
-  const SWord32 s1395 = s11 ^ s1394;
-  const SWord16 s1396 = (SWord16) s1395;
-  const SWord8  s1397 = (SWord8) s1396;
-  const SWord32 s1398 = table4[s1397];
-  const SWord32 s1399 = s1383 ^ s1398;
-  const SWord32 s1400 = s12 ^ s1399;
-  const SWord16 s1401 = (SWord16) (s1400 >> 16);
-  const SWord8  s1402 = (SWord8) (s1401 >> 8);
-  const SWord32 s1403 = table1[s1402];
-  const SWord8  s1404 = (SWord8) (s1362 >> 8);
-  const SWord32 s1405 = table1[s1404];
-  const SWord16 s1406 = (SWord16) (s1379 >> 16);
-  const SWord8  s1407 = (SWord8) s1406;
-  const SWord32 s1408 = table2[s1407];
-  const SWord32 s1409 = s1405 ^ s1408;
-  const SWord8  s1410 = (SWord8) (s1396 >> 8);
-  const SWord32 s1411 = table3[s1410];
-  const SWord32 s1412 = s1409 ^ s1411;
-  const SWord16 s1413 = (SWord16) s1344;
-  const SWord8  s1414 = (SWord8) s1413;
-  const SWord32 s1415 = table4[s1414];
-  const SWord32 s1416 = s1412 ^ s1415;
-  const SWord32 s1417 = s13 ^ s1416;
-  const SWord16 s1418 = (SWord16) (s1417 >> 16);
-  const SWord8  s1419 = (SWord8) s1418;
-  const SWord32 s1420 = table2[s1419];
-  const SWord32 s1421 = s1403 ^ s1420;
-  const SWord8  s1422 = (SWord8) (s1406 >> 8);
-  const SWord32 s1423 = table1[s1422];
-  const SWord16 s1424 = (SWord16) (s1395 >> 16);
-  const SWord8  s1425 = (SWord8) s1424;
-  const SWord32 s1426 = table2[s1425];
-  const SWord32 s1427 = s1423 ^ s1426;
-  const SWord8  s1428 = (SWord8) (s1413 >> 8);
-  const SWord32 s1429 = table3[s1428];
-  const SWord32 s1430 = s1427 ^ s1429;
-  const SWord16 s1431 = (SWord16) s1361;
-  const SWord8  s1432 = (SWord8) s1431;
-  const SWord32 s1433 = table4[s1432];
-  const SWord32 s1434 = s1430 ^ s1433;
-  const SWord32 s1435 = s14 ^ s1434;
-  const SWord16 s1436 = (SWord16) s1435;
-  const SWord8  s1437 = (SWord8) (s1436 >> 8);
-  const SWord32 s1438 = table3[s1437];
-  const SWord32 s1439 = s1421 ^ s1438;
-  const SWord8  s1440 = (SWord8) (s1424 >> 8);
-  const SWord32 s1441 = table1[s1440];
-  const SWord8  s1442 = (SWord8) s1345;
-  const SWord32 s1443 = table2[s1442];
-  const SWord32 s1444 = s1441 ^ s1443;
-  const SWord8  s1445 = (SWord8) (s1431 >> 8);
-  const SWord32 s1446 = table3[s1445];
-  const SWord32 s1447 = s1444 ^ s1446;
-  const SWord8  s1448 = (SWord8) s1380;
-  const SWord32 s1449 = table4[s1448];
-  const SWord32 s1450 = s1447 ^ s1449;
-  const SWord32 s1451 = s15 ^ s1450;
-  const SWord16 s1452 = (SWord16) s1451;
-  const SWord8  s1453 = (SWord8) s1452;
-  const SWord32 s1454 = table4[s1453];
-  const SWord32 s1455 = s1439 ^ s1454;
-  const SWord32 s1456 = s16 ^ s1455;
-  const SWord16 s1457 = (SWord16) (s1456 >> 16);
-  const SWord8  s1458 = (SWord8) (s1457 >> 8);
-  const SWord32 s1459 = table1[s1458];
-  const SWord8  s1460 = (SWord8) (s1418 >> 8);
-  const SWord32 s1461 = table1[s1460];
-  const SWord16 s1462 = (SWord16) (s1435 >> 16);
-  const SWord8  s1463 = (SWord8) s1462;
-  const SWord32 s1464 = table2[s1463];
-  const SWord32 s1465 = s1461 ^ s1464;
-  const SWord8  s1466 = (SWord8) (s1452 >> 8);
-  const SWord32 s1467 = table3[s1466];
-  const SWord32 s1468 = s1465 ^ s1467;
-  const SWord16 s1469 = (SWord16) s1400;
-  const SWord8  s1470 = (SWord8) s1469;
-  const SWord32 s1471 = table4[s1470];
-  const SWord32 s1472 = s1468 ^ s1471;
-  const SWord32 s1473 = s17 ^ s1472;
-  const SWord16 s1474 = (SWord16) (s1473 >> 16);
-  const SWord8  s1475 = (SWord8) s1474;
-  const SWord32 s1476 = table2[s1475];
-  const SWord32 s1477 = s1459 ^ s1476;
-  const SWord8  s1478 = (SWord8) (s1462 >> 8);
-  const SWord32 s1479 = table1[s1478];
-  const SWord16 s1480 = (SWord16) (s1451 >> 16);
-  const SWord8  s1481 = (SWord8) s1480;
-  const SWord32 s1482 = table2[s1481];
-  const SWord32 s1483 = s1479 ^ s1482;
-  const SWord8  s1484 = (SWord8) (s1469 >> 8);
-  const SWord32 s1485 = table3[s1484];
-  const SWord32 s1486 = s1483 ^ s1485;
-  const SWord16 s1487 = (SWord16) s1417;
-  const SWord8  s1488 = (SWord8) s1487;
-  const SWord32 s1489 = table4[s1488];
-  const SWord32 s1490 = s1486 ^ s1489;
-  const SWord32 s1491 = s18 ^ s1490;
-  const SWord16 s1492 = (SWord16) s1491;
-  const SWord8  s1493 = (SWord8) (s1492 >> 8);
-  const SWord32 s1494 = table3[s1493];
-  const SWord32 s1495 = s1477 ^ s1494;
-  const SWord8  s1496 = (SWord8) (s1480 >> 8);
-  const SWord32 s1497 = table1[s1496];
-  const SWord8  s1498 = (SWord8) s1401;
-  const SWord32 s1499 = table2[s1498];
-  const SWord32 s1500 = s1497 ^ s1499;
-  const SWord8  s1501 = (SWord8) (s1487 >> 8);
-  const SWord32 s1502 = table3[s1501];
-  const SWord32 s1503 = s1500 ^ s1502;
-  const SWord8  s1504 = (SWord8) s1436;
-  const SWord32 s1505 = table4[s1504];
-  const SWord32 s1506 = s1503 ^ s1505;
-  const SWord32 s1507 = s19 ^ s1506;
-  const SWord16 s1508 = (SWord16) s1507;
-  const SWord8  s1509 = (SWord8) s1508;
-  const SWord32 s1510 = table4[s1509];
-  const SWord32 s1511 = s1495 ^ s1510;
-  const SWord32 s1512 = s20 ^ s1511;
-  const SWord16 s1513 = (SWord16) (s1512 >> 16);
-  const SWord8  s1514 = (SWord8) (s1513 >> 8);
-  const SWord32 s1515 = table1[s1514];
-  const SWord8  s1516 = (SWord8) (s1474 >> 8);
-  const SWord32 s1517 = table1[s1516];
-  const SWord16 s1518 = (SWord16) (s1491 >> 16);
-  const SWord8  s1519 = (SWord8) s1518;
-  const SWord32 s1520 = table2[s1519];
-  const SWord32 s1521 = s1517 ^ s1520;
-  const SWord8  s1522 = (SWord8) (s1508 >> 8);
-  const SWord32 s1523 = table3[s1522];
-  const SWord32 s1524 = s1521 ^ s1523;
-  const SWord16 s1525 = (SWord16) s1456;
-  const SWord8  s1526 = (SWord8) s1525;
-  const SWord32 s1527 = table4[s1526];
-  const SWord32 s1528 = s1524 ^ s1527;
-  const SWord32 s1529 = s21 ^ s1528;
-  const SWord16 s1530 = (SWord16) (s1529 >> 16);
-  const SWord8  s1531 = (SWord8) s1530;
-  const SWord32 s1532 = table2[s1531];
-  const SWord32 s1533 = s1515 ^ s1532;
-  const SWord8  s1534 = (SWord8) (s1518 >> 8);
-  const SWord32 s1535 = table1[s1534];
-  const SWord16 s1536 = (SWord16) (s1507 >> 16);
-  const SWord8  s1537 = (SWord8) s1536;
-  const SWord32 s1538 = table2[s1537];
-  const SWord32 s1539 = s1535 ^ s1538;
-  const SWord8  s1540 = (SWord8) (s1525 >> 8);
-  const SWord32 s1541 = table3[s1540];
-  const SWord32 s1542 = s1539 ^ s1541;
-  const SWord16 s1543 = (SWord16) s1473;
-  const SWord8  s1544 = (SWord8) s1543;
-  const SWord32 s1545 = table4[s1544];
-  const SWord32 s1546 = s1542 ^ s1545;
-  const SWord32 s1547 = s22 ^ s1546;
-  const SWord16 s1548 = (SWord16) s1547;
-  const SWord8  s1549 = (SWord8) (s1548 >> 8);
-  const SWord32 s1550 = table3[s1549];
-  const SWord32 s1551 = s1533 ^ s1550;
-  const SWord8  s1552 = (SWord8) (s1536 >> 8);
-  const SWord32 s1553 = table1[s1552];
-  const SWord8  s1554 = (SWord8) s1457;
-  const SWord32 s1555 = table2[s1554];
-  const SWord32 s1556 = s1553 ^ s1555;
-  const SWord8  s1557 = (SWord8) (s1543 >> 8);
-  const SWord32 s1558 = table3[s1557];
-  const SWord32 s1559 = s1556 ^ s1558;
-  const SWord8  s1560 = (SWord8) s1492;
-  const SWord32 s1561 = table4[s1560];
-  const SWord32 s1562 = s1559 ^ s1561;
-  const SWord32 s1563 = s23 ^ s1562;
-  const SWord16 s1564 = (SWord16) s1563;
-  const SWord8  s1565 = (SWord8) s1564;
-  const SWord32 s1566 = table4[s1565];
-  const SWord32 s1567 = s1551 ^ s1566;
-  const SWord32 s1568 = s24 ^ s1567;
-  const SWord16 s1569 = (SWord16) (s1568 >> 16);
-  const SWord8  s1570 = (SWord8) (s1569 >> 8);
-  const SWord32 s1571 = table1[s1570];
-  const SWord8  s1572 = (SWord8) (s1530 >> 8);
-  const SWord32 s1573 = table1[s1572];
-  const SWord16 s1574 = (SWord16) (s1547 >> 16);
-  const SWord8  s1575 = (SWord8) s1574;
-  const SWord32 s1576 = table2[s1575];
-  const SWord32 s1577 = s1573 ^ s1576;
-  const SWord8  s1578 = (SWord8) (s1564 >> 8);
-  const SWord32 s1579 = table3[s1578];
-  const SWord32 s1580 = s1577 ^ s1579;
-  const SWord16 s1581 = (SWord16) s1512;
-  const SWord8  s1582 = (SWord8) s1581;
-  const SWord32 s1583 = table4[s1582];
-  const SWord32 s1584 = s1580 ^ s1583;
-  const SWord32 s1585 = s25 ^ s1584;
-  const SWord16 s1586 = (SWord16) (s1585 >> 16);
-  const SWord8  s1587 = (SWord8) s1586;
-  const SWord32 s1588 = table2[s1587];
-  const SWord32 s1589 = s1571 ^ s1588;
-  const SWord8  s1590 = (SWord8) (s1574 >> 8);
-  const SWord32 s1591 = table1[s1590];
-  const SWord16 s1592 = (SWord16) (s1563 >> 16);
-  const SWord8  s1593 = (SWord8) s1592;
-  const SWord32 s1594 = table2[s1593];
-  const SWord32 s1595 = s1591 ^ s1594;
-  const SWord8  s1596 = (SWord8) (s1581 >> 8);
-  const SWord32 s1597 = table3[s1596];
-  const SWord32 s1598 = s1595 ^ s1597;
-  const SWord16 s1599 = (SWord16) s1529;
-  const SWord8  s1600 = (SWord8) s1599;
-  const SWord32 s1601 = table4[s1600];
-  const SWord32 s1602 = s1598 ^ s1601;
-  const SWord32 s1603 = s26 ^ s1602;
-  const SWord16 s1604 = (SWord16) s1603;
-  const SWord8  s1605 = (SWord8) (s1604 >> 8);
-  const SWord32 s1606 = table3[s1605];
-  const SWord32 s1607 = s1589 ^ s1606;
-  const SWord8  s1608 = (SWord8) (s1592 >> 8);
-  const SWord32 s1609 = table1[s1608];
-  const SWord8  s1610 = (SWord8) s1513;
-  const SWord32 s1611 = table2[s1610];
-  const SWord32 s1612 = s1609 ^ s1611;
-  const SWord8  s1613 = (SWord8) (s1599 >> 8);
-  const SWord32 s1614 = table3[s1613];
-  const SWord32 s1615 = s1612 ^ s1614;
-  const SWord8  s1616 = (SWord8) s1548;
-  const SWord32 s1617 = table4[s1616];
-  const SWord32 s1618 = s1615 ^ s1617;
-  const SWord32 s1619 = s27 ^ s1618;
-  const SWord16 s1620 = (SWord16) s1619;
-  const SWord8  s1621 = (SWord8) s1620;
-  const SWord32 s1622 = table4[s1621];
-  const SWord32 s1623 = s1607 ^ s1622;
-  const SWord32 s1624 = s28 ^ s1623;
-  const SWord16 s1625 = (SWord16) (s1624 >> 16);
-  const SWord8  s1626 = (SWord8) (s1625 >> 8);
-  const SWord32 s1627 = table1[s1626];
-  const SWord8  s1628 = (SWord8) (s1586 >> 8);
-  const SWord32 s1629 = table1[s1628];
-  const SWord16 s1630 = (SWord16) (s1603 >> 16);
-  const SWord8  s1631 = (SWord8) s1630;
-  const SWord32 s1632 = table2[s1631];
-  const SWord32 s1633 = s1629 ^ s1632;
-  const SWord8  s1634 = (SWord8) (s1620 >> 8);
-  const SWord32 s1635 = table3[s1634];
-  const SWord32 s1636 = s1633 ^ s1635;
-  const SWord16 s1637 = (SWord16) s1568;
-  const SWord8  s1638 = (SWord8) s1637;
-  const SWord32 s1639 = table4[s1638];
-  const SWord32 s1640 = s1636 ^ s1639;
-  const SWord32 s1641 = s29 ^ s1640;
-  const SWord16 s1642 = (SWord16) (s1641 >> 16);
-  const SWord8  s1643 = (SWord8) s1642;
-  const SWord32 s1644 = table2[s1643];
-  const SWord32 s1645 = s1627 ^ s1644;
-  const SWord8  s1646 = (SWord8) (s1630 >> 8);
-  const SWord32 s1647 = table1[s1646];
-  const SWord16 s1648 = (SWord16) (s1619 >> 16);
-  const SWord8  s1649 = (SWord8) s1648;
-  const SWord32 s1650 = table2[s1649];
-  const SWord32 s1651 = s1647 ^ s1650;
-  const SWord8  s1652 = (SWord8) (s1637 >> 8);
-  const SWord32 s1653 = table3[s1652];
-  const SWord32 s1654 = s1651 ^ s1653;
-  const SWord16 s1655 = (SWord16) s1585;
-  const SWord8  s1656 = (SWord8) s1655;
-  const SWord32 s1657 = table4[s1656];
-  const SWord32 s1658 = s1654 ^ s1657;
-  const SWord32 s1659 = s30 ^ s1658;
-  const SWord16 s1660 = (SWord16) s1659;
-  const SWord8  s1661 = (SWord8) (s1660 >> 8);
-  const SWord32 s1662 = table3[s1661];
-  const SWord32 s1663 = s1645 ^ s1662;
-  const SWord8  s1664 = (SWord8) (s1648 >> 8);
-  const SWord32 s1665 = table1[s1664];
-  const SWord8  s1666 = (SWord8) s1569;
-  const SWord32 s1667 = table2[s1666];
-  const SWord32 s1668 = s1665 ^ s1667;
-  const SWord8  s1669 = (SWord8) (s1655 >> 8);
-  const SWord32 s1670 = table3[s1669];
-  const SWord32 s1671 = s1668 ^ s1670;
-  const SWord8  s1672 = (SWord8) s1604;
-  const SWord32 s1673 = table4[s1672];
-  const SWord32 s1674 = s1671 ^ s1673;
-  const SWord32 s1675 = s31 ^ s1674;
-  const SWord16 s1676 = (SWord16) s1675;
-  const SWord8  s1677 = (SWord8) s1676;
-  const SWord32 s1678 = table4[s1677];
-  const SWord32 s1679 = s1663 ^ s1678;
-  const SWord32 s1680 = s32 ^ s1679;
-  const SWord16 s1681 = (SWord16) (s1680 >> 16);
-  const SWord8  s1682 = (SWord8) (s1681 >> 8);
-  const SWord32 s1683 = table1[s1682];
-  const SWord8  s1684 = (SWord8) (s1642 >> 8);
-  const SWord32 s1685 = table1[s1684];
-  const SWord16 s1686 = (SWord16) (s1659 >> 16);
-  const SWord8  s1687 = (SWord8) s1686;
-  const SWord32 s1688 = table2[s1687];
-  const SWord32 s1689 = s1685 ^ s1688;
-  const SWord8  s1690 = (SWord8) (s1676 >> 8);
-  const SWord32 s1691 = table3[s1690];
-  const SWord32 s1692 = s1689 ^ s1691;
-  const SWord16 s1693 = (SWord16) s1624;
-  const SWord8  s1694 = (SWord8) s1693;
-  const SWord32 s1695 = table4[s1694];
-  const SWord32 s1696 = s1692 ^ s1695;
-  const SWord32 s1697 = s33 ^ s1696;
-  const SWord16 s1698 = (SWord16) (s1697 >> 16);
-  const SWord8  s1699 = (SWord8) s1698;
-  const SWord32 s1700 = table2[s1699];
-  const SWord32 s1701 = s1683 ^ s1700;
-  const SWord8  s1702 = (SWord8) (s1686 >> 8);
-  const SWord32 s1703 = table1[s1702];
-  const SWord16 s1704 = (SWord16) (s1675 >> 16);
-  const SWord8  s1705 = (SWord8) s1704;
-  const SWord32 s1706 = table2[s1705];
-  const SWord32 s1707 = s1703 ^ s1706;
-  const SWord8  s1708 = (SWord8) (s1693 >> 8);
-  const SWord32 s1709 = table3[s1708];
-  const SWord32 s1710 = s1707 ^ s1709;
-  const SWord16 s1711 = (SWord16) s1641;
-  const SWord8  s1712 = (SWord8) s1711;
-  const SWord32 s1713 = table4[s1712];
-  const SWord32 s1714 = s1710 ^ s1713;
-  const SWord32 s1715 = s34 ^ s1714;
-  const SWord16 s1716 = (SWord16) s1715;
-  const SWord8  s1717 = (SWord8) (s1716 >> 8);
-  const SWord32 s1718 = table3[s1717];
-  const SWord32 s1719 = s1701 ^ s1718;
-  const SWord8  s1720 = (SWord8) (s1704 >> 8);
-  const SWord32 s1721 = table1[s1720];
-  const SWord8  s1722 = (SWord8) s1625;
-  const SWord32 s1723 = table2[s1722];
-  const SWord32 s1724 = s1721 ^ s1723;
-  const SWord8  s1725 = (SWord8) (s1711 >> 8);
-  const SWord32 s1726 = table3[s1725];
-  const SWord32 s1727 = s1724 ^ s1726;
-  const SWord8  s1728 = (SWord8) s1660;
-  const SWord32 s1729 = table4[s1728];
-  const SWord32 s1730 = s1727 ^ s1729;
-  const SWord32 s1731 = s35 ^ s1730;
-  const SWord16 s1732 = (SWord16) s1731;
-  const SWord8  s1733 = (SWord8) s1732;
-  const SWord32 s1734 = table4[s1733];
-  const SWord32 s1735 = s1719 ^ s1734;
-  const SWord32 s1736 = s36 ^ s1735;
-  const SWord16 s1737 = (SWord16) (s1736 >> 16);
-  const SWord8  s1738 = (SWord8) (s1737 >> 8);
-  const SWord32 s1739 = table1[s1738];
-  const SWord8  s1740 = (SWord8) (s1698 >> 8);
-  const SWord32 s1741 = table1[s1740];
-  const SWord16 s1742 = (SWord16) (s1715 >> 16);
-  const SWord8  s1743 = (SWord8) s1742;
-  const SWord32 s1744 = table2[s1743];
-  const SWord32 s1745 = s1741 ^ s1744;
-  const SWord8  s1746 = (SWord8) (s1732 >> 8);
-  const SWord32 s1747 = table3[s1746];
-  const SWord32 s1748 = s1745 ^ s1747;
-  const SWord16 s1749 = (SWord16) s1680;
-  const SWord8  s1750 = (SWord8) s1749;
-  const SWord32 s1751 = table4[s1750];
-  const SWord32 s1752 = s1748 ^ s1751;
-  const SWord32 s1753 = s37 ^ s1752;
-  const SWord16 s1754 = (SWord16) (s1753 >> 16);
-  const SWord8  s1755 = (SWord8) s1754;
-  const SWord32 s1756 = table2[s1755];
-  const SWord32 s1757 = s1739 ^ s1756;
-  const SWord8  s1758 = (SWord8) (s1742 >> 8);
-  const SWord32 s1759 = table1[s1758];
-  const SWord16 s1760 = (SWord16) (s1731 >> 16);
-  const SWord8  s1761 = (SWord8) s1760;
-  const SWord32 s1762 = table2[s1761];
-  const SWord32 s1763 = s1759 ^ s1762;
-  const SWord8  s1764 = (SWord8) (s1749 >> 8);
-  const SWord32 s1765 = table3[s1764];
-  const SWord32 s1766 = s1763 ^ s1765;
-  const SWord16 s1767 = (SWord16) s1697;
-  const SWord8  s1768 = (SWord8) s1767;
-  const SWord32 s1769 = table4[s1768];
-  const SWord32 s1770 = s1766 ^ s1769;
-  const SWord32 s1771 = s38 ^ s1770;
-  const SWord16 s1772 = (SWord16) s1771;
-  const SWord8  s1773 = (SWord8) (s1772 >> 8);
-  const SWord32 s1774 = table3[s1773];
-  const SWord32 s1775 = s1757 ^ s1774;
-  const SWord8  s1776 = (SWord8) (s1760 >> 8);
-  const SWord32 s1777 = table1[s1776];
-  const SWord8  s1778 = (SWord8) s1681;
-  const SWord32 s1779 = table2[s1778];
-  const SWord32 s1780 = s1777 ^ s1779;
-  const SWord8  s1781 = (SWord8) (s1767 >> 8);
-  const SWord32 s1782 = table3[s1781];
-  const SWord32 s1783 = s1780 ^ s1782;
-  const SWord8  s1784 = (SWord8) s1716;
-  const SWord32 s1785 = table4[s1784];
-  const SWord32 s1786 = s1783 ^ s1785;
-  const SWord32 s1787 = s39 ^ s1786;
-  const SWord16 s1788 = (SWord16) s1787;
-  const SWord8  s1789 = (SWord8) s1788;
-  const SWord32 s1790 = table4[s1789];
-  const SWord32 s1791 = s1775 ^ s1790;
-  const SWord32 s1792 = s40 ^ s1791;
-  const SWord16 s1793 = (SWord16) (s1792 >> 16);
-  const SWord8  s1794 = (SWord8) (s1793 >> 8);
-  const SWord8  s1795 = table0[s1794];
-  const SWord8  s1796 = (SWord8) (s1754 >> 8);
-  const SWord32 s1797 = table1[s1796];
-  const SWord16 s1798 = (SWord16) (s1771 >> 16);
-  const SWord8  s1799 = (SWord8) s1798;
-  const SWord32 s1800 = table2[s1799];
-  const SWord32 s1801 = s1797 ^ s1800;
-  const SWord8  s1802 = (SWord8) (s1788 >> 8);
-  const SWord32 s1803 = table3[s1802];
-  const SWord32 s1804 = s1801 ^ s1803;
-  const SWord16 s1805 = (SWord16) s1736;
-  const SWord8  s1806 = (SWord8) s1805;
-  const SWord32 s1807 = table4[s1806];
-  const SWord32 s1808 = s1804 ^ s1807;
-  const SWord32 s1809 = s41 ^ s1808;
-  const SWord16 s1810 = (SWord16) (s1809 >> 16);
-  const SWord8  s1811 = (SWord8) s1810;
-  const SWord8  s1812 = table0[s1811];
-  const SWord16 s1813 = (((SWord16) s1795) << 8) | ((SWord16) s1812);
-  const SWord8  s1814 = (SWord8) (s1798 >> 8);
-  const SWord32 s1815 = table1[s1814];
-  const SWord16 s1816 = (SWord16) (s1787 >> 16);
-  const SWord8  s1817 = (SWord8) s1816;
-  const SWord32 s1818 = table2[s1817];
-  const SWord32 s1819 = s1815 ^ s1818;
-  const SWord8  s1820 = (SWord8) (s1805 >> 8);
-  const SWord32 s1821 = table3[s1820];
-  const SWord32 s1822 = s1819 ^ s1821;
-  const SWord16 s1823 = (SWord16) s1753;
-  const SWord8  s1824 = (SWord8) s1823;
-  const SWord32 s1825 = table4[s1824];
-  const SWord32 s1826 = s1822 ^ s1825;
-  const SWord32 s1827 = s42 ^ s1826;
-  const SWord16 s1828 = (SWord16) s1827;
-  const SWord8  s1829 = (SWord8) (s1828 >> 8);
-  const SWord8  s1830 = table0[s1829];
-  const SWord8  s1831 = (SWord8) (s1816 >> 8);
-  const SWord32 s1832 = table1[s1831];
-  const SWord8  s1833 = (SWord8) s1737;
-  const SWord32 s1834 = table2[s1833];
-  const SWord32 s1835 = s1832 ^ s1834;
-  const SWord8  s1836 = (SWord8) (s1823 >> 8);
-  const SWord32 s1837 = table3[s1836];
-  const SWord32 s1838 = s1835 ^ s1837;
-  const SWord8  s1839 = (SWord8) s1772;
-  const SWord32 s1840 = table4[s1839];
-  const SWord32 s1841 = s1838 ^ s1840;
-  const SWord32 s1842 = s43 ^ s1841;
-  const SWord16 s1843 = (SWord16) s1842;
-  const SWord8  s1844 = (SWord8) s1843;
-  const SWord8  s1845 = table0[s1844];
-  const SWord16 s1846 = (((SWord16) s1830) << 8) | ((SWord16) s1845);
-  const SWord32 s1847 = (((SWord32) s1813) << 16) | ((SWord32) s1846);
-  const SWord32 s1848 = s44 ^ s1847;
-  const SWord8  s1849 = (SWord8) (s1810 >> 8);
-  const SWord8  s1850 = table0[s1849];
-  const SWord16 s1851 = (SWord16) (s1827 >> 16);
-  const SWord8  s1852 = (SWord8) s1851;
-  const SWord8  s1853 = table0[s1852];
-  const SWord16 s1854 = (((SWord16) s1850) << 8) | ((SWord16) s1853);
-  const SWord8  s1855 = (SWord8) (s1843 >> 8);
-  const SWord8  s1856 = table0[s1855];
-  const SWord16 s1857 = (SWord16) s1792;
-  const SWord8  s1858 = (SWord8) s1857;
-  const SWord8  s1859 = table0[s1858];
-  const SWord16 s1860 = (((SWord16) s1856) << 8) | ((SWord16) s1859);
-  const SWord32 s1861 = (((SWord32) s1854) << 16) | ((SWord32) s1860);
-  const SWord32 s1862 = s45 ^ s1861;
-  const SWord8  s1863 = (SWord8) (s1851 >> 8);
-  const SWord8  s1864 = table0[s1863];
-  const SWord16 s1865 = (SWord16) (s1842 >> 16);
-  const SWord8  s1866 = (SWord8) s1865;
-  const SWord8  s1867 = table0[s1866];
-  const SWord16 s1868 = (((SWord16) s1864) << 8) | ((SWord16) s1867);
-  const SWord8  s1869 = (SWord8) (s1857 >> 8);
-  const SWord8  s1870 = table0[s1869];
-  const SWord16 s1871 = (SWord16) s1809;
-  const SWord8  s1872 = (SWord8) s1871;
-  const SWord8  s1873 = table0[s1872];
-  const SWord16 s1874 = (((SWord16) s1870) << 8) | ((SWord16) s1873);
-  const SWord32 s1875 = (((SWord32) s1868) << 16) | ((SWord32) s1874);
-  const SWord32 s1876 = s46 ^ s1875;
-  const SWord8  s1877 = (SWord8) (s1865 >> 8);
-  const SWord8  s1878 = table0[s1877];
-  const SWord8  s1879 = (SWord8) s1793;
-  const SWord8  s1880 = table0[s1879];
-  const SWord16 s1881 = (((SWord16) s1878) << 8) | ((SWord16) s1880);
-  const SWord8  s1882 = (SWord8) (s1871 >> 8);
-  const SWord8  s1883 = table0[s1882];
-  const SWord8  s1884 = (SWord8) s1828;
-  const SWord8  s1885 = table0[s1884];
-  const SWord16 s1886 = (((SWord16) s1883) << 8) | ((SWord16) s1885);
-  const SWord32 s1887 = (((SWord32) s1881) << 16) | ((SWord32) s1886);
-  const SWord32 s1888 = s47 ^ s1887;
-  
-  ct[0] = s1848;
-  ct[1] = s1862;
-  ct[2] = s1876;
-  ct[3] = s1888;
-}
-== END: "aes128BlockEncrypt.c" ==================
-== BEGIN: "aes128BlockDecrypt.c" ================
-/* File: "aes128BlockDecrypt.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "aes128Lib.h"
-
-void aes128BlockDecrypt(const SWord32 *ct, const SWord32 *xkey,
-                        SWord32 *pt)
-{
-  const SWord32 s0 = ct[0];
-  const SWord32 s1 = ct[1];
-  const SWord32 s2 = ct[2];
-  const SWord32 s3 = ct[3];
-  const SWord32 s4 = xkey[0];
-  const SWord32 s5 = xkey[1];
-  const SWord32 s6 = xkey[2];
-  const SWord32 s7 = xkey[3];
-  const SWord32 s8 = xkey[4];
-  const SWord32 s9 = xkey[5];
-  const SWord32 s10 = xkey[6];
-  const SWord32 s11 = xkey[7];
-  const SWord32 s12 = xkey[8];
-  const SWord32 s13 = xkey[9];
-  const SWord32 s14 = xkey[10];
-  const SWord32 s15 = xkey[11];
-  const SWord32 s16 = xkey[12];
-  const SWord32 s17 = xkey[13];
-  const SWord32 s18 = xkey[14];
-  const SWord32 s19 = xkey[15];
-  const SWord32 s20 = xkey[16];
-  const SWord32 s21 = xkey[17];
-  const SWord32 s22 = xkey[18];
-  const SWord32 s23 = xkey[19];
-  const SWord32 s24 = xkey[20];
-  const SWord32 s25 = xkey[21];
-  const SWord32 s26 = xkey[22];
-  const SWord32 s27 = xkey[23];
-  const SWord32 s28 = xkey[24];
-  const SWord32 s29 = xkey[25];
-  const SWord32 s30 = xkey[26];
-  const SWord32 s31 = xkey[27];
-  const SWord32 s32 = xkey[28];
-  const SWord32 s33 = xkey[29];
-  const SWord32 s34 = xkey[30];
-  const SWord32 s35 = xkey[31];
-  const SWord32 s36 = xkey[32];
-  const SWord32 s37 = xkey[33];
-  const SWord32 s38 = xkey[34];
-  const SWord32 s39 = xkey[35];
-  const SWord32 s40 = xkey[36];
-  const SWord32 s41 = xkey[37];
-  const SWord32 s42 = xkey[38];
-  const SWord32 s43 = xkey[39];
-  const SWord32 s44 = xkey[40];
-  const SWord32 s45 = xkey[41];
-  const SWord32 s46 = xkey[42];
-  const SWord32 s47 = xkey[43];
-  static const SWord8 table0[] = {
-       82,   9, 106, 213,  48,  54, 165,  56, 191,  64, 163, 158, 129,
-      243, 215, 251, 124, 227,  57, 130, 155,  47, 255, 135,  52, 142,
-       67,  68, 196, 222, 233, 203,  84, 123, 148,  50, 166, 194,  35,
-       61, 238,  76, 149,  11,  66, 250, 195,  78,   8,  46, 161, 102,
-       40, 217,  36, 178, 118,  91, 162,  73, 109, 139, 209,  37, 114,
-      248, 246, 100, 134, 104, 152,  22, 212, 164,  92, 204,  93, 101,
-      182, 146, 108, 112,  72,  80, 253, 237, 185, 218,  94,  21,  70,
-       87, 167, 141, 157, 132, 144, 216, 171,   0, 140, 188, 211,  10,
-      247, 228,  88,   5, 184, 179,  69,   6, 208,  44,  30, 143, 202,
-       63,  15,   2, 193, 175, 189,   3,   1,  19, 138, 107,  58, 145,
-       17,  65,  79, 103, 220, 234, 151, 242, 207, 206, 240, 180, 230,
-      115, 150, 172, 116,  34, 231, 173,  53, 133, 226, 249,  55, 232,
-       28, 117, 223, 110,  71, 241,  26, 113,  29,  41, 197, 137, 111,
-      183,  98,  14, 170,  24, 190,  27, 252,  86,  62,  75, 198, 210,
-      121,  32, 154, 219, 192, 254, 120, 205,  90, 244,  31, 221, 168,
-       51, 136,   7, 199,  49, 177,  18,  16,  89,  39, 128, 236,  95,
-       96,  81, 127, 169,  25, 181,  74,  13,  45, 229, 122, 159, 147,
-      201, 156, 239, 160, 224,  59,  77, 174,  42, 245, 176, 200, 235,
-      187,  60, 131,  83, 153,  97,  23,  43,   4, 126, 186, 119, 214,
-       38, 225, 105,  20,  99,  85,  33,  12, 125
-  };
-  static const SWord32 table1[] = {
-      0x51f4a750UL, 0x7e416553UL, 0x1a17a4c3UL, 0x3a275e96UL,
-      0x3bab6bcbUL, 0x1f9d45f1UL, 0xacfa58abUL, 0x4be30393UL,
-      0x2030fa55UL, 0xad766df6UL, 0x88cc7691UL, 0xf5024c25UL,
-      0x4fe5d7fcUL, 0xc52acbd7UL, 0x26354480UL, 0xb562a38fUL,
-      0xdeb15a49UL, 0x25ba1b67UL, 0x45ea0e98UL, 0x5dfec0e1UL,
-      0xc32f7502UL, 0x814cf012UL, 0x8d4697a3UL, 0x6bd3f9c6UL,
-      0x038f5fe7UL, 0x15929c95UL, 0xbf6d7aebUL, 0x955259daUL,
-      0xd4be832dUL, 0x587421d3UL, 0x49e06929UL, 0x8ec9c844UL,
-      0x75c2896aUL, 0xf48e7978UL, 0x99583e6bUL, 0x27b971ddUL,
-      0xbee14fb6UL, 0xf088ad17UL, 0xc920ac66UL, 0x7dce3ab4UL,
-      0x63df4a18UL, 0xe51a3182UL, 0x97513360UL, 0x62537f45UL,
-      0xb16477e0UL, 0xbb6bae84UL, 0xfe81a01cUL, 0xf9082b94UL,
-      0x70486858UL, 0x8f45fd19UL, 0x94de6c87UL, 0x527bf8b7UL,
-      0xab73d323UL, 0x724b02e2UL, 0xe31f8f57UL, 0x6655ab2aUL,
-      0xb2eb2807UL, 0x2fb5c203UL, 0x86c57b9aUL, 0xd33708a5UL,
-      0x302887f2UL, 0x23bfa5b2UL, 0x02036abaUL, 0xed16825cUL,
-      0x8acf1c2bUL, 0xa779b492UL, 0xf307f2f0UL, 0x4e69e2a1UL,
-      0x65daf4cdUL, 0x0605bed5UL, 0xd134621fUL, 0xc4a6fe8aUL,
-      0x342e539dUL, 0xa2f355a0UL, 0x058ae132UL, 0xa4f6eb75UL,
-      0x0b83ec39UL, 0x4060efaaUL, 0x5e719f06UL, 0xbd6e1051UL,
-      0x3e218af9UL, 0x96dd063dUL, 0xdd3e05aeUL, 0x4de6bd46UL,
-      0x91548db5UL, 0x71c45d05UL, 0x0406d46fUL, 0x605015ffUL,
-      0x1998fb24UL, 0xd6bde997UL, 0x894043ccUL, 0x67d99e77UL,
-      0xb0e842bdUL, 0x07898b88UL, 0xe7195b38UL, 0x79c8eedbUL,
-      0xa17c0a47UL, 0x7c420fe9UL, 0xf8841ec9UL, 0x00000000UL,
-      0x09808683UL, 0x322bed48UL, 0x1e1170acUL, 0x6c5a724eUL,
-      0xfd0efffbUL, 0x0f853856UL, 0x3daed51eUL, 0x362d3927UL,
-      0x0a0fd964UL, 0x685ca621UL, 0x9b5b54d1UL, 0x24362e3aUL,
-      0x0c0a67b1UL, 0x9357e70fUL, 0xb4ee96d2UL, 0x1b9b919eUL,
-      0x80c0c54fUL, 0x61dc20a2UL, 0x5a774b69UL, 0x1c121a16UL,
-      0xe293ba0aUL, 0xc0a02ae5UL, 0x3c22e043UL, 0x121b171dUL,
-      0x0e090d0bUL, 0xf28bc7adUL, 0x2db6a8b9UL, 0x141ea9c8UL,
-      0x57f11985UL, 0xaf75074cUL, 0xee99ddbbUL, 0xa37f60fdUL,
-      0xf701269fUL, 0x5c72f5bcUL, 0x44663bc5UL, 0x5bfb7e34UL,
-      0x8b432976UL, 0xcb23c6dcUL, 0xb6edfc68UL, 0xb8e4f163UL,
-      0xd731dccaUL, 0x42638510UL, 0x13972240UL, 0x84c61120UL,
-      0x854a247dUL, 0xd2bb3df8UL, 0xaef93211UL, 0xc729a16dUL,
-      0x1d9e2f4bUL, 0xdcb230f3UL, 0x0d8652ecUL, 0x77c1e3d0UL,
-      0x2bb3166cUL, 0xa970b999UL, 0x119448faUL, 0x47e96422UL,
-      0xa8fc8cc4UL, 0xa0f03f1aUL, 0x567d2cd8UL, 0x223390efUL,
-      0x87494ec7UL, 0xd938d1c1UL, 0x8ccaa2feUL, 0x98d40b36UL,
-      0xa6f581cfUL, 0xa57ade28UL, 0xdab78e26UL, 0x3fadbfa4UL,
-      0x2c3a9de4UL, 0x5078920dUL, 0x6a5fcc9bUL, 0x547e4662UL,
-      0xf68d13c2UL, 0x90d8b8e8UL, 0x2e39f75eUL, 0x82c3aff5UL,
-      0x9f5d80beUL, 0x69d0937cUL, 0x6fd52da9UL, 0xcf2512b3UL,
-      0xc8ac993bUL, 0x10187da7UL, 0xe89c636eUL, 0xdb3bbb7bUL,
-      0xcd267809UL, 0x6e5918f4UL, 0xec9ab701UL, 0x834f9aa8UL,
-      0xe6956e65UL, 0xaaffe67eUL, 0x21bccf08UL, 0xef15e8e6UL,
-      0xbae79bd9UL, 0x4a6f36ceUL, 0xea9f09d4UL, 0x29b07cd6UL,
-      0x31a4b2afUL, 0x2a3f2331UL, 0xc6a59430UL, 0x35a266c0UL,
-      0x744ebc37UL, 0xfc82caa6UL, 0xe090d0b0UL, 0x33a7d815UL,
-      0xf104984aUL, 0x41ecdaf7UL, 0x7fcd500eUL, 0x1791f62fUL,
-      0x764dd68dUL, 0x43efb04dUL, 0xccaa4d54UL, 0xe49604dfUL,
-      0x9ed1b5e3UL, 0x4c6a881bUL, 0xc12c1fb8UL, 0x4665517fUL,
-      0x9d5eea04UL, 0x018c355dUL, 0xfa877473UL, 0xfb0b412eUL,
-      0xb3671d5aUL, 0x92dbd252UL, 0xe9105633UL, 0x6dd64713UL,
-      0x9ad7618cUL, 0x37a10c7aUL, 0x59f8148eUL, 0xeb133c89UL,
-      0xcea927eeUL, 0xb761c935UL, 0xe11ce5edUL, 0x7a47b13cUL,
-      0x9cd2df59UL, 0x55f2733fUL, 0x1814ce79UL, 0x73c737bfUL,
-      0x53f7cdeaUL, 0x5ffdaa5bUL, 0xdf3d6f14UL, 0x7844db86UL,
-      0xcaaff381UL, 0xb968c43eUL, 0x3824342cUL, 0xc2a3405fUL,
-      0x161dc372UL, 0xbce2250cUL, 0x283c498bUL, 0xff0d9541UL,
-      0x39a80171UL, 0x080cb3deUL, 0xd8b4e49cUL, 0x6456c190UL,
-      0x7bcb8461UL, 0xd532b670UL, 0x486c5c74UL, 0xd0b85742UL
-  };
-  static const SWord32 table2[] = {
-      0x5051f4a7UL, 0x537e4165UL, 0xc31a17a4UL, 0x963a275eUL,
-      0xcb3bab6bUL, 0xf11f9d45UL, 0xabacfa58UL, 0x934be303UL,
-      0x552030faUL, 0xf6ad766dUL, 0x9188cc76UL, 0x25f5024cUL,
-      0xfc4fe5d7UL, 0xd7c52acbUL, 0x80263544UL, 0x8fb562a3UL,
-      0x49deb15aUL, 0x6725ba1bUL, 0x9845ea0eUL, 0xe15dfec0UL,
-      0x02c32f75UL, 0x12814cf0UL, 0xa38d4697UL, 0xc66bd3f9UL,
-      0xe7038f5fUL, 0x9515929cUL, 0xebbf6d7aUL, 0xda955259UL,
-      0x2dd4be83UL, 0xd3587421UL, 0x2949e069UL, 0x448ec9c8UL,
-      0x6a75c289UL, 0x78f48e79UL, 0x6b99583eUL, 0xdd27b971UL,
-      0xb6bee14fUL, 0x17f088adUL, 0x66c920acUL, 0xb47dce3aUL,
-      0x1863df4aUL, 0x82e51a31UL, 0x60975133UL, 0x4562537fUL,
-      0xe0b16477UL, 0x84bb6baeUL, 0x1cfe81a0UL, 0x94f9082bUL,
-      0x58704868UL, 0x198f45fdUL, 0x8794de6cUL, 0xb7527bf8UL,
-      0x23ab73d3UL, 0xe2724b02UL, 0x57e31f8fUL, 0x2a6655abUL,
-      0x07b2eb28UL, 0x032fb5c2UL, 0x9a86c57bUL, 0xa5d33708UL,
-      0xf2302887UL, 0xb223bfa5UL, 0xba02036aUL, 0x5ced1682UL,
-      0x2b8acf1cUL, 0x92a779b4UL, 0xf0f307f2UL, 0xa14e69e2UL,
-      0xcd65daf4UL, 0xd50605beUL, 0x1fd13462UL, 0x8ac4a6feUL,
-      0x9d342e53UL, 0xa0a2f355UL, 0x32058ae1UL, 0x75a4f6ebUL,
-      0x390b83ecUL, 0xaa4060efUL, 0x065e719fUL, 0x51bd6e10UL,
-      0xf93e218aUL, 0x3d96dd06UL, 0xaedd3e05UL, 0x464de6bdUL,
-      0xb591548dUL, 0x0571c45dUL, 0x6f0406d4UL, 0xff605015UL,
-      0x241998fbUL, 0x97d6bde9UL, 0xcc894043UL, 0x7767d99eUL,
-      0xbdb0e842UL, 0x8807898bUL, 0x38e7195bUL, 0xdb79c8eeUL,
-      0x47a17c0aUL, 0xe97c420fUL, 0xc9f8841eUL, 0x00000000UL,
-      0x83098086UL, 0x48322bedUL, 0xac1e1170UL, 0x4e6c5a72UL,
-      0xfbfd0effUL, 0x560f8538UL, 0x1e3daed5UL, 0x27362d39UL,
-      0x640a0fd9UL, 0x21685ca6UL, 0xd19b5b54UL, 0x3a24362eUL,
-      0xb10c0a67UL, 0x0f9357e7UL, 0xd2b4ee96UL, 0x9e1b9b91UL,
-      0x4f80c0c5UL, 0xa261dc20UL, 0x695a774bUL, 0x161c121aUL,
-      0x0ae293baUL, 0xe5c0a02aUL, 0x433c22e0UL, 0x1d121b17UL,
-      0x0b0e090dUL, 0xadf28bc7UL, 0xb92db6a8UL, 0xc8141ea9UL,
-      0x8557f119UL, 0x4caf7507UL, 0xbbee99ddUL, 0xfda37f60UL,
-      0x9ff70126UL, 0xbc5c72f5UL, 0xc544663bUL, 0x345bfb7eUL,
-      0x768b4329UL, 0xdccb23c6UL, 0x68b6edfcUL, 0x63b8e4f1UL,
-      0xcad731dcUL, 0x10426385UL, 0x40139722UL, 0x2084c611UL,
-      0x7d854a24UL, 0xf8d2bb3dUL, 0x11aef932UL, 0x6dc729a1UL,
-      0x4b1d9e2fUL, 0xf3dcb230UL, 0xec0d8652UL, 0xd077c1e3UL,
-      0x6c2bb316UL, 0x99a970b9UL, 0xfa119448UL, 0x2247e964UL,
-      0xc4a8fc8cUL, 0x1aa0f03fUL, 0xd8567d2cUL, 0xef223390UL,
-      0xc787494eUL, 0xc1d938d1UL, 0xfe8ccaa2UL, 0x3698d40bUL,
-      0xcfa6f581UL, 0x28a57adeUL, 0x26dab78eUL, 0xa43fadbfUL,
-      0xe42c3a9dUL, 0x0d507892UL, 0x9b6a5fccUL, 0x62547e46UL,
-      0xc2f68d13UL, 0xe890d8b8UL, 0x5e2e39f7UL, 0xf582c3afUL,
-      0xbe9f5d80UL, 0x7c69d093UL, 0xa96fd52dUL, 0xb3cf2512UL,
-      0x3bc8ac99UL, 0xa710187dUL, 0x6ee89c63UL, 0x7bdb3bbbUL,
-      0x09cd2678UL, 0xf46e5918UL, 0x01ec9ab7UL, 0xa8834f9aUL,
-      0x65e6956eUL, 0x7eaaffe6UL, 0x0821bccfUL, 0xe6ef15e8UL,
-      0xd9bae79bUL, 0xce4a6f36UL, 0xd4ea9f09UL, 0xd629b07cUL,
-      0xaf31a4b2UL, 0x312a3f23UL, 0x30c6a594UL, 0xc035a266UL,
-      0x37744ebcUL, 0xa6fc82caUL, 0xb0e090d0UL, 0x1533a7d8UL,
-      0x4af10498UL, 0xf741ecdaUL, 0x0e7fcd50UL, 0x2f1791f6UL,
-      0x8d764dd6UL, 0x4d43efb0UL, 0x54ccaa4dUL, 0xdfe49604UL,
-      0xe39ed1b5UL, 0x1b4c6a88UL, 0xb8c12c1fUL, 0x7f466551UL,
-      0x049d5eeaUL, 0x5d018c35UL, 0x73fa8774UL, 0x2efb0b41UL,
-      0x5ab3671dUL, 0x5292dbd2UL, 0x33e91056UL, 0x136dd647UL,
-      0x8c9ad761UL, 0x7a37a10cUL, 0x8e59f814UL, 0x89eb133cUL,
-      0xeecea927UL, 0x35b761c9UL, 0xede11ce5UL, 0x3c7a47b1UL,
-      0x599cd2dfUL, 0x3f55f273UL, 0x791814ceUL, 0xbf73c737UL,
-      0xea53f7cdUL, 0x5b5ffdaaUL, 0x14df3d6fUL, 0x867844dbUL,
-      0x81caaff3UL, 0x3eb968c4UL, 0x2c382434UL, 0x5fc2a340UL,
-      0x72161dc3UL, 0x0cbce225UL, 0x8b283c49UL, 0x41ff0d95UL,
-      0x7139a801UL, 0xde080cb3UL, 0x9cd8b4e4UL, 0x906456c1UL,
-      0x617bcb84UL, 0x70d532b6UL, 0x74486c5cUL, 0x42d0b857UL
-  };
-  static const SWord32 table3[] = {
-      0xa75051f4UL, 0x65537e41UL, 0xa4c31a17UL, 0x5e963a27UL,
-      0x6bcb3babUL, 0x45f11f9dUL, 0x58abacfaUL, 0x03934be3UL,
-      0xfa552030UL, 0x6df6ad76UL, 0x769188ccUL, 0x4c25f502UL,
-      0xd7fc4fe5UL, 0xcbd7c52aUL, 0x44802635UL, 0xa38fb562UL,
-      0x5a49deb1UL, 0x1b6725baUL, 0x0e9845eaUL, 0xc0e15dfeUL,
-      0x7502c32fUL, 0xf012814cUL, 0x97a38d46UL, 0xf9c66bd3UL,
-      0x5fe7038fUL, 0x9c951592UL, 0x7aebbf6dUL, 0x59da9552UL,
-      0x832dd4beUL, 0x21d35874UL, 0x692949e0UL, 0xc8448ec9UL,
-      0x896a75c2UL, 0x7978f48eUL, 0x3e6b9958UL, 0x71dd27b9UL,
-      0x4fb6bee1UL, 0xad17f088UL, 0xac66c920UL, 0x3ab47dceUL,
-      0x4a1863dfUL, 0x3182e51aUL, 0x33609751UL, 0x7f456253UL,
-      0x77e0b164UL, 0xae84bb6bUL, 0xa01cfe81UL, 0x2b94f908UL,
-      0x68587048UL, 0xfd198f45UL, 0x6c8794deUL, 0xf8b7527bUL,
-      0xd323ab73UL, 0x02e2724bUL, 0x8f57e31fUL, 0xab2a6655UL,
-      0x2807b2ebUL, 0xc2032fb5UL, 0x7b9a86c5UL, 0x08a5d337UL,
-      0x87f23028UL, 0xa5b223bfUL, 0x6aba0203UL, 0x825ced16UL,
-      0x1c2b8acfUL, 0xb492a779UL, 0xf2f0f307UL, 0xe2a14e69UL,
-      0xf4cd65daUL, 0xbed50605UL, 0x621fd134UL, 0xfe8ac4a6UL,
-      0x539d342eUL, 0x55a0a2f3UL, 0xe132058aUL, 0xeb75a4f6UL,
-      0xec390b83UL, 0xefaa4060UL, 0x9f065e71UL, 0x1051bd6eUL,
-      0x8af93e21UL, 0x063d96ddUL, 0x05aedd3eUL, 0xbd464de6UL,
-      0x8db59154UL, 0x5d0571c4UL, 0xd46f0406UL, 0x15ff6050UL,
-      0xfb241998UL, 0xe997d6bdUL, 0x43cc8940UL, 0x9e7767d9UL,
-      0x42bdb0e8UL, 0x8b880789UL, 0x5b38e719UL, 0xeedb79c8UL,
-      0x0a47a17cUL, 0x0fe97c42UL, 0x1ec9f884UL, 0x00000000UL,
-      0x86830980UL, 0xed48322bUL, 0x70ac1e11UL, 0x724e6c5aUL,
-      0xfffbfd0eUL, 0x38560f85UL, 0xd51e3daeUL, 0x3927362dUL,
-      0xd9640a0fUL, 0xa621685cUL, 0x54d19b5bUL, 0x2e3a2436UL,
-      0x67b10c0aUL, 0xe70f9357UL, 0x96d2b4eeUL, 0x919e1b9bUL,
-      0xc54f80c0UL, 0x20a261dcUL, 0x4b695a77UL, 0x1a161c12UL,
-      0xba0ae293UL, 0x2ae5c0a0UL, 0xe0433c22UL, 0x171d121bUL,
-      0x0d0b0e09UL, 0xc7adf28bUL, 0xa8b92db6UL, 0xa9c8141eUL,
-      0x198557f1UL, 0x074caf75UL, 0xddbbee99UL, 0x60fda37fUL,
-      0x269ff701UL, 0xf5bc5c72UL, 0x3bc54466UL, 0x7e345bfbUL,
-      0x29768b43UL, 0xc6dccb23UL, 0xfc68b6edUL, 0xf163b8e4UL,
-      0xdccad731UL, 0x85104263UL, 0x22401397UL, 0x112084c6UL,
-      0x247d854aUL, 0x3df8d2bbUL, 0x3211aef9UL, 0xa16dc729UL,
-      0x2f4b1d9eUL, 0x30f3dcb2UL, 0x52ec0d86UL, 0xe3d077c1UL,
-      0x166c2bb3UL, 0xb999a970UL, 0x48fa1194UL, 0x642247e9UL,
-      0x8cc4a8fcUL, 0x3f1aa0f0UL, 0x2cd8567dUL, 0x90ef2233UL,
-      0x4ec78749UL, 0xd1c1d938UL, 0xa2fe8ccaUL, 0x0b3698d4UL,
-      0x81cfa6f5UL, 0xde28a57aUL, 0x8e26dab7UL, 0xbfa43fadUL,
-      0x9de42c3aUL, 0x920d5078UL, 0xcc9b6a5fUL, 0x4662547eUL,
-      0x13c2f68dUL, 0xb8e890d8UL, 0xf75e2e39UL, 0xaff582c3UL,
-      0x80be9f5dUL, 0x937c69d0UL, 0x2da96fd5UL, 0x12b3cf25UL,
-      0x993bc8acUL, 0x7da71018UL, 0x636ee89cUL, 0xbb7bdb3bUL,
-      0x7809cd26UL, 0x18f46e59UL, 0xb701ec9aUL, 0x9aa8834fUL,
-      0x6e65e695UL, 0xe67eaaffUL, 0xcf0821bcUL, 0xe8e6ef15UL,
-      0x9bd9bae7UL, 0x36ce4a6fUL, 0x09d4ea9fUL, 0x7cd629b0UL,
-      0xb2af31a4UL, 0x23312a3fUL, 0x9430c6a5UL, 0x66c035a2UL,
-      0xbc37744eUL, 0xcaa6fc82UL, 0xd0b0e090UL, 0xd81533a7UL,
-      0x984af104UL, 0xdaf741ecUL, 0x500e7fcdUL, 0xf62f1791UL,
-      0xd68d764dUL, 0xb04d43efUL, 0x4d54ccaaUL, 0x04dfe496UL,
-      0xb5e39ed1UL, 0x881b4c6aUL, 0x1fb8c12cUL, 0x517f4665UL,
-      0xea049d5eUL, 0x355d018cUL, 0x7473fa87UL, 0x412efb0bUL,
-      0x1d5ab367UL, 0xd25292dbUL, 0x5633e910UL, 0x47136dd6UL,
-      0x618c9ad7UL, 0x0c7a37a1UL, 0x148e59f8UL, 0x3c89eb13UL,
-      0x27eecea9UL, 0xc935b761UL, 0xe5ede11cUL, 0xb13c7a47UL,
-      0xdf599cd2UL, 0x733f55f2UL, 0xce791814UL, 0x37bf73c7UL,
-      0xcdea53f7UL, 0xaa5b5ffdUL, 0x6f14df3dUL, 0xdb867844UL,
-      0xf381caafUL, 0xc43eb968UL, 0x342c3824UL, 0x405fc2a3UL,
-      0xc372161dUL, 0x250cbce2UL, 0x498b283cUL, 0x9541ff0dUL,
-      0x017139a8UL, 0xb3de080cUL, 0xe49cd8b4UL, 0xc1906456UL,
-      0x84617bcbUL, 0xb670d532UL, 0x5c74486cUL, 0x5742d0b8UL
-  };
-  static const SWord32 table4[] = {
-      0xf4a75051UL, 0x4165537eUL, 0x17a4c31aUL, 0x275e963aUL,
-      0xab6bcb3bUL, 0x9d45f11fUL, 0xfa58abacUL, 0xe303934bUL,
-      0x30fa5520UL, 0x766df6adUL, 0xcc769188UL, 0x024c25f5UL,
-      0xe5d7fc4fUL, 0x2acbd7c5UL, 0x35448026UL, 0x62a38fb5UL,
-      0xb15a49deUL, 0xba1b6725UL, 0xea0e9845UL, 0xfec0e15dUL,
-      0x2f7502c3UL, 0x4cf01281UL, 0x4697a38dUL, 0xd3f9c66bUL,
-      0x8f5fe703UL, 0x929c9515UL, 0x6d7aebbfUL, 0x5259da95UL,
-      0xbe832dd4UL, 0x7421d358UL, 0xe0692949UL, 0xc9c8448eUL,
-      0xc2896a75UL, 0x8e7978f4UL, 0x583e6b99UL, 0xb971dd27UL,
-      0xe14fb6beUL, 0x88ad17f0UL, 0x20ac66c9UL, 0xce3ab47dUL,
-      0xdf4a1863UL, 0x1a3182e5UL, 0x51336097UL, 0x537f4562UL,
-      0x6477e0b1UL, 0x6bae84bbUL, 0x81a01cfeUL, 0x082b94f9UL,
-      0x48685870UL, 0x45fd198fUL, 0xde6c8794UL, 0x7bf8b752UL,
-      0x73d323abUL, 0x4b02e272UL, 0x1f8f57e3UL, 0x55ab2a66UL,
-      0xeb2807b2UL, 0xb5c2032fUL, 0xc57b9a86UL, 0x3708a5d3UL,
-      0x2887f230UL, 0xbfa5b223UL, 0x036aba02UL, 0x16825cedUL,
-      0xcf1c2b8aUL, 0x79b492a7UL, 0x07f2f0f3UL, 0x69e2a14eUL,
-      0xdaf4cd65UL, 0x05bed506UL, 0x34621fd1UL, 0xa6fe8ac4UL,
-      0x2e539d34UL, 0xf355a0a2UL, 0x8ae13205UL, 0xf6eb75a4UL,
-      0x83ec390bUL, 0x60efaa40UL, 0x719f065eUL, 0x6e1051bdUL,
-      0x218af93eUL, 0xdd063d96UL, 0x3e05aeddUL, 0xe6bd464dUL,
-      0x548db591UL, 0xc45d0571UL, 0x06d46f04UL, 0x5015ff60UL,
-      0x98fb2419UL, 0xbde997d6UL, 0x4043cc89UL, 0xd99e7767UL,
-      0xe842bdb0UL, 0x898b8807UL, 0x195b38e7UL, 0xc8eedb79UL,
-      0x7c0a47a1UL, 0x420fe97cUL, 0x841ec9f8UL, 0x00000000UL,
-      0x80868309UL, 0x2bed4832UL, 0x1170ac1eUL, 0x5a724e6cUL,
-      0x0efffbfdUL, 0x8538560fUL, 0xaed51e3dUL, 0x2d392736UL,
-      0x0fd9640aUL, 0x5ca62168UL, 0x5b54d19bUL, 0x362e3a24UL,
-      0x0a67b10cUL, 0x57e70f93UL, 0xee96d2b4UL, 0x9b919e1bUL,
-      0xc0c54f80UL, 0xdc20a261UL, 0x774b695aUL, 0x121a161cUL,
-      0x93ba0ae2UL, 0xa02ae5c0UL, 0x22e0433cUL, 0x1b171d12UL,
-      0x090d0b0eUL, 0x8bc7adf2UL, 0xb6a8b92dUL, 0x1ea9c814UL,
-      0xf1198557UL, 0x75074cafUL, 0x99ddbbeeUL, 0x7f60fda3UL,
-      0x01269ff7UL, 0x72f5bc5cUL, 0x663bc544UL, 0xfb7e345bUL,
-      0x4329768bUL, 0x23c6dccbUL, 0xedfc68b6UL, 0xe4f163b8UL,
-      0x31dccad7UL, 0x63851042UL, 0x97224013UL, 0xc6112084UL,
-      0x4a247d85UL, 0xbb3df8d2UL, 0xf93211aeUL, 0x29a16dc7UL,
-      0x9e2f4b1dUL, 0xb230f3dcUL, 0x8652ec0dUL, 0xc1e3d077UL,
-      0xb3166c2bUL, 0x70b999a9UL, 0x9448fa11UL, 0xe9642247UL,
-      0xfc8cc4a8UL, 0xf03f1aa0UL, 0x7d2cd856UL, 0x3390ef22UL,
-      0x494ec787UL, 0x38d1c1d9UL, 0xcaa2fe8cUL, 0xd40b3698UL,
-      0xf581cfa6UL, 0x7ade28a5UL, 0xb78e26daUL, 0xadbfa43fUL,
-      0x3a9de42cUL, 0x78920d50UL, 0x5fcc9b6aUL, 0x7e466254UL,
-      0x8d13c2f6UL, 0xd8b8e890UL, 0x39f75e2eUL, 0xc3aff582UL,
-      0x5d80be9fUL, 0xd0937c69UL, 0xd52da96fUL, 0x2512b3cfUL,
-      0xac993bc8UL, 0x187da710UL, 0x9c636ee8UL, 0x3bbb7bdbUL,
-      0x267809cdUL, 0x5918f46eUL, 0x9ab701ecUL, 0x4f9aa883UL,
-      0x956e65e6UL, 0xffe67eaaUL, 0xbccf0821UL, 0x15e8e6efUL,
-      0xe79bd9baUL, 0x6f36ce4aUL, 0x9f09d4eaUL, 0xb07cd629UL,
-      0xa4b2af31UL, 0x3f23312aUL, 0xa59430c6UL, 0xa266c035UL,
-      0x4ebc3774UL, 0x82caa6fcUL, 0x90d0b0e0UL, 0xa7d81533UL,
-      0x04984af1UL, 0xecdaf741UL, 0xcd500e7fUL, 0x91f62f17UL,
-      0x4dd68d76UL, 0xefb04d43UL, 0xaa4d54ccUL, 0x9604dfe4UL,
-      0xd1b5e39eUL, 0x6a881b4cUL, 0x2c1fb8c1UL, 0x65517f46UL,
-      0x5eea049dUL, 0x8c355d01UL, 0x877473faUL, 0x0b412efbUL,
-      0x671d5ab3UL, 0xdbd25292UL, 0x105633e9UL, 0xd647136dUL,
-      0xd7618c9aUL, 0xa10c7a37UL, 0xf8148e59UL, 0x133c89ebUL,
-      0xa927eeceUL, 0x61c935b7UL, 0x1ce5ede1UL, 0x47b13c7aUL,
-      0xd2df599cUL, 0xf2733f55UL, 0x14ce7918UL, 0xc737bf73UL,
-      0xf7cdea53UL, 0xfdaa5b5fUL, 0x3d6f14dfUL, 0x44db8678UL,
-      0xaff381caUL, 0x68c43eb9UL, 0x24342c38UL, 0xa3405fc2UL,
-      0x1dc37216UL, 0xe2250cbcUL, 0x3c498b28UL, 0x0d9541ffUL,
-      0xa8017139UL, 0x0cb3de08UL, 0xb4e49cd8UL, 0x56c19064UL,
-      0xcb84617bUL, 0x32b670d5UL, 0x6c5c7448UL, 0xb85742d0UL
-  };
-  const SWord32 s560 = s0 ^ s4;
-  const SWord16 s561 = (SWord16) (s560 >> 16);
-  const SWord8  s562 = (SWord8) (s561 >> 8);
-  const SWord32 s563 = table1[s562];
-  const SWord32 s819 = s3 ^ s7;
-  const SWord16 s820 = (SWord16) (s819 >> 16);
-  const SWord8  s821 = (SWord8) s820;
-  const SWord32 s822 = table2[s821];
-  const SWord32 s823 = s563 ^ s822;
-  const SWord32 s1079 = s2 ^ s6;
-  const SWord16 s1080 = (SWord16) s1079;
-  const SWord8  s1081 = (SWord8) (s1080 >> 8);
-  const SWord32 s1082 = table3[s1081];
-  const SWord32 s1083 = s823 ^ s1082;
-  const SWord32 s1339 = s1 ^ s5;
-  const SWord16 s1340 = (SWord16) s1339;
-  const SWord8  s1341 = (SWord8) s1340;
-  const SWord32 s1342 = table4[s1341];
-  const SWord32 s1343 = s1083 ^ s1342;
-  const SWord32 s1344 = s8 ^ s1343;
-  const SWord16 s1345 = (SWord16) (s1344 >> 16);
-  const SWord8  s1346 = (SWord8) (s1345 >> 8);
-  const SWord32 s1347 = table1[s1346];
-  const SWord8  s1348 = (SWord8) (s820 >> 8);
-  const SWord32 s1349 = table1[s1348];
-  const SWord16 s1350 = (SWord16) (s1079 >> 16);
-  const SWord8  s1351 = (SWord8) s1350;
-  const SWord32 s1352 = table2[s1351];
-  const SWord32 s1353 = s1349 ^ s1352;
-  const SWord8  s1354 = (SWord8) (s1340 >> 8);
-  const SWord32 s1355 = table3[s1354];
-  const SWord32 s1356 = s1353 ^ s1355;
-  const SWord16 s1357 = (SWord16) s560;
-  const SWord8  s1358 = (SWord8) s1357;
-  const SWord32 s1359 = table4[s1358];
-  const SWord32 s1360 = s1356 ^ s1359;
-  const SWord32 s1361 = s11 ^ s1360;
-  const SWord16 s1362 = (SWord16) (s1361 >> 16);
-  const SWord8  s1363 = (SWord8) s1362;
-  const SWord32 s1364 = table2[s1363];
-  const SWord32 s1365 = s1347 ^ s1364;
-  const SWord8  s1366 = (SWord8) (s1350 >> 8);
-  const SWord32 s1367 = table1[s1366];
-  const SWord16 s1368 = (SWord16) (s1339 >> 16);
-  const SWord8  s1369 = (SWord8) s1368;
-  const SWord32 s1370 = table2[s1369];
-  const SWord32 s1371 = s1367 ^ s1370;
-  const SWord8  s1372 = (SWord8) (s1357 >> 8);
-  const SWord32 s1373 = table3[s1372];
-  const SWord32 s1374 = s1371 ^ s1373;
-  const SWord16 s1375 = (SWord16) s819;
-  const SWord8  s1376 = (SWord8) s1375;
-  const SWord32 s1377 = table4[s1376];
-  const SWord32 s1378 = s1374 ^ s1377;
-  const SWord32 s1379 = s10 ^ s1378;
-  const SWord16 s1380 = (SWord16) s1379;
-  const SWord8  s1381 = (SWord8) (s1380 >> 8);
-  const SWord32 s1382 = table3[s1381];
-  const SWord32 s1383 = s1365 ^ s1382;
-  const SWord8  s1384 = (SWord8) (s1368 >> 8);
-  const SWord32 s1385 = table1[s1384];
-  const SWord8  s1386 = (SWord8) s561;
-  const SWord32 s1387 = table2[s1386];
-  const SWord32 s1388 = s1385 ^ s1387;
-  const SWord8  s1389 = (SWord8) (s1375 >> 8);
-  const SWord32 s1390 = table3[s1389];
-  const SWord32 s1391 = s1388 ^ s1390;
-  const SWord8  s1392 = (SWord8) s1080;
-  const SWord32 s1393 = table4[s1392];
-  const SWord32 s1394 = s1391 ^ s1393;
-  const SWord32 s1395 = s9 ^ s1394;
-  const SWord16 s1396 = (SWord16) s1395;
-  const SWord8  s1397 = (SWord8) s1396;
-  const SWord32 s1398 = table4[s1397];
-  const SWord32 s1399 = s1383 ^ s1398;
-  const SWord32 s1400 = s12 ^ s1399;
-  const SWord16 s1401 = (SWord16) (s1400 >> 16);
-  const SWord8  s1402 = (SWord8) (s1401 >> 8);
-  const SWord32 s1403 = table1[s1402];
-  const SWord8  s1404 = (SWord8) (s1362 >> 8);
-  const SWord32 s1405 = table1[s1404];
-  const SWord16 s1406 = (SWord16) (s1379 >> 16);
-  const SWord8  s1407 = (SWord8) s1406;
-  const SWord32 s1408 = table2[s1407];
-  const SWord32 s1409 = s1405 ^ s1408;
-  const SWord8  s1410 = (SWord8) (s1396 >> 8);
-  const SWord32 s1411 = table3[s1410];
-  const SWord32 s1412 = s1409 ^ s1411;
-  const SWord16 s1413 = (SWord16) s1344;
-  const SWord8  s1414 = (SWord8) s1413;
-  const SWord32 s1415 = table4[s1414];
-  const SWord32 s1416 = s1412 ^ s1415;
-  const SWord32 s1417 = s15 ^ s1416;
-  const SWord16 s1418 = (SWord16) (s1417 >> 16);
-  const SWord8  s1419 = (SWord8) s1418;
-  const SWord32 s1420 = table2[s1419];
-  const SWord32 s1421 = s1403 ^ s1420;
-  const SWord8  s1422 = (SWord8) (s1406 >> 8);
-  const SWord32 s1423 = table1[s1422];
-  const SWord16 s1424 = (SWord16) (s1395 >> 16);
-  const SWord8  s1425 = (SWord8) s1424;
-  const SWord32 s1426 = table2[s1425];
-  const SWord32 s1427 = s1423 ^ s1426;
-  const SWord8  s1428 = (SWord8) (s1413 >> 8);
-  const SWord32 s1429 = table3[s1428];
-  const SWord32 s1430 = s1427 ^ s1429;
-  const SWord16 s1431 = (SWord16) s1361;
-  const SWord8  s1432 = (SWord8) s1431;
-  const SWord32 s1433 = table4[s1432];
-  const SWord32 s1434 = s1430 ^ s1433;
-  const SWord32 s1435 = s14 ^ s1434;
-  const SWord16 s1436 = (SWord16) s1435;
-  const SWord8  s1437 = (SWord8) (s1436 >> 8);
-  const SWord32 s1438 = table3[s1437];
-  const SWord32 s1439 = s1421 ^ s1438;
-  const SWord8  s1440 = (SWord8) (s1424 >> 8);
-  const SWord32 s1441 = table1[s1440];
-  const SWord8  s1442 = (SWord8) s1345;
-  const SWord32 s1443 = table2[s1442];
-  const SWord32 s1444 = s1441 ^ s1443;
-  const SWord8  s1445 = (SWord8) (s1431 >> 8);
-  const SWord32 s1446 = table3[s1445];
-  const SWord32 s1447 = s1444 ^ s1446;
-  const SWord8  s1448 = (SWord8) s1380;
-  const SWord32 s1449 = table4[s1448];
-  const SWord32 s1450 = s1447 ^ s1449;
-  const SWord32 s1451 = s13 ^ s1450;
-  const SWord16 s1452 = (SWord16) s1451;
-  const SWord8  s1453 = (SWord8) s1452;
-  const SWord32 s1454 = table4[s1453];
-  const SWord32 s1455 = s1439 ^ s1454;
-  const SWord32 s1456 = s16 ^ s1455;
-  const SWord16 s1457 = (SWord16) (s1456 >> 16);
-  const SWord8  s1458 = (SWord8) (s1457 >> 8);
-  const SWord32 s1459 = table1[s1458];
-  const SWord8  s1460 = (SWord8) (s1418 >> 8);
-  const SWord32 s1461 = table1[s1460];
-  const SWord16 s1462 = (SWord16) (s1435 >> 16);
-  const SWord8  s1463 = (SWord8) s1462;
-  const SWord32 s1464 = table2[s1463];
-  const SWord32 s1465 = s1461 ^ s1464;
-  const SWord8  s1466 = (SWord8) (s1452 >> 8);
-  const SWord32 s1467 = table3[s1466];
-  const SWord32 s1468 = s1465 ^ s1467;
-  const SWord16 s1469 = (SWord16) s1400;
-  const SWord8  s1470 = (SWord8) s1469;
-  const SWord32 s1471 = table4[s1470];
-  const SWord32 s1472 = s1468 ^ s1471;
-  const SWord32 s1473 = s19 ^ s1472;
-  const SWord16 s1474 = (SWord16) (s1473 >> 16);
-  const SWord8  s1475 = (SWord8) s1474;
-  const SWord32 s1476 = table2[s1475];
-  const SWord32 s1477 = s1459 ^ s1476;
-  const SWord8  s1478 = (SWord8) (s1462 >> 8);
-  const SWord32 s1479 = table1[s1478];
-  const SWord16 s1480 = (SWord16) (s1451 >> 16);
-  const SWord8  s1481 = (SWord8) s1480;
-  const SWord32 s1482 = table2[s1481];
-  const SWord32 s1483 = s1479 ^ s1482;
-  const SWord8  s1484 = (SWord8) (s1469 >> 8);
-  const SWord32 s1485 = table3[s1484];
-  const SWord32 s1486 = s1483 ^ s1485;
-  const SWord16 s1487 = (SWord16) s1417;
-  const SWord8  s1488 = (SWord8) s1487;
-  const SWord32 s1489 = table4[s1488];
-  const SWord32 s1490 = s1486 ^ s1489;
-  const SWord32 s1491 = s18 ^ s1490;
-  const SWord16 s1492 = (SWord16) s1491;
-  const SWord8  s1493 = (SWord8) (s1492 >> 8);
-  const SWord32 s1494 = table3[s1493];
-  const SWord32 s1495 = s1477 ^ s1494;
-  const SWord8  s1496 = (SWord8) (s1480 >> 8);
-  const SWord32 s1497 = table1[s1496];
-  const SWord8  s1498 = (SWord8) s1401;
-  const SWord32 s1499 = table2[s1498];
-  const SWord32 s1500 = s1497 ^ s1499;
-  const SWord8  s1501 = (SWord8) (s1487 >> 8);
-  const SWord32 s1502 = table3[s1501];
-  const SWord32 s1503 = s1500 ^ s1502;
-  const SWord8  s1504 = (SWord8) s1436;
-  const SWord32 s1505 = table4[s1504];
-  const SWord32 s1506 = s1503 ^ s1505;
-  const SWord32 s1507 = s17 ^ s1506;
-  const SWord16 s1508 = (SWord16) s1507;
-  const SWord8  s1509 = (SWord8) s1508;
-  const SWord32 s1510 = table4[s1509];
-  const SWord32 s1511 = s1495 ^ s1510;
-  const SWord32 s1512 = s20 ^ s1511;
-  const SWord16 s1513 = (SWord16) (s1512 >> 16);
-  const SWord8  s1514 = (SWord8) (s1513 >> 8);
-  const SWord32 s1515 = table1[s1514];
-  const SWord8  s1516 = (SWord8) (s1474 >> 8);
-  const SWord32 s1517 = table1[s1516];
-  const SWord16 s1518 = (SWord16) (s1491 >> 16);
-  const SWord8  s1519 = (SWord8) s1518;
-  const SWord32 s1520 = table2[s1519];
-  const SWord32 s1521 = s1517 ^ s1520;
-  const SWord8  s1522 = (SWord8) (s1508 >> 8);
-  const SWord32 s1523 = table3[s1522];
-  const SWord32 s1524 = s1521 ^ s1523;
-  const SWord16 s1525 = (SWord16) s1456;
-  const SWord8  s1526 = (SWord8) s1525;
-  const SWord32 s1527 = table4[s1526];
-  const SWord32 s1528 = s1524 ^ s1527;
-  const SWord32 s1529 = s23 ^ s1528;
-  const SWord16 s1530 = (SWord16) (s1529 >> 16);
-  const SWord8  s1531 = (SWord8) s1530;
-  const SWord32 s1532 = table2[s1531];
-  const SWord32 s1533 = s1515 ^ s1532;
-  const SWord8  s1534 = (SWord8) (s1518 >> 8);
-  const SWord32 s1535 = table1[s1534];
-  const SWord16 s1536 = (SWord16) (s1507 >> 16);
-  const SWord8  s1537 = (SWord8) s1536;
-  const SWord32 s1538 = table2[s1537];
-  const SWord32 s1539 = s1535 ^ s1538;
-  const SWord8  s1540 = (SWord8) (s1525 >> 8);
-  const SWord32 s1541 = table3[s1540];
-  const SWord32 s1542 = s1539 ^ s1541;
-  const SWord16 s1543 = (SWord16) s1473;
-  const SWord8  s1544 = (SWord8) s1543;
-  const SWord32 s1545 = table4[s1544];
-  const SWord32 s1546 = s1542 ^ s1545;
-  const SWord32 s1547 = s22 ^ s1546;
-  const SWord16 s1548 = (SWord16) s1547;
-  const SWord8  s1549 = (SWord8) (s1548 >> 8);
-  const SWord32 s1550 = table3[s1549];
-  const SWord32 s1551 = s1533 ^ s1550;
-  const SWord8  s1552 = (SWord8) (s1536 >> 8);
-  const SWord32 s1553 = table1[s1552];
-  const SWord8  s1554 = (SWord8) s1457;
-  const SWord32 s1555 = table2[s1554];
-  const SWord32 s1556 = s1553 ^ s1555;
-  const SWord8  s1557 = (SWord8) (s1543 >> 8);
-  const SWord32 s1558 = table3[s1557];
-  const SWord32 s1559 = s1556 ^ s1558;
-  const SWord8  s1560 = (SWord8) s1492;
-  const SWord32 s1561 = table4[s1560];
-  const SWord32 s1562 = s1559 ^ s1561;
-  const SWord32 s1563 = s21 ^ s1562;
-  const SWord16 s1564 = (SWord16) s1563;
-  const SWord8  s1565 = (SWord8) s1564;
-  const SWord32 s1566 = table4[s1565];
-  const SWord32 s1567 = s1551 ^ s1566;
-  const SWord32 s1568 = s24 ^ s1567;
-  const SWord16 s1569 = (SWord16) (s1568 >> 16);
-  const SWord8  s1570 = (SWord8) (s1569 >> 8);
-  const SWord32 s1571 = table1[s1570];
-  const SWord8  s1572 = (SWord8) (s1530 >> 8);
-  const SWord32 s1573 = table1[s1572];
-  const SWord16 s1574 = (SWord16) (s1547 >> 16);
-  const SWord8  s1575 = (SWord8) s1574;
-  const SWord32 s1576 = table2[s1575];
-  const SWord32 s1577 = s1573 ^ s1576;
-  const SWord8  s1578 = (SWord8) (s1564 >> 8);
-  const SWord32 s1579 = table3[s1578];
-  const SWord32 s1580 = s1577 ^ s1579;
-  const SWord16 s1581 = (SWord16) s1512;
-  const SWord8  s1582 = (SWord8) s1581;
-  const SWord32 s1583 = table4[s1582];
-  const SWord32 s1584 = s1580 ^ s1583;
-  const SWord32 s1585 = s27 ^ s1584;
-  const SWord16 s1586 = (SWord16) (s1585 >> 16);
-  const SWord8  s1587 = (SWord8) s1586;
-  const SWord32 s1588 = table2[s1587];
-  const SWord32 s1589 = s1571 ^ s1588;
-  const SWord8  s1590 = (SWord8) (s1574 >> 8);
-  const SWord32 s1591 = table1[s1590];
-  const SWord16 s1592 = (SWord16) (s1563 >> 16);
-  const SWord8  s1593 = (SWord8) s1592;
-  const SWord32 s1594 = table2[s1593];
-  const SWord32 s1595 = s1591 ^ s1594;
-  const SWord8  s1596 = (SWord8) (s1581 >> 8);
-  const SWord32 s1597 = table3[s1596];
-  const SWord32 s1598 = s1595 ^ s1597;
-  const SWord16 s1599 = (SWord16) s1529;
-  const SWord8  s1600 = (SWord8) s1599;
-  const SWord32 s1601 = table4[s1600];
-  const SWord32 s1602 = s1598 ^ s1601;
-  const SWord32 s1603 = s26 ^ s1602;
-  const SWord16 s1604 = (SWord16) s1603;
-  const SWord8  s1605 = (SWord8) (s1604 >> 8);
-  const SWord32 s1606 = table3[s1605];
-  const SWord32 s1607 = s1589 ^ s1606;
-  const SWord8  s1608 = (SWord8) (s1592 >> 8);
-  const SWord32 s1609 = table1[s1608];
-  const SWord8  s1610 = (SWord8) s1513;
-  const SWord32 s1611 = table2[s1610];
-  const SWord32 s1612 = s1609 ^ s1611;
-  const SWord8  s1613 = (SWord8) (s1599 >> 8);
-  const SWord32 s1614 = table3[s1613];
-  const SWord32 s1615 = s1612 ^ s1614;
-  const SWord8  s1616 = (SWord8) s1548;
-  const SWord32 s1617 = table4[s1616];
-  const SWord32 s1618 = s1615 ^ s1617;
-  const SWord32 s1619 = s25 ^ s1618;
-  const SWord16 s1620 = (SWord16) s1619;
-  const SWord8  s1621 = (SWord8) s1620;
-  const SWord32 s1622 = table4[s1621];
-  const SWord32 s1623 = s1607 ^ s1622;
-  const SWord32 s1624 = s28 ^ s1623;
-  const SWord16 s1625 = (SWord16) (s1624 >> 16);
-  const SWord8  s1626 = (SWord8) (s1625 >> 8);
-  const SWord32 s1627 = table1[s1626];
-  const SWord8  s1628 = (SWord8) (s1586 >> 8);
-  const SWord32 s1629 = table1[s1628];
-  const SWord16 s1630 = (SWord16) (s1603 >> 16);
-  const SWord8  s1631 = (SWord8) s1630;
-  const SWord32 s1632 = table2[s1631];
-  const SWord32 s1633 = s1629 ^ s1632;
-  const SWord8  s1634 = (SWord8) (s1620 >> 8);
-  const SWord32 s1635 = table3[s1634];
-  const SWord32 s1636 = s1633 ^ s1635;
-  const SWord16 s1637 = (SWord16) s1568;
-  const SWord8  s1638 = (SWord8) s1637;
-  const SWord32 s1639 = table4[s1638];
-  const SWord32 s1640 = s1636 ^ s1639;
-  const SWord32 s1641 = s31 ^ s1640;
-  const SWord16 s1642 = (SWord16) (s1641 >> 16);
-  const SWord8  s1643 = (SWord8) s1642;
-  const SWord32 s1644 = table2[s1643];
-  const SWord32 s1645 = s1627 ^ s1644;
-  const SWord8  s1646 = (SWord8) (s1630 >> 8);
-  const SWord32 s1647 = table1[s1646];
-  const SWord16 s1648 = (SWord16) (s1619 >> 16);
-  const SWord8  s1649 = (SWord8) s1648;
-  const SWord32 s1650 = table2[s1649];
-  const SWord32 s1651 = s1647 ^ s1650;
-  const SWord8  s1652 = (SWord8) (s1637 >> 8);
-  const SWord32 s1653 = table3[s1652];
-  const SWord32 s1654 = s1651 ^ s1653;
-  const SWord16 s1655 = (SWord16) s1585;
-  const SWord8  s1656 = (SWord8) s1655;
-  const SWord32 s1657 = table4[s1656];
-  const SWord32 s1658 = s1654 ^ s1657;
-  const SWord32 s1659 = s30 ^ s1658;
-  const SWord16 s1660 = (SWord16) s1659;
-  const SWord8  s1661 = (SWord8) (s1660 >> 8);
-  const SWord32 s1662 = table3[s1661];
-  const SWord32 s1663 = s1645 ^ s1662;
-  const SWord8  s1664 = (SWord8) (s1648 >> 8);
-  const SWord32 s1665 = table1[s1664];
-  const SWord8  s1666 = (SWord8) s1569;
-  const SWord32 s1667 = table2[s1666];
-  const SWord32 s1668 = s1665 ^ s1667;
-  const SWord8  s1669 = (SWord8) (s1655 >> 8);
-  const SWord32 s1670 = table3[s1669];
-  const SWord32 s1671 = s1668 ^ s1670;
-  const SWord8  s1672 = (SWord8) s1604;
-  const SWord32 s1673 = table4[s1672];
-  const SWord32 s1674 = s1671 ^ s1673;
-  const SWord32 s1675 = s29 ^ s1674;
-  const SWord16 s1676 = (SWord16) s1675;
-  const SWord8  s1677 = (SWord8) s1676;
-  const SWord32 s1678 = table4[s1677];
-  const SWord32 s1679 = s1663 ^ s1678;
-  const SWord32 s1680 = s32 ^ s1679;
-  const SWord16 s1681 = (SWord16) (s1680 >> 16);
-  const SWord8  s1682 = (SWord8) (s1681 >> 8);
-  const SWord32 s1683 = table1[s1682];
-  const SWord8  s1684 = (SWord8) (s1642 >> 8);
-  const SWord32 s1685 = table1[s1684];
-  const SWord16 s1686 = (SWord16) (s1659 >> 16);
-  const SWord8  s1687 = (SWord8) s1686;
-  const SWord32 s1688 = table2[s1687];
-  const SWord32 s1689 = s1685 ^ s1688;
-  const SWord8  s1690 = (SWord8) (s1676 >> 8);
-  const SWord32 s1691 = table3[s1690];
-  const SWord32 s1692 = s1689 ^ s1691;
-  const SWord16 s1693 = (SWord16) s1624;
-  const SWord8  s1694 = (SWord8) s1693;
-  const SWord32 s1695 = table4[s1694];
-  const SWord32 s1696 = s1692 ^ s1695;
-  const SWord32 s1697 = s35 ^ s1696;
-  const SWord16 s1698 = (SWord16) (s1697 >> 16);
-  const SWord8  s1699 = (SWord8) s1698;
-  const SWord32 s1700 = table2[s1699];
-  const SWord32 s1701 = s1683 ^ s1700;
-  const SWord8  s1702 = (SWord8) (s1686 >> 8);
-  const SWord32 s1703 = table1[s1702];
-  const SWord16 s1704 = (SWord16) (s1675 >> 16);
-  const SWord8  s1705 = (SWord8) s1704;
-  const SWord32 s1706 = table2[s1705];
-  const SWord32 s1707 = s1703 ^ s1706;
-  const SWord8  s1708 = (SWord8) (s1693 >> 8);
-  const SWord32 s1709 = table3[s1708];
-  const SWord32 s1710 = s1707 ^ s1709;
-  const SWord16 s1711 = (SWord16) s1641;
-  const SWord8  s1712 = (SWord8) s1711;
-  const SWord32 s1713 = table4[s1712];
-  const SWord32 s1714 = s1710 ^ s1713;
-  const SWord32 s1715 = s34 ^ s1714;
-  const SWord16 s1716 = (SWord16) s1715;
-  const SWord8  s1717 = (SWord8) (s1716 >> 8);
-  const SWord32 s1718 = table3[s1717];
-  const SWord32 s1719 = s1701 ^ s1718;
-  const SWord8  s1720 = (SWord8) (s1704 >> 8);
-  const SWord32 s1721 = table1[s1720];
-  const SWord8  s1722 = (SWord8) s1625;
-  const SWord32 s1723 = table2[s1722];
-  const SWord32 s1724 = s1721 ^ s1723;
-  const SWord8  s1725 = (SWord8) (s1711 >> 8);
-  const SWord32 s1726 = table3[s1725];
-  const SWord32 s1727 = s1724 ^ s1726;
-  const SWord8  s1728 = (SWord8) s1660;
-  const SWord32 s1729 = table4[s1728];
-  const SWord32 s1730 = s1727 ^ s1729;
-  const SWord32 s1731 = s33 ^ s1730;
-  const SWord16 s1732 = (SWord16) s1731;
-  const SWord8  s1733 = (SWord8) s1732;
-  const SWord32 s1734 = table4[s1733];
-  const SWord32 s1735 = s1719 ^ s1734;
-  const SWord32 s1736 = s36 ^ s1735;
-  const SWord16 s1737 = (SWord16) (s1736 >> 16);
-  const SWord8  s1738 = (SWord8) (s1737 >> 8);
-  const SWord32 s1739 = table1[s1738];
-  const SWord8  s1740 = (SWord8) (s1698 >> 8);
-  const SWord32 s1741 = table1[s1740];
-  const SWord16 s1742 = (SWord16) (s1715 >> 16);
-  const SWord8  s1743 = (SWord8) s1742;
-  const SWord32 s1744 = table2[s1743];
-  const SWord32 s1745 = s1741 ^ s1744;
-  const SWord8  s1746 = (SWord8) (s1732 >> 8);
-  const SWord32 s1747 = table3[s1746];
-  const SWord32 s1748 = s1745 ^ s1747;
-  const SWord16 s1749 = (SWord16) s1680;
-  const SWord8  s1750 = (SWord8) s1749;
-  const SWord32 s1751 = table4[s1750];
-  const SWord32 s1752 = s1748 ^ s1751;
-  const SWord32 s1753 = s39 ^ s1752;
-  const SWord16 s1754 = (SWord16) (s1753 >> 16);
-  const SWord8  s1755 = (SWord8) s1754;
-  const SWord32 s1756 = table2[s1755];
-  const SWord32 s1757 = s1739 ^ s1756;
-  const SWord8  s1758 = (SWord8) (s1742 >> 8);
-  const SWord32 s1759 = table1[s1758];
-  const SWord16 s1760 = (SWord16) (s1731 >> 16);
-  const SWord8  s1761 = (SWord8) s1760;
-  const SWord32 s1762 = table2[s1761];
-  const SWord32 s1763 = s1759 ^ s1762;
-  const SWord8  s1764 = (SWord8) (s1749 >> 8);
-  const SWord32 s1765 = table3[s1764];
-  const SWord32 s1766 = s1763 ^ s1765;
-  const SWord16 s1767 = (SWord16) s1697;
-  const SWord8  s1768 = (SWord8) s1767;
-  const SWord32 s1769 = table4[s1768];
-  const SWord32 s1770 = s1766 ^ s1769;
-  const SWord32 s1771 = s38 ^ s1770;
-  const SWord16 s1772 = (SWord16) s1771;
-  const SWord8  s1773 = (SWord8) (s1772 >> 8);
-  const SWord32 s1774 = table3[s1773];
-  const SWord32 s1775 = s1757 ^ s1774;
-  const SWord8  s1776 = (SWord8) (s1760 >> 8);
-  const SWord32 s1777 = table1[s1776];
-  const SWord8  s1778 = (SWord8) s1681;
-  const SWord32 s1779 = table2[s1778];
-  const SWord32 s1780 = s1777 ^ s1779;
-  const SWord8  s1781 = (SWord8) (s1767 >> 8);
-  const SWord32 s1782 = table3[s1781];
-  const SWord32 s1783 = s1780 ^ s1782;
-  const SWord8  s1784 = (SWord8) s1716;
-  const SWord32 s1785 = table4[s1784];
-  const SWord32 s1786 = s1783 ^ s1785;
-  const SWord32 s1787 = s37 ^ s1786;
-  const SWord16 s1788 = (SWord16) s1787;
-  const SWord8  s1789 = (SWord8) s1788;
-  const SWord32 s1790 = table4[s1789];
-  const SWord32 s1791 = s1775 ^ s1790;
-  const SWord32 s1792 = s40 ^ s1791;
-  const SWord16 s1793 = (SWord16) (s1792 >> 16);
-  const SWord8  s1794 = (SWord8) (s1793 >> 8);
-  const SWord8  s1795 = table0[s1794];
-  const SWord8  s1796 = (SWord8) (s1754 >> 8);
-  const SWord32 s1797 = table1[s1796];
-  const SWord16 s1798 = (SWord16) (s1771 >> 16);
-  const SWord8  s1799 = (SWord8) s1798;
-  const SWord32 s1800 = table2[s1799];
-  const SWord32 s1801 = s1797 ^ s1800;
-  const SWord8  s1802 = (SWord8) (s1788 >> 8);
-  const SWord32 s1803 = table3[s1802];
-  const SWord32 s1804 = s1801 ^ s1803;
-  const SWord16 s1805 = (SWord16) s1736;
-  const SWord8  s1806 = (SWord8) s1805;
-  const SWord32 s1807 = table4[s1806];
-  const SWord32 s1808 = s1804 ^ s1807;
-  const SWord32 s1809 = s43 ^ s1808;
-  const SWord16 s1810 = (SWord16) (s1809 >> 16);
-  const SWord8  s1811 = (SWord8) s1810;
-  const SWord8  s1812 = table0[s1811];
-  const SWord16 s1813 = (((SWord16) s1795) << 8) | ((SWord16) s1812);
-  const SWord8  s1814 = (SWord8) (s1798 >> 8);
-  const SWord32 s1815 = table1[s1814];
-  const SWord16 s1816 = (SWord16) (s1787 >> 16);
-  const SWord8  s1817 = (SWord8) s1816;
-  const SWord32 s1818 = table2[s1817];
-  const SWord32 s1819 = s1815 ^ s1818;
-  const SWord8  s1820 = (SWord8) (s1805 >> 8);
-  const SWord32 s1821 = table3[s1820];
-  const SWord32 s1822 = s1819 ^ s1821;
-  const SWord16 s1823 = (SWord16) s1753;
-  const SWord8  s1824 = (SWord8) s1823;
-  const SWord32 s1825 = table4[s1824];
-  const SWord32 s1826 = s1822 ^ s1825;
-  const SWord32 s1827 = s42 ^ s1826;
-  const SWord16 s1828 = (SWord16) s1827;
-  const SWord8  s1829 = (SWord8) (s1828 >> 8);
-  const SWord8  s1830 = table0[s1829];
-  const SWord8  s1831 = (SWord8) (s1816 >> 8);
-  const SWord32 s1832 = table1[s1831];
-  const SWord8  s1833 = (SWord8) s1737;
-  const SWord32 s1834 = table2[s1833];
-  const SWord32 s1835 = s1832 ^ s1834;
-  const SWord8  s1836 = (SWord8) (s1823 >> 8);
-  const SWord32 s1837 = table3[s1836];
-  const SWord32 s1838 = s1835 ^ s1837;
-  const SWord8  s1839 = (SWord8) s1772;
-  const SWord32 s1840 = table4[s1839];
-  const SWord32 s1841 = s1838 ^ s1840;
-  const SWord32 s1842 = s41 ^ s1841;
-  const SWord16 s1843 = (SWord16) s1842;
-  const SWord8  s1844 = (SWord8) s1843;
-  const SWord8  s1845 = table0[s1844];
-  const SWord16 s1846 = (((SWord16) s1830) << 8) | ((SWord16) s1845);
-  const SWord32 s1847 = (((SWord32) s1813) << 16) | ((SWord32) s1846);
-  const SWord32 s1848 = s44 ^ s1847;
-  const SWord16 s1849 = (SWord16) (s1842 >> 16);
-  const SWord8  s1850 = (SWord8) (s1849 >> 8);
-  const SWord8  s1851 = table0[s1850];
-  const SWord8  s1852 = (SWord8) s1793;
-  const SWord8  s1853 = table0[s1852];
-  const SWord16 s1854 = (((SWord16) s1851) << 8) | ((SWord16) s1853);
-  const SWord16 s1855 = (SWord16) s1809;
-  const SWord8  s1856 = (SWord8) (s1855 >> 8);
-  const SWord8  s1857 = table0[s1856];
-  const SWord8  s1858 = (SWord8) s1828;
-  const SWord8  s1859 = table0[s1858];
-  const SWord16 s1860 = (((SWord16) s1857) << 8) | ((SWord16) s1859);
-  const SWord32 s1861 = (((SWord32) s1854) << 16) | ((SWord32) s1860);
-  const SWord32 s1862 = s45 ^ s1861;
-  const SWord16 s1863 = (SWord16) (s1827 >> 16);
-  const SWord8  s1864 = (SWord8) (s1863 >> 8);
-  const SWord8  s1865 = table0[s1864];
-  const SWord8  s1866 = (SWord8) s1849;
-  const SWord8  s1867 = table0[s1866];
-  const SWord16 s1868 = (((SWord16) s1865) << 8) | ((SWord16) s1867);
-  const SWord16 s1869 = (SWord16) s1792;
-  const SWord8  s1870 = (SWord8) (s1869 >> 8);
-  const SWord8  s1871 = table0[s1870];
-  const SWord8  s1872 = (SWord8) s1855;
-  const SWord8  s1873 = table0[s1872];
-  const SWord16 s1874 = (((SWord16) s1871) << 8) | ((SWord16) s1873);
-  const SWord32 s1875 = (((SWord32) s1868) << 16) | ((SWord32) s1874);
-  const SWord32 s1876 = s46 ^ s1875;
-  const SWord8  s1877 = (SWord8) (s1810 >> 8);
-  const SWord8  s1878 = table0[s1877];
-  const SWord8  s1879 = (SWord8) s1863;
-  const SWord8  s1880 = table0[s1879];
-  const SWord16 s1881 = (((SWord16) s1878) << 8) | ((SWord16) s1880);
-  const SWord8  s1882 = (SWord8) (s1843 >> 8);
-  const SWord8  s1883 = table0[s1882];
-  const SWord8  s1884 = (SWord8) s1869;
-  const SWord8  s1885 = table0[s1884];
-  const SWord16 s1886 = (((SWord16) s1883) << 8) | ((SWord16) s1885);
-  const SWord32 s1887 = (((SWord32) s1881) << 16) | ((SWord32) s1886);
-  const SWord32 s1888 = s47 ^ s1887;
-  
-  pt[0] = s1848;
-  pt[1] = s1862;
-  pt[2] = s1876;
-  pt[3] = s1888;
-}
-== END: "aes128BlockDecrypt.c" ==================
-== BEGIN: "aes128Lib.h" ================
-/* Header file for aes128Lib. Automatically generated by SBV. Do not edit! */
-
-#ifndef __aes128Lib__HEADER_INCLUDED__
-#define __aes128Lib__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototypes: */
-void aes128KeySchedule(const SWord32 *key, SWord32 *encKS,
-                       SWord32 *decKS);
-void aes128BlockEncrypt(const SWord32 *pt, const SWord32 *xkey,
-                        SWord32 *ct);
-void aes128BlockDecrypt(const SWord32 *ct, const SWord32 *xkey,
-                        SWord32 *pt);
-
-#endif /* __aes128Lib__HEADER_INCLUDED__ */
-== END: "aes128Lib.h" ==================
-== BEGIN: "aes128Lib_driver.c" ================
-/* Example driver program for aes128Lib. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "aes128Lib.h"
-
-void aes128KeySchedule_driver(void)
-{
-  const SWord32 key[4] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array key:\n");
-  int key_ctr;
-  for(key_ctr = 0;  key_ctr < 4 ; ++key_ctr)
-    printf("  key[%d] = 0x%08"PRIx32"UL\n", key_ctr ,key[key_ctr]);
-  
-  SWord32 encKS[44];
-  SWord32 decKS[44];
-  
-  aes128KeySchedule(key, encKS, decKS);
-  
-  printf("aes128KeySchedule(key, encKS, decKS) ->\n");
-  int encKS_ctr;
-  for(encKS_ctr = 0;  encKS_ctr < 44 ; ++encKS_ctr)
-    printf("  encKS[%d] = 0x%08"PRIx32"UL\n", encKS_ctr ,encKS[encKS_ctr]);
-  int decKS_ctr;
-  for(decKS_ctr = 0;  decKS_ctr < 44 ; ++decKS_ctr)
-    printf("  decKS[%d] = 0x%08"PRIx32"UL\n", decKS_ctr ,decKS[decKS_ctr]);
-}
-
-void aes128BlockEncrypt_driver(void)
-{
-  const SWord32 pt[4] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array pt:\n");
-  int pt_ctr;
-  for(pt_ctr = 0;  pt_ctr < 4 ; ++pt_ctr)
-    printf("  pt[%d] = 0x%08"PRIx32"UL\n", pt_ctr ,pt[pt_ctr]);
-  
-  const SWord32 xkey[44] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array xkey:\n");
-  int xkey_ctr;
-  for(xkey_ctr = 0;  xkey_ctr < 44 ; ++xkey_ctr)
-    printf("  xkey[%d] = 0x%08"PRIx32"UL\n", xkey_ctr ,xkey[xkey_ctr]);
-  
-  SWord32 ct[4];
-  
-  aes128BlockEncrypt(pt, xkey, ct);
-  
-  printf("aes128BlockEncrypt(pt, xkey, ct) ->\n");
-  int ct_ctr;
-  for(ct_ctr = 0;  ct_ctr < 4 ; ++ct_ctr)
-    printf("  ct[%d] = 0x%08"PRIx32"UL\n", ct_ctr ,ct[ct_ctr]);
-}
-
-void aes128BlockDecrypt_driver(void)
-{
-  const SWord32 ct[4] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array ct:\n");
-  int ct_ctr;
-  for(ct_ctr = 0;  ct_ctr < 4 ; ++ct_ctr)
-    printf("  ct[%d] = 0x%08"PRIx32"UL\n", ct_ctr ,ct[ct_ctr]);
-  
-  const SWord32 xkey[44] = {
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
-      0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
-  };
-  
-  printf("Contents of input array xkey:\n");
-  int xkey_ctr;
-  for(xkey_ctr = 0;  xkey_ctr < 44 ; ++xkey_ctr)
-    printf("  xkey[%d] = 0x%08"PRIx32"UL\n", xkey_ctr ,xkey[xkey_ctr]);
-  
-  SWord32 pt[4];
-  
-  aes128BlockDecrypt(ct, xkey, pt);
-  
-  printf("aes128BlockDecrypt(ct, xkey, pt) ->\n");
-  int pt_ctr;
-  for(pt_ctr = 0;  pt_ctr < 4 ; ++pt_ctr)
-    printf("  pt[%d] = 0x%08"PRIx32"UL\n", pt_ctr ,pt[pt_ctr]);
-}
-
-int main(void)
-{
-  printf("====================================\n");
-  printf("** Driver run for aes128KeySchedule:\n");
-  printf("====================================\n");
-  aes128KeySchedule_driver();
-  
-  printf("=====================================\n");
-  printf("** Driver run for aes128BlockEncrypt:\n");
-  printf("=====================================\n");
-  aes128BlockEncrypt_driver();
-  
-  printf("=====================================\n");
-  printf("** Driver run for aes128BlockDecrypt:\n");
-  printf("=====================================\n");
-  aes128BlockDecrypt_driver();
-  
-  return 0;
-}== END: "aes128Lib_driver.c" ==================
-== BEGIN: "Makefile" ================
-# Makefile for aes128Lib. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-AR=ar
-ARFLAGS=cr
-
-all: aes128Lib.a aes128Lib_driver
-
-aes128Lib.a: aes128KeySchedule.o aes128BlockEncrypt.o aes128BlockDecrypt.o
-	${AR} ${ARFLAGS} $@ $^
-
-aes128Lib_driver: aes128Lib_driver.c aes128Lib.h
-	${CC} ${CCFLAGS} $< -o $@ aes128Lib.a
-
-aes128KeySchedule.o:aes128KeySchedule.c aes128Lib.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-aes128BlockEncrypt.o:aes128BlockEncrypt.c aes128Lib.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-aes128BlockDecrypt.o:aes128BlockDecrypt.c aes128Lib.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f aes128Lib.a aes128Lib_driver
-== END: "Makefile" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/auf-1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/auf-1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/auf-1.gold
+++ /dev/null
@@ -1,30 +0,0 @@
-INPUTS
-  s0 :: SWord32, aliasing "x"
-  s1 :: SWord32, aliasing "y"
-  s2 :: SWord32, aliasing "initVal"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s3 = 2 :: SWord32
-  s9 = 3 :: SWord32
-  s13 = 1 :: SWord32
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-  uninterpreted_f :: SWord32 -> SWord64
-AXIOMS
-DEFINE
-  s4 :: SWord32 = s0 + s3
-  s5 :: SBool = s1 == s4
-  s6 :: SBool = ~ s5
-  s7 :: SWord32 = s1 - s3
-  s8 :: SBool = s0 == s7
-  s10 :: SWord32 = if s8 then s9 else s2
-  s11 :: SWord64 = uninterpreted_f s10
-  s12 :: SWord32 = s1 - s0
-  s14 :: SWord32 = s12 + s13
-  s15 :: SWord64 = uninterpreted_f s14
-  s16 :: SBool = s11 == s15
-  s17 :: SBool = s6 | s16
-OUTPUTS
-  s17
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_1.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-5 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_2.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_2.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_2.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-5 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_3.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_3.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_3.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-25 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_4.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_4.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_4.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-25 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_5.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_5.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-1_5.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-4 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_1.gold
+++ /dev/null
@@ -1,16 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s1 = 3 :: SWord8
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s1
-  s3 :: SWord8 = s1 - s0
-  s4 :: SWord8 = s2 * s3
-OUTPUTS
-  s4
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_2.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_2.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_2.gold
+++ /dev/null
@@ -1,15 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s1 = 9 :: SWord8
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 * s0
-  s3 :: SWord8 = s1 - s2
-OUTPUTS
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_3.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_3.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_3.gold
+++ /dev/null
@@ -1,15 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s1 = 3 :: SWord8
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s1
-  s3 :: SWord8 = s2 * s2
-OUTPUTS
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_4.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_4.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_4.gold
+++ /dev/null
@@ -1,15 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s1 = 3 :: SWord8
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s1
-  s3 :: SWord8 = s2 * s2
-OUTPUTS
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_5.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_5.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-2_5.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-4 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_1.gold
+++ /dev/null
@@ -1,16 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s1
-  s3 :: SWord8 = s0 - s1
-  s4 :: SWord8 = s2 * s3
-OUTPUTS
-  s4
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_2.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_2.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_2.gold
+++ /dev/null
@@ -1,16 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 * s0
-  s3 :: SWord8 = s1 * s1
-  s4 :: SWord8 = s2 - s3
-OUTPUTS
-  s4
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_3.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_3.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_3.gold
+++ /dev/null
@@ -1,15 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s1
-  s3 :: SWord8 = s2 * s2
-OUTPUTS
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_4.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_4.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_4.gold
+++ /dev/null
@@ -1,15 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s1
-  s3 :: SWord8 = s2 * s2
-OUTPUTS
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_5.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_5.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-3_5.gold
+++ /dev/null
@@ -1,15 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "y"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s2 = 1 :: SWord8
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s3 :: SWord8 = s0 + s2
-OUTPUTS
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_1.gold
+++ /dev/null
@@ -1,15 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s1 :: SWord8 = s0 + s0
-  s2 :: SWord8 = s0 - s0
-  s3 :: SWord8 = s1 * s2
-OUTPUTS
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_2.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_2.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_2.gold
+++ /dev/null
@@ -1,14 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s1 :: SWord8 = s0 * s0
-  s2 :: SWord8 = s1 - s1
-OUTPUTS
-  s2
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_3.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_3.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_3.gold
+++ /dev/null
@@ -1,14 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s1 :: SWord8 = s0 + s0
-  s2 :: SWord8 = s1 * s1
-OUTPUTS
-  s2
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_4.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_4.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_4.gold
+++ /dev/null
@@ -1,14 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s1 :: SWord8 = s0 + s0
-  s2 :: SWord8 = s1 * s1
-OUTPUTS
-  s2
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_5.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_5.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-4_5.gold
+++ /dev/null
@@ -1,14 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s1 = 1 :: SWord8
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s1
-OUTPUTS
-  s2
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_1.gold
+++ /dev/null
@@ -1,17 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "q"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s0
-  s3 :: SWord8 = s0 - s0
-  s4 :: SWord8 = s2 * s3
-OUTPUTS
-  s1
-  s4
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_2.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_2.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_2.gold
+++ /dev/null
@@ -1,16 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "q"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 * s0
-  s3 :: SWord8 = s2 - s2
-OUTPUTS
-  s1
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_3.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_3.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_3.gold
+++ /dev/null
@@ -1,16 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "q"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s0
-  s3 :: SWord8 = s2 * s2
-OUTPUTS
-  s1
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_4.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_4.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_4.gold
+++ /dev/null
@@ -1,16 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "q"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s2 :: SWord8 = s0 + s0
-  s3 :: SWord8 = s2 * s2
-OUTPUTS
-  s1
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_5.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_5.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/basic-5_5.gold
+++ /dev/null
@@ -1,16 +0,0 @@
-INPUTS
-  s0 :: SWord8, aliasing "x"
-  s1 :: SWord8, aliasing "q"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s2 = 1 :: SWord8
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s3 :: SWord8 = s0 + s2
-OUTPUTS
-  s1
-  s3
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/ccitt.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/ccitt.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/ccitt.gold
+++ /dev/null
@@ -1,1828 +0,0 @@
-INPUTS
-  s0 :: SWord32
-  s1 :: SWord16
-  s2 :: SWord32
-  s3 :: SWord16
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s1685 = 0 :: SWord8
-  s1686 = 1 :: SWord8
-  s1814 = 3 :: SWord8
-  s9 = 0 :: SWord16
-  s12 = 9223372036854775808 :: SWord64
-  s14 = 0 :: SWord64
-  s16 = 4611686018427387904 :: SWord64
-  s19 = 2305843009213693952 :: SWord64
-  s22 = 1152921504606846976 :: SWord64
-  s25 = 576460752303423488 :: SWord64
-  s30 = 288230376151711744 :: SWord64
-  s35 = 144115188075855872 :: SWord64
-  s40 = 72057594037927936 :: SWord64
-  s45 = 36028797018963968 :: SWord64
-  s50 = 18014398509481984 :: SWord64
-  s55 = 9007199254740992 :: SWord64
-  s60 = 4503599627370496 :: SWord64
-  s67 = 2251799813685248 :: SWord64
-  s74 = 1125899906842624 :: SWord64
-  s81 = 562949953421312 :: SWord64
-  s88 = 281474976710656 :: SWord64
-  s95 = 140737488355328 :: SWord64
-  s104 = 70368744177664 :: SWord64
-  s113 = 35184372088832 :: SWord64
-  s122 = 17592186044416 :: SWord64
-  s131 = 8796093022208 :: SWord64
-  s140 = 4398046511104 :: SWord64
-  s149 = 2199023255552 :: SWord64
-  s158 = 1099511627776 :: SWord64
-  s167 = 549755813888 :: SWord64
-  s176 = 274877906944 :: SWord64
-  s185 = 137438953472 :: SWord64
-  s194 = 68719476736 :: SWord64
-  s203 = 34359738368 :: SWord64
-  s212 = 17179869184 :: SWord64
-  s221 = 8589934592 :: SWord64
-  s230 = 4294967296 :: SWord64
-  s239 = 2147483648 :: SWord64
-  s248 = 1073741824 :: SWord64
-  s257 = 536870912 :: SWord64
-  s266 = 268435456 :: SWord64
-  s275 = 134217728 :: SWord64
-  s284 = 67108864 :: SWord64
-  s293 = 33554432 :: SWord64
-  s302 = 16777216 :: SWord64
-  s311 = 8388608 :: SWord64
-  s320 = 4194304 :: SWord64
-  s329 = 2097152 :: SWord64
-  s338 = 1048576 :: SWord64
-  s347 = 524288 :: SWord64
-  s356 = 262144 :: SWord64
-  s365 = 131072 :: SWord64
-  s374 = 65536 :: SWord64
-  s479 = 32768 :: SWord64
-  s488 = 16384 :: SWord64
-  s497 = 8192 :: SWord64
-  s506 = 4096 :: SWord64
-  s515 = 2048 :: SWord64
-  s522 = 1024 :: SWord64
-  s529 = 512 :: SWord64
-  s536 = 256 :: SWord64
-  s543 = 128 :: SWord64
-  s550 = 64 :: SWord64
-  s557 = 32 :: SWord64
-  s564 = 16 :: SWord64
-  s569 = 8 :: SWord64
-  s574 = 4 :: SWord64
-  s579 = 2 :: SWord64
-  s584 = 1 :: SWord64
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s4 :: SBool = s0 == s2
-  s5 :: SBool = s1 == s3
-  s6 :: SBool = s4 & s5
-  s7 :: SBool = ~ s6
-  s8 :: SBool = ~ s7
-  s10 :: SWord32 = s1 # s9
-  s11 :: SWord64 = s0 # s10
-  s13 :: SWord64 = s11 & s12
-  s15 :: SBool = s13 /= s14
-  s17 :: SWord64 = s11 & s16
-  s18 :: SBool = s14 /= s17
-  s20 :: SWord64 = s11 & s19
-  s21 :: SBool = s14 /= s20
-  s23 :: SWord64 = s11 & s22
-  s24 :: SBool = s14 /= s23
-  s26 :: SWord64 = s11 & s25
-  s27 :: SBool = s14 /= s26
-  s28 :: SBool = ~ s27
-  s29 :: SBool = if s15 then s28 else s27
-  s31 :: SWord64 = s11 & s30
-  s32 :: SBool = s14 /= s31
-  s33 :: SBool = ~ s32
-  s34 :: SBool = if s18 then s33 else s32
-  s36 :: SWord64 = s11 & s35
-  s37 :: SBool = s14 /= s36
-  s38 :: SBool = ~ s37
-  s39 :: SBool = if s21 then s38 else s37
-  s41 :: SWord64 = s11 & s40
-  s42 :: SBool = s14 /= s41
-  s43 :: SBool = ~ s42
-  s44 :: SBool = if s24 then s43 else s42
-  s46 :: SWord64 = s11 & s45
-  s47 :: SBool = s14 /= s46
-  s48 :: SBool = ~ s47
-  s49 :: SBool = if s29 then s48 else s47
-  s51 :: SWord64 = s11 & s50
-  s52 :: SBool = s14 /= s51
-  s53 :: SBool = ~ s52
-  s54 :: SBool = if s34 then s53 else s52
-  s56 :: SWord64 = s11 & s55
-  s57 :: SBool = s14 /= s56
-  s58 :: SBool = ~ s57
-  s59 :: SBool = if s39 then s58 else s57
-  s61 :: SWord64 = s11 & s60
-  s62 :: SBool = s14 /= s61
-  s63 :: SBool = ~ s62
-  s64 :: SBool = if s15 then s63 else s62
-  s65 :: SBool = ~ s64
-  s66 :: SBool = if s44 then s65 else s64
-  s68 :: SWord64 = s11 & s67
-  s69 :: SBool = s14 /= s68
-  s70 :: SBool = ~ s69
-  s71 :: SBool = if s18 then s70 else s69
-  s72 :: SBool = ~ s71
-  s73 :: SBool = if s49 then s72 else s71
-  s75 :: SWord64 = s11 & s74
-  s76 :: SBool = s14 /= s75
-  s77 :: SBool = ~ s76
-  s78 :: SBool = if s21 then s77 else s76
-  s79 :: SBool = ~ s78
-  s80 :: SBool = if s54 then s79 else s78
-  s82 :: SWord64 = s11 & s81
-  s83 :: SBool = s14 /= s82
-  s84 :: SBool = ~ s83
-  s85 :: SBool = if s24 then s84 else s83
-  s86 :: SBool = ~ s85
-  s87 :: SBool = if s59 then s86 else s85
-  s89 :: SWord64 = s11 & s88
-  s90 :: SBool = s14 /= s89
-  s91 :: SBool = ~ s90
-  s92 :: SBool = if s29 then s91 else s90
-  s93 :: SBool = ~ s92
-  s94 :: SBool = if s66 then s93 else s92
-  s96 :: SWord64 = s11 & s95
-  s97 :: SBool = s14 /= s96
-  s98 :: SBool = ~ s97
-  s99 :: SBool = if s15 then s98 else s97
-  s100 :: SBool = ~ s99
-  s101 :: SBool = if s34 then s100 else s99
-  s102 :: SBool = ~ s101
-  s103 :: SBool = if s73 then s102 else s101
-  s105 :: SWord64 = s11 & s104
-  s106 :: SBool = s14 /= s105
-  s107 :: SBool = ~ s106
-  s108 :: SBool = if s18 then s107 else s106
-  s109 :: SBool = ~ s108
-  s110 :: SBool = if s39 then s109 else s108
-  s111 :: SBool = ~ s110
-  s112 :: SBool = if s80 then s111 else s110
-  s114 :: SWord64 = s11 & s113
-  s115 :: SBool = s14 /= s114
-  s116 :: SBool = ~ s115
-  s117 :: SBool = if s21 then s116 else s115
-  s118 :: SBool = ~ s117
-  s119 :: SBool = if s44 then s118 else s117
-  s120 :: SBool = ~ s119
-  s121 :: SBool = if s87 then s120 else s119
-  s123 :: SWord64 = s11 & s122
-  s124 :: SBool = s14 /= s123
-  s125 :: SBool = ~ s124
-  s126 :: SBool = if s24 then s125 else s124
-  s127 :: SBool = ~ s126
-  s128 :: SBool = if s49 then s127 else s126
-  s129 :: SBool = ~ s128
-  s130 :: SBool = if s94 then s129 else s128
-  s132 :: SWord64 = s11 & s131
-  s133 :: SBool = s14 /= s132
-  s134 :: SBool = ~ s133
-  s135 :: SBool = if s29 then s134 else s133
-  s136 :: SBool = ~ s135
-  s137 :: SBool = if s54 then s136 else s135
-  s138 :: SBool = ~ s137
-  s139 :: SBool = if s103 then s138 else s137
-  s141 :: SWord64 = s11 & s140
-  s142 :: SBool = s14 /= s141
-  s143 :: SBool = ~ s142
-  s144 :: SBool = if s34 then s143 else s142
-  s145 :: SBool = ~ s144
-  s146 :: SBool = if s59 then s145 else s144
-  s147 :: SBool = ~ s146
-  s148 :: SBool = if s112 then s147 else s146
-  s150 :: SWord64 = s11 & s149
-  s151 :: SBool = s14 /= s150
-  s152 :: SBool = ~ s151
-  s153 :: SBool = if s39 then s152 else s151
-  s154 :: SBool = ~ s153
-  s155 :: SBool = if s66 then s154 else s153
-  s156 :: SBool = ~ s155
-  s157 :: SBool = if s121 then s156 else s155
-  s159 :: SWord64 = s11 & s158
-  s160 :: SBool = s14 /= s159
-  s161 :: SBool = ~ s160
-  s162 :: SBool = if s44 then s161 else s160
-  s163 :: SBool = ~ s162
-  s164 :: SBool = if s73 then s163 else s162
-  s165 :: SBool = ~ s164
-  s166 :: SBool = if s130 then s165 else s164
-  s168 :: SWord64 = s11 & s167
-  s169 :: SBool = s14 /= s168
-  s170 :: SBool = ~ s169
-  s171 :: SBool = if s49 then s170 else s169
-  s172 :: SBool = ~ s171
-  s173 :: SBool = if s80 then s172 else s171
-  s174 :: SBool = ~ s173
-  s175 :: SBool = if s139 then s174 else s173
-  s177 :: SWord64 = s11 & s176
-  s178 :: SBool = s14 /= s177
-  s179 :: SBool = ~ s178
-  s180 :: SBool = if s54 then s179 else s178
-  s181 :: SBool = ~ s180
-  s182 :: SBool = if s87 then s181 else s180
-  s183 :: SBool = ~ s182
-  s184 :: SBool = if s148 then s183 else s182
-  s186 :: SWord64 = s11 & s185
-  s187 :: SBool = s14 /= s186
-  s188 :: SBool = ~ s187
-  s189 :: SBool = if s59 then s188 else s187
-  s190 :: SBool = ~ s189
-  s191 :: SBool = if s94 then s190 else s189
-  s192 :: SBool = ~ s191
-  s193 :: SBool = if s157 then s192 else s191
-  s195 :: SWord64 = s11 & s194
-  s196 :: SBool = s14 /= s195
-  s197 :: SBool = ~ s196
-  s198 :: SBool = if s66 then s197 else s196
-  s199 :: SBool = ~ s198
-  s200 :: SBool = if s103 then s199 else s198
-  s201 :: SBool = ~ s200
-  s202 :: SBool = if s166 then s201 else s200
-  s204 :: SWord64 = s11 & s203
-  s205 :: SBool = s14 /= s204
-  s206 :: SBool = ~ s205
-  s207 :: SBool = if s73 then s206 else s205
-  s208 :: SBool = ~ s207
-  s209 :: SBool = if s112 then s208 else s207
-  s210 :: SBool = ~ s209
-  s211 :: SBool = if s175 then s210 else s209
-  s213 :: SWord64 = s11 & s212
-  s214 :: SBool = s14 /= s213
-  s215 :: SBool = ~ s214
-  s216 :: SBool = if s80 then s215 else s214
-  s217 :: SBool = ~ s216
-  s218 :: SBool = if s121 then s217 else s216
-  s219 :: SBool = ~ s218
-  s220 :: SBool = if s184 then s219 else s218
-  s222 :: SWord64 = s11 & s221
-  s223 :: SBool = s14 /= s222
-  s224 :: SBool = ~ s223
-  s225 :: SBool = if s87 then s224 else s223
-  s226 :: SBool = ~ s225
-  s227 :: SBool = if s130 then s226 else s225
-  s228 :: SBool = ~ s227
-  s229 :: SBool = if s193 then s228 else s227
-  s231 :: SWord64 = s11 & s230
-  s232 :: SBool = s14 /= s231
-  s233 :: SBool = ~ s232
-  s234 :: SBool = if s94 then s233 else s232
-  s235 :: SBool = ~ s234
-  s236 :: SBool = if s139 then s235 else s234
-  s237 :: SBool = ~ s236
-  s238 :: SBool = if s202 then s237 else s236
-  s240 :: SWord64 = s11 & s239
-  s241 :: SBool = s14 /= s240
-  s242 :: SBool = ~ s241
-  s243 :: SBool = if s103 then s242 else s241
-  s244 :: SBool = ~ s243
-  s245 :: SBool = if s148 then s244 else s243
-  s246 :: SBool = ~ s245
-  s247 :: SBool = if s211 then s246 else s245
-  s249 :: SWord64 = s11 & s248
-  s250 :: SBool = s14 /= s249
-  s251 :: SBool = ~ s250
-  s252 :: SBool = if s112 then s251 else s250
-  s253 :: SBool = ~ s252
-  s254 :: SBool = if s157 then s253 else s252
-  s255 :: SBool = ~ s254
-  s256 :: SBool = if s220 then s255 else s254
-  s258 :: SWord64 = s11 & s257
-  s259 :: SBool = s14 /= s258
-  s260 :: SBool = ~ s259
-  s261 :: SBool = if s121 then s260 else s259
-  s262 :: SBool = ~ s261
-  s263 :: SBool = if s166 then s262 else s261
-  s264 :: SBool = ~ s263
-  s265 :: SBool = if s229 then s264 else s263
-  s267 :: SWord64 = s11 & s266
-  s268 :: SBool = s14 /= s267
-  s269 :: SBool = ~ s268
-  s270 :: SBool = if s130 then s269 else s268
-  s271 :: SBool = ~ s270
-  s272 :: SBool = if s175 then s271 else s270
-  s273 :: SBool = ~ s272
-  s274 :: SBool = if s238 then s273 else s272
-  s276 :: SWord64 = s11 & s275
-  s277 :: SBool = s14 /= s276
-  s278 :: SBool = ~ s277
-  s279 :: SBool = if s139 then s278 else s277
-  s280 :: SBool = ~ s279
-  s281 :: SBool = if s184 then s280 else s279
-  s282 :: SBool = ~ s281
-  s283 :: SBool = if s247 then s282 else s281
-  s285 :: SWord64 = s11 & s284
-  s286 :: SBool = s14 /= s285
-  s287 :: SBool = ~ s286
-  s288 :: SBool = if s148 then s287 else s286
-  s289 :: SBool = ~ s288
-  s290 :: SBool = if s193 then s289 else s288
-  s291 :: SBool = ~ s290
-  s292 :: SBool = if s256 then s291 else s290
-  s294 :: SWord64 = s11 & s293
-  s295 :: SBool = s14 /= s294
-  s296 :: SBool = ~ s295
-  s297 :: SBool = if s157 then s296 else s295
-  s298 :: SBool = ~ s297
-  s299 :: SBool = if s202 then s298 else s297
-  s300 :: SBool = ~ s299
-  s301 :: SBool = if s265 then s300 else s299
-  s303 :: SWord64 = s11 & s302
-  s304 :: SBool = s14 /= s303
-  s305 :: SBool = ~ s304
-  s306 :: SBool = if s166 then s305 else s304
-  s307 :: SBool = ~ s306
-  s308 :: SBool = if s211 then s307 else s306
-  s309 :: SBool = ~ s308
-  s310 :: SBool = if s274 then s309 else s308
-  s312 :: SWord64 = s11 & s311
-  s313 :: SBool = s14 /= s312
-  s314 :: SBool = ~ s313
-  s315 :: SBool = if s175 then s314 else s313
-  s316 :: SBool = ~ s315
-  s317 :: SBool = if s220 then s316 else s315
-  s318 :: SBool = ~ s317
-  s319 :: SBool = if s283 then s318 else s317
-  s321 :: SWord64 = s11 & s320
-  s322 :: SBool = s14 /= s321
-  s323 :: SBool = ~ s322
-  s324 :: SBool = if s184 then s323 else s322
-  s325 :: SBool = ~ s324
-  s326 :: SBool = if s229 then s325 else s324
-  s327 :: SBool = ~ s326
-  s328 :: SBool = if s292 then s327 else s326
-  s330 :: SWord64 = s11 & s329
-  s331 :: SBool = s14 /= s330
-  s332 :: SBool = ~ s331
-  s333 :: SBool = if s193 then s332 else s331
-  s334 :: SBool = ~ s333
-  s335 :: SBool = if s238 then s334 else s333
-  s336 :: SBool = ~ s335
-  s337 :: SBool = if s301 then s336 else s335
-  s339 :: SWord64 = s11 & s338
-  s340 :: SBool = s14 /= s339
-  s341 :: SBool = ~ s340
-  s342 :: SBool = if s202 then s341 else s340
-  s343 :: SBool = ~ s342
-  s344 :: SBool = if s247 then s343 else s342
-  s345 :: SBool = ~ s344
-  s346 :: SBool = if s310 then s345 else s344
-  s348 :: SWord64 = s11 & s347
-  s349 :: SBool = s14 /= s348
-  s350 :: SBool = ~ s349
-  s351 :: SBool = if s211 then s350 else s349
-  s352 :: SBool = ~ s351
-  s353 :: SBool = if s256 then s352 else s351
-  s354 :: SBool = ~ s353
-  s355 :: SBool = if s319 then s354 else s353
-  s357 :: SWord64 = s11 & s356
-  s358 :: SBool = s14 /= s357
-  s359 :: SBool = ~ s358
-  s360 :: SBool = if s220 then s359 else s358
-  s361 :: SBool = ~ s360
-  s362 :: SBool = if s265 then s361 else s360
-  s363 :: SBool = ~ s362
-  s364 :: SBool = if s328 then s363 else s362
-  s366 :: SWord64 = s11 & s365
-  s367 :: SBool = s14 /= s366
-  s368 :: SBool = ~ s367
-  s369 :: SBool = if s229 then s368 else s367
-  s370 :: SBool = ~ s369
-  s371 :: SBool = if s274 then s370 else s369
-  s372 :: SBool = ~ s371
-  s373 :: SBool = if s337 then s372 else s371
-  s375 :: SWord64 = s11 & s374
-  s376 :: SBool = s14 /= s375
-  s377 :: SBool = ~ s376
-  s378 :: SBool = if s238 then s377 else s376
-  s379 :: SBool = ~ s378
-  s380 :: SBool = if s283 then s379 else s378
-  s381 :: SBool = ~ s380
-  s382 :: SBool = if s346 then s381 else s380
-  s383 :: SBool = ~ s15
-  s384 :: SBool = if s15 then s383 else s15
-  s385 :: SBool = ~ s18
-  s386 :: SBool = if s18 then s385 else s18
-  s387 :: SBool = ~ s21
-  s388 :: SBool = if s21 then s387 else s21
-  s389 :: SBool = ~ s24
-  s390 :: SBool = if s24 then s389 else s24
-  s391 :: SBool = ~ s29
-  s392 :: SBool = if s29 then s391 else s29
-  s393 :: SBool = ~ s34
-  s394 :: SBool = if s34 then s393 else s34
-  s395 :: SBool = ~ s39
-  s396 :: SBool = if s39 then s395 else s39
-  s397 :: SBool = ~ s44
-  s398 :: SBool = if s44 then s397 else s44
-  s399 :: SBool = ~ s49
-  s400 :: SBool = if s49 then s399 else s49
-  s401 :: SBool = ~ s54
-  s402 :: SBool = if s54 then s401 else s54
-  s403 :: SBool = ~ s59
-  s404 :: SBool = if s59 then s403 else s59
-  s405 :: SBool = ~ s66
-  s406 :: SBool = if s66 then s405 else s66
-  s407 :: SBool = ~ s73
-  s408 :: SBool = if s73 then s407 else s73
-  s409 :: SBool = ~ s80
-  s410 :: SBool = if s80 then s409 else s80
-  s411 :: SBool = ~ s87
-  s412 :: SBool = if s87 then s411 else s87
-  s413 :: SBool = ~ s94
-  s414 :: SBool = if s94 then s413 else s94
-  s415 :: SBool = ~ s103
-  s416 :: SBool = if s103 then s415 else s103
-  s417 :: SBool = ~ s112
-  s418 :: SBool = if s112 then s417 else s112
-  s419 :: SBool = ~ s121
-  s420 :: SBool = if s121 then s419 else s121
-  s421 :: SBool = ~ s130
-  s422 :: SBool = if s130 then s421 else s130
-  s423 :: SBool = ~ s139
-  s424 :: SBool = if s139 then s423 else s139
-  s425 :: SBool = ~ s148
-  s426 :: SBool = if s148 then s425 else s148
-  s427 :: SBool = ~ s157
-  s428 :: SBool = if s157 then s427 else s157
-  s429 :: SBool = ~ s166
-  s430 :: SBool = if s166 then s429 else s166
-  s431 :: SBool = ~ s175
-  s432 :: SBool = if s175 then s431 else s175
-  s433 :: SBool = ~ s184
-  s434 :: SBool = if s184 then s433 else s184
-  s435 :: SBool = ~ s193
-  s436 :: SBool = if s193 then s435 else s193
-  s437 :: SBool = ~ s202
-  s438 :: SBool = if s202 then s437 else s202
-  s439 :: SBool = ~ s211
-  s440 :: SBool = if s211 then s439 else s211
-  s441 :: SBool = ~ s220
-  s442 :: SBool = if s220 then s441 else s220
-  s443 :: SBool = ~ s229
-  s444 :: SBool = if s229 then s443 else s229
-  s445 :: SBool = ~ s238
-  s446 :: SBool = if s238 then s445 else s238
-  s447 :: SBool = ~ s247
-  s448 :: SBool = if s247 then s447 else s247
-  s449 :: SBool = ~ s256
-  s450 :: SBool = if s256 then s449 else s256
-  s451 :: SBool = ~ s265
-  s452 :: SBool = if s265 then s451 else s265
-  s453 :: SBool = ~ s274
-  s454 :: SBool = if s274 then s453 else s274
-  s455 :: SBool = ~ s283
-  s456 :: SBool = if s283 then s455 else s283
-  s457 :: SBool = ~ s292
-  s458 :: SBool = if s292 then s457 else s292
-  s459 :: SBool = ~ s301
-  s460 :: SBool = if s301 then s459 else s301
-  s461 :: SBool = ~ s310
-  s462 :: SBool = if s310 then s461 else s310
-  s463 :: SBool = ~ s319
-  s464 :: SBool = if s319 then s463 else s319
-  s465 :: SBool = ~ s328
-  s466 :: SBool = if s328 then s465 else s328
-  s467 :: SBool = ~ s337
-  s468 :: SBool = if s337 then s467 else s337
-  s469 :: SBool = ~ s346
-  s470 :: SBool = if s346 then s469 else s346
-  s471 :: SBool = ~ s355
-  s472 :: SBool = if s355 then s471 else s355
-  s473 :: SBool = ~ s364
-  s474 :: SBool = if s364 then s473 else s364
-  s475 :: SBool = ~ s373
-  s476 :: SBool = if s373 then s475 else s373
-  s477 :: SBool = ~ s382
-  s478 :: SBool = if s382 then s477 else s382
-  s480 :: SWord64 = s11 & s479
-  s481 :: SBool = s14 /= s480
-  s482 :: SBool = ~ s481
-  s483 :: SBool = if s247 then s482 else s481
-  s484 :: SBool = ~ s483
-  s485 :: SBool = if s292 then s484 else s483
-  s486 :: SBool = ~ s485
-  s487 :: SBool = if s355 then s486 else s485
-  s489 :: SWord64 = s11 & s488
-  s490 :: SBool = s14 /= s489
-  s491 :: SBool = ~ s490
-  s492 :: SBool = if s256 then s491 else s490
-  s493 :: SBool = ~ s492
-  s494 :: SBool = if s301 then s493 else s492
-  s495 :: SBool = ~ s494
-  s496 :: SBool = if s364 then s495 else s494
-  s498 :: SWord64 = s11 & s497
-  s499 :: SBool = s14 /= s498
-  s500 :: SBool = ~ s499
-  s501 :: SBool = if s265 then s500 else s499
-  s502 :: SBool = ~ s501
-  s503 :: SBool = if s310 then s502 else s501
-  s504 :: SBool = ~ s503
-  s505 :: SBool = if s373 then s504 else s503
-  s507 :: SWord64 = s11 & s506
-  s508 :: SBool = s14 /= s507
-  s509 :: SBool = ~ s508
-  s510 :: SBool = if s274 then s509 else s508
-  s511 :: SBool = ~ s510
-  s512 :: SBool = if s319 then s511 else s510
-  s513 :: SBool = ~ s512
-  s514 :: SBool = if s382 then s513 else s512
-  s516 :: SWord64 = s11 & s515
-  s517 :: SBool = s14 /= s516
-  s518 :: SBool = ~ s517
-  s519 :: SBool = if s283 then s518 else s517
-  s520 :: SBool = ~ s519
-  s521 :: SBool = if s328 then s520 else s519
-  s523 :: SWord64 = s11 & s522
-  s524 :: SBool = s14 /= s523
-  s525 :: SBool = ~ s524
-  s526 :: SBool = if s292 then s525 else s524
-  s527 :: SBool = ~ s526
-  s528 :: SBool = if s337 then s527 else s526
-  s530 :: SWord64 = s11 & s529
-  s531 :: SBool = s14 /= s530
-  s532 :: SBool = ~ s531
-  s533 :: SBool = if s301 then s532 else s531
-  s534 :: SBool = ~ s533
-  s535 :: SBool = if s346 then s534 else s533
-  s537 :: SWord64 = s11 & s536
-  s538 :: SBool = s14 /= s537
-  s539 :: SBool = ~ s538
-  s540 :: SBool = if s310 then s539 else s538
-  s541 :: SBool = ~ s540
-  s542 :: SBool = if s355 then s541 else s540
-  s544 :: SWord64 = s11 & s543
-  s545 :: SBool = s14 /= s544
-  s546 :: SBool = ~ s545
-  s547 :: SBool = if s319 then s546 else s545
-  s548 :: SBool = ~ s547
-  s549 :: SBool = if s364 then s548 else s547
-  s551 :: SWord64 = s11 & s550
-  s552 :: SBool = s14 /= s551
-  s553 :: SBool = ~ s552
-  s554 :: SBool = if s328 then s553 else s552
-  s555 :: SBool = ~ s554
-  s556 :: SBool = if s373 then s555 else s554
-  s558 :: SWord64 = s11 & s557
-  s559 :: SBool = s14 /= s558
-  s560 :: SBool = ~ s559
-  s561 :: SBool = if s337 then s560 else s559
-  s562 :: SBool = ~ s561
-  s563 :: SBool = if s382 then s562 else s561
-  s565 :: SWord64 = s11 & s564
-  s566 :: SBool = s14 /= s565
-  s567 :: SBool = ~ s566
-  s568 :: SBool = if s346 then s567 else s566
-  s570 :: SWord64 = s11 & s569
-  s571 :: SBool = s14 /= s570
-  s572 :: SBool = ~ s571
-  s573 :: SBool = if s355 then s572 else s571
-  s575 :: SWord64 = s11 & s574
-  s576 :: SBool = s14 /= s575
-  s577 :: SBool = ~ s576
-  s578 :: SBool = if s364 then s577 else s576
-  s580 :: SWord64 = s11 & s579
-  s581 :: SBool = s14 /= s580
-  s582 :: SBool = ~ s581
-  s583 :: SBool = if s373 then s582 else s581
-  s585 :: SWord64 = s11 & s584
-  s586 :: SBool = s14 /= s585
-  s587 :: SBool = ~ s586
-  s588 :: SBool = if s382 then s587 else s586
-  s589 :: SWord64 = if s588 then s584 else s14
-  s590 :: SWord64 = s579 | s589
-  s591 :: SWord64 = if s583 then s590 else s589
-  s592 :: SWord64 = s574 | s591
-  s593 :: SWord64 = if s578 then s592 else s591
-  s594 :: SWord64 = s569 | s593
-  s595 :: SWord64 = if s573 then s594 else s593
-  s596 :: SWord64 = s564 | s595
-  s597 :: SWord64 = if s568 then s596 else s595
-  s598 :: SWord64 = s557 | s597
-  s599 :: SWord64 = if s563 then s598 else s597
-  s600 :: SWord64 = s550 | s599
-  s601 :: SWord64 = if s556 then s600 else s599
-  s602 :: SWord64 = s543 | s601
-  s603 :: SWord64 = if s549 then s602 else s601
-  s604 :: SWord64 = s536 | s603
-  s605 :: SWord64 = if s542 then s604 else s603
-  s606 :: SWord64 = s529 | s605
-  s607 :: SWord64 = if s535 then s606 else s605
-  s608 :: SWord64 = s522 | s607
-  s609 :: SWord64 = if s528 then s608 else s607
-  s610 :: SWord64 = s515 | s609
-  s611 :: SWord64 = if s521 then s610 else s609
-  s612 :: SWord64 = s506 | s611
-  s613 :: SWord64 = if s514 then s612 else s611
-  s614 :: SWord64 = s497 | s613
-  s615 :: SWord64 = if s505 then s614 else s613
-  s616 :: SWord64 = s488 | s615
-  s617 :: SWord64 = if s496 then s616 else s615
-  s618 :: SWord64 = s479 | s617
-  s619 :: SWord64 = if s487 then s618 else s617
-  s620 :: SWord64 = s374 | s619
-  s621 :: SWord64 = if s478 then s620 else s619
-  s622 :: SWord64 = s365 | s621
-  s623 :: SWord64 = if s476 then s622 else s621
-  s624 :: SWord64 = s356 | s623
-  s625 :: SWord64 = if s474 then s624 else s623
-  s626 :: SWord64 = s347 | s625
-  s627 :: SWord64 = if s472 then s626 else s625
-  s628 :: SWord64 = s338 | s627
-  s629 :: SWord64 = if s470 then s628 else s627
-  s630 :: SWord64 = s329 | s629
-  s631 :: SWord64 = if s468 then s630 else s629
-  s632 :: SWord64 = s320 | s631
-  s633 :: SWord64 = if s466 then s632 else s631
-  s634 :: SWord64 = s311 | s633
-  s635 :: SWord64 = if s464 then s634 else s633
-  s636 :: SWord64 = s302 | s635
-  s637 :: SWord64 = if s462 then s636 else s635
-  s638 :: SWord64 = s293 | s637
-  s639 :: SWord64 = if s460 then s638 else s637
-  s640 :: SWord64 = s284 | s639
-  s641 :: SWord64 = if s458 then s640 else s639
-  s642 :: SWord64 = s275 | s641
-  s643 :: SWord64 = if s456 then s642 else s641
-  s644 :: SWord64 = s266 | s643
-  s645 :: SWord64 = if s454 then s644 else s643
-  s646 :: SWord64 = s257 | s645
-  s647 :: SWord64 = if s452 then s646 else s645
-  s648 :: SWord64 = s248 | s647
-  s649 :: SWord64 = if s450 then s648 else s647
-  s650 :: SWord64 = s239 | s649
-  s651 :: SWord64 = if s448 then s650 else s649
-  s652 :: SWord64 = s230 | s651
-  s653 :: SWord64 = if s446 then s652 else s651
-  s654 :: SWord64 = s221 | s653
-  s655 :: SWord64 = if s444 then s654 else s653
-  s656 :: SWord64 = s212 | s655
-  s657 :: SWord64 = if s442 then s656 else s655
-  s658 :: SWord64 = s203 | s657
-  s659 :: SWord64 = if s440 then s658 else s657
-  s660 :: SWord64 = s194 | s659
-  s661 :: SWord64 = if s438 then s660 else s659
-  s662 :: SWord64 = s185 | s661
-  s663 :: SWord64 = if s436 then s662 else s661
-  s664 :: SWord64 = s176 | s663
-  s665 :: SWord64 = if s434 then s664 else s663
-  s666 :: SWord64 = s167 | s665
-  s667 :: SWord64 = if s432 then s666 else s665
-  s668 :: SWord64 = s158 | s667
-  s669 :: SWord64 = if s430 then s668 else s667
-  s670 :: SWord64 = s149 | s669
-  s671 :: SWord64 = if s428 then s670 else s669
-  s672 :: SWord64 = s140 | s671
-  s673 :: SWord64 = if s426 then s672 else s671
-  s674 :: SWord64 = s131 | s673
-  s675 :: SWord64 = if s424 then s674 else s673
-  s676 :: SWord64 = s122 | s675
-  s677 :: SWord64 = if s422 then s676 else s675
-  s678 :: SWord64 = s113 | s677
-  s679 :: SWord64 = if s420 then s678 else s677
-  s680 :: SWord64 = s104 | s679
-  s681 :: SWord64 = if s418 then s680 else s679
-  s682 :: SWord64 = s95 | s681
-  s683 :: SWord64 = if s416 then s682 else s681
-  s684 :: SWord64 = s88 | s683
-  s685 :: SWord64 = if s414 then s684 else s683
-  s686 :: SWord64 = s81 | s685
-  s687 :: SWord64 = if s412 then s686 else s685
-  s688 :: SWord64 = s74 | s687
-  s689 :: SWord64 = if s410 then s688 else s687
-  s690 :: SWord64 = s67 | s689
-  s691 :: SWord64 = if s408 then s690 else s689
-  s692 :: SWord64 = s60 | s691
-  s693 :: SWord64 = if s406 then s692 else s691
-  s694 :: SWord64 = s55 | s693
-  s695 :: SWord64 = if s404 then s694 else s693
-  s696 :: SWord64 = s50 | s695
-  s697 :: SWord64 = if s402 then s696 else s695
-  s698 :: SWord64 = s45 | s697
-  s699 :: SWord64 = if s400 then s698 else s697
-  s700 :: SWord64 = s40 | s699
-  s701 :: SWord64 = if s398 then s700 else s699
-  s702 :: SWord64 = s35 | s701
-  s703 :: SWord64 = if s396 then s702 else s701
-  s704 :: SWord64 = s30 | s703
-  s705 :: SWord64 = if s394 then s704 else s703
-  s706 :: SWord64 = s25 | s705
-  s707 :: SWord64 = if s392 then s706 else s705
-  s708 :: SWord64 = s22 | s707
-  s709 :: SWord64 = if s390 then s708 else s707
-  s710 :: SWord64 = s19 | s709
-  s711 :: SWord64 = if s388 then s710 else s709
-  s712 :: SWord64 = s16 | s711
-  s713 :: SWord64 = if s386 then s712 else s711
-  s714 :: SWord64 = s12 | s713
-  s715 :: SWord64 = if s384 then s714 else s713
-  s716 :: SWord32 = choose [31:0] s715
-  s717 :: SWord16 = choose [15:0] s716
-  s718 :: SWord32 = s1 # s717
-  s719 :: SWord64 = s0 # s718
-  s720 :: SWord64 = s584 & s719
-  s721 :: SBool = s14 /= s720
-  s722 :: SWord32 = s3 # s9
-  s723 :: SWord64 = s2 # s722
-  s724 :: SWord64 = s12 & s723
-  s725 :: SBool = s14 /= s724
-  s726 :: SWord64 = s16 & s723
-  s727 :: SBool = s14 /= s726
-  s728 :: SWord64 = s19 & s723
-  s729 :: SBool = s14 /= s728
-  s730 :: SWord64 = s22 & s723
-  s731 :: SBool = s14 /= s730
-  s732 :: SWord64 = s25 & s723
-  s733 :: SBool = s14 /= s732
-  s734 :: SBool = ~ s733
-  s735 :: SBool = if s725 then s734 else s733
-  s736 :: SWord64 = s30 & s723
-  s737 :: SBool = s14 /= s736
-  s738 :: SBool = ~ s737
-  s739 :: SBool = if s727 then s738 else s737
-  s740 :: SWord64 = s35 & s723
-  s741 :: SBool = s14 /= s740
-  s742 :: SBool = ~ s741
-  s743 :: SBool = if s729 then s742 else s741
-  s744 :: SWord64 = s40 & s723
-  s745 :: SBool = s14 /= s744
-  s746 :: SBool = ~ s745
-  s747 :: SBool = if s731 then s746 else s745
-  s748 :: SWord64 = s45 & s723
-  s749 :: SBool = s14 /= s748
-  s750 :: SBool = ~ s749
-  s751 :: SBool = if s735 then s750 else s749
-  s752 :: SWord64 = s50 & s723
-  s753 :: SBool = s14 /= s752
-  s754 :: SBool = ~ s753
-  s755 :: SBool = if s739 then s754 else s753
-  s756 :: SWord64 = s55 & s723
-  s757 :: SBool = s14 /= s756
-  s758 :: SBool = ~ s757
-  s759 :: SBool = if s743 then s758 else s757
-  s760 :: SWord64 = s60 & s723
-  s761 :: SBool = s14 /= s760
-  s762 :: SBool = ~ s761
-  s763 :: SBool = if s725 then s762 else s761
-  s764 :: SBool = ~ s763
-  s765 :: SBool = if s747 then s764 else s763
-  s766 :: SWord64 = s67 & s723
-  s767 :: SBool = s14 /= s766
-  s768 :: SBool = ~ s767
-  s769 :: SBool = if s727 then s768 else s767
-  s770 :: SBool = ~ s769
-  s771 :: SBool = if s751 then s770 else s769
-  s772 :: SWord64 = s74 & s723
-  s773 :: SBool = s14 /= s772
-  s774 :: SBool = ~ s773
-  s775 :: SBool = if s729 then s774 else s773
-  s776 :: SBool = ~ s775
-  s777 :: SBool = if s755 then s776 else s775
-  s778 :: SWord64 = s81 & s723
-  s779 :: SBool = s14 /= s778
-  s780 :: SBool = ~ s779
-  s781 :: SBool = if s731 then s780 else s779
-  s782 :: SBool = ~ s781
-  s783 :: SBool = if s759 then s782 else s781
-  s784 :: SWord64 = s88 & s723
-  s785 :: SBool = s14 /= s784
-  s786 :: SBool = ~ s785
-  s787 :: SBool = if s735 then s786 else s785
-  s788 :: SBool = ~ s787
-  s789 :: SBool = if s765 then s788 else s787
-  s790 :: SWord64 = s95 & s723
-  s791 :: SBool = s14 /= s790
-  s792 :: SBool = ~ s791
-  s793 :: SBool = if s725 then s792 else s791
-  s794 :: SBool = ~ s793
-  s795 :: SBool = if s739 then s794 else s793
-  s796 :: SBool = ~ s795
-  s797 :: SBool = if s771 then s796 else s795
-  s798 :: SWord64 = s104 & s723
-  s799 :: SBool = s14 /= s798
-  s800 :: SBool = ~ s799
-  s801 :: SBool = if s727 then s800 else s799
-  s802 :: SBool = ~ s801
-  s803 :: SBool = if s743 then s802 else s801
-  s804 :: SBool = ~ s803
-  s805 :: SBool = if s777 then s804 else s803
-  s806 :: SWord64 = s113 & s723
-  s807 :: SBool = s14 /= s806
-  s808 :: SBool = ~ s807
-  s809 :: SBool = if s729 then s808 else s807
-  s810 :: SBool = ~ s809
-  s811 :: SBool = if s747 then s810 else s809
-  s812 :: SBool = ~ s811
-  s813 :: SBool = if s783 then s812 else s811
-  s814 :: SWord64 = s122 & s723
-  s815 :: SBool = s14 /= s814
-  s816 :: SBool = ~ s815
-  s817 :: SBool = if s731 then s816 else s815
-  s818 :: SBool = ~ s817
-  s819 :: SBool = if s751 then s818 else s817
-  s820 :: SBool = ~ s819
-  s821 :: SBool = if s789 then s820 else s819
-  s822 :: SWord64 = s131 & s723
-  s823 :: SBool = s14 /= s822
-  s824 :: SBool = ~ s823
-  s825 :: SBool = if s735 then s824 else s823
-  s826 :: SBool = ~ s825
-  s827 :: SBool = if s755 then s826 else s825
-  s828 :: SBool = ~ s827
-  s829 :: SBool = if s797 then s828 else s827
-  s830 :: SWord64 = s140 & s723
-  s831 :: SBool = s14 /= s830
-  s832 :: SBool = ~ s831
-  s833 :: SBool = if s739 then s832 else s831
-  s834 :: SBool = ~ s833
-  s835 :: SBool = if s759 then s834 else s833
-  s836 :: SBool = ~ s835
-  s837 :: SBool = if s805 then s836 else s835
-  s838 :: SWord64 = s149 & s723
-  s839 :: SBool = s14 /= s838
-  s840 :: SBool = ~ s839
-  s841 :: SBool = if s743 then s840 else s839
-  s842 :: SBool = ~ s841
-  s843 :: SBool = if s765 then s842 else s841
-  s844 :: SBool = ~ s843
-  s845 :: SBool = if s813 then s844 else s843
-  s846 :: SWord64 = s158 & s723
-  s847 :: SBool = s14 /= s846
-  s848 :: SBool = ~ s847
-  s849 :: SBool = if s747 then s848 else s847
-  s850 :: SBool = ~ s849
-  s851 :: SBool = if s771 then s850 else s849
-  s852 :: SBool = ~ s851
-  s853 :: SBool = if s821 then s852 else s851
-  s854 :: SWord64 = s167 & s723
-  s855 :: SBool = s14 /= s854
-  s856 :: SBool = ~ s855
-  s857 :: SBool = if s751 then s856 else s855
-  s858 :: SBool = ~ s857
-  s859 :: SBool = if s777 then s858 else s857
-  s860 :: SBool = ~ s859
-  s861 :: SBool = if s829 then s860 else s859
-  s862 :: SWord64 = s176 & s723
-  s863 :: SBool = s14 /= s862
-  s864 :: SBool = ~ s863
-  s865 :: SBool = if s755 then s864 else s863
-  s866 :: SBool = ~ s865
-  s867 :: SBool = if s783 then s866 else s865
-  s868 :: SBool = ~ s867
-  s869 :: SBool = if s837 then s868 else s867
-  s870 :: SWord64 = s185 & s723
-  s871 :: SBool = s14 /= s870
-  s872 :: SBool = ~ s871
-  s873 :: SBool = if s759 then s872 else s871
-  s874 :: SBool = ~ s873
-  s875 :: SBool = if s789 then s874 else s873
-  s876 :: SBool = ~ s875
-  s877 :: SBool = if s845 then s876 else s875
-  s878 :: SWord64 = s194 & s723
-  s879 :: SBool = s14 /= s878
-  s880 :: SBool = ~ s879
-  s881 :: SBool = if s765 then s880 else s879
-  s882 :: SBool = ~ s881
-  s883 :: SBool = if s797 then s882 else s881
-  s884 :: SBool = ~ s883
-  s885 :: SBool = if s853 then s884 else s883
-  s886 :: SWord64 = s203 & s723
-  s887 :: SBool = s14 /= s886
-  s888 :: SBool = ~ s887
-  s889 :: SBool = if s771 then s888 else s887
-  s890 :: SBool = ~ s889
-  s891 :: SBool = if s805 then s890 else s889
-  s892 :: SBool = ~ s891
-  s893 :: SBool = if s861 then s892 else s891
-  s894 :: SWord64 = s212 & s723
-  s895 :: SBool = s14 /= s894
-  s896 :: SBool = ~ s895
-  s897 :: SBool = if s777 then s896 else s895
-  s898 :: SBool = ~ s897
-  s899 :: SBool = if s813 then s898 else s897
-  s900 :: SBool = ~ s899
-  s901 :: SBool = if s869 then s900 else s899
-  s902 :: SWord64 = s221 & s723
-  s903 :: SBool = s14 /= s902
-  s904 :: SBool = ~ s903
-  s905 :: SBool = if s783 then s904 else s903
-  s906 :: SBool = ~ s905
-  s907 :: SBool = if s821 then s906 else s905
-  s908 :: SBool = ~ s907
-  s909 :: SBool = if s877 then s908 else s907
-  s910 :: SWord64 = s230 & s723
-  s911 :: SBool = s14 /= s910
-  s912 :: SBool = ~ s911
-  s913 :: SBool = if s789 then s912 else s911
-  s914 :: SBool = ~ s913
-  s915 :: SBool = if s829 then s914 else s913
-  s916 :: SBool = ~ s915
-  s917 :: SBool = if s885 then s916 else s915
-  s918 :: SWord64 = s239 & s723
-  s919 :: SBool = s14 /= s918
-  s920 :: SBool = ~ s919
-  s921 :: SBool = if s797 then s920 else s919
-  s922 :: SBool = ~ s921
-  s923 :: SBool = if s837 then s922 else s921
-  s924 :: SBool = ~ s923
-  s925 :: SBool = if s893 then s924 else s923
-  s926 :: SWord64 = s248 & s723
-  s927 :: SBool = s14 /= s926
-  s928 :: SBool = ~ s927
-  s929 :: SBool = if s805 then s928 else s927
-  s930 :: SBool = ~ s929
-  s931 :: SBool = if s845 then s930 else s929
-  s932 :: SBool = ~ s931
-  s933 :: SBool = if s901 then s932 else s931
-  s934 :: SWord64 = s257 & s723
-  s935 :: SBool = s14 /= s934
-  s936 :: SBool = ~ s935
-  s937 :: SBool = if s813 then s936 else s935
-  s938 :: SBool = ~ s937
-  s939 :: SBool = if s853 then s938 else s937
-  s940 :: SBool = ~ s939
-  s941 :: SBool = if s909 then s940 else s939
-  s942 :: SWord64 = s266 & s723
-  s943 :: SBool = s14 /= s942
-  s944 :: SBool = ~ s943
-  s945 :: SBool = if s821 then s944 else s943
-  s946 :: SBool = ~ s945
-  s947 :: SBool = if s861 then s946 else s945
-  s948 :: SBool = ~ s947
-  s949 :: SBool = if s917 then s948 else s947
-  s950 :: SWord64 = s275 & s723
-  s951 :: SBool = s14 /= s950
-  s952 :: SBool = ~ s951
-  s953 :: SBool = if s829 then s952 else s951
-  s954 :: SBool = ~ s953
-  s955 :: SBool = if s869 then s954 else s953
-  s956 :: SBool = ~ s955
-  s957 :: SBool = if s925 then s956 else s955
-  s958 :: SWord64 = s284 & s723
-  s959 :: SBool = s14 /= s958
-  s960 :: SBool = ~ s959
-  s961 :: SBool = if s837 then s960 else s959
-  s962 :: SBool = ~ s961
-  s963 :: SBool = if s877 then s962 else s961
-  s964 :: SBool = ~ s963
-  s965 :: SBool = if s933 then s964 else s963
-  s966 :: SWord64 = s293 & s723
-  s967 :: SBool = s14 /= s966
-  s968 :: SBool = ~ s967
-  s969 :: SBool = if s845 then s968 else s967
-  s970 :: SBool = ~ s969
-  s971 :: SBool = if s885 then s970 else s969
-  s972 :: SBool = ~ s971
-  s973 :: SBool = if s941 then s972 else s971
-  s974 :: SWord64 = s302 & s723
-  s975 :: SBool = s14 /= s974
-  s976 :: SBool = ~ s975
-  s977 :: SBool = if s853 then s976 else s975
-  s978 :: SBool = ~ s977
-  s979 :: SBool = if s893 then s978 else s977
-  s980 :: SBool = ~ s979
-  s981 :: SBool = if s949 then s980 else s979
-  s982 :: SWord64 = s311 & s723
-  s983 :: SBool = s14 /= s982
-  s984 :: SBool = ~ s983
-  s985 :: SBool = if s861 then s984 else s983
-  s986 :: SBool = ~ s985
-  s987 :: SBool = if s901 then s986 else s985
-  s988 :: SBool = ~ s987
-  s989 :: SBool = if s957 then s988 else s987
-  s990 :: SWord64 = s320 & s723
-  s991 :: SBool = s14 /= s990
-  s992 :: SBool = ~ s991
-  s993 :: SBool = if s869 then s992 else s991
-  s994 :: SBool = ~ s993
-  s995 :: SBool = if s909 then s994 else s993
-  s996 :: SBool = ~ s995
-  s997 :: SBool = if s965 then s996 else s995
-  s998 :: SWord64 = s329 & s723
-  s999 :: SBool = s14 /= s998
-  s1000 :: SBool = ~ s999
-  s1001 :: SBool = if s877 then s1000 else s999
-  s1002 :: SBool = ~ s1001
-  s1003 :: SBool = if s917 then s1002 else s1001
-  s1004 :: SBool = ~ s1003
-  s1005 :: SBool = if s973 then s1004 else s1003
-  s1006 :: SWord64 = s338 & s723
-  s1007 :: SBool = s14 /= s1006
-  s1008 :: SBool = ~ s1007
-  s1009 :: SBool = if s885 then s1008 else s1007
-  s1010 :: SBool = ~ s1009
-  s1011 :: SBool = if s925 then s1010 else s1009
-  s1012 :: SBool = ~ s1011
-  s1013 :: SBool = if s981 then s1012 else s1011
-  s1014 :: SWord64 = s347 & s723
-  s1015 :: SBool = s14 /= s1014
-  s1016 :: SBool = ~ s1015
-  s1017 :: SBool = if s893 then s1016 else s1015
-  s1018 :: SBool = ~ s1017
-  s1019 :: SBool = if s933 then s1018 else s1017
-  s1020 :: SBool = ~ s1019
-  s1021 :: SBool = if s989 then s1020 else s1019
-  s1022 :: SWord64 = s356 & s723
-  s1023 :: SBool = s14 /= s1022
-  s1024 :: SBool = ~ s1023
-  s1025 :: SBool = if s901 then s1024 else s1023
-  s1026 :: SBool = ~ s1025
-  s1027 :: SBool = if s941 then s1026 else s1025
-  s1028 :: SBool = ~ s1027
-  s1029 :: SBool = if s997 then s1028 else s1027
-  s1030 :: SWord64 = s365 & s723
-  s1031 :: SBool = s14 /= s1030
-  s1032 :: SBool = ~ s1031
-  s1033 :: SBool = if s909 then s1032 else s1031
-  s1034 :: SBool = ~ s1033
-  s1035 :: SBool = if s949 then s1034 else s1033
-  s1036 :: SBool = ~ s1035
-  s1037 :: SBool = if s1005 then s1036 else s1035
-  s1038 :: SWord64 = s374 & s723
-  s1039 :: SBool = s14 /= s1038
-  s1040 :: SBool = ~ s1039
-  s1041 :: SBool = if s917 then s1040 else s1039
-  s1042 :: SBool = ~ s1041
-  s1043 :: SBool = if s957 then s1042 else s1041
-  s1044 :: SBool = ~ s1043
-  s1045 :: SBool = if s1013 then s1044 else s1043
-  s1046 :: SBool = ~ s725
-  s1047 :: SBool = if s725 then s1046 else s725
-  s1048 :: SBool = ~ s727
-  s1049 :: SBool = if s727 then s1048 else s727
-  s1050 :: SBool = ~ s729
-  s1051 :: SBool = if s729 then s1050 else s729
-  s1052 :: SBool = ~ s731
-  s1053 :: SBool = if s731 then s1052 else s731
-  s1054 :: SBool = ~ s735
-  s1055 :: SBool = if s735 then s1054 else s735
-  s1056 :: SBool = ~ s739
-  s1057 :: SBool = if s739 then s1056 else s739
-  s1058 :: SBool = ~ s743
-  s1059 :: SBool = if s743 then s1058 else s743
-  s1060 :: SBool = ~ s747
-  s1061 :: SBool = if s747 then s1060 else s747
-  s1062 :: SBool = ~ s751
-  s1063 :: SBool = if s751 then s1062 else s751
-  s1064 :: SBool = ~ s755
-  s1065 :: SBool = if s755 then s1064 else s755
-  s1066 :: SBool = ~ s759
-  s1067 :: SBool = if s759 then s1066 else s759
-  s1068 :: SBool = ~ s765
-  s1069 :: SBool = if s765 then s1068 else s765
-  s1070 :: SBool = ~ s771
-  s1071 :: SBool = if s771 then s1070 else s771
-  s1072 :: SBool = ~ s777
-  s1073 :: SBool = if s777 then s1072 else s777
-  s1074 :: SBool = ~ s783
-  s1075 :: SBool = if s783 then s1074 else s783
-  s1076 :: SBool = ~ s789
-  s1077 :: SBool = if s789 then s1076 else s789
-  s1078 :: SBool = ~ s797
-  s1079 :: SBool = if s797 then s1078 else s797
-  s1080 :: SBool = ~ s805
-  s1081 :: SBool = if s805 then s1080 else s805
-  s1082 :: SBool = ~ s813
-  s1083 :: SBool = if s813 then s1082 else s813
-  s1084 :: SBool = ~ s821
-  s1085 :: SBool = if s821 then s1084 else s821
-  s1086 :: SBool = ~ s829
-  s1087 :: SBool = if s829 then s1086 else s829
-  s1088 :: SBool = ~ s837
-  s1089 :: SBool = if s837 then s1088 else s837
-  s1090 :: SBool = ~ s845
-  s1091 :: SBool = if s845 then s1090 else s845
-  s1092 :: SBool = ~ s853
-  s1093 :: SBool = if s853 then s1092 else s853
-  s1094 :: SBool = ~ s861
-  s1095 :: SBool = if s861 then s1094 else s861
-  s1096 :: SBool = ~ s869
-  s1097 :: SBool = if s869 then s1096 else s869
-  s1098 :: SBool = ~ s877
-  s1099 :: SBool = if s877 then s1098 else s877
-  s1100 :: SBool = ~ s885
-  s1101 :: SBool = if s885 then s1100 else s885
-  s1102 :: SBool = ~ s893
-  s1103 :: SBool = if s893 then s1102 else s893
-  s1104 :: SBool = ~ s901
-  s1105 :: SBool = if s901 then s1104 else s901
-  s1106 :: SBool = ~ s909
-  s1107 :: SBool = if s909 then s1106 else s909
-  s1108 :: SBool = ~ s917
-  s1109 :: SBool = if s917 then s1108 else s917
-  s1110 :: SBool = ~ s925
-  s1111 :: SBool = if s925 then s1110 else s925
-  s1112 :: SBool = ~ s933
-  s1113 :: SBool = if s933 then s1112 else s933
-  s1114 :: SBool = ~ s941
-  s1115 :: SBool = if s941 then s1114 else s941
-  s1116 :: SBool = ~ s949
-  s1117 :: SBool = if s949 then s1116 else s949
-  s1118 :: SBool = ~ s957
-  s1119 :: SBool = if s957 then s1118 else s957
-  s1120 :: SBool = ~ s965
-  s1121 :: SBool = if s965 then s1120 else s965
-  s1122 :: SBool = ~ s973
-  s1123 :: SBool = if s973 then s1122 else s973
-  s1124 :: SBool = ~ s981
-  s1125 :: SBool = if s981 then s1124 else s981
-  s1126 :: SBool = ~ s989
-  s1127 :: SBool = if s989 then s1126 else s989
-  s1128 :: SBool = ~ s997
-  s1129 :: SBool = if s997 then s1128 else s997
-  s1130 :: SBool = ~ s1005
-  s1131 :: SBool = if s1005 then s1130 else s1005
-  s1132 :: SBool = ~ s1013
-  s1133 :: SBool = if s1013 then s1132 else s1013
-  s1134 :: SBool = ~ s1021
-  s1135 :: SBool = if s1021 then s1134 else s1021
-  s1136 :: SBool = ~ s1029
-  s1137 :: SBool = if s1029 then s1136 else s1029
-  s1138 :: SBool = ~ s1037
-  s1139 :: SBool = if s1037 then s1138 else s1037
-  s1140 :: SBool = ~ s1045
-  s1141 :: SBool = if s1045 then s1140 else s1045
-  s1142 :: SWord64 = s479 & s723
-  s1143 :: SBool = s14 /= s1142
-  s1144 :: SBool = ~ s1143
-  s1145 :: SBool = if s925 then s1144 else s1143
-  s1146 :: SBool = ~ s1145
-  s1147 :: SBool = if s965 then s1146 else s1145
-  s1148 :: SBool = ~ s1147
-  s1149 :: SBool = if s1021 then s1148 else s1147
-  s1150 :: SWord64 = s488 & s723
-  s1151 :: SBool = s14 /= s1150
-  s1152 :: SBool = ~ s1151
-  s1153 :: SBool = if s933 then s1152 else s1151
-  s1154 :: SBool = ~ s1153
-  s1155 :: SBool = if s973 then s1154 else s1153
-  s1156 :: SBool = ~ s1155
-  s1157 :: SBool = if s1029 then s1156 else s1155
-  s1158 :: SWord64 = s497 & s723
-  s1159 :: SBool = s14 /= s1158
-  s1160 :: SBool = ~ s1159
-  s1161 :: SBool = if s941 then s1160 else s1159
-  s1162 :: SBool = ~ s1161
-  s1163 :: SBool = if s981 then s1162 else s1161
-  s1164 :: SBool = ~ s1163
-  s1165 :: SBool = if s1037 then s1164 else s1163
-  s1166 :: SWord64 = s506 & s723
-  s1167 :: SBool = s14 /= s1166
-  s1168 :: SBool = ~ s1167
-  s1169 :: SBool = if s949 then s1168 else s1167
-  s1170 :: SBool = ~ s1169
-  s1171 :: SBool = if s989 then s1170 else s1169
-  s1172 :: SBool = ~ s1171
-  s1173 :: SBool = if s1045 then s1172 else s1171
-  s1174 :: SWord64 = s515 & s723
-  s1175 :: SBool = s14 /= s1174
-  s1176 :: SBool = ~ s1175
-  s1177 :: SBool = if s957 then s1176 else s1175
-  s1178 :: SBool = ~ s1177
-  s1179 :: SBool = if s997 then s1178 else s1177
-  s1180 :: SWord64 = s522 & s723
-  s1181 :: SBool = s14 /= s1180
-  s1182 :: SBool = ~ s1181
-  s1183 :: SBool = if s965 then s1182 else s1181
-  s1184 :: SBool = ~ s1183
-  s1185 :: SBool = if s1005 then s1184 else s1183
-  s1186 :: SWord64 = s529 & s723
-  s1187 :: SBool = s14 /= s1186
-  s1188 :: SBool = ~ s1187
-  s1189 :: SBool = if s973 then s1188 else s1187
-  s1190 :: SBool = ~ s1189
-  s1191 :: SBool = if s1013 then s1190 else s1189
-  s1192 :: SWord64 = s536 & s723
-  s1193 :: SBool = s14 /= s1192
-  s1194 :: SBool = ~ s1193
-  s1195 :: SBool = if s981 then s1194 else s1193
-  s1196 :: SBool = ~ s1195
-  s1197 :: SBool = if s1021 then s1196 else s1195
-  s1198 :: SWord64 = s543 & s723
-  s1199 :: SBool = s14 /= s1198
-  s1200 :: SBool = ~ s1199
-  s1201 :: SBool = if s989 then s1200 else s1199
-  s1202 :: SBool = ~ s1201
-  s1203 :: SBool = if s1029 then s1202 else s1201
-  s1204 :: SWord64 = s550 & s723
-  s1205 :: SBool = s14 /= s1204
-  s1206 :: SBool = ~ s1205
-  s1207 :: SBool = if s997 then s1206 else s1205
-  s1208 :: SBool = ~ s1207
-  s1209 :: SBool = if s1037 then s1208 else s1207
-  s1210 :: SWord64 = s557 & s723
-  s1211 :: SBool = s14 /= s1210
-  s1212 :: SBool = ~ s1211
-  s1213 :: SBool = if s1005 then s1212 else s1211
-  s1214 :: SBool = ~ s1213
-  s1215 :: SBool = if s1045 then s1214 else s1213
-  s1216 :: SWord64 = s564 & s723
-  s1217 :: SBool = s14 /= s1216
-  s1218 :: SBool = ~ s1217
-  s1219 :: SBool = if s1013 then s1218 else s1217
-  s1220 :: SWord64 = s569 & s723
-  s1221 :: SBool = s14 /= s1220
-  s1222 :: SBool = ~ s1221
-  s1223 :: SBool = if s1021 then s1222 else s1221
-  s1224 :: SWord64 = s574 & s723
-  s1225 :: SBool = s14 /= s1224
-  s1226 :: SBool = ~ s1225
-  s1227 :: SBool = if s1029 then s1226 else s1225
-  s1228 :: SWord64 = s579 & s723
-  s1229 :: SBool = s14 /= s1228
-  s1230 :: SBool = ~ s1229
-  s1231 :: SBool = if s1037 then s1230 else s1229
-  s1232 :: SWord64 = s584 & s723
-  s1233 :: SBool = s14 /= s1232
-  s1234 :: SBool = ~ s1233
-  s1235 :: SBool = if s1045 then s1234 else s1233
-  s1236 :: SWord64 = if s1235 then s584 else s14
-  s1237 :: SWord64 = s579 | s1236
-  s1238 :: SWord64 = if s1231 then s1237 else s1236
-  s1239 :: SWord64 = s574 | s1238
-  s1240 :: SWord64 = if s1227 then s1239 else s1238
-  s1241 :: SWord64 = s569 | s1240
-  s1242 :: SWord64 = if s1223 then s1241 else s1240
-  s1243 :: SWord64 = s564 | s1242
-  s1244 :: SWord64 = if s1219 then s1243 else s1242
-  s1245 :: SWord64 = s557 | s1244
-  s1246 :: SWord64 = if s1215 then s1245 else s1244
-  s1247 :: SWord64 = s550 | s1246
-  s1248 :: SWord64 = if s1209 then s1247 else s1246
-  s1249 :: SWord64 = s543 | s1248
-  s1250 :: SWord64 = if s1203 then s1249 else s1248
-  s1251 :: SWord64 = s536 | s1250
-  s1252 :: SWord64 = if s1197 then s1251 else s1250
-  s1253 :: SWord64 = s529 | s1252
-  s1254 :: SWord64 = if s1191 then s1253 else s1252
-  s1255 :: SWord64 = s522 | s1254
-  s1256 :: SWord64 = if s1185 then s1255 else s1254
-  s1257 :: SWord64 = s515 | s1256
-  s1258 :: SWord64 = if s1179 then s1257 else s1256
-  s1259 :: SWord64 = s506 | s1258
-  s1260 :: SWord64 = if s1173 then s1259 else s1258
-  s1261 :: SWord64 = s497 | s1260
-  s1262 :: SWord64 = if s1165 then s1261 else s1260
-  s1263 :: SWord64 = s488 | s1262
-  s1264 :: SWord64 = if s1157 then s1263 else s1262
-  s1265 :: SWord64 = s479 | s1264
-  s1266 :: SWord64 = if s1149 then s1265 else s1264
-  s1267 :: SWord64 = s374 | s1266
-  s1268 :: SWord64 = if s1141 then s1267 else s1266
-  s1269 :: SWord64 = s365 | s1268
-  s1270 :: SWord64 = if s1139 then s1269 else s1268
-  s1271 :: SWord64 = s356 | s1270
-  s1272 :: SWord64 = if s1137 then s1271 else s1270
-  s1273 :: SWord64 = s347 | s1272
-  s1274 :: SWord64 = if s1135 then s1273 else s1272
-  s1275 :: SWord64 = s338 | s1274
-  s1276 :: SWord64 = if s1133 then s1275 else s1274
-  s1277 :: SWord64 = s329 | s1276
-  s1278 :: SWord64 = if s1131 then s1277 else s1276
-  s1279 :: SWord64 = s320 | s1278
-  s1280 :: SWord64 = if s1129 then s1279 else s1278
-  s1281 :: SWord64 = s311 | s1280
-  s1282 :: SWord64 = if s1127 then s1281 else s1280
-  s1283 :: SWord64 = s302 | s1282
-  s1284 :: SWord64 = if s1125 then s1283 else s1282
-  s1285 :: SWord64 = s293 | s1284
-  s1286 :: SWord64 = if s1123 then s1285 else s1284
-  s1287 :: SWord64 = s284 | s1286
-  s1288 :: SWord64 = if s1121 then s1287 else s1286
-  s1289 :: SWord64 = s275 | s1288
-  s1290 :: SWord64 = if s1119 then s1289 else s1288
-  s1291 :: SWord64 = s266 | s1290
-  s1292 :: SWord64 = if s1117 then s1291 else s1290
-  s1293 :: SWord64 = s257 | s1292
-  s1294 :: SWord64 = if s1115 then s1293 else s1292
-  s1295 :: SWord64 = s248 | s1294
-  s1296 :: SWord64 = if s1113 then s1295 else s1294
-  s1297 :: SWord64 = s239 | s1296
-  s1298 :: SWord64 = if s1111 then s1297 else s1296
-  s1299 :: SWord64 = s230 | s1298
-  s1300 :: SWord64 = if s1109 then s1299 else s1298
-  s1301 :: SWord64 = s221 | s1300
-  s1302 :: SWord64 = if s1107 then s1301 else s1300
-  s1303 :: SWord64 = s212 | s1302
-  s1304 :: SWord64 = if s1105 then s1303 else s1302
-  s1305 :: SWord64 = s203 | s1304
-  s1306 :: SWord64 = if s1103 then s1305 else s1304
-  s1307 :: SWord64 = s194 | s1306
-  s1308 :: SWord64 = if s1101 then s1307 else s1306
-  s1309 :: SWord64 = s185 | s1308
-  s1310 :: SWord64 = if s1099 then s1309 else s1308
-  s1311 :: SWord64 = s176 | s1310
-  s1312 :: SWord64 = if s1097 then s1311 else s1310
-  s1313 :: SWord64 = s167 | s1312
-  s1314 :: SWord64 = if s1095 then s1313 else s1312
-  s1315 :: SWord64 = s158 | s1314
-  s1316 :: SWord64 = if s1093 then s1315 else s1314
-  s1317 :: SWord64 = s149 | s1316
-  s1318 :: SWord64 = if s1091 then s1317 else s1316
-  s1319 :: SWord64 = s140 | s1318
-  s1320 :: SWord64 = if s1089 then s1319 else s1318
-  s1321 :: SWord64 = s131 | s1320
-  s1322 :: SWord64 = if s1087 then s1321 else s1320
-  s1323 :: SWord64 = s122 | s1322
-  s1324 :: SWord64 = if s1085 then s1323 else s1322
-  s1325 :: SWord64 = s113 | s1324
-  s1326 :: SWord64 = if s1083 then s1325 else s1324
-  s1327 :: SWord64 = s104 | s1326
-  s1328 :: SWord64 = if s1081 then s1327 else s1326
-  s1329 :: SWord64 = s95 | s1328
-  s1330 :: SWord64 = if s1079 then s1329 else s1328
-  s1331 :: SWord64 = s88 | s1330
-  s1332 :: SWord64 = if s1077 then s1331 else s1330
-  s1333 :: SWord64 = s81 | s1332
-  s1334 :: SWord64 = if s1075 then s1333 else s1332
-  s1335 :: SWord64 = s74 | s1334
-  s1336 :: SWord64 = if s1073 then s1335 else s1334
-  s1337 :: SWord64 = s67 | s1336
-  s1338 :: SWord64 = if s1071 then s1337 else s1336
-  s1339 :: SWord64 = s60 | s1338
-  s1340 :: SWord64 = if s1069 then s1339 else s1338
-  s1341 :: SWord64 = s55 | s1340
-  s1342 :: SWord64 = if s1067 then s1341 else s1340
-  s1343 :: SWord64 = s50 | s1342
-  s1344 :: SWord64 = if s1065 then s1343 else s1342
-  s1345 :: SWord64 = s45 | s1344
-  s1346 :: SWord64 = if s1063 then s1345 else s1344
-  s1347 :: SWord64 = s40 | s1346
-  s1348 :: SWord64 = if s1061 then s1347 else s1346
-  s1349 :: SWord64 = s35 | s1348
-  s1350 :: SWord64 = if s1059 then s1349 else s1348
-  s1351 :: SWord64 = s30 | s1350
-  s1352 :: SWord64 = if s1057 then s1351 else s1350
-  s1353 :: SWord64 = s25 | s1352
-  s1354 :: SWord64 = if s1055 then s1353 else s1352
-  s1355 :: SWord64 = s22 | s1354
-  s1356 :: SWord64 = if s1053 then s1355 else s1354
-  s1357 :: SWord64 = s19 | s1356
-  s1358 :: SWord64 = if s1051 then s1357 else s1356
-  s1359 :: SWord64 = s16 | s1358
-  s1360 :: SWord64 = if s1049 then s1359 else s1358
-  s1361 :: SWord64 = s12 | s1360
-  s1362 :: SWord64 = if s1047 then s1361 else s1360
-  s1363 :: SWord32 = choose [31:0] s1362
-  s1364 :: SWord16 = choose [15:0] s1363
-  s1365 :: SWord32 = s3 # s1364
-  s1366 :: SWord64 = s2 # s1365
-  s1367 :: SWord64 = s584 & s1366
-  s1368 :: SBool = s14 /= s1367
-  s1369 :: SBool = s721 == s1368
-  s1370 :: SWord64 = s579 & s719
-  s1371 :: SBool = s14 /= s1370
-  s1372 :: SWord64 = s579 & s1366
-  s1373 :: SBool = s14 /= s1372
-  s1374 :: SBool = s1371 == s1373
-  s1375 :: SWord64 = s574 & s719
-  s1376 :: SBool = s14 /= s1375
-  s1377 :: SWord64 = s574 & s1366
-  s1378 :: SBool = s14 /= s1377
-  s1379 :: SBool = s1376 == s1378
-  s1380 :: SWord64 = s569 & s719
-  s1381 :: SBool = s14 /= s1380
-  s1382 :: SWord64 = s569 & s1366
-  s1383 :: SBool = s14 /= s1382
-  s1384 :: SBool = s1381 == s1383
-  s1385 :: SWord64 = s564 & s719
-  s1386 :: SBool = s14 /= s1385
-  s1387 :: SWord64 = s564 & s1366
-  s1388 :: SBool = s14 /= s1387
-  s1389 :: SBool = s1386 == s1388
-  s1390 :: SWord64 = s557 & s719
-  s1391 :: SBool = s14 /= s1390
-  s1392 :: SWord64 = s557 & s1366
-  s1393 :: SBool = s14 /= s1392
-  s1394 :: SBool = s1391 == s1393
-  s1395 :: SWord64 = s550 & s719
-  s1396 :: SBool = s14 /= s1395
-  s1397 :: SWord64 = s550 & s1366
-  s1398 :: SBool = s14 /= s1397
-  s1399 :: SBool = s1396 == s1398
-  s1400 :: SWord64 = s543 & s719
-  s1401 :: SBool = s14 /= s1400
-  s1402 :: SWord64 = s543 & s1366
-  s1403 :: SBool = s14 /= s1402
-  s1404 :: SBool = s1401 == s1403
-  s1405 :: SWord64 = s536 & s719
-  s1406 :: SBool = s14 /= s1405
-  s1407 :: SWord64 = s536 & s1366
-  s1408 :: SBool = s14 /= s1407
-  s1409 :: SBool = s1406 == s1408
-  s1410 :: SWord64 = s529 & s719
-  s1411 :: SBool = s14 /= s1410
-  s1412 :: SWord64 = s529 & s1366
-  s1413 :: SBool = s14 /= s1412
-  s1414 :: SBool = s1411 == s1413
-  s1415 :: SWord64 = s522 & s719
-  s1416 :: SBool = s14 /= s1415
-  s1417 :: SWord64 = s522 & s1366
-  s1418 :: SBool = s14 /= s1417
-  s1419 :: SBool = s1416 == s1418
-  s1420 :: SWord64 = s515 & s719
-  s1421 :: SBool = s14 /= s1420
-  s1422 :: SWord64 = s515 & s1366
-  s1423 :: SBool = s14 /= s1422
-  s1424 :: SBool = s1421 == s1423
-  s1425 :: SWord64 = s506 & s719
-  s1426 :: SBool = s14 /= s1425
-  s1427 :: SWord64 = s506 & s1366
-  s1428 :: SBool = s14 /= s1427
-  s1429 :: SBool = s1426 == s1428
-  s1430 :: SWord64 = s497 & s719
-  s1431 :: SBool = s14 /= s1430
-  s1432 :: SWord64 = s497 & s1366
-  s1433 :: SBool = s14 /= s1432
-  s1434 :: SBool = s1431 == s1433
-  s1435 :: SWord64 = s488 & s719
-  s1436 :: SBool = s14 /= s1435
-  s1437 :: SWord64 = s488 & s1366
-  s1438 :: SBool = s14 /= s1437
-  s1439 :: SBool = s1436 == s1438
-  s1440 :: SWord64 = s479 & s719
-  s1441 :: SBool = s14 /= s1440
-  s1442 :: SWord64 = s479 & s1366
-  s1443 :: SBool = s14 /= s1442
-  s1444 :: SBool = s1441 == s1443
-  s1445 :: SWord64 = s374 & s719
-  s1446 :: SBool = s14 /= s1445
-  s1447 :: SWord64 = s374 & s1366
-  s1448 :: SBool = s14 /= s1447
-  s1449 :: SBool = s1446 == s1448
-  s1450 :: SWord64 = s365 & s719
-  s1451 :: SBool = s14 /= s1450
-  s1452 :: SWord64 = s365 & s1366
-  s1453 :: SBool = s14 /= s1452
-  s1454 :: SBool = s1451 == s1453
-  s1455 :: SWord64 = s356 & s719
-  s1456 :: SBool = s14 /= s1455
-  s1457 :: SWord64 = s356 & s1366
-  s1458 :: SBool = s14 /= s1457
-  s1459 :: SBool = s1456 == s1458
-  s1460 :: SWord64 = s347 & s719
-  s1461 :: SBool = s14 /= s1460
-  s1462 :: SWord64 = s347 & s1366
-  s1463 :: SBool = s14 /= s1462
-  s1464 :: SBool = s1461 == s1463
-  s1465 :: SWord64 = s338 & s719
-  s1466 :: SBool = s14 /= s1465
-  s1467 :: SWord64 = s338 & s1366
-  s1468 :: SBool = s14 /= s1467
-  s1469 :: SBool = s1466 == s1468
-  s1470 :: SWord64 = s329 & s719
-  s1471 :: SBool = s14 /= s1470
-  s1472 :: SWord64 = s329 & s1366
-  s1473 :: SBool = s14 /= s1472
-  s1474 :: SBool = s1471 == s1473
-  s1475 :: SWord64 = s320 & s719
-  s1476 :: SBool = s14 /= s1475
-  s1477 :: SWord64 = s320 & s1366
-  s1478 :: SBool = s14 /= s1477
-  s1479 :: SBool = s1476 == s1478
-  s1480 :: SWord64 = s311 & s719
-  s1481 :: SBool = s14 /= s1480
-  s1482 :: SWord64 = s311 & s1366
-  s1483 :: SBool = s14 /= s1482
-  s1484 :: SBool = s1481 == s1483
-  s1485 :: SWord64 = s302 & s719
-  s1486 :: SBool = s14 /= s1485
-  s1487 :: SWord64 = s302 & s1366
-  s1488 :: SBool = s14 /= s1487
-  s1489 :: SBool = s1486 == s1488
-  s1490 :: SWord64 = s293 & s719
-  s1491 :: SBool = s14 /= s1490
-  s1492 :: SWord64 = s293 & s1366
-  s1493 :: SBool = s14 /= s1492
-  s1494 :: SBool = s1491 == s1493
-  s1495 :: SWord64 = s284 & s719
-  s1496 :: SBool = s14 /= s1495
-  s1497 :: SWord64 = s284 & s1366
-  s1498 :: SBool = s14 /= s1497
-  s1499 :: SBool = s1496 == s1498
-  s1500 :: SWord64 = s275 & s719
-  s1501 :: SBool = s14 /= s1500
-  s1502 :: SWord64 = s275 & s1366
-  s1503 :: SBool = s14 /= s1502
-  s1504 :: SBool = s1501 == s1503
-  s1505 :: SWord64 = s266 & s719
-  s1506 :: SBool = s14 /= s1505
-  s1507 :: SWord64 = s266 & s1366
-  s1508 :: SBool = s14 /= s1507
-  s1509 :: SBool = s1506 == s1508
-  s1510 :: SWord64 = s257 & s719
-  s1511 :: SBool = s14 /= s1510
-  s1512 :: SWord64 = s257 & s1366
-  s1513 :: SBool = s14 /= s1512
-  s1514 :: SBool = s1511 == s1513
-  s1515 :: SWord64 = s248 & s719
-  s1516 :: SBool = s14 /= s1515
-  s1517 :: SWord64 = s248 & s1366
-  s1518 :: SBool = s14 /= s1517
-  s1519 :: SBool = s1516 == s1518
-  s1520 :: SWord64 = s239 & s719
-  s1521 :: SBool = s14 /= s1520
-  s1522 :: SWord64 = s239 & s1366
-  s1523 :: SBool = s14 /= s1522
-  s1524 :: SBool = s1521 == s1523
-  s1525 :: SWord64 = s230 & s719
-  s1526 :: SBool = s14 /= s1525
-  s1527 :: SWord64 = s230 & s1366
-  s1528 :: SBool = s14 /= s1527
-  s1529 :: SBool = s1526 == s1528
-  s1530 :: SWord64 = s221 & s719
-  s1531 :: SBool = s14 /= s1530
-  s1532 :: SWord64 = s221 & s1366
-  s1533 :: SBool = s14 /= s1532
-  s1534 :: SBool = s1531 == s1533
-  s1535 :: SWord64 = s212 & s719
-  s1536 :: SBool = s14 /= s1535
-  s1537 :: SWord64 = s212 & s1366
-  s1538 :: SBool = s14 /= s1537
-  s1539 :: SBool = s1536 == s1538
-  s1540 :: SWord64 = s203 & s719
-  s1541 :: SBool = s14 /= s1540
-  s1542 :: SWord64 = s203 & s1366
-  s1543 :: SBool = s14 /= s1542
-  s1544 :: SBool = s1541 == s1543
-  s1545 :: SWord64 = s194 & s719
-  s1546 :: SBool = s14 /= s1545
-  s1547 :: SWord64 = s194 & s1366
-  s1548 :: SBool = s14 /= s1547
-  s1549 :: SBool = s1546 == s1548
-  s1550 :: SWord64 = s185 & s719
-  s1551 :: SBool = s14 /= s1550
-  s1552 :: SWord64 = s185 & s1366
-  s1553 :: SBool = s14 /= s1552
-  s1554 :: SBool = s1551 == s1553
-  s1555 :: SWord64 = s176 & s719
-  s1556 :: SBool = s14 /= s1555
-  s1557 :: SWord64 = s176 & s1366
-  s1558 :: SBool = s14 /= s1557
-  s1559 :: SBool = s1556 == s1558
-  s1560 :: SWord64 = s167 & s719
-  s1561 :: SBool = s14 /= s1560
-  s1562 :: SWord64 = s167 & s1366
-  s1563 :: SBool = s14 /= s1562
-  s1564 :: SBool = s1561 == s1563
-  s1565 :: SWord64 = s158 & s719
-  s1566 :: SBool = s14 /= s1565
-  s1567 :: SWord64 = s158 & s1366
-  s1568 :: SBool = s14 /= s1567
-  s1569 :: SBool = s1566 == s1568
-  s1570 :: SWord64 = s149 & s719
-  s1571 :: SBool = s14 /= s1570
-  s1572 :: SWord64 = s149 & s1366
-  s1573 :: SBool = s14 /= s1572
-  s1574 :: SBool = s1571 == s1573
-  s1575 :: SWord64 = s140 & s719
-  s1576 :: SBool = s14 /= s1575
-  s1577 :: SWord64 = s140 & s1366
-  s1578 :: SBool = s14 /= s1577
-  s1579 :: SBool = s1576 == s1578
-  s1580 :: SWord64 = s131 & s719
-  s1581 :: SBool = s14 /= s1580
-  s1582 :: SWord64 = s131 & s1366
-  s1583 :: SBool = s14 /= s1582
-  s1584 :: SBool = s1581 == s1583
-  s1585 :: SWord64 = s122 & s719
-  s1586 :: SBool = s14 /= s1585
-  s1587 :: SWord64 = s122 & s1366
-  s1588 :: SBool = s14 /= s1587
-  s1589 :: SBool = s1586 == s1588
-  s1590 :: SWord64 = s113 & s719
-  s1591 :: SBool = s14 /= s1590
-  s1592 :: SWord64 = s113 & s1366
-  s1593 :: SBool = s14 /= s1592
-  s1594 :: SBool = s1591 == s1593
-  s1595 :: SWord64 = s104 & s719
-  s1596 :: SBool = s14 /= s1595
-  s1597 :: SWord64 = s104 & s1366
-  s1598 :: SBool = s14 /= s1597
-  s1599 :: SBool = s1596 == s1598
-  s1600 :: SWord64 = s95 & s719
-  s1601 :: SBool = s14 /= s1600
-  s1602 :: SWord64 = s95 & s1366
-  s1603 :: SBool = s14 /= s1602
-  s1604 :: SBool = s1601 == s1603
-  s1605 :: SWord64 = s88 & s719
-  s1606 :: SBool = s14 /= s1605
-  s1607 :: SWord64 = s88 & s1366
-  s1608 :: SBool = s14 /= s1607
-  s1609 :: SBool = s1606 == s1608
-  s1610 :: SWord64 = s81 & s719
-  s1611 :: SBool = s14 /= s1610
-  s1612 :: SWord64 = s81 & s1366
-  s1613 :: SBool = s14 /= s1612
-  s1614 :: SBool = s1611 == s1613
-  s1615 :: SWord64 = s74 & s719
-  s1616 :: SBool = s14 /= s1615
-  s1617 :: SWord64 = s74 & s1366
-  s1618 :: SBool = s14 /= s1617
-  s1619 :: SBool = s1616 == s1618
-  s1620 :: SWord64 = s67 & s719
-  s1621 :: SBool = s14 /= s1620
-  s1622 :: SWord64 = s67 & s1366
-  s1623 :: SBool = s14 /= s1622
-  s1624 :: SBool = s1621 == s1623
-  s1625 :: SWord64 = s60 & s719
-  s1626 :: SBool = s14 /= s1625
-  s1627 :: SWord64 = s60 & s1366
-  s1628 :: SBool = s14 /= s1627
-  s1629 :: SBool = s1626 == s1628
-  s1630 :: SWord64 = s55 & s719
-  s1631 :: SBool = s14 /= s1630
-  s1632 :: SWord64 = s55 & s1366
-  s1633 :: SBool = s14 /= s1632
-  s1634 :: SBool = s1631 == s1633
-  s1635 :: SWord64 = s50 & s719
-  s1636 :: SBool = s14 /= s1635
-  s1637 :: SWord64 = s50 & s1366
-  s1638 :: SBool = s14 /= s1637
-  s1639 :: SBool = s1636 == s1638
-  s1640 :: SWord64 = s45 & s719
-  s1641 :: SBool = s14 /= s1640
-  s1642 :: SWord64 = s45 & s1366
-  s1643 :: SBool = s14 /= s1642
-  s1644 :: SBool = s1641 == s1643
-  s1645 :: SWord64 = s40 & s719
-  s1646 :: SBool = s14 /= s1645
-  s1647 :: SWord64 = s40 & s1366
-  s1648 :: SBool = s14 /= s1647
-  s1649 :: SBool = s1646 == s1648
-  s1650 :: SWord64 = s35 & s719
-  s1651 :: SBool = s14 /= s1650
-  s1652 :: SWord64 = s35 & s1366
-  s1653 :: SBool = s14 /= s1652
-  s1654 :: SBool = s1651 == s1653
-  s1655 :: SWord64 = s30 & s719
-  s1656 :: SBool = s14 /= s1655
-  s1657 :: SWord64 = s30 & s1366
-  s1658 :: SBool = s14 /= s1657
-  s1659 :: SBool = s1656 == s1658
-  s1660 :: SWord64 = s25 & s719
-  s1661 :: SBool = s14 /= s1660
-  s1662 :: SWord64 = s25 & s1366
-  s1663 :: SBool = s14 /= s1662
-  s1664 :: SBool = s1661 == s1663
-  s1665 :: SWord64 = s22 & s719
-  s1666 :: SBool = s14 /= s1665
-  s1667 :: SWord64 = s22 & s1366
-  s1668 :: SBool = s14 /= s1667
-  s1669 :: SBool = s1666 == s1668
-  s1670 :: SWord64 = s19 & s719
-  s1671 :: SBool = s14 /= s1670
-  s1672 :: SWord64 = s19 & s1366
-  s1673 :: SBool = s14 /= s1672
-  s1674 :: SBool = s1671 == s1673
-  s1675 :: SWord64 = s16 & s719
-  s1676 :: SBool = s14 /= s1675
-  s1677 :: SWord64 = s16 & s1366
-  s1678 :: SBool = s14 /= s1677
-  s1679 :: SBool = s1676 == s1678
-  s1680 :: SWord64 = s12 & s719
-  s1681 :: SBool = s14 /= s1680
-  s1682 :: SWord64 = s12 & s1366
-  s1683 :: SBool = s14 /= s1682
-  s1684 :: SBool = s1681 == s1683
-  s1687 :: SWord8 = if s1684 then s1685 else s1686
-  s1688 :: SWord8 = s1686 + s1687
-  s1689 :: SWord8 = if s1679 then s1687 else s1688
-  s1690 :: SWord8 = s1686 + s1689
-  s1691 :: SWord8 = if s1674 then s1689 else s1690
-  s1692 :: SWord8 = s1686 + s1691
-  s1693 :: SWord8 = if s1669 then s1691 else s1692
-  s1694 :: SWord8 = s1686 + s1693
-  s1695 :: SWord8 = if s1664 then s1693 else s1694
-  s1696 :: SWord8 = s1686 + s1695
-  s1697 :: SWord8 = if s1659 then s1695 else s1696
-  s1698 :: SWord8 = s1686 + s1697
-  s1699 :: SWord8 = if s1654 then s1697 else s1698
-  s1700 :: SWord8 = s1686 + s1699
-  s1701 :: SWord8 = if s1649 then s1699 else s1700
-  s1702 :: SWord8 = s1686 + s1701
-  s1703 :: SWord8 = if s1644 then s1701 else s1702
-  s1704 :: SWord8 = s1686 + s1703
-  s1705 :: SWord8 = if s1639 then s1703 else s1704
-  s1706 :: SWord8 = s1686 + s1705
-  s1707 :: SWord8 = if s1634 then s1705 else s1706
-  s1708 :: SWord8 = s1686 + s1707
-  s1709 :: SWord8 = if s1629 then s1707 else s1708
-  s1710 :: SWord8 = s1686 + s1709
-  s1711 :: SWord8 = if s1624 then s1709 else s1710
-  s1712 :: SWord8 = s1686 + s1711
-  s1713 :: SWord8 = if s1619 then s1711 else s1712
-  s1714 :: SWord8 = s1686 + s1713
-  s1715 :: SWord8 = if s1614 then s1713 else s1714
-  s1716 :: SWord8 = s1686 + s1715
-  s1717 :: SWord8 = if s1609 then s1715 else s1716
-  s1718 :: SWord8 = s1686 + s1717
-  s1719 :: SWord8 = if s1604 then s1717 else s1718
-  s1720 :: SWord8 = s1686 + s1719
-  s1721 :: SWord8 = if s1599 then s1719 else s1720
-  s1722 :: SWord8 = s1686 + s1721
-  s1723 :: SWord8 = if s1594 then s1721 else s1722
-  s1724 :: SWord8 = s1686 + s1723
-  s1725 :: SWord8 = if s1589 then s1723 else s1724
-  s1726 :: SWord8 = s1686 + s1725
-  s1727 :: SWord8 = if s1584 then s1725 else s1726
-  s1728 :: SWord8 = s1686 + s1727
-  s1729 :: SWord8 = if s1579 then s1727 else s1728
-  s1730 :: SWord8 = s1686 + s1729
-  s1731 :: SWord8 = if s1574 then s1729 else s1730
-  s1732 :: SWord8 = s1686 + s1731
-  s1733 :: SWord8 = if s1569 then s1731 else s1732
-  s1734 :: SWord8 = s1686 + s1733
-  s1735 :: SWord8 = if s1564 then s1733 else s1734
-  s1736 :: SWord8 = s1686 + s1735
-  s1737 :: SWord8 = if s1559 then s1735 else s1736
-  s1738 :: SWord8 = s1686 + s1737
-  s1739 :: SWord8 = if s1554 then s1737 else s1738
-  s1740 :: SWord8 = s1686 + s1739
-  s1741 :: SWord8 = if s1549 then s1739 else s1740
-  s1742 :: SWord8 = s1686 + s1741
-  s1743 :: SWord8 = if s1544 then s1741 else s1742
-  s1744 :: SWord8 = s1686 + s1743
-  s1745 :: SWord8 = if s1539 then s1743 else s1744
-  s1746 :: SWord8 = s1686 + s1745
-  s1747 :: SWord8 = if s1534 then s1745 else s1746
-  s1748 :: SWord8 = s1686 + s1747
-  s1749 :: SWord8 = if s1529 then s1747 else s1748
-  s1750 :: SWord8 = s1686 + s1749
-  s1751 :: SWord8 = if s1524 then s1749 else s1750
-  s1752 :: SWord8 = s1686 + s1751
-  s1753 :: SWord8 = if s1519 then s1751 else s1752
-  s1754 :: SWord8 = s1686 + s1753
-  s1755 :: SWord8 = if s1514 then s1753 else s1754
-  s1756 :: SWord8 = s1686 + s1755
-  s1757 :: SWord8 = if s1509 then s1755 else s1756
-  s1758 :: SWord8 = s1686 + s1757
-  s1759 :: SWord8 = if s1504 then s1757 else s1758
-  s1760 :: SWord8 = s1686 + s1759
-  s1761 :: SWord8 = if s1499 then s1759 else s1760
-  s1762 :: SWord8 = s1686 + s1761
-  s1763 :: SWord8 = if s1494 then s1761 else s1762
-  s1764 :: SWord8 = s1686 + s1763
-  s1765 :: SWord8 = if s1489 then s1763 else s1764
-  s1766 :: SWord8 = s1686 + s1765
-  s1767 :: SWord8 = if s1484 then s1765 else s1766
-  s1768 :: SWord8 = s1686 + s1767
-  s1769 :: SWord8 = if s1479 then s1767 else s1768
-  s1770 :: SWord8 = s1686 + s1769
-  s1771 :: SWord8 = if s1474 then s1769 else s1770
-  s1772 :: SWord8 = s1686 + s1771
-  s1773 :: SWord8 = if s1469 then s1771 else s1772
-  s1774 :: SWord8 = s1686 + s1773
-  s1775 :: SWord8 = if s1464 then s1773 else s1774
-  s1776 :: SWord8 = s1686 + s1775
-  s1777 :: SWord8 = if s1459 then s1775 else s1776
-  s1778 :: SWord8 = s1686 + s1777
-  s1779 :: SWord8 = if s1454 then s1777 else s1778
-  s1780 :: SWord8 = s1686 + s1779
-  s1781 :: SWord8 = if s1449 then s1779 else s1780
-  s1782 :: SWord8 = s1686 + s1781
-  s1783 :: SWord8 = if s1444 then s1781 else s1782
-  s1784 :: SWord8 = s1686 + s1783
-  s1785 :: SWord8 = if s1439 then s1783 else s1784
-  s1786 :: SWord8 = s1686 + s1785
-  s1787 :: SWord8 = if s1434 then s1785 else s1786
-  s1788 :: SWord8 = s1686 + s1787
-  s1789 :: SWord8 = if s1429 then s1787 else s1788
-  s1790 :: SWord8 = s1686 + s1789
-  s1791 :: SWord8 = if s1424 then s1789 else s1790
-  s1792 :: SWord8 = s1686 + s1791
-  s1793 :: SWord8 = if s1419 then s1791 else s1792
-  s1794 :: SWord8 = s1686 + s1793
-  s1795 :: SWord8 = if s1414 then s1793 else s1794
-  s1796 :: SWord8 = s1686 + s1795
-  s1797 :: SWord8 = if s1409 then s1795 else s1796
-  s1798 :: SWord8 = s1686 + s1797
-  s1799 :: SWord8 = if s1404 then s1797 else s1798
-  s1800 :: SWord8 = s1686 + s1799
-  s1801 :: SWord8 = if s1399 then s1799 else s1800
-  s1802 :: SWord8 = s1686 + s1801
-  s1803 :: SWord8 = if s1394 then s1801 else s1802
-  s1804 :: SWord8 = s1686 + s1803
-  s1805 :: SWord8 = if s1389 then s1803 else s1804
-  s1806 :: SWord8 = s1686 + s1805
-  s1807 :: SWord8 = if s1384 then s1805 else s1806
-  s1808 :: SWord8 = s1686 + s1807
-  s1809 :: SWord8 = if s1379 then s1807 else s1808
-  s1810 :: SWord8 = s1686 + s1809
-  s1811 :: SWord8 = if s1374 then s1809 else s1810
-  s1812 :: SWord8 = s1686 + s1811
-  s1813 :: SWord8 = if s1369 then s1811 else s1812
-  s1815 :: SBool = s1813 > s1814
-  s1816 :: SBool = s8 | s1815
-OUTPUTS
-  s1816
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/codeGen1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/codeGen1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/codeGen1.gold
+++ /dev/null
@@ -1,218 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for foo. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: foo_driver
-
-foo.o: foo.c foo.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-foo_driver.o: foo_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-foo_driver: foo.o foo_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f foo_driver
-== END: "Makefile" ==================
-== BEGIN: "foo.h" ================
-/* Header file for foo. Automatically generated by SBV. Do not edit! */
-
-#ifndef __foo__HEADER_INCLUDED__
-#define __foo__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-SInt16 foo(const SInt16 x, const SInt64 *xArr, SWord16 *z,
-           SInt16 *zArr, SInt64 *yArr);
-
-#endif /* __foo__HEADER_INCLUDED__ */
-== END: "foo.h" ==================
-== BEGIN: "foo_driver.c" ================
-/* Example driver program for foo. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "foo.h"
-
-int main(void)
-{
-  const SInt64 xArr[45] = {
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL,
-      0x0000000000000000LL, 0x0000000000000000LL, 0x0000000000000000LL
-  };
-  
-  printf("Contents of input array xArr:\n");
-  int xArr_ctr;
-  for(xArr_ctr = 0;  xArr_ctr < 45 ; ++xArr_ctr)
-    printf("  xArr[%d] = %"PRId64"LL\n", xArr_ctr ,xArr[xArr_ctr]);
-  
-  SWord16 z;
-  SInt16 zArr[7];
-  SInt64 yArr[45];
-  
-  const SInt16 __result = foo(0x0000, xArr, &z, zArr, yArr);
-  
-  printf("foo(0x0000, xArr, &z, zArr, yArr) = %"PRId16"\n", __result);
-  printf("  z = 0x%04"PRIx16"U\n", z);
-  int zArr_ctr;
-  for(zArr_ctr = 0;  zArr_ctr < 7 ; ++zArr_ctr)
-    printf("  zArr[%d] = %"PRId16"\n", zArr_ctr ,zArr[zArr_ctr]);
-  int yArr_ctr;
-  for(yArr_ctr = 0;  yArr_ctr < 45 ; ++yArr_ctr)
-    printf("  yArr[%d] = %"PRId64"LL\n", yArr_ctr ,yArr[yArr_ctr]);
-
-  return 0;
-}
-== END: "foo_driver.c" ==================
-== BEGIN: "foo.c" ================
-/* File: "foo.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "foo.h"
-
-SInt16 foo(const SInt16 x, const SInt64 *xArr, SWord16 *z,
-           SInt16 *zArr, SInt64 *yArr)
-{
-  const SInt16 s0 = x;
-  const SInt64 s1 = xArr[0];
-  const SInt64 s2 = xArr[1];
-  const SInt64 s3 = xArr[2];
-  const SInt64 s4 = xArr[3];
-  const SInt64 s5 = xArr[4];
-  const SInt64 s6 = xArr[5];
-  const SInt64 s7 = xArr[6];
-  const SInt64 s8 = xArr[7];
-  const SInt64 s9 = xArr[8];
-  const SInt64 s10 = xArr[9];
-  const SInt64 s11 = xArr[10];
-  const SInt64 s12 = xArr[11];
-  const SInt64 s13 = xArr[12];
-  const SInt64 s14 = xArr[13];
-  const SInt64 s15 = xArr[14];
-  const SInt64 s16 = xArr[15];
-  const SInt64 s17 = xArr[16];
-  const SInt64 s18 = xArr[17];
-  const SInt64 s19 = xArr[18];
-  const SInt64 s20 = xArr[19];
-  const SInt64 s21 = xArr[20];
-  const SInt64 s22 = xArr[21];
-  const SInt64 s23 = xArr[22];
-  const SInt64 s24 = xArr[23];
-  const SInt64 s25 = xArr[24];
-  const SInt64 s26 = xArr[25];
-  const SInt64 s27 = xArr[26];
-  const SInt64 s28 = xArr[27];
-  const SInt64 s29 = xArr[28];
-  const SInt64 s30 = xArr[29];
-  const SInt64 s31 = xArr[30];
-  const SInt64 s32 = xArr[31];
-  const SInt64 s33 = xArr[32];
-  const SInt64 s34 = xArr[33];
-  const SInt64 s35 = xArr[34];
-  const SInt64 s36 = xArr[35];
-  const SInt64 s37 = xArr[36];
-  const SInt64 s38 = xArr[37];
-  const SInt64 s39 = xArr[38];
-  const SInt64 s40 = xArr[39];
-  const SInt64 s41 = xArr[40];
-  const SInt64 s42 = xArr[41];
-  const SInt64 s43 = xArr[42];
-  const SInt64 s44 = xArr[43];
-  const SInt64 s45 = xArr[44];
-  const SInt16 s48 = s0 + 0x0001;
-  const SInt16 s50 = s0 * 0x0002;
-  
-  *z = 0x0005U;
-  zArr[0] = s48;
-  zArr[1] = s48;
-  zArr[2] = s48;
-  zArr[3] = s48;
-  zArr[4] = s48;
-  zArr[5] = s48;
-  zArr[6] = s48;
-  yArr[0] = s1;
-  yArr[1] = s2;
-  yArr[2] = s3;
-  yArr[3] = s4;
-  yArr[4] = s5;
-  yArr[5] = s6;
-  yArr[6] = s7;
-  yArr[7] = s8;
-  yArr[8] = s9;
-  yArr[9] = s10;
-  yArr[10] = s11;
-  yArr[11] = s12;
-  yArr[12] = s13;
-  yArr[13] = s14;
-  yArr[14] = s15;
-  yArr[15] = s16;
-  yArr[16] = s17;
-  yArr[17] = s18;
-  yArr[18] = s19;
-  yArr[19] = s20;
-  yArr[20] = s21;
-  yArr[21] = s22;
-  yArr[22] = s23;
-  yArr[23] = s24;
-  yArr[24] = s25;
-  yArr[25] = s26;
-  yArr[26] = s27;
-  yArr[27] = s28;
-  yArr[28] = s29;
-  yArr[29] = s30;
-  yArr[30] = s31;
-  yArr[31] = s32;
-  yArr[32] = s33;
-  yArr[33] = s34;
-  yArr[34] = s35;
-  yArr[35] = s36;
-  yArr[36] = s37;
-  yArr[37] = s38;
-  yArr[38] = s39;
-  yArr[39] = s40;
-  yArr[40] = s41;
-  yArr[41] = s42;
-  yArr[42] = s43;
-  yArr[43] = s44;
-  yArr[44] = s45;
-  return s50;
-}
-== END: "foo.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/dogCatMouse.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/dogCatMouse.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/dogCatMouse.gold
+++ /dev/null
@@ -1,4 +0,0 @@
-Only one solution found:
-  s0 = 3 :: SWord16
-  s1 = 41 :: SWord16
-  s2 = 56 :: SWord16
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/euler185.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/euler185.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/euler185.gold
+++ /dev/null
@@ -1,17 +0,0 @@
-Only one solution found:
-  s0 = 4 :: SWord8
-  s1 = 6 :: SWord8
-  s2 = 4 :: SWord8
-  s3 = 0 :: SWord8
-  s4 = 2 :: SWord8
-  s5 = 6 :: SWord8
-  s6 = 1 :: SWord8
-  s7 = 5 :: SWord8
-  s8 = 7 :: SWord8
-  s9 = 1 :: SWord8
-  s10 = 8 :: SWord8
-  s11 = 4 :: SWord8
-  s12 = 9 :: SWord8
-  s13 = 5 :: SWord8
-  s14 = 3 :: SWord8
-  s15 = 3 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/fib1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/fib1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/fib1.gold
+++ /dev/null
@@ -1,210 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for fib1. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: fib1_driver
-
-fib1.o: fib1.c fib1.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-fib1_driver.o: fib1_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-fib1_driver: fib1.o fib1_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f fib1_driver
-== END: "Makefile" ==================
-== BEGIN: "fib1.h" ================
-/* Header file for fib1. Automatically generated by SBV. Do not edit! */
-
-#ifndef __fib1__HEADER_INCLUDED__
-#define __fib1__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-SWord32 fib1(const SWord32 n);
-
-#endif /* __fib1__HEADER_INCLUDED__ */
-== END: "fib1.h" ==================
-== BEGIN: "fib1_driver.c" ================
-/* Example driver program for fib1. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "fib1.h"
-
-int main(void)
-{
-  const SWord32 __result = fib1(0x0000000cUL);
-  
-  printf("fib1(0x0000000cUL) = 0x%08"PRIx32"UL\n", __result);
-
-  return 0;
-}
-== END: "fib1_driver.c" ==================
-== BEGIN: "fib1.c" ================
-/* File: "fib1.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "fib1.h"
-
-SWord32 fib1(const SWord32 n)
-{
-  const SWord32 s0 = n;
-  const SBool   s2 = s0 == 0x00000000UL;
-  const SBool   s4 = s0 == 0x00000001UL;
-  const SBool   s6 = s0 == 0x00000002UL;
-  const SBool   s8 = s0 == 0x00000003UL;
-  const SBool   s10 = s0 == 0x00000004UL;
-  const SBool   s12 = s0 == 0x00000005UL;
-  const SBool   s14 = s0 == 0x00000006UL;
-  const SBool   s17 = s0 == 0x00000007UL;
-  const SBool   s19 = s0 == 0x00000008UL;
-  const SBool   s22 = s0 == 0x00000009UL;
-  const SBool   s25 = s0 == 0x0000000aUL;
-  const SBool   s28 = s0 == 0x0000000bUL;
-  const SBool   s31 = s0 == 0x0000000cUL;
-  const SBool   s33 = s0 == 0x0000000dUL;
-  const SBool   s36 = s0 == 0x0000000eUL;
-  const SBool   s39 = s0 == 0x0000000fUL;
-  const SBool   s42 = s0 == 0x00000010UL;
-  const SBool   s45 = s0 == 0x00000011UL;
-  const SBool   s48 = s0 == 0x00000012UL;
-  const SBool   s51 = s0 == 0x00000013UL;
-  const SBool   s54 = s0 == 0x00000014UL;
-  const SBool   s56 = s0 == 0x00000015UL;
-  const SBool   s59 = s0 == 0x00000016UL;
-  const SBool   s62 = s0 == 0x00000017UL;
-  const SBool   s65 = s0 == 0x00000018UL;
-  const SBool   s68 = s0 == 0x00000019UL;
-  const SBool   s71 = s0 == 0x0000001aUL;
-  const SBool   s74 = s0 == 0x0000001bUL;
-  const SBool   s77 = s0 == 0x0000001cUL;
-  const SBool   s80 = s0 == 0x0000001dUL;
-  const SBool   s83 = s0 == 0x0000001eUL;
-  const SBool   s86 = s0 == 0x0000001fUL;
-  const SBool   s89 = s0 == 0x00000020UL;
-  const SBool   s92 = s0 == 0x00000021UL;
-  const SBool   s94 = s0 == 0x00000022UL;
-  const SBool   s97 = s0 == 0x00000023UL;
-  const SBool   s100 = s0 == 0x00000024UL;
-  const SBool   s103 = s0 == 0x00000025UL;
-  const SBool   s106 = s0 == 0x00000026UL;
-  const SBool   s109 = s0 == 0x00000027UL;
-  const SBool   s112 = s0 == 0x00000028UL;
-  const SBool   s115 = s0 == 0x00000029UL;
-  const SBool   s118 = s0 == 0x0000002aUL;
-  const SBool   s121 = s0 == 0x0000002bUL;
-  const SBool   s124 = s0 == 0x0000002cUL;
-  const SBool   s127 = s0 == 0x0000002dUL;
-  const SBool   s130 = s0 == 0x0000002eUL;
-  const SBool   s133 = s0 == 0x0000002fUL;
-  const SBool   s136 = s0 == 0x00000030UL;
-  const SBool   s139 = s0 == 0x00000031UL;
-  const SBool   s142 = s0 == 0x00000032UL;
-  const SBool   s145 = s0 == 0x00000033UL;
-  const SBool   s148 = s0 == 0x00000034UL;
-  const SBool   s151 = s0 == 0x00000035UL;
-  const SBool   s154 = s0 == 0x00000036UL;
-  const SBool   s156 = s0 == 0x00000037UL;
-  const SBool   s159 = s0 == 0x00000038UL;
-  const SBool   s162 = s0 == 0x00000039UL;
-  const SBool   s165 = s0 == 0x0000003aUL;
-  const SBool   s168 = s0 == 0x0000003bUL;
-  const SBool   s171 = s0 == 0x0000003cUL;
-  const SBool   s174 = s0 == 0x0000003dUL;
-  const SBool   s177 = s0 == 0x0000003eUL;
-  const SBool   s180 = s0 == 0x0000003fUL;
-  const SWord32 s183 = s180 ? 0xc7b064e2UL : 0x61ca20bbUL;
-  const SWord32 s184 = s177 ? 0x9a19bbd9UL : s183;
-  const SWord32 s185 = s174 ? 0x2d96a909UL : s184;
-  const SWord32 s186 = s171 ? 0x6c8312d0UL : s185;
-  const SWord32 s187 = s168 ? 0xc1139639UL : s186;
-  const SWord32 s188 = s165 ? 0xab6f7c97UL : s187;
-  const SWord32 s189 = s162 ? 0x15a419a2UL : s188;
-  const SWord32 s190 = s159 ? 0x95cb62f5UL : s189;
-  const SWord32 s191 = s156 ? 0x7fd8b6adUL : s190;
-  const SWord32 s192 = s154 ? 0x15f2ac48UL : s191;
-  const SWord32 s193 = s151 ? 0x69e60a65UL : s192;
-  const SWord32 s194 = s148 ? 0xac0ca1e3UL : s193;
-  const SWord32 s195 = s145 ? 0xbdd96882UL : s194;
-  const SWord32 s196 = s142 ? 0xee333961UL : s195;
-  const SWord32 s197 = s139 ? 0xcfa62f21UL : s196;
-  const SWord32 s198 = s136 ? 0x1e8d0a40UL : s197;
-  const SWord32 s199 = s133 ? 0xb11924e1UL : s198;
-  const SWord32 s200 = s130 ? 0x6d73e55fUL : s199;
-  const SWord32 s201 = s127 ? 0x43a53f82UL : s200;
-  const SWord32 s202 = s124 ? 0x29cea5ddUL : s201;
-  const SWord32 s203 = s121 ? 0x19d699a5UL : s202;
-  const SWord32 s204 = s118 ? 0x0ff80c38UL : s203;
-  const SWord32 s205 = s115 ? 0x09de8d6dUL : s204;
-  const SWord32 s206 = s112 ? 0x06197ecbUL : s205;
-  const SWord32 s207 = s109 ? 0x03c50ea2UL : s206;
-  const SWord32 s208 = s106 ? 0x02547029UL : s207;
-  const SWord32 s209 = s103 ? 0x01709e79UL : s208;
-  const SWord32 s210 = s100 ? 0x00e3d1b0UL : s209;
-  const SWord32 s211 = s97 ? 0x008cccc9UL : s210;
-  const SWord32 s212 = s94 ? 0x005704e7UL : s211;
-  const SWord32 s213 = s92 ? 0x0035c7e2UL : s212;
-  const SWord32 s214 = s89 ? 0x00213d05UL : s213;
-  const SWord32 s215 = s86 ? 0x00148addUL : s214;
-  const SWord32 s216 = s83 ? 0x000cb228UL : s215;
-  const SWord32 s217 = s80 ? 0x0007d8b5UL : s216;
-  const SWord32 s218 = s77 ? 0x0004d973UL : s217;
-  const SWord32 s219 = s74 ? 0x0002ff42UL : s218;
-  const SWord32 s220 = s71 ? 0x0001da31UL : s219;
-  const SWord32 s221 = s68 ? 0x00012511UL : s220;
-  const SWord32 s222 = s65 ? 0x0000b520UL : s221;
-  const SWord32 s223 = s62 ? 0x00006ff1UL : s222;
-  const SWord32 s224 = s59 ? 0x0000452fUL : s223;
-  const SWord32 s225 = s56 ? 0x00002ac2UL : s224;
-  const SWord32 s226 = s54 ? 0x00001a6dUL : s225;
-  const SWord32 s227 = s51 ? 0x00001055UL : s226;
-  const SWord32 s228 = s48 ? 0x00000a18UL : s227;
-  const SWord32 s229 = s45 ? 0x0000063dUL : s228;
-  const SWord32 s230 = s42 ? 0x000003dbUL : s229;
-  const SWord32 s231 = s39 ? 0x00000262UL : s230;
-  const SWord32 s232 = s36 ? 0x00000179UL : s231;
-  const SWord32 s233 = s33 ? 0x000000e9UL : s232;
-  const SWord32 s234 = s31 ? 0x00000090UL : s233;
-  const SWord32 s235 = s28 ? 0x00000059UL : s234;
-  const SWord32 s236 = s25 ? 0x00000037UL : s235;
-  const SWord32 s237 = s22 ? 0x00000022UL : s236;
-  const SWord32 s238 = s19 ? 0x00000015UL : s237;
-  const SWord32 s239 = s17 ? 0x0000000dUL : s238;
-  const SWord32 s240 = s14 ? 0x00000008UL : s239;
-  const SWord32 s241 = s12 ? 0x00000005UL : s240;
-  const SWord32 s242 = s10 ? 0x00000003UL : s241;
-  const SWord32 s243 = s8 ? 0x00000002UL : s242;
-  const SWord32 s244 = s6 ? 0x00000001UL : s243;
-  const SWord32 s245 = s4 ? 0x00000001UL : s244;
-  const SWord32 s246 = s2 ? 0x00000000UL : s245;
-  
-  return s246;
-}
-== END: "fib1.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/fib2.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/fib2.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/fib2.gold
+++ /dev/null
@@ -1,102 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for fib2. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: fib2_driver
-
-fib2.o: fib2.c fib2.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-fib2_driver.o: fib2_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-fib2_driver: fib2.o fib2_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f fib2_driver
-== END: "Makefile" ==================
-== BEGIN: "fib2.h" ================
-/* Header file for fib2. Automatically generated by SBV. Do not edit! */
-
-#ifndef __fib2__HEADER_INCLUDED__
-#define __fib2__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-SWord32 fib2(const SWord32 n);
-
-#endif /* __fib2__HEADER_INCLUDED__ */
-== END: "fib2.h" ==================
-== BEGIN: "fib2_driver.c" ================
-/* Example driver program for fib2. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "fib2.h"
-
-int main(void)
-{
-  const SWord32 __result = fib2(0x00000014UL);
-  
-  printf("fib2(0x00000014UL) = 0x%08"PRIx32"UL\n", __result);
-
-  return 0;
-}
-== END: "fib2_driver.c" ==================
-== BEGIN: "fib2.c" ================
-/* File: "fib2.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "fib2.h"
-
-SWord32 fib2(const SWord32 n)
-{
-  const SWord32 s0 = n;
-  static const SWord32 table0[] = {
-      0x00000000UL, 0x00000001UL, 0x00000001UL, 0x00000002UL,
-      0x00000003UL, 0x00000005UL, 0x00000008UL, 0x0000000dUL,
-      0x00000015UL, 0x00000022UL, 0x00000037UL, 0x00000059UL,
-      0x00000090UL, 0x000000e9UL, 0x00000179UL, 0x00000262UL,
-      0x000003dbUL, 0x0000063dUL, 0x00000a18UL, 0x00001055UL,
-      0x00001a6dUL, 0x00002ac2UL, 0x0000452fUL, 0x00006ff1UL,
-      0x0000b520UL, 0x00012511UL, 0x0001da31UL, 0x0002ff42UL,
-      0x0004d973UL, 0x0007d8b5UL, 0x000cb228UL, 0x00148addUL,
-      0x00213d05UL, 0x0035c7e2UL, 0x005704e7UL, 0x008cccc9UL,
-      0x00e3d1b0UL, 0x01709e79UL, 0x02547029UL, 0x03c50ea2UL,
-      0x06197ecbUL, 0x09de8d6dUL, 0x0ff80c38UL, 0x19d699a5UL,
-      0x29cea5ddUL, 0x43a53f82UL, 0x6d73e55fUL, 0xb11924e1UL,
-      0x1e8d0a40UL, 0xcfa62f21UL, 0xee333961UL, 0xbdd96882UL,
-      0xac0ca1e3UL, 0x69e60a65UL, 0x15f2ac48UL, 0x7fd8b6adUL,
-      0x95cb62f5UL, 0x15a419a2UL, 0xab6f7c97UL, 0xc1139639UL,
-      0x6c8312d0UL, 0x2d96a909UL, 0x9a19bbd9UL, 0xc7b064e2UL,
-      0x61ca20bbUL
-  };
-  const SWord32 s65 = s0 >= 65 ? 0x00000000UL : table0[s0];
-  
-  return s65;
-}
-== END: "fib2.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/gcd.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/gcd.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/gcd.gold
+++ /dev/null
@@ -1,129 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for sgcd. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: sgcd_driver
-
-sgcd.o: sgcd.c sgcd.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-sgcd_driver.o: sgcd_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-sgcd_driver: sgcd.o sgcd_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f sgcd_driver
-== END: "Makefile" ==================
-== BEGIN: "sgcd.h" ================
-/* Header file for sgcd. Automatically generated by SBV. Do not edit! */
-
-#ifndef __sgcd__HEADER_INCLUDED__
-#define __sgcd__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-SWord8 sgcd(const SWord8 x, const SWord8 y);
-
-#endif /* __sgcd__HEADER_INCLUDED__ */
-== END: "sgcd.h" ==================
-== BEGIN: "sgcd_driver.c" ================
-/* Example driver program for sgcd. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "sgcd.h"
-
-int main(void)
-{
-  const SWord8 __result = sgcd(55, 154);
-  
-  printf("sgcd(55, 154) = %"PRIu8"\n", __result);
-
-  return 0;
-}
-== END: "sgcd_driver.c" ==================
-== BEGIN: "sgcd.c" ================
-/* File: "sgcd.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "sgcd.h"
-
-SWord8 sgcd(const SWord8 x, const SWord8 y)
-{
-  const SWord8 s0 = x;
-  const SWord8 s1 = y;
-  const SBool  s3 = s1 == 0;
-  const SWord8 s4 = (s1 == 0) ? s0 : (s0 % s1);
-  const SWord8 s5 = s3 ? s0 : s4;
-  const SBool  s6 = 0 == s5;
-  const SWord8 s7 = (s5 == 0) ? s1 : (s1 % s5);
-  const SWord8 s8 = s6 ? s1 : s7;
-  const SBool  s9 = 0 == s8;
-  const SWord8 s10 = (s8 == 0) ? s5 : (s5 % s8);
-  const SWord8 s11 = s9 ? s5 : s10;
-  const SBool  s12 = 0 == s11;
-  const SWord8 s13 = (s11 == 0) ? s8 : (s8 % s11);
-  const SWord8 s14 = s12 ? s8 : s13;
-  const SBool  s15 = 0 == s14;
-  const SWord8 s16 = (s14 == 0) ? s11 : (s11 % s14);
-  const SWord8 s17 = s15 ? s11 : s16;
-  const SBool  s18 = 0 == s17;
-  const SWord8 s19 = (s17 == 0) ? s14 : (s14 % s17);
-  const SWord8 s20 = s18 ? s14 : s19;
-  const SBool  s21 = 0 == s20;
-  const SWord8 s22 = (s20 == 0) ? s17 : (s17 % s20);
-  const SWord8 s23 = s21 ? s17 : s22;
-  const SBool  s24 = 0 == s23;
-  const SWord8 s25 = (s23 == 0) ? s20 : (s20 % s23);
-  const SWord8 s26 = s24 ? s20 : s25;
-  const SBool  s27 = 0 == s26;
-  const SWord8 s28 = (s26 == 0) ? s23 : (s23 % s26);
-  const SWord8 s29 = s27 ? s23 : s28;
-  const SBool  s30 = 0 == s29;
-  const SWord8 s31 = (s29 == 0) ? s26 : (s26 % s29);
-  const SWord8 s32 = s30 ? s26 : s31;
-  const SBool  s33 = 0 == s32;
-  const SWord8 s34 = (s32 == 0) ? s29 : (s29 % s32);
-  const SWord8 s35 = s33 ? s29 : s34;
-  const SBool  s36 = 0 == s35;
-  const SWord8 s37 = s36 ? s32 : s35;
-  const SWord8 s38 = s33 ? s29 : s37;
-  const SWord8 s39 = s30 ? s26 : s38;
-  const SWord8 s40 = s27 ? s23 : s39;
-  const SWord8 s41 = s24 ? s20 : s40;
-  const SWord8 s42 = s21 ? s17 : s41;
-  const SWord8 s43 = s18 ? s14 : s42;
-  const SWord8 s44 = s15 ? s11 : s43;
-  const SWord8 s45 = s12 ? s8 : s44;
-  const SWord8 s46 = s9 ? s5 : s45;
-  const SWord8 s47 = s6 ? s1 : s46;
-  const SWord8 s48 = s3 ? s0 : s47;
-  
-  return s48;
-}
-== END: "sgcd.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-1.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-Q.E.D.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-2.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-2.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-2.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-Q.E.D.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-3.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-3.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-3.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-Q.E.D.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-4.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-4.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-4.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-Q.E.D.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-5.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-5.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-5.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-Q.E.D.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-6.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-6.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-6.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-Q.E.D.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-7.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-7.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-7.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-Q.E.D.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-8.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-8.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-8.gold
+++ /dev/null
@@ -1,1 +0,0 @@
-Q.E.D.
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-9.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-9.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/higher-9.gold
+++ /dev/null
@@ -1,2 +0,0 @@
-Falsifiable. Counter-example:
-  s0 = 128 :: SWord8
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/legato.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/legato.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/legato.gold
+++ /dev/null
@@ -1,8957 +0,0 @@
-INPUTS
-  s0 :: SWord32, aliasing "addrX"
-  s1 :: SWord8, aliasing "x"
-  s2 :: SWord32, aliasing "addrY"
-  s3 :: SWord8, aliasing "y"
-  s4 :: SWord32, aliasing "addrLow"
-  s5 :: SWord8, aliasing "regX"
-  s6 :: SWord8, aliasing "regA"
-  s7 :: SWord8, aliasing "memVals"
-  s8 :: SBool, aliasing "flagC"
-  s9 :: SBool, aliasing "flagZ"
-CONSTANTS
-  s_2 = False
-  s_1 = True
-  s17 = 0 :: SWord8
-  s18 = 1 :: SWord8
-  s24 = 128 :: SWord8
-  s26 = 127 :: SWord8
-  s16 = 256 :: SWord16
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-AXIOMS
-DEFINE
-  s10 :: SBool = s0 /= s2
-  s11 :: SBool = s0 /= s4
-  s12 :: SBool = s10 & s11
-  s13 :: SBool = s2 /= s4
-  s14 :: SBool = s12 & s13
-  s15 :: SBool = ~ s14
-  s19 :: SWord8 = s1 & s18
-  s20 :: SBool = s17 /= s19
-  s21 :: SBool = s_2 == s20
-  s22 :: SBool = s0 == s4
-  s23 :: SWord8 = s1 >>> 1
-  s25 :: SWord8 = s23 | s24
-  s27 :: SWord8 = s23 & s26
-  s28 :: SWord8 = if s8 then s25 else s27
-  s29 :: SBool = s2 == s4
-  s30 :: SWord8 = if s29 then s3 else s7
-  s31 :: SWord8 = if s22 then s1 else s30
-  s32 :: SWord8 = if s22 then s28 else s31
-  s33 :: SWord8 = s32 >>> 1
-  s34 :: SWord8 = s26 & s33
-  s35 :: SWord8 = if s22 then s34 else s28
-  s36 :: SWord8 = s18 & s35
-  s37 :: SBool = s17 /= s36
-  s38 :: SBool = s_2 == s37
-  s39 :: SWord8 = if s20 then s24 else s17
-  s40 :: SWord8 = s18 & s39
-  s41 :: SBool = s17 /= s40
-  s42 :: SWord8 = s18 & s32
-  s43 :: SBool = s17 /= s42
-  s44 :: SWord8 = s35 >>> 1
-  s45 :: SWord8 = s24 | s44
-  s46 :: SWord8 = s26 & s44
-  s47 :: SWord8 = if s43 then s45 else s46
-  s48 :: SWord8 = if s22 then s47 else s34
-  s49 :: SWord8 = s48 >>> 1
-  s50 :: SWord8 = s24 | s49
-  s51 :: SWord8 = s26 & s49
-  s52 :: SWord8 = if s41 then s50 else s51
-  s53 :: SWord8 = if s22 then s52 else s47
-  s54 :: SWord8 = s18 & s53
-  s55 :: SBool = s17 /= s54
-  s56 :: SBool = s_2 == s55
-  s57 :: SWord8 = s39 >>> 1
-  s58 :: SWord8 = s24 | s57
-  s59 :: SWord8 = s26 & s57
-  s60 :: SWord8 = if s37 then s58 else s59
-  s61 :: SWord8 = s18 & s60
-  s62 :: SBool = s17 /= s61
-  s63 :: SWord8 = s18 & s48
-  s64 :: SBool = s17 /= s63
-  s65 :: SWord8 = s53 >>> 1
-  s66 :: SWord8 = s24 | s65
-  s67 :: SWord8 = s26 & s65
-  s68 :: SWord8 = if s64 then s66 else s67
-  s69 :: SWord8 = if s22 then s68 else s52
-  s70 :: SWord8 = s69 >>> 1
-  s71 :: SWord8 = s24 | s70
-  s72 :: SWord8 = s26 & s70
-  s73 :: SWord8 = if s62 then s71 else s72
-  s74 :: SWord8 = if s22 then s73 else s68
-  s75 :: SWord8 = s18 & s74
-  s76 :: SBool = s17 /= s75
-  s77 :: SBool = s_2 == s76
-  s78 :: SWord8 = s60 >>> 1
-  s79 :: SWord8 = s24 | s78
-  s80 :: SWord8 = s26 & s78
-  s81 :: SWord8 = if s55 then s79 else s80
-  s82 :: SWord8 = s18 & s81
-  s83 :: SBool = s17 /= s82
-  s84 :: SWord8 = s18 & s69
-  s85 :: SBool = s17 /= s84
-  s86 :: SWord8 = s74 >>> 1
-  s87 :: SWord8 = s24 | s86
-  s88 :: SWord8 = s26 & s86
-  s89 :: SWord8 = if s85 then s87 else s88
-  s90 :: SWord8 = if s22 then s89 else s73
-  s91 :: SWord8 = s90 >>> 1
-  s92 :: SWord8 = s24 | s91
-  s93 :: SWord8 = s26 & s91
-  s94 :: SWord8 = if s83 then s92 else s93
-  s95 :: SWord8 = if s22 then s94 else s89
-  s96 :: SWord8 = s18 & s95
-  s97 :: SBool = s17 /= s96
-  s98 :: SBool = s_2 == s97
-  s99 :: SWord8 = s81 >>> 1
-  s100 :: SWord8 = s24 | s99
-  s101 :: SWord8 = s26 & s99
-  s102 :: SWord8 = if s76 then s100 else s101
-  s103 :: SWord8 = s18 & s102
-  s104 :: SBool = s17 /= s103
-  s105 :: SWord8 = s18 & s90
-  s106 :: SBool = s17 /= s105
-  s107 :: SWord8 = s95 >>> 1
-  s108 :: SWord8 = s24 | s107
-  s109 :: SWord8 = s26 & s107
-  s110 :: SWord8 = if s106 then s108 else s109
-  s111 :: SWord8 = if s22 then s110 else s94
-  s112 :: SWord8 = s111 >>> 1
-  s113 :: SWord8 = s24 | s112
-  s114 :: SWord8 = s26 & s112
-  s115 :: SWord8 = if s104 then s113 else s114
-  s116 :: SWord8 = if s22 then s115 else s110
-  s117 :: SWord8 = s18 & s116
-  s118 :: SBool = s17 /= s117
-  s119 :: SBool = s_2 == s118
-  s120 :: SWord8 = s102 >>> 1
-  s121 :: SWord8 = s24 | s120
-  s122 :: SWord8 = s26 & s120
-  s123 :: SWord8 = if s97 then s121 else s122
-  s124 :: SWord8 = s18 & s123
-  s125 :: SBool = s17 /= s124
-  s126 :: SWord8 = s18 & s111
-  s127 :: SBool = s17 /= s126
-  s128 :: SWord8 = s116 >>> 1
-  s129 :: SWord8 = s24 | s128
-  s130 :: SWord8 = s26 & s128
-  s131 :: SWord8 = if s127 then s129 else s130
-  s132 :: SWord8 = if s22 then s131 else s115
-  s133 :: SWord8 = s132 >>> 1
-  s134 :: SWord8 = s24 | s133
-  s135 :: SWord8 = s26 & s133
-  s136 :: SWord8 = if s125 then s134 else s135
-  s137 :: SWord8 = if s22 then s136 else s131
-  s138 :: SWord8 = s18 & s137
-  s139 :: SBool = s17 /= s138
-  s140 :: SBool = s_2 == s139
-  s141 :: SWord8 = s123 >>> 1
-  s142 :: SWord8 = s24 | s141
-  s143 :: SWord8 = s26 & s141
-  s144 :: SWord8 = if s118 then s142 else s143
-  s145 :: SWord8 = s18 & s144
-  s146 :: SBool = s17 /= s145
-  s147 :: SWord8 = s18 & s132
-  s148 :: SBool = s17 /= s147
-  s149 :: SWord8 = s137 >>> 1
-  s150 :: SWord8 = s24 | s149
-  s151 :: SWord8 = s26 & s149
-  s152 :: SWord8 = if s148 then s150 else s151
-  s153 :: SWord8 = if s22 then s152 else s136
-  s154 :: SWord8 = s153 >>> 1
-  s155 :: SWord8 = s24 | s154
-  s156 :: SWord8 = s26 & s154
-  s157 :: SWord8 = if s146 then s155 else s156
-  s158 :: SWord8 = if s22 then s157 else s152
-  s159 :: SWord8 = s18 & s158
-  s160 :: SBool = s17 /= s159
-  s161 :: SBool = s_2 == s160
-  s162 :: SWord8 = s144 >>> 1
-  s163 :: SWord8 = s24 | s162
-  s164 :: SWord8 = s26 & s162
-  s165 :: SWord8 = if s139 then s163 else s164
-  s166 :: SWord8 = s165 >>> 1
-  s167 :: SWord8 = s24 | s166
-  s168 :: SWord8 = s26 & s166
-  s169 :: SWord8 = if s160 then s167 else s168
-  s170 :: SBool = s0 == s2
-  s171 :: SWord8 = s18 & s153
-  s172 :: SBool = s17 /= s171
-  s173 :: SWord8 = s158 >>> 1
-  s174 :: SWord8 = s24 | s173
-  s175 :: SWord8 = s26 & s173
-  s176 :: SWord8 = if s172 then s174 else s175
-  s177 :: SWord8 = if s170 then s1 else s3
-  s178 :: SWord8 = if s170 then s28 else s177
-  s179 :: SWord8 = if s29 then s34 else s178
-  s180 :: SWord8 = if s170 then s47 else s179
-  s181 :: SWord8 = if s29 then s52 else s180
-  s182 :: SWord8 = if s170 then s68 else s181
-  s183 :: SWord8 = if s29 then s73 else s182
-  s184 :: SWord8 = if s170 then s89 else s183
-  s185 :: SWord8 = if s29 then s94 else s184
-  s186 :: SWord8 = if s170 then s110 else s185
-  s187 :: SWord8 = if s29 then s115 else s186
-  s188 :: SWord8 = if s170 then s131 else s187
-  s189 :: SWord8 = if s29 then s136 else s188
-  s190 :: SWord8 = if s170 then s152 else s189
-  s191 :: SWord8 = if s29 then s157 else s190
-  s192 :: SWord8 = if s170 then s176 else s191
-  s193 :: SWord8 = s165 + s192
-  s194 :: SBool = s193 < s192
-  s195 :: SBool = s193 < s165
-  s196 :: SBool = s194 | s195
-  s197 :: SWord8 = s193 >>> 1
-  s198 :: SWord8 = s24 | s197
-  s199 :: SWord8 = s26 & s197
-  s200 :: SWord8 = if s196 then s198 else s199
-  s201 :: SWord8 = if s161 then s169 else s200
-  s202 :: SWord8 = s144 + s190
-  s203 :: SWord8 = s18 & s202
-  s204 :: SBool = s17 /= s203
-  s205 :: SWord8 = if s204 then s155 else s156
-  s206 :: SWord8 = if s22 then s205 else s152
-  s207 :: SWord8 = s18 & s206
-  s208 :: SBool = s17 /= s207
-  s209 :: SBool = s_2 == s208
-  s210 :: SBool = s202 < s190
-  s211 :: SBool = s202 < s144
-  s212 :: SBool = s210 | s211
-  s213 :: SWord8 = s202 >>> 1
-  s214 :: SWord8 = s24 | s213
-  s215 :: SWord8 = s26 & s213
-  s216 :: SWord8 = if s212 then s214 else s215
-  s217 :: SWord8 = s216 >>> 1
-  s218 :: SWord8 = s24 | s217
-  s219 :: SWord8 = s26 & s217
-  s220 :: SWord8 = if s208 then s218 else s219
-  s221 :: SWord8 = s206 >>> 1
-  s222 :: SWord8 = s24 | s221
-  s223 :: SWord8 = s26 & s221
-  s224 :: SWord8 = if s172 then s222 else s223
-  s225 :: SWord8 = if s29 then s205 else s190
-  s226 :: SWord8 = if s170 then s224 else s225
-  s227 :: SWord8 = s216 + s226
-  s228 :: SBool = s227 < s226
-  s229 :: SBool = s227 < s216
-  s230 :: SBool = s228 | s229
-  s231 :: SWord8 = s227 >>> 1
-  s232 :: SWord8 = s24 | s231
-  s233 :: SWord8 = s26 & s231
-  s234 :: SWord8 = if s230 then s232 else s233
-  s235 :: SWord8 = if s209 then s220 else s234
-  s236 :: SWord8 = if s140 then s201 else s235
-  s237 :: SWord8 = s123 + s188
-  s238 :: SWord8 = s18 & s237
-  s239 :: SBool = s17 /= s238
-  s240 :: SWord8 = if s239 then s134 else s135
-  s241 :: SWord8 = if s22 then s240 else s131
-  s242 :: SWord8 = s18 & s241
-  s243 :: SBool = s17 /= s242
-  s244 :: SBool = s_2 == s243
-  s245 :: SBool = s237 < s188
-  s246 :: SBool = s237 < s123
-  s247 :: SBool = s245 | s246
-  s248 :: SWord8 = s237 >>> 1
-  s249 :: SWord8 = s24 | s248
-  s250 :: SWord8 = s26 & s248
-  s251 :: SWord8 = if s247 then s249 else s250
-  s252 :: SWord8 = s18 & s251
-  s253 :: SBool = s17 /= s252
-  s254 :: SWord8 = s241 >>> 1
-  s255 :: SWord8 = s24 | s254
-  s256 :: SWord8 = s26 & s254
-  s257 :: SWord8 = if s148 then s255 else s256
-  s258 :: SWord8 = if s22 then s257 else s240
-  s259 :: SWord8 = s258 >>> 1
-  s260 :: SWord8 = s24 | s259
-  s261 :: SWord8 = s26 & s259
-  s262 :: SWord8 = if s253 then s260 else s261
-  s263 :: SWord8 = if s22 then s262 else s257
-  s264 :: SWord8 = s18 & s263
-  s265 :: SBool = s17 /= s264
-  s266 :: SBool = s_2 == s265
-  s267 :: SWord8 = s251 >>> 1
-  s268 :: SWord8 = s24 | s267
-  s269 :: SWord8 = s26 & s267
-  s270 :: SWord8 = if s243 then s268 else s269
-  s271 :: SWord8 = s270 >>> 1
-  s272 :: SWord8 = s24 | s271
-  s273 :: SWord8 = s26 & s271
-  s274 :: SWord8 = if s265 then s272 else s273
-  s275 :: SWord8 = s18 & s258
-  s276 :: SBool = s17 /= s275
-  s277 :: SWord8 = s263 >>> 1
-  s278 :: SWord8 = s24 | s277
-  s279 :: SWord8 = s26 & s277
-  s280 :: SWord8 = if s276 then s278 else s279
-  s281 :: SWord8 = if s29 then s240 else s188
-  s282 :: SWord8 = if s170 then s257 else s281
-  s283 :: SWord8 = if s29 then s262 else s282
-  s284 :: SWord8 = if s170 then s280 else s283
-  s285 :: SWord8 = s270 + s284
-  s286 :: SBool = s285 < s284
-  s287 :: SBool = s285 < s270
-  s288 :: SBool = s286 | s287
-  s289 :: SWord8 = s285 >>> 1
-  s290 :: SWord8 = s24 | s289
-  s291 :: SWord8 = s26 & s289
-  s292 :: SWord8 = if s288 then s290 else s291
-  s293 :: SWord8 = if s266 then s274 else s292
-  s294 :: SWord8 = s251 + s282
-  s295 :: SWord8 = s18 & s294
-  s296 :: SBool = s17 /= s295
-  s297 :: SWord8 = if s296 then s260 else s261
-  s298 :: SWord8 = if s22 then s297 else s257
-  s299 :: SWord8 = s18 & s298
-  s300 :: SBool = s17 /= s299
-  s301 :: SBool = s_2 == s300
-  s302 :: SBool = s294 < s282
-  s303 :: SBool = s294 < s251
-  s304 :: SBool = s302 | s303
-  s305 :: SWord8 = s294 >>> 1
-  s306 :: SWord8 = s24 | s305
-  s307 :: SWord8 = s26 & s305
-  s308 :: SWord8 = if s304 then s306 else s307
-  s309 :: SWord8 = s308 >>> 1
-  s310 :: SWord8 = s24 | s309
-  s311 :: SWord8 = s26 & s309
-  s312 :: SWord8 = if s300 then s310 else s311
-  s313 :: SWord8 = s298 >>> 1
-  s314 :: SWord8 = s24 | s313
-  s315 :: SWord8 = s26 & s313
-  s316 :: SWord8 = if s276 then s314 else s315
-  s317 :: SWord8 = if s29 then s297 else s282
-  s318 :: SWord8 = if s170 then s316 else s317
-  s319 :: SWord8 = s308 + s318
-  s320 :: SBool = s319 < s318
-  s321 :: SBool = s319 < s308
-  s322 :: SBool = s320 | s321
-  s323 :: SWord8 = s319 >>> 1
-  s324 :: SWord8 = s24 | s323
-  s325 :: SWord8 = s26 & s323
-  s326 :: SWord8 = if s322 then s324 else s325
-  s327 :: SWord8 = if s301 then s312 else s326
-  s328 :: SWord8 = if s244 then s293 else s327
-  s329 :: SWord8 = if s119 then s236 else s328
-  s330 :: SWord8 = s102 + s186
-  s331 :: SWord8 = s18 & s330
-  s332 :: SBool = s17 /= s331
-  s333 :: SWord8 = if s332 then s113 else s114
-  s334 :: SWord8 = if s22 then s333 else s110
-  s335 :: SWord8 = s18 & s334
-  s336 :: SBool = s17 /= s335
-  s337 :: SBool = s_2 == s336
-  s338 :: SBool = s330 < s186
-  s339 :: SBool = s330 < s102
-  s340 :: SBool = s338 | s339
-  s341 :: SWord8 = s330 >>> 1
-  s342 :: SWord8 = s24 | s341
-  s343 :: SWord8 = s26 & s341
-  s344 :: SWord8 = if s340 then s342 else s343
-  s345 :: SWord8 = s18 & s344
-  s346 :: SBool = s17 /= s345
-  s347 :: SWord8 = s334 >>> 1
-  s348 :: SWord8 = s24 | s347
-  s349 :: SWord8 = s26 & s347
-  s350 :: SWord8 = if s127 then s348 else s349
-  s351 :: SWord8 = if s22 then s350 else s333
-  s352 :: SWord8 = s351 >>> 1
-  s353 :: SWord8 = s24 | s352
-  s354 :: SWord8 = s26 & s352
-  s355 :: SWord8 = if s346 then s353 else s354
-  s356 :: SWord8 = if s22 then s355 else s350
-  s357 :: SWord8 = s18 & s356
-  s358 :: SBool = s17 /= s357
-  s359 :: SBool = s_2 == s358
-  s360 :: SWord8 = s344 >>> 1
-  s361 :: SWord8 = s24 | s360
-  s362 :: SWord8 = s26 & s360
-  s363 :: SWord8 = if s336 then s361 else s362
-  s364 :: SWord8 = s18 & s363
-  s365 :: SBool = s17 /= s364
-  s366 :: SWord8 = s18 & s351
-  s367 :: SBool = s17 /= s366
-  s368 :: SWord8 = s356 >>> 1
-  s369 :: SWord8 = s24 | s368
-  s370 :: SWord8 = s26 & s368
-  s371 :: SWord8 = if s367 then s369 else s370
-  s372 :: SWord8 = if s22 then s371 else s355
-  s373 :: SWord8 = s372 >>> 1
-  s374 :: SWord8 = s24 | s373
-  s375 :: SWord8 = s26 & s373
-  s376 :: SWord8 = if s365 then s374 else s375
-  s377 :: SWord8 = if s22 then s376 else s371
-  s378 :: SWord8 = s18 & s377
-  s379 :: SBool = s17 /= s378
-  s380 :: SBool = s_2 == s379
-  s381 :: SWord8 = s363 >>> 1
-  s382 :: SWord8 = s24 | s381
-  s383 :: SWord8 = s26 & s381
-  s384 :: SWord8 = if s358 then s382 else s383
-  s385 :: SWord8 = s384 >>> 1
-  s386 :: SWord8 = s24 | s385
-  s387 :: SWord8 = s26 & s385
-  s388 :: SWord8 = if s379 then s386 else s387
-  s389 :: SWord8 = s18 & s372
-  s390 :: SBool = s17 /= s389
-  s391 :: SWord8 = s377 >>> 1
-  s392 :: SWord8 = s24 | s391
-  s393 :: SWord8 = s26 & s391
-  s394 :: SWord8 = if s390 then s392 else s393
-  s395 :: SWord8 = if s29 then s333 else s186
-  s396 :: SWord8 = if s170 then s350 else s395
-  s397 :: SWord8 = if s29 then s355 else s396
-  s398 :: SWord8 = if s170 then s371 else s397
-  s399 :: SWord8 = if s29 then s376 else s398
-  s400 :: SWord8 = if s170 then s394 else s399
-  s401 :: SWord8 = s384 + s400
-  s402 :: SBool = s401 < s400
-  s403 :: SBool = s401 < s384
-  s404 :: SBool = s402 | s403
-  s405 :: SWord8 = s401 >>> 1
-  s406 :: SWord8 = s24 | s405
-  s407 :: SWord8 = s26 & s405
-  s408 :: SWord8 = if s404 then s406 else s407
-  s409 :: SWord8 = if s380 then s388 else s408
-  s410 :: SWord8 = s363 + s398
-  s411 :: SWord8 = s18 & s410
-  s412 :: SBool = s17 /= s411
-  s413 :: SWord8 = if s412 then s374 else s375
-  s414 :: SWord8 = if s22 then s413 else s371
-  s415 :: SWord8 = s18 & s414
-  s416 :: SBool = s17 /= s415
-  s417 :: SBool = s_2 == s416
-  s418 :: SBool = s410 < s398
-  s419 :: SBool = s410 < s363
-  s420 :: SBool = s418 | s419
-  s421 :: SWord8 = s410 >>> 1
-  s422 :: SWord8 = s24 | s421
-  s423 :: SWord8 = s26 & s421
-  s424 :: SWord8 = if s420 then s422 else s423
-  s425 :: SWord8 = s424 >>> 1
-  s426 :: SWord8 = s24 | s425
-  s427 :: SWord8 = s26 & s425
-  s428 :: SWord8 = if s416 then s426 else s427
-  s429 :: SWord8 = s414 >>> 1
-  s430 :: SWord8 = s24 | s429
-  s431 :: SWord8 = s26 & s429
-  s432 :: SWord8 = if s390 then s430 else s431
-  s433 :: SWord8 = if s29 then s413 else s398
-  s434 :: SWord8 = if s170 then s432 else s433
-  s435 :: SWord8 = s424 + s434
-  s436 :: SBool = s435 < s434
-  s437 :: SBool = s435 < s424
-  s438 :: SBool = s436 | s437
-  s439 :: SWord8 = s435 >>> 1
-  s440 :: SWord8 = s24 | s439
-  s441 :: SWord8 = s26 & s439
-  s442 :: SWord8 = if s438 then s440 else s441
-  s443 :: SWord8 = if s417 then s428 else s442
-  s444 :: SWord8 = if s359 then s409 else s443
-  s445 :: SWord8 = s344 + s396
-  s446 :: SWord8 = s18 & s445
-  s447 :: SBool = s17 /= s446
-  s448 :: SWord8 = if s447 then s353 else s354
-  s449 :: SWord8 = if s22 then s448 else s350
-  s450 :: SWord8 = s18 & s449
-  s451 :: SBool = s17 /= s450
-  s452 :: SBool = s_2 == s451
-  s453 :: SBool = s445 < s396
-  s454 :: SBool = s445 < s344
-  s455 :: SBool = s453 | s454
-  s456 :: SWord8 = s445 >>> 1
-  s457 :: SWord8 = s24 | s456
-  s458 :: SWord8 = s26 & s456
-  s459 :: SWord8 = if s455 then s457 else s458
-  s460 :: SWord8 = s18 & s459
-  s461 :: SBool = s17 /= s460
-  s462 :: SWord8 = s449 >>> 1
-  s463 :: SWord8 = s24 | s462
-  s464 :: SWord8 = s26 & s462
-  s465 :: SWord8 = if s367 then s463 else s464
-  s466 :: SWord8 = if s22 then s465 else s448
-  s467 :: SWord8 = s466 >>> 1
-  s468 :: SWord8 = s24 | s467
-  s469 :: SWord8 = s26 & s467
-  s470 :: SWord8 = if s461 then s468 else s469
-  s471 :: SWord8 = if s22 then s470 else s465
-  s472 :: SWord8 = s18 & s471
-  s473 :: SBool = s17 /= s472
-  s474 :: SBool = s_2 == s473
-  s475 :: SWord8 = s459 >>> 1
-  s476 :: SWord8 = s24 | s475
-  s477 :: SWord8 = s26 & s475
-  s478 :: SWord8 = if s451 then s476 else s477
-  s479 :: SWord8 = s478 >>> 1
-  s480 :: SWord8 = s24 | s479
-  s481 :: SWord8 = s26 & s479
-  s482 :: SWord8 = if s473 then s480 else s481
-  s483 :: SWord8 = s18 & s466
-  s484 :: SBool = s17 /= s483
-  s485 :: SWord8 = s471 >>> 1
-  s486 :: SWord8 = s24 | s485
-  s487 :: SWord8 = s26 & s485
-  s488 :: SWord8 = if s484 then s486 else s487
-  s489 :: SWord8 = if s29 then s448 else s396
-  s490 :: SWord8 = if s170 then s465 else s489
-  s491 :: SWord8 = if s29 then s470 else s490
-  s492 :: SWord8 = if s170 then s488 else s491
-  s493 :: SWord8 = s478 + s492
-  s494 :: SBool = s493 < s492
-  s495 :: SBool = s493 < s478
-  s496 :: SBool = s494 | s495
-  s497 :: SWord8 = s493 >>> 1
-  s498 :: SWord8 = s24 | s497
-  s499 :: SWord8 = s26 & s497
-  s500 :: SWord8 = if s496 then s498 else s499
-  s501 :: SWord8 = if s474 then s482 else s500
-  s502 :: SWord8 = s459 + s490
-  s503 :: SWord8 = s18 & s502
-  s504 :: SBool = s17 /= s503
-  s505 :: SWord8 = if s504 then s468 else s469
-  s506 :: SWord8 = if s22 then s505 else s465
-  s507 :: SWord8 = s18 & s506
-  s508 :: SBool = s17 /= s507
-  s509 :: SBool = s_2 == s508
-  s510 :: SBool = s502 < s490
-  s511 :: SBool = s502 < s459
-  s512 :: SBool = s510 | s511
-  s513 :: SWord8 = s502 >>> 1
-  s514 :: SWord8 = s24 | s513
-  s515 :: SWord8 = s26 & s513
-  s516 :: SWord8 = if s512 then s514 else s515
-  s517 :: SWord8 = s516 >>> 1
-  s518 :: SWord8 = s24 | s517
-  s519 :: SWord8 = s26 & s517
-  s520 :: SWord8 = if s508 then s518 else s519
-  s521 :: SWord8 = s506 >>> 1
-  s522 :: SWord8 = s24 | s521
-  s523 :: SWord8 = s26 & s521
-  s524 :: SWord8 = if s484 then s522 else s523
-  s525 :: SWord8 = if s29 then s505 else s490
-  s526 :: SWord8 = if s170 then s524 else s525
-  s527 :: SWord8 = s516 + s526
-  s528 :: SBool = s527 < s526
-  s529 :: SBool = s527 < s516
-  s530 :: SBool = s528 | s529
-  s531 :: SWord8 = s527 >>> 1
-  s532 :: SWord8 = s24 | s531
-  s533 :: SWord8 = s26 & s531
-  s534 :: SWord8 = if s530 then s532 else s533
-  s535 :: SWord8 = if s509 then s520 else s534
-  s536 :: SWord8 = if s452 then s501 else s535
-  s537 :: SWord8 = if s337 then s444 else s536
-  s538 :: SWord8 = if s98 then s329 else s537
-  s539 :: SWord8 = s81 + s184
-  s540 :: SWord8 = s18 & s539
-  s541 :: SBool = s17 /= s540
-  s542 :: SWord8 = if s541 then s92 else s93
-  s543 :: SWord8 = if s22 then s542 else s89
-  s544 :: SWord8 = s18 & s543
-  s545 :: SBool = s17 /= s544
-  s546 :: SBool = s_2 == s545
-  s547 :: SBool = s539 < s184
-  s548 :: SBool = s539 < s81
-  s549 :: SBool = s547 | s548
-  s550 :: SWord8 = s539 >>> 1
-  s551 :: SWord8 = s24 | s550
-  s552 :: SWord8 = s26 & s550
-  s553 :: SWord8 = if s549 then s551 else s552
-  s554 :: SWord8 = s18 & s553
-  s555 :: SBool = s17 /= s554
-  s556 :: SWord8 = s543 >>> 1
-  s557 :: SWord8 = s24 | s556
-  s558 :: SWord8 = s26 & s556
-  s559 :: SWord8 = if s106 then s557 else s558
-  s560 :: SWord8 = if s22 then s559 else s542
-  s561 :: SWord8 = s560 >>> 1
-  s562 :: SWord8 = s24 | s561
-  s563 :: SWord8 = s26 & s561
-  s564 :: SWord8 = if s555 then s562 else s563
-  s565 :: SWord8 = if s22 then s564 else s559
-  s566 :: SWord8 = s18 & s565
-  s567 :: SBool = s17 /= s566
-  s568 :: SBool = s_2 == s567
-  s569 :: SWord8 = s553 >>> 1
-  s570 :: SWord8 = s24 | s569
-  s571 :: SWord8 = s26 & s569
-  s572 :: SWord8 = if s545 then s570 else s571
-  s573 :: SWord8 = s18 & s572
-  s574 :: SBool = s17 /= s573
-  s575 :: SWord8 = s18 & s560
-  s576 :: SBool = s17 /= s575
-  s577 :: SWord8 = s565 >>> 1
-  s578 :: SWord8 = s24 | s577
-  s579 :: SWord8 = s26 & s577
-  s580 :: SWord8 = if s576 then s578 else s579
-  s581 :: SWord8 = if s22 then s580 else s564
-  s582 :: SWord8 = s581 >>> 1
-  s583 :: SWord8 = s24 | s582
-  s584 :: SWord8 = s26 & s582
-  s585 :: SWord8 = if s574 then s583 else s584
-  s586 :: SWord8 = if s22 then s585 else s580
-  s587 :: SWord8 = s18 & s586
-  s588 :: SBool = s17 /= s587
-  s589 :: SBool = s_2 == s588
-  s590 :: SWord8 = s572 >>> 1
-  s591 :: SWord8 = s24 | s590
-  s592 :: SWord8 = s26 & s590
-  s593 :: SWord8 = if s567 then s591 else s592
-  s594 :: SWord8 = s18 & s593
-  s595 :: SBool = s17 /= s594
-  s596 :: SWord8 = s18 & s581
-  s597 :: SBool = s17 /= s596
-  s598 :: SWord8 = s586 >>> 1
-  s599 :: SWord8 = s24 | s598
-  s600 :: SWord8 = s26 & s598
-  s601 :: SWord8 = if s597 then s599 else s600
-  s602 :: SWord8 = if s22 then s601 else s585
-  s603 :: SWord8 = s602 >>> 1
-  s604 :: SWord8 = s24 | s603
-  s605 :: SWord8 = s26 & s603
-  s606 :: SWord8 = if s595 then s604 else s605
-  s607 :: SWord8 = if s22 then s606 else s601
-  s608 :: SWord8 = s18 & s607
-  s609 :: SBool = s17 /= s608
-  s610 :: SBool = s_2 == s609
-  s611 :: SWord8 = s593 >>> 1
-  s612 :: SWord8 = s24 | s611
-  s613 :: SWord8 = s26 & s611
-  s614 :: SWord8 = if s588 then s612 else s613
-  s615 :: SWord8 = s614 >>> 1
-  s616 :: SWord8 = s24 | s615
-  s617 :: SWord8 = s26 & s615
-  s618 :: SWord8 = if s609 then s616 else s617
-  s619 :: SWord8 = s18 & s602
-  s620 :: SBool = s17 /= s619
-  s621 :: SWord8 = s607 >>> 1
-  s622 :: SWord8 = s24 | s621
-  s623 :: SWord8 = s26 & s621
-  s624 :: SWord8 = if s620 then s622 else s623
-  s625 :: SWord8 = if s29 then s542 else s184
-  s626 :: SWord8 = if s170 then s559 else s625
-  s627 :: SWord8 = if s29 then s564 else s626
-  s628 :: SWord8 = if s170 then s580 else s627
-  s629 :: SWord8 = if s29 then s585 else s628
-  s630 :: SWord8 = if s170 then s601 else s629
-  s631 :: SWord8 = if s29 then s606 else s630
-  s632 :: SWord8 = if s170 then s624 else s631
-  s633 :: SWord8 = s614 + s632
-  s634 :: SBool = s633 < s632
-  s635 :: SBool = s633 < s614
-  s636 :: SBool = s634 | s635
-  s637 :: SWord8 = s633 >>> 1
-  s638 :: SWord8 = s24 | s637
-  s639 :: SWord8 = s26 & s637
-  s640 :: SWord8 = if s636 then s638 else s639
-  s641 :: SWord8 = if s610 then s618 else s640
-  s642 :: SWord8 = s593 + s630
-  s643 :: SWord8 = s18 & s642
-  s644 :: SBool = s17 /= s643
-  s645 :: SWord8 = if s644 then s604 else s605
-  s646 :: SWord8 = if s22 then s645 else s601
-  s647 :: SWord8 = s18 & s646
-  s648 :: SBool = s17 /= s647
-  s649 :: SBool = s_2 == s648
-  s650 :: SBool = s642 < s630
-  s651 :: SBool = s642 < s593
-  s652 :: SBool = s650 | s651
-  s653 :: SWord8 = s642 >>> 1
-  s654 :: SWord8 = s24 | s653
-  s655 :: SWord8 = s26 & s653
-  s656 :: SWord8 = if s652 then s654 else s655
-  s657 :: SWord8 = s656 >>> 1
-  s658 :: SWord8 = s24 | s657
-  s659 :: SWord8 = s26 & s657
-  s660 :: SWord8 = if s648 then s658 else s659
-  s661 :: SWord8 = s646 >>> 1
-  s662 :: SWord8 = s24 | s661
-  s663 :: SWord8 = s26 & s661
-  s664 :: SWord8 = if s620 then s662 else s663
-  s665 :: SWord8 = if s29 then s645 else s630
-  s666 :: SWord8 = if s170 then s664 else s665
-  s667 :: SWord8 = s656 + s666
-  s668 :: SBool = s667 < s666
-  s669 :: SBool = s667 < s656
-  s670 :: SBool = s668 | s669
-  s671 :: SWord8 = s667 >>> 1
-  s672 :: SWord8 = s24 | s671
-  s673 :: SWord8 = s26 & s671
-  s674 :: SWord8 = if s670 then s672 else s673
-  s675 :: SWord8 = if s649 then s660 else s674
-  s676 :: SWord8 = if s589 then s641 else s675
-  s677 :: SWord8 = s572 + s628
-  s678 :: SWord8 = s18 & s677
-  s679 :: SBool = s17 /= s678
-  s680 :: SWord8 = if s679 then s583 else s584
-  s681 :: SWord8 = if s22 then s680 else s580
-  s682 :: SWord8 = s18 & s681
-  s683 :: SBool = s17 /= s682
-  s684 :: SBool = s_2 == s683
-  s685 :: SBool = s677 < s628
-  s686 :: SBool = s677 < s572
-  s687 :: SBool = s685 | s686
-  s688 :: SWord8 = s677 >>> 1
-  s689 :: SWord8 = s24 | s688
-  s690 :: SWord8 = s26 & s688
-  s691 :: SWord8 = if s687 then s689 else s690
-  s692 :: SWord8 = s18 & s691
-  s693 :: SBool = s17 /= s692
-  s694 :: SWord8 = s681 >>> 1
-  s695 :: SWord8 = s24 | s694
-  s696 :: SWord8 = s26 & s694
-  s697 :: SWord8 = if s597 then s695 else s696
-  s698 :: SWord8 = if s22 then s697 else s680
-  s699 :: SWord8 = s698 >>> 1
-  s700 :: SWord8 = s24 | s699
-  s701 :: SWord8 = s26 & s699
-  s702 :: SWord8 = if s693 then s700 else s701
-  s703 :: SWord8 = if s22 then s702 else s697
-  s704 :: SWord8 = s18 & s703
-  s705 :: SBool = s17 /= s704
-  s706 :: SBool = s_2 == s705
-  s707 :: SWord8 = s691 >>> 1
-  s708 :: SWord8 = s24 | s707
-  s709 :: SWord8 = s26 & s707
-  s710 :: SWord8 = if s683 then s708 else s709
-  s711 :: SWord8 = s710 >>> 1
-  s712 :: SWord8 = s24 | s711
-  s713 :: SWord8 = s26 & s711
-  s714 :: SWord8 = if s705 then s712 else s713
-  s715 :: SWord8 = s18 & s698
-  s716 :: SBool = s17 /= s715
-  s717 :: SWord8 = s703 >>> 1
-  s718 :: SWord8 = s24 | s717
-  s719 :: SWord8 = s26 & s717
-  s720 :: SWord8 = if s716 then s718 else s719
-  s721 :: SWord8 = if s29 then s680 else s628
-  s722 :: SWord8 = if s170 then s697 else s721
-  s723 :: SWord8 = if s29 then s702 else s722
-  s724 :: SWord8 = if s170 then s720 else s723
-  s725 :: SWord8 = s710 + s724
-  s726 :: SBool = s725 < s724
-  s727 :: SBool = s725 < s710
-  s728 :: SBool = s726 | s727
-  s729 :: SWord8 = s725 >>> 1
-  s730 :: SWord8 = s24 | s729
-  s731 :: SWord8 = s26 & s729
-  s732 :: SWord8 = if s728 then s730 else s731
-  s733 :: SWord8 = if s706 then s714 else s732
-  s734 :: SWord8 = s691 + s722
-  s735 :: SWord8 = s18 & s734
-  s736 :: SBool = s17 /= s735
-  s737 :: SWord8 = if s736 then s700 else s701
-  s738 :: SWord8 = if s22 then s737 else s697
-  s739 :: SWord8 = s18 & s738
-  s740 :: SBool = s17 /= s739
-  s741 :: SBool = s_2 == s740
-  s742 :: SBool = s734 < s722
-  s743 :: SBool = s734 < s691
-  s744 :: SBool = s742 | s743
-  s745 :: SWord8 = s734 >>> 1
-  s746 :: SWord8 = s24 | s745
-  s747 :: SWord8 = s26 & s745
-  s748 :: SWord8 = if s744 then s746 else s747
-  s749 :: SWord8 = s748 >>> 1
-  s750 :: SWord8 = s24 | s749
-  s751 :: SWord8 = s26 & s749
-  s752 :: SWord8 = if s740 then s750 else s751
-  s753 :: SWord8 = s738 >>> 1
-  s754 :: SWord8 = s24 | s753
-  s755 :: SWord8 = s26 & s753
-  s756 :: SWord8 = if s716 then s754 else s755
-  s757 :: SWord8 = if s29 then s737 else s722
-  s758 :: SWord8 = if s170 then s756 else s757
-  s759 :: SWord8 = s748 + s758
-  s760 :: SBool = s759 < s758
-  s761 :: SBool = s759 < s748
-  s762 :: SBool = s760 | s761
-  s763 :: SWord8 = s759 >>> 1
-  s764 :: SWord8 = s24 | s763
-  s765 :: SWord8 = s26 & s763
-  s766 :: SWord8 = if s762 then s764 else s765
-  s767 :: SWord8 = if s741 then s752 else s766
-  s768 :: SWord8 = if s684 then s733 else s767
-  s769 :: SWord8 = if s568 then s676 else s768
-  s770 :: SWord8 = s553 + s626
-  s771 :: SWord8 = s18 & s770
-  s772 :: SBool = s17 /= s771
-  s773 :: SWord8 = if s772 then s562 else s563
-  s774 :: SWord8 = if s22 then s773 else s559
-  s775 :: SWord8 = s18 & s774
-  s776 :: SBool = s17 /= s775
-  s777 :: SBool = s_2 == s776
-  s778 :: SBool = s770 < s626
-  s779 :: SBool = s770 < s553
-  s780 :: SBool = s778 | s779
-  s781 :: SWord8 = s770 >>> 1
-  s782 :: SWord8 = s24 | s781
-  s783 :: SWord8 = s26 & s781
-  s784 :: SWord8 = if s780 then s782 else s783
-  s785 :: SWord8 = s18 & s784
-  s786 :: SBool = s17 /= s785
-  s787 :: SWord8 = s774 >>> 1
-  s788 :: SWord8 = s24 | s787
-  s789 :: SWord8 = s26 & s787
-  s790 :: SWord8 = if s576 then s788 else s789
-  s791 :: SWord8 = if s22 then s790 else s773
-  s792 :: SWord8 = s791 >>> 1
-  s793 :: SWord8 = s24 | s792
-  s794 :: SWord8 = s26 & s792
-  s795 :: SWord8 = if s786 then s793 else s794
-  s796 :: SWord8 = if s22 then s795 else s790
-  s797 :: SWord8 = s18 & s796
-  s798 :: SBool = s17 /= s797
-  s799 :: SBool = s_2 == s798
-  s800 :: SWord8 = s784 >>> 1
-  s801 :: SWord8 = s24 | s800
-  s802 :: SWord8 = s26 & s800
-  s803 :: SWord8 = if s776 then s801 else s802
-  s804 :: SWord8 = s18 & s803
-  s805 :: SBool = s17 /= s804
-  s806 :: SWord8 = s18 & s791
-  s807 :: SBool = s17 /= s806
-  s808 :: SWord8 = s796 >>> 1
-  s809 :: SWord8 = s24 | s808
-  s810 :: SWord8 = s26 & s808
-  s811 :: SWord8 = if s807 then s809 else s810
-  s812 :: SWord8 = if s22 then s811 else s795
-  s813 :: SWord8 = s812 >>> 1
-  s814 :: SWord8 = s24 | s813
-  s815 :: SWord8 = s26 & s813
-  s816 :: SWord8 = if s805 then s814 else s815
-  s817 :: SWord8 = if s22 then s816 else s811
-  s818 :: SWord8 = s18 & s817
-  s819 :: SBool = s17 /= s818
-  s820 :: SBool = s_2 == s819
-  s821 :: SWord8 = s803 >>> 1
-  s822 :: SWord8 = s24 | s821
-  s823 :: SWord8 = s26 & s821
-  s824 :: SWord8 = if s798 then s822 else s823
-  s825 :: SWord8 = s824 >>> 1
-  s826 :: SWord8 = s24 | s825
-  s827 :: SWord8 = s26 & s825
-  s828 :: SWord8 = if s819 then s826 else s827
-  s829 :: SWord8 = s18 & s812
-  s830 :: SBool = s17 /= s829
-  s831 :: SWord8 = s817 >>> 1
-  s832 :: SWord8 = s24 | s831
-  s833 :: SWord8 = s26 & s831
-  s834 :: SWord8 = if s830 then s832 else s833
-  s835 :: SWord8 = if s29 then s773 else s626
-  s836 :: SWord8 = if s170 then s790 else s835
-  s837 :: SWord8 = if s29 then s795 else s836
-  s838 :: SWord8 = if s170 then s811 else s837
-  s839 :: SWord8 = if s29 then s816 else s838
-  s840 :: SWord8 = if s170 then s834 else s839
-  s841 :: SWord8 = s824 + s840
-  s842 :: SBool = s841 < s840
-  s843 :: SBool = s841 < s824
-  s844 :: SBool = s842 | s843
-  s845 :: SWord8 = s841 >>> 1
-  s846 :: SWord8 = s24 | s845
-  s847 :: SWord8 = s26 & s845
-  s848 :: SWord8 = if s844 then s846 else s847
-  s849 :: SWord8 = if s820 then s828 else s848
-  s850 :: SWord8 = s803 + s838
-  s851 :: SWord8 = s18 & s850
-  s852 :: SBool = s17 /= s851
-  s853 :: SWord8 = if s852 then s814 else s815
-  s854 :: SWord8 = if s22 then s853 else s811
-  s855 :: SWord8 = s18 & s854
-  s856 :: SBool = s17 /= s855
-  s857 :: SBool = s_2 == s856
-  s858 :: SBool = s850 < s838
-  s859 :: SBool = s850 < s803
-  s860 :: SBool = s858 | s859
-  s861 :: SWord8 = s850 >>> 1
-  s862 :: SWord8 = s24 | s861
-  s863 :: SWord8 = s26 & s861
-  s864 :: SWord8 = if s860 then s862 else s863
-  s865 :: SWord8 = s864 >>> 1
-  s866 :: SWord8 = s24 | s865
-  s867 :: SWord8 = s26 & s865
-  s868 :: SWord8 = if s856 then s866 else s867
-  s869 :: SWord8 = s854 >>> 1
-  s870 :: SWord8 = s24 | s869
-  s871 :: SWord8 = s26 & s869
-  s872 :: SWord8 = if s830 then s870 else s871
-  s873 :: SWord8 = if s29 then s853 else s838
-  s874 :: SWord8 = if s170 then s872 else s873
-  s875 :: SWord8 = s864 + s874
-  s876 :: SBool = s875 < s874
-  s877 :: SBool = s875 < s864
-  s878 :: SBool = s876 | s877
-  s879 :: SWord8 = s875 >>> 1
-  s880 :: SWord8 = s24 | s879
-  s881 :: SWord8 = s26 & s879
-  s882 :: SWord8 = if s878 then s880 else s881
-  s883 :: SWord8 = if s857 then s868 else s882
-  s884 :: SWord8 = if s799 then s849 else s883
-  s885 :: SWord8 = s784 + s836
-  s886 :: SWord8 = s18 & s885
-  s887 :: SBool = s17 /= s886
-  s888 :: SWord8 = if s887 then s793 else s794
-  s889 :: SWord8 = if s22 then s888 else s790
-  s890 :: SWord8 = s18 & s889
-  s891 :: SBool = s17 /= s890
-  s892 :: SBool = s_2 == s891
-  s893 :: SBool = s885 < s836
-  s894 :: SBool = s885 < s784
-  s895 :: SBool = s893 | s894
-  s896 :: SWord8 = s885 >>> 1
-  s897 :: SWord8 = s24 | s896
-  s898 :: SWord8 = s26 & s896
-  s899 :: SWord8 = if s895 then s897 else s898
-  s900 :: SWord8 = s18 & s899
-  s901 :: SBool = s17 /= s900
-  s902 :: SWord8 = s889 >>> 1
-  s903 :: SWord8 = s24 | s902
-  s904 :: SWord8 = s26 & s902
-  s905 :: SWord8 = if s807 then s903 else s904
-  s906 :: SWord8 = if s22 then s905 else s888
-  s907 :: SWord8 = s906 >>> 1
-  s908 :: SWord8 = s24 | s907
-  s909 :: SWord8 = s26 & s907
-  s910 :: SWord8 = if s901 then s908 else s909
-  s911 :: SWord8 = if s22 then s910 else s905
-  s912 :: SWord8 = s18 & s911
-  s913 :: SBool = s17 /= s912
-  s914 :: SBool = s_2 == s913
-  s915 :: SWord8 = s899 >>> 1
-  s916 :: SWord8 = s24 | s915
-  s917 :: SWord8 = s26 & s915
-  s918 :: SWord8 = if s891 then s916 else s917
-  s919 :: SWord8 = s918 >>> 1
-  s920 :: SWord8 = s24 | s919
-  s921 :: SWord8 = s26 & s919
-  s922 :: SWord8 = if s913 then s920 else s921
-  s923 :: SWord8 = s18 & s906
-  s924 :: SBool = s17 /= s923
-  s925 :: SWord8 = s911 >>> 1
-  s926 :: SWord8 = s24 | s925
-  s927 :: SWord8 = s26 & s925
-  s928 :: SWord8 = if s924 then s926 else s927
-  s929 :: SWord8 = if s29 then s888 else s836
-  s930 :: SWord8 = if s170 then s905 else s929
-  s931 :: SWord8 = if s29 then s910 else s930
-  s932 :: SWord8 = if s170 then s928 else s931
-  s933 :: SWord8 = s918 + s932
-  s934 :: SBool = s933 < s932
-  s935 :: SBool = s933 < s918
-  s936 :: SBool = s934 | s935
-  s937 :: SWord8 = s933 >>> 1
-  s938 :: SWord8 = s24 | s937
-  s939 :: SWord8 = s26 & s937
-  s940 :: SWord8 = if s936 then s938 else s939
-  s941 :: SWord8 = if s914 then s922 else s940
-  s942 :: SWord8 = s899 + s930
-  s943 :: SWord8 = s18 & s942
-  s944 :: SBool = s17 /= s943
-  s945 :: SWord8 = if s944 then s908 else s909
-  s946 :: SWord8 = if s22 then s945 else s905
-  s947 :: SWord8 = s18 & s946
-  s948 :: SBool = s17 /= s947
-  s949 :: SBool = s_2 == s948
-  s950 :: SBool = s942 < s930
-  s951 :: SBool = s942 < s899
-  s952 :: SBool = s950 | s951
-  s953 :: SWord8 = s942 >>> 1
-  s954 :: SWord8 = s24 | s953
-  s955 :: SWord8 = s26 & s953
-  s956 :: SWord8 = if s952 then s954 else s955
-  s957 :: SWord8 = s956 >>> 1
-  s958 :: SWord8 = s24 | s957
-  s959 :: SWord8 = s26 & s957
-  s960 :: SWord8 = if s948 then s958 else s959
-  s961 :: SWord8 = s946 >>> 1
-  s962 :: SWord8 = s24 | s961
-  s963 :: SWord8 = s26 & s961
-  s964 :: SWord8 = if s924 then s962 else s963
-  s965 :: SWord8 = if s29 then s945 else s930
-  s966 :: SWord8 = if s170 then s964 else s965
-  s967 :: SWord8 = s956 + s966
-  s968 :: SBool = s967 < s966
-  s969 :: SBool = s967 < s956
-  s970 :: SBool = s968 | s969
-  s971 :: SWord8 = s967 >>> 1
-  s972 :: SWord8 = s24 | s971
-  s973 :: SWord8 = s26 & s971
-  s974 :: SWord8 = if s970 then s972 else s973
-  s975 :: SWord8 = if s949 then s960 else s974
-  s976 :: SWord8 = if s892 then s941 else s975
-  s977 :: SWord8 = if s777 then s884 else s976
-  s978 :: SWord8 = if s546 then s769 else s977
-  s979 :: SWord8 = if s77 then s538 else s978
-  s980 :: SWord8 = s60 + s182
-  s981 :: SWord8 = s18 & s980
-  s982 :: SBool = s17 /= s981
-  s983 :: SWord8 = if s982 then s71 else s72
-  s984 :: SWord8 = if s22 then s983 else s68
-  s985 :: SWord8 = s18 & s984
-  s986 :: SBool = s17 /= s985
-  s987 :: SBool = s_2 == s986
-  s988 :: SBool = s980 < s182
-  s989 :: SBool = s980 < s60
-  s990 :: SBool = s988 | s989
-  s991 :: SWord8 = s980 >>> 1
-  s992 :: SWord8 = s24 | s991
-  s993 :: SWord8 = s26 & s991
-  s994 :: SWord8 = if s990 then s992 else s993
-  s995 :: SWord8 = s18 & s994
-  s996 :: SBool = s17 /= s995
-  s997 :: SWord8 = s984 >>> 1
-  s998 :: SWord8 = s24 | s997
-  s999 :: SWord8 = s26 & s997
-  s1000 :: SWord8 = if s85 then s998 else s999
-  s1001 :: SWord8 = if s22 then s1000 else s983
-  s1002 :: SWord8 = s1001 >>> 1
-  s1003 :: SWord8 = s24 | s1002
-  s1004 :: SWord8 = s26 & s1002
-  s1005 :: SWord8 = if s996 then s1003 else s1004
-  s1006 :: SWord8 = if s22 then s1005 else s1000
-  s1007 :: SWord8 = s18 & s1006
-  s1008 :: SBool = s17 /= s1007
-  s1009 :: SBool = s_2 == s1008
-  s1010 :: SWord8 = s994 >>> 1
-  s1011 :: SWord8 = s24 | s1010
-  s1012 :: SWord8 = s26 & s1010
-  s1013 :: SWord8 = if s986 then s1011 else s1012
-  s1014 :: SWord8 = s18 & s1013
-  s1015 :: SBool = s17 /= s1014
-  s1016 :: SWord8 = s18 & s1001
-  s1017 :: SBool = s17 /= s1016
-  s1018 :: SWord8 = s1006 >>> 1
-  s1019 :: SWord8 = s24 | s1018
-  s1020 :: SWord8 = s26 & s1018
-  s1021 :: SWord8 = if s1017 then s1019 else s1020
-  s1022 :: SWord8 = if s22 then s1021 else s1005
-  s1023 :: SWord8 = s1022 >>> 1
-  s1024 :: SWord8 = s24 | s1023
-  s1025 :: SWord8 = s26 & s1023
-  s1026 :: SWord8 = if s1015 then s1024 else s1025
-  s1027 :: SWord8 = if s22 then s1026 else s1021
-  s1028 :: SWord8 = s18 & s1027
-  s1029 :: SBool = s17 /= s1028
-  s1030 :: SBool = s_2 == s1029
-  s1031 :: SWord8 = s1013 >>> 1
-  s1032 :: SWord8 = s24 | s1031
-  s1033 :: SWord8 = s26 & s1031
-  s1034 :: SWord8 = if s1008 then s1032 else s1033
-  s1035 :: SWord8 = s18 & s1034
-  s1036 :: SBool = s17 /= s1035
-  s1037 :: SWord8 = s18 & s1022
-  s1038 :: SBool = s17 /= s1037
-  s1039 :: SWord8 = s1027 >>> 1
-  s1040 :: SWord8 = s24 | s1039
-  s1041 :: SWord8 = s26 & s1039
-  s1042 :: SWord8 = if s1038 then s1040 else s1041
-  s1043 :: SWord8 = if s22 then s1042 else s1026
-  s1044 :: SWord8 = s1043 >>> 1
-  s1045 :: SWord8 = s24 | s1044
-  s1046 :: SWord8 = s26 & s1044
-  s1047 :: SWord8 = if s1036 then s1045 else s1046
-  s1048 :: SWord8 = if s22 then s1047 else s1042
-  s1049 :: SWord8 = s18 & s1048
-  s1050 :: SBool = s17 /= s1049
-  s1051 :: SBool = s_2 == s1050
-  s1052 :: SWord8 = s1034 >>> 1
-  s1053 :: SWord8 = s24 | s1052
-  s1054 :: SWord8 = s26 & s1052
-  s1055 :: SWord8 = if s1029 then s1053 else s1054
-  s1056 :: SWord8 = s18 & s1055
-  s1057 :: SBool = s17 /= s1056
-  s1058 :: SWord8 = s18 & s1043
-  s1059 :: SBool = s17 /= s1058
-  s1060 :: SWord8 = s1048 >>> 1
-  s1061 :: SWord8 = s24 | s1060
-  s1062 :: SWord8 = s26 & s1060
-  s1063 :: SWord8 = if s1059 then s1061 else s1062
-  s1064 :: SWord8 = if s22 then s1063 else s1047
-  s1065 :: SWord8 = s1064 >>> 1
-  s1066 :: SWord8 = s24 | s1065
-  s1067 :: SWord8 = s26 & s1065
-  s1068 :: SWord8 = if s1057 then s1066 else s1067
-  s1069 :: SWord8 = if s22 then s1068 else s1063
-  s1070 :: SWord8 = s18 & s1069
-  s1071 :: SBool = s17 /= s1070
-  s1072 :: SBool = s_2 == s1071
-  s1073 :: SWord8 = s1055 >>> 1
-  s1074 :: SWord8 = s24 | s1073
-  s1075 :: SWord8 = s26 & s1073
-  s1076 :: SWord8 = if s1050 then s1074 else s1075
-  s1077 :: SWord8 = s1076 >>> 1
-  s1078 :: SWord8 = s24 | s1077
-  s1079 :: SWord8 = s26 & s1077
-  s1080 :: SWord8 = if s1071 then s1078 else s1079
-  s1081 :: SWord8 = s18 & s1064
-  s1082 :: SBool = s17 /= s1081
-  s1083 :: SWord8 = s1069 >>> 1
-  s1084 :: SWord8 = s24 | s1083
-  s1085 :: SWord8 = s26 & s1083
-  s1086 :: SWord8 = if s1082 then s1084 else s1085
-  s1087 :: SWord8 = if s29 then s983 else s182
-  s1088 :: SWord8 = if s170 then s1000 else s1087
-  s1089 :: SWord8 = if s29 then s1005 else s1088
-  s1090 :: SWord8 = if s170 then s1021 else s1089
-  s1091 :: SWord8 = if s29 then s1026 else s1090
-  s1092 :: SWord8 = if s170 then s1042 else s1091
-  s1093 :: SWord8 = if s29 then s1047 else s1092
-  s1094 :: SWord8 = if s170 then s1063 else s1093
-  s1095 :: SWord8 = if s29 then s1068 else s1094
-  s1096 :: SWord8 = if s170 then s1086 else s1095
-  s1097 :: SWord8 = s1076 + s1096
-  s1098 :: SBool = s1097 < s1096
-  s1099 :: SBool = s1097 < s1076
-  s1100 :: SBool = s1098 | s1099
-  s1101 :: SWord8 = s1097 >>> 1
-  s1102 :: SWord8 = s24 | s1101
-  s1103 :: SWord8 = s26 & s1101
-  s1104 :: SWord8 = if s1100 then s1102 else s1103
-  s1105 :: SWord8 = if s1072 then s1080 else s1104
-  s1106 :: SWord8 = s1055 + s1094
-  s1107 :: SWord8 = s18 & s1106
-  s1108 :: SBool = s17 /= s1107
-  s1109 :: SWord8 = if s1108 then s1066 else s1067
-  s1110 :: SWord8 = if s22 then s1109 else s1063
-  s1111 :: SWord8 = s18 & s1110
-  s1112 :: SBool = s17 /= s1111
-  s1113 :: SBool = s_2 == s1112
-  s1114 :: SBool = s1106 < s1094
-  s1115 :: SBool = s1106 < s1055
-  s1116 :: SBool = s1114 | s1115
-  s1117 :: SWord8 = s1106 >>> 1
-  s1118 :: SWord8 = s24 | s1117
-  s1119 :: SWord8 = s26 & s1117
-  s1120 :: SWord8 = if s1116 then s1118 else s1119
-  s1121 :: SWord8 = s1120 >>> 1
-  s1122 :: SWord8 = s24 | s1121
-  s1123 :: SWord8 = s26 & s1121
-  s1124 :: SWord8 = if s1112 then s1122 else s1123
-  s1125 :: SWord8 = s1110 >>> 1
-  s1126 :: SWord8 = s24 | s1125
-  s1127 :: SWord8 = s26 & s1125
-  s1128 :: SWord8 = if s1082 then s1126 else s1127
-  s1129 :: SWord8 = if s29 then s1109 else s1094
-  s1130 :: SWord8 = if s170 then s1128 else s1129
-  s1131 :: SWord8 = s1120 + s1130
-  s1132 :: SBool = s1131 < s1130
-  s1133 :: SBool = s1131 < s1120
-  s1134 :: SBool = s1132 | s1133
-  s1135 :: SWord8 = s1131 >>> 1
-  s1136 :: SWord8 = s24 | s1135
-  s1137 :: SWord8 = s26 & s1135
-  s1138 :: SWord8 = if s1134 then s1136 else s1137
-  s1139 :: SWord8 = if s1113 then s1124 else s1138
-  s1140 :: SWord8 = if s1051 then s1105 else s1139
-  s1141 :: SWord8 = s1034 + s1092
-  s1142 :: SWord8 = s18 & s1141
-  s1143 :: SBool = s17 /= s1142
-  s1144 :: SWord8 = if s1143 then s1045 else s1046
-  s1145 :: SWord8 = if s22 then s1144 else s1042
-  s1146 :: SWord8 = s18 & s1145
-  s1147 :: SBool = s17 /= s1146
-  s1148 :: SBool = s_2 == s1147
-  s1149 :: SBool = s1141 < s1092
-  s1150 :: SBool = s1141 < s1034
-  s1151 :: SBool = s1149 | s1150
-  s1152 :: SWord8 = s1141 >>> 1
-  s1153 :: SWord8 = s24 | s1152
-  s1154 :: SWord8 = s26 & s1152
-  s1155 :: SWord8 = if s1151 then s1153 else s1154
-  s1156 :: SWord8 = s18 & s1155
-  s1157 :: SBool = s17 /= s1156
-  s1158 :: SWord8 = s1145 >>> 1
-  s1159 :: SWord8 = s24 | s1158
-  s1160 :: SWord8 = s26 & s1158
-  s1161 :: SWord8 = if s1059 then s1159 else s1160
-  s1162 :: SWord8 = if s22 then s1161 else s1144
-  s1163 :: SWord8 = s1162 >>> 1
-  s1164 :: SWord8 = s24 | s1163
-  s1165 :: SWord8 = s26 & s1163
-  s1166 :: SWord8 = if s1157 then s1164 else s1165
-  s1167 :: SWord8 = if s22 then s1166 else s1161
-  s1168 :: SWord8 = s18 & s1167
-  s1169 :: SBool = s17 /= s1168
-  s1170 :: SBool = s_2 == s1169
-  s1171 :: SWord8 = s1155 >>> 1
-  s1172 :: SWord8 = s24 | s1171
-  s1173 :: SWord8 = s26 & s1171
-  s1174 :: SWord8 = if s1147 then s1172 else s1173
-  s1175 :: SWord8 = s1174 >>> 1
-  s1176 :: SWord8 = s24 | s1175
-  s1177 :: SWord8 = s26 & s1175
-  s1178 :: SWord8 = if s1169 then s1176 else s1177
-  s1179 :: SWord8 = s18 & s1162
-  s1180 :: SBool = s17 /= s1179
-  s1181 :: SWord8 = s1167 >>> 1
-  s1182 :: SWord8 = s24 | s1181
-  s1183 :: SWord8 = s26 & s1181
-  s1184 :: SWord8 = if s1180 then s1182 else s1183
-  s1185 :: SWord8 = if s29 then s1144 else s1092
-  s1186 :: SWord8 = if s170 then s1161 else s1185
-  s1187 :: SWord8 = if s29 then s1166 else s1186
-  s1188 :: SWord8 = if s170 then s1184 else s1187
-  s1189 :: SWord8 = s1174 + s1188
-  s1190 :: SBool = s1189 < s1188
-  s1191 :: SBool = s1189 < s1174
-  s1192 :: SBool = s1190 | s1191
-  s1193 :: SWord8 = s1189 >>> 1
-  s1194 :: SWord8 = s24 | s1193
-  s1195 :: SWord8 = s26 & s1193
-  s1196 :: SWord8 = if s1192 then s1194 else s1195
-  s1197 :: SWord8 = if s1170 then s1178 else s1196
-  s1198 :: SWord8 = s1155 + s1186
-  s1199 :: SWord8 = s18 & s1198
-  s1200 :: SBool = s17 /= s1199
-  s1201 :: SWord8 = if s1200 then s1164 else s1165
-  s1202 :: SWord8 = if s22 then s1201 else s1161
-  s1203 :: SWord8 = s18 & s1202
-  s1204 :: SBool = s17 /= s1203
-  s1205 :: SBool = s_2 == s1204
-  s1206 :: SBool = s1198 < s1186
-  s1207 :: SBool = s1198 < s1155
-  s1208 :: SBool = s1206 | s1207
-  s1209 :: SWord8 = s1198 >>> 1
-  s1210 :: SWord8 = s24 | s1209
-  s1211 :: SWord8 = s26 & s1209
-  s1212 :: SWord8 = if s1208 then s1210 else s1211
-  s1213 :: SWord8 = s1212 >>> 1
-  s1214 :: SWord8 = s24 | s1213
-  s1215 :: SWord8 = s26 & s1213
-  s1216 :: SWord8 = if s1204 then s1214 else s1215
-  s1217 :: SWord8 = s1202 >>> 1
-  s1218 :: SWord8 = s24 | s1217
-  s1219 :: SWord8 = s26 & s1217
-  s1220 :: SWord8 = if s1180 then s1218 else s1219
-  s1221 :: SWord8 = if s29 then s1201 else s1186
-  s1222 :: SWord8 = if s170 then s1220 else s1221
-  s1223 :: SWord8 = s1212 + s1222
-  s1224 :: SBool = s1223 < s1222
-  s1225 :: SBool = s1223 < s1212
-  s1226 :: SBool = s1224 | s1225
-  s1227 :: SWord8 = s1223 >>> 1
-  s1228 :: SWord8 = s24 | s1227
-  s1229 :: SWord8 = s26 & s1227
-  s1230 :: SWord8 = if s1226 then s1228 else s1229
-  s1231 :: SWord8 = if s1205 then s1216 else s1230
-  s1232 :: SWord8 = if s1148 then s1197 else s1231
-  s1233 :: SWord8 = if s1030 then s1140 else s1232
-  s1234 :: SWord8 = s1013 + s1090
-  s1235 :: SWord8 = s18 & s1234
-  s1236 :: SBool = s17 /= s1235
-  s1237 :: SWord8 = if s1236 then s1024 else s1025
-  s1238 :: SWord8 = if s22 then s1237 else s1021
-  s1239 :: SWord8 = s18 & s1238
-  s1240 :: SBool = s17 /= s1239
-  s1241 :: SBool = s_2 == s1240
-  s1242 :: SBool = s1234 < s1090
-  s1243 :: SBool = s1234 < s1013
-  s1244 :: SBool = s1242 | s1243
-  s1245 :: SWord8 = s1234 >>> 1
-  s1246 :: SWord8 = s24 | s1245
-  s1247 :: SWord8 = s26 & s1245
-  s1248 :: SWord8 = if s1244 then s1246 else s1247
-  s1249 :: SWord8 = s18 & s1248
-  s1250 :: SBool = s17 /= s1249
-  s1251 :: SWord8 = s1238 >>> 1
-  s1252 :: SWord8 = s24 | s1251
-  s1253 :: SWord8 = s26 & s1251
-  s1254 :: SWord8 = if s1038 then s1252 else s1253
-  s1255 :: SWord8 = if s22 then s1254 else s1237
-  s1256 :: SWord8 = s1255 >>> 1
-  s1257 :: SWord8 = s24 | s1256
-  s1258 :: SWord8 = s26 & s1256
-  s1259 :: SWord8 = if s1250 then s1257 else s1258
-  s1260 :: SWord8 = if s22 then s1259 else s1254
-  s1261 :: SWord8 = s18 & s1260
-  s1262 :: SBool = s17 /= s1261
-  s1263 :: SBool = s_2 == s1262
-  s1264 :: SWord8 = s1248 >>> 1
-  s1265 :: SWord8 = s24 | s1264
-  s1266 :: SWord8 = s26 & s1264
-  s1267 :: SWord8 = if s1240 then s1265 else s1266
-  s1268 :: SWord8 = s18 & s1267
-  s1269 :: SBool = s17 /= s1268
-  s1270 :: SWord8 = s18 & s1255
-  s1271 :: SBool = s17 /= s1270
-  s1272 :: SWord8 = s1260 >>> 1
-  s1273 :: SWord8 = s24 | s1272
-  s1274 :: SWord8 = s26 & s1272
-  s1275 :: SWord8 = if s1271 then s1273 else s1274
-  s1276 :: SWord8 = if s22 then s1275 else s1259
-  s1277 :: SWord8 = s1276 >>> 1
-  s1278 :: SWord8 = s24 | s1277
-  s1279 :: SWord8 = s26 & s1277
-  s1280 :: SWord8 = if s1269 then s1278 else s1279
-  s1281 :: SWord8 = if s22 then s1280 else s1275
-  s1282 :: SWord8 = s18 & s1281
-  s1283 :: SBool = s17 /= s1282
-  s1284 :: SBool = s_2 == s1283
-  s1285 :: SWord8 = s1267 >>> 1
-  s1286 :: SWord8 = s24 | s1285
-  s1287 :: SWord8 = s26 & s1285
-  s1288 :: SWord8 = if s1262 then s1286 else s1287
-  s1289 :: SWord8 = s1288 >>> 1
-  s1290 :: SWord8 = s24 | s1289
-  s1291 :: SWord8 = s26 & s1289
-  s1292 :: SWord8 = if s1283 then s1290 else s1291
-  s1293 :: SWord8 = s18 & s1276
-  s1294 :: SBool = s17 /= s1293
-  s1295 :: SWord8 = s1281 >>> 1
-  s1296 :: SWord8 = s24 | s1295
-  s1297 :: SWord8 = s26 & s1295
-  s1298 :: SWord8 = if s1294 then s1296 else s1297
-  s1299 :: SWord8 = if s29 then s1237 else s1090
-  s1300 :: SWord8 = if s170 then s1254 else s1299
-  s1301 :: SWord8 = if s29 then s1259 else s1300
-  s1302 :: SWord8 = if s170 then s1275 else s1301
-  s1303 :: SWord8 = if s29 then s1280 else s1302
-  s1304 :: SWord8 = if s170 then s1298 else s1303
-  s1305 :: SWord8 = s1288 + s1304
-  s1306 :: SBool = s1305 < s1304
-  s1307 :: SBool = s1305 < s1288
-  s1308 :: SBool = s1306 | s1307
-  s1309 :: SWord8 = s1305 >>> 1
-  s1310 :: SWord8 = s24 | s1309
-  s1311 :: SWord8 = s26 & s1309
-  s1312 :: SWord8 = if s1308 then s1310 else s1311
-  s1313 :: SWord8 = if s1284 then s1292 else s1312
-  s1314 :: SWord8 = s1267 + s1302
-  s1315 :: SWord8 = s18 & s1314
-  s1316 :: SBool = s17 /= s1315
-  s1317 :: SWord8 = if s1316 then s1278 else s1279
-  s1318 :: SWord8 = if s22 then s1317 else s1275
-  s1319 :: SWord8 = s18 & s1318
-  s1320 :: SBool = s17 /= s1319
-  s1321 :: SBool = s_2 == s1320
-  s1322 :: SBool = s1314 < s1302
-  s1323 :: SBool = s1314 < s1267
-  s1324 :: SBool = s1322 | s1323
-  s1325 :: SWord8 = s1314 >>> 1
-  s1326 :: SWord8 = s24 | s1325
-  s1327 :: SWord8 = s26 & s1325
-  s1328 :: SWord8 = if s1324 then s1326 else s1327
-  s1329 :: SWord8 = s1328 >>> 1
-  s1330 :: SWord8 = s24 | s1329
-  s1331 :: SWord8 = s26 & s1329
-  s1332 :: SWord8 = if s1320 then s1330 else s1331
-  s1333 :: SWord8 = s1318 >>> 1
-  s1334 :: SWord8 = s24 | s1333
-  s1335 :: SWord8 = s26 & s1333
-  s1336 :: SWord8 = if s1294 then s1334 else s1335
-  s1337 :: SWord8 = if s29 then s1317 else s1302
-  s1338 :: SWord8 = if s170 then s1336 else s1337
-  s1339 :: SWord8 = s1328 + s1338
-  s1340 :: SBool = s1339 < s1338
-  s1341 :: SBool = s1339 < s1328
-  s1342 :: SBool = s1340 | s1341
-  s1343 :: SWord8 = s1339 >>> 1
-  s1344 :: SWord8 = s24 | s1343
-  s1345 :: SWord8 = s26 & s1343
-  s1346 :: SWord8 = if s1342 then s1344 else s1345
-  s1347 :: SWord8 = if s1321 then s1332 else s1346
-  s1348 :: SWord8 = if s1263 then s1313 else s1347
-  s1349 :: SWord8 = s1248 + s1300
-  s1350 :: SWord8 = s18 & s1349
-  s1351 :: SBool = s17 /= s1350
-  s1352 :: SWord8 = if s1351 then s1257 else s1258
-  s1353 :: SWord8 = if s22 then s1352 else s1254
-  s1354 :: SWord8 = s18 & s1353
-  s1355 :: SBool = s17 /= s1354
-  s1356 :: SBool = s_2 == s1355
-  s1357 :: SBool = s1349 < s1300
-  s1358 :: SBool = s1349 < s1248
-  s1359 :: SBool = s1357 | s1358
-  s1360 :: SWord8 = s1349 >>> 1
-  s1361 :: SWord8 = s24 | s1360
-  s1362 :: SWord8 = s26 & s1360
-  s1363 :: SWord8 = if s1359 then s1361 else s1362
-  s1364 :: SWord8 = s18 & s1363
-  s1365 :: SBool = s17 /= s1364
-  s1366 :: SWord8 = s1353 >>> 1
-  s1367 :: SWord8 = s24 | s1366
-  s1368 :: SWord8 = s26 & s1366
-  s1369 :: SWord8 = if s1271 then s1367 else s1368
-  s1370 :: SWord8 = if s22 then s1369 else s1352
-  s1371 :: SWord8 = s1370 >>> 1
-  s1372 :: SWord8 = s24 | s1371
-  s1373 :: SWord8 = s26 & s1371
-  s1374 :: SWord8 = if s1365 then s1372 else s1373
-  s1375 :: SWord8 = if s22 then s1374 else s1369
-  s1376 :: SWord8 = s18 & s1375
-  s1377 :: SBool = s17 /= s1376
-  s1378 :: SBool = s_2 == s1377
-  s1379 :: SWord8 = s1363 >>> 1
-  s1380 :: SWord8 = s24 | s1379
-  s1381 :: SWord8 = s26 & s1379
-  s1382 :: SWord8 = if s1355 then s1380 else s1381
-  s1383 :: SWord8 = s1382 >>> 1
-  s1384 :: SWord8 = s24 | s1383
-  s1385 :: SWord8 = s26 & s1383
-  s1386 :: SWord8 = if s1377 then s1384 else s1385
-  s1387 :: SWord8 = s18 & s1370
-  s1388 :: SBool = s17 /= s1387
-  s1389 :: SWord8 = s1375 >>> 1
-  s1390 :: SWord8 = s24 | s1389
-  s1391 :: SWord8 = s26 & s1389
-  s1392 :: SWord8 = if s1388 then s1390 else s1391
-  s1393 :: SWord8 = if s29 then s1352 else s1300
-  s1394 :: SWord8 = if s170 then s1369 else s1393
-  s1395 :: SWord8 = if s29 then s1374 else s1394
-  s1396 :: SWord8 = if s170 then s1392 else s1395
-  s1397 :: SWord8 = s1382 + s1396
-  s1398 :: SBool = s1397 < s1396
-  s1399 :: SBool = s1397 < s1382
-  s1400 :: SBool = s1398 | s1399
-  s1401 :: SWord8 = s1397 >>> 1
-  s1402 :: SWord8 = s24 | s1401
-  s1403 :: SWord8 = s26 & s1401
-  s1404 :: SWord8 = if s1400 then s1402 else s1403
-  s1405 :: SWord8 = if s1378 then s1386 else s1404
-  s1406 :: SWord8 = s1363 + s1394
-  s1407 :: SWord8 = s18 & s1406
-  s1408 :: SBool = s17 /= s1407
-  s1409 :: SWord8 = if s1408 then s1372 else s1373
-  s1410 :: SWord8 = if s22 then s1409 else s1369
-  s1411 :: SWord8 = s18 & s1410
-  s1412 :: SBool = s17 /= s1411
-  s1413 :: SBool = s_2 == s1412
-  s1414 :: SBool = s1406 < s1394
-  s1415 :: SBool = s1406 < s1363
-  s1416 :: SBool = s1414 | s1415
-  s1417 :: SWord8 = s1406 >>> 1
-  s1418 :: SWord8 = s24 | s1417
-  s1419 :: SWord8 = s26 & s1417
-  s1420 :: SWord8 = if s1416 then s1418 else s1419
-  s1421 :: SWord8 = s1420 >>> 1
-  s1422 :: SWord8 = s24 | s1421
-  s1423 :: SWord8 = s26 & s1421
-  s1424 :: SWord8 = if s1412 then s1422 else s1423
-  s1425 :: SWord8 = s1410 >>> 1
-  s1426 :: SWord8 = s24 | s1425
-  s1427 :: SWord8 = s26 & s1425
-  s1428 :: SWord8 = if s1388 then s1426 else s1427
-  s1429 :: SWord8 = if s29 then s1409 else s1394
-  s1430 :: SWord8 = if s170 then s1428 else s1429
-  s1431 :: SWord8 = s1420 + s1430
-  s1432 :: SBool = s1431 < s1430
-  s1433 :: SBool = s1431 < s1420
-  s1434 :: SBool = s1432 | s1433
-  s1435 :: SWord8 = s1431 >>> 1
-  s1436 :: SWord8 = s24 | s1435
-  s1437 :: SWord8 = s26 & s1435
-  s1438 :: SWord8 = if s1434 then s1436 else s1437
-  s1439 :: SWord8 = if s1413 then s1424 else s1438
-  s1440 :: SWord8 = if s1356 then s1405 else s1439
-  s1441 :: SWord8 = if s1241 then s1348 else s1440
-  s1442 :: SWord8 = if s1009 then s1233 else s1441
-  s1443 :: SWord8 = s994 + s1088
-  s1444 :: SWord8 = s18 & s1443
-  s1445 :: SBool = s17 /= s1444
-  s1446 :: SWord8 = if s1445 then s1003 else s1004
-  s1447 :: SWord8 = if s22 then s1446 else s1000
-  s1448 :: SWord8 = s18 & s1447
-  s1449 :: SBool = s17 /= s1448
-  s1450 :: SBool = s_2 == s1449
-  s1451 :: SBool = s1443 < s1088
-  s1452 :: SBool = s1443 < s994
-  s1453 :: SBool = s1451 | s1452
-  s1454 :: SWord8 = s1443 >>> 1
-  s1455 :: SWord8 = s24 | s1454
-  s1456 :: SWord8 = s26 & s1454
-  s1457 :: SWord8 = if s1453 then s1455 else s1456
-  s1458 :: SWord8 = s18 & s1457
-  s1459 :: SBool = s17 /= s1458
-  s1460 :: SWord8 = s1447 >>> 1
-  s1461 :: SWord8 = s24 | s1460
-  s1462 :: SWord8 = s26 & s1460
-  s1463 :: SWord8 = if s1017 then s1461 else s1462
-  s1464 :: SWord8 = if s22 then s1463 else s1446
-  s1465 :: SWord8 = s1464 >>> 1
-  s1466 :: SWord8 = s24 | s1465
-  s1467 :: SWord8 = s26 & s1465
-  s1468 :: SWord8 = if s1459 then s1466 else s1467
-  s1469 :: SWord8 = if s22 then s1468 else s1463
-  s1470 :: SWord8 = s18 & s1469
-  s1471 :: SBool = s17 /= s1470
-  s1472 :: SBool = s_2 == s1471
-  s1473 :: SWord8 = s1457 >>> 1
-  s1474 :: SWord8 = s24 | s1473
-  s1475 :: SWord8 = s26 & s1473
-  s1476 :: SWord8 = if s1449 then s1474 else s1475
-  s1477 :: SWord8 = s18 & s1476
-  s1478 :: SBool = s17 /= s1477
-  s1479 :: SWord8 = s18 & s1464
-  s1480 :: SBool = s17 /= s1479
-  s1481 :: SWord8 = s1469 >>> 1
-  s1482 :: SWord8 = s24 | s1481
-  s1483 :: SWord8 = s26 & s1481
-  s1484 :: SWord8 = if s1480 then s1482 else s1483
-  s1485 :: SWord8 = if s22 then s1484 else s1468
-  s1486 :: SWord8 = s1485 >>> 1
-  s1487 :: SWord8 = s24 | s1486
-  s1488 :: SWord8 = s26 & s1486
-  s1489 :: SWord8 = if s1478 then s1487 else s1488
-  s1490 :: SWord8 = if s22 then s1489 else s1484
-  s1491 :: SWord8 = s18 & s1490
-  s1492 :: SBool = s17 /= s1491
-  s1493 :: SBool = s_2 == s1492
-  s1494 :: SWord8 = s1476 >>> 1
-  s1495 :: SWord8 = s24 | s1494
-  s1496 :: SWord8 = s26 & s1494
-  s1497 :: SWord8 = if s1471 then s1495 else s1496
-  s1498 :: SWord8 = s18 & s1497
-  s1499 :: SBool = s17 /= s1498
-  s1500 :: SWord8 = s18 & s1485
-  s1501 :: SBool = s17 /= s1500
-  s1502 :: SWord8 = s1490 >>> 1
-  s1503 :: SWord8 = s24 | s1502
-  s1504 :: SWord8 = s26 & s1502
-  s1505 :: SWord8 = if s1501 then s1503 else s1504
-  s1506 :: SWord8 = if s22 then s1505 else s1489
-  s1507 :: SWord8 = s1506 >>> 1
-  s1508 :: SWord8 = s24 | s1507
-  s1509 :: SWord8 = s26 & s1507
-  s1510 :: SWord8 = if s1499 then s1508 else s1509
-  s1511 :: SWord8 = if s22 then s1510 else s1505
-  s1512 :: SWord8 = s18 & s1511
-  s1513 :: SBool = s17 /= s1512
-  s1514 :: SBool = s_2 == s1513
-  s1515 :: SWord8 = s1497 >>> 1
-  s1516 :: SWord8 = s24 | s1515
-  s1517 :: SWord8 = s26 & s1515
-  s1518 :: SWord8 = if s1492 then s1516 else s1517
-  s1519 :: SWord8 = s1518 >>> 1
-  s1520 :: SWord8 = s24 | s1519
-  s1521 :: SWord8 = s26 & s1519
-  s1522 :: SWord8 = if s1513 then s1520 else s1521
-  s1523 :: SWord8 = s18 & s1506
-  s1524 :: SBool = s17 /= s1523
-  s1525 :: SWord8 = s1511 >>> 1
-  s1526 :: SWord8 = s24 | s1525
-  s1527 :: SWord8 = s26 & s1525
-  s1528 :: SWord8 = if s1524 then s1526 else s1527
-  s1529 :: SWord8 = if s29 then s1446 else s1088
-  s1530 :: SWord8 = if s170 then s1463 else s1529
-  s1531 :: SWord8 = if s29 then s1468 else s1530
-  s1532 :: SWord8 = if s170 then s1484 else s1531
-  s1533 :: SWord8 = if s29 then s1489 else s1532
-  s1534 :: SWord8 = if s170 then s1505 else s1533
-  s1535 :: SWord8 = if s29 then s1510 else s1534
-  s1536 :: SWord8 = if s170 then s1528 else s1535
-  s1537 :: SWord8 = s1518 + s1536
-  s1538 :: SBool = s1537 < s1536
-  s1539 :: SBool = s1537 < s1518
-  s1540 :: SBool = s1538 | s1539
-  s1541 :: SWord8 = s1537 >>> 1
-  s1542 :: SWord8 = s24 | s1541
-  s1543 :: SWord8 = s26 & s1541
-  s1544 :: SWord8 = if s1540 then s1542 else s1543
-  s1545 :: SWord8 = if s1514 then s1522 else s1544
-  s1546 :: SWord8 = s1497 + s1534
-  s1547 :: SWord8 = s18 & s1546
-  s1548 :: SBool = s17 /= s1547
-  s1549 :: SWord8 = if s1548 then s1508 else s1509
-  s1550 :: SWord8 = if s22 then s1549 else s1505
-  s1551 :: SWord8 = s18 & s1550
-  s1552 :: SBool = s17 /= s1551
-  s1553 :: SBool = s_2 == s1552
-  s1554 :: SBool = s1546 < s1534
-  s1555 :: SBool = s1546 < s1497
-  s1556 :: SBool = s1554 | s1555
-  s1557 :: SWord8 = s1546 >>> 1
-  s1558 :: SWord8 = s24 | s1557
-  s1559 :: SWord8 = s26 & s1557
-  s1560 :: SWord8 = if s1556 then s1558 else s1559
-  s1561 :: SWord8 = s1560 >>> 1
-  s1562 :: SWord8 = s24 | s1561
-  s1563 :: SWord8 = s26 & s1561
-  s1564 :: SWord8 = if s1552 then s1562 else s1563
-  s1565 :: SWord8 = s1550 >>> 1
-  s1566 :: SWord8 = s24 | s1565
-  s1567 :: SWord8 = s26 & s1565
-  s1568 :: SWord8 = if s1524 then s1566 else s1567
-  s1569 :: SWord8 = if s29 then s1549 else s1534
-  s1570 :: SWord8 = if s170 then s1568 else s1569
-  s1571 :: SWord8 = s1560 + s1570
-  s1572 :: SBool = s1571 < s1570
-  s1573 :: SBool = s1571 < s1560
-  s1574 :: SBool = s1572 | s1573
-  s1575 :: SWord8 = s1571 >>> 1
-  s1576 :: SWord8 = s24 | s1575
-  s1577 :: SWord8 = s26 & s1575
-  s1578 :: SWord8 = if s1574 then s1576 else s1577
-  s1579 :: SWord8 = if s1553 then s1564 else s1578
-  s1580 :: SWord8 = if s1493 then s1545 else s1579
-  s1581 :: SWord8 = s1476 + s1532
-  s1582 :: SWord8 = s18 & s1581
-  s1583 :: SBool = s17 /= s1582
-  s1584 :: SWord8 = if s1583 then s1487 else s1488
-  s1585 :: SWord8 = if s22 then s1584 else s1484
-  s1586 :: SWord8 = s18 & s1585
-  s1587 :: SBool = s17 /= s1586
-  s1588 :: SBool = s_2 == s1587
-  s1589 :: SBool = s1581 < s1532
-  s1590 :: SBool = s1581 < s1476
-  s1591 :: SBool = s1589 | s1590
-  s1592 :: SWord8 = s1581 >>> 1
-  s1593 :: SWord8 = s24 | s1592
-  s1594 :: SWord8 = s26 & s1592
-  s1595 :: SWord8 = if s1591 then s1593 else s1594
-  s1596 :: SWord8 = s18 & s1595
-  s1597 :: SBool = s17 /= s1596
-  s1598 :: SWord8 = s1585 >>> 1
-  s1599 :: SWord8 = s24 | s1598
-  s1600 :: SWord8 = s26 & s1598
-  s1601 :: SWord8 = if s1501 then s1599 else s1600
-  s1602 :: SWord8 = if s22 then s1601 else s1584
-  s1603 :: SWord8 = s1602 >>> 1
-  s1604 :: SWord8 = s24 | s1603
-  s1605 :: SWord8 = s26 & s1603
-  s1606 :: SWord8 = if s1597 then s1604 else s1605
-  s1607 :: SWord8 = if s22 then s1606 else s1601
-  s1608 :: SWord8 = s18 & s1607
-  s1609 :: SBool = s17 /= s1608
-  s1610 :: SBool = s_2 == s1609
-  s1611 :: SWord8 = s1595 >>> 1
-  s1612 :: SWord8 = s24 | s1611
-  s1613 :: SWord8 = s26 & s1611
-  s1614 :: SWord8 = if s1587 then s1612 else s1613
-  s1615 :: SWord8 = s1614 >>> 1
-  s1616 :: SWord8 = s24 | s1615
-  s1617 :: SWord8 = s26 & s1615
-  s1618 :: SWord8 = if s1609 then s1616 else s1617
-  s1619 :: SWord8 = s18 & s1602
-  s1620 :: SBool = s17 /= s1619
-  s1621 :: SWord8 = s1607 >>> 1
-  s1622 :: SWord8 = s24 | s1621
-  s1623 :: SWord8 = s26 & s1621
-  s1624 :: SWord8 = if s1620 then s1622 else s1623
-  s1625 :: SWord8 = if s29 then s1584 else s1532
-  s1626 :: SWord8 = if s170 then s1601 else s1625
-  s1627 :: SWord8 = if s29 then s1606 else s1626
-  s1628 :: SWord8 = if s170 then s1624 else s1627
-  s1629 :: SWord8 = s1614 + s1628
-  s1630 :: SBool = s1629 < s1628
-  s1631 :: SBool = s1629 < s1614
-  s1632 :: SBool = s1630 | s1631
-  s1633 :: SWord8 = s1629 >>> 1
-  s1634 :: SWord8 = s24 | s1633
-  s1635 :: SWord8 = s26 & s1633
-  s1636 :: SWord8 = if s1632 then s1634 else s1635
-  s1637 :: SWord8 = if s1610 then s1618 else s1636
-  s1638 :: SWord8 = s1595 + s1626
-  s1639 :: SWord8 = s18 & s1638
-  s1640 :: SBool = s17 /= s1639
-  s1641 :: SWord8 = if s1640 then s1604 else s1605
-  s1642 :: SWord8 = if s22 then s1641 else s1601
-  s1643 :: SWord8 = s18 & s1642
-  s1644 :: SBool = s17 /= s1643
-  s1645 :: SBool = s_2 == s1644
-  s1646 :: SBool = s1638 < s1626
-  s1647 :: SBool = s1638 < s1595
-  s1648 :: SBool = s1646 | s1647
-  s1649 :: SWord8 = s1638 >>> 1
-  s1650 :: SWord8 = s24 | s1649
-  s1651 :: SWord8 = s26 & s1649
-  s1652 :: SWord8 = if s1648 then s1650 else s1651
-  s1653 :: SWord8 = s1652 >>> 1
-  s1654 :: SWord8 = s24 | s1653
-  s1655 :: SWord8 = s26 & s1653
-  s1656 :: SWord8 = if s1644 then s1654 else s1655
-  s1657 :: SWord8 = s1642 >>> 1
-  s1658 :: SWord8 = s24 | s1657
-  s1659 :: SWord8 = s26 & s1657
-  s1660 :: SWord8 = if s1620 then s1658 else s1659
-  s1661 :: SWord8 = if s29 then s1641 else s1626
-  s1662 :: SWord8 = if s170 then s1660 else s1661
-  s1663 :: SWord8 = s1652 + s1662
-  s1664 :: SBool = s1663 < s1662
-  s1665 :: SBool = s1663 < s1652
-  s1666 :: SBool = s1664 | s1665
-  s1667 :: SWord8 = s1663 >>> 1
-  s1668 :: SWord8 = s24 | s1667
-  s1669 :: SWord8 = s26 & s1667
-  s1670 :: SWord8 = if s1666 then s1668 else s1669
-  s1671 :: SWord8 = if s1645 then s1656 else s1670
-  s1672 :: SWord8 = if s1588 then s1637 else s1671
-  s1673 :: SWord8 = if s1472 then s1580 else s1672
-  s1674 :: SWord8 = s1457 + s1530
-  s1675 :: SWord8 = s18 & s1674
-  s1676 :: SBool = s17 /= s1675
-  s1677 :: SWord8 = if s1676 then s1466 else s1467
-  s1678 :: SWord8 = if s22 then s1677 else s1463
-  s1679 :: SWord8 = s18 & s1678
-  s1680 :: SBool = s17 /= s1679
-  s1681 :: SBool = s_2 == s1680
-  s1682 :: SBool = s1674 < s1530
-  s1683 :: SBool = s1674 < s1457
-  s1684 :: SBool = s1682 | s1683
-  s1685 :: SWord8 = s1674 >>> 1
-  s1686 :: SWord8 = s24 | s1685
-  s1687 :: SWord8 = s26 & s1685
-  s1688 :: SWord8 = if s1684 then s1686 else s1687
-  s1689 :: SWord8 = s18 & s1688
-  s1690 :: SBool = s17 /= s1689
-  s1691 :: SWord8 = s1678 >>> 1
-  s1692 :: SWord8 = s24 | s1691
-  s1693 :: SWord8 = s26 & s1691
-  s1694 :: SWord8 = if s1480 then s1692 else s1693
-  s1695 :: SWord8 = if s22 then s1694 else s1677
-  s1696 :: SWord8 = s1695 >>> 1
-  s1697 :: SWord8 = s24 | s1696
-  s1698 :: SWord8 = s26 & s1696
-  s1699 :: SWord8 = if s1690 then s1697 else s1698
-  s1700 :: SWord8 = if s22 then s1699 else s1694
-  s1701 :: SWord8 = s18 & s1700
-  s1702 :: SBool = s17 /= s1701
-  s1703 :: SBool = s_2 == s1702
-  s1704 :: SWord8 = s1688 >>> 1
-  s1705 :: SWord8 = s24 | s1704
-  s1706 :: SWord8 = s26 & s1704
-  s1707 :: SWord8 = if s1680 then s1705 else s1706
-  s1708 :: SWord8 = s18 & s1707
-  s1709 :: SBool = s17 /= s1708
-  s1710 :: SWord8 = s18 & s1695
-  s1711 :: SBool = s17 /= s1710
-  s1712 :: SWord8 = s1700 >>> 1
-  s1713 :: SWord8 = s24 | s1712
-  s1714 :: SWord8 = s26 & s1712
-  s1715 :: SWord8 = if s1711 then s1713 else s1714
-  s1716 :: SWord8 = if s22 then s1715 else s1699
-  s1717 :: SWord8 = s1716 >>> 1
-  s1718 :: SWord8 = s24 | s1717
-  s1719 :: SWord8 = s26 & s1717
-  s1720 :: SWord8 = if s1709 then s1718 else s1719
-  s1721 :: SWord8 = if s22 then s1720 else s1715
-  s1722 :: SWord8 = s18 & s1721
-  s1723 :: SBool = s17 /= s1722
-  s1724 :: SBool = s_2 == s1723
-  s1725 :: SWord8 = s1707 >>> 1
-  s1726 :: SWord8 = s24 | s1725
-  s1727 :: SWord8 = s26 & s1725
-  s1728 :: SWord8 = if s1702 then s1726 else s1727
-  s1729 :: SWord8 = s1728 >>> 1
-  s1730 :: SWord8 = s24 | s1729
-  s1731 :: SWord8 = s26 & s1729
-  s1732 :: SWord8 = if s1723 then s1730 else s1731
-  s1733 :: SWord8 = s18 & s1716
-  s1734 :: SBool = s17 /= s1733
-  s1735 :: SWord8 = s1721 >>> 1
-  s1736 :: SWord8 = s24 | s1735
-  s1737 :: SWord8 = s26 & s1735
-  s1738 :: SWord8 = if s1734 then s1736 else s1737
-  s1739 :: SWord8 = if s29 then s1677 else s1530
-  s1740 :: SWord8 = if s170 then s1694 else s1739
-  s1741 :: SWord8 = if s29 then s1699 else s1740
-  s1742 :: SWord8 = if s170 then s1715 else s1741
-  s1743 :: SWord8 = if s29 then s1720 else s1742
-  s1744 :: SWord8 = if s170 then s1738 else s1743
-  s1745 :: SWord8 = s1728 + s1744
-  s1746 :: SBool = s1745 < s1744
-  s1747 :: SBool = s1745 < s1728
-  s1748 :: SBool = s1746 | s1747
-  s1749 :: SWord8 = s1745 >>> 1
-  s1750 :: SWord8 = s24 | s1749
-  s1751 :: SWord8 = s26 & s1749
-  s1752 :: SWord8 = if s1748 then s1750 else s1751
-  s1753 :: SWord8 = if s1724 then s1732 else s1752
-  s1754 :: SWord8 = s1707 + s1742
-  s1755 :: SWord8 = s18 & s1754
-  s1756 :: SBool = s17 /= s1755
-  s1757 :: SWord8 = if s1756 then s1718 else s1719
-  s1758 :: SWord8 = if s22 then s1757 else s1715
-  s1759 :: SWord8 = s18 & s1758
-  s1760 :: SBool = s17 /= s1759
-  s1761 :: SBool = s_2 == s1760
-  s1762 :: SBool = s1754 < s1742
-  s1763 :: SBool = s1754 < s1707
-  s1764 :: SBool = s1762 | s1763
-  s1765 :: SWord8 = s1754 >>> 1
-  s1766 :: SWord8 = s24 | s1765
-  s1767 :: SWord8 = s26 & s1765
-  s1768 :: SWord8 = if s1764 then s1766 else s1767
-  s1769 :: SWord8 = s1768 >>> 1
-  s1770 :: SWord8 = s24 | s1769
-  s1771 :: SWord8 = s26 & s1769
-  s1772 :: SWord8 = if s1760 then s1770 else s1771
-  s1773 :: SWord8 = s1758 >>> 1
-  s1774 :: SWord8 = s24 | s1773
-  s1775 :: SWord8 = s26 & s1773
-  s1776 :: SWord8 = if s1734 then s1774 else s1775
-  s1777 :: SWord8 = if s29 then s1757 else s1742
-  s1778 :: SWord8 = if s170 then s1776 else s1777
-  s1779 :: SWord8 = s1768 + s1778
-  s1780 :: SBool = s1779 < s1778
-  s1781 :: SBool = s1779 < s1768
-  s1782 :: SBool = s1780 | s1781
-  s1783 :: SWord8 = s1779 >>> 1
-  s1784 :: SWord8 = s24 | s1783
-  s1785 :: SWord8 = s26 & s1783
-  s1786 :: SWord8 = if s1782 then s1784 else s1785
-  s1787 :: SWord8 = if s1761 then s1772 else s1786
-  s1788 :: SWord8 = if s1703 then s1753 else s1787
-  s1789 :: SWord8 = s1688 + s1740
-  s1790 :: SWord8 = s18 & s1789
-  s1791 :: SBool = s17 /= s1790
-  s1792 :: SWord8 = if s1791 then s1697 else s1698
-  s1793 :: SWord8 = if s22 then s1792 else s1694
-  s1794 :: SWord8 = s18 & s1793
-  s1795 :: SBool = s17 /= s1794
-  s1796 :: SBool = s_2 == s1795
-  s1797 :: SBool = s1789 < s1740
-  s1798 :: SBool = s1789 < s1688
-  s1799 :: SBool = s1797 | s1798
-  s1800 :: SWord8 = s1789 >>> 1
-  s1801 :: SWord8 = s24 | s1800
-  s1802 :: SWord8 = s26 & s1800
-  s1803 :: SWord8 = if s1799 then s1801 else s1802
-  s1804 :: SWord8 = s18 & s1803
-  s1805 :: SBool = s17 /= s1804
-  s1806 :: SWord8 = s1793 >>> 1
-  s1807 :: SWord8 = s24 | s1806
-  s1808 :: SWord8 = s26 & s1806
-  s1809 :: SWord8 = if s1711 then s1807 else s1808
-  s1810 :: SWord8 = if s22 then s1809 else s1792
-  s1811 :: SWord8 = s1810 >>> 1
-  s1812 :: SWord8 = s24 | s1811
-  s1813 :: SWord8 = s26 & s1811
-  s1814 :: SWord8 = if s1805 then s1812 else s1813
-  s1815 :: SWord8 = if s22 then s1814 else s1809
-  s1816 :: SWord8 = s18 & s1815
-  s1817 :: SBool = s17 /= s1816
-  s1818 :: SBool = s_2 == s1817
-  s1819 :: SWord8 = s1803 >>> 1
-  s1820 :: SWord8 = s24 | s1819
-  s1821 :: SWord8 = s26 & s1819
-  s1822 :: SWord8 = if s1795 then s1820 else s1821
-  s1823 :: SWord8 = s1822 >>> 1
-  s1824 :: SWord8 = s24 | s1823
-  s1825 :: SWord8 = s26 & s1823
-  s1826 :: SWord8 = if s1817 then s1824 else s1825
-  s1827 :: SWord8 = s18 & s1810
-  s1828 :: SBool = s17 /= s1827
-  s1829 :: SWord8 = s1815 >>> 1
-  s1830 :: SWord8 = s24 | s1829
-  s1831 :: SWord8 = s26 & s1829
-  s1832 :: SWord8 = if s1828 then s1830 else s1831
-  s1833 :: SWord8 = if s29 then s1792 else s1740
-  s1834 :: SWord8 = if s170 then s1809 else s1833
-  s1835 :: SWord8 = if s29 then s1814 else s1834
-  s1836 :: SWord8 = if s170 then s1832 else s1835
-  s1837 :: SWord8 = s1822 + s1836
-  s1838 :: SBool = s1837 < s1836
-  s1839 :: SBool = s1837 < s1822
-  s1840 :: SBool = s1838 | s1839
-  s1841 :: SWord8 = s1837 >>> 1
-  s1842 :: SWord8 = s24 | s1841
-  s1843 :: SWord8 = s26 & s1841
-  s1844 :: SWord8 = if s1840 then s1842 else s1843
-  s1845 :: SWord8 = if s1818 then s1826 else s1844
-  s1846 :: SWord8 = s1803 + s1834
-  s1847 :: SWord8 = s18 & s1846
-  s1848 :: SBool = s17 /= s1847
-  s1849 :: SWord8 = if s1848 then s1812 else s1813
-  s1850 :: SWord8 = if s22 then s1849 else s1809
-  s1851 :: SWord8 = s18 & s1850
-  s1852 :: SBool = s17 /= s1851
-  s1853 :: SBool = s_2 == s1852
-  s1854 :: SBool = s1846 < s1834
-  s1855 :: SBool = s1846 < s1803
-  s1856 :: SBool = s1854 | s1855
-  s1857 :: SWord8 = s1846 >>> 1
-  s1858 :: SWord8 = s24 | s1857
-  s1859 :: SWord8 = s26 & s1857
-  s1860 :: SWord8 = if s1856 then s1858 else s1859
-  s1861 :: SWord8 = s1860 >>> 1
-  s1862 :: SWord8 = s24 | s1861
-  s1863 :: SWord8 = s26 & s1861
-  s1864 :: SWord8 = if s1852 then s1862 else s1863
-  s1865 :: SWord8 = s1850 >>> 1
-  s1866 :: SWord8 = s24 | s1865
-  s1867 :: SWord8 = s26 & s1865
-  s1868 :: SWord8 = if s1828 then s1866 else s1867
-  s1869 :: SWord8 = if s29 then s1849 else s1834
-  s1870 :: SWord8 = if s170 then s1868 else s1869
-  s1871 :: SWord8 = s1860 + s1870
-  s1872 :: SBool = s1871 < s1870
-  s1873 :: SBool = s1871 < s1860
-  s1874 :: SBool = s1872 | s1873
-  s1875 :: SWord8 = s1871 >>> 1
-  s1876 :: SWord8 = s24 | s1875
-  s1877 :: SWord8 = s26 & s1875
-  s1878 :: SWord8 = if s1874 then s1876 else s1877
-  s1879 :: SWord8 = if s1853 then s1864 else s1878
-  s1880 :: SWord8 = if s1796 then s1845 else s1879
-  s1881 :: SWord8 = if s1681 then s1788 else s1880
-  s1882 :: SWord8 = if s1450 then s1673 else s1881
-  s1883 :: SWord8 = if s987 then s1442 else s1882
-  s1884 :: SWord8 = if s56 then s979 else s1883
-  s1885 :: SWord8 = s39 + s180
-  s1886 :: SWord8 = s18 & s1885
-  s1887 :: SBool = s17 /= s1886
-  s1888 :: SWord8 = if s1887 then s50 else s51
-  s1889 :: SWord8 = if s22 then s1888 else s47
-  s1890 :: SWord8 = s18 & s1889
-  s1891 :: SBool = s17 /= s1890
-  s1892 :: SBool = s_2 == s1891
-  s1893 :: SBool = s1885 < s180
-  s1894 :: SBool = s1885 < s39
-  s1895 :: SBool = s1893 | s1894
-  s1896 :: SWord8 = s1885 >>> 1
-  s1897 :: SWord8 = s24 | s1896
-  s1898 :: SWord8 = s26 & s1896
-  s1899 :: SWord8 = if s1895 then s1897 else s1898
-  s1900 :: SWord8 = s18 & s1899
-  s1901 :: SBool = s17 /= s1900
-  s1902 :: SWord8 = s1889 >>> 1
-  s1903 :: SWord8 = s24 | s1902
-  s1904 :: SWord8 = s26 & s1902
-  s1905 :: SWord8 = if s64 then s1903 else s1904
-  s1906 :: SWord8 = if s22 then s1905 else s1888
-  s1907 :: SWord8 = s1906 >>> 1
-  s1908 :: SWord8 = s24 | s1907
-  s1909 :: SWord8 = s26 & s1907
-  s1910 :: SWord8 = if s1901 then s1908 else s1909
-  s1911 :: SWord8 = if s22 then s1910 else s1905
-  s1912 :: SWord8 = s18 & s1911
-  s1913 :: SBool = s17 /= s1912
-  s1914 :: SBool = s_2 == s1913
-  s1915 :: SWord8 = s1899 >>> 1
-  s1916 :: SWord8 = s24 | s1915
-  s1917 :: SWord8 = s26 & s1915
-  s1918 :: SWord8 = if s1891 then s1916 else s1917
-  s1919 :: SWord8 = s18 & s1918
-  s1920 :: SBool = s17 /= s1919
-  s1921 :: SWord8 = s18 & s1906
-  s1922 :: SBool = s17 /= s1921
-  s1923 :: SWord8 = s1911 >>> 1
-  s1924 :: SWord8 = s24 | s1923
-  s1925 :: SWord8 = s26 & s1923
-  s1926 :: SWord8 = if s1922 then s1924 else s1925
-  s1927 :: SWord8 = if s22 then s1926 else s1910
-  s1928 :: SWord8 = s1927 >>> 1
-  s1929 :: SWord8 = s24 | s1928
-  s1930 :: SWord8 = s26 & s1928
-  s1931 :: SWord8 = if s1920 then s1929 else s1930
-  s1932 :: SWord8 = if s22 then s1931 else s1926
-  s1933 :: SWord8 = s18 & s1932
-  s1934 :: SBool = s17 /= s1933
-  s1935 :: SBool = s_2 == s1934
-  s1936 :: SWord8 = s1918 >>> 1
-  s1937 :: SWord8 = s24 | s1936
-  s1938 :: SWord8 = s26 & s1936
-  s1939 :: SWord8 = if s1913 then s1937 else s1938
-  s1940 :: SWord8 = s18 & s1939
-  s1941 :: SBool = s17 /= s1940
-  s1942 :: SWord8 = s18 & s1927
-  s1943 :: SBool = s17 /= s1942
-  s1944 :: SWord8 = s1932 >>> 1
-  s1945 :: SWord8 = s24 | s1944
-  s1946 :: SWord8 = s26 & s1944
-  s1947 :: SWord8 = if s1943 then s1945 else s1946
-  s1948 :: SWord8 = if s22 then s1947 else s1931
-  s1949 :: SWord8 = s1948 >>> 1
-  s1950 :: SWord8 = s24 | s1949
-  s1951 :: SWord8 = s26 & s1949
-  s1952 :: SWord8 = if s1941 then s1950 else s1951
-  s1953 :: SWord8 = if s22 then s1952 else s1947
-  s1954 :: SWord8 = s18 & s1953
-  s1955 :: SBool = s17 /= s1954
-  s1956 :: SBool = s_2 == s1955
-  s1957 :: SWord8 = s1939 >>> 1
-  s1958 :: SWord8 = s24 | s1957
-  s1959 :: SWord8 = s26 & s1957
-  s1960 :: SWord8 = if s1934 then s1958 else s1959
-  s1961 :: SWord8 = s18 & s1960
-  s1962 :: SBool = s17 /= s1961
-  s1963 :: SWord8 = s18 & s1948
-  s1964 :: SBool = s17 /= s1963
-  s1965 :: SWord8 = s1953 >>> 1
-  s1966 :: SWord8 = s24 | s1965
-  s1967 :: SWord8 = s26 & s1965
-  s1968 :: SWord8 = if s1964 then s1966 else s1967
-  s1969 :: SWord8 = if s22 then s1968 else s1952
-  s1970 :: SWord8 = s1969 >>> 1
-  s1971 :: SWord8 = s24 | s1970
-  s1972 :: SWord8 = s26 & s1970
-  s1973 :: SWord8 = if s1962 then s1971 else s1972
-  s1974 :: SWord8 = if s22 then s1973 else s1968
-  s1975 :: SWord8 = s18 & s1974
-  s1976 :: SBool = s17 /= s1975
-  s1977 :: SBool = s_2 == s1976
-  s1978 :: SWord8 = s1960 >>> 1
-  s1979 :: SWord8 = s24 | s1978
-  s1980 :: SWord8 = s26 & s1978
-  s1981 :: SWord8 = if s1955 then s1979 else s1980
-  s1982 :: SWord8 = s18 & s1981
-  s1983 :: SBool = s17 /= s1982
-  s1984 :: SWord8 = s18 & s1969
-  s1985 :: SBool = s17 /= s1984
-  s1986 :: SWord8 = s1974 >>> 1
-  s1987 :: SWord8 = s24 | s1986
-  s1988 :: SWord8 = s26 & s1986
-  s1989 :: SWord8 = if s1985 then s1987 else s1988
-  s1990 :: SWord8 = if s22 then s1989 else s1973
-  s1991 :: SWord8 = s1990 >>> 1
-  s1992 :: SWord8 = s24 | s1991
-  s1993 :: SWord8 = s26 & s1991
-  s1994 :: SWord8 = if s1983 then s1992 else s1993
-  s1995 :: SWord8 = if s22 then s1994 else s1989
-  s1996 :: SWord8 = s18 & s1995
-  s1997 :: SBool = s17 /= s1996
-  s1998 :: SBool = s_2 == s1997
-  s1999 :: SWord8 = s1981 >>> 1
-  s2000 :: SWord8 = s24 | s1999
-  s2001 :: SWord8 = s26 & s1999
-  s2002 :: SWord8 = if s1976 then s2000 else s2001
-  s2003 :: SWord8 = s2002 >>> 1
-  s2004 :: SWord8 = s24 | s2003
-  s2005 :: SWord8 = s26 & s2003
-  s2006 :: SWord8 = if s1997 then s2004 else s2005
-  s2007 :: SWord8 = s18 & s1990
-  s2008 :: SBool = s17 /= s2007
-  s2009 :: SWord8 = s1995 >>> 1
-  s2010 :: SWord8 = s24 | s2009
-  s2011 :: SWord8 = s26 & s2009
-  s2012 :: SWord8 = if s2008 then s2010 else s2011
-  s2013 :: SWord8 = if s29 then s1888 else s180
-  s2014 :: SWord8 = if s170 then s1905 else s2013
-  s2015 :: SWord8 = if s29 then s1910 else s2014
-  s2016 :: SWord8 = if s170 then s1926 else s2015
-  s2017 :: SWord8 = if s29 then s1931 else s2016
-  s2018 :: SWord8 = if s170 then s1947 else s2017
-  s2019 :: SWord8 = if s29 then s1952 else s2018
-  s2020 :: SWord8 = if s170 then s1968 else s2019
-  s2021 :: SWord8 = if s29 then s1973 else s2020
-  s2022 :: SWord8 = if s170 then s1989 else s2021
-  s2023 :: SWord8 = if s29 then s1994 else s2022
-  s2024 :: SWord8 = if s170 then s2012 else s2023
-  s2025 :: SWord8 = s2002 + s2024
-  s2026 :: SBool = s2025 < s2024
-  s2027 :: SBool = s2025 < s2002
-  s2028 :: SBool = s2026 | s2027
-  s2029 :: SWord8 = s2025 >>> 1
-  s2030 :: SWord8 = s24 | s2029
-  s2031 :: SWord8 = s26 & s2029
-  s2032 :: SWord8 = if s2028 then s2030 else s2031
-  s2033 :: SWord8 = if s1998 then s2006 else s2032
-  s2034 :: SWord8 = s1981 + s2022
-  s2035 :: SWord8 = s18 & s2034
-  s2036 :: SBool = s17 /= s2035
-  s2037 :: SWord8 = if s2036 then s1992 else s1993
-  s2038 :: SWord8 = if s22 then s2037 else s1989
-  s2039 :: SWord8 = s18 & s2038
-  s2040 :: SBool = s17 /= s2039
-  s2041 :: SBool = s_2 == s2040
-  s2042 :: SBool = s2034 < s2022
-  s2043 :: SBool = s2034 < s1981
-  s2044 :: SBool = s2042 | s2043
-  s2045 :: SWord8 = s2034 >>> 1
-  s2046 :: SWord8 = s24 | s2045
-  s2047 :: SWord8 = s26 & s2045
-  s2048 :: SWord8 = if s2044 then s2046 else s2047
-  s2049 :: SWord8 = s2048 >>> 1
-  s2050 :: SWord8 = s24 | s2049
-  s2051 :: SWord8 = s26 & s2049
-  s2052 :: SWord8 = if s2040 then s2050 else s2051
-  s2053 :: SWord8 = s2038 >>> 1
-  s2054 :: SWord8 = s24 | s2053
-  s2055 :: SWord8 = s26 & s2053
-  s2056 :: SWord8 = if s2008 then s2054 else s2055
-  s2057 :: SWord8 = if s29 then s2037 else s2022
-  s2058 :: SWord8 = if s170 then s2056 else s2057
-  s2059 :: SWord8 = s2048 + s2058
-  s2060 :: SBool = s2059 < s2058
-  s2061 :: SBool = s2059 < s2048
-  s2062 :: SBool = s2060 | s2061
-  s2063 :: SWord8 = s2059 >>> 1
-  s2064 :: SWord8 = s24 | s2063
-  s2065 :: SWord8 = s26 & s2063
-  s2066 :: SWord8 = if s2062 then s2064 else s2065
-  s2067 :: SWord8 = if s2041 then s2052 else s2066
-  s2068 :: SWord8 = if s1977 then s2033 else s2067
-  s2069 :: SWord8 = s1960 + s2020
-  s2070 :: SWord8 = s18 & s2069
-  s2071 :: SBool = s17 /= s2070
-  s2072 :: SWord8 = if s2071 then s1971 else s1972
-  s2073 :: SWord8 = if s22 then s2072 else s1968
-  s2074 :: SWord8 = s18 & s2073
-  s2075 :: SBool = s17 /= s2074
-  s2076 :: SBool = s_2 == s2075
-  s2077 :: SBool = s2069 < s2020
-  s2078 :: SBool = s2069 < s1960
-  s2079 :: SBool = s2077 | s2078
-  s2080 :: SWord8 = s2069 >>> 1
-  s2081 :: SWord8 = s24 | s2080
-  s2082 :: SWord8 = s26 & s2080
-  s2083 :: SWord8 = if s2079 then s2081 else s2082
-  s2084 :: SWord8 = s18 & s2083
-  s2085 :: SBool = s17 /= s2084
-  s2086 :: SWord8 = s2073 >>> 1
-  s2087 :: SWord8 = s24 | s2086
-  s2088 :: SWord8 = s26 & s2086
-  s2089 :: SWord8 = if s1985 then s2087 else s2088
-  s2090 :: SWord8 = if s22 then s2089 else s2072
-  s2091 :: SWord8 = s2090 >>> 1
-  s2092 :: SWord8 = s24 | s2091
-  s2093 :: SWord8 = s26 & s2091
-  s2094 :: SWord8 = if s2085 then s2092 else s2093
-  s2095 :: SWord8 = if s22 then s2094 else s2089
-  s2096 :: SWord8 = s18 & s2095
-  s2097 :: SBool = s17 /= s2096
-  s2098 :: SBool = s_2 == s2097
-  s2099 :: SWord8 = s2083 >>> 1
-  s2100 :: SWord8 = s24 | s2099
-  s2101 :: SWord8 = s26 & s2099
-  s2102 :: SWord8 = if s2075 then s2100 else s2101
-  s2103 :: SWord8 = s2102 >>> 1
-  s2104 :: SWord8 = s24 | s2103
-  s2105 :: SWord8 = s26 & s2103
-  s2106 :: SWord8 = if s2097 then s2104 else s2105
-  s2107 :: SWord8 = s18 & s2090
-  s2108 :: SBool = s17 /= s2107
-  s2109 :: SWord8 = s2095 >>> 1
-  s2110 :: SWord8 = s24 | s2109
-  s2111 :: SWord8 = s26 & s2109
-  s2112 :: SWord8 = if s2108 then s2110 else s2111
-  s2113 :: SWord8 = if s29 then s2072 else s2020
-  s2114 :: SWord8 = if s170 then s2089 else s2113
-  s2115 :: SWord8 = if s29 then s2094 else s2114
-  s2116 :: SWord8 = if s170 then s2112 else s2115
-  s2117 :: SWord8 = s2102 + s2116
-  s2118 :: SBool = s2117 < s2116
-  s2119 :: SBool = s2117 < s2102
-  s2120 :: SBool = s2118 | s2119
-  s2121 :: SWord8 = s2117 >>> 1
-  s2122 :: SWord8 = s24 | s2121
-  s2123 :: SWord8 = s26 & s2121
-  s2124 :: SWord8 = if s2120 then s2122 else s2123
-  s2125 :: SWord8 = if s2098 then s2106 else s2124
-  s2126 :: SWord8 = s2083 + s2114
-  s2127 :: SWord8 = s18 & s2126
-  s2128 :: SBool = s17 /= s2127
-  s2129 :: SWord8 = if s2128 then s2092 else s2093
-  s2130 :: SWord8 = if s22 then s2129 else s2089
-  s2131 :: SWord8 = s18 & s2130
-  s2132 :: SBool = s17 /= s2131
-  s2133 :: SBool = s_2 == s2132
-  s2134 :: SBool = s2126 < s2114
-  s2135 :: SBool = s2126 < s2083
-  s2136 :: SBool = s2134 | s2135
-  s2137 :: SWord8 = s2126 >>> 1
-  s2138 :: SWord8 = s24 | s2137
-  s2139 :: SWord8 = s26 & s2137
-  s2140 :: SWord8 = if s2136 then s2138 else s2139
-  s2141 :: SWord8 = s2140 >>> 1
-  s2142 :: SWord8 = s24 | s2141
-  s2143 :: SWord8 = s26 & s2141
-  s2144 :: SWord8 = if s2132 then s2142 else s2143
-  s2145 :: SWord8 = s2130 >>> 1
-  s2146 :: SWord8 = s24 | s2145
-  s2147 :: SWord8 = s26 & s2145
-  s2148 :: SWord8 = if s2108 then s2146 else s2147
-  s2149 :: SWord8 = if s29 then s2129 else s2114
-  s2150 :: SWord8 = if s170 then s2148 else s2149
-  s2151 :: SWord8 = s2140 + s2150
-  s2152 :: SBool = s2151 < s2150
-  s2153 :: SBool = s2151 < s2140
-  s2154 :: SBool = s2152 | s2153
-  s2155 :: SWord8 = s2151 >>> 1
-  s2156 :: SWord8 = s24 | s2155
-  s2157 :: SWord8 = s26 & s2155
-  s2158 :: SWord8 = if s2154 then s2156 else s2157
-  s2159 :: SWord8 = if s2133 then s2144 else s2158
-  s2160 :: SWord8 = if s2076 then s2125 else s2159
-  s2161 :: SWord8 = if s1956 then s2068 else s2160
-  s2162 :: SWord8 = s1939 + s2018
-  s2163 :: SWord8 = s18 & s2162
-  s2164 :: SBool = s17 /= s2163
-  s2165 :: SWord8 = if s2164 then s1950 else s1951
-  s2166 :: SWord8 = if s22 then s2165 else s1947
-  s2167 :: SWord8 = s18 & s2166
-  s2168 :: SBool = s17 /= s2167
-  s2169 :: SBool = s_2 == s2168
-  s2170 :: SBool = s2162 < s2018
-  s2171 :: SBool = s2162 < s1939
-  s2172 :: SBool = s2170 | s2171
-  s2173 :: SWord8 = s2162 >>> 1
-  s2174 :: SWord8 = s24 | s2173
-  s2175 :: SWord8 = s26 & s2173
-  s2176 :: SWord8 = if s2172 then s2174 else s2175
-  s2177 :: SWord8 = s18 & s2176
-  s2178 :: SBool = s17 /= s2177
-  s2179 :: SWord8 = s2166 >>> 1
-  s2180 :: SWord8 = s24 | s2179
-  s2181 :: SWord8 = s26 & s2179
-  s2182 :: SWord8 = if s1964 then s2180 else s2181
-  s2183 :: SWord8 = if s22 then s2182 else s2165
-  s2184 :: SWord8 = s2183 >>> 1
-  s2185 :: SWord8 = s24 | s2184
-  s2186 :: SWord8 = s26 & s2184
-  s2187 :: SWord8 = if s2178 then s2185 else s2186
-  s2188 :: SWord8 = if s22 then s2187 else s2182
-  s2189 :: SWord8 = s18 & s2188
-  s2190 :: SBool = s17 /= s2189
-  s2191 :: SBool = s_2 == s2190
-  s2192 :: SWord8 = s2176 >>> 1
-  s2193 :: SWord8 = s24 | s2192
-  s2194 :: SWord8 = s26 & s2192
-  s2195 :: SWord8 = if s2168 then s2193 else s2194
-  s2196 :: SWord8 = s18 & s2195
-  s2197 :: SBool = s17 /= s2196
-  s2198 :: SWord8 = s18 & s2183
-  s2199 :: SBool = s17 /= s2198
-  s2200 :: SWord8 = s2188 >>> 1
-  s2201 :: SWord8 = s24 | s2200
-  s2202 :: SWord8 = s26 & s2200
-  s2203 :: SWord8 = if s2199 then s2201 else s2202
-  s2204 :: SWord8 = if s22 then s2203 else s2187
-  s2205 :: SWord8 = s2204 >>> 1
-  s2206 :: SWord8 = s24 | s2205
-  s2207 :: SWord8 = s26 & s2205
-  s2208 :: SWord8 = if s2197 then s2206 else s2207
-  s2209 :: SWord8 = if s22 then s2208 else s2203
-  s2210 :: SWord8 = s18 & s2209
-  s2211 :: SBool = s17 /= s2210
-  s2212 :: SBool = s_2 == s2211
-  s2213 :: SWord8 = s2195 >>> 1
-  s2214 :: SWord8 = s24 | s2213
-  s2215 :: SWord8 = s26 & s2213
-  s2216 :: SWord8 = if s2190 then s2214 else s2215
-  s2217 :: SWord8 = s2216 >>> 1
-  s2218 :: SWord8 = s24 | s2217
-  s2219 :: SWord8 = s26 & s2217
-  s2220 :: SWord8 = if s2211 then s2218 else s2219
-  s2221 :: SWord8 = s18 & s2204
-  s2222 :: SBool = s17 /= s2221
-  s2223 :: SWord8 = s2209 >>> 1
-  s2224 :: SWord8 = s24 | s2223
-  s2225 :: SWord8 = s26 & s2223
-  s2226 :: SWord8 = if s2222 then s2224 else s2225
-  s2227 :: SWord8 = if s29 then s2165 else s2018
-  s2228 :: SWord8 = if s170 then s2182 else s2227
-  s2229 :: SWord8 = if s29 then s2187 else s2228
-  s2230 :: SWord8 = if s170 then s2203 else s2229
-  s2231 :: SWord8 = if s29 then s2208 else s2230
-  s2232 :: SWord8 = if s170 then s2226 else s2231
-  s2233 :: SWord8 = s2216 + s2232
-  s2234 :: SBool = s2233 < s2232
-  s2235 :: SBool = s2233 < s2216
-  s2236 :: SBool = s2234 | s2235
-  s2237 :: SWord8 = s2233 >>> 1
-  s2238 :: SWord8 = s24 | s2237
-  s2239 :: SWord8 = s26 & s2237
-  s2240 :: SWord8 = if s2236 then s2238 else s2239
-  s2241 :: SWord8 = if s2212 then s2220 else s2240
-  s2242 :: SWord8 = s2195 + s2230
-  s2243 :: SWord8 = s18 & s2242
-  s2244 :: SBool = s17 /= s2243
-  s2245 :: SWord8 = if s2244 then s2206 else s2207
-  s2246 :: SWord8 = if s22 then s2245 else s2203
-  s2247 :: SWord8 = s18 & s2246
-  s2248 :: SBool = s17 /= s2247
-  s2249 :: SBool = s_2 == s2248
-  s2250 :: SBool = s2242 < s2230
-  s2251 :: SBool = s2242 < s2195
-  s2252 :: SBool = s2250 | s2251
-  s2253 :: SWord8 = s2242 >>> 1
-  s2254 :: SWord8 = s24 | s2253
-  s2255 :: SWord8 = s26 & s2253
-  s2256 :: SWord8 = if s2252 then s2254 else s2255
-  s2257 :: SWord8 = s2256 >>> 1
-  s2258 :: SWord8 = s24 | s2257
-  s2259 :: SWord8 = s26 & s2257
-  s2260 :: SWord8 = if s2248 then s2258 else s2259
-  s2261 :: SWord8 = s2246 >>> 1
-  s2262 :: SWord8 = s24 | s2261
-  s2263 :: SWord8 = s26 & s2261
-  s2264 :: SWord8 = if s2222 then s2262 else s2263
-  s2265 :: SWord8 = if s29 then s2245 else s2230
-  s2266 :: SWord8 = if s170 then s2264 else s2265
-  s2267 :: SWord8 = s2256 + s2266
-  s2268 :: SBool = s2267 < s2266
-  s2269 :: SBool = s2267 < s2256
-  s2270 :: SBool = s2268 | s2269
-  s2271 :: SWord8 = s2267 >>> 1
-  s2272 :: SWord8 = s24 | s2271
-  s2273 :: SWord8 = s26 & s2271
-  s2274 :: SWord8 = if s2270 then s2272 else s2273
-  s2275 :: SWord8 = if s2249 then s2260 else s2274
-  s2276 :: SWord8 = if s2191 then s2241 else s2275
-  s2277 :: SWord8 = s2176 + s2228
-  s2278 :: SWord8 = s18 & s2277
-  s2279 :: SBool = s17 /= s2278
-  s2280 :: SWord8 = if s2279 then s2185 else s2186
-  s2281 :: SWord8 = if s22 then s2280 else s2182
-  s2282 :: SWord8 = s18 & s2281
-  s2283 :: SBool = s17 /= s2282
-  s2284 :: SBool = s_2 == s2283
-  s2285 :: SBool = s2277 < s2228
-  s2286 :: SBool = s2277 < s2176
-  s2287 :: SBool = s2285 | s2286
-  s2288 :: SWord8 = s2277 >>> 1
-  s2289 :: SWord8 = s24 | s2288
-  s2290 :: SWord8 = s26 & s2288
-  s2291 :: SWord8 = if s2287 then s2289 else s2290
-  s2292 :: SWord8 = s18 & s2291
-  s2293 :: SBool = s17 /= s2292
-  s2294 :: SWord8 = s2281 >>> 1
-  s2295 :: SWord8 = s24 | s2294
-  s2296 :: SWord8 = s26 & s2294
-  s2297 :: SWord8 = if s2199 then s2295 else s2296
-  s2298 :: SWord8 = if s22 then s2297 else s2280
-  s2299 :: SWord8 = s2298 >>> 1
-  s2300 :: SWord8 = s24 | s2299
-  s2301 :: SWord8 = s26 & s2299
-  s2302 :: SWord8 = if s2293 then s2300 else s2301
-  s2303 :: SWord8 = if s22 then s2302 else s2297
-  s2304 :: SWord8 = s18 & s2303
-  s2305 :: SBool = s17 /= s2304
-  s2306 :: SBool = s_2 == s2305
-  s2307 :: SWord8 = s2291 >>> 1
-  s2308 :: SWord8 = s24 | s2307
-  s2309 :: SWord8 = s26 & s2307
-  s2310 :: SWord8 = if s2283 then s2308 else s2309
-  s2311 :: SWord8 = s2310 >>> 1
-  s2312 :: SWord8 = s24 | s2311
-  s2313 :: SWord8 = s26 & s2311
-  s2314 :: SWord8 = if s2305 then s2312 else s2313
-  s2315 :: SWord8 = s18 & s2298
-  s2316 :: SBool = s17 /= s2315
-  s2317 :: SWord8 = s2303 >>> 1
-  s2318 :: SWord8 = s24 | s2317
-  s2319 :: SWord8 = s26 & s2317
-  s2320 :: SWord8 = if s2316 then s2318 else s2319
-  s2321 :: SWord8 = if s29 then s2280 else s2228
-  s2322 :: SWord8 = if s170 then s2297 else s2321
-  s2323 :: SWord8 = if s29 then s2302 else s2322
-  s2324 :: SWord8 = if s170 then s2320 else s2323
-  s2325 :: SWord8 = s2310 + s2324
-  s2326 :: SBool = s2325 < s2324
-  s2327 :: SBool = s2325 < s2310
-  s2328 :: SBool = s2326 | s2327
-  s2329 :: SWord8 = s2325 >>> 1
-  s2330 :: SWord8 = s24 | s2329
-  s2331 :: SWord8 = s26 & s2329
-  s2332 :: SWord8 = if s2328 then s2330 else s2331
-  s2333 :: SWord8 = if s2306 then s2314 else s2332
-  s2334 :: SWord8 = s2291 + s2322
-  s2335 :: SWord8 = s18 & s2334
-  s2336 :: SBool = s17 /= s2335
-  s2337 :: SWord8 = if s2336 then s2300 else s2301
-  s2338 :: SWord8 = if s22 then s2337 else s2297
-  s2339 :: SWord8 = s18 & s2338
-  s2340 :: SBool = s17 /= s2339
-  s2341 :: SBool = s_2 == s2340
-  s2342 :: SBool = s2334 < s2322
-  s2343 :: SBool = s2334 < s2291
-  s2344 :: SBool = s2342 | s2343
-  s2345 :: SWord8 = s2334 >>> 1
-  s2346 :: SWord8 = s24 | s2345
-  s2347 :: SWord8 = s26 & s2345
-  s2348 :: SWord8 = if s2344 then s2346 else s2347
-  s2349 :: SWord8 = s2348 >>> 1
-  s2350 :: SWord8 = s24 | s2349
-  s2351 :: SWord8 = s26 & s2349
-  s2352 :: SWord8 = if s2340 then s2350 else s2351
-  s2353 :: SWord8 = s2338 >>> 1
-  s2354 :: SWord8 = s24 | s2353
-  s2355 :: SWord8 = s26 & s2353
-  s2356 :: SWord8 = if s2316 then s2354 else s2355
-  s2357 :: SWord8 = if s29 then s2337 else s2322
-  s2358 :: SWord8 = if s170 then s2356 else s2357
-  s2359 :: SWord8 = s2348 + s2358
-  s2360 :: SBool = s2359 < s2358
-  s2361 :: SBool = s2359 < s2348
-  s2362 :: SBool = s2360 | s2361
-  s2363 :: SWord8 = s2359 >>> 1
-  s2364 :: SWord8 = s24 | s2363
-  s2365 :: SWord8 = s26 & s2363
-  s2366 :: SWord8 = if s2362 then s2364 else s2365
-  s2367 :: SWord8 = if s2341 then s2352 else s2366
-  s2368 :: SWord8 = if s2284 then s2333 else s2367
-  s2369 :: SWord8 = if s2169 then s2276 else s2368
-  s2370 :: SWord8 = if s1935 then s2161 else s2369
-  s2371 :: SWord8 = s1918 + s2016
-  s2372 :: SWord8 = s18 & s2371
-  s2373 :: SBool = s17 /= s2372
-  s2374 :: SWord8 = if s2373 then s1929 else s1930
-  s2375 :: SWord8 = if s22 then s2374 else s1926
-  s2376 :: SWord8 = s18 & s2375
-  s2377 :: SBool = s17 /= s2376
-  s2378 :: SBool = s_2 == s2377
-  s2379 :: SBool = s2371 < s2016
-  s2380 :: SBool = s2371 < s1918
-  s2381 :: SBool = s2379 | s2380
-  s2382 :: SWord8 = s2371 >>> 1
-  s2383 :: SWord8 = s24 | s2382
-  s2384 :: SWord8 = s26 & s2382
-  s2385 :: SWord8 = if s2381 then s2383 else s2384
-  s2386 :: SWord8 = s18 & s2385
-  s2387 :: SBool = s17 /= s2386
-  s2388 :: SWord8 = s2375 >>> 1
-  s2389 :: SWord8 = s24 | s2388
-  s2390 :: SWord8 = s26 & s2388
-  s2391 :: SWord8 = if s1943 then s2389 else s2390
-  s2392 :: SWord8 = if s22 then s2391 else s2374
-  s2393 :: SWord8 = s2392 >>> 1
-  s2394 :: SWord8 = s24 | s2393
-  s2395 :: SWord8 = s26 & s2393
-  s2396 :: SWord8 = if s2387 then s2394 else s2395
-  s2397 :: SWord8 = if s22 then s2396 else s2391
-  s2398 :: SWord8 = s18 & s2397
-  s2399 :: SBool = s17 /= s2398
-  s2400 :: SBool = s_2 == s2399
-  s2401 :: SWord8 = s2385 >>> 1
-  s2402 :: SWord8 = s24 | s2401
-  s2403 :: SWord8 = s26 & s2401
-  s2404 :: SWord8 = if s2377 then s2402 else s2403
-  s2405 :: SWord8 = s18 & s2404
-  s2406 :: SBool = s17 /= s2405
-  s2407 :: SWord8 = s18 & s2392
-  s2408 :: SBool = s17 /= s2407
-  s2409 :: SWord8 = s2397 >>> 1
-  s2410 :: SWord8 = s24 | s2409
-  s2411 :: SWord8 = s26 & s2409
-  s2412 :: SWord8 = if s2408 then s2410 else s2411
-  s2413 :: SWord8 = if s22 then s2412 else s2396
-  s2414 :: SWord8 = s2413 >>> 1
-  s2415 :: SWord8 = s24 | s2414
-  s2416 :: SWord8 = s26 & s2414
-  s2417 :: SWord8 = if s2406 then s2415 else s2416
-  s2418 :: SWord8 = if s22 then s2417 else s2412
-  s2419 :: SWord8 = s18 & s2418
-  s2420 :: SBool = s17 /= s2419
-  s2421 :: SBool = s_2 == s2420
-  s2422 :: SWord8 = s2404 >>> 1
-  s2423 :: SWord8 = s24 | s2422
-  s2424 :: SWord8 = s26 & s2422
-  s2425 :: SWord8 = if s2399 then s2423 else s2424
-  s2426 :: SWord8 = s18 & s2425
-  s2427 :: SBool = s17 /= s2426
-  s2428 :: SWord8 = s18 & s2413
-  s2429 :: SBool = s17 /= s2428
-  s2430 :: SWord8 = s2418 >>> 1
-  s2431 :: SWord8 = s24 | s2430
-  s2432 :: SWord8 = s26 & s2430
-  s2433 :: SWord8 = if s2429 then s2431 else s2432
-  s2434 :: SWord8 = if s22 then s2433 else s2417
-  s2435 :: SWord8 = s2434 >>> 1
-  s2436 :: SWord8 = s24 | s2435
-  s2437 :: SWord8 = s26 & s2435
-  s2438 :: SWord8 = if s2427 then s2436 else s2437
-  s2439 :: SWord8 = if s22 then s2438 else s2433
-  s2440 :: SWord8 = s18 & s2439
-  s2441 :: SBool = s17 /= s2440
-  s2442 :: SBool = s_2 == s2441
-  s2443 :: SWord8 = s2425 >>> 1
-  s2444 :: SWord8 = s24 | s2443
-  s2445 :: SWord8 = s26 & s2443
-  s2446 :: SWord8 = if s2420 then s2444 else s2445
-  s2447 :: SWord8 = s2446 >>> 1
-  s2448 :: SWord8 = s24 | s2447
-  s2449 :: SWord8 = s26 & s2447
-  s2450 :: SWord8 = if s2441 then s2448 else s2449
-  s2451 :: SWord8 = s18 & s2434
-  s2452 :: SBool = s17 /= s2451
-  s2453 :: SWord8 = s2439 >>> 1
-  s2454 :: SWord8 = s24 | s2453
-  s2455 :: SWord8 = s26 & s2453
-  s2456 :: SWord8 = if s2452 then s2454 else s2455
-  s2457 :: SWord8 = if s29 then s2374 else s2016
-  s2458 :: SWord8 = if s170 then s2391 else s2457
-  s2459 :: SWord8 = if s29 then s2396 else s2458
-  s2460 :: SWord8 = if s170 then s2412 else s2459
-  s2461 :: SWord8 = if s29 then s2417 else s2460
-  s2462 :: SWord8 = if s170 then s2433 else s2461
-  s2463 :: SWord8 = if s29 then s2438 else s2462
-  s2464 :: SWord8 = if s170 then s2456 else s2463
-  s2465 :: SWord8 = s2446 + s2464
-  s2466 :: SBool = s2465 < s2464
-  s2467 :: SBool = s2465 < s2446
-  s2468 :: SBool = s2466 | s2467
-  s2469 :: SWord8 = s2465 >>> 1
-  s2470 :: SWord8 = s24 | s2469
-  s2471 :: SWord8 = s26 & s2469
-  s2472 :: SWord8 = if s2468 then s2470 else s2471
-  s2473 :: SWord8 = if s2442 then s2450 else s2472
-  s2474 :: SWord8 = s2425 + s2462
-  s2475 :: SWord8 = s18 & s2474
-  s2476 :: SBool = s17 /= s2475
-  s2477 :: SWord8 = if s2476 then s2436 else s2437
-  s2478 :: SWord8 = if s22 then s2477 else s2433
-  s2479 :: SWord8 = s18 & s2478
-  s2480 :: SBool = s17 /= s2479
-  s2481 :: SBool = s_2 == s2480
-  s2482 :: SBool = s2474 < s2462
-  s2483 :: SBool = s2474 < s2425
-  s2484 :: SBool = s2482 | s2483
-  s2485 :: SWord8 = s2474 >>> 1
-  s2486 :: SWord8 = s24 | s2485
-  s2487 :: SWord8 = s26 & s2485
-  s2488 :: SWord8 = if s2484 then s2486 else s2487
-  s2489 :: SWord8 = s2488 >>> 1
-  s2490 :: SWord8 = s24 | s2489
-  s2491 :: SWord8 = s26 & s2489
-  s2492 :: SWord8 = if s2480 then s2490 else s2491
-  s2493 :: SWord8 = s2478 >>> 1
-  s2494 :: SWord8 = s24 | s2493
-  s2495 :: SWord8 = s26 & s2493
-  s2496 :: SWord8 = if s2452 then s2494 else s2495
-  s2497 :: SWord8 = if s29 then s2477 else s2462
-  s2498 :: SWord8 = if s170 then s2496 else s2497
-  s2499 :: SWord8 = s2488 + s2498
-  s2500 :: SBool = s2499 < s2498
-  s2501 :: SBool = s2499 < s2488
-  s2502 :: SBool = s2500 | s2501
-  s2503 :: SWord8 = s2499 >>> 1
-  s2504 :: SWord8 = s24 | s2503
-  s2505 :: SWord8 = s26 & s2503
-  s2506 :: SWord8 = if s2502 then s2504 else s2505
-  s2507 :: SWord8 = if s2481 then s2492 else s2506
-  s2508 :: SWord8 = if s2421 then s2473 else s2507
-  s2509 :: SWord8 = s2404 + s2460
-  s2510 :: SWord8 = s18 & s2509
-  s2511 :: SBool = s17 /= s2510
-  s2512 :: SWord8 = if s2511 then s2415 else s2416
-  s2513 :: SWord8 = if s22 then s2512 else s2412
-  s2514 :: SWord8 = s18 & s2513
-  s2515 :: SBool = s17 /= s2514
-  s2516 :: SBool = s_2 == s2515
-  s2517 :: SBool = s2509 < s2460
-  s2518 :: SBool = s2509 < s2404
-  s2519 :: SBool = s2517 | s2518
-  s2520 :: SWord8 = s2509 >>> 1
-  s2521 :: SWord8 = s24 | s2520
-  s2522 :: SWord8 = s26 & s2520
-  s2523 :: SWord8 = if s2519 then s2521 else s2522
-  s2524 :: SWord8 = s18 & s2523
-  s2525 :: SBool = s17 /= s2524
-  s2526 :: SWord8 = s2513 >>> 1
-  s2527 :: SWord8 = s24 | s2526
-  s2528 :: SWord8 = s26 & s2526
-  s2529 :: SWord8 = if s2429 then s2527 else s2528
-  s2530 :: SWord8 = if s22 then s2529 else s2512
-  s2531 :: SWord8 = s2530 >>> 1
-  s2532 :: SWord8 = s24 | s2531
-  s2533 :: SWord8 = s26 & s2531
-  s2534 :: SWord8 = if s2525 then s2532 else s2533
-  s2535 :: SWord8 = if s22 then s2534 else s2529
-  s2536 :: SWord8 = s18 & s2535
-  s2537 :: SBool = s17 /= s2536
-  s2538 :: SBool = s_2 == s2537
-  s2539 :: SWord8 = s2523 >>> 1
-  s2540 :: SWord8 = s24 | s2539
-  s2541 :: SWord8 = s26 & s2539
-  s2542 :: SWord8 = if s2515 then s2540 else s2541
-  s2543 :: SWord8 = s2542 >>> 1
-  s2544 :: SWord8 = s24 | s2543
-  s2545 :: SWord8 = s26 & s2543
-  s2546 :: SWord8 = if s2537 then s2544 else s2545
-  s2547 :: SWord8 = s18 & s2530
-  s2548 :: SBool = s17 /= s2547
-  s2549 :: SWord8 = s2535 >>> 1
-  s2550 :: SWord8 = s24 | s2549
-  s2551 :: SWord8 = s26 & s2549
-  s2552 :: SWord8 = if s2548 then s2550 else s2551
-  s2553 :: SWord8 = if s29 then s2512 else s2460
-  s2554 :: SWord8 = if s170 then s2529 else s2553
-  s2555 :: SWord8 = if s29 then s2534 else s2554
-  s2556 :: SWord8 = if s170 then s2552 else s2555
-  s2557 :: SWord8 = s2542 + s2556
-  s2558 :: SBool = s2557 < s2556
-  s2559 :: SBool = s2557 < s2542
-  s2560 :: SBool = s2558 | s2559
-  s2561 :: SWord8 = s2557 >>> 1
-  s2562 :: SWord8 = s24 | s2561
-  s2563 :: SWord8 = s26 & s2561
-  s2564 :: SWord8 = if s2560 then s2562 else s2563
-  s2565 :: SWord8 = if s2538 then s2546 else s2564
-  s2566 :: SWord8 = s2523 + s2554
-  s2567 :: SWord8 = s18 & s2566
-  s2568 :: SBool = s17 /= s2567
-  s2569 :: SWord8 = if s2568 then s2532 else s2533
-  s2570 :: SWord8 = if s22 then s2569 else s2529
-  s2571 :: SWord8 = s18 & s2570
-  s2572 :: SBool = s17 /= s2571
-  s2573 :: SBool = s_2 == s2572
-  s2574 :: SBool = s2566 < s2554
-  s2575 :: SBool = s2566 < s2523
-  s2576 :: SBool = s2574 | s2575
-  s2577 :: SWord8 = s2566 >>> 1
-  s2578 :: SWord8 = s24 | s2577
-  s2579 :: SWord8 = s26 & s2577
-  s2580 :: SWord8 = if s2576 then s2578 else s2579
-  s2581 :: SWord8 = s2580 >>> 1
-  s2582 :: SWord8 = s24 | s2581
-  s2583 :: SWord8 = s26 & s2581
-  s2584 :: SWord8 = if s2572 then s2582 else s2583
-  s2585 :: SWord8 = s2570 >>> 1
-  s2586 :: SWord8 = s24 | s2585
-  s2587 :: SWord8 = s26 & s2585
-  s2588 :: SWord8 = if s2548 then s2586 else s2587
-  s2589 :: SWord8 = if s29 then s2569 else s2554
-  s2590 :: SWord8 = if s170 then s2588 else s2589
-  s2591 :: SWord8 = s2580 + s2590
-  s2592 :: SBool = s2591 < s2590
-  s2593 :: SBool = s2591 < s2580
-  s2594 :: SBool = s2592 | s2593
-  s2595 :: SWord8 = s2591 >>> 1
-  s2596 :: SWord8 = s24 | s2595
-  s2597 :: SWord8 = s26 & s2595
-  s2598 :: SWord8 = if s2594 then s2596 else s2597
-  s2599 :: SWord8 = if s2573 then s2584 else s2598
-  s2600 :: SWord8 = if s2516 then s2565 else s2599
-  s2601 :: SWord8 = if s2400 then s2508 else s2600
-  s2602 :: SWord8 = s2385 + s2458
-  s2603 :: SWord8 = s18 & s2602
-  s2604 :: SBool = s17 /= s2603
-  s2605 :: SWord8 = if s2604 then s2394 else s2395
-  s2606 :: SWord8 = if s22 then s2605 else s2391
-  s2607 :: SWord8 = s18 & s2606
-  s2608 :: SBool = s17 /= s2607
-  s2609 :: SBool = s_2 == s2608
-  s2610 :: SBool = s2602 < s2458
-  s2611 :: SBool = s2602 < s2385
-  s2612 :: SBool = s2610 | s2611
-  s2613 :: SWord8 = s2602 >>> 1
-  s2614 :: SWord8 = s24 | s2613
-  s2615 :: SWord8 = s26 & s2613
-  s2616 :: SWord8 = if s2612 then s2614 else s2615
-  s2617 :: SWord8 = s18 & s2616
-  s2618 :: SBool = s17 /= s2617
-  s2619 :: SWord8 = s2606 >>> 1
-  s2620 :: SWord8 = s24 | s2619
-  s2621 :: SWord8 = s26 & s2619
-  s2622 :: SWord8 = if s2408 then s2620 else s2621
-  s2623 :: SWord8 = if s22 then s2622 else s2605
-  s2624 :: SWord8 = s2623 >>> 1
-  s2625 :: SWord8 = s24 | s2624
-  s2626 :: SWord8 = s26 & s2624
-  s2627 :: SWord8 = if s2618 then s2625 else s2626
-  s2628 :: SWord8 = if s22 then s2627 else s2622
-  s2629 :: SWord8 = s18 & s2628
-  s2630 :: SBool = s17 /= s2629
-  s2631 :: SBool = s_2 == s2630
-  s2632 :: SWord8 = s2616 >>> 1
-  s2633 :: SWord8 = s24 | s2632
-  s2634 :: SWord8 = s26 & s2632
-  s2635 :: SWord8 = if s2608 then s2633 else s2634
-  s2636 :: SWord8 = s18 & s2635
-  s2637 :: SBool = s17 /= s2636
-  s2638 :: SWord8 = s18 & s2623
-  s2639 :: SBool = s17 /= s2638
-  s2640 :: SWord8 = s2628 >>> 1
-  s2641 :: SWord8 = s24 | s2640
-  s2642 :: SWord8 = s26 & s2640
-  s2643 :: SWord8 = if s2639 then s2641 else s2642
-  s2644 :: SWord8 = if s22 then s2643 else s2627
-  s2645 :: SWord8 = s2644 >>> 1
-  s2646 :: SWord8 = s24 | s2645
-  s2647 :: SWord8 = s26 & s2645
-  s2648 :: SWord8 = if s2637 then s2646 else s2647
-  s2649 :: SWord8 = if s22 then s2648 else s2643
-  s2650 :: SWord8 = s18 & s2649
-  s2651 :: SBool = s17 /= s2650
-  s2652 :: SBool = s_2 == s2651
-  s2653 :: SWord8 = s2635 >>> 1
-  s2654 :: SWord8 = s24 | s2653
-  s2655 :: SWord8 = s26 & s2653
-  s2656 :: SWord8 = if s2630 then s2654 else s2655
-  s2657 :: SWord8 = s2656 >>> 1
-  s2658 :: SWord8 = s24 | s2657
-  s2659 :: SWord8 = s26 & s2657
-  s2660 :: SWord8 = if s2651 then s2658 else s2659
-  s2661 :: SWord8 = s18 & s2644
-  s2662 :: SBool = s17 /= s2661
-  s2663 :: SWord8 = s2649 >>> 1
-  s2664 :: SWord8 = s24 | s2663
-  s2665 :: SWord8 = s26 & s2663
-  s2666 :: SWord8 = if s2662 then s2664 else s2665
-  s2667 :: SWord8 = if s29 then s2605 else s2458
-  s2668 :: SWord8 = if s170 then s2622 else s2667
-  s2669 :: SWord8 = if s29 then s2627 else s2668
-  s2670 :: SWord8 = if s170 then s2643 else s2669
-  s2671 :: SWord8 = if s29 then s2648 else s2670
-  s2672 :: SWord8 = if s170 then s2666 else s2671
-  s2673 :: SWord8 = s2656 + s2672
-  s2674 :: SBool = s2673 < s2672
-  s2675 :: SBool = s2673 < s2656
-  s2676 :: SBool = s2674 | s2675
-  s2677 :: SWord8 = s2673 >>> 1
-  s2678 :: SWord8 = s24 | s2677
-  s2679 :: SWord8 = s26 & s2677
-  s2680 :: SWord8 = if s2676 then s2678 else s2679
-  s2681 :: SWord8 = if s2652 then s2660 else s2680
-  s2682 :: SWord8 = s2635 + s2670
-  s2683 :: SWord8 = s18 & s2682
-  s2684 :: SBool = s17 /= s2683
-  s2685 :: SWord8 = if s2684 then s2646 else s2647
-  s2686 :: SWord8 = if s22 then s2685 else s2643
-  s2687 :: SWord8 = s18 & s2686
-  s2688 :: SBool = s17 /= s2687
-  s2689 :: SBool = s_2 == s2688
-  s2690 :: SBool = s2682 < s2670
-  s2691 :: SBool = s2682 < s2635
-  s2692 :: SBool = s2690 | s2691
-  s2693 :: SWord8 = s2682 >>> 1
-  s2694 :: SWord8 = s24 | s2693
-  s2695 :: SWord8 = s26 & s2693
-  s2696 :: SWord8 = if s2692 then s2694 else s2695
-  s2697 :: SWord8 = s2696 >>> 1
-  s2698 :: SWord8 = s24 | s2697
-  s2699 :: SWord8 = s26 & s2697
-  s2700 :: SWord8 = if s2688 then s2698 else s2699
-  s2701 :: SWord8 = s2686 >>> 1
-  s2702 :: SWord8 = s24 | s2701
-  s2703 :: SWord8 = s26 & s2701
-  s2704 :: SWord8 = if s2662 then s2702 else s2703
-  s2705 :: SWord8 = if s29 then s2685 else s2670
-  s2706 :: SWord8 = if s170 then s2704 else s2705
-  s2707 :: SWord8 = s2696 + s2706
-  s2708 :: SBool = s2707 < s2706
-  s2709 :: SBool = s2707 < s2696
-  s2710 :: SBool = s2708 | s2709
-  s2711 :: SWord8 = s2707 >>> 1
-  s2712 :: SWord8 = s24 | s2711
-  s2713 :: SWord8 = s26 & s2711
-  s2714 :: SWord8 = if s2710 then s2712 else s2713
-  s2715 :: SWord8 = if s2689 then s2700 else s2714
-  s2716 :: SWord8 = if s2631 then s2681 else s2715
-  s2717 :: SWord8 = s2616 + s2668
-  s2718 :: SWord8 = s18 & s2717
-  s2719 :: SBool = s17 /= s2718
-  s2720 :: SWord8 = if s2719 then s2625 else s2626
-  s2721 :: SWord8 = if s22 then s2720 else s2622
-  s2722 :: SWord8 = s18 & s2721
-  s2723 :: SBool = s17 /= s2722
-  s2724 :: SBool = s_2 == s2723
-  s2725 :: SBool = s2717 < s2668
-  s2726 :: SBool = s2717 < s2616
-  s2727 :: SBool = s2725 | s2726
-  s2728 :: SWord8 = s2717 >>> 1
-  s2729 :: SWord8 = s24 | s2728
-  s2730 :: SWord8 = s26 & s2728
-  s2731 :: SWord8 = if s2727 then s2729 else s2730
-  s2732 :: SWord8 = s18 & s2731
-  s2733 :: SBool = s17 /= s2732
-  s2734 :: SWord8 = s2721 >>> 1
-  s2735 :: SWord8 = s24 | s2734
-  s2736 :: SWord8 = s26 & s2734
-  s2737 :: SWord8 = if s2639 then s2735 else s2736
-  s2738 :: SWord8 = if s22 then s2737 else s2720
-  s2739 :: SWord8 = s2738 >>> 1
-  s2740 :: SWord8 = s24 | s2739
-  s2741 :: SWord8 = s26 & s2739
-  s2742 :: SWord8 = if s2733 then s2740 else s2741
-  s2743 :: SWord8 = if s22 then s2742 else s2737
-  s2744 :: SWord8 = s18 & s2743
-  s2745 :: SBool = s17 /= s2744
-  s2746 :: SBool = s_2 == s2745
-  s2747 :: SWord8 = s2731 >>> 1
-  s2748 :: SWord8 = s24 | s2747
-  s2749 :: SWord8 = s26 & s2747
-  s2750 :: SWord8 = if s2723 then s2748 else s2749
-  s2751 :: SWord8 = s2750 >>> 1
-  s2752 :: SWord8 = s24 | s2751
-  s2753 :: SWord8 = s26 & s2751
-  s2754 :: SWord8 = if s2745 then s2752 else s2753
-  s2755 :: SWord8 = s18 & s2738
-  s2756 :: SBool = s17 /= s2755
-  s2757 :: SWord8 = s2743 >>> 1
-  s2758 :: SWord8 = s24 | s2757
-  s2759 :: SWord8 = s26 & s2757
-  s2760 :: SWord8 = if s2756 then s2758 else s2759
-  s2761 :: SWord8 = if s29 then s2720 else s2668
-  s2762 :: SWord8 = if s170 then s2737 else s2761
-  s2763 :: SWord8 = if s29 then s2742 else s2762
-  s2764 :: SWord8 = if s170 then s2760 else s2763
-  s2765 :: SWord8 = s2750 + s2764
-  s2766 :: SBool = s2765 < s2764
-  s2767 :: SBool = s2765 < s2750
-  s2768 :: SBool = s2766 | s2767
-  s2769 :: SWord8 = s2765 >>> 1
-  s2770 :: SWord8 = s24 | s2769
-  s2771 :: SWord8 = s26 & s2769
-  s2772 :: SWord8 = if s2768 then s2770 else s2771
-  s2773 :: SWord8 = if s2746 then s2754 else s2772
-  s2774 :: SWord8 = s2731 + s2762
-  s2775 :: SWord8 = s18 & s2774
-  s2776 :: SBool = s17 /= s2775
-  s2777 :: SWord8 = if s2776 then s2740 else s2741
-  s2778 :: SWord8 = if s22 then s2777 else s2737
-  s2779 :: SWord8 = s18 & s2778
-  s2780 :: SBool = s17 /= s2779
-  s2781 :: SBool = s_2 == s2780
-  s2782 :: SBool = s2774 < s2762
-  s2783 :: SBool = s2774 < s2731
-  s2784 :: SBool = s2782 | s2783
-  s2785 :: SWord8 = s2774 >>> 1
-  s2786 :: SWord8 = s24 | s2785
-  s2787 :: SWord8 = s26 & s2785
-  s2788 :: SWord8 = if s2784 then s2786 else s2787
-  s2789 :: SWord8 = s2788 >>> 1
-  s2790 :: SWord8 = s24 | s2789
-  s2791 :: SWord8 = s26 & s2789
-  s2792 :: SWord8 = if s2780 then s2790 else s2791
-  s2793 :: SWord8 = s2778 >>> 1
-  s2794 :: SWord8 = s24 | s2793
-  s2795 :: SWord8 = s26 & s2793
-  s2796 :: SWord8 = if s2756 then s2794 else s2795
-  s2797 :: SWord8 = if s29 then s2777 else s2762
-  s2798 :: SWord8 = if s170 then s2796 else s2797
-  s2799 :: SWord8 = s2788 + s2798
-  s2800 :: SBool = s2799 < s2798
-  s2801 :: SBool = s2799 < s2788
-  s2802 :: SBool = s2800 | s2801
-  s2803 :: SWord8 = s2799 >>> 1
-  s2804 :: SWord8 = s24 | s2803
-  s2805 :: SWord8 = s26 & s2803
-  s2806 :: SWord8 = if s2802 then s2804 else s2805
-  s2807 :: SWord8 = if s2781 then s2792 else s2806
-  s2808 :: SWord8 = if s2724 then s2773 else s2807
-  s2809 :: SWord8 = if s2609 then s2716 else s2808
-  s2810 :: SWord8 = if s2378 then s2601 else s2809
-  s2811 :: SWord8 = if s1914 then s2370 else s2810
-  s2812 :: SWord8 = s1899 + s2014
-  s2813 :: SWord8 = s18 & s2812
-  s2814 :: SBool = s17 /= s2813
-  s2815 :: SWord8 = if s2814 then s1908 else s1909
-  s2816 :: SWord8 = if s22 then s2815 else s1905
-  s2817 :: SWord8 = s18 & s2816
-  s2818 :: SBool = s17 /= s2817
-  s2819 :: SBool = s_2 == s2818
-  s2820 :: SBool = s2812 < s2014
-  s2821 :: SBool = s2812 < s1899
-  s2822 :: SBool = s2820 | s2821
-  s2823 :: SWord8 = s2812 >>> 1
-  s2824 :: SWord8 = s24 | s2823
-  s2825 :: SWord8 = s26 & s2823
-  s2826 :: SWord8 = if s2822 then s2824 else s2825
-  s2827 :: SWord8 = s18 & s2826
-  s2828 :: SBool = s17 /= s2827
-  s2829 :: SWord8 = s2816 >>> 1
-  s2830 :: SWord8 = s24 | s2829
-  s2831 :: SWord8 = s26 & s2829
-  s2832 :: SWord8 = if s1922 then s2830 else s2831
-  s2833 :: SWord8 = if s22 then s2832 else s2815
-  s2834 :: SWord8 = s2833 >>> 1
-  s2835 :: SWord8 = s24 | s2834
-  s2836 :: SWord8 = s26 & s2834
-  s2837 :: SWord8 = if s2828 then s2835 else s2836
-  s2838 :: SWord8 = if s22 then s2837 else s2832
-  s2839 :: SWord8 = s18 & s2838
-  s2840 :: SBool = s17 /= s2839
-  s2841 :: SBool = s_2 == s2840
-  s2842 :: SWord8 = s2826 >>> 1
-  s2843 :: SWord8 = s24 | s2842
-  s2844 :: SWord8 = s26 & s2842
-  s2845 :: SWord8 = if s2818 then s2843 else s2844
-  s2846 :: SWord8 = s18 & s2845
-  s2847 :: SBool = s17 /= s2846
-  s2848 :: SWord8 = s18 & s2833
-  s2849 :: SBool = s17 /= s2848
-  s2850 :: SWord8 = s2838 >>> 1
-  s2851 :: SWord8 = s24 | s2850
-  s2852 :: SWord8 = s26 & s2850
-  s2853 :: SWord8 = if s2849 then s2851 else s2852
-  s2854 :: SWord8 = if s22 then s2853 else s2837
-  s2855 :: SWord8 = s2854 >>> 1
-  s2856 :: SWord8 = s24 | s2855
-  s2857 :: SWord8 = s26 & s2855
-  s2858 :: SWord8 = if s2847 then s2856 else s2857
-  s2859 :: SWord8 = if s22 then s2858 else s2853
-  s2860 :: SWord8 = s18 & s2859
-  s2861 :: SBool = s17 /= s2860
-  s2862 :: SBool = s_2 == s2861
-  s2863 :: SWord8 = s2845 >>> 1
-  s2864 :: SWord8 = s24 | s2863
-  s2865 :: SWord8 = s26 & s2863
-  s2866 :: SWord8 = if s2840 then s2864 else s2865
-  s2867 :: SWord8 = s18 & s2866
-  s2868 :: SBool = s17 /= s2867
-  s2869 :: SWord8 = s18 & s2854
-  s2870 :: SBool = s17 /= s2869
-  s2871 :: SWord8 = s2859 >>> 1
-  s2872 :: SWord8 = s24 | s2871
-  s2873 :: SWord8 = s26 & s2871
-  s2874 :: SWord8 = if s2870 then s2872 else s2873
-  s2875 :: SWord8 = if s22 then s2874 else s2858
-  s2876 :: SWord8 = s2875 >>> 1
-  s2877 :: SWord8 = s24 | s2876
-  s2878 :: SWord8 = s26 & s2876
-  s2879 :: SWord8 = if s2868 then s2877 else s2878
-  s2880 :: SWord8 = if s22 then s2879 else s2874
-  s2881 :: SWord8 = s18 & s2880
-  s2882 :: SBool = s17 /= s2881
-  s2883 :: SBool = s_2 == s2882
-  s2884 :: SWord8 = s2866 >>> 1
-  s2885 :: SWord8 = s24 | s2884
-  s2886 :: SWord8 = s26 & s2884
-  s2887 :: SWord8 = if s2861 then s2885 else s2886
-  s2888 :: SWord8 = s18 & s2887
-  s2889 :: SBool = s17 /= s2888
-  s2890 :: SWord8 = s18 & s2875
-  s2891 :: SBool = s17 /= s2890
-  s2892 :: SWord8 = s2880 >>> 1
-  s2893 :: SWord8 = s24 | s2892
-  s2894 :: SWord8 = s26 & s2892
-  s2895 :: SWord8 = if s2891 then s2893 else s2894
-  s2896 :: SWord8 = if s22 then s2895 else s2879
-  s2897 :: SWord8 = s2896 >>> 1
-  s2898 :: SWord8 = s24 | s2897
-  s2899 :: SWord8 = s26 & s2897
-  s2900 :: SWord8 = if s2889 then s2898 else s2899
-  s2901 :: SWord8 = if s22 then s2900 else s2895
-  s2902 :: SWord8 = s18 & s2901
-  s2903 :: SBool = s17 /= s2902
-  s2904 :: SBool = s_2 == s2903
-  s2905 :: SWord8 = s2887 >>> 1
-  s2906 :: SWord8 = s24 | s2905
-  s2907 :: SWord8 = s26 & s2905
-  s2908 :: SWord8 = if s2882 then s2906 else s2907
-  s2909 :: SWord8 = s2908 >>> 1
-  s2910 :: SWord8 = s24 | s2909
-  s2911 :: SWord8 = s26 & s2909
-  s2912 :: SWord8 = if s2903 then s2910 else s2911
-  s2913 :: SWord8 = s18 & s2896
-  s2914 :: SBool = s17 /= s2913
-  s2915 :: SWord8 = s2901 >>> 1
-  s2916 :: SWord8 = s24 | s2915
-  s2917 :: SWord8 = s26 & s2915
-  s2918 :: SWord8 = if s2914 then s2916 else s2917
-  s2919 :: SWord8 = if s29 then s2815 else s2014
-  s2920 :: SWord8 = if s170 then s2832 else s2919
-  s2921 :: SWord8 = if s29 then s2837 else s2920
-  s2922 :: SWord8 = if s170 then s2853 else s2921
-  s2923 :: SWord8 = if s29 then s2858 else s2922
-  s2924 :: SWord8 = if s170 then s2874 else s2923
-  s2925 :: SWord8 = if s29 then s2879 else s2924
-  s2926 :: SWord8 = if s170 then s2895 else s2925
-  s2927 :: SWord8 = if s29 then s2900 else s2926
-  s2928 :: SWord8 = if s170 then s2918 else s2927
-  s2929 :: SWord8 = s2908 + s2928
-  s2930 :: SBool = s2929 < s2928
-  s2931 :: SBool = s2929 < s2908
-  s2932 :: SBool = s2930 | s2931
-  s2933 :: SWord8 = s2929 >>> 1
-  s2934 :: SWord8 = s24 | s2933
-  s2935 :: SWord8 = s26 & s2933
-  s2936 :: SWord8 = if s2932 then s2934 else s2935
-  s2937 :: SWord8 = if s2904 then s2912 else s2936
-  s2938 :: SWord8 = s2887 + s2926
-  s2939 :: SWord8 = s18 & s2938
-  s2940 :: SBool = s17 /= s2939
-  s2941 :: SWord8 = if s2940 then s2898 else s2899
-  s2942 :: SWord8 = if s22 then s2941 else s2895
-  s2943 :: SWord8 = s18 & s2942
-  s2944 :: SBool = s17 /= s2943
-  s2945 :: SBool = s_2 == s2944
-  s2946 :: SBool = s2938 < s2926
-  s2947 :: SBool = s2938 < s2887
-  s2948 :: SBool = s2946 | s2947
-  s2949 :: SWord8 = s2938 >>> 1
-  s2950 :: SWord8 = s24 | s2949
-  s2951 :: SWord8 = s26 & s2949
-  s2952 :: SWord8 = if s2948 then s2950 else s2951
-  s2953 :: SWord8 = s2952 >>> 1
-  s2954 :: SWord8 = s24 | s2953
-  s2955 :: SWord8 = s26 & s2953
-  s2956 :: SWord8 = if s2944 then s2954 else s2955
-  s2957 :: SWord8 = s2942 >>> 1
-  s2958 :: SWord8 = s24 | s2957
-  s2959 :: SWord8 = s26 & s2957
-  s2960 :: SWord8 = if s2914 then s2958 else s2959
-  s2961 :: SWord8 = if s29 then s2941 else s2926
-  s2962 :: SWord8 = if s170 then s2960 else s2961
-  s2963 :: SWord8 = s2952 + s2962
-  s2964 :: SBool = s2963 < s2962
-  s2965 :: SBool = s2963 < s2952
-  s2966 :: SBool = s2964 | s2965
-  s2967 :: SWord8 = s2963 >>> 1
-  s2968 :: SWord8 = s24 | s2967
-  s2969 :: SWord8 = s26 & s2967
-  s2970 :: SWord8 = if s2966 then s2968 else s2969
-  s2971 :: SWord8 = if s2945 then s2956 else s2970
-  s2972 :: SWord8 = if s2883 then s2937 else s2971
-  s2973 :: SWord8 = s2866 + s2924
-  s2974 :: SWord8 = s18 & s2973
-  s2975 :: SBool = s17 /= s2974
-  s2976 :: SWord8 = if s2975 then s2877 else s2878
-  s2977 :: SWord8 = if s22 then s2976 else s2874
-  s2978 :: SWord8 = s18 & s2977
-  s2979 :: SBool = s17 /= s2978
-  s2980 :: SBool = s_2 == s2979
-  s2981 :: SBool = s2973 < s2924
-  s2982 :: SBool = s2973 < s2866
-  s2983 :: SBool = s2981 | s2982
-  s2984 :: SWord8 = s2973 >>> 1
-  s2985 :: SWord8 = s24 | s2984
-  s2986 :: SWord8 = s26 & s2984
-  s2987 :: SWord8 = if s2983 then s2985 else s2986
-  s2988 :: SWord8 = s18 & s2987
-  s2989 :: SBool = s17 /= s2988
-  s2990 :: SWord8 = s2977 >>> 1
-  s2991 :: SWord8 = s24 | s2990
-  s2992 :: SWord8 = s26 & s2990
-  s2993 :: SWord8 = if s2891 then s2991 else s2992
-  s2994 :: SWord8 = if s22 then s2993 else s2976
-  s2995 :: SWord8 = s2994 >>> 1
-  s2996 :: SWord8 = s24 | s2995
-  s2997 :: SWord8 = s26 & s2995
-  s2998 :: SWord8 = if s2989 then s2996 else s2997
-  s2999 :: SWord8 = if s22 then s2998 else s2993
-  s3000 :: SWord8 = s18 & s2999
-  s3001 :: SBool = s17 /= s3000
-  s3002 :: SBool = s_2 == s3001
-  s3003 :: SWord8 = s2987 >>> 1
-  s3004 :: SWord8 = s24 | s3003
-  s3005 :: SWord8 = s26 & s3003
-  s3006 :: SWord8 = if s2979 then s3004 else s3005
-  s3007 :: SWord8 = s3006 >>> 1
-  s3008 :: SWord8 = s24 | s3007
-  s3009 :: SWord8 = s26 & s3007
-  s3010 :: SWord8 = if s3001 then s3008 else s3009
-  s3011 :: SWord8 = s18 & s2994
-  s3012 :: SBool = s17 /= s3011
-  s3013 :: SWord8 = s2999 >>> 1
-  s3014 :: SWord8 = s24 | s3013
-  s3015 :: SWord8 = s26 & s3013
-  s3016 :: SWord8 = if s3012 then s3014 else s3015
-  s3017 :: SWord8 = if s29 then s2976 else s2924
-  s3018 :: SWord8 = if s170 then s2993 else s3017
-  s3019 :: SWord8 = if s29 then s2998 else s3018
-  s3020 :: SWord8 = if s170 then s3016 else s3019
-  s3021 :: SWord8 = s3006 + s3020
-  s3022 :: SBool = s3021 < s3020
-  s3023 :: SBool = s3021 < s3006
-  s3024 :: SBool = s3022 | s3023
-  s3025 :: SWord8 = s3021 >>> 1
-  s3026 :: SWord8 = s24 | s3025
-  s3027 :: SWord8 = s26 & s3025
-  s3028 :: SWord8 = if s3024 then s3026 else s3027
-  s3029 :: SWord8 = if s3002 then s3010 else s3028
-  s3030 :: SWord8 = s2987 + s3018
-  s3031 :: SWord8 = s18 & s3030
-  s3032 :: SBool = s17 /= s3031
-  s3033 :: SWord8 = if s3032 then s2996 else s2997
-  s3034 :: SWord8 = if s22 then s3033 else s2993
-  s3035 :: SWord8 = s18 & s3034
-  s3036 :: SBool = s17 /= s3035
-  s3037 :: SBool = s_2 == s3036
-  s3038 :: SBool = s3030 < s3018
-  s3039 :: SBool = s3030 < s2987
-  s3040 :: SBool = s3038 | s3039
-  s3041 :: SWord8 = s3030 >>> 1
-  s3042 :: SWord8 = s24 | s3041
-  s3043 :: SWord8 = s26 & s3041
-  s3044 :: SWord8 = if s3040 then s3042 else s3043
-  s3045 :: SWord8 = s3044 >>> 1
-  s3046 :: SWord8 = s24 | s3045
-  s3047 :: SWord8 = s26 & s3045
-  s3048 :: SWord8 = if s3036 then s3046 else s3047
-  s3049 :: SWord8 = s3034 >>> 1
-  s3050 :: SWord8 = s24 | s3049
-  s3051 :: SWord8 = s26 & s3049
-  s3052 :: SWord8 = if s3012 then s3050 else s3051
-  s3053 :: SWord8 = if s29 then s3033 else s3018
-  s3054 :: SWord8 = if s170 then s3052 else s3053
-  s3055 :: SWord8 = s3044 + s3054
-  s3056 :: SBool = s3055 < s3054
-  s3057 :: SBool = s3055 < s3044
-  s3058 :: SBool = s3056 | s3057
-  s3059 :: SWord8 = s3055 >>> 1
-  s3060 :: SWord8 = s24 | s3059
-  s3061 :: SWord8 = s26 & s3059
-  s3062 :: SWord8 = if s3058 then s3060 else s3061
-  s3063 :: SWord8 = if s3037 then s3048 else s3062
-  s3064 :: SWord8 = if s2980 then s3029 else s3063
-  s3065 :: SWord8 = if s2862 then s2972 else s3064
-  s3066 :: SWord8 = s2845 + s2922
-  s3067 :: SWord8 = s18 & s3066
-  s3068 :: SBool = s17 /= s3067
-  s3069 :: SWord8 = if s3068 then s2856 else s2857
-  s3070 :: SWord8 = if s22 then s3069 else s2853
-  s3071 :: SWord8 = s18 & s3070
-  s3072 :: SBool = s17 /= s3071
-  s3073 :: SBool = s_2 == s3072
-  s3074 :: SBool = s3066 < s2922
-  s3075 :: SBool = s3066 < s2845
-  s3076 :: SBool = s3074 | s3075
-  s3077 :: SWord8 = s3066 >>> 1
-  s3078 :: SWord8 = s24 | s3077
-  s3079 :: SWord8 = s26 & s3077
-  s3080 :: SWord8 = if s3076 then s3078 else s3079
-  s3081 :: SWord8 = s18 & s3080
-  s3082 :: SBool = s17 /= s3081
-  s3083 :: SWord8 = s3070 >>> 1
-  s3084 :: SWord8 = s24 | s3083
-  s3085 :: SWord8 = s26 & s3083
-  s3086 :: SWord8 = if s2870 then s3084 else s3085
-  s3087 :: SWord8 = if s22 then s3086 else s3069
-  s3088 :: SWord8 = s3087 >>> 1
-  s3089 :: SWord8 = s24 | s3088
-  s3090 :: SWord8 = s26 & s3088
-  s3091 :: SWord8 = if s3082 then s3089 else s3090
-  s3092 :: SWord8 = if s22 then s3091 else s3086
-  s3093 :: SWord8 = s18 & s3092
-  s3094 :: SBool = s17 /= s3093
-  s3095 :: SBool = s_2 == s3094
-  s3096 :: SWord8 = s3080 >>> 1
-  s3097 :: SWord8 = s24 | s3096
-  s3098 :: SWord8 = s26 & s3096
-  s3099 :: SWord8 = if s3072 then s3097 else s3098
-  s3100 :: SWord8 = s18 & s3099
-  s3101 :: SBool = s17 /= s3100
-  s3102 :: SWord8 = s18 & s3087
-  s3103 :: SBool = s17 /= s3102
-  s3104 :: SWord8 = s3092 >>> 1
-  s3105 :: SWord8 = s24 | s3104
-  s3106 :: SWord8 = s26 & s3104
-  s3107 :: SWord8 = if s3103 then s3105 else s3106
-  s3108 :: SWord8 = if s22 then s3107 else s3091
-  s3109 :: SWord8 = s3108 >>> 1
-  s3110 :: SWord8 = s24 | s3109
-  s3111 :: SWord8 = s26 & s3109
-  s3112 :: SWord8 = if s3101 then s3110 else s3111
-  s3113 :: SWord8 = if s22 then s3112 else s3107
-  s3114 :: SWord8 = s18 & s3113
-  s3115 :: SBool = s17 /= s3114
-  s3116 :: SBool = s_2 == s3115
-  s3117 :: SWord8 = s3099 >>> 1
-  s3118 :: SWord8 = s24 | s3117
-  s3119 :: SWord8 = s26 & s3117
-  s3120 :: SWord8 = if s3094 then s3118 else s3119
-  s3121 :: SWord8 = s3120 >>> 1
-  s3122 :: SWord8 = s24 | s3121
-  s3123 :: SWord8 = s26 & s3121
-  s3124 :: SWord8 = if s3115 then s3122 else s3123
-  s3125 :: SWord8 = s18 & s3108
-  s3126 :: SBool = s17 /= s3125
-  s3127 :: SWord8 = s3113 >>> 1
-  s3128 :: SWord8 = s24 | s3127
-  s3129 :: SWord8 = s26 & s3127
-  s3130 :: SWord8 = if s3126 then s3128 else s3129
-  s3131 :: SWord8 = if s29 then s3069 else s2922
-  s3132 :: SWord8 = if s170 then s3086 else s3131
-  s3133 :: SWord8 = if s29 then s3091 else s3132
-  s3134 :: SWord8 = if s170 then s3107 else s3133
-  s3135 :: SWord8 = if s29 then s3112 else s3134
-  s3136 :: SWord8 = if s170 then s3130 else s3135
-  s3137 :: SWord8 = s3120 + s3136
-  s3138 :: SBool = s3137 < s3136
-  s3139 :: SBool = s3137 < s3120
-  s3140 :: SBool = s3138 | s3139
-  s3141 :: SWord8 = s3137 >>> 1
-  s3142 :: SWord8 = s24 | s3141
-  s3143 :: SWord8 = s26 & s3141
-  s3144 :: SWord8 = if s3140 then s3142 else s3143
-  s3145 :: SWord8 = if s3116 then s3124 else s3144
-  s3146 :: SWord8 = s3099 + s3134
-  s3147 :: SWord8 = s18 & s3146
-  s3148 :: SBool = s17 /= s3147
-  s3149 :: SWord8 = if s3148 then s3110 else s3111
-  s3150 :: SWord8 = if s22 then s3149 else s3107
-  s3151 :: SWord8 = s18 & s3150
-  s3152 :: SBool = s17 /= s3151
-  s3153 :: SBool = s_2 == s3152
-  s3154 :: SBool = s3146 < s3134
-  s3155 :: SBool = s3146 < s3099
-  s3156 :: SBool = s3154 | s3155
-  s3157 :: SWord8 = s3146 >>> 1
-  s3158 :: SWord8 = s24 | s3157
-  s3159 :: SWord8 = s26 & s3157
-  s3160 :: SWord8 = if s3156 then s3158 else s3159
-  s3161 :: SWord8 = s3160 >>> 1
-  s3162 :: SWord8 = s24 | s3161
-  s3163 :: SWord8 = s26 & s3161
-  s3164 :: SWord8 = if s3152 then s3162 else s3163
-  s3165 :: SWord8 = s3150 >>> 1
-  s3166 :: SWord8 = s24 | s3165
-  s3167 :: SWord8 = s26 & s3165
-  s3168 :: SWord8 = if s3126 then s3166 else s3167
-  s3169 :: SWord8 = if s29 then s3149 else s3134
-  s3170 :: SWord8 = if s170 then s3168 else s3169
-  s3171 :: SWord8 = s3160 + s3170
-  s3172 :: SBool = s3171 < s3170
-  s3173 :: SBool = s3171 < s3160
-  s3174 :: SBool = s3172 | s3173
-  s3175 :: SWord8 = s3171 >>> 1
-  s3176 :: SWord8 = s24 | s3175
-  s3177 :: SWord8 = s26 & s3175
-  s3178 :: SWord8 = if s3174 then s3176 else s3177
-  s3179 :: SWord8 = if s3153 then s3164 else s3178
-  s3180 :: SWord8 = if s3095 then s3145 else s3179
-  s3181 :: SWord8 = s3080 + s3132
-  s3182 :: SWord8 = s18 & s3181
-  s3183 :: SBool = s17 /= s3182
-  s3184 :: SWord8 = if s3183 then s3089 else s3090
-  s3185 :: SWord8 = if s22 then s3184 else s3086
-  s3186 :: SWord8 = s18 & s3185
-  s3187 :: SBool = s17 /= s3186
-  s3188 :: SBool = s_2 == s3187
-  s3189 :: SBool = s3181 < s3132
-  s3190 :: SBool = s3181 < s3080
-  s3191 :: SBool = s3189 | s3190
-  s3192 :: SWord8 = s3181 >>> 1
-  s3193 :: SWord8 = s24 | s3192
-  s3194 :: SWord8 = s26 & s3192
-  s3195 :: SWord8 = if s3191 then s3193 else s3194
-  s3196 :: SWord8 = s18 & s3195
-  s3197 :: SBool = s17 /= s3196
-  s3198 :: SWord8 = s3185 >>> 1
-  s3199 :: SWord8 = s24 | s3198
-  s3200 :: SWord8 = s26 & s3198
-  s3201 :: SWord8 = if s3103 then s3199 else s3200
-  s3202 :: SWord8 = if s22 then s3201 else s3184
-  s3203 :: SWord8 = s3202 >>> 1
-  s3204 :: SWord8 = s24 | s3203
-  s3205 :: SWord8 = s26 & s3203
-  s3206 :: SWord8 = if s3197 then s3204 else s3205
-  s3207 :: SWord8 = if s22 then s3206 else s3201
-  s3208 :: SWord8 = s18 & s3207
-  s3209 :: SBool = s17 /= s3208
-  s3210 :: SBool = s_2 == s3209
-  s3211 :: SWord8 = s3195 >>> 1
-  s3212 :: SWord8 = s24 | s3211
-  s3213 :: SWord8 = s26 & s3211
-  s3214 :: SWord8 = if s3187 then s3212 else s3213
-  s3215 :: SWord8 = s3214 >>> 1
-  s3216 :: SWord8 = s24 | s3215
-  s3217 :: SWord8 = s26 & s3215
-  s3218 :: SWord8 = if s3209 then s3216 else s3217
-  s3219 :: SWord8 = s18 & s3202
-  s3220 :: SBool = s17 /= s3219
-  s3221 :: SWord8 = s3207 >>> 1
-  s3222 :: SWord8 = s24 | s3221
-  s3223 :: SWord8 = s26 & s3221
-  s3224 :: SWord8 = if s3220 then s3222 else s3223
-  s3225 :: SWord8 = if s29 then s3184 else s3132
-  s3226 :: SWord8 = if s170 then s3201 else s3225
-  s3227 :: SWord8 = if s29 then s3206 else s3226
-  s3228 :: SWord8 = if s170 then s3224 else s3227
-  s3229 :: SWord8 = s3214 + s3228
-  s3230 :: SBool = s3229 < s3228
-  s3231 :: SBool = s3229 < s3214
-  s3232 :: SBool = s3230 | s3231
-  s3233 :: SWord8 = s3229 >>> 1
-  s3234 :: SWord8 = s24 | s3233
-  s3235 :: SWord8 = s26 & s3233
-  s3236 :: SWord8 = if s3232 then s3234 else s3235
-  s3237 :: SWord8 = if s3210 then s3218 else s3236
-  s3238 :: SWord8 = s3195 + s3226
-  s3239 :: SWord8 = s18 & s3238
-  s3240 :: SBool = s17 /= s3239
-  s3241 :: SWord8 = if s3240 then s3204 else s3205
-  s3242 :: SWord8 = if s22 then s3241 else s3201
-  s3243 :: SWord8 = s18 & s3242
-  s3244 :: SBool = s17 /= s3243
-  s3245 :: SBool = s_2 == s3244
-  s3246 :: SBool = s3238 < s3226
-  s3247 :: SBool = s3238 < s3195
-  s3248 :: SBool = s3246 | s3247
-  s3249 :: SWord8 = s3238 >>> 1
-  s3250 :: SWord8 = s24 | s3249
-  s3251 :: SWord8 = s26 & s3249
-  s3252 :: SWord8 = if s3248 then s3250 else s3251
-  s3253 :: SWord8 = s3252 >>> 1
-  s3254 :: SWord8 = s24 | s3253
-  s3255 :: SWord8 = s26 & s3253
-  s3256 :: SWord8 = if s3244 then s3254 else s3255
-  s3257 :: SWord8 = s3242 >>> 1
-  s3258 :: SWord8 = s24 | s3257
-  s3259 :: SWord8 = s26 & s3257
-  s3260 :: SWord8 = if s3220 then s3258 else s3259
-  s3261 :: SWord8 = if s29 then s3241 else s3226
-  s3262 :: SWord8 = if s170 then s3260 else s3261
-  s3263 :: SWord8 = s3252 + s3262
-  s3264 :: SBool = s3263 < s3262
-  s3265 :: SBool = s3263 < s3252
-  s3266 :: SBool = s3264 | s3265
-  s3267 :: SWord8 = s3263 >>> 1
-  s3268 :: SWord8 = s24 | s3267
-  s3269 :: SWord8 = s26 & s3267
-  s3270 :: SWord8 = if s3266 then s3268 else s3269
-  s3271 :: SWord8 = if s3245 then s3256 else s3270
-  s3272 :: SWord8 = if s3188 then s3237 else s3271
-  s3273 :: SWord8 = if s3073 then s3180 else s3272
-  s3274 :: SWord8 = if s2841 then s3065 else s3273
-  s3275 :: SWord8 = s2826 + s2920
-  s3276 :: SWord8 = s18 & s3275
-  s3277 :: SBool = s17 /= s3276
-  s3278 :: SWord8 = if s3277 then s2835 else s2836
-  s3279 :: SWord8 = if s22 then s3278 else s2832
-  s3280 :: SWord8 = s18 & s3279
-  s3281 :: SBool = s17 /= s3280
-  s3282 :: SBool = s_2 == s3281
-  s3283 :: SBool = s3275 < s2920
-  s3284 :: SBool = s3275 < s2826
-  s3285 :: SBool = s3283 | s3284
-  s3286 :: SWord8 = s3275 >>> 1
-  s3287 :: SWord8 = s24 | s3286
-  s3288 :: SWord8 = s26 & s3286
-  s3289 :: SWord8 = if s3285 then s3287 else s3288
-  s3290 :: SWord8 = s18 & s3289
-  s3291 :: SBool = s17 /= s3290
-  s3292 :: SWord8 = s3279 >>> 1
-  s3293 :: SWord8 = s24 | s3292
-  s3294 :: SWord8 = s26 & s3292
-  s3295 :: SWord8 = if s2849 then s3293 else s3294
-  s3296 :: SWord8 = if s22 then s3295 else s3278
-  s3297 :: SWord8 = s3296 >>> 1
-  s3298 :: SWord8 = s24 | s3297
-  s3299 :: SWord8 = s26 & s3297
-  s3300 :: SWord8 = if s3291 then s3298 else s3299
-  s3301 :: SWord8 = if s22 then s3300 else s3295
-  s3302 :: SWord8 = s18 & s3301
-  s3303 :: SBool = s17 /= s3302
-  s3304 :: SBool = s_2 == s3303
-  s3305 :: SWord8 = s3289 >>> 1
-  s3306 :: SWord8 = s24 | s3305
-  s3307 :: SWord8 = s26 & s3305
-  s3308 :: SWord8 = if s3281 then s3306 else s3307
-  s3309 :: SWord8 = s18 & s3308
-  s3310 :: SBool = s17 /= s3309
-  s3311 :: SWord8 = s18 & s3296
-  s3312 :: SBool = s17 /= s3311
-  s3313 :: SWord8 = s3301 >>> 1
-  s3314 :: SWord8 = s24 | s3313
-  s3315 :: SWord8 = s26 & s3313
-  s3316 :: SWord8 = if s3312 then s3314 else s3315
-  s3317 :: SWord8 = if s22 then s3316 else s3300
-  s3318 :: SWord8 = s3317 >>> 1
-  s3319 :: SWord8 = s24 | s3318
-  s3320 :: SWord8 = s26 & s3318
-  s3321 :: SWord8 = if s3310 then s3319 else s3320
-  s3322 :: SWord8 = if s22 then s3321 else s3316
-  s3323 :: SWord8 = s18 & s3322
-  s3324 :: SBool = s17 /= s3323
-  s3325 :: SBool = s_2 == s3324
-  s3326 :: SWord8 = s3308 >>> 1
-  s3327 :: SWord8 = s24 | s3326
-  s3328 :: SWord8 = s26 & s3326
-  s3329 :: SWord8 = if s3303 then s3327 else s3328
-  s3330 :: SWord8 = s18 & s3329
-  s3331 :: SBool = s17 /= s3330
-  s3332 :: SWord8 = s18 & s3317
-  s3333 :: SBool = s17 /= s3332
-  s3334 :: SWord8 = s3322 >>> 1
-  s3335 :: SWord8 = s24 | s3334
-  s3336 :: SWord8 = s26 & s3334
-  s3337 :: SWord8 = if s3333 then s3335 else s3336
-  s3338 :: SWord8 = if s22 then s3337 else s3321
-  s3339 :: SWord8 = s3338 >>> 1
-  s3340 :: SWord8 = s24 | s3339
-  s3341 :: SWord8 = s26 & s3339
-  s3342 :: SWord8 = if s3331 then s3340 else s3341
-  s3343 :: SWord8 = if s22 then s3342 else s3337
-  s3344 :: SWord8 = s18 & s3343
-  s3345 :: SBool = s17 /= s3344
-  s3346 :: SBool = s_2 == s3345
-  s3347 :: SWord8 = s3329 >>> 1
-  s3348 :: SWord8 = s24 | s3347
-  s3349 :: SWord8 = s26 & s3347
-  s3350 :: SWord8 = if s3324 then s3348 else s3349
-  s3351 :: SWord8 = s3350 >>> 1
-  s3352 :: SWord8 = s24 | s3351
-  s3353 :: SWord8 = s26 & s3351
-  s3354 :: SWord8 = if s3345 then s3352 else s3353
-  s3355 :: SWord8 = s18 & s3338
-  s3356 :: SBool = s17 /= s3355
-  s3357 :: SWord8 = s3343 >>> 1
-  s3358 :: SWord8 = s24 | s3357
-  s3359 :: SWord8 = s26 & s3357
-  s3360 :: SWord8 = if s3356 then s3358 else s3359
-  s3361 :: SWord8 = if s29 then s3278 else s2920
-  s3362 :: SWord8 = if s170 then s3295 else s3361
-  s3363 :: SWord8 = if s29 then s3300 else s3362
-  s3364 :: SWord8 = if s170 then s3316 else s3363
-  s3365 :: SWord8 = if s29 then s3321 else s3364
-  s3366 :: SWord8 = if s170 then s3337 else s3365
-  s3367 :: SWord8 = if s29 then s3342 else s3366
-  s3368 :: SWord8 = if s170 then s3360 else s3367
-  s3369 :: SWord8 = s3350 + s3368
-  s3370 :: SBool = s3369 < s3368
-  s3371 :: SBool = s3369 < s3350
-  s3372 :: SBool = s3370 | s3371
-  s3373 :: SWord8 = s3369 >>> 1
-  s3374 :: SWord8 = s24 | s3373
-  s3375 :: SWord8 = s26 & s3373
-  s3376 :: SWord8 = if s3372 then s3374 else s3375
-  s3377 :: SWord8 = if s3346 then s3354 else s3376
-  s3378 :: SWord8 = s3329 + s3366
-  s3379 :: SWord8 = s18 & s3378
-  s3380 :: SBool = s17 /= s3379
-  s3381 :: SWord8 = if s3380 then s3340 else s3341
-  s3382 :: SWord8 = if s22 then s3381 else s3337
-  s3383 :: SWord8 = s18 & s3382
-  s3384 :: SBool = s17 /= s3383
-  s3385 :: SBool = s_2 == s3384
-  s3386 :: SBool = s3378 < s3366
-  s3387 :: SBool = s3378 < s3329
-  s3388 :: SBool = s3386 | s3387
-  s3389 :: SWord8 = s3378 >>> 1
-  s3390 :: SWord8 = s24 | s3389
-  s3391 :: SWord8 = s26 & s3389
-  s3392 :: SWord8 = if s3388 then s3390 else s3391
-  s3393 :: SWord8 = s3392 >>> 1
-  s3394 :: SWord8 = s24 | s3393
-  s3395 :: SWord8 = s26 & s3393
-  s3396 :: SWord8 = if s3384 then s3394 else s3395
-  s3397 :: SWord8 = s3382 >>> 1
-  s3398 :: SWord8 = s24 | s3397
-  s3399 :: SWord8 = s26 & s3397
-  s3400 :: SWord8 = if s3356 then s3398 else s3399
-  s3401 :: SWord8 = if s29 then s3381 else s3366
-  s3402 :: SWord8 = if s170 then s3400 else s3401
-  s3403 :: SWord8 = s3392 + s3402
-  s3404 :: SBool = s3403 < s3402
-  s3405 :: SBool = s3403 < s3392
-  s3406 :: SBool = s3404 | s3405
-  s3407 :: SWord8 = s3403 >>> 1
-  s3408 :: SWord8 = s24 | s3407
-  s3409 :: SWord8 = s26 & s3407
-  s3410 :: SWord8 = if s3406 then s3408 else s3409
-  s3411 :: SWord8 = if s3385 then s3396 else s3410
-  s3412 :: SWord8 = if s3325 then s3377 else s3411
-  s3413 :: SWord8 = s3308 + s3364
-  s3414 :: SWord8 = s18 & s3413
-  s3415 :: SBool = s17 /= s3414
-  s3416 :: SWord8 = if s3415 then s3319 else s3320
-  s3417 :: SWord8 = if s22 then s3416 else s3316
-  s3418 :: SWord8 = s18 & s3417
-  s3419 :: SBool = s17 /= s3418
-  s3420 :: SBool = s_2 == s3419
-  s3421 :: SBool = s3413 < s3364
-  s3422 :: SBool = s3413 < s3308
-  s3423 :: SBool = s3421 | s3422
-  s3424 :: SWord8 = s3413 >>> 1
-  s3425 :: SWord8 = s24 | s3424
-  s3426 :: SWord8 = s26 & s3424
-  s3427 :: SWord8 = if s3423 then s3425 else s3426
-  s3428 :: SWord8 = s18 & s3427
-  s3429 :: SBool = s17 /= s3428
-  s3430 :: SWord8 = s3417 >>> 1
-  s3431 :: SWord8 = s24 | s3430
-  s3432 :: SWord8 = s26 & s3430
-  s3433 :: SWord8 = if s3333 then s3431 else s3432
-  s3434 :: SWord8 = if s22 then s3433 else s3416
-  s3435 :: SWord8 = s3434 >>> 1
-  s3436 :: SWord8 = s24 | s3435
-  s3437 :: SWord8 = s26 & s3435
-  s3438 :: SWord8 = if s3429 then s3436 else s3437
-  s3439 :: SWord8 = if s22 then s3438 else s3433
-  s3440 :: SWord8 = s18 & s3439
-  s3441 :: SBool = s17 /= s3440
-  s3442 :: SBool = s_2 == s3441
-  s3443 :: SWord8 = s3427 >>> 1
-  s3444 :: SWord8 = s24 | s3443
-  s3445 :: SWord8 = s26 & s3443
-  s3446 :: SWord8 = if s3419 then s3444 else s3445
-  s3447 :: SWord8 = s3446 >>> 1
-  s3448 :: SWord8 = s24 | s3447
-  s3449 :: SWord8 = s26 & s3447
-  s3450 :: SWord8 = if s3441 then s3448 else s3449
-  s3451 :: SWord8 = s18 & s3434
-  s3452 :: SBool = s17 /= s3451
-  s3453 :: SWord8 = s3439 >>> 1
-  s3454 :: SWord8 = s24 | s3453
-  s3455 :: SWord8 = s26 & s3453
-  s3456 :: SWord8 = if s3452 then s3454 else s3455
-  s3457 :: SWord8 = if s29 then s3416 else s3364
-  s3458 :: SWord8 = if s170 then s3433 else s3457
-  s3459 :: SWord8 = if s29 then s3438 else s3458
-  s3460 :: SWord8 = if s170 then s3456 else s3459
-  s3461 :: SWord8 = s3446 + s3460
-  s3462 :: SBool = s3461 < s3460
-  s3463 :: SBool = s3461 < s3446
-  s3464 :: SBool = s3462 | s3463
-  s3465 :: SWord8 = s3461 >>> 1
-  s3466 :: SWord8 = s24 | s3465
-  s3467 :: SWord8 = s26 & s3465
-  s3468 :: SWord8 = if s3464 then s3466 else s3467
-  s3469 :: SWord8 = if s3442 then s3450 else s3468
-  s3470 :: SWord8 = s3427 + s3458
-  s3471 :: SWord8 = s18 & s3470
-  s3472 :: SBool = s17 /= s3471
-  s3473 :: SWord8 = if s3472 then s3436 else s3437
-  s3474 :: SWord8 = if s22 then s3473 else s3433
-  s3475 :: SWord8 = s18 & s3474
-  s3476 :: SBool = s17 /= s3475
-  s3477 :: SBool = s_2 == s3476
-  s3478 :: SBool = s3470 < s3458
-  s3479 :: SBool = s3470 < s3427
-  s3480 :: SBool = s3478 | s3479
-  s3481 :: SWord8 = s3470 >>> 1
-  s3482 :: SWord8 = s24 | s3481
-  s3483 :: SWord8 = s26 & s3481
-  s3484 :: SWord8 = if s3480 then s3482 else s3483
-  s3485 :: SWord8 = s3484 >>> 1
-  s3486 :: SWord8 = s24 | s3485
-  s3487 :: SWord8 = s26 & s3485
-  s3488 :: SWord8 = if s3476 then s3486 else s3487
-  s3489 :: SWord8 = s3474 >>> 1
-  s3490 :: SWord8 = s24 | s3489
-  s3491 :: SWord8 = s26 & s3489
-  s3492 :: SWord8 = if s3452 then s3490 else s3491
-  s3493 :: SWord8 = if s29 then s3473 else s3458
-  s3494 :: SWord8 = if s170 then s3492 else s3493
-  s3495 :: SWord8 = s3484 + s3494
-  s3496 :: SBool = s3495 < s3494
-  s3497 :: SBool = s3495 < s3484
-  s3498 :: SBool = s3496 | s3497
-  s3499 :: SWord8 = s3495 >>> 1
-  s3500 :: SWord8 = s24 | s3499
-  s3501 :: SWord8 = s26 & s3499
-  s3502 :: SWord8 = if s3498 then s3500 else s3501
-  s3503 :: SWord8 = if s3477 then s3488 else s3502
-  s3504 :: SWord8 = if s3420 then s3469 else s3503
-  s3505 :: SWord8 = if s3304 then s3412 else s3504
-  s3506 :: SWord8 = s3289 + s3362
-  s3507 :: SWord8 = s18 & s3506
-  s3508 :: SBool = s17 /= s3507
-  s3509 :: SWord8 = if s3508 then s3298 else s3299
-  s3510 :: SWord8 = if s22 then s3509 else s3295
-  s3511 :: SWord8 = s18 & s3510
-  s3512 :: SBool = s17 /= s3511
-  s3513 :: SBool = s_2 == s3512
-  s3514 :: SBool = s3506 < s3362
-  s3515 :: SBool = s3506 < s3289
-  s3516 :: SBool = s3514 | s3515
-  s3517 :: SWord8 = s3506 >>> 1
-  s3518 :: SWord8 = s24 | s3517
-  s3519 :: SWord8 = s26 & s3517
-  s3520 :: SWord8 = if s3516 then s3518 else s3519
-  s3521 :: SWord8 = s18 & s3520
-  s3522 :: SBool = s17 /= s3521
-  s3523 :: SWord8 = s3510 >>> 1
-  s3524 :: SWord8 = s24 | s3523
-  s3525 :: SWord8 = s26 & s3523
-  s3526 :: SWord8 = if s3312 then s3524 else s3525
-  s3527 :: SWord8 = if s22 then s3526 else s3509
-  s3528 :: SWord8 = s3527 >>> 1
-  s3529 :: SWord8 = s24 | s3528
-  s3530 :: SWord8 = s26 & s3528
-  s3531 :: SWord8 = if s3522 then s3529 else s3530
-  s3532 :: SWord8 = if s22 then s3531 else s3526
-  s3533 :: SWord8 = s18 & s3532
-  s3534 :: SBool = s17 /= s3533
-  s3535 :: SBool = s_2 == s3534
-  s3536 :: SWord8 = s3520 >>> 1
-  s3537 :: SWord8 = s24 | s3536
-  s3538 :: SWord8 = s26 & s3536
-  s3539 :: SWord8 = if s3512 then s3537 else s3538
-  s3540 :: SWord8 = s18 & s3539
-  s3541 :: SBool = s17 /= s3540
-  s3542 :: SWord8 = s18 & s3527
-  s3543 :: SBool = s17 /= s3542
-  s3544 :: SWord8 = s3532 >>> 1
-  s3545 :: SWord8 = s24 | s3544
-  s3546 :: SWord8 = s26 & s3544
-  s3547 :: SWord8 = if s3543 then s3545 else s3546
-  s3548 :: SWord8 = if s22 then s3547 else s3531
-  s3549 :: SWord8 = s3548 >>> 1
-  s3550 :: SWord8 = s24 | s3549
-  s3551 :: SWord8 = s26 & s3549
-  s3552 :: SWord8 = if s3541 then s3550 else s3551
-  s3553 :: SWord8 = if s22 then s3552 else s3547
-  s3554 :: SWord8 = s18 & s3553
-  s3555 :: SBool = s17 /= s3554
-  s3556 :: SBool = s_2 == s3555
-  s3557 :: SWord8 = s3539 >>> 1
-  s3558 :: SWord8 = s24 | s3557
-  s3559 :: SWord8 = s26 & s3557
-  s3560 :: SWord8 = if s3534 then s3558 else s3559
-  s3561 :: SWord8 = s3560 >>> 1
-  s3562 :: SWord8 = s24 | s3561
-  s3563 :: SWord8 = s26 & s3561
-  s3564 :: SWord8 = if s3555 then s3562 else s3563
-  s3565 :: SWord8 = s18 & s3548
-  s3566 :: SBool = s17 /= s3565
-  s3567 :: SWord8 = s3553 >>> 1
-  s3568 :: SWord8 = s24 | s3567
-  s3569 :: SWord8 = s26 & s3567
-  s3570 :: SWord8 = if s3566 then s3568 else s3569
-  s3571 :: SWord8 = if s29 then s3509 else s3362
-  s3572 :: SWord8 = if s170 then s3526 else s3571
-  s3573 :: SWord8 = if s29 then s3531 else s3572
-  s3574 :: SWord8 = if s170 then s3547 else s3573
-  s3575 :: SWord8 = if s29 then s3552 else s3574
-  s3576 :: SWord8 = if s170 then s3570 else s3575
-  s3577 :: SWord8 = s3560 + s3576
-  s3578 :: SBool = s3577 < s3576
-  s3579 :: SBool = s3577 < s3560
-  s3580 :: SBool = s3578 | s3579
-  s3581 :: SWord8 = s3577 >>> 1
-  s3582 :: SWord8 = s24 | s3581
-  s3583 :: SWord8 = s26 & s3581
-  s3584 :: SWord8 = if s3580 then s3582 else s3583
-  s3585 :: SWord8 = if s3556 then s3564 else s3584
-  s3586 :: SWord8 = s3539 + s3574
-  s3587 :: SWord8 = s18 & s3586
-  s3588 :: SBool = s17 /= s3587
-  s3589 :: SWord8 = if s3588 then s3550 else s3551
-  s3590 :: SWord8 = if s22 then s3589 else s3547
-  s3591 :: SWord8 = s18 & s3590
-  s3592 :: SBool = s17 /= s3591
-  s3593 :: SBool = s_2 == s3592
-  s3594 :: SBool = s3586 < s3574
-  s3595 :: SBool = s3586 < s3539
-  s3596 :: SBool = s3594 | s3595
-  s3597 :: SWord8 = s3586 >>> 1
-  s3598 :: SWord8 = s24 | s3597
-  s3599 :: SWord8 = s26 & s3597
-  s3600 :: SWord8 = if s3596 then s3598 else s3599
-  s3601 :: SWord8 = s3600 >>> 1
-  s3602 :: SWord8 = s24 | s3601
-  s3603 :: SWord8 = s26 & s3601
-  s3604 :: SWord8 = if s3592 then s3602 else s3603
-  s3605 :: SWord8 = s3590 >>> 1
-  s3606 :: SWord8 = s24 | s3605
-  s3607 :: SWord8 = s26 & s3605
-  s3608 :: SWord8 = if s3566 then s3606 else s3607
-  s3609 :: SWord8 = if s29 then s3589 else s3574
-  s3610 :: SWord8 = if s170 then s3608 else s3609
-  s3611 :: SWord8 = s3600 + s3610
-  s3612 :: SBool = s3611 < s3610
-  s3613 :: SBool = s3611 < s3600
-  s3614 :: SBool = s3612 | s3613
-  s3615 :: SWord8 = s3611 >>> 1
-  s3616 :: SWord8 = s24 | s3615
-  s3617 :: SWord8 = s26 & s3615
-  s3618 :: SWord8 = if s3614 then s3616 else s3617
-  s3619 :: SWord8 = if s3593 then s3604 else s3618
-  s3620 :: SWord8 = if s3535 then s3585 else s3619
-  s3621 :: SWord8 = s3520 + s3572
-  s3622 :: SWord8 = s18 & s3621
-  s3623 :: SBool = s17 /= s3622
-  s3624 :: SWord8 = if s3623 then s3529 else s3530
-  s3625 :: SWord8 = if s22 then s3624 else s3526
-  s3626 :: SWord8 = s18 & s3625
-  s3627 :: SBool = s17 /= s3626
-  s3628 :: SBool = s_2 == s3627
-  s3629 :: SBool = s3621 < s3572
-  s3630 :: SBool = s3621 < s3520
-  s3631 :: SBool = s3629 | s3630
-  s3632 :: SWord8 = s3621 >>> 1
-  s3633 :: SWord8 = s24 | s3632
-  s3634 :: SWord8 = s26 & s3632
-  s3635 :: SWord8 = if s3631 then s3633 else s3634
-  s3636 :: SWord8 = s18 & s3635
-  s3637 :: SBool = s17 /= s3636
-  s3638 :: SWord8 = s3625 >>> 1
-  s3639 :: SWord8 = s24 | s3638
-  s3640 :: SWord8 = s26 & s3638
-  s3641 :: SWord8 = if s3543 then s3639 else s3640
-  s3642 :: SWord8 = if s22 then s3641 else s3624
-  s3643 :: SWord8 = s3642 >>> 1
-  s3644 :: SWord8 = s24 | s3643
-  s3645 :: SWord8 = s26 & s3643
-  s3646 :: SWord8 = if s3637 then s3644 else s3645
-  s3647 :: SWord8 = if s22 then s3646 else s3641
-  s3648 :: SWord8 = s18 & s3647
-  s3649 :: SBool = s17 /= s3648
-  s3650 :: SBool = s_2 == s3649
-  s3651 :: SWord8 = s3635 >>> 1
-  s3652 :: SWord8 = s24 | s3651
-  s3653 :: SWord8 = s26 & s3651
-  s3654 :: SWord8 = if s3627 then s3652 else s3653
-  s3655 :: SWord8 = s3654 >>> 1
-  s3656 :: SWord8 = s24 | s3655
-  s3657 :: SWord8 = s26 & s3655
-  s3658 :: SWord8 = if s3649 then s3656 else s3657
-  s3659 :: SWord8 = s18 & s3642
-  s3660 :: SBool = s17 /= s3659
-  s3661 :: SWord8 = s3647 >>> 1
-  s3662 :: SWord8 = s24 | s3661
-  s3663 :: SWord8 = s26 & s3661
-  s3664 :: SWord8 = if s3660 then s3662 else s3663
-  s3665 :: SWord8 = if s29 then s3624 else s3572
-  s3666 :: SWord8 = if s170 then s3641 else s3665
-  s3667 :: SWord8 = if s29 then s3646 else s3666
-  s3668 :: SWord8 = if s170 then s3664 else s3667
-  s3669 :: SWord8 = s3654 + s3668
-  s3670 :: SBool = s3669 < s3668
-  s3671 :: SBool = s3669 < s3654
-  s3672 :: SBool = s3670 | s3671
-  s3673 :: SWord8 = s3669 >>> 1
-  s3674 :: SWord8 = s24 | s3673
-  s3675 :: SWord8 = s26 & s3673
-  s3676 :: SWord8 = if s3672 then s3674 else s3675
-  s3677 :: SWord8 = if s3650 then s3658 else s3676
-  s3678 :: SWord8 = s3635 + s3666
-  s3679 :: SWord8 = s18 & s3678
-  s3680 :: SBool = s17 /= s3679
-  s3681 :: SWord8 = if s3680 then s3644 else s3645
-  s3682 :: SWord8 = if s22 then s3681 else s3641
-  s3683 :: SWord8 = s18 & s3682
-  s3684 :: SBool = s17 /= s3683
-  s3685 :: SBool = s_2 == s3684
-  s3686 :: SBool = s3678 < s3666
-  s3687 :: SBool = s3678 < s3635
-  s3688 :: SBool = s3686 | s3687
-  s3689 :: SWord8 = s3678 >>> 1
-  s3690 :: SWord8 = s24 | s3689
-  s3691 :: SWord8 = s26 & s3689
-  s3692 :: SWord8 = if s3688 then s3690 else s3691
-  s3693 :: SWord8 = s3692 >>> 1
-  s3694 :: SWord8 = s24 | s3693
-  s3695 :: SWord8 = s26 & s3693
-  s3696 :: SWord8 = if s3684 then s3694 else s3695
-  s3697 :: SWord8 = s3682 >>> 1
-  s3698 :: SWord8 = s24 | s3697
-  s3699 :: SWord8 = s26 & s3697
-  s3700 :: SWord8 = if s3660 then s3698 else s3699
-  s3701 :: SWord8 = if s29 then s3681 else s3666
-  s3702 :: SWord8 = if s170 then s3700 else s3701
-  s3703 :: SWord8 = s3692 + s3702
-  s3704 :: SBool = s3703 < s3702
-  s3705 :: SBool = s3703 < s3692
-  s3706 :: SBool = s3704 | s3705
-  s3707 :: SWord8 = s3703 >>> 1
-  s3708 :: SWord8 = s24 | s3707
-  s3709 :: SWord8 = s26 & s3707
-  s3710 :: SWord8 = if s3706 then s3708 else s3709
-  s3711 :: SWord8 = if s3685 then s3696 else s3710
-  s3712 :: SWord8 = if s3628 then s3677 else s3711
-  s3713 :: SWord8 = if s3513 then s3620 else s3712
-  s3714 :: SWord8 = if s3282 then s3505 else s3713
-  s3715 :: SWord8 = if s2819 then s3274 else s3714
-  s3716 :: SWord8 = if s1892 then s2811 else s3715
-  s3717 :: SWord8 = if s38 then s1884 else s3716
-  s3718 :: SWord8 = s18 & s178
-  s3719 :: SBool = s17 /= s3718
-  s3720 :: SWord8 = s24 | s33
-  s3721 :: SWord8 = if s3719 then s3720 else s34
-  s3722 :: SWord8 = if s22 then s3721 else s28
-  s3723 :: SWord8 = s18 & s3722
-  s3724 :: SBool = s17 /= s3723
-  s3725 :: SBool = s_2 == s3724
-  s3726 :: SWord8 = s178 >>> 1
-  s3727 :: SWord8 = s26 & s3726
-  s3728 :: SWord8 = s18 & s3727
-  s3729 :: SBool = s17 /= s3728
-  s3730 :: SWord8 = s3722 >>> 1
-  s3731 :: SWord8 = s24 | s3730
-  s3732 :: SWord8 = s26 & s3730
-  s3733 :: SWord8 = if s43 then s3731 else s3732
-  s3734 :: SWord8 = if s22 then s3733 else s3721
-  s3735 :: SWord8 = s3734 >>> 1
-  s3736 :: SWord8 = s24 | s3735
-  s3737 :: SWord8 = s26 & s3735
-  s3738 :: SWord8 = if s3729 then s3736 else s3737
-  s3739 :: SWord8 = if s22 then s3738 else s3733
-  s3740 :: SWord8 = s18 & s3739
-  s3741 :: SBool = s17 /= s3740
-  s3742 :: SBool = s_2 == s3741
-  s3743 :: SWord8 = s3727 >>> 1
-  s3744 :: SWord8 = s24 | s3743
-  s3745 :: SWord8 = s26 & s3743
-  s3746 :: SWord8 = if s3724 then s3744 else s3745
-  s3747 :: SWord8 = s18 & s3746
-  s3748 :: SBool = s17 /= s3747
-  s3749 :: SWord8 = s18 & s3734
-  s3750 :: SBool = s17 /= s3749
-  s3751 :: SWord8 = s3739 >>> 1
-  s3752 :: SWord8 = s24 | s3751
-  s3753 :: SWord8 = s26 & s3751
-  s3754 :: SWord8 = if s3750 then s3752 else s3753
-  s3755 :: SWord8 = if s22 then s3754 else s3738
-  s3756 :: SWord8 = s3755 >>> 1
-  s3757 :: SWord8 = s24 | s3756
-  s3758 :: SWord8 = s26 & s3756
-  s3759 :: SWord8 = if s3748 then s3757 else s3758
-  s3760 :: SWord8 = if s22 then s3759 else s3754
-  s3761 :: SWord8 = s18 & s3760
-  s3762 :: SBool = s17 /= s3761
-  s3763 :: SBool = s_2 == s3762
-  s3764 :: SWord8 = s3746 >>> 1
-  s3765 :: SWord8 = s24 | s3764
-  s3766 :: SWord8 = s26 & s3764
-  s3767 :: SWord8 = if s3741 then s3765 else s3766
-  s3768 :: SWord8 = s18 & s3767
-  s3769 :: SBool = s17 /= s3768
-  s3770 :: SWord8 = s18 & s3755
-  s3771 :: SBool = s17 /= s3770
-  s3772 :: SWord8 = s3760 >>> 1
-  s3773 :: SWord8 = s24 | s3772
-  s3774 :: SWord8 = s26 & s3772
-  s3775 :: SWord8 = if s3771 then s3773 else s3774
-  s3776 :: SWord8 = if s22 then s3775 else s3759
-  s3777 :: SWord8 = s3776 >>> 1
-  s3778 :: SWord8 = s24 | s3777
-  s3779 :: SWord8 = s26 & s3777
-  s3780 :: SWord8 = if s3769 then s3778 else s3779
-  s3781 :: SWord8 = if s22 then s3780 else s3775
-  s3782 :: SWord8 = s18 & s3781
-  s3783 :: SBool = s17 /= s3782
-  s3784 :: SBool = s_2 == s3783
-  s3785 :: SWord8 = s3767 >>> 1
-  s3786 :: SWord8 = s24 | s3785
-  s3787 :: SWord8 = s26 & s3785
-  s3788 :: SWord8 = if s3762 then s3786 else s3787
-  s3789 :: SWord8 = s18 & s3788
-  s3790 :: SBool = s17 /= s3789
-  s3791 :: SWord8 = s18 & s3776
-  s3792 :: SBool = s17 /= s3791
-  s3793 :: SWord8 = s3781 >>> 1
-  s3794 :: SWord8 = s24 | s3793
-  s3795 :: SWord8 = s26 & s3793
-  s3796 :: SWord8 = if s3792 then s3794 else s3795
-  s3797 :: SWord8 = if s22 then s3796 else s3780
-  s3798 :: SWord8 = s3797 >>> 1
-  s3799 :: SWord8 = s24 | s3798
-  s3800 :: SWord8 = s26 & s3798
-  s3801 :: SWord8 = if s3790 then s3799 else s3800
-  s3802 :: SWord8 = if s22 then s3801 else s3796
-  s3803 :: SWord8 = s18 & s3802
-  s3804 :: SBool = s17 /= s3803
-  s3805 :: SBool = s_2 == s3804
-  s3806 :: SWord8 = s3788 >>> 1
-  s3807 :: SWord8 = s24 | s3806
-  s3808 :: SWord8 = s26 & s3806
-  s3809 :: SWord8 = if s3783 then s3807 else s3808
-  s3810 :: SWord8 = s18 & s3809
-  s3811 :: SBool = s17 /= s3810
-  s3812 :: SWord8 = s18 & s3797
-  s3813 :: SBool = s17 /= s3812
-  s3814 :: SWord8 = s3802 >>> 1
-  s3815 :: SWord8 = s24 | s3814
-  s3816 :: SWord8 = s26 & s3814
-  s3817 :: SWord8 = if s3813 then s3815 else s3816
-  s3818 :: SWord8 = if s22 then s3817 else s3801
-  s3819 :: SWord8 = s3818 >>> 1
-  s3820 :: SWord8 = s24 | s3819
-  s3821 :: SWord8 = s26 & s3819
-  s3822 :: SWord8 = if s3811 then s3820 else s3821
-  s3823 :: SWord8 = if s22 then s3822 else s3817
-  s3824 :: SWord8 = s18 & s3823
-  s3825 :: SBool = s17 /= s3824
-  s3826 :: SBool = s_2 == s3825
-  s3827 :: SWord8 = s3809 >>> 1
-  s3828 :: SWord8 = s24 | s3827
-  s3829 :: SWord8 = s26 & s3827
-  s3830 :: SWord8 = if s3804 then s3828 else s3829
-  s3831 :: SWord8 = s18 & s3830
-  s3832 :: SBool = s17 /= s3831
-  s3833 :: SWord8 = s18 & s3818
-  s3834 :: SBool = s17 /= s3833
-  s3835 :: SWord8 = s3823 >>> 1
-  s3836 :: SWord8 = s24 | s3835
-  s3837 :: SWord8 = s26 & s3835
-  s3838 :: SWord8 = if s3834 then s3836 else s3837
-  s3839 :: SWord8 = if s22 then s3838 else s3822
-  s3840 :: SWord8 = s3839 >>> 1
-  s3841 :: SWord8 = s24 | s3840
-  s3842 :: SWord8 = s26 & s3840
-  s3843 :: SWord8 = if s3832 then s3841 else s3842
-  s3844 :: SWord8 = if s22 then s3843 else s3838
-  s3845 :: SWord8 = s18 & s3844
-  s3846 :: SBool = s17 /= s3845
-  s3847 :: SBool = s_2 == s3846
-  s3848 :: SWord8 = s3830 >>> 1
-  s3849 :: SWord8 = s24 | s3848
-  s3850 :: SWord8 = s26 & s3848
-  s3851 :: SWord8 = if s3825 then s3849 else s3850
-  s3852 :: SWord8 = s3851 >>> 1
-  s3853 :: SWord8 = s24 | s3852
-  s3854 :: SWord8 = s26 & s3852
-  s3855 :: SWord8 = if s3846 then s3853 else s3854
-  s3856 :: SWord8 = s18 & s3839
-  s3857 :: SBool = s17 /= s3856
-  s3858 :: SWord8 = s3844 >>> 1
-  s3859 :: SWord8 = s24 | s3858
-  s3860 :: SWord8 = s26 & s3858
-  s3861 :: SWord8 = if s3857 then s3859 else s3860
-  s3862 :: SWord8 = if s29 then s3721 else s178
-  s3863 :: SWord8 = if s170 then s3733 else s3862
-  s3864 :: SWord8 = if s29 then s3738 else s3863
-  s3865 :: SWord8 = if s170 then s3754 else s3864
-  s3866 :: SWord8 = if s29 then s3759 else s3865
-  s3867 :: SWord8 = if s170 then s3775 else s3866
-  s3868 :: SWord8 = if s29 then s3780 else s3867
-  s3869 :: SWord8 = if s170 then s3796 else s3868
-  s3870 :: SWord8 = if s29 then s3801 else s3869
-  s3871 :: SWord8 = if s170 then s3817 else s3870
-  s3872 :: SWord8 = if s29 then s3822 else s3871
-  s3873 :: SWord8 = if s170 then s3838 else s3872
-  s3874 :: SWord8 = if s29 then s3843 else s3873
-  s3875 :: SWord8 = if s170 then s3861 else s3874
-  s3876 :: SWord8 = s3851 + s3875
-  s3877 :: SBool = s3876 < s3875
-  s3878 :: SBool = s3876 < s3851
-  s3879 :: SBool = s3877 | s3878
-  s3880 :: SWord8 = s3876 >>> 1
-  s3881 :: SWord8 = s24 | s3880
-  s3882 :: SWord8 = s26 & s3880
-  s3883 :: SWord8 = if s3879 then s3881 else s3882
-  s3884 :: SWord8 = if s3847 then s3855 else s3883
-  s3885 :: SWord8 = s3830 + s3873
-  s3886 :: SWord8 = s18 & s3885
-  s3887 :: SBool = s17 /= s3886
-  s3888 :: SWord8 = if s3887 then s3841 else s3842
-  s3889 :: SWord8 = if s22 then s3888 else s3838
-  s3890 :: SWord8 = s18 & s3889
-  s3891 :: SBool = s17 /= s3890
-  s3892 :: SBool = s_2 == s3891
-  s3893 :: SBool = s3885 < s3873
-  s3894 :: SBool = s3885 < s3830
-  s3895 :: SBool = s3893 | s3894
-  s3896 :: SWord8 = s3885 >>> 1
-  s3897 :: SWord8 = s24 | s3896
-  s3898 :: SWord8 = s26 & s3896
-  s3899 :: SWord8 = if s3895 then s3897 else s3898
-  s3900 :: SWord8 = s3899 >>> 1
-  s3901 :: SWord8 = s24 | s3900
-  s3902 :: SWord8 = s26 & s3900
-  s3903 :: SWord8 = if s3891 then s3901 else s3902
-  s3904 :: SWord8 = s3889 >>> 1
-  s3905 :: SWord8 = s24 | s3904
-  s3906 :: SWord8 = s26 & s3904
-  s3907 :: SWord8 = if s3857 then s3905 else s3906
-  s3908 :: SWord8 = if s29 then s3888 else s3873
-  s3909 :: SWord8 = if s170 then s3907 else s3908
-  s3910 :: SWord8 = s3899 + s3909
-  s3911 :: SBool = s3910 < s3909
-  s3912 :: SBool = s3910 < s3899
-  s3913 :: SBool = s3911 | s3912
-  s3914 :: SWord8 = s3910 >>> 1
-  s3915 :: SWord8 = s24 | s3914
-  s3916 :: SWord8 = s26 & s3914
-  s3917 :: SWord8 = if s3913 then s3915 else s3916
-  s3918 :: SWord8 = if s3892 then s3903 else s3917
-  s3919 :: SWord8 = if s3826 then s3884 else s3918
-  s3920 :: SWord8 = s3809 + s3871
-  s3921 :: SWord8 = s18 & s3920
-  s3922 :: SBool = s17 /= s3921
-  s3923 :: SWord8 = if s3922 then s3820 else s3821
-  s3924 :: SWord8 = if s22 then s3923 else s3817
-  s3925 :: SWord8 = s18 & s3924
-  s3926 :: SBool = s17 /= s3925
-  s3927 :: SBool = s_2 == s3926
-  s3928 :: SBool = s3920 < s3871
-  s3929 :: SBool = s3920 < s3809
-  s3930 :: SBool = s3928 | s3929
-  s3931 :: SWord8 = s3920 >>> 1
-  s3932 :: SWord8 = s24 | s3931
-  s3933 :: SWord8 = s26 & s3931
-  s3934 :: SWord8 = if s3930 then s3932 else s3933
-  s3935 :: SWord8 = s18 & s3934
-  s3936 :: SBool = s17 /= s3935
-  s3937 :: SWord8 = s3924 >>> 1
-  s3938 :: SWord8 = s24 | s3937
-  s3939 :: SWord8 = s26 & s3937
-  s3940 :: SWord8 = if s3834 then s3938 else s3939
-  s3941 :: SWord8 = if s22 then s3940 else s3923
-  s3942 :: SWord8 = s3941 >>> 1
-  s3943 :: SWord8 = s24 | s3942
-  s3944 :: SWord8 = s26 & s3942
-  s3945 :: SWord8 = if s3936 then s3943 else s3944
-  s3946 :: SWord8 = if s22 then s3945 else s3940
-  s3947 :: SWord8 = s18 & s3946
-  s3948 :: SBool = s17 /= s3947
-  s3949 :: SBool = s_2 == s3948
-  s3950 :: SWord8 = s3934 >>> 1
-  s3951 :: SWord8 = s24 | s3950
-  s3952 :: SWord8 = s26 & s3950
-  s3953 :: SWord8 = if s3926 then s3951 else s3952
-  s3954 :: SWord8 = s3953 >>> 1
-  s3955 :: SWord8 = s24 | s3954
-  s3956 :: SWord8 = s26 & s3954
-  s3957 :: SWord8 = if s3948 then s3955 else s3956
-  s3958 :: SWord8 = s18 & s3941
-  s3959 :: SBool = s17 /= s3958
-  s3960 :: SWord8 = s3946 >>> 1
-  s3961 :: SWord8 = s24 | s3960
-  s3962 :: SWord8 = s26 & s3960
-  s3963 :: SWord8 = if s3959 then s3961 else s3962
-  s3964 :: SWord8 = if s29 then s3923 else s3871
-  s3965 :: SWord8 = if s170 then s3940 else s3964
-  s3966 :: SWord8 = if s29 then s3945 else s3965
-  s3967 :: SWord8 = if s170 then s3963 else s3966
-  s3968 :: SWord8 = s3953 + s3967
-  s3969 :: SBool = s3968 < s3967
-  s3970 :: SBool = s3968 < s3953
-  s3971 :: SBool = s3969 | s3970
-  s3972 :: SWord8 = s3968 >>> 1
-  s3973 :: SWord8 = s24 | s3972
-  s3974 :: SWord8 = s26 & s3972
-  s3975 :: SWord8 = if s3971 then s3973 else s3974
-  s3976 :: SWord8 = if s3949 then s3957 else s3975
-  s3977 :: SWord8 = s3934 + s3965
-  s3978 :: SWord8 = s18 & s3977
-  s3979 :: SBool = s17 /= s3978
-  s3980 :: SWord8 = if s3979 then s3943 else s3944
-  s3981 :: SWord8 = if s22 then s3980 else s3940
-  s3982 :: SWord8 = s18 & s3981
-  s3983 :: SBool = s17 /= s3982
-  s3984 :: SBool = s_2 == s3983
-  s3985 :: SBool = s3977 < s3965
-  s3986 :: SBool = s3977 < s3934
-  s3987 :: SBool = s3985 | s3986
-  s3988 :: SWord8 = s3977 >>> 1
-  s3989 :: SWord8 = s24 | s3988
-  s3990 :: SWord8 = s26 & s3988
-  s3991 :: SWord8 = if s3987 then s3989 else s3990
-  s3992 :: SWord8 = s3991 >>> 1
-  s3993 :: SWord8 = s24 | s3992
-  s3994 :: SWord8 = s26 & s3992
-  s3995 :: SWord8 = if s3983 then s3993 else s3994
-  s3996 :: SWord8 = s3981 >>> 1
-  s3997 :: SWord8 = s24 | s3996
-  s3998 :: SWord8 = s26 & s3996
-  s3999 :: SWord8 = if s3959 then s3997 else s3998
-  s4000 :: SWord8 = if s29 then s3980 else s3965
-  s4001 :: SWord8 = if s170 then s3999 else s4000
-  s4002 :: SWord8 = s3991 + s4001
-  s4003 :: SBool = s4002 < s4001
-  s4004 :: SBool = s4002 < s3991
-  s4005 :: SBool = s4003 | s4004
-  s4006 :: SWord8 = s4002 >>> 1
-  s4007 :: SWord8 = s24 | s4006
-  s4008 :: SWord8 = s26 & s4006
-  s4009 :: SWord8 = if s4005 then s4007 else s4008
-  s4010 :: SWord8 = if s3984 then s3995 else s4009
-  s4011 :: SWord8 = if s3927 then s3976 else s4010
-  s4012 :: SWord8 = if s3805 then s3919 else s4011
-  s4013 :: SWord8 = s3788 + s3869
-  s4014 :: SWord8 = s18 & s4013
-  s4015 :: SBool = s17 /= s4014
-  s4016 :: SWord8 = if s4015 then s3799 else s3800
-  s4017 :: SWord8 = if s22 then s4016 else s3796
-  s4018 :: SWord8 = s18 & s4017
-  s4019 :: SBool = s17 /= s4018
-  s4020 :: SBool = s_2 == s4019
-  s4021 :: SBool = s4013 < s3869
-  s4022 :: SBool = s4013 < s3788
-  s4023 :: SBool = s4021 | s4022
-  s4024 :: SWord8 = s4013 >>> 1
-  s4025 :: SWord8 = s24 | s4024
-  s4026 :: SWord8 = s26 & s4024
-  s4027 :: SWord8 = if s4023 then s4025 else s4026
-  s4028 :: SWord8 = s18 & s4027
-  s4029 :: SBool = s17 /= s4028
-  s4030 :: SWord8 = s4017 >>> 1
-  s4031 :: SWord8 = s24 | s4030
-  s4032 :: SWord8 = s26 & s4030
-  s4033 :: SWord8 = if s3813 then s4031 else s4032
-  s4034 :: SWord8 = if s22 then s4033 else s4016
-  s4035 :: SWord8 = s4034 >>> 1
-  s4036 :: SWord8 = s24 | s4035
-  s4037 :: SWord8 = s26 & s4035
-  s4038 :: SWord8 = if s4029 then s4036 else s4037
-  s4039 :: SWord8 = if s22 then s4038 else s4033
-  s4040 :: SWord8 = s18 & s4039
-  s4041 :: SBool = s17 /= s4040
-  s4042 :: SBool = s_2 == s4041
-  s4043 :: SWord8 = s4027 >>> 1
-  s4044 :: SWord8 = s24 | s4043
-  s4045 :: SWord8 = s26 & s4043
-  s4046 :: SWord8 = if s4019 then s4044 else s4045
-  s4047 :: SWord8 = s18 & s4046
-  s4048 :: SBool = s17 /= s4047
-  s4049 :: SWord8 = s18 & s4034
-  s4050 :: SBool = s17 /= s4049
-  s4051 :: SWord8 = s4039 >>> 1
-  s4052 :: SWord8 = s24 | s4051
-  s4053 :: SWord8 = s26 & s4051
-  s4054 :: SWord8 = if s4050 then s4052 else s4053
-  s4055 :: SWord8 = if s22 then s4054 else s4038
-  s4056 :: SWord8 = s4055 >>> 1
-  s4057 :: SWord8 = s24 | s4056
-  s4058 :: SWord8 = s26 & s4056
-  s4059 :: SWord8 = if s4048 then s4057 else s4058
-  s4060 :: SWord8 = if s22 then s4059 else s4054
-  s4061 :: SWord8 = s18 & s4060
-  s4062 :: SBool = s17 /= s4061
-  s4063 :: SBool = s_2 == s4062
-  s4064 :: SWord8 = s4046 >>> 1
-  s4065 :: SWord8 = s24 | s4064
-  s4066 :: SWord8 = s26 & s4064
-  s4067 :: SWord8 = if s4041 then s4065 else s4066
-  s4068 :: SWord8 = s4067 >>> 1
-  s4069 :: SWord8 = s24 | s4068
-  s4070 :: SWord8 = s26 & s4068
-  s4071 :: SWord8 = if s4062 then s4069 else s4070
-  s4072 :: SWord8 = s18 & s4055
-  s4073 :: SBool = s17 /= s4072
-  s4074 :: SWord8 = s4060 >>> 1
-  s4075 :: SWord8 = s24 | s4074
-  s4076 :: SWord8 = s26 & s4074
-  s4077 :: SWord8 = if s4073 then s4075 else s4076
-  s4078 :: SWord8 = if s29 then s4016 else s3869
-  s4079 :: SWord8 = if s170 then s4033 else s4078
-  s4080 :: SWord8 = if s29 then s4038 else s4079
-  s4081 :: SWord8 = if s170 then s4054 else s4080
-  s4082 :: SWord8 = if s29 then s4059 else s4081
-  s4083 :: SWord8 = if s170 then s4077 else s4082
-  s4084 :: SWord8 = s4067 + s4083
-  s4085 :: SBool = s4084 < s4083
-  s4086 :: SBool = s4084 < s4067
-  s4087 :: SBool = s4085 | s4086
-  s4088 :: SWord8 = s4084 >>> 1
-  s4089 :: SWord8 = s24 | s4088
-  s4090 :: SWord8 = s26 & s4088
-  s4091 :: SWord8 = if s4087 then s4089 else s4090
-  s4092 :: SWord8 = if s4063 then s4071 else s4091
-  s4093 :: SWord8 = s4046 + s4081
-  s4094 :: SWord8 = s18 & s4093
-  s4095 :: SBool = s17 /= s4094
-  s4096 :: SWord8 = if s4095 then s4057 else s4058
-  s4097 :: SWord8 = if s22 then s4096 else s4054
-  s4098 :: SWord8 = s18 & s4097
-  s4099 :: SBool = s17 /= s4098
-  s4100 :: SBool = s_2 == s4099
-  s4101 :: SBool = s4093 < s4081
-  s4102 :: SBool = s4093 < s4046
-  s4103 :: SBool = s4101 | s4102
-  s4104 :: SWord8 = s4093 >>> 1
-  s4105 :: SWord8 = s24 | s4104
-  s4106 :: SWord8 = s26 & s4104
-  s4107 :: SWord8 = if s4103 then s4105 else s4106
-  s4108 :: SWord8 = s4107 >>> 1
-  s4109 :: SWord8 = s24 | s4108
-  s4110 :: SWord8 = s26 & s4108
-  s4111 :: SWord8 = if s4099 then s4109 else s4110
-  s4112 :: SWord8 = s4097 >>> 1
-  s4113 :: SWord8 = s24 | s4112
-  s4114 :: SWord8 = s26 & s4112
-  s4115 :: SWord8 = if s4073 then s4113 else s4114
-  s4116 :: SWord8 = if s29 then s4096 else s4081
-  s4117 :: SWord8 = if s170 then s4115 else s4116
-  s4118 :: SWord8 = s4107 + s4117
-  s4119 :: SBool = s4118 < s4117
-  s4120 :: SBool = s4118 < s4107
-  s4121 :: SBool = s4119 | s4120
-  s4122 :: SWord8 = s4118 >>> 1
-  s4123 :: SWord8 = s24 | s4122
-  s4124 :: SWord8 = s26 & s4122
-  s4125 :: SWord8 = if s4121 then s4123 else s4124
-  s4126 :: SWord8 = if s4100 then s4111 else s4125
-  s4127 :: SWord8 = if s4042 then s4092 else s4126
-  s4128 :: SWord8 = s4027 + s4079
-  s4129 :: SWord8 = s18 & s4128
-  s4130 :: SBool = s17 /= s4129
-  s4131 :: SWord8 = if s4130 then s4036 else s4037
-  s4132 :: SWord8 = if s22 then s4131 else s4033
-  s4133 :: SWord8 = s18 & s4132
-  s4134 :: SBool = s17 /= s4133
-  s4135 :: SBool = s_2 == s4134
-  s4136 :: SBool = s4128 < s4079
-  s4137 :: SBool = s4128 < s4027
-  s4138 :: SBool = s4136 | s4137
-  s4139 :: SWord8 = s4128 >>> 1
-  s4140 :: SWord8 = s24 | s4139
-  s4141 :: SWord8 = s26 & s4139
-  s4142 :: SWord8 = if s4138 then s4140 else s4141
-  s4143 :: SWord8 = s18 & s4142
-  s4144 :: SBool = s17 /= s4143
-  s4145 :: SWord8 = s4132 >>> 1
-  s4146 :: SWord8 = s24 | s4145
-  s4147 :: SWord8 = s26 & s4145
-  s4148 :: SWord8 = if s4050 then s4146 else s4147
-  s4149 :: SWord8 = if s22 then s4148 else s4131
-  s4150 :: SWord8 = s4149 >>> 1
-  s4151 :: SWord8 = s24 | s4150
-  s4152 :: SWord8 = s26 & s4150
-  s4153 :: SWord8 = if s4144 then s4151 else s4152
-  s4154 :: SWord8 = if s22 then s4153 else s4148
-  s4155 :: SWord8 = s18 & s4154
-  s4156 :: SBool = s17 /= s4155
-  s4157 :: SBool = s_2 == s4156
-  s4158 :: SWord8 = s4142 >>> 1
-  s4159 :: SWord8 = s24 | s4158
-  s4160 :: SWord8 = s26 & s4158
-  s4161 :: SWord8 = if s4134 then s4159 else s4160
-  s4162 :: SWord8 = s4161 >>> 1
-  s4163 :: SWord8 = s24 | s4162
-  s4164 :: SWord8 = s26 & s4162
-  s4165 :: SWord8 = if s4156 then s4163 else s4164
-  s4166 :: SWord8 = s18 & s4149
-  s4167 :: SBool = s17 /= s4166
-  s4168 :: SWord8 = s4154 >>> 1
-  s4169 :: SWord8 = s24 | s4168
-  s4170 :: SWord8 = s26 & s4168
-  s4171 :: SWord8 = if s4167 then s4169 else s4170
-  s4172 :: SWord8 = if s29 then s4131 else s4079
-  s4173 :: SWord8 = if s170 then s4148 else s4172
-  s4174 :: SWord8 = if s29 then s4153 else s4173
-  s4175 :: SWord8 = if s170 then s4171 else s4174
-  s4176 :: SWord8 = s4161 + s4175
-  s4177 :: SBool = s4176 < s4175
-  s4178 :: SBool = s4176 < s4161
-  s4179 :: SBool = s4177 | s4178
-  s4180 :: SWord8 = s4176 >>> 1
-  s4181 :: SWord8 = s24 | s4180
-  s4182 :: SWord8 = s26 & s4180
-  s4183 :: SWord8 = if s4179 then s4181 else s4182
-  s4184 :: SWord8 = if s4157 then s4165 else s4183
-  s4185 :: SWord8 = s4142 + s4173
-  s4186 :: SWord8 = s18 & s4185
-  s4187 :: SBool = s17 /= s4186
-  s4188 :: SWord8 = if s4187 then s4151 else s4152
-  s4189 :: SWord8 = if s22 then s4188 else s4148
-  s4190 :: SWord8 = s18 & s4189
-  s4191 :: SBool = s17 /= s4190
-  s4192 :: SBool = s_2 == s4191
-  s4193 :: SBool = s4185 < s4173
-  s4194 :: SBool = s4185 < s4142
-  s4195 :: SBool = s4193 | s4194
-  s4196 :: SWord8 = s4185 >>> 1
-  s4197 :: SWord8 = s24 | s4196
-  s4198 :: SWord8 = s26 & s4196
-  s4199 :: SWord8 = if s4195 then s4197 else s4198
-  s4200 :: SWord8 = s4199 >>> 1
-  s4201 :: SWord8 = s24 | s4200
-  s4202 :: SWord8 = s26 & s4200
-  s4203 :: SWord8 = if s4191 then s4201 else s4202
-  s4204 :: SWord8 = s4189 >>> 1
-  s4205 :: SWord8 = s24 | s4204
-  s4206 :: SWord8 = s26 & s4204
-  s4207 :: SWord8 = if s4167 then s4205 else s4206
-  s4208 :: SWord8 = if s29 then s4188 else s4173
-  s4209 :: SWord8 = if s170 then s4207 else s4208
-  s4210 :: SWord8 = s4199 + s4209
-  s4211 :: SBool = s4210 < s4209
-  s4212 :: SBool = s4210 < s4199
-  s4213 :: SBool = s4211 | s4212
-  s4214 :: SWord8 = s4210 >>> 1
-  s4215 :: SWord8 = s24 | s4214
-  s4216 :: SWord8 = s26 & s4214
-  s4217 :: SWord8 = if s4213 then s4215 else s4216
-  s4218 :: SWord8 = if s4192 then s4203 else s4217
-  s4219 :: SWord8 = if s4135 then s4184 else s4218
-  s4220 :: SWord8 = if s4020 then s4127 else s4219
-  s4221 :: SWord8 = if s3784 then s4012 else s4220
-  s4222 :: SWord8 = s3767 + s3867
-  s4223 :: SWord8 = s18 & s4222
-  s4224 :: SBool = s17 /= s4223
-  s4225 :: SWord8 = if s4224 then s3778 else s3779
-  s4226 :: SWord8 = if s22 then s4225 else s3775
-  s4227 :: SWord8 = s18 & s4226
-  s4228 :: SBool = s17 /= s4227
-  s4229 :: SBool = s_2 == s4228
-  s4230 :: SBool = s4222 < s3867
-  s4231 :: SBool = s4222 < s3767
-  s4232 :: SBool = s4230 | s4231
-  s4233 :: SWord8 = s4222 >>> 1
-  s4234 :: SWord8 = s24 | s4233
-  s4235 :: SWord8 = s26 & s4233
-  s4236 :: SWord8 = if s4232 then s4234 else s4235
-  s4237 :: SWord8 = s18 & s4236
-  s4238 :: SBool = s17 /= s4237
-  s4239 :: SWord8 = s4226 >>> 1
-  s4240 :: SWord8 = s24 | s4239
-  s4241 :: SWord8 = s26 & s4239
-  s4242 :: SWord8 = if s3792 then s4240 else s4241
-  s4243 :: SWord8 = if s22 then s4242 else s4225
-  s4244 :: SWord8 = s4243 >>> 1
-  s4245 :: SWord8 = s24 | s4244
-  s4246 :: SWord8 = s26 & s4244
-  s4247 :: SWord8 = if s4238 then s4245 else s4246
-  s4248 :: SWord8 = if s22 then s4247 else s4242
-  s4249 :: SWord8 = s18 & s4248
-  s4250 :: SBool = s17 /= s4249
-  s4251 :: SBool = s_2 == s4250
-  s4252 :: SWord8 = s4236 >>> 1
-  s4253 :: SWord8 = s24 | s4252
-  s4254 :: SWord8 = s26 & s4252
-  s4255 :: SWord8 = if s4228 then s4253 else s4254
-  s4256 :: SWord8 = s18 & s4255
-  s4257 :: SBool = s17 /= s4256
-  s4258 :: SWord8 = s18 & s4243
-  s4259 :: SBool = s17 /= s4258
-  s4260 :: SWord8 = s4248 >>> 1
-  s4261 :: SWord8 = s24 | s4260
-  s4262 :: SWord8 = s26 & s4260
-  s4263 :: SWord8 = if s4259 then s4261 else s4262
-  s4264 :: SWord8 = if s22 then s4263 else s4247
-  s4265 :: SWord8 = s4264 >>> 1
-  s4266 :: SWord8 = s24 | s4265
-  s4267 :: SWord8 = s26 & s4265
-  s4268 :: SWord8 = if s4257 then s4266 else s4267
-  s4269 :: SWord8 = if s22 then s4268 else s4263
-  s4270 :: SWord8 = s18 & s4269
-  s4271 :: SBool = s17 /= s4270
-  s4272 :: SBool = s_2 == s4271
-  s4273 :: SWord8 = s4255 >>> 1
-  s4274 :: SWord8 = s24 | s4273
-  s4275 :: SWord8 = s26 & s4273
-  s4276 :: SWord8 = if s4250 then s4274 else s4275
-  s4277 :: SWord8 = s18 & s4276
-  s4278 :: SBool = s17 /= s4277
-  s4279 :: SWord8 = s18 & s4264
-  s4280 :: SBool = s17 /= s4279
-  s4281 :: SWord8 = s4269 >>> 1
-  s4282 :: SWord8 = s24 | s4281
-  s4283 :: SWord8 = s26 & s4281
-  s4284 :: SWord8 = if s4280 then s4282 else s4283
-  s4285 :: SWord8 = if s22 then s4284 else s4268
-  s4286 :: SWord8 = s4285 >>> 1
-  s4287 :: SWord8 = s24 | s4286
-  s4288 :: SWord8 = s26 & s4286
-  s4289 :: SWord8 = if s4278 then s4287 else s4288
-  s4290 :: SWord8 = if s22 then s4289 else s4284
-  s4291 :: SWord8 = s18 & s4290
-  s4292 :: SBool = s17 /= s4291
-  s4293 :: SBool = s_2 == s4292
-  s4294 :: SWord8 = s4276 >>> 1
-  s4295 :: SWord8 = s24 | s4294
-  s4296 :: SWord8 = s26 & s4294
-  s4297 :: SWord8 = if s4271 then s4295 else s4296
-  s4298 :: SWord8 = s4297 >>> 1
-  s4299 :: SWord8 = s24 | s4298
-  s4300 :: SWord8 = s26 & s4298
-  s4301 :: SWord8 = if s4292 then s4299 else s4300
-  s4302 :: SWord8 = s18 & s4285
-  s4303 :: SBool = s17 /= s4302
-  s4304 :: SWord8 = s4290 >>> 1
-  s4305 :: SWord8 = s24 | s4304
-  s4306 :: SWord8 = s26 & s4304
-  s4307 :: SWord8 = if s4303 then s4305 else s4306
-  s4308 :: SWord8 = if s29 then s4225 else s3867
-  s4309 :: SWord8 = if s170 then s4242 else s4308
-  s4310 :: SWord8 = if s29 then s4247 else s4309
-  s4311 :: SWord8 = if s170 then s4263 else s4310
-  s4312 :: SWord8 = if s29 then s4268 else s4311
-  s4313 :: SWord8 = if s170 then s4284 else s4312
-  s4314 :: SWord8 = if s29 then s4289 else s4313
-  s4315 :: SWord8 = if s170 then s4307 else s4314
-  s4316 :: SWord8 = s4297 + s4315
-  s4317 :: SBool = s4316 < s4315
-  s4318 :: SBool = s4316 < s4297
-  s4319 :: SBool = s4317 | s4318
-  s4320 :: SWord8 = s4316 >>> 1
-  s4321 :: SWord8 = s24 | s4320
-  s4322 :: SWord8 = s26 & s4320
-  s4323 :: SWord8 = if s4319 then s4321 else s4322
-  s4324 :: SWord8 = if s4293 then s4301 else s4323
-  s4325 :: SWord8 = s4276 + s4313
-  s4326 :: SWord8 = s18 & s4325
-  s4327 :: SBool = s17 /= s4326
-  s4328 :: SWord8 = if s4327 then s4287 else s4288
-  s4329 :: SWord8 = if s22 then s4328 else s4284
-  s4330 :: SWord8 = s18 & s4329
-  s4331 :: SBool = s17 /= s4330
-  s4332 :: SBool = s_2 == s4331
-  s4333 :: SBool = s4325 < s4313
-  s4334 :: SBool = s4325 < s4276
-  s4335 :: SBool = s4333 | s4334
-  s4336 :: SWord8 = s4325 >>> 1
-  s4337 :: SWord8 = s24 | s4336
-  s4338 :: SWord8 = s26 & s4336
-  s4339 :: SWord8 = if s4335 then s4337 else s4338
-  s4340 :: SWord8 = s4339 >>> 1
-  s4341 :: SWord8 = s24 | s4340
-  s4342 :: SWord8 = s26 & s4340
-  s4343 :: SWord8 = if s4331 then s4341 else s4342
-  s4344 :: SWord8 = s4329 >>> 1
-  s4345 :: SWord8 = s24 | s4344
-  s4346 :: SWord8 = s26 & s4344
-  s4347 :: SWord8 = if s4303 then s4345 else s4346
-  s4348 :: SWord8 = if s29 then s4328 else s4313
-  s4349 :: SWord8 = if s170 then s4347 else s4348
-  s4350 :: SWord8 = s4339 + s4349
-  s4351 :: SBool = s4350 < s4349
-  s4352 :: SBool = s4350 < s4339
-  s4353 :: SBool = s4351 | s4352
-  s4354 :: SWord8 = s4350 >>> 1
-  s4355 :: SWord8 = s24 | s4354
-  s4356 :: SWord8 = s26 & s4354
-  s4357 :: SWord8 = if s4353 then s4355 else s4356
-  s4358 :: SWord8 = if s4332 then s4343 else s4357
-  s4359 :: SWord8 = if s4272 then s4324 else s4358
-  s4360 :: SWord8 = s4255 + s4311
-  s4361 :: SWord8 = s18 & s4360
-  s4362 :: SBool = s17 /= s4361
-  s4363 :: SWord8 = if s4362 then s4266 else s4267
-  s4364 :: SWord8 = if s22 then s4363 else s4263
-  s4365 :: SWord8 = s18 & s4364
-  s4366 :: SBool = s17 /= s4365
-  s4367 :: SBool = s_2 == s4366
-  s4368 :: SBool = s4360 < s4311
-  s4369 :: SBool = s4360 < s4255
-  s4370 :: SBool = s4368 | s4369
-  s4371 :: SWord8 = s4360 >>> 1
-  s4372 :: SWord8 = s24 | s4371
-  s4373 :: SWord8 = s26 & s4371
-  s4374 :: SWord8 = if s4370 then s4372 else s4373
-  s4375 :: SWord8 = s18 & s4374
-  s4376 :: SBool = s17 /= s4375
-  s4377 :: SWord8 = s4364 >>> 1
-  s4378 :: SWord8 = s24 | s4377
-  s4379 :: SWord8 = s26 & s4377
-  s4380 :: SWord8 = if s4280 then s4378 else s4379
-  s4381 :: SWord8 = if s22 then s4380 else s4363
-  s4382 :: SWord8 = s4381 >>> 1
-  s4383 :: SWord8 = s24 | s4382
-  s4384 :: SWord8 = s26 & s4382
-  s4385 :: SWord8 = if s4376 then s4383 else s4384
-  s4386 :: SWord8 = if s22 then s4385 else s4380
-  s4387 :: SWord8 = s18 & s4386
-  s4388 :: SBool = s17 /= s4387
-  s4389 :: SBool = s_2 == s4388
-  s4390 :: SWord8 = s4374 >>> 1
-  s4391 :: SWord8 = s24 | s4390
-  s4392 :: SWord8 = s26 & s4390
-  s4393 :: SWord8 = if s4366 then s4391 else s4392
-  s4394 :: SWord8 = s4393 >>> 1
-  s4395 :: SWord8 = s24 | s4394
-  s4396 :: SWord8 = s26 & s4394
-  s4397 :: SWord8 = if s4388 then s4395 else s4396
-  s4398 :: SWord8 = s18 & s4381
-  s4399 :: SBool = s17 /= s4398
-  s4400 :: SWord8 = s4386 >>> 1
-  s4401 :: SWord8 = s24 | s4400
-  s4402 :: SWord8 = s26 & s4400
-  s4403 :: SWord8 = if s4399 then s4401 else s4402
-  s4404 :: SWord8 = if s29 then s4363 else s4311
-  s4405 :: SWord8 = if s170 then s4380 else s4404
-  s4406 :: SWord8 = if s29 then s4385 else s4405
-  s4407 :: SWord8 = if s170 then s4403 else s4406
-  s4408 :: SWord8 = s4393 + s4407
-  s4409 :: SBool = s4408 < s4407
-  s4410 :: SBool = s4408 < s4393
-  s4411 :: SBool = s4409 | s4410
-  s4412 :: SWord8 = s4408 >>> 1
-  s4413 :: SWord8 = s24 | s4412
-  s4414 :: SWord8 = s26 & s4412
-  s4415 :: SWord8 = if s4411 then s4413 else s4414
-  s4416 :: SWord8 = if s4389 then s4397 else s4415
-  s4417 :: SWord8 = s4374 + s4405
-  s4418 :: SWord8 = s18 & s4417
-  s4419 :: SBool = s17 /= s4418
-  s4420 :: SWord8 = if s4419 then s4383 else s4384
-  s4421 :: SWord8 = if s22 then s4420 else s4380
-  s4422 :: SWord8 = s18 & s4421
-  s4423 :: SBool = s17 /= s4422
-  s4424 :: SBool = s_2 == s4423
-  s4425 :: SBool = s4417 < s4405
-  s4426 :: SBool = s4417 < s4374
-  s4427 :: SBool = s4425 | s4426
-  s4428 :: SWord8 = s4417 >>> 1
-  s4429 :: SWord8 = s24 | s4428
-  s4430 :: SWord8 = s26 & s4428
-  s4431 :: SWord8 = if s4427 then s4429 else s4430
-  s4432 :: SWord8 = s4431 >>> 1
-  s4433 :: SWord8 = s24 | s4432
-  s4434 :: SWord8 = s26 & s4432
-  s4435 :: SWord8 = if s4423 then s4433 else s4434
-  s4436 :: SWord8 = s4421 >>> 1
-  s4437 :: SWord8 = s24 | s4436
-  s4438 :: SWord8 = s26 & s4436
-  s4439 :: SWord8 = if s4399 then s4437 else s4438
-  s4440 :: SWord8 = if s29 then s4420 else s4405
-  s4441 :: SWord8 = if s170 then s4439 else s4440
-  s4442 :: SWord8 = s4431 + s4441
-  s4443 :: SBool = s4442 < s4441
-  s4444 :: SBool = s4442 < s4431
-  s4445 :: SBool = s4443 | s4444
-  s4446 :: SWord8 = s4442 >>> 1
-  s4447 :: SWord8 = s24 | s4446
-  s4448 :: SWord8 = s26 & s4446
-  s4449 :: SWord8 = if s4445 then s4447 else s4448
-  s4450 :: SWord8 = if s4424 then s4435 else s4449
-  s4451 :: SWord8 = if s4367 then s4416 else s4450
-  s4452 :: SWord8 = if s4251 then s4359 else s4451
-  s4453 :: SWord8 = s4236 + s4309
-  s4454 :: SWord8 = s18 & s4453
-  s4455 :: SBool = s17 /= s4454
-  s4456 :: SWord8 = if s4455 then s4245 else s4246
-  s4457 :: SWord8 = if s22 then s4456 else s4242
-  s4458 :: SWord8 = s18 & s4457
-  s4459 :: SBool = s17 /= s4458
-  s4460 :: SBool = s_2 == s4459
-  s4461 :: SBool = s4453 < s4309
-  s4462 :: SBool = s4453 < s4236
-  s4463 :: SBool = s4461 | s4462
-  s4464 :: SWord8 = s4453 >>> 1
-  s4465 :: SWord8 = s24 | s4464
-  s4466 :: SWord8 = s26 & s4464
-  s4467 :: SWord8 = if s4463 then s4465 else s4466
-  s4468 :: SWord8 = s18 & s4467
-  s4469 :: SBool = s17 /= s4468
-  s4470 :: SWord8 = s4457 >>> 1
-  s4471 :: SWord8 = s24 | s4470
-  s4472 :: SWord8 = s26 & s4470
-  s4473 :: SWord8 = if s4259 then s4471 else s4472
-  s4474 :: SWord8 = if s22 then s4473 else s4456
-  s4475 :: SWord8 = s4474 >>> 1
-  s4476 :: SWord8 = s24 | s4475
-  s4477 :: SWord8 = s26 & s4475
-  s4478 :: SWord8 = if s4469 then s4476 else s4477
-  s4479 :: SWord8 = if s22 then s4478 else s4473
-  s4480 :: SWord8 = s18 & s4479
-  s4481 :: SBool = s17 /= s4480
-  s4482 :: SBool = s_2 == s4481
-  s4483 :: SWord8 = s4467 >>> 1
-  s4484 :: SWord8 = s24 | s4483
-  s4485 :: SWord8 = s26 & s4483
-  s4486 :: SWord8 = if s4459 then s4484 else s4485
-  s4487 :: SWord8 = s18 & s4486
-  s4488 :: SBool = s17 /= s4487
-  s4489 :: SWord8 = s18 & s4474
-  s4490 :: SBool = s17 /= s4489
-  s4491 :: SWord8 = s4479 >>> 1
-  s4492 :: SWord8 = s24 | s4491
-  s4493 :: SWord8 = s26 & s4491
-  s4494 :: SWord8 = if s4490 then s4492 else s4493
-  s4495 :: SWord8 = if s22 then s4494 else s4478
-  s4496 :: SWord8 = s4495 >>> 1
-  s4497 :: SWord8 = s24 | s4496
-  s4498 :: SWord8 = s26 & s4496
-  s4499 :: SWord8 = if s4488 then s4497 else s4498
-  s4500 :: SWord8 = if s22 then s4499 else s4494
-  s4501 :: SWord8 = s18 & s4500
-  s4502 :: SBool = s17 /= s4501
-  s4503 :: SBool = s_2 == s4502
-  s4504 :: SWord8 = s4486 >>> 1
-  s4505 :: SWord8 = s24 | s4504
-  s4506 :: SWord8 = s26 & s4504
-  s4507 :: SWord8 = if s4481 then s4505 else s4506
-  s4508 :: SWord8 = s4507 >>> 1
-  s4509 :: SWord8 = s24 | s4508
-  s4510 :: SWord8 = s26 & s4508
-  s4511 :: SWord8 = if s4502 then s4509 else s4510
-  s4512 :: SWord8 = s18 & s4495
-  s4513 :: SBool = s17 /= s4512
-  s4514 :: SWord8 = s4500 >>> 1
-  s4515 :: SWord8 = s24 | s4514
-  s4516 :: SWord8 = s26 & s4514
-  s4517 :: SWord8 = if s4513 then s4515 else s4516
-  s4518 :: SWord8 = if s29 then s4456 else s4309
-  s4519 :: SWord8 = if s170 then s4473 else s4518
-  s4520 :: SWord8 = if s29 then s4478 else s4519
-  s4521 :: SWord8 = if s170 then s4494 else s4520
-  s4522 :: SWord8 = if s29 then s4499 else s4521
-  s4523 :: SWord8 = if s170 then s4517 else s4522
-  s4524 :: SWord8 = s4507 + s4523
-  s4525 :: SBool = s4524 < s4523
-  s4526 :: SBool = s4524 < s4507
-  s4527 :: SBool = s4525 | s4526
-  s4528 :: SWord8 = s4524 >>> 1
-  s4529 :: SWord8 = s24 | s4528
-  s4530 :: SWord8 = s26 & s4528
-  s4531 :: SWord8 = if s4527 then s4529 else s4530
-  s4532 :: SWord8 = if s4503 then s4511 else s4531
-  s4533 :: SWord8 = s4486 + s4521
-  s4534 :: SWord8 = s18 & s4533
-  s4535 :: SBool = s17 /= s4534
-  s4536 :: SWord8 = if s4535 then s4497 else s4498
-  s4537 :: SWord8 = if s22 then s4536 else s4494
-  s4538 :: SWord8 = s18 & s4537
-  s4539 :: SBool = s17 /= s4538
-  s4540 :: SBool = s_2 == s4539
-  s4541 :: SBool = s4533 < s4521
-  s4542 :: SBool = s4533 < s4486
-  s4543 :: SBool = s4541 | s4542
-  s4544 :: SWord8 = s4533 >>> 1
-  s4545 :: SWord8 = s24 | s4544
-  s4546 :: SWord8 = s26 & s4544
-  s4547 :: SWord8 = if s4543 then s4545 else s4546
-  s4548 :: SWord8 = s4547 >>> 1
-  s4549 :: SWord8 = s24 | s4548
-  s4550 :: SWord8 = s26 & s4548
-  s4551 :: SWord8 = if s4539 then s4549 else s4550
-  s4552 :: SWord8 = s4537 >>> 1
-  s4553 :: SWord8 = s24 | s4552
-  s4554 :: SWord8 = s26 & s4552
-  s4555 :: SWord8 = if s4513 then s4553 else s4554
-  s4556 :: SWord8 = if s29 then s4536 else s4521
-  s4557 :: SWord8 = if s170 then s4555 else s4556
-  s4558 :: SWord8 = s4547 + s4557
-  s4559 :: SBool = s4558 < s4557
-  s4560 :: SBool = s4558 < s4547
-  s4561 :: SBool = s4559 | s4560
-  s4562 :: SWord8 = s4558 >>> 1
-  s4563 :: SWord8 = s24 | s4562
-  s4564 :: SWord8 = s26 & s4562
-  s4565 :: SWord8 = if s4561 then s4563 else s4564
-  s4566 :: SWord8 = if s4540 then s4551 else s4565
-  s4567 :: SWord8 = if s4482 then s4532 else s4566
-  s4568 :: SWord8 = s4467 + s4519
-  s4569 :: SWord8 = s18 & s4568
-  s4570 :: SBool = s17 /= s4569
-  s4571 :: SWord8 = if s4570 then s4476 else s4477
-  s4572 :: SWord8 = if s22 then s4571 else s4473
-  s4573 :: SWord8 = s18 & s4572
-  s4574 :: SBool = s17 /= s4573
-  s4575 :: SBool = s_2 == s4574
-  s4576 :: SBool = s4568 < s4519
-  s4577 :: SBool = s4568 < s4467
-  s4578 :: SBool = s4576 | s4577
-  s4579 :: SWord8 = s4568 >>> 1
-  s4580 :: SWord8 = s24 | s4579
-  s4581 :: SWord8 = s26 & s4579
-  s4582 :: SWord8 = if s4578 then s4580 else s4581
-  s4583 :: SWord8 = s18 & s4582
-  s4584 :: SBool = s17 /= s4583
-  s4585 :: SWord8 = s4572 >>> 1
-  s4586 :: SWord8 = s24 | s4585
-  s4587 :: SWord8 = s26 & s4585
-  s4588 :: SWord8 = if s4490 then s4586 else s4587
-  s4589 :: SWord8 = if s22 then s4588 else s4571
-  s4590 :: SWord8 = s4589 >>> 1
-  s4591 :: SWord8 = s24 | s4590
-  s4592 :: SWord8 = s26 & s4590
-  s4593 :: SWord8 = if s4584 then s4591 else s4592
-  s4594 :: SWord8 = if s22 then s4593 else s4588
-  s4595 :: SWord8 = s18 & s4594
-  s4596 :: SBool = s17 /= s4595
-  s4597 :: SBool = s_2 == s4596
-  s4598 :: SWord8 = s4582 >>> 1
-  s4599 :: SWord8 = s24 | s4598
-  s4600 :: SWord8 = s26 & s4598
-  s4601 :: SWord8 = if s4574 then s4599 else s4600
-  s4602 :: SWord8 = s4601 >>> 1
-  s4603 :: SWord8 = s24 | s4602
-  s4604 :: SWord8 = s26 & s4602
-  s4605 :: SWord8 = if s4596 then s4603 else s4604
-  s4606 :: SWord8 = s18 & s4589
-  s4607 :: SBool = s17 /= s4606
-  s4608 :: SWord8 = s4594 >>> 1
-  s4609 :: SWord8 = s24 | s4608
-  s4610 :: SWord8 = s26 & s4608
-  s4611 :: SWord8 = if s4607 then s4609 else s4610
-  s4612 :: SWord8 = if s29 then s4571 else s4519
-  s4613 :: SWord8 = if s170 then s4588 else s4612
-  s4614 :: SWord8 = if s29 then s4593 else s4613
-  s4615 :: SWord8 = if s170 then s4611 else s4614
-  s4616 :: SWord8 = s4601 + s4615
-  s4617 :: SBool = s4616 < s4615
-  s4618 :: SBool = s4616 < s4601
-  s4619 :: SBool = s4617 | s4618
-  s4620 :: SWord8 = s4616 >>> 1
-  s4621 :: SWord8 = s24 | s4620
-  s4622 :: SWord8 = s26 & s4620
-  s4623 :: SWord8 = if s4619 then s4621 else s4622
-  s4624 :: SWord8 = if s4597 then s4605 else s4623
-  s4625 :: SWord8 = s4582 + s4613
-  s4626 :: SWord8 = s18 & s4625
-  s4627 :: SBool = s17 /= s4626
-  s4628 :: SWord8 = if s4627 then s4591 else s4592
-  s4629 :: SWord8 = if s22 then s4628 else s4588
-  s4630 :: SWord8 = s18 & s4629
-  s4631 :: SBool = s17 /= s4630
-  s4632 :: SBool = s_2 == s4631
-  s4633 :: SBool = s4625 < s4613
-  s4634 :: SBool = s4625 < s4582
-  s4635 :: SBool = s4633 | s4634
-  s4636 :: SWord8 = s4625 >>> 1
-  s4637 :: SWord8 = s24 | s4636
-  s4638 :: SWord8 = s26 & s4636
-  s4639 :: SWord8 = if s4635 then s4637 else s4638
-  s4640 :: SWord8 = s4639 >>> 1
-  s4641 :: SWord8 = s24 | s4640
-  s4642 :: SWord8 = s26 & s4640
-  s4643 :: SWord8 = if s4631 then s4641 else s4642
-  s4644 :: SWord8 = s4629 >>> 1
-  s4645 :: SWord8 = s24 | s4644
-  s4646 :: SWord8 = s26 & s4644
-  s4647 :: SWord8 = if s4607 then s4645 else s4646
-  s4648 :: SWord8 = if s29 then s4628 else s4613
-  s4649 :: SWord8 = if s170 then s4647 else s4648
-  s4650 :: SWord8 = s4639 + s4649
-  s4651 :: SBool = s4650 < s4649
-  s4652 :: SBool = s4650 < s4639
-  s4653 :: SBool = s4651 | s4652
-  s4654 :: SWord8 = s4650 >>> 1
-  s4655 :: SWord8 = s24 | s4654
-  s4656 :: SWord8 = s26 & s4654
-  s4657 :: SWord8 = if s4653 then s4655 else s4656
-  s4658 :: SWord8 = if s4632 then s4643 else s4657
-  s4659 :: SWord8 = if s4575 then s4624 else s4658
-  s4660 :: SWord8 = if s4460 then s4567 else s4659
-  s4661 :: SWord8 = if s4229 then s4452 else s4660
-  s4662 :: SWord8 = if s3763 then s4221 else s4661
-  s4663 :: SWord8 = s3746 + s3865
-  s4664 :: SWord8 = s18 & s4663
-  s4665 :: SBool = s17 /= s4664
-  s4666 :: SWord8 = if s4665 then s3757 else s3758
-  s4667 :: SWord8 = if s22 then s4666 else s3754
-  s4668 :: SWord8 = s18 & s4667
-  s4669 :: SBool = s17 /= s4668
-  s4670 :: SBool = s_2 == s4669
-  s4671 :: SBool = s4663 < s3865
-  s4672 :: SBool = s4663 < s3746
-  s4673 :: SBool = s4671 | s4672
-  s4674 :: SWord8 = s4663 >>> 1
-  s4675 :: SWord8 = s24 | s4674
-  s4676 :: SWord8 = s26 & s4674
-  s4677 :: SWord8 = if s4673 then s4675 else s4676
-  s4678 :: SWord8 = s18 & s4677
-  s4679 :: SBool = s17 /= s4678
-  s4680 :: SWord8 = s4667 >>> 1
-  s4681 :: SWord8 = s24 | s4680
-  s4682 :: SWord8 = s26 & s4680
-  s4683 :: SWord8 = if s3771 then s4681 else s4682
-  s4684 :: SWord8 = if s22 then s4683 else s4666
-  s4685 :: SWord8 = s4684 >>> 1
-  s4686 :: SWord8 = s24 | s4685
-  s4687 :: SWord8 = s26 & s4685
-  s4688 :: SWord8 = if s4679 then s4686 else s4687
-  s4689 :: SWord8 = if s22 then s4688 else s4683
-  s4690 :: SWord8 = s18 & s4689
-  s4691 :: SBool = s17 /= s4690
-  s4692 :: SBool = s_2 == s4691
-  s4693 :: SWord8 = s4677 >>> 1
-  s4694 :: SWord8 = s24 | s4693
-  s4695 :: SWord8 = s26 & s4693
-  s4696 :: SWord8 = if s4669 then s4694 else s4695
-  s4697 :: SWord8 = s18 & s4696
-  s4698 :: SBool = s17 /= s4697
-  s4699 :: SWord8 = s18 & s4684
-  s4700 :: SBool = s17 /= s4699
-  s4701 :: SWord8 = s4689 >>> 1
-  s4702 :: SWord8 = s24 | s4701
-  s4703 :: SWord8 = s26 & s4701
-  s4704 :: SWord8 = if s4700 then s4702 else s4703
-  s4705 :: SWord8 = if s22 then s4704 else s4688
-  s4706 :: SWord8 = s4705 >>> 1
-  s4707 :: SWord8 = s24 | s4706
-  s4708 :: SWord8 = s26 & s4706
-  s4709 :: SWord8 = if s4698 then s4707 else s4708
-  s4710 :: SWord8 = if s22 then s4709 else s4704
-  s4711 :: SWord8 = s18 & s4710
-  s4712 :: SBool = s17 /= s4711
-  s4713 :: SBool = s_2 == s4712
-  s4714 :: SWord8 = s4696 >>> 1
-  s4715 :: SWord8 = s24 | s4714
-  s4716 :: SWord8 = s26 & s4714
-  s4717 :: SWord8 = if s4691 then s4715 else s4716
-  s4718 :: SWord8 = s18 & s4717
-  s4719 :: SBool = s17 /= s4718
-  s4720 :: SWord8 = s18 & s4705
-  s4721 :: SBool = s17 /= s4720
-  s4722 :: SWord8 = s4710 >>> 1
-  s4723 :: SWord8 = s24 | s4722
-  s4724 :: SWord8 = s26 & s4722
-  s4725 :: SWord8 = if s4721 then s4723 else s4724
-  s4726 :: SWord8 = if s22 then s4725 else s4709
-  s4727 :: SWord8 = s4726 >>> 1
-  s4728 :: SWord8 = s24 | s4727
-  s4729 :: SWord8 = s26 & s4727
-  s4730 :: SWord8 = if s4719 then s4728 else s4729
-  s4731 :: SWord8 = if s22 then s4730 else s4725
-  s4732 :: SWord8 = s18 & s4731
-  s4733 :: SBool = s17 /= s4732
-  s4734 :: SBool = s_2 == s4733
-  s4735 :: SWord8 = s4717 >>> 1
-  s4736 :: SWord8 = s24 | s4735
-  s4737 :: SWord8 = s26 & s4735
-  s4738 :: SWord8 = if s4712 then s4736 else s4737
-  s4739 :: SWord8 = s18 & s4738
-  s4740 :: SBool = s17 /= s4739
-  s4741 :: SWord8 = s18 & s4726
-  s4742 :: SBool = s17 /= s4741
-  s4743 :: SWord8 = s4731 >>> 1
-  s4744 :: SWord8 = s24 | s4743
-  s4745 :: SWord8 = s26 & s4743
-  s4746 :: SWord8 = if s4742 then s4744 else s4745
-  s4747 :: SWord8 = if s22 then s4746 else s4730
-  s4748 :: SWord8 = s4747 >>> 1
-  s4749 :: SWord8 = s24 | s4748
-  s4750 :: SWord8 = s26 & s4748
-  s4751 :: SWord8 = if s4740 then s4749 else s4750
-  s4752 :: SWord8 = if s22 then s4751 else s4746
-  s4753 :: SWord8 = s18 & s4752
-  s4754 :: SBool = s17 /= s4753
-  s4755 :: SBool = s_2 == s4754
-  s4756 :: SWord8 = s4738 >>> 1
-  s4757 :: SWord8 = s24 | s4756
-  s4758 :: SWord8 = s26 & s4756
-  s4759 :: SWord8 = if s4733 then s4757 else s4758
-  s4760 :: SWord8 = s4759 >>> 1
-  s4761 :: SWord8 = s24 | s4760
-  s4762 :: SWord8 = s26 & s4760
-  s4763 :: SWord8 = if s4754 then s4761 else s4762
-  s4764 :: SWord8 = s18 & s4747
-  s4765 :: SBool = s17 /= s4764
-  s4766 :: SWord8 = s4752 >>> 1
-  s4767 :: SWord8 = s24 | s4766
-  s4768 :: SWord8 = s26 & s4766
-  s4769 :: SWord8 = if s4765 then s4767 else s4768
-  s4770 :: SWord8 = if s29 then s4666 else s3865
-  s4771 :: SWord8 = if s170 then s4683 else s4770
-  s4772 :: SWord8 = if s29 then s4688 else s4771
-  s4773 :: SWord8 = if s170 then s4704 else s4772
-  s4774 :: SWord8 = if s29 then s4709 else s4773
-  s4775 :: SWord8 = if s170 then s4725 else s4774
-  s4776 :: SWord8 = if s29 then s4730 else s4775
-  s4777 :: SWord8 = if s170 then s4746 else s4776
-  s4778 :: SWord8 = if s29 then s4751 else s4777
-  s4779 :: SWord8 = if s170 then s4769 else s4778
-  s4780 :: SWord8 = s4759 + s4779
-  s4781 :: SBool = s4780 < s4779
-  s4782 :: SBool = s4780 < s4759
-  s4783 :: SBool = s4781 | s4782
-  s4784 :: SWord8 = s4780 >>> 1
-  s4785 :: SWord8 = s24 | s4784
-  s4786 :: SWord8 = s26 & s4784
-  s4787 :: SWord8 = if s4783 then s4785 else s4786
-  s4788 :: SWord8 = if s4755 then s4763 else s4787
-  s4789 :: SWord8 = s4738 + s4777
-  s4790 :: SWord8 = s18 & s4789
-  s4791 :: SBool = s17 /= s4790
-  s4792 :: SWord8 = if s4791 then s4749 else s4750
-  s4793 :: SWord8 = if s22 then s4792 else s4746
-  s4794 :: SWord8 = s18 & s4793
-  s4795 :: SBool = s17 /= s4794
-  s4796 :: SBool = s_2 == s4795
-  s4797 :: SBool = s4789 < s4777
-  s4798 :: SBool = s4789 < s4738
-  s4799 :: SBool = s4797 | s4798
-  s4800 :: SWord8 = s4789 >>> 1
-  s4801 :: SWord8 = s24 | s4800
-  s4802 :: SWord8 = s26 & s4800
-  s4803 :: SWord8 = if s4799 then s4801 else s4802
-  s4804 :: SWord8 = s4803 >>> 1
-  s4805 :: SWord8 = s24 | s4804
-  s4806 :: SWord8 = s26 & s4804
-  s4807 :: SWord8 = if s4795 then s4805 else s4806
-  s4808 :: SWord8 = s4793 >>> 1
-  s4809 :: SWord8 = s24 | s4808
-  s4810 :: SWord8 = s26 & s4808
-  s4811 :: SWord8 = if s4765 then s4809 else s4810
-  s4812 :: SWord8 = if s29 then s4792 else s4777
-  s4813 :: SWord8 = if s170 then s4811 else s4812
-  s4814 :: SWord8 = s4803 + s4813
-  s4815 :: SBool = s4814 < s4813
-  s4816 :: SBool = s4814 < s4803
-  s4817 :: SBool = s4815 | s4816
-  s4818 :: SWord8 = s4814 >>> 1
-  s4819 :: SWord8 = s24 | s4818
-  s4820 :: SWord8 = s26 & s4818
-  s4821 :: SWord8 = if s4817 then s4819 else s4820
-  s4822 :: SWord8 = if s4796 then s4807 else s4821
-  s4823 :: SWord8 = if s4734 then s4788 else s4822
-  s4824 :: SWord8 = s4717 + s4775
-  s4825 :: SWord8 = s18 & s4824
-  s4826 :: SBool = s17 /= s4825
-  s4827 :: SWord8 = if s4826 then s4728 else s4729
-  s4828 :: SWord8 = if s22 then s4827 else s4725
-  s4829 :: SWord8 = s18 & s4828
-  s4830 :: SBool = s17 /= s4829
-  s4831 :: SBool = s_2 == s4830
-  s4832 :: SBool = s4824 < s4775
-  s4833 :: SBool = s4824 < s4717
-  s4834 :: SBool = s4832 | s4833
-  s4835 :: SWord8 = s4824 >>> 1
-  s4836 :: SWord8 = s24 | s4835
-  s4837 :: SWord8 = s26 & s4835
-  s4838 :: SWord8 = if s4834 then s4836 else s4837
-  s4839 :: SWord8 = s18 & s4838
-  s4840 :: SBool = s17 /= s4839
-  s4841 :: SWord8 = s4828 >>> 1
-  s4842 :: SWord8 = s24 | s4841
-  s4843 :: SWord8 = s26 & s4841
-  s4844 :: SWord8 = if s4742 then s4842 else s4843
-  s4845 :: SWord8 = if s22 then s4844 else s4827
-  s4846 :: SWord8 = s4845 >>> 1
-  s4847 :: SWord8 = s24 | s4846
-  s4848 :: SWord8 = s26 & s4846
-  s4849 :: SWord8 = if s4840 then s4847 else s4848
-  s4850 :: SWord8 = if s22 then s4849 else s4844
-  s4851 :: SWord8 = s18 & s4850
-  s4852 :: SBool = s17 /= s4851
-  s4853 :: SBool = s_2 == s4852
-  s4854 :: SWord8 = s4838 >>> 1
-  s4855 :: SWord8 = s24 | s4854
-  s4856 :: SWord8 = s26 & s4854
-  s4857 :: SWord8 = if s4830 then s4855 else s4856
-  s4858 :: SWord8 = s4857 >>> 1
-  s4859 :: SWord8 = s24 | s4858
-  s4860 :: SWord8 = s26 & s4858
-  s4861 :: SWord8 = if s4852 then s4859 else s4860
-  s4862 :: SWord8 = s18 & s4845
-  s4863 :: SBool = s17 /= s4862
-  s4864 :: SWord8 = s4850 >>> 1
-  s4865 :: SWord8 = s24 | s4864
-  s4866 :: SWord8 = s26 & s4864
-  s4867 :: SWord8 = if s4863 then s4865 else s4866
-  s4868 :: SWord8 = if s29 then s4827 else s4775
-  s4869 :: SWord8 = if s170 then s4844 else s4868
-  s4870 :: SWord8 = if s29 then s4849 else s4869
-  s4871 :: SWord8 = if s170 then s4867 else s4870
-  s4872 :: SWord8 = s4857 + s4871
-  s4873 :: SBool = s4872 < s4871
-  s4874 :: SBool = s4872 < s4857
-  s4875 :: SBool = s4873 | s4874
-  s4876 :: SWord8 = s4872 >>> 1
-  s4877 :: SWord8 = s24 | s4876
-  s4878 :: SWord8 = s26 & s4876
-  s4879 :: SWord8 = if s4875 then s4877 else s4878
-  s4880 :: SWord8 = if s4853 then s4861 else s4879
-  s4881 :: SWord8 = s4838 + s4869
-  s4882 :: SWord8 = s18 & s4881
-  s4883 :: SBool = s17 /= s4882
-  s4884 :: SWord8 = if s4883 then s4847 else s4848
-  s4885 :: SWord8 = if s22 then s4884 else s4844
-  s4886 :: SWord8 = s18 & s4885
-  s4887 :: SBool = s17 /= s4886
-  s4888 :: SBool = s_2 == s4887
-  s4889 :: SBool = s4881 < s4869
-  s4890 :: SBool = s4881 < s4838
-  s4891 :: SBool = s4889 | s4890
-  s4892 :: SWord8 = s4881 >>> 1
-  s4893 :: SWord8 = s24 | s4892
-  s4894 :: SWord8 = s26 & s4892
-  s4895 :: SWord8 = if s4891 then s4893 else s4894
-  s4896 :: SWord8 = s4895 >>> 1
-  s4897 :: SWord8 = s24 | s4896
-  s4898 :: SWord8 = s26 & s4896
-  s4899 :: SWord8 = if s4887 then s4897 else s4898
-  s4900 :: SWord8 = s4885 >>> 1
-  s4901 :: SWord8 = s24 | s4900
-  s4902 :: SWord8 = s26 & s4900
-  s4903 :: SWord8 = if s4863 then s4901 else s4902
-  s4904 :: SWord8 = if s29 then s4884 else s4869
-  s4905 :: SWord8 = if s170 then s4903 else s4904
-  s4906 :: SWord8 = s4895 + s4905
-  s4907 :: SBool = s4906 < s4905
-  s4908 :: SBool = s4906 < s4895
-  s4909 :: SBool = s4907 | s4908
-  s4910 :: SWord8 = s4906 >>> 1
-  s4911 :: SWord8 = s24 | s4910
-  s4912 :: SWord8 = s26 & s4910
-  s4913 :: SWord8 = if s4909 then s4911 else s4912
-  s4914 :: SWord8 = if s4888 then s4899 else s4913
-  s4915 :: SWord8 = if s4831 then s4880 else s4914
-  s4916 :: SWord8 = if s4713 then s4823 else s4915
-  s4917 :: SWord8 = s4696 + s4773
-  s4918 :: SWord8 = s18 & s4917
-  s4919 :: SBool = s17 /= s4918
-  s4920 :: SWord8 = if s4919 then s4707 else s4708
-  s4921 :: SWord8 = if s22 then s4920 else s4704
-  s4922 :: SWord8 = s18 & s4921
-  s4923 :: SBool = s17 /= s4922
-  s4924 :: SBool = s_2 == s4923
-  s4925 :: SBool = s4917 < s4773
-  s4926 :: SBool = s4917 < s4696
-  s4927 :: SBool = s4925 | s4926
-  s4928 :: SWord8 = s4917 >>> 1
-  s4929 :: SWord8 = s24 | s4928
-  s4930 :: SWord8 = s26 & s4928
-  s4931 :: SWord8 = if s4927 then s4929 else s4930
-  s4932 :: SWord8 = s18 & s4931
-  s4933 :: SBool = s17 /= s4932
-  s4934 :: SWord8 = s4921 >>> 1
-  s4935 :: SWord8 = s24 | s4934
-  s4936 :: SWord8 = s26 & s4934
-  s4937 :: SWord8 = if s4721 then s4935 else s4936
-  s4938 :: SWord8 = if s22 then s4937 else s4920
-  s4939 :: SWord8 = s4938 >>> 1
-  s4940 :: SWord8 = s24 | s4939
-  s4941 :: SWord8 = s26 & s4939
-  s4942 :: SWord8 = if s4933 then s4940 else s4941
-  s4943 :: SWord8 = if s22 then s4942 else s4937
-  s4944 :: SWord8 = s18 & s4943
-  s4945 :: SBool = s17 /= s4944
-  s4946 :: SBool = s_2 == s4945
-  s4947 :: SWord8 = s4931 >>> 1
-  s4948 :: SWord8 = s24 | s4947
-  s4949 :: SWord8 = s26 & s4947
-  s4950 :: SWord8 = if s4923 then s4948 else s4949
-  s4951 :: SWord8 = s18 & s4950
-  s4952 :: SBool = s17 /= s4951
-  s4953 :: SWord8 = s18 & s4938
-  s4954 :: SBool = s17 /= s4953
-  s4955 :: SWord8 = s4943 >>> 1
-  s4956 :: SWord8 = s24 | s4955
-  s4957 :: SWord8 = s26 & s4955
-  s4958 :: SWord8 = if s4954 then s4956 else s4957
-  s4959 :: SWord8 = if s22 then s4958 else s4942
-  s4960 :: SWord8 = s4959 >>> 1
-  s4961 :: SWord8 = s24 | s4960
-  s4962 :: SWord8 = s26 & s4960
-  s4963 :: SWord8 = if s4952 then s4961 else s4962
-  s4964 :: SWord8 = if s22 then s4963 else s4958
-  s4965 :: SWord8 = s18 & s4964
-  s4966 :: SBool = s17 /= s4965
-  s4967 :: SBool = s_2 == s4966
-  s4968 :: SWord8 = s4950 >>> 1
-  s4969 :: SWord8 = s24 | s4968
-  s4970 :: SWord8 = s26 & s4968
-  s4971 :: SWord8 = if s4945 then s4969 else s4970
-  s4972 :: SWord8 = s4971 >>> 1
-  s4973 :: SWord8 = s24 | s4972
-  s4974 :: SWord8 = s26 & s4972
-  s4975 :: SWord8 = if s4966 then s4973 else s4974
-  s4976 :: SWord8 = s18 & s4959
-  s4977 :: SBool = s17 /= s4976
-  s4978 :: SWord8 = s4964 >>> 1
-  s4979 :: SWord8 = s24 | s4978
-  s4980 :: SWord8 = s26 & s4978
-  s4981 :: SWord8 = if s4977 then s4979 else s4980
-  s4982 :: SWord8 = if s29 then s4920 else s4773
-  s4983 :: SWord8 = if s170 then s4937 else s4982
-  s4984 :: SWord8 = if s29 then s4942 else s4983
-  s4985 :: SWord8 = if s170 then s4958 else s4984
-  s4986 :: SWord8 = if s29 then s4963 else s4985
-  s4987 :: SWord8 = if s170 then s4981 else s4986
-  s4988 :: SWord8 = s4971 + s4987
-  s4989 :: SBool = s4988 < s4987
-  s4990 :: SBool = s4988 < s4971
-  s4991 :: SBool = s4989 | s4990
-  s4992 :: SWord8 = s4988 >>> 1
-  s4993 :: SWord8 = s24 | s4992
-  s4994 :: SWord8 = s26 & s4992
-  s4995 :: SWord8 = if s4991 then s4993 else s4994
-  s4996 :: SWord8 = if s4967 then s4975 else s4995
-  s4997 :: SWord8 = s4950 + s4985
-  s4998 :: SWord8 = s18 & s4997
-  s4999 :: SBool = s17 /= s4998
-  s5000 :: SWord8 = if s4999 then s4961 else s4962
-  s5001 :: SWord8 = if s22 then s5000 else s4958
-  s5002 :: SWord8 = s18 & s5001
-  s5003 :: SBool = s17 /= s5002
-  s5004 :: SBool = s_2 == s5003
-  s5005 :: SBool = s4997 < s4985
-  s5006 :: SBool = s4997 < s4950
-  s5007 :: SBool = s5005 | s5006
-  s5008 :: SWord8 = s4997 >>> 1
-  s5009 :: SWord8 = s24 | s5008
-  s5010 :: SWord8 = s26 & s5008
-  s5011 :: SWord8 = if s5007 then s5009 else s5010
-  s5012 :: SWord8 = s5011 >>> 1
-  s5013 :: SWord8 = s24 | s5012
-  s5014 :: SWord8 = s26 & s5012
-  s5015 :: SWord8 = if s5003 then s5013 else s5014
-  s5016 :: SWord8 = s5001 >>> 1
-  s5017 :: SWord8 = s24 | s5016
-  s5018 :: SWord8 = s26 & s5016
-  s5019 :: SWord8 = if s4977 then s5017 else s5018
-  s5020 :: SWord8 = if s29 then s5000 else s4985
-  s5021 :: SWord8 = if s170 then s5019 else s5020
-  s5022 :: SWord8 = s5011 + s5021
-  s5023 :: SBool = s5022 < s5021
-  s5024 :: SBool = s5022 < s5011
-  s5025 :: SBool = s5023 | s5024
-  s5026 :: SWord8 = s5022 >>> 1
-  s5027 :: SWord8 = s24 | s5026
-  s5028 :: SWord8 = s26 & s5026
-  s5029 :: SWord8 = if s5025 then s5027 else s5028
-  s5030 :: SWord8 = if s5004 then s5015 else s5029
-  s5031 :: SWord8 = if s4946 then s4996 else s5030
-  s5032 :: SWord8 = s4931 + s4983
-  s5033 :: SWord8 = s18 & s5032
-  s5034 :: SBool = s17 /= s5033
-  s5035 :: SWord8 = if s5034 then s4940 else s4941
-  s5036 :: SWord8 = if s22 then s5035 else s4937
-  s5037 :: SWord8 = s18 & s5036
-  s5038 :: SBool = s17 /= s5037
-  s5039 :: SBool = s_2 == s5038
-  s5040 :: SBool = s5032 < s4983
-  s5041 :: SBool = s5032 < s4931
-  s5042 :: SBool = s5040 | s5041
-  s5043 :: SWord8 = s5032 >>> 1
-  s5044 :: SWord8 = s24 | s5043
-  s5045 :: SWord8 = s26 & s5043
-  s5046 :: SWord8 = if s5042 then s5044 else s5045
-  s5047 :: SWord8 = s18 & s5046
-  s5048 :: SBool = s17 /= s5047
-  s5049 :: SWord8 = s5036 >>> 1
-  s5050 :: SWord8 = s24 | s5049
-  s5051 :: SWord8 = s26 & s5049
-  s5052 :: SWord8 = if s4954 then s5050 else s5051
-  s5053 :: SWord8 = if s22 then s5052 else s5035
-  s5054 :: SWord8 = s5053 >>> 1
-  s5055 :: SWord8 = s24 | s5054
-  s5056 :: SWord8 = s26 & s5054
-  s5057 :: SWord8 = if s5048 then s5055 else s5056
-  s5058 :: SWord8 = if s22 then s5057 else s5052
-  s5059 :: SWord8 = s18 & s5058
-  s5060 :: SBool = s17 /= s5059
-  s5061 :: SBool = s_2 == s5060
-  s5062 :: SWord8 = s5046 >>> 1
-  s5063 :: SWord8 = s24 | s5062
-  s5064 :: SWord8 = s26 & s5062
-  s5065 :: SWord8 = if s5038 then s5063 else s5064
-  s5066 :: SWord8 = s5065 >>> 1
-  s5067 :: SWord8 = s24 | s5066
-  s5068 :: SWord8 = s26 & s5066
-  s5069 :: SWord8 = if s5060 then s5067 else s5068
-  s5070 :: SWord8 = s18 & s5053
-  s5071 :: SBool = s17 /= s5070
-  s5072 :: SWord8 = s5058 >>> 1
-  s5073 :: SWord8 = s24 | s5072
-  s5074 :: SWord8 = s26 & s5072
-  s5075 :: SWord8 = if s5071 then s5073 else s5074
-  s5076 :: SWord8 = if s29 then s5035 else s4983
-  s5077 :: SWord8 = if s170 then s5052 else s5076
-  s5078 :: SWord8 = if s29 then s5057 else s5077
-  s5079 :: SWord8 = if s170 then s5075 else s5078
-  s5080 :: SWord8 = s5065 + s5079
-  s5081 :: SBool = s5080 < s5079
-  s5082 :: SBool = s5080 < s5065
-  s5083 :: SBool = s5081 | s5082
-  s5084 :: SWord8 = s5080 >>> 1
-  s5085 :: SWord8 = s24 | s5084
-  s5086 :: SWord8 = s26 & s5084
-  s5087 :: SWord8 = if s5083 then s5085 else s5086
-  s5088 :: SWord8 = if s5061 then s5069 else s5087
-  s5089 :: SWord8 = s5046 + s5077
-  s5090 :: SWord8 = s18 & s5089
-  s5091 :: SBool = s17 /= s5090
-  s5092 :: SWord8 = if s5091 then s5055 else s5056
-  s5093 :: SWord8 = if s22 then s5092 else s5052
-  s5094 :: SWord8 = s18 & s5093
-  s5095 :: SBool = s17 /= s5094
-  s5096 :: SBool = s_2 == s5095
-  s5097 :: SBool = s5089 < s5077
-  s5098 :: SBool = s5089 < s5046
-  s5099 :: SBool = s5097 | s5098
-  s5100 :: SWord8 = s5089 >>> 1
-  s5101 :: SWord8 = s24 | s5100
-  s5102 :: SWord8 = s26 & s5100
-  s5103 :: SWord8 = if s5099 then s5101 else s5102
-  s5104 :: SWord8 = s5103 >>> 1
-  s5105 :: SWord8 = s24 | s5104
-  s5106 :: SWord8 = s26 & s5104
-  s5107 :: SWord8 = if s5095 then s5105 else s5106
-  s5108 :: SWord8 = s5093 >>> 1
-  s5109 :: SWord8 = s24 | s5108
-  s5110 :: SWord8 = s26 & s5108
-  s5111 :: SWord8 = if s5071 then s5109 else s5110
-  s5112 :: SWord8 = if s29 then s5092 else s5077
-  s5113 :: SWord8 = if s170 then s5111 else s5112
-  s5114 :: SWord8 = s5103 + s5113
-  s5115 :: SBool = s5114 < s5113
-  s5116 :: SBool = s5114 < s5103
-  s5117 :: SBool = s5115 | s5116
-  s5118 :: SWord8 = s5114 >>> 1
-  s5119 :: SWord8 = s24 | s5118
-  s5120 :: SWord8 = s26 & s5118
-  s5121 :: SWord8 = if s5117 then s5119 else s5120
-  s5122 :: SWord8 = if s5096 then s5107 else s5121
-  s5123 :: SWord8 = if s5039 then s5088 else s5122
-  s5124 :: SWord8 = if s4924 then s5031 else s5123
-  s5125 :: SWord8 = if s4692 then s4916 else s5124
-  s5126 :: SWord8 = s4677 + s4771
-  s5127 :: SWord8 = s18 & s5126
-  s5128 :: SBool = s17 /= s5127
-  s5129 :: SWord8 = if s5128 then s4686 else s4687
-  s5130 :: SWord8 = if s22 then s5129 else s4683
-  s5131 :: SWord8 = s18 & s5130
-  s5132 :: SBool = s17 /= s5131
-  s5133 :: SBool = s_2 == s5132
-  s5134 :: SBool = s5126 < s4771
-  s5135 :: SBool = s5126 < s4677
-  s5136 :: SBool = s5134 | s5135
-  s5137 :: SWord8 = s5126 >>> 1
-  s5138 :: SWord8 = s24 | s5137
-  s5139 :: SWord8 = s26 & s5137
-  s5140 :: SWord8 = if s5136 then s5138 else s5139
-  s5141 :: SWord8 = s18 & s5140
-  s5142 :: SBool = s17 /= s5141
-  s5143 :: SWord8 = s5130 >>> 1
-  s5144 :: SWord8 = s24 | s5143
-  s5145 :: SWord8 = s26 & s5143
-  s5146 :: SWord8 = if s4700 then s5144 else s5145
-  s5147 :: SWord8 = if s22 then s5146 else s5129
-  s5148 :: SWord8 = s5147 >>> 1
-  s5149 :: SWord8 = s24 | s5148
-  s5150 :: SWord8 = s26 & s5148
-  s5151 :: SWord8 = if s5142 then s5149 else s5150
-  s5152 :: SWord8 = if s22 then s5151 else s5146
-  s5153 :: SWord8 = s18 & s5152
-  s5154 :: SBool = s17 /= s5153
-  s5155 :: SBool = s_2 == s5154
-  s5156 :: SWord8 = s5140 >>> 1
-  s5157 :: SWord8 = s24 | s5156
-  s5158 :: SWord8 = s26 & s5156
-  s5159 :: SWord8 = if s5132 then s5157 else s5158
-  s5160 :: SWord8 = s18 & s5159
-  s5161 :: SBool = s17 /= s5160
-  s5162 :: SWord8 = s18 & s5147
-  s5163 :: SBool = s17 /= s5162
-  s5164 :: SWord8 = s5152 >>> 1
-  s5165 :: SWord8 = s24 | s5164
-  s5166 :: SWord8 = s26 & s5164
-  s5167 :: SWord8 = if s5163 then s5165 else s5166
-  s5168 :: SWord8 = if s22 then s5167 else s5151
-  s5169 :: SWord8 = s5168 >>> 1
-  s5170 :: SWord8 = s24 | s5169
-  s5171 :: SWord8 = s26 & s5169
-  s5172 :: SWord8 = if s5161 then s5170 else s5171
-  s5173 :: SWord8 = if s22 then s5172 else s5167
-  s5174 :: SWord8 = s18 & s5173
-  s5175 :: SBool = s17 /= s5174
-  s5176 :: SBool = s_2 == s5175
-  s5177 :: SWord8 = s5159 >>> 1
-  s5178 :: SWord8 = s24 | s5177
-  s5179 :: SWord8 = s26 & s5177
-  s5180 :: SWord8 = if s5154 then s5178 else s5179
-  s5181 :: SWord8 = s18 & s5180
-  s5182 :: SBool = s17 /= s5181
-  s5183 :: SWord8 = s18 & s5168
-  s5184 :: SBool = s17 /= s5183
-  s5185 :: SWord8 = s5173 >>> 1
-  s5186 :: SWord8 = s24 | s5185
-  s5187 :: SWord8 = s26 & s5185
-  s5188 :: SWord8 = if s5184 then s5186 else s5187
-  s5189 :: SWord8 = if s22 then s5188 else s5172
-  s5190 :: SWord8 = s5189 >>> 1
-  s5191 :: SWord8 = s24 | s5190
-  s5192 :: SWord8 = s26 & s5190
-  s5193 :: SWord8 = if s5182 then s5191 else s5192
-  s5194 :: SWord8 = if s22 then s5193 else s5188
-  s5195 :: SWord8 = s18 & s5194
-  s5196 :: SBool = s17 /= s5195
-  s5197 :: SBool = s_2 == s5196
-  s5198 :: SWord8 = s5180 >>> 1
-  s5199 :: SWord8 = s24 | s5198
-  s5200 :: SWord8 = s26 & s5198
-  s5201 :: SWord8 = if s5175 then s5199 else s5200
-  s5202 :: SWord8 = s5201 >>> 1
-  s5203 :: SWord8 = s24 | s5202
-  s5204 :: SWord8 = s26 & s5202
-  s5205 :: SWord8 = if s5196 then s5203 else s5204
-  s5206 :: SWord8 = s18 & s5189
-  s5207 :: SBool = s17 /= s5206
-  s5208 :: SWord8 = s5194 >>> 1
-  s5209 :: SWord8 = s24 | s5208
-  s5210 :: SWord8 = s26 & s5208
-  s5211 :: SWord8 = if s5207 then s5209 else s5210
-  s5212 :: SWord8 = if s29 then s5129 else s4771
-  s5213 :: SWord8 = if s170 then s5146 else s5212
-  s5214 :: SWord8 = if s29 then s5151 else s5213
-  s5215 :: SWord8 = if s170 then s5167 else s5214
-  s5216 :: SWord8 = if s29 then s5172 else s5215
-  s5217 :: SWord8 = if s170 then s5188 else s5216
-  s5218 :: SWord8 = if s29 then s5193 else s5217
-  s5219 :: SWord8 = if s170 then s5211 else s5218
-  s5220 :: SWord8 = s5201 + s5219
-  s5221 :: SBool = s5220 < s5219
-  s5222 :: SBool = s5220 < s5201
-  s5223 :: SBool = s5221 | s5222
-  s5224 :: SWord8 = s5220 >>> 1
-  s5225 :: SWord8 = s24 | s5224
-  s5226 :: SWord8 = s26 & s5224
-  s5227 :: SWord8 = if s5223 then s5225 else s5226
-  s5228 :: SWord8 = if s5197 then s5205 else s5227
-  s5229 :: SWord8 = s5180 + s5217
-  s5230 :: SWord8 = s18 & s5229
-  s5231 :: SBool = s17 /= s5230
-  s5232 :: SWord8 = if s5231 then s5191 else s5192
-  s5233 :: SWord8 = if s22 then s5232 else s5188
-  s5234 :: SWord8 = s18 & s5233
-  s5235 :: SBool = s17 /= s5234
-  s5236 :: SBool = s_2 == s5235
-  s5237 :: SBool = s5229 < s5217
-  s5238 :: SBool = s5229 < s5180
-  s5239 :: SBool = s5237 | s5238
-  s5240 :: SWord8 = s5229 >>> 1
-  s5241 :: SWord8 = s24 | s5240
-  s5242 :: SWord8 = s26 & s5240
-  s5243 :: SWord8 = if s5239 then s5241 else s5242
-  s5244 :: SWord8 = s5243 >>> 1
-  s5245 :: SWord8 = s24 | s5244
-  s5246 :: SWord8 = s26 & s5244
-  s5247 :: SWord8 = if s5235 then s5245 else s5246
-  s5248 :: SWord8 = s5233 >>> 1
-  s5249 :: SWord8 = s24 | s5248
-  s5250 :: SWord8 = s26 & s5248
-  s5251 :: SWord8 = if s5207 then s5249 else s5250
-  s5252 :: SWord8 = if s29 then s5232 else s5217
-  s5253 :: SWord8 = if s170 then s5251 else s5252
-  s5254 :: SWord8 = s5243 + s5253
-  s5255 :: SBool = s5254 < s5253
-  s5256 :: SBool = s5254 < s5243
-  s5257 :: SBool = s5255 | s5256
-  s5258 :: SWord8 = s5254 >>> 1
-  s5259 :: SWord8 = s24 | s5258
-  s5260 :: SWord8 = s26 & s5258
-  s5261 :: SWord8 = if s5257 then s5259 else s5260
-  s5262 :: SWord8 = if s5236 then s5247 else s5261
-  s5263 :: SWord8 = if s5176 then s5228 else s5262
-  s5264 :: SWord8 = s5159 + s5215
-  s5265 :: SWord8 = s18 & s5264
-  s5266 :: SBool = s17 /= s5265
-  s5267 :: SWord8 = if s5266 then s5170 else s5171
-  s5268 :: SWord8 = if s22 then s5267 else s5167
-  s5269 :: SWord8 = s18 & s5268
-  s5270 :: SBool = s17 /= s5269
-  s5271 :: SBool = s_2 == s5270
-  s5272 :: SBool = s5264 < s5215
-  s5273 :: SBool = s5264 < s5159
-  s5274 :: SBool = s5272 | s5273
-  s5275 :: SWord8 = s5264 >>> 1
-  s5276 :: SWord8 = s24 | s5275
-  s5277 :: SWord8 = s26 & s5275
-  s5278 :: SWord8 = if s5274 then s5276 else s5277
-  s5279 :: SWord8 = s18 & s5278
-  s5280 :: SBool = s17 /= s5279
-  s5281 :: SWord8 = s5268 >>> 1
-  s5282 :: SWord8 = s24 | s5281
-  s5283 :: SWord8 = s26 & s5281
-  s5284 :: SWord8 = if s5184 then s5282 else s5283
-  s5285 :: SWord8 = if s22 then s5284 else s5267
-  s5286 :: SWord8 = s5285 >>> 1
-  s5287 :: SWord8 = s24 | s5286
-  s5288 :: SWord8 = s26 & s5286
-  s5289 :: SWord8 = if s5280 then s5287 else s5288
-  s5290 :: SWord8 = if s22 then s5289 else s5284
-  s5291 :: SWord8 = s18 & s5290
-  s5292 :: SBool = s17 /= s5291
-  s5293 :: SBool = s_2 == s5292
-  s5294 :: SWord8 = s5278 >>> 1
-  s5295 :: SWord8 = s24 | s5294
-  s5296 :: SWord8 = s26 & s5294
-  s5297 :: SWord8 = if s5270 then s5295 else s5296
-  s5298 :: SWord8 = s5297 >>> 1
-  s5299 :: SWord8 = s24 | s5298
-  s5300 :: SWord8 = s26 & s5298
-  s5301 :: SWord8 = if s5292 then s5299 else s5300
-  s5302 :: SWord8 = s18 & s5285
-  s5303 :: SBool = s17 /= s5302
-  s5304 :: SWord8 = s5290 >>> 1
-  s5305 :: SWord8 = s24 | s5304
-  s5306 :: SWord8 = s26 & s5304
-  s5307 :: SWord8 = if s5303 then s5305 else s5306
-  s5308 :: SWord8 = if s29 then s5267 else s5215
-  s5309 :: SWord8 = if s170 then s5284 else s5308
-  s5310 :: SWord8 = if s29 then s5289 else s5309
-  s5311 :: SWord8 = if s170 then s5307 else s5310
-  s5312 :: SWord8 = s5297 + s5311
-  s5313 :: SBool = s5312 < s5311
-  s5314 :: SBool = s5312 < s5297
-  s5315 :: SBool = s5313 | s5314
-  s5316 :: SWord8 = s5312 >>> 1
-  s5317 :: SWord8 = s24 | s5316
-  s5318 :: SWord8 = s26 & s5316
-  s5319 :: SWord8 = if s5315 then s5317 else s5318
-  s5320 :: SWord8 = if s5293 then s5301 else s5319
-  s5321 :: SWord8 = s5278 + s5309
-  s5322 :: SWord8 = s18 & s5321
-  s5323 :: SBool = s17 /= s5322
-  s5324 :: SWord8 = if s5323 then s5287 else s5288
-  s5325 :: SWord8 = if s22 then s5324 else s5284
-  s5326 :: SWord8 = s18 & s5325
-  s5327 :: SBool = s17 /= s5326
-  s5328 :: SBool = s_2 == s5327
-  s5329 :: SBool = s5321 < s5309
-  s5330 :: SBool = s5321 < s5278
-  s5331 :: SBool = s5329 | s5330
-  s5332 :: SWord8 = s5321 >>> 1
-  s5333 :: SWord8 = s24 | s5332
-  s5334 :: SWord8 = s26 & s5332
-  s5335 :: SWord8 = if s5331 then s5333 else s5334
-  s5336 :: SWord8 = s5335 >>> 1
-  s5337 :: SWord8 = s24 | s5336
-  s5338 :: SWord8 = s26 & s5336
-  s5339 :: SWord8 = if s5327 then s5337 else s5338
-  s5340 :: SWord8 = s5325 >>> 1
-  s5341 :: SWord8 = s24 | s5340
-  s5342 :: SWord8 = s26 & s5340
-  s5343 :: SWord8 = if s5303 then s5341 else s5342
-  s5344 :: SWord8 = if s29 then s5324 else s5309
-  s5345 :: SWord8 = if s170 then s5343 else s5344
-  s5346 :: SWord8 = s5335 + s5345
-  s5347 :: SBool = s5346 < s5345
-  s5348 :: SBool = s5346 < s5335
-  s5349 :: SBool = s5347 | s5348
-  s5350 :: SWord8 = s5346 >>> 1
-  s5351 :: SWord8 = s24 | s5350
-  s5352 :: SWord8 = s26 & s5350
-  s5353 :: SWord8 = if s5349 then s5351 else s5352
-  s5354 :: SWord8 = if s5328 then s5339 else s5353
-  s5355 :: SWord8 = if s5271 then s5320 else s5354
-  s5356 :: SWord8 = if s5155 then s5263 else s5355
-  s5357 :: SWord8 = s5140 + s5213
-  s5358 :: SWord8 = s18 & s5357
-  s5359 :: SBool = s17 /= s5358
-  s5360 :: SWord8 = if s5359 then s5149 else s5150
-  s5361 :: SWord8 = if s22 then s5360 else s5146
-  s5362 :: SWord8 = s18 & s5361
-  s5363 :: SBool = s17 /= s5362
-  s5364 :: SBool = s_2 == s5363
-  s5365 :: SBool = s5357 < s5213
-  s5366 :: SBool = s5357 < s5140
-  s5367 :: SBool = s5365 | s5366
-  s5368 :: SWord8 = s5357 >>> 1
-  s5369 :: SWord8 = s24 | s5368
-  s5370 :: SWord8 = s26 & s5368
-  s5371 :: SWord8 = if s5367 then s5369 else s5370
-  s5372 :: SWord8 = s18 & s5371
-  s5373 :: SBool = s17 /= s5372
-  s5374 :: SWord8 = s5361 >>> 1
-  s5375 :: SWord8 = s24 | s5374
-  s5376 :: SWord8 = s26 & s5374
-  s5377 :: SWord8 = if s5163 then s5375 else s5376
-  s5378 :: SWord8 = if s22 then s5377 else s5360
-  s5379 :: SWord8 = s5378 >>> 1
-  s5380 :: SWord8 = s24 | s5379
-  s5381 :: SWord8 = s26 & s5379
-  s5382 :: SWord8 = if s5373 then s5380 else s5381
-  s5383 :: SWord8 = if s22 then s5382 else s5377
-  s5384 :: SWord8 = s18 & s5383
-  s5385 :: SBool = s17 /= s5384
-  s5386 :: SBool = s_2 == s5385
-  s5387 :: SWord8 = s5371 >>> 1
-  s5388 :: SWord8 = s24 | s5387
-  s5389 :: SWord8 = s26 & s5387
-  s5390 :: SWord8 = if s5363 then s5388 else s5389
-  s5391 :: SWord8 = s18 & s5390
-  s5392 :: SBool = s17 /= s5391
-  s5393 :: SWord8 = s18 & s5378
-  s5394 :: SBool = s17 /= s5393
-  s5395 :: SWord8 = s5383 >>> 1
-  s5396 :: SWord8 = s24 | s5395
-  s5397 :: SWord8 = s26 & s5395
-  s5398 :: SWord8 = if s5394 then s5396 else s5397
-  s5399 :: SWord8 = if s22 then s5398 else s5382
-  s5400 :: SWord8 = s5399 >>> 1
-  s5401 :: SWord8 = s24 | s5400
-  s5402 :: SWord8 = s26 & s5400
-  s5403 :: SWord8 = if s5392 then s5401 else s5402
-  s5404 :: SWord8 = if s22 then s5403 else s5398
-  s5405 :: SWord8 = s18 & s5404
-  s5406 :: SBool = s17 /= s5405
-  s5407 :: SBool = s_2 == s5406
-  s5408 :: SWord8 = s5390 >>> 1
-  s5409 :: SWord8 = s24 | s5408
-  s5410 :: SWord8 = s26 & s5408
-  s5411 :: SWord8 = if s5385 then s5409 else s5410
-  s5412 :: SWord8 = s5411 >>> 1
-  s5413 :: SWord8 = s24 | s5412
-  s5414 :: SWord8 = s26 & s5412
-  s5415 :: SWord8 = if s5406 then s5413 else s5414
-  s5416 :: SWord8 = s18 & s5399
-  s5417 :: SBool = s17 /= s5416
-  s5418 :: SWord8 = s5404 >>> 1
-  s5419 :: SWord8 = s24 | s5418
-  s5420 :: SWord8 = s26 & s5418
-  s5421 :: SWord8 = if s5417 then s5419 else s5420
-  s5422 :: SWord8 = if s29 then s5360 else s5213
-  s5423 :: SWord8 = if s170 then s5377 else s5422
-  s5424 :: SWord8 = if s29 then s5382 else s5423
-  s5425 :: SWord8 = if s170 then s5398 else s5424
-  s5426 :: SWord8 = if s29 then s5403 else s5425
-  s5427 :: SWord8 = if s170 then s5421 else s5426
-  s5428 :: SWord8 = s5411 + s5427
-  s5429 :: SBool = s5428 < s5427
-  s5430 :: SBool = s5428 < s5411
-  s5431 :: SBool = s5429 | s5430
-  s5432 :: SWord8 = s5428 >>> 1
-  s5433 :: SWord8 = s24 | s5432
-  s5434 :: SWord8 = s26 & s5432
-  s5435 :: SWord8 = if s5431 then s5433 else s5434
-  s5436 :: SWord8 = if s5407 then s5415 else s5435
-  s5437 :: SWord8 = s5390 + s5425
-  s5438 :: SWord8 = s18 & s5437
-  s5439 :: SBool = s17 /= s5438
-  s5440 :: SWord8 = if s5439 then s5401 else s5402
-  s5441 :: SWord8 = if s22 then s5440 else s5398
-  s5442 :: SWord8 = s18 & s5441
-  s5443 :: SBool = s17 /= s5442
-  s5444 :: SBool = s_2 == s5443
-  s5445 :: SBool = s5437 < s5425
-  s5446 :: SBool = s5437 < s5390
-  s5447 :: SBool = s5445 | s5446
-  s5448 :: SWord8 = s5437 >>> 1
-  s5449 :: SWord8 = s24 | s5448
-  s5450 :: SWord8 = s26 & s5448
-  s5451 :: SWord8 = if s5447 then s5449 else s5450
-  s5452 :: SWord8 = s5451 >>> 1
-  s5453 :: SWord8 = s24 | s5452
-  s5454 :: SWord8 = s26 & s5452
-  s5455 :: SWord8 = if s5443 then s5453 else s5454
-  s5456 :: SWord8 = s5441 >>> 1
-  s5457 :: SWord8 = s24 | s5456
-  s5458 :: SWord8 = s26 & s5456
-  s5459 :: SWord8 = if s5417 then s5457 else s5458
-  s5460 :: SWord8 = if s29 then s5440 else s5425
-  s5461 :: SWord8 = if s170 then s5459 else s5460
-  s5462 :: SWord8 = s5451 + s5461
-  s5463 :: SBool = s5462 < s5461
-  s5464 :: SBool = s5462 < s5451
-  s5465 :: SBool = s5463 | s5464
-  s5466 :: SWord8 = s5462 >>> 1
-  s5467 :: SWord8 = s24 | s5466
-  s5468 :: SWord8 = s26 & s5466
-  s5469 :: SWord8 = if s5465 then s5467 else s5468
-  s5470 :: SWord8 = if s5444 then s5455 else s5469
-  s5471 :: SWord8 = if s5386 then s5436 else s5470
-  s5472 :: SWord8 = s5371 + s5423
-  s5473 :: SWord8 = s18 & s5472
-  s5474 :: SBool = s17 /= s5473
-  s5475 :: SWord8 = if s5474 then s5380 else s5381
-  s5476 :: SWord8 = if s22 then s5475 else s5377
-  s5477 :: SWord8 = s18 & s5476
-  s5478 :: SBool = s17 /= s5477
-  s5479 :: SBool = s_2 == s5478
-  s5480 :: SBool = s5472 < s5423
-  s5481 :: SBool = s5472 < s5371
-  s5482 :: SBool = s5480 | s5481
-  s5483 :: SWord8 = s5472 >>> 1
-  s5484 :: SWord8 = s24 | s5483
-  s5485 :: SWord8 = s26 & s5483
-  s5486 :: SWord8 = if s5482 then s5484 else s5485
-  s5487 :: SWord8 = s18 & s5486
-  s5488 :: SBool = s17 /= s5487
-  s5489 :: SWord8 = s5476 >>> 1
-  s5490 :: SWord8 = s24 | s5489
-  s5491 :: SWord8 = s26 & s5489
-  s5492 :: SWord8 = if s5394 then s5490 else s5491
-  s5493 :: SWord8 = if s22 then s5492 else s5475
-  s5494 :: SWord8 = s5493 >>> 1
-  s5495 :: SWord8 = s24 | s5494
-  s5496 :: SWord8 = s26 & s5494
-  s5497 :: SWord8 = if s5488 then s5495 else s5496
-  s5498 :: SWord8 = if s22 then s5497 else s5492
-  s5499 :: SWord8 = s18 & s5498
-  s5500 :: SBool = s17 /= s5499
-  s5501 :: SBool = s_2 == s5500
-  s5502 :: SWord8 = s5486 >>> 1
-  s5503 :: SWord8 = s24 | s5502
-  s5504 :: SWord8 = s26 & s5502
-  s5505 :: SWord8 = if s5478 then s5503 else s5504
-  s5506 :: SWord8 = s5505 >>> 1
-  s5507 :: SWord8 = s24 | s5506
-  s5508 :: SWord8 = s26 & s5506
-  s5509 :: SWord8 = if s5500 then s5507 else s5508
-  s5510 :: SWord8 = s18 & s5493
-  s5511 :: SBool = s17 /= s5510
-  s5512 :: SWord8 = s5498 >>> 1
-  s5513 :: SWord8 = s24 | s5512
-  s5514 :: SWord8 = s26 & s5512
-  s5515 :: SWord8 = if s5511 then s5513 else s5514
-  s5516 :: SWord8 = if s29 then s5475 else s5423
-  s5517 :: SWord8 = if s170 then s5492 else s5516
-  s5518 :: SWord8 = if s29 then s5497 else s5517
-  s5519 :: SWord8 = if s170 then s5515 else s5518
-  s5520 :: SWord8 = s5505 + s5519
-  s5521 :: SBool = s5520 < s5519
-  s5522 :: SBool = s5520 < s5505
-  s5523 :: SBool = s5521 | s5522
-  s5524 :: SWord8 = s5520 >>> 1
-  s5525 :: SWord8 = s24 | s5524
-  s5526 :: SWord8 = s26 & s5524
-  s5527 :: SWord8 = if s5523 then s5525 else s5526
-  s5528 :: SWord8 = if s5501 then s5509 else s5527
-  s5529 :: SWord8 = s5486 + s5517
-  s5530 :: SWord8 = s18 & s5529
-  s5531 :: SBool = s17 /= s5530
-  s5532 :: SWord8 = if s5531 then s5495 else s5496
-  s5533 :: SWord8 = if s22 then s5532 else s5492
-  s5534 :: SWord8 = s18 & s5533
-  s5535 :: SBool = s17 /= s5534
-  s5536 :: SBool = s_2 == s5535
-  s5537 :: SBool = s5529 < s5517
-  s5538 :: SBool = s5529 < s5486
-  s5539 :: SBool = s5537 | s5538
-  s5540 :: SWord8 = s5529 >>> 1
-  s5541 :: SWord8 = s24 | s5540
-  s5542 :: SWord8 = s26 & s5540
-  s5543 :: SWord8 = if s5539 then s5541 else s5542
-  s5544 :: SWord8 = s5543 >>> 1
-  s5545 :: SWord8 = s24 | s5544
-  s5546 :: SWord8 = s26 & s5544
-  s5547 :: SWord8 = if s5535 then s5545 else s5546
-  s5548 :: SWord8 = s5533 >>> 1
-  s5549 :: SWord8 = s24 | s5548
-  s5550 :: SWord8 = s26 & s5548
-  s5551 :: SWord8 = if s5511 then s5549 else s5550
-  s5552 :: SWord8 = if s29 then s5532 else s5517
-  s5553 :: SWord8 = if s170 then s5551 else s5552
-  s5554 :: SWord8 = s5543 + s5553
-  s5555 :: SBool = s5554 < s5553
-  s5556 :: SBool = s5554 < s5543
-  s5557 :: SBool = s5555 | s5556
-  s5558 :: SWord8 = s5554 >>> 1
-  s5559 :: SWord8 = s24 | s5558
-  s5560 :: SWord8 = s26 & s5558
-  s5561 :: SWord8 = if s5557 then s5559 else s5560
-  s5562 :: SWord8 = if s5536 then s5547 else s5561
-  s5563 :: SWord8 = if s5479 then s5528 else s5562
-  s5564 :: SWord8 = if s5364 then s5471 else s5563
-  s5565 :: SWord8 = if s5133 then s5356 else s5564
-  s5566 :: SWord8 = if s4670 then s5125 else s5565
-  s5567 :: SWord8 = if s3742 then s4662 else s5566
-  s5568 :: SWord8 = s3727 + s3863
-  s5569 :: SWord8 = s18 & s5568
-  s5570 :: SBool = s17 /= s5569
-  s5571 :: SWord8 = if s5570 then s3736 else s3737
-  s5572 :: SWord8 = if s22 then s5571 else s3733
-  s5573 :: SWord8 = s18 & s5572
-  s5574 :: SBool = s17 /= s5573
-  s5575 :: SBool = s_2 == s5574
-  s5576 :: SBool = s5568 < s3863
-  s5577 :: SBool = s5568 < s3727
-  s5578 :: SBool = s5576 | s5577
-  s5579 :: SWord8 = s5568 >>> 1
-  s5580 :: SWord8 = s24 | s5579
-  s5581 :: SWord8 = s26 & s5579
-  s5582 :: SWord8 = if s5578 then s5580 else s5581
-  s5583 :: SWord8 = s18 & s5582
-  s5584 :: SBool = s17 /= s5583
-  s5585 :: SWord8 = s5572 >>> 1
-  s5586 :: SWord8 = s24 | s5585
-  s5587 :: SWord8 = s26 & s5585
-  s5588 :: SWord8 = if s3750 then s5586 else s5587
-  s5589 :: SWord8 = if s22 then s5588 else s5571
-  s5590 :: SWord8 = s5589 >>> 1
-  s5591 :: SWord8 = s24 | s5590
-  s5592 :: SWord8 = s26 & s5590
-  s5593 :: SWord8 = if s5584 then s5591 else s5592
-  s5594 :: SWord8 = if s22 then s5593 else s5588
-  s5595 :: SWord8 = s18 & s5594
-  s5596 :: SBool = s17 /= s5595
-  s5597 :: SBool = s_2 == s5596
-  s5598 :: SWord8 = s5582 >>> 1
-  s5599 :: SWord8 = s24 | s5598
-  s5600 :: SWord8 = s26 & s5598
-  s5601 :: SWord8 = if s5574 then s5599 else s5600
-  s5602 :: SWord8 = s18 & s5601
-  s5603 :: SBool = s17 /= s5602
-  s5604 :: SWord8 = s18 & s5589
-  s5605 :: SBool = s17 /= s5604
-  s5606 :: SWord8 = s5594 >>> 1
-  s5607 :: SWord8 = s24 | s5606
-  s5608 :: SWord8 = s26 & s5606
-  s5609 :: SWord8 = if s5605 then s5607 else s5608
-  s5610 :: SWord8 = if s22 then s5609 else s5593
-  s5611 :: SWord8 = s5610 >>> 1
-  s5612 :: SWord8 = s24 | s5611
-  s5613 :: SWord8 = s26 & s5611
-  s5614 :: SWord8 = if s5603 then s5612 else s5613
-  s5615 :: SWord8 = if s22 then s5614 else s5609
-  s5616 :: SWord8 = s18 & s5615
-  s5617 :: SBool = s17 /= s5616
-  s5618 :: SBool = s_2 == s5617
-  s5619 :: SWord8 = s5601 >>> 1
-  s5620 :: SWord8 = s24 | s5619
-  s5621 :: SWord8 = s26 & s5619
-  s5622 :: SWord8 = if s5596 then s5620 else s5621
-  s5623 :: SWord8 = s18 & s5622
-  s5624 :: SBool = s17 /= s5623
-  s5625 :: SWord8 = s18 & s5610
-  s5626 :: SBool = s17 /= s5625
-  s5627 :: SWord8 = s5615 >>> 1
-  s5628 :: SWord8 = s24 | s5627
-  s5629 :: SWord8 = s26 & s5627
-  s5630 :: SWord8 = if s5626 then s5628 else s5629
-  s5631 :: SWord8 = if s22 then s5630 else s5614
-  s5632 :: SWord8 = s5631 >>> 1
-  s5633 :: SWord8 = s24 | s5632
-  s5634 :: SWord8 = s26 & s5632
-  s5635 :: SWord8 = if s5624 then s5633 else s5634
-  s5636 :: SWord8 = if s22 then s5635 else s5630
-  s5637 :: SWord8 = s18 & s5636
-  s5638 :: SBool = s17 /= s5637
-  s5639 :: SBool = s_2 == s5638
-  s5640 :: SWord8 = s5622 >>> 1
-  s5641 :: SWord8 = s24 | s5640
-  s5642 :: SWord8 = s26 & s5640
-  s5643 :: SWord8 = if s5617 then s5641 else s5642
-  s5644 :: SWord8 = s18 & s5643
-  s5645 :: SBool = s17 /= s5644
-  s5646 :: SWord8 = s18 & s5631
-  s5647 :: SBool = s17 /= s5646
-  s5648 :: SWord8 = s5636 >>> 1
-  s5649 :: SWord8 = s24 | s5648
-  s5650 :: SWord8 = s26 & s5648
-  s5651 :: SWord8 = if s5647 then s5649 else s5650
-  s5652 :: SWord8 = if s22 then s5651 else s5635
-  s5653 :: SWord8 = s5652 >>> 1
-  s5654 :: SWord8 = s24 | s5653
-  s5655 :: SWord8 = s26 & s5653
-  s5656 :: SWord8 = if s5645 then s5654 else s5655
-  s5657 :: SWord8 = if s22 then s5656 else s5651
-  s5658 :: SWord8 = s18 & s5657
-  s5659 :: SBool = s17 /= s5658
-  s5660 :: SBool = s_2 == s5659
-  s5661 :: SWord8 = s5643 >>> 1
-  s5662 :: SWord8 = s24 | s5661
-  s5663 :: SWord8 = s26 & s5661
-  s5664 :: SWord8 = if s5638 then s5662 else s5663
-  s5665 :: SWord8 = s18 & s5664
-  s5666 :: SBool = s17 /= s5665
-  s5667 :: SWord8 = s18 & s5652
-  s5668 :: SBool = s17 /= s5667
-  s5669 :: SWord8 = s5657 >>> 1
-  s5670 :: SWord8 = s24 | s5669
-  s5671 :: SWord8 = s26 & s5669
-  s5672 :: SWord8 = if s5668 then s5670 else s5671
-  s5673 :: SWord8 = if s22 then s5672 else s5656
-  s5674 :: SWord8 = s5673 >>> 1
-  s5675 :: SWord8 = s24 | s5674
-  s5676 :: SWord8 = s26 & s5674
-  s5677 :: SWord8 = if s5666 then s5675 else s5676
-  s5678 :: SWord8 = if s22 then s5677 else s5672
-  s5679 :: SWord8 = s18 & s5678
-  s5680 :: SBool = s17 /= s5679
-  s5681 :: SBool = s_2 == s5680
-  s5682 :: SWord8 = s5664 >>> 1
-  s5683 :: SWord8 = s24 | s5682
-  s5684 :: SWord8 = s26 & s5682
-  s5685 :: SWord8 = if s5659 then s5683 else s5684
-  s5686 :: SWord8 = s5685 >>> 1
-  s5687 :: SWord8 = s24 | s5686
-  s5688 :: SWord8 = s26 & s5686
-  s5689 :: SWord8 = if s5680 then s5687 else s5688
-  s5690 :: SWord8 = s18 & s5673
-  s5691 :: SBool = s17 /= s5690
-  s5692 :: SWord8 = s5678 >>> 1
-  s5693 :: SWord8 = s24 | s5692
-  s5694 :: SWord8 = s26 & s5692
-  s5695 :: SWord8 = if s5691 then s5693 else s5694
-  s5696 :: SWord8 = if s29 then s5571 else s3863
-  s5697 :: SWord8 = if s170 then s5588 else s5696
-  s5698 :: SWord8 = if s29 then s5593 else s5697
-  s5699 :: SWord8 = if s170 then s5609 else s5698
-  s5700 :: SWord8 = if s29 then s5614 else s5699
-  s5701 :: SWord8 = if s170 then s5630 else s5700
-  s5702 :: SWord8 = if s29 then s5635 else s5701
-  s5703 :: SWord8 = if s170 then s5651 else s5702
-  s5704 :: SWord8 = if s29 then s5656 else s5703
-  s5705 :: SWord8 = if s170 then s5672 else s5704
-  s5706 :: SWord8 = if s29 then s5677 else s5705
-  s5707 :: SWord8 = if s170 then s5695 else s5706
-  s5708 :: SWord8 = s5685 + s5707
-  s5709 :: SBool = s5708 < s5707
-  s5710 :: SBool = s5708 < s5685
-  s5711 :: SBool = s5709 | s5710
-  s5712 :: SWord8 = s5708 >>> 1
-  s5713 :: SWord8 = s24 | s5712
-  s5714 :: SWord8 = s26 & s5712
-  s5715 :: SWord8 = if s5711 then s5713 else s5714
-  s5716 :: SWord8 = if s5681 then s5689 else s5715
-  s5717 :: SWord8 = s5664 + s5705
-  s5718 :: SWord8 = s18 & s5717
-  s5719 :: SBool = s17 /= s5718
-  s5720 :: SWord8 = if s5719 then s5675 else s5676
-  s5721 :: SWord8 = if s22 then s5720 else s5672
-  s5722 :: SWord8 = s18 & s5721
-  s5723 :: SBool = s17 /= s5722
-  s5724 :: SBool = s_2 == s5723
-  s5725 :: SBool = s5717 < s5705
-  s5726 :: SBool = s5717 < s5664
-  s5727 :: SBool = s5725 | s5726
-  s5728 :: SWord8 = s5717 >>> 1
-  s5729 :: SWord8 = s24 | s5728
-  s5730 :: SWord8 = s26 & s5728
-  s5731 :: SWord8 = if s5727 then s5729 else s5730
-  s5732 :: SWord8 = s5731 >>> 1
-  s5733 :: SWord8 = s24 | s5732
-  s5734 :: SWord8 = s26 & s5732
-  s5735 :: SWord8 = if s5723 then s5733 else s5734
-  s5736 :: SWord8 = s5721 >>> 1
-  s5737 :: SWord8 = s24 | s5736
-  s5738 :: SWord8 = s26 & s5736
-  s5739 :: SWord8 = if s5691 then s5737 else s5738
-  s5740 :: SWord8 = if s29 then s5720 else s5705
-  s5741 :: SWord8 = if s170 then s5739 else s5740
-  s5742 :: SWord8 = s5731 + s5741
-  s5743 :: SBool = s5742 < s5741
-  s5744 :: SBool = s5742 < s5731
-  s5745 :: SBool = s5743 | s5744
-  s5746 :: SWord8 = s5742 >>> 1
-  s5747 :: SWord8 = s24 | s5746
-  s5748 :: SWord8 = s26 & s5746
-  s5749 :: SWord8 = if s5745 then s5747 else s5748
-  s5750 :: SWord8 = if s5724 then s5735 else s5749
-  s5751 :: SWord8 = if s5660 then s5716 else s5750
-  s5752 :: SWord8 = s5643 + s5703
-  s5753 :: SWord8 = s18 & s5752
-  s5754 :: SBool = s17 /= s5753
-  s5755 :: SWord8 = if s5754 then s5654 else s5655
-  s5756 :: SWord8 = if s22 then s5755 else s5651
-  s5757 :: SWord8 = s18 & s5756
-  s5758 :: SBool = s17 /= s5757
-  s5759 :: SBool = s_2 == s5758
-  s5760 :: SBool = s5752 < s5703
-  s5761 :: SBool = s5752 < s5643
-  s5762 :: SBool = s5760 | s5761
-  s5763 :: SWord8 = s5752 >>> 1
-  s5764 :: SWord8 = s24 | s5763
-  s5765 :: SWord8 = s26 & s5763
-  s5766 :: SWord8 = if s5762 then s5764 else s5765
-  s5767 :: SWord8 = s18 & s5766
-  s5768 :: SBool = s17 /= s5767
-  s5769 :: SWord8 = s5756 >>> 1
-  s5770 :: SWord8 = s24 | s5769
-  s5771 :: SWord8 = s26 & s5769
-  s5772 :: SWord8 = if s5668 then s5770 else s5771
-  s5773 :: SWord8 = if s22 then s5772 else s5755
-  s5774 :: SWord8 = s5773 >>> 1
-  s5775 :: SWord8 = s24 | s5774
-  s5776 :: SWord8 = s26 & s5774
-  s5777 :: SWord8 = if s5768 then s5775 else s5776
-  s5778 :: SWord8 = if s22 then s5777 else s5772
-  s5779 :: SWord8 = s18 & s5778
-  s5780 :: SBool = s17 /= s5779
-  s5781 :: SBool = s_2 == s5780
-  s5782 :: SWord8 = s5766 >>> 1
-  s5783 :: SWord8 = s24 | s5782
-  s5784 :: SWord8 = s26 & s5782
-  s5785 :: SWord8 = if s5758 then s5783 else s5784
-  s5786 :: SWord8 = s5785 >>> 1
-  s5787 :: SWord8 = s24 | s5786
-  s5788 :: SWord8 = s26 & s5786
-  s5789 :: SWord8 = if s5780 then s5787 else s5788
-  s5790 :: SWord8 = s18 & s5773
-  s5791 :: SBool = s17 /= s5790
-  s5792 :: SWord8 = s5778 >>> 1
-  s5793 :: SWord8 = s24 | s5792
-  s5794 :: SWord8 = s26 & s5792
-  s5795 :: SWord8 = if s5791 then s5793 else s5794
-  s5796 :: SWord8 = if s29 then s5755 else s5703
-  s5797 :: SWord8 = if s170 then s5772 else s5796
-  s5798 :: SWord8 = if s29 then s5777 else s5797
-  s5799 :: SWord8 = if s170 then s5795 else s5798
-  s5800 :: SWord8 = s5785 + s5799
-  s5801 :: SBool = s5800 < s5799
-  s5802 :: SBool = s5800 < s5785
-  s5803 :: SBool = s5801 | s5802
-  s5804 :: SWord8 = s5800 >>> 1
-  s5805 :: SWord8 = s24 | s5804
-  s5806 :: SWord8 = s26 & s5804
-  s5807 :: SWord8 = if s5803 then s5805 else s5806
-  s5808 :: SWord8 = if s5781 then s5789 else s5807
-  s5809 :: SWord8 = s5766 + s5797
-  s5810 :: SWord8 = s18 & s5809
-  s5811 :: SBool = s17 /= s5810
-  s5812 :: SWord8 = if s5811 then s5775 else s5776
-  s5813 :: SWord8 = if s22 then s5812 else s5772
-  s5814 :: SWord8 = s18 & s5813
-  s5815 :: SBool = s17 /= s5814
-  s5816 :: SBool = s_2 == s5815
-  s5817 :: SBool = s5809 < s5797
-  s5818 :: SBool = s5809 < s5766
-  s5819 :: SBool = s5817 | s5818
-  s5820 :: SWord8 = s5809 >>> 1
-  s5821 :: SWord8 = s24 | s5820
-  s5822 :: SWord8 = s26 & s5820
-  s5823 :: SWord8 = if s5819 then s5821 else s5822
-  s5824 :: SWord8 = s5823 >>> 1
-  s5825 :: SWord8 = s24 | s5824
-  s5826 :: SWord8 = s26 & s5824
-  s5827 :: SWord8 = if s5815 then s5825 else s5826
-  s5828 :: SWord8 = s5813 >>> 1
-  s5829 :: SWord8 = s24 | s5828
-  s5830 :: SWord8 = s26 & s5828
-  s5831 :: SWord8 = if s5791 then s5829 else s5830
-  s5832 :: SWord8 = if s29 then s5812 else s5797
-  s5833 :: SWord8 = if s170 then s5831 else s5832
-  s5834 :: SWord8 = s5823 + s5833
-  s5835 :: SBool = s5834 < s5833
-  s5836 :: SBool = s5834 < s5823
-  s5837 :: SBool = s5835 | s5836
-  s5838 :: SWord8 = s5834 >>> 1
-  s5839 :: SWord8 = s24 | s5838
-  s5840 :: SWord8 = s26 & s5838
-  s5841 :: SWord8 = if s5837 then s5839 else s5840
-  s5842 :: SWord8 = if s5816 then s5827 else s5841
-  s5843 :: SWord8 = if s5759 then s5808 else s5842
-  s5844 :: SWord8 = if s5639 then s5751 else s5843
-  s5845 :: SWord8 = s5622 + s5701
-  s5846 :: SWord8 = s18 & s5845
-  s5847 :: SBool = s17 /= s5846
-  s5848 :: SWord8 = if s5847 then s5633 else s5634
-  s5849 :: SWord8 = if s22 then s5848 else s5630
-  s5850 :: SWord8 = s18 & s5849
-  s5851 :: SBool = s17 /= s5850
-  s5852 :: SBool = s_2 == s5851
-  s5853 :: SBool = s5845 < s5701
-  s5854 :: SBool = s5845 < s5622
-  s5855 :: SBool = s5853 | s5854
-  s5856 :: SWord8 = s5845 >>> 1
-  s5857 :: SWord8 = s24 | s5856
-  s5858 :: SWord8 = s26 & s5856
-  s5859 :: SWord8 = if s5855 then s5857 else s5858
-  s5860 :: SWord8 = s18 & s5859
-  s5861 :: SBool = s17 /= s5860
-  s5862 :: SWord8 = s5849 >>> 1
-  s5863 :: SWord8 = s24 | s5862
-  s5864 :: SWord8 = s26 & s5862
-  s5865 :: SWord8 = if s5647 then s5863 else s5864
-  s5866 :: SWord8 = if s22 then s5865 else s5848
-  s5867 :: SWord8 = s5866 >>> 1
-  s5868 :: SWord8 = s24 | s5867
-  s5869 :: SWord8 = s26 & s5867
-  s5870 :: SWord8 = if s5861 then s5868 else s5869
-  s5871 :: SWord8 = if s22 then s5870 else s5865
-  s5872 :: SWord8 = s18 & s5871
-  s5873 :: SBool = s17 /= s5872
-  s5874 :: SBool = s_2 == s5873
-  s5875 :: SWord8 = s5859 >>> 1
-  s5876 :: SWord8 = s24 | s5875
-  s5877 :: SWord8 = s26 & s5875
-  s5878 :: SWord8 = if s5851 then s5876 else s5877
-  s5879 :: SWord8 = s18 & s5878
-  s5880 :: SBool = s17 /= s5879
-  s5881 :: SWord8 = s18 & s5866
-  s5882 :: SBool = s17 /= s5881
-  s5883 :: SWord8 = s5871 >>> 1
-  s5884 :: SWord8 = s24 | s5883
-  s5885 :: SWord8 = s26 & s5883
-  s5886 :: SWord8 = if s5882 then s5884 else s5885
-  s5887 :: SWord8 = if s22 then s5886 else s5870
-  s5888 :: SWord8 = s5887 >>> 1
-  s5889 :: SWord8 = s24 | s5888
-  s5890 :: SWord8 = s26 & s5888
-  s5891 :: SWord8 = if s5880 then s5889 else s5890
-  s5892 :: SWord8 = if s22 then s5891 else s5886
-  s5893 :: SWord8 = s18 & s5892
-  s5894 :: SBool = s17 /= s5893
-  s5895 :: SBool = s_2 == s5894
-  s5896 :: SWord8 = s5878 >>> 1
-  s5897 :: SWord8 = s24 | s5896
-  s5898 :: SWord8 = s26 & s5896
-  s5899 :: SWord8 = if s5873 then s5897 else s5898
-  s5900 :: SWord8 = s5899 >>> 1
-  s5901 :: SWord8 = s24 | s5900
-  s5902 :: SWord8 = s26 & s5900
-  s5903 :: SWord8 = if s5894 then s5901 else s5902
-  s5904 :: SWord8 = s18 & s5887
-  s5905 :: SBool = s17 /= s5904
-  s5906 :: SWord8 = s5892 >>> 1
-  s5907 :: SWord8 = s24 | s5906
-  s5908 :: SWord8 = s26 & s5906
-  s5909 :: SWord8 = if s5905 then s5907 else s5908
-  s5910 :: SWord8 = if s29 then s5848 else s5701
-  s5911 :: SWord8 = if s170 then s5865 else s5910
-  s5912 :: SWord8 = if s29 then s5870 else s5911
-  s5913 :: SWord8 = if s170 then s5886 else s5912
-  s5914 :: SWord8 = if s29 then s5891 else s5913
-  s5915 :: SWord8 = if s170 then s5909 else s5914
-  s5916 :: SWord8 = s5899 + s5915
-  s5917 :: SBool = s5916 < s5915
-  s5918 :: SBool = s5916 < s5899
-  s5919 :: SBool = s5917 | s5918
-  s5920 :: SWord8 = s5916 >>> 1
-  s5921 :: SWord8 = s24 | s5920
-  s5922 :: SWord8 = s26 & s5920
-  s5923 :: SWord8 = if s5919 then s5921 else s5922
-  s5924 :: SWord8 = if s5895 then s5903 else s5923
-  s5925 :: SWord8 = s5878 + s5913
-  s5926 :: SWord8 = s18 & s5925
-  s5927 :: SBool = s17 /= s5926
-  s5928 :: SWord8 = if s5927 then s5889 else s5890
-  s5929 :: SWord8 = if s22 then s5928 else s5886
-  s5930 :: SWord8 = s18 & s5929
-  s5931 :: SBool = s17 /= s5930
-  s5932 :: SBool = s_2 == s5931
-  s5933 :: SBool = s5925 < s5913
-  s5934 :: SBool = s5925 < s5878
-  s5935 :: SBool = s5933 | s5934
-  s5936 :: SWord8 = s5925 >>> 1
-  s5937 :: SWord8 = s24 | s5936
-  s5938 :: SWord8 = s26 & s5936
-  s5939 :: SWord8 = if s5935 then s5937 else s5938
-  s5940 :: SWord8 = s5939 >>> 1
-  s5941 :: SWord8 = s24 | s5940
-  s5942 :: SWord8 = s26 & s5940
-  s5943 :: SWord8 = if s5931 then s5941 else s5942
-  s5944 :: SWord8 = s5929 >>> 1
-  s5945 :: SWord8 = s24 | s5944
-  s5946 :: SWord8 = s26 & s5944
-  s5947 :: SWord8 = if s5905 then s5945 else s5946
-  s5948 :: SWord8 = if s29 then s5928 else s5913
-  s5949 :: SWord8 = if s170 then s5947 else s5948
-  s5950 :: SWord8 = s5939 + s5949
-  s5951 :: SBool = s5950 < s5949
-  s5952 :: SBool = s5950 < s5939
-  s5953 :: SBool = s5951 | s5952
-  s5954 :: SWord8 = s5950 >>> 1
-  s5955 :: SWord8 = s24 | s5954
-  s5956 :: SWord8 = s26 & s5954
-  s5957 :: SWord8 = if s5953 then s5955 else s5956
-  s5958 :: SWord8 = if s5932 then s5943 else s5957
-  s5959 :: SWord8 = if s5874 then s5924 else s5958
-  s5960 :: SWord8 = s5859 + s5911
-  s5961 :: SWord8 = s18 & s5960
-  s5962 :: SBool = s17 /= s5961
-  s5963 :: SWord8 = if s5962 then s5868 else s5869
-  s5964 :: SWord8 = if s22 then s5963 else s5865
-  s5965 :: SWord8 = s18 & s5964
-  s5966 :: SBool = s17 /= s5965
-  s5967 :: SBool = s_2 == s5966
-  s5968 :: SBool = s5960 < s5911
-  s5969 :: SBool = s5960 < s5859
-  s5970 :: SBool = s5968 | s5969
-  s5971 :: SWord8 = s5960 >>> 1
-  s5972 :: SWord8 = s24 | s5971
-  s5973 :: SWord8 = s26 & s5971
-  s5974 :: SWord8 = if s5970 then s5972 else s5973
-  s5975 :: SWord8 = s18 & s5974
-  s5976 :: SBool = s17 /= s5975
-  s5977 :: SWord8 = s5964 >>> 1
-  s5978 :: SWord8 = s24 | s5977
-  s5979 :: SWord8 = s26 & s5977
-  s5980 :: SWord8 = if s5882 then s5978 else s5979
-  s5981 :: SWord8 = if s22 then s5980 else s5963
-  s5982 :: SWord8 = s5981 >>> 1
-  s5983 :: SWord8 = s24 | s5982
-  s5984 :: SWord8 = s26 & s5982
-  s5985 :: SWord8 = if s5976 then s5983 else s5984
-  s5986 :: SWord8 = if s22 then s5985 else s5980
-  s5987 :: SWord8 = s18 & s5986
-  s5988 :: SBool = s17 /= s5987
-  s5989 :: SBool = s_2 == s5988
-  s5990 :: SWord8 = s5974 >>> 1
-  s5991 :: SWord8 = s24 | s5990
-  s5992 :: SWord8 = s26 & s5990
-  s5993 :: SWord8 = if s5966 then s5991 else s5992
-  s5994 :: SWord8 = s5993 >>> 1
-  s5995 :: SWord8 = s24 | s5994
-  s5996 :: SWord8 = s26 & s5994
-  s5997 :: SWord8 = if s5988 then s5995 else s5996
-  s5998 :: SWord8 = s18 & s5981
-  s5999 :: SBool = s17 /= s5998
-  s6000 :: SWord8 = s5986 >>> 1
-  s6001 :: SWord8 = s24 | s6000
-  s6002 :: SWord8 = s26 & s6000
-  s6003 :: SWord8 = if s5999 then s6001 else s6002
-  s6004 :: SWord8 = if s29 then s5963 else s5911
-  s6005 :: SWord8 = if s170 then s5980 else s6004
-  s6006 :: SWord8 = if s29 then s5985 else s6005
-  s6007 :: SWord8 = if s170 then s6003 else s6006
-  s6008 :: SWord8 = s5993 + s6007
-  s6009 :: SBool = s6008 < s6007
-  s6010 :: SBool = s6008 < s5993
-  s6011 :: SBool = s6009 | s6010
-  s6012 :: SWord8 = s6008 >>> 1
-  s6013 :: SWord8 = s24 | s6012
-  s6014 :: SWord8 = s26 & s6012
-  s6015 :: SWord8 = if s6011 then s6013 else s6014
-  s6016 :: SWord8 = if s5989 then s5997 else s6015
-  s6017 :: SWord8 = s5974 + s6005
-  s6018 :: SWord8 = s18 & s6017
-  s6019 :: SBool = s17 /= s6018
-  s6020 :: SWord8 = if s6019 then s5983 else s5984
-  s6021 :: SWord8 = if s22 then s6020 else s5980
-  s6022 :: SWord8 = s18 & s6021
-  s6023 :: SBool = s17 /= s6022
-  s6024 :: SBool = s_2 == s6023
-  s6025 :: SBool = s6017 < s6005
-  s6026 :: SBool = s6017 < s5974
-  s6027 :: SBool = s6025 | s6026
-  s6028 :: SWord8 = s6017 >>> 1
-  s6029 :: SWord8 = s24 | s6028
-  s6030 :: SWord8 = s26 & s6028
-  s6031 :: SWord8 = if s6027 then s6029 else s6030
-  s6032 :: SWord8 = s6031 >>> 1
-  s6033 :: SWord8 = s24 | s6032
-  s6034 :: SWord8 = s26 & s6032
-  s6035 :: SWord8 = if s6023 then s6033 else s6034
-  s6036 :: SWord8 = s6021 >>> 1
-  s6037 :: SWord8 = s24 | s6036
-  s6038 :: SWord8 = s26 & s6036
-  s6039 :: SWord8 = if s5999 then s6037 else s6038
-  s6040 :: SWord8 = if s29 then s6020 else s6005
-  s6041 :: SWord8 = if s170 then s6039 else s6040
-  s6042 :: SWord8 = s6031 + s6041
-  s6043 :: SBool = s6042 < s6041
-  s6044 :: SBool = s6042 < s6031
-  s6045 :: SBool = s6043 | s6044
-  s6046 :: SWord8 = s6042 >>> 1
-  s6047 :: SWord8 = s24 | s6046
-  s6048 :: SWord8 = s26 & s6046
-  s6049 :: SWord8 = if s6045 then s6047 else s6048
-  s6050 :: SWord8 = if s6024 then s6035 else s6049
-  s6051 :: SWord8 = if s5967 then s6016 else s6050
-  s6052 :: SWord8 = if s5852 then s5959 else s6051
-  s6053 :: SWord8 = if s5618 then s5844 else s6052
-  s6054 :: SWord8 = s5601 + s5699
-  s6055 :: SWord8 = s18 & s6054
-  s6056 :: SBool = s17 /= s6055
-  s6057 :: SWord8 = if s6056 then s5612 else s5613
-  s6058 :: SWord8 = if s22 then s6057 else s5609
-  s6059 :: SWord8 = s18 & s6058
-  s6060 :: SBool = s17 /= s6059
-  s6061 :: SBool = s_2 == s6060
-  s6062 :: SBool = s6054 < s5699
-  s6063 :: SBool = s6054 < s5601
-  s6064 :: SBool = s6062 | s6063
-  s6065 :: SWord8 = s6054 >>> 1
-  s6066 :: SWord8 = s24 | s6065
-  s6067 :: SWord8 = s26 & s6065
-  s6068 :: SWord8 = if s6064 then s6066 else s6067
-  s6069 :: SWord8 = s18 & s6068
-  s6070 :: SBool = s17 /= s6069
-  s6071 :: SWord8 = s6058 >>> 1
-  s6072 :: SWord8 = s24 | s6071
-  s6073 :: SWord8 = s26 & s6071
-  s6074 :: SWord8 = if s5626 then s6072 else s6073
-  s6075 :: SWord8 = if s22 then s6074 else s6057
-  s6076 :: SWord8 = s6075 >>> 1
-  s6077 :: SWord8 = s24 | s6076
-  s6078 :: SWord8 = s26 & s6076
-  s6079 :: SWord8 = if s6070 then s6077 else s6078
-  s6080 :: SWord8 = if s22 then s6079 else s6074
-  s6081 :: SWord8 = s18 & s6080
-  s6082 :: SBool = s17 /= s6081
-  s6083 :: SBool = s_2 == s6082
-  s6084 :: SWord8 = s6068 >>> 1
-  s6085 :: SWord8 = s24 | s6084
-  s6086 :: SWord8 = s26 & s6084
-  s6087 :: SWord8 = if s6060 then s6085 else s6086
-  s6088 :: SWord8 = s18 & s6087
-  s6089 :: SBool = s17 /= s6088
-  s6090 :: SWord8 = s18 & s6075
-  s6091 :: SBool = s17 /= s6090
-  s6092 :: SWord8 = s6080 >>> 1
-  s6093 :: SWord8 = s24 | s6092
-  s6094 :: SWord8 = s26 & s6092
-  s6095 :: SWord8 = if s6091 then s6093 else s6094
-  s6096 :: SWord8 = if s22 then s6095 else s6079
-  s6097 :: SWord8 = s6096 >>> 1
-  s6098 :: SWord8 = s24 | s6097
-  s6099 :: SWord8 = s26 & s6097
-  s6100 :: SWord8 = if s6089 then s6098 else s6099
-  s6101 :: SWord8 = if s22 then s6100 else s6095
-  s6102 :: SWord8 = s18 & s6101
-  s6103 :: SBool = s17 /= s6102
-  s6104 :: SBool = s_2 == s6103
-  s6105 :: SWord8 = s6087 >>> 1
-  s6106 :: SWord8 = s24 | s6105
-  s6107 :: SWord8 = s26 & s6105
-  s6108 :: SWord8 = if s6082 then s6106 else s6107
-  s6109 :: SWord8 = s18 & s6108
-  s6110 :: SBool = s17 /= s6109
-  s6111 :: SWord8 = s18 & s6096
-  s6112 :: SBool = s17 /= s6111
-  s6113 :: SWord8 = s6101 >>> 1
-  s6114 :: SWord8 = s24 | s6113
-  s6115 :: SWord8 = s26 & s6113
-  s6116 :: SWord8 = if s6112 then s6114 else s6115
-  s6117 :: SWord8 = if s22 then s6116 else s6100
-  s6118 :: SWord8 = s6117 >>> 1
-  s6119 :: SWord8 = s24 | s6118
-  s6120 :: SWord8 = s26 & s6118
-  s6121 :: SWord8 = if s6110 then s6119 else s6120
-  s6122 :: SWord8 = if s22 then s6121 else s6116
-  s6123 :: SWord8 = s18 & s6122
-  s6124 :: SBool = s17 /= s6123
-  s6125 :: SBool = s_2 == s6124
-  s6126 :: SWord8 = s6108 >>> 1
-  s6127 :: SWord8 = s24 | s6126
-  s6128 :: SWord8 = s26 & s6126
-  s6129 :: SWord8 = if s6103 then s6127 else s6128
-  s6130 :: SWord8 = s6129 >>> 1
-  s6131 :: SWord8 = s24 | s6130
-  s6132 :: SWord8 = s26 & s6130
-  s6133 :: SWord8 = if s6124 then s6131 else s6132
-  s6134 :: SWord8 = s18 & s6117
-  s6135 :: SBool = s17 /= s6134
-  s6136 :: SWord8 = s6122 >>> 1
-  s6137 :: SWord8 = s24 | s6136
-  s6138 :: SWord8 = s26 & s6136
-  s6139 :: SWord8 = if s6135 then s6137 else s6138
-  s6140 :: SWord8 = if s29 then s6057 else s5699
-  s6141 :: SWord8 = if s170 then s6074 else s6140
-  s6142 :: SWord8 = if s29 then s6079 else s6141
-  s6143 :: SWord8 = if s170 then s6095 else s6142
-  s6144 :: SWord8 = if s29 then s6100 else s6143
-  s6145 :: SWord8 = if s170 then s6116 else s6144
-  s6146 :: SWord8 = if s29 then s6121 else s6145
-  s6147 :: SWord8 = if s170 then s6139 else s6146
-  s6148 :: SWord8 = s6129 + s6147
-  s6149 :: SBool = s6148 < s6147
-  s6150 :: SBool = s6148 < s6129
-  s6151 :: SBool = s6149 | s6150
-  s6152 :: SWord8 = s6148 >>> 1
-  s6153 :: SWord8 = s24 | s6152
-  s6154 :: SWord8 = s26 & s6152
-  s6155 :: SWord8 = if s6151 then s6153 else s6154
-  s6156 :: SWord8 = if s6125 then s6133 else s6155
-  s6157 :: SWord8 = s6108 + s6145
-  s6158 :: SWord8 = s18 & s6157
-  s6159 :: SBool = s17 /= s6158
-  s6160 :: SWord8 = if s6159 then s6119 else s6120
-  s6161 :: SWord8 = if s22 then s6160 else s6116
-  s6162 :: SWord8 = s18 & s6161
-  s6163 :: SBool = s17 /= s6162
-  s6164 :: SBool = s_2 == s6163
-  s6165 :: SBool = s6157 < s6145
-  s6166 :: SBool = s6157 < s6108
-  s6167 :: SBool = s6165 | s6166
-  s6168 :: SWord8 = s6157 >>> 1
-  s6169 :: SWord8 = s24 | s6168
-  s6170 :: SWord8 = s26 & s6168
-  s6171 :: SWord8 = if s6167 then s6169 else s6170
-  s6172 :: SWord8 = s6171 >>> 1
-  s6173 :: SWord8 = s24 | s6172
-  s6174 :: SWord8 = s26 & s6172
-  s6175 :: SWord8 = if s6163 then s6173 else s6174
-  s6176 :: SWord8 = s6161 >>> 1
-  s6177 :: SWord8 = s24 | s6176
-  s6178 :: SWord8 = s26 & s6176
-  s6179 :: SWord8 = if s6135 then s6177 else s6178
-  s6180 :: SWord8 = if s29 then s6160 else s6145
-  s6181 :: SWord8 = if s170 then s6179 else s6180
-  s6182 :: SWord8 = s6171 + s6181
-  s6183 :: SBool = s6182 < s6181
-  s6184 :: SBool = s6182 < s6171
-  s6185 :: SBool = s6183 | s6184
-  s6186 :: SWord8 = s6182 >>> 1
-  s6187 :: SWord8 = s24 | s6186
-  s6188 :: SWord8 = s26 & s6186
-  s6189 :: SWord8 = if s6185 then s6187 else s6188
-  s6190 :: SWord8 = if s6164 then s6175 else s6189
-  s6191 :: SWord8 = if s6104 then s6156 else s6190
-  s6192 :: SWord8 = s6087 + s6143
-  s6193 :: SWord8 = s18 & s6192
-  s6194 :: SBool = s17 /= s6193
-  s6195 :: SWord8 = if s6194 then s6098 else s6099
-  s6196 :: SWord8 = if s22 then s6195 else s6095
-  s6197 :: SWord8 = s18 & s6196
-  s6198 :: SBool = s17 /= s6197
-  s6199 :: SBool = s_2 == s6198
-  s6200 :: SBool = s6192 < s6143
-  s6201 :: SBool = s6192 < s6087
-  s6202 :: SBool = s6200 | s6201
-  s6203 :: SWord8 = s6192 >>> 1
-  s6204 :: SWord8 = s24 | s6203
-  s6205 :: SWord8 = s26 & s6203
-  s6206 :: SWord8 = if s6202 then s6204 else s6205
-  s6207 :: SWord8 = s18 & s6206
-  s6208 :: SBool = s17 /= s6207
-  s6209 :: SWord8 = s6196 >>> 1
-  s6210 :: SWord8 = s24 | s6209
-  s6211 :: SWord8 = s26 & s6209
-  s6212 :: SWord8 = if s6112 then s6210 else s6211
-  s6213 :: SWord8 = if s22 then s6212 else s6195
-  s6214 :: SWord8 = s6213 >>> 1
-  s6215 :: SWord8 = s24 | s6214
-  s6216 :: SWord8 = s26 & s6214
-  s6217 :: SWord8 = if s6208 then s6215 else s6216
-  s6218 :: SWord8 = if s22 then s6217 else s6212
-  s6219 :: SWord8 = s18 & s6218
-  s6220 :: SBool = s17 /= s6219
-  s6221 :: SBool = s_2 == s6220
-  s6222 :: SWord8 = s6206 >>> 1
-  s6223 :: SWord8 = s24 | s6222
-  s6224 :: SWord8 = s26 & s6222
-  s6225 :: SWord8 = if s6198 then s6223 else s6224
-  s6226 :: SWord8 = s6225 >>> 1
-  s6227 :: SWord8 = s24 | s6226
-  s6228 :: SWord8 = s26 & s6226
-  s6229 :: SWord8 = if s6220 then s6227 else s6228
-  s6230 :: SWord8 = s18 & s6213
-  s6231 :: SBool = s17 /= s6230
-  s6232 :: SWord8 = s6218 >>> 1
-  s6233 :: SWord8 = s24 | s6232
-  s6234 :: SWord8 = s26 & s6232
-  s6235 :: SWord8 = if s6231 then s6233 else s6234
-  s6236 :: SWord8 = if s29 then s6195 else s6143
-  s6237 :: SWord8 = if s170 then s6212 else s6236
-  s6238 :: SWord8 = if s29 then s6217 else s6237
-  s6239 :: SWord8 = if s170 then s6235 else s6238
-  s6240 :: SWord8 = s6225 + s6239
-  s6241 :: SBool = s6240 < s6239
-  s6242 :: SBool = s6240 < s6225
-  s6243 :: SBool = s6241 | s6242
-  s6244 :: SWord8 = s6240 >>> 1
-  s6245 :: SWord8 = s24 | s6244
-  s6246 :: SWord8 = s26 & s6244
-  s6247 :: SWord8 = if s6243 then s6245 else s6246
-  s6248 :: SWord8 = if s6221 then s6229 else s6247
-  s6249 :: SWord8 = s6206 + s6237
-  s6250 :: SWord8 = s18 & s6249
-  s6251 :: SBool = s17 /= s6250
-  s6252 :: SWord8 = if s6251 then s6215 else s6216
-  s6253 :: SWord8 = if s22 then s6252 else s6212
-  s6254 :: SWord8 = s18 & s6253
-  s6255 :: SBool = s17 /= s6254
-  s6256 :: SBool = s_2 == s6255
-  s6257 :: SBool = s6249 < s6237
-  s6258 :: SBool = s6249 < s6206
-  s6259 :: SBool = s6257 | s6258
-  s6260 :: SWord8 = s6249 >>> 1
-  s6261 :: SWord8 = s24 | s6260
-  s6262 :: SWord8 = s26 & s6260
-  s6263 :: SWord8 = if s6259 then s6261 else s6262
-  s6264 :: SWord8 = s6263 >>> 1
-  s6265 :: SWord8 = s24 | s6264
-  s6266 :: SWord8 = s26 & s6264
-  s6267 :: SWord8 = if s6255 then s6265 else s6266
-  s6268 :: SWord8 = s6253 >>> 1
-  s6269 :: SWord8 = s24 | s6268
-  s6270 :: SWord8 = s26 & s6268
-  s6271 :: SWord8 = if s6231 then s6269 else s6270
-  s6272 :: SWord8 = if s29 then s6252 else s6237
-  s6273 :: SWord8 = if s170 then s6271 else s6272
-  s6274 :: SWord8 = s6263 + s6273
-  s6275 :: SBool = s6274 < s6273
-  s6276 :: SBool = s6274 < s6263
-  s6277 :: SBool = s6275 | s6276
-  s6278 :: SWord8 = s6274 >>> 1
-  s6279 :: SWord8 = s24 | s6278
-  s6280 :: SWord8 = s26 & s6278
-  s6281 :: SWord8 = if s6277 then s6279 else s6280
-  s6282 :: SWord8 = if s6256 then s6267 else s6281
-  s6283 :: SWord8 = if s6199 then s6248 else s6282
-  s6284 :: SWord8 = if s6083 then s6191 else s6283
-  s6285 :: SWord8 = s6068 + s6141
-  s6286 :: SWord8 = s18 & s6285
-  s6287 :: SBool = s17 /= s6286
-  s6288 :: SWord8 = if s6287 then s6077 else s6078
-  s6289 :: SWord8 = if s22 then s6288 else s6074
-  s6290 :: SWord8 = s18 & s6289
-  s6291 :: SBool = s17 /= s6290
-  s6292 :: SBool = s_2 == s6291
-  s6293 :: SBool = s6285 < s6141
-  s6294 :: SBool = s6285 < s6068
-  s6295 :: SBool = s6293 | s6294
-  s6296 :: SWord8 = s6285 >>> 1
-  s6297 :: SWord8 = s24 | s6296
-  s6298 :: SWord8 = s26 & s6296
-  s6299 :: SWord8 = if s6295 then s6297 else s6298
-  s6300 :: SWord8 = s18 & s6299
-  s6301 :: SBool = s17 /= s6300
-  s6302 :: SWord8 = s6289 >>> 1
-  s6303 :: SWord8 = s24 | s6302
-  s6304 :: SWord8 = s26 & s6302
-  s6305 :: SWord8 = if s6091 then s6303 else s6304
-  s6306 :: SWord8 = if s22 then s6305 else s6288
-  s6307 :: SWord8 = s6306 >>> 1
-  s6308 :: SWord8 = s24 | s6307
-  s6309 :: SWord8 = s26 & s6307
-  s6310 :: SWord8 = if s6301 then s6308 else s6309
-  s6311 :: SWord8 = if s22 then s6310 else s6305
-  s6312 :: SWord8 = s18 & s6311
-  s6313 :: SBool = s17 /= s6312
-  s6314 :: SBool = s_2 == s6313
-  s6315 :: SWord8 = s6299 >>> 1
-  s6316 :: SWord8 = s24 | s6315
-  s6317 :: SWord8 = s26 & s6315
-  s6318 :: SWord8 = if s6291 then s6316 else s6317
-  s6319 :: SWord8 = s18 & s6318
-  s6320 :: SBool = s17 /= s6319
-  s6321 :: SWord8 = s18 & s6306
-  s6322 :: SBool = s17 /= s6321
-  s6323 :: SWord8 = s6311 >>> 1
-  s6324 :: SWord8 = s24 | s6323
-  s6325 :: SWord8 = s26 & s6323
-  s6326 :: SWord8 = if s6322 then s6324 else s6325
-  s6327 :: SWord8 = if s22 then s6326 else s6310
-  s6328 :: SWord8 = s6327 >>> 1
-  s6329 :: SWord8 = s24 | s6328
-  s6330 :: SWord8 = s26 & s6328
-  s6331 :: SWord8 = if s6320 then s6329 else s6330
-  s6332 :: SWord8 = if s22 then s6331 else s6326
-  s6333 :: SWord8 = s18 & s6332
-  s6334 :: SBool = s17 /= s6333
-  s6335 :: SBool = s_2 == s6334
-  s6336 :: SWord8 = s6318 >>> 1
-  s6337 :: SWord8 = s24 | s6336
-  s6338 :: SWord8 = s26 & s6336
-  s6339 :: SWord8 = if s6313 then s6337 else s6338
-  s6340 :: SWord8 = s6339 >>> 1
-  s6341 :: SWord8 = s24 | s6340
-  s6342 :: SWord8 = s26 & s6340
-  s6343 :: SWord8 = if s6334 then s6341 else s6342
-  s6344 :: SWord8 = s18 & s6327
-  s6345 :: SBool = s17 /= s6344
-  s6346 :: SWord8 = s6332 >>> 1
-  s6347 :: SWord8 = s24 | s6346
-  s6348 :: SWord8 = s26 & s6346
-  s6349 :: SWord8 = if s6345 then s6347 else s6348
-  s6350 :: SWord8 = if s29 then s6288 else s6141
-  s6351 :: SWord8 = if s170 then s6305 else s6350
-  s6352 :: SWord8 = if s29 then s6310 else s6351
-  s6353 :: SWord8 = if s170 then s6326 else s6352
-  s6354 :: SWord8 = if s29 then s6331 else s6353
-  s6355 :: SWord8 = if s170 then s6349 else s6354
-  s6356 :: SWord8 = s6339 + s6355
-  s6357 :: SBool = s6356 < s6355
-  s6358 :: SBool = s6356 < s6339
-  s6359 :: SBool = s6357 | s6358
-  s6360 :: SWord8 = s6356 >>> 1
-  s6361 :: SWord8 = s24 | s6360
-  s6362 :: SWord8 = s26 & s6360
-  s6363 :: SWord8 = if s6359 then s6361 else s6362
-  s6364 :: SWord8 = if s6335 then s6343 else s6363
-  s6365 :: SWord8 = s6318 + s6353
-  s6366 :: SWord8 = s18 & s6365
-  s6367 :: SBool = s17 /= s6366
-  s6368 :: SWord8 = if s6367 then s6329 else s6330
-  s6369 :: SWord8 = if s22 then s6368 else s6326
-  s6370 :: SWord8 = s18 & s6369
-  s6371 :: SBool = s17 /= s6370
-  s6372 :: SBool = s_2 == s6371
-  s6373 :: SBool = s6365 < s6353
-  s6374 :: SBool = s6365 < s6318
-  s6375 :: SBool = s6373 | s6374
-  s6376 :: SWord8 = s6365 >>> 1
-  s6377 :: SWord8 = s24 | s6376
-  s6378 :: SWord8 = s26 & s6376
-  s6379 :: SWord8 = if s6375 then s6377 else s6378
-  s6380 :: SWord8 = s6379 >>> 1
-  s6381 :: SWord8 = s24 | s6380
-  s6382 :: SWord8 = s26 & s6380
-  s6383 :: SWord8 = if s6371 then s6381 else s6382
-  s6384 :: SWord8 = s6369 >>> 1
-  s6385 :: SWord8 = s24 | s6384
-  s6386 :: SWord8 = s26 & s6384
-  s6387 :: SWord8 = if s6345 then s6385 else s6386
-  s6388 :: SWord8 = if s29 then s6368 else s6353
-  s6389 :: SWord8 = if s170 then s6387 else s6388
-  s6390 :: SWord8 = s6379 + s6389
-  s6391 :: SBool = s6390 < s6389
-  s6392 :: SBool = s6390 < s6379
-  s6393 :: SBool = s6391 | s6392
-  s6394 :: SWord8 = s6390 >>> 1
-  s6395 :: SWord8 = s24 | s6394
-  s6396 :: SWord8 = s26 & s6394
-  s6397 :: SWord8 = if s6393 then s6395 else s6396
-  s6398 :: SWord8 = if s6372 then s6383 else s6397
-  s6399 :: SWord8 = if s6314 then s6364 else s6398
-  s6400 :: SWord8 = s6299 + s6351
-  s6401 :: SWord8 = s18 & s6400
-  s6402 :: SBool = s17 /= s6401
-  s6403 :: SWord8 = if s6402 then s6308 else s6309
-  s6404 :: SWord8 = if s22 then s6403 else s6305
-  s6405 :: SWord8 = s18 & s6404
-  s6406 :: SBool = s17 /= s6405
-  s6407 :: SBool = s_2 == s6406
-  s6408 :: SBool = s6400 < s6351
-  s6409 :: SBool = s6400 < s6299
-  s6410 :: SBool = s6408 | s6409
-  s6411 :: SWord8 = s6400 >>> 1
-  s6412 :: SWord8 = s24 | s6411
-  s6413 :: SWord8 = s26 & s6411
-  s6414 :: SWord8 = if s6410 then s6412 else s6413
-  s6415 :: SWord8 = s18 & s6414
-  s6416 :: SBool = s17 /= s6415
-  s6417 :: SWord8 = s6404 >>> 1
-  s6418 :: SWord8 = s24 | s6417
-  s6419 :: SWord8 = s26 & s6417
-  s6420 :: SWord8 = if s6322 then s6418 else s6419
-  s6421 :: SWord8 = if s22 then s6420 else s6403
-  s6422 :: SWord8 = s6421 >>> 1
-  s6423 :: SWord8 = s24 | s6422
-  s6424 :: SWord8 = s26 & s6422
-  s6425 :: SWord8 = if s6416 then s6423 else s6424
-  s6426 :: SWord8 = if s22 then s6425 else s6420
-  s6427 :: SWord8 = s18 & s6426
-  s6428 :: SBool = s17 /= s6427
-  s6429 :: SBool = s_2 == s6428
-  s6430 :: SWord8 = s6414 >>> 1
-  s6431 :: SWord8 = s24 | s6430
-  s6432 :: SWord8 = s26 & s6430
-  s6433 :: SWord8 = if s6406 then s6431 else s6432
-  s6434 :: SWord8 = s6433 >>> 1
-  s6435 :: SWord8 = s24 | s6434
-  s6436 :: SWord8 = s26 & s6434
-  s6437 :: SWord8 = if s6428 then s6435 else s6436
-  s6438 :: SWord8 = s18 & s6421
-  s6439 :: SBool = s17 /= s6438
-  s6440 :: SWord8 = s6426 >>> 1
-  s6441 :: SWord8 = s24 | s6440
-  s6442 :: SWord8 = s26 & s6440
-  s6443 :: SWord8 = if s6439 then s6441 else s6442
-  s6444 :: SWord8 = if s29 then s6403 else s6351
-  s6445 :: SWord8 = if s170 then s6420 else s6444
-  s6446 :: SWord8 = if s29 then s6425 else s6445
-  s6447 :: SWord8 = if s170 then s6443 else s6446
-  s6448 :: SWord8 = s6433 + s6447
-  s6449 :: SBool = s6448 < s6447
-  s6450 :: SBool = s6448 < s6433
-  s6451 :: SBool = s6449 | s6450
-  s6452 :: SWord8 = s6448 >>> 1
-  s6453 :: SWord8 = s24 | s6452
-  s6454 :: SWord8 = s26 & s6452
-  s6455 :: SWord8 = if s6451 then s6453 else s6454
-  s6456 :: SWord8 = if s6429 then s6437 else s6455
-  s6457 :: SWord8 = s6414 + s6445
-  s6458 :: SWord8 = s18 & s6457
-  s6459 :: SBool = s17 /= s6458
-  s6460 :: SWord8 = if s6459 then s6423 else s6424
-  s6461 :: SWord8 = if s22 then s6460 else s6420
-  s6462 :: SWord8 = s18 & s6461
-  s6463 :: SBool = s17 /= s6462
-  s6464 :: SBool = s_2 == s6463
-  s6465 :: SBool = s6457 < s6445
-  s6466 :: SBool = s6457 < s6414
-  s6467 :: SBool = s6465 | s6466
-  s6468 :: SWord8 = s6457 >>> 1
-  s6469 :: SWord8 = s24 | s6468
-  s6470 :: SWord8 = s26 & s6468
-  s6471 :: SWord8 = if s6467 then s6469 else s6470
-  s6472 :: SWord8 = s6471 >>> 1
-  s6473 :: SWord8 = s24 | s6472
-  s6474 :: SWord8 = s26 & s6472
-  s6475 :: SWord8 = if s6463 then s6473 else s6474
-  s6476 :: SWord8 = s6461 >>> 1
-  s6477 :: SWord8 = s24 | s6476
-  s6478 :: SWord8 = s26 & s6476
-  s6479 :: SWord8 = if s6439 then s6477 else s6478
-  s6480 :: SWord8 = if s29 then s6460 else s6445
-  s6481 :: SWord8 = if s170 then s6479 else s6480
-  s6482 :: SWord8 = s6471 + s6481
-  s6483 :: SBool = s6482 < s6481
-  s6484 :: SBool = s6482 < s6471
-  s6485 :: SBool = s6483 | s6484
-  s6486 :: SWord8 = s6482 >>> 1
-  s6487 :: SWord8 = s24 | s6486
-  s6488 :: SWord8 = s26 & s6486
-  s6489 :: SWord8 = if s6485 then s6487 else s6488
-  s6490 :: SWord8 = if s6464 then s6475 else s6489
-  s6491 :: SWord8 = if s6407 then s6456 else s6490
-  s6492 :: SWord8 = if s6292 then s6399 else s6491
-  s6493 :: SWord8 = if s6061 then s6284 else s6492
-  s6494 :: SWord8 = if s5597 then s6053 else s6493
-  s6495 :: SWord8 = s5582 + s5697
-  s6496 :: SWord8 = s18 & s6495
-  s6497 :: SBool = s17 /= s6496
-  s6498 :: SWord8 = if s6497 then s5591 else s5592
-  s6499 :: SWord8 = if s22 then s6498 else s5588
-  s6500 :: SWord8 = s18 & s6499
-  s6501 :: SBool = s17 /= s6500
-  s6502 :: SBool = s_2 == s6501
-  s6503 :: SBool = s6495 < s5697
-  s6504 :: SBool = s6495 < s5582
-  s6505 :: SBool = s6503 | s6504
-  s6506 :: SWord8 = s6495 >>> 1
-  s6507 :: SWord8 = s24 | s6506
-  s6508 :: SWord8 = s26 & s6506
-  s6509 :: SWord8 = if s6505 then s6507 else s6508
-  s6510 :: SWord8 = s18 & s6509
-  s6511 :: SBool = s17 /= s6510
-  s6512 :: SWord8 = s6499 >>> 1
-  s6513 :: SWord8 = s24 | s6512
-  s6514 :: SWord8 = s26 & s6512
-  s6515 :: SWord8 = if s5605 then s6513 else s6514
-  s6516 :: SWord8 = if s22 then s6515 else s6498
-  s6517 :: SWord8 = s6516 >>> 1
-  s6518 :: SWord8 = s24 | s6517
-  s6519 :: SWord8 = s26 & s6517
-  s6520 :: SWord8 = if s6511 then s6518 else s6519
-  s6521 :: SWord8 = if s22 then s6520 else s6515
-  s6522 :: SWord8 = s18 & s6521
-  s6523 :: SBool = s17 /= s6522
-  s6524 :: SBool = s_2 == s6523
-  s6525 :: SWord8 = s6509 >>> 1
-  s6526 :: SWord8 = s24 | s6525
-  s6527 :: SWord8 = s26 & s6525
-  s6528 :: SWord8 = if s6501 then s6526 else s6527
-  s6529 :: SWord8 = s18 & s6528
-  s6530 :: SBool = s17 /= s6529
-  s6531 :: SWord8 = s18 & s6516
-  s6532 :: SBool = s17 /= s6531
-  s6533 :: SWord8 = s6521 >>> 1
-  s6534 :: SWord8 = s24 | s6533
-  s6535 :: SWord8 = s26 & s6533
-  s6536 :: SWord8 = if s6532 then s6534 else s6535
-  s6537 :: SWord8 = if s22 then s6536 else s6520
-  s6538 :: SWord8 = s6537 >>> 1
-  s6539 :: SWord8 = s24 | s6538
-  s6540 :: SWord8 = s26 & s6538
-  s6541 :: SWord8 = if s6530 then s6539 else s6540
-  s6542 :: SWord8 = if s22 then s6541 else s6536
-  s6543 :: SWord8 = s18 & s6542
-  s6544 :: SBool = s17 /= s6543
-  s6545 :: SBool = s_2 == s6544
-  s6546 :: SWord8 = s6528 >>> 1
-  s6547 :: SWord8 = s24 | s6546
-  s6548 :: SWord8 = s26 & s6546
-  s6549 :: SWord8 = if s6523 then s6547 else s6548
-  s6550 :: SWord8 = s18 & s6549
-  s6551 :: SBool = s17 /= s6550
-  s6552 :: SWord8 = s18 & s6537
-  s6553 :: SBool = s17 /= s6552
-  s6554 :: SWord8 = s6542 >>> 1
-  s6555 :: SWord8 = s24 | s6554
-  s6556 :: SWord8 = s26 & s6554
-  s6557 :: SWord8 = if s6553 then s6555 else s6556
-  s6558 :: SWord8 = if s22 then s6557 else s6541
-  s6559 :: SWord8 = s6558 >>> 1
-  s6560 :: SWord8 = s24 | s6559
-  s6561 :: SWord8 = s26 & s6559
-  s6562 :: SWord8 = if s6551 then s6560 else s6561
-  s6563 :: SWord8 = if s22 then s6562 else s6557
-  s6564 :: SWord8 = s18 & s6563
-  s6565 :: SBool = s17 /= s6564
-  s6566 :: SBool = s_2 == s6565
-  s6567 :: SWord8 = s6549 >>> 1
-  s6568 :: SWord8 = s24 | s6567
-  s6569 :: SWord8 = s26 & s6567
-  s6570 :: SWord8 = if s6544 then s6568 else s6569
-  s6571 :: SWord8 = s18 & s6570
-  s6572 :: SBool = s17 /= s6571
-  s6573 :: SWord8 = s18 & s6558
-  s6574 :: SBool = s17 /= s6573
-  s6575 :: SWord8 = s6563 >>> 1
-  s6576 :: SWord8 = s24 | s6575
-  s6577 :: SWord8 = s26 & s6575
-  s6578 :: SWord8 = if s6574 then s6576 else s6577
-  s6579 :: SWord8 = if s22 then s6578 else s6562
-  s6580 :: SWord8 = s6579 >>> 1
-  s6581 :: SWord8 = s24 | s6580
-  s6582 :: SWord8 = s26 & s6580
-  s6583 :: SWord8 = if s6572 then s6581 else s6582
-  s6584 :: SWord8 = if s22 then s6583 else s6578
-  s6585 :: SWord8 = s18 & s6584
-  s6586 :: SBool = s17 /= s6585
-  s6587 :: SBool = s_2 == s6586
-  s6588 :: SWord8 = s6570 >>> 1
-  s6589 :: SWord8 = s24 | s6588
-  s6590 :: SWord8 = s26 & s6588
-  s6591 :: SWord8 = if s6565 then s6589 else s6590
-  s6592 :: SWord8 = s6591 >>> 1
-  s6593 :: SWord8 = s24 | s6592
-  s6594 :: SWord8 = s26 & s6592
-  s6595 :: SWord8 = if s6586 then s6593 else s6594
-  s6596 :: SWord8 = s18 & s6579
-  s6597 :: SBool = s17 /= s6596
-  s6598 :: SWord8 = s6584 >>> 1
-  s6599 :: SWord8 = s24 | s6598
-  s6600 :: SWord8 = s26 & s6598
-  s6601 :: SWord8 = if s6597 then s6599 else s6600
-  s6602 :: SWord8 = if s29 then s6498 else s5697
-  s6603 :: SWord8 = if s170 then s6515 else s6602
-  s6604 :: SWord8 = if s29 then s6520 else s6603
-  s6605 :: SWord8 = if s170 then s6536 else s6604
-  s6606 :: SWord8 = if s29 then s6541 else s6605
-  s6607 :: SWord8 = if s170 then s6557 else s6606
-  s6608 :: SWord8 = if s29 then s6562 else s6607
-  s6609 :: SWord8 = if s170 then s6578 else s6608
-  s6610 :: SWord8 = if s29 then s6583 else s6609
-  s6611 :: SWord8 = if s170 then s6601 else s6610
-  s6612 :: SWord8 = s6591 + s6611
-  s6613 :: SBool = s6612 < s6611
-  s6614 :: SBool = s6612 < s6591
-  s6615 :: SBool = s6613 | s6614
-  s6616 :: SWord8 = s6612 >>> 1
-  s6617 :: SWord8 = s24 | s6616
-  s6618 :: SWord8 = s26 & s6616
-  s6619 :: SWord8 = if s6615 then s6617 else s6618
-  s6620 :: SWord8 = if s6587 then s6595 else s6619
-  s6621 :: SWord8 = s6570 + s6609
-  s6622 :: SWord8 = s18 & s6621
-  s6623 :: SBool = s17 /= s6622
-  s6624 :: SWord8 = if s6623 then s6581 else s6582
-  s6625 :: SWord8 = if s22 then s6624 else s6578
-  s6626 :: SWord8 = s18 & s6625
-  s6627 :: SBool = s17 /= s6626
-  s6628 :: SBool = s_2 == s6627
-  s6629 :: SBool = s6621 < s6609
-  s6630 :: SBool = s6621 < s6570
-  s6631 :: SBool = s6629 | s6630
-  s6632 :: SWord8 = s6621 >>> 1
-  s6633 :: SWord8 = s24 | s6632
-  s6634 :: SWord8 = s26 & s6632
-  s6635 :: SWord8 = if s6631 then s6633 else s6634
-  s6636 :: SWord8 = s6635 >>> 1
-  s6637 :: SWord8 = s24 | s6636
-  s6638 :: SWord8 = s26 & s6636
-  s6639 :: SWord8 = if s6627 then s6637 else s6638
-  s6640 :: SWord8 = s6625 >>> 1
-  s6641 :: SWord8 = s24 | s6640
-  s6642 :: SWord8 = s26 & s6640
-  s6643 :: SWord8 = if s6597 then s6641 else s6642
-  s6644 :: SWord8 = if s29 then s6624 else s6609
-  s6645 :: SWord8 = if s170 then s6643 else s6644
-  s6646 :: SWord8 = s6635 + s6645
-  s6647 :: SBool = s6646 < s6645
-  s6648 :: SBool = s6646 < s6635
-  s6649 :: SBool = s6647 | s6648
-  s6650 :: SWord8 = s6646 >>> 1
-  s6651 :: SWord8 = s24 | s6650
-  s6652 :: SWord8 = s26 & s6650
-  s6653 :: SWord8 = if s6649 then s6651 else s6652
-  s6654 :: SWord8 = if s6628 then s6639 else s6653
-  s6655 :: SWord8 = if s6566 then s6620 else s6654
-  s6656 :: SWord8 = s6549 + s6607
-  s6657 :: SWord8 = s18 & s6656
-  s6658 :: SBool = s17 /= s6657
-  s6659 :: SWord8 = if s6658 then s6560 else s6561
-  s6660 :: SWord8 = if s22 then s6659 else s6557
-  s6661 :: SWord8 = s18 & s6660
-  s6662 :: SBool = s17 /= s6661
-  s6663 :: SBool = s_2 == s6662
-  s6664 :: SBool = s6656 < s6607
-  s6665 :: SBool = s6656 < s6549
-  s6666 :: SBool = s6664 | s6665
-  s6667 :: SWord8 = s6656 >>> 1
-  s6668 :: SWord8 = s24 | s6667
-  s6669 :: SWord8 = s26 & s6667
-  s6670 :: SWord8 = if s6666 then s6668 else s6669
-  s6671 :: SWord8 = s18 & s6670
-  s6672 :: SBool = s17 /= s6671
-  s6673 :: SWord8 = s6660 >>> 1
-  s6674 :: SWord8 = s24 | s6673
-  s6675 :: SWord8 = s26 & s6673
-  s6676 :: SWord8 = if s6574 then s6674 else s6675
-  s6677 :: SWord8 = if s22 then s6676 else s6659
-  s6678 :: SWord8 = s6677 >>> 1
-  s6679 :: SWord8 = s24 | s6678
-  s6680 :: SWord8 = s26 & s6678
-  s6681 :: SWord8 = if s6672 then s6679 else s6680
-  s6682 :: SWord8 = if s22 then s6681 else s6676
-  s6683 :: SWord8 = s18 & s6682
-  s6684 :: SBool = s17 /= s6683
-  s6685 :: SBool = s_2 == s6684
-  s6686 :: SWord8 = s6670 >>> 1
-  s6687 :: SWord8 = s24 | s6686
-  s6688 :: SWord8 = s26 & s6686
-  s6689 :: SWord8 = if s6662 then s6687 else s6688
-  s6690 :: SWord8 = s6689 >>> 1
-  s6691 :: SWord8 = s24 | s6690
-  s6692 :: SWord8 = s26 & s6690
-  s6693 :: SWord8 = if s6684 then s6691 else s6692
-  s6694 :: SWord8 = s18 & s6677
-  s6695 :: SBool = s17 /= s6694
-  s6696 :: SWord8 = s6682 >>> 1
-  s6697 :: SWord8 = s24 | s6696
-  s6698 :: SWord8 = s26 & s6696
-  s6699 :: SWord8 = if s6695 then s6697 else s6698
-  s6700 :: SWord8 = if s29 then s6659 else s6607
-  s6701 :: SWord8 = if s170 then s6676 else s6700
-  s6702 :: SWord8 = if s29 then s6681 else s6701
-  s6703 :: SWord8 = if s170 then s6699 else s6702
-  s6704 :: SWord8 = s6689 + s6703
-  s6705 :: SBool = s6704 < s6703
-  s6706 :: SBool = s6704 < s6689
-  s6707 :: SBool = s6705 | s6706
-  s6708 :: SWord8 = s6704 >>> 1
-  s6709 :: SWord8 = s24 | s6708
-  s6710 :: SWord8 = s26 & s6708
-  s6711 :: SWord8 = if s6707 then s6709 else s6710
-  s6712 :: SWord8 = if s6685 then s6693 else s6711
-  s6713 :: SWord8 = s6670 + s6701
-  s6714 :: SWord8 = s18 & s6713
-  s6715 :: SBool = s17 /= s6714
-  s6716 :: SWord8 = if s6715 then s6679 else s6680
-  s6717 :: SWord8 = if s22 then s6716 else s6676
-  s6718 :: SWord8 = s18 & s6717
-  s6719 :: SBool = s17 /= s6718
-  s6720 :: SBool = s_2 == s6719
-  s6721 :: SBool = s6713 < s6701
-  s6722 :: SBool = s6713 < s6670
-  s6723 :: SBool = s6721 | s6722
-  s6724 :: SWord8 = s6713 >>> 1
-  s6725 :: SWord8 = s24 | s6724
-  s6726 :: SWord8 = s26 & s6724
-  s6727 :: SWord8 = if s6723 then s6725 else s6726
-  s6728 :: SWord8 = s6727 >>> 1
-  s6729 :: SWord8 = s24 | s6728
-  s6730 :: SWord8 = s26 & s6728
-  s6731 :: SWord8 = if s6719 then s6729 else s6730
-  s6732 :: SWord8 = s6717 >>> 1
-  s6733 :: SWord8 = s24 | s6732
-  s6734 :: SWord8 = s26 & s6732
-  s6735 :: SWord8 = if s6695 then s6733 else s6734
-  s6736 :: SWord8 = if s29 then s6716 else s6701
-  s6737 :: SWord8 = if s170 then s6735 else s6736
-  s6738 :: SWord8 = s6727 + s6737
-  s6739 :: SBool = s6738 < s6737
-  s6740 :: SBool = s6738 < s6727
-  s6741 :: SBool = s6739 | s6740
-  s6742 :: SWord8 = s6738 >>> 1
-  s6743 :: SWord8 = s24 | s6742
-  s6744 :: SWord8 = s26 & s6742
-  s6745 :: SWord8 = if s6741 then s6743 else s6744
-  s6746 :: SWord8 = if s6720 then s6731 else s6745
-  s6747 :: SWord8 = if s6663 then s6712 else s6746
-  s6748 :: SWord8 = if s6545 then s6655 else s6747
-  s6749 :: SWord8 = s6528 + s6605
-  s6750 :: SWord8 = s18 & s6749
-  s6751 :: SBool = s17 /= s6750
-  s6752 :: SWord8 = if s6751 then s6539 else s6540
-  s6753 :: SWord8 = if s22 then s6752 else s6536
-  s6754 :: SWord8 = s18 & s6753
-  s6755 :: SBool = s17 /= s6754
-  s6756 :: SBool = s_2 == s6755
-  s6757 :: SBool = s6749 < s6605
-  s6758 :: SBool = s6749 < s6528
-  s6759 :: SBool = s6757 | s6758
-  s6760 :: SWord8 = s6749 >>> 1
-  s6761 :: SWord8 = s24 | s6760
-  s6762 :: SWord8 = s26 & s6760
-  s6763 :: SWord8 = if s6759 then s6761 else s6762
-  s6764 :: SWord8 = s18 & s6763
-  s6765 :: SBool = s17 /= s6764
-  s6766 :: SWord8 = s6753 >>> 1
-  s6767 :: SWord8 = s24 | s6766
-  s6768 :: SWord8 = s26 & s6766
-  s6769 :: SWord8 = if s6553 then s6767 else s6768
-  s6770 :: SWord8 = if s22 then s6769 else s6752
-  s6771 :: SWord8 = s6770 >>> 1
-  s6772 :: SWord8 = s24 | s6771
-  s6773 :: SWord8 = s26 & s6771
-  s6774 :: SWord8 = if s6765 then s6772 else s6773
-  s6775 :: SWord8 = if s22 then s6774 else s6769
-  s6776 :: SWord8 = s18 & s6775
-  s6777 :: SBool = s17 /= s6776
-  s6778 :: SBool = s_2 == s6777
-  s6779 :: SWord8 = s6763 >>> 1
-  s6780 :: SWord8 = s24 | s6779
-  s6781 :: SWord8 = s26 & s6779
-  s6782 :: SWord8 = if s6755 then s6780 else s6781
-  s6783 :: SWord8 = s18 & s6782
-  s6784 :: SBool = s17 /= s6783
-  s6785 :: SWord8 = s18 & s6770
-  s6786 :: SBool = s17 /= s6785
-  s6787 :: SWord8 = s6775 >>> 1
-  s6788 :: SWord8 = s24 | s6787
-  s6789 :: SWord8 = s26 & s6787
-  s6790 :: SWord8 = if s6786 then s6788 else s6789
-  s6791 :: SWord8 = if s22 then s6790 else s6774
-  s6792 :: SWord8 = s6791 >>> 1
-  s6793 :: SWord8 = s24 | s6792
-  s6794 :: SWord8 = s26 & s6792
-  s6795 :: SWord8 = if s6784 then s6793 else s6794
-  s6796 :: SWord8 = if s22 then s6795 else s6790
-  s6797 :: SWord8 = s18 & s6796
-  s6798 :: SBool = s17 /= s6797
-  s6799 :: SBool = s_2 == s6798
-  s6800 :: SWord8 = s6782 >>> 1
-  s6801 :: SWord8 = s24 | s6800
-  s6802 :: SWord8 = s26 & s6800
-  s6803 :: SWord8 = if s6777 then s6801 else s6802
-  s6804 :: SWord8 = s6803 >>> 1
-  s6805 :: SWord8 = s24 | s6804
-  s6806 :: SWord8 = s26 & s6804
-  s6807 :: SWord8 = if s6798 then s6805 else s6806
-  s6808 :: SWord8 = s18 & s6791
-  s6809 :: SBool = s17 /= s6808
-  s6810 :: SWord8 = s6796 >>> 1
-  s6811 :: SWord8 = s24 | s6810
-  s6812 :: SWord8 = s26 & s6810
-  s6813 :: SWord8 = if s6809 then s6811 else s6812
-  s6814 :: SWord8 = if s29 then s6752 else s6605
-  s6815 :: SWord8 = if s170 then s6769 else s6814
-  s6816 :: SWord8 = if s29 then s6774 else s6815
-  s6817 :: SWord8 = if s170 then s6790 else s6816
-  s6818 :: SWord8 = if s29 then s6795 else s6817
-  s6819 :: SWord8 = if s170 then s6813 else s6818
-  s6820 :: SWord8 = s6803 + s6819
-  s6821 :: SBool = s6820 < s6819
-  s6822 :: SBool = s6820 < s6803
-  s6823 :: SBool = s6821 | s6822
-  s6824 :: SWord8 = s6820 >>> 1
-  s6825 :: SWord8 = s24 | s6824
-  s6826 :: SWord8 = s26 & s6824
-  s6827 :: SWord8 = if s6823 then s6825 else s6826
-  s6828 :: SWord8 = if s6799 then s6807 else s6827
-  s6829 :: SWord8 = s6782 + s6817
-  s6830 :: SWord8 = s18 & s6829
-  s6831 :: SBool = s17 /= s6830
-  s6832 :: SWord8 = if s6831 then s6793 else s6794
-  s6833 :: SWord8 = if s22 then s6832 else s6790
-  s6834 :: SWord8 = s18 & s6833
-  s6835 :: SBool = s17 /= s6834
-  s6836 :: SBool = s_2 == s6835
-  s6837 :: SBool = s6829 < s6817
-  s6838 :: SBool = s6829 < s6782
-  s6839 :: SBool = s6837 | s6838
-  s6840 :: SWord8 = s6829 >>> 1
-  s6841 :: SWord8 = s24 | s6840
-  s6842 :: SWord8 = s26 & s6840
-  s6843 :: SWord8 = if s6839 then s6841 else s6842
-  s6844 :: SWord8 = s6843 >>> 1
-  s6845 :: SWord8 = s24 | s6844
-  s6846 :: SWord8 = s26 & s6844
-  s6847 :: SWord8 = if s6835 then s6845 else s6846
-  s6848 :: SWord8 = s6833 >>> 1
-  s6849 :: SWord8 = s24 | s6848
-  s6850 :: SWord8 = s26 & s6848
-  s6851 :: SWord8 = if s6809 then s6849 else s6850
-  s6852 :: SWord8 = if s29 then s6832 else s6817
-  s6853 :: SWord8 = if s170 then s6851 else s6852
-  s6854 :: SWord8 = s6843 + s6853
-  s6855 :: SBool = s6854 < s6853
-  s6856 :: SBool = s6854 < s6843
-  s6857 :: SBool = s6855 | s6856
-  s6858 :: SWord8 = s6854 >>> 1
-  s6859 :: SWord8 = s24 | s6858
-  s6860 :: SWord8 = s26 & s6858
-  s6861 :: SWord8 = if s6857 then s6859 else s6860
-  s6862 :: SWord8 = if s6836 then s6847 else s6861
-  s6863 :: SWord8 = if s6778 then s6828 else s6862
-  s6864 :: SWord8 = s6763 + s6815
-  s6865 :: SWord8 = s18 & s6864
-  s6866 :: SBool = s17 /= s6865
-  s6867 :: SWord8 = if s6866 then s6772 else s6773
-  s6868 :: SWord8 = if s22 then s6867 else s6769
-  s6869 :: SWord8 = s18 & s6868
-  s6870 :: SBool = s17 /= s6869
-  s6871 :: SBool = s_2 == s6870
-  s6872 :: SBool = s6864 < s6815
-  s6873 :: SBool = s6864 < s6763
-  s6874 :: SBool = s6872 | s6873
-  s6875 :: SWord8 = s6864 >>> 1
-  s6876 :: SWord8 = s24 | s6875
-  s6877 :: SWord8 = s26 & s6875
-  s6878 :: SWord8 = if s6874 then s6876 else s6877
-  s6879 :: SWord8 = s18 & s6878
-  s6880 :: SBool = s17 /= s6879
-  s6881 :: SWord8 = s6868 >>> 1
-  s6882 :: SWord8 = s24 | s6881
-  s6883 :: SWord8 = s26 & s6881
-  s6884 :: SWord8 = if s6786 then s6882 else s6883
-  s6885 :: SWord8 = if s22 then s6884 else s6867
-  s6886 :: SWord8 = s6885 >>> 1
-  s6887 :: SWord8 = s24 | s6886
-  s6888 :: SWord8 = s26 & s6886
-  s6889 :: SWord8 = if s6880 then s6887 else s6888
-  s6890 :: SWord8 = if s22 then s6889 else s6884
-  s6891 :: SWord8 = s18 & s6890
-  s6892 :: SBool = s17 /= s6891
-  s6893 :: SBool = s_2 == s6892
-  s6894 :: SWord8 = s6878 >>> 1
-  s6895 :: SWord8 = s24 | s6894
-  s6896 :: SWord8 = s26 & s6894
-  s6897 :: SWord8 = if s6870 then s6895 else s6896
-  s6898 :: SWord8 = s6897 >>> 1
-  s6899 :: SWord8 = s24 | s6898
-  s6900 :: SWord8 = s26 & s6898
-  s6901 :: SWord8 = if s6892 then s6899 else s6900
-  s6902 :: SWord8 = s18 & s6885
-  s6903 :: SBool = s17 /= s6902
-  s6904 :: SWord8 = s6890 >>> 1
-  s6905 :: SWord8 = s24 | s6904
-  s6906 :: SWord8 = s26 & s6904
-  s6907 :: SWord8 = if s6903 then s6905 else s6906
-  s6908 :: SWord8 = if s29 then s6867 else s6815
-  s6909 :: SWord8 = if s170 then s6884 else s6908
-  s6910 :: SWord8 = if s29 then s6889 else s6909
-  s6911 :: SWord8 = if s170 then s6907 else s6910
-  s6912 :: SWord8 = s6897 + s6911
-  s6913 :: SBool = s6912 < s6911
-  s6914 :: SBool = s6912 < s6897
-  s6915 :: SBool = s6913 | s6914
-  s6916 :: SWord8 = s6912 >>> 1
-  s6917 :: SWord8 = s24 | s6916
-  s6918 :: SWord8 = s26 & s6916
-  s6919 :: SWord8 = if s6915 then s6917 else s6918
-  s6920 :: SWord8 = if s6893 then s6901 else s6919
-  s6921 :: SWord8 = s6878 + s6909
-  s6922 :: SWord8 = s18 & s6921
-  s6923 :: SBool = s17 /= s6922
-  s6924 :: SWord8 = if s6923 then s6887 else s6888
-  s6925 :: SWord8 = if s22 then s6924 else s6884
-  s6926 :: SWord8 = s18 & s6925
-  s6927 :: SBool = s17 /= s6926
-  s6928 :: SBool = s_2 == s6927
-  s6929 :: SBool = s6921 < s6909
-  s6930 :: SBool = s6921 < s6878
-  s6931 :: SBool = s6929 | s6930
-  s6932 :: SWord8 = s6921 >>> 1
-  s6933 :: SWord8 = s24 | s6932
-  s6934 :: SWord8 = s26 & s6932
-  s6935 :: SWord8 = if s6931 then s6933 else s6934
-  s6936 :: SWord8 = s6935 >>> 1
-  s6937 :: SWord8 = s24 | s6936
-  s6938 :: SWord8 = s26 & s6936
-  s6939 :: SWord8 = if s6927 then s6937 else s6938
-  s6940 :: SWord8 = s6925 >>> 1
-  s6941 :: SWord8 = s24 | s6940
-  s6942 :: SWord8 = s26 & s6940
-  s6943 :: SWord8 = if s6903 then s6941 else s6942
-  s6944 :: SWord8 = if s29 then s6924 else s6909
-  s6945 :: SWord8 = if s170 then s6943 else s6944
-  s6946 :: SWord8 = s6935 + s6945
-  s6947 :: SBool = s6946 < s6945
-  s6948 :: SBool = s6946 < s6935
-  s6949 :: SBool = s6947 | s6948
-  s6950 :: SWord8 = s6946 >>> 1
-  s6951 :: SWord8 = s24 | s6950
-  s6952 :: SWord8 = s26 & s6950
-  s6953 :: SWord8 = if s6949 then s6951 else s6952
-  s6954 :: SWord8 = if s6928 then s6939 else s6953
-  s6955 :: SWord8 = if s6871 then s6920 else s6954
-  s6956 :: SWord8 = if s6756 then s6863 else s6955
-  s6957 :: SWord8 = if s6524 then s6748 else s6956
-  s6958 :: SWord8 = s6509 + s6603
-  s6959 :: SWord8 = s18 & s6958
-  s6960 :: SBool = s17 /= s6959
-  s6961 :: SWord8 = if s6960 then s6518 else s6519
-  s6962 :: SWord8 = if s22 then s6961 else s6515
-  s6963 :: SWord8 = s18 & s6962
-  s6964 :: SBool = s17 /= s6963
-  s6965 :: SBool = s_2 == s6964
-  s6966 :: SBool = s6958 < s6603
-  s6967 :: SBool = s6958 < s6509
-  s6968 :: SBool = s6966 | s6967
-  s6969 :: SWord8 = s6958 >>> 1
-  s6970 :: SWord8 = s24 | s6969
-  s6971 :: SWord8 = s26 & s6969
-  s6972 :: SWord8 = if s6968 then s6970 else s6971
-  s6973 :: SWord8 = s18 & s6972
-  s6974 :: SBool = s17 /= s6973
-  s6975 :: SWord8 = s6962 >>> 1
-  s6976 :: SWord8 = s24 | s6975
-  s6977 :: SWord8 = s26 & s6975
-  s6978 :: SWord8 = if s6532 then s6976 else s6977
-  s6979 :: SWord8 = if s22 then s6978 else s6961
-  s6980 :: SWord8 = s6979 >>> 1
-  s6981 :: SWord8 = s24 | s6980
-  s6982 :: SWord8 = s26 & s6980
-  s6983 :: SWord8 = if s6974 then s6981 else s6982
-  s6984 :: SWord8 = if s22 then s6983 else s6978
-  s6985 :: SWord8 = s18 & s6984
-  s6986 :: SBool = s17 /= s6985
-  s6987 :: SBool = s_2 == s6986
-  s6988 :: SWord8 = s6972 >>> 1
-  s6989 :: SWord8 = s24 | s6988
-  s6990 :: SWord8 = s26 & s6988
-  s6991 :: SWord8 = if s6964 then s6989 else s6990
-  s6992 :: SWord8 = s18 & s6991
-  s6993 :: SBool = s17 /= s6992
-  s6994 :: SWord8 = s18 & s6979
-  s6995 :: SBool = s17 /= s6994
-  s6996 :: SWord8 = s6984 >>> 1
-  s6997 :: SWord8 = s24 | s6996
-  s6998 :: SWord8 = s26 & s6996
-  s6999 :: SWord8 = if s6995 then s6997 else s6998
-  s7000 :: SWord8 = if s22 then s6999 else s6983
-  s7001 :: SWord8 = s7000 >>> 1
-  s7002 :: SWord8 = s24 | s7001
-  s7003 :: SWord8 = s26 & s7001
-  s7004 :: SWord8 = if s6993 then s7002 else s7003
-  s7005 :: SWord8 = if s22 then s7004 else s6999
-  s7006 :: SWord8 = s18 & s7005
-  s7007 :: SBool = s17 /= s7006
-  s7008 :: SBool = s_2 == s7007
-  s7009 :: SWord8 = s6991 >>> 1
-  s7010 :: SWord8 = s24 | s7009
-  s7011 :: SWord8 = s26 & s7009
-  s7012 :: SWord8 = if s6986 then s7010 else s7011
-  s7013 :: SWord8 = s18 & s7012
-  s7014 :: SBool = s17 /= s7013
-  s7015 :: SWord8 = s18 & s7000
-  s7016 :: SBool = s17 /= s7015
-  s7017 :: SWord8 = s7005 >>> 1
-  s7018 :: SWord8 = s24 | s7017
-  s7019 :: SWord8 = s26 & s7017
-  s7020 :: SWord8 = if s7016 then s7018 else s7019
-  s7021 :: SWord8 = if s22 then s7020 else s7004
-  s7022 :: SWord8 = s7021 >>> 1
-  s7023 :: SWord8 = s24 | s7022
-  s7024 :: SWord8 = s26 & s7022
-  s7025 :: SWord8 = if s7014 then s7023 else s7024
-  s7026 :: SWord8 = if s22 then s7025 else s7020
-  s7027 :: SWord8 = s18 & s7026
-  s7028 :: SBool = s17 /= s7027
-  s7029 :: SBool = s_2 == s7028
-  s7030 :: SWord8 = s7012 >>> 1
-  s7031 :: SWord8 = s24 | s7030
-  s7032 :: SWord8 = s26 & s7030
-  s7033 :: SWord8 = if s7007 then s7031 else s7032
-  s7034 :: SWord8 = s7033 >>> 1
-  s7035 :: SWord8 = s24 | s7034
-  s7036 :: SWord8 = s26 & s7034
-  s7037 :: SWord8 = if s7028 then s7035 else s7036
-  s7038 :: SWord8 = s18 & s7021
-  s7039 :: SBool = s17 /= s7038
-  s7040 :: SWord8 = s7026 >>> 1
-  s7041 :: SWord8 = s24 | s7040
-  s7042 :: SWord8 = s26 & s7040
-  s7043 :: SWord8 = if s7039 then s7041 else s7042
-  s7044 :: SWord8 = if s29 then s6961 else s6603
-  s7045 :: SWord8 = if s170 then s6978 else s7044
-  s7046 :: SWord8 = if s29 then s6983 else s7045
-  s7047 :: SWord8 = if s170 then s6999 else s7046
-  s7048 :: SWord8 = if s29 then s7004 else s7047
-  s7049 :: SWord8 = if s170 then s7020 else s7048
-  s7050 :: SWord8 = if s29 then s7025 else s7049
-  s7051 :: SWord8 = if s170 then s7043 else s7050
-  s7052 :: SWord8 = s7033 + s7051
-  s7053 :: SBool = s7052 < s7051
-  s7054 :: SBool = s7052 < s7033
-  s7055 :: SBool = s7053 | s7054
-  s7056 :: SWord8 = s7052 >>> 1
-  s7057 :: SWord8 = s24 | s7056
-  s7058 :: SWord8 = s26 & s7056
-  s7059 :: SWord8 = if s7055 then s7057 else s7058
-  s7060 :: SWord8 = if s7029 then s7037 else s7059
-  s7061 :: SWord8 = s7012 + s7049
-  s7062 :: SWord8 = s18 & s7061
-  s7063 :: SBool = s17 /= s7062
-  s7064 :: SWord8 = if s7063 then s7023 else s7024
-  s7065 :: SWord8 = if s22 then s7064 else s7020
-  s7066 :: SWord8 = s18 & s7065
-  s7067 :: SBool = s17 /= s7066
-  s7068 :: SBool = s_2 == s7067
-  s7069 :: SBool = s7061 < s7049
-  s7070 :: SBool = s7061 < s7012
-  s7071 :: SBool = s7069 | s7070
-  s7072 :: SWord8 = s7061 >>> 1
-  s7073 :: SWord8 = s24 | s7072
-  s7074 :: SWord8 = s26 & s7072
-  s7075 :: SWord8 = if s7071 then s7073 else s7074
-  s7076 :: SWord8 = s7075 >>> 1
-  s7077 :: SWord8 = s24 | s7076
-  s7078 :: SWord8 = s26 & s7076
-  s7079 :: SWord8 = if s7067 then s7077 else s7078
-  s7080 :: SWord8 = s7065 >>> 1
-  s7081 :: SWord8 = s24 | s7080
-  s7082 :: SWord8 = s26 & s7080
-  s7083 :: SWord8 = if s7039 then s7081 else s7082
-  s7084 :: SWord8 = if s29 then s7064 else s7049
-  s7085 :: SWord8 = if s170 then s7083 else s7084
-  s7086 :: SWord8 = s7075 + s7085
-  s7087 :: SBool = s7086 < s7085
-  s7088 :: SBool = s7086 < s7075
-  s7089 :: SBool = s7087 | s7088
-  s7090 :: SWord8 = s7086 >>> 1
-  s7091 :: SWord8 = s24 | s7090
-  s7092 :: SWord8 = s26 & s7090
-  s7093 :: SWord8 = if s7089 then s7091 else s7092
-  s7094 :: SWord8 = if s7068 then s7079 else s7093
-  s7095 :: SWord8 = if s7008 then s7060 else s7094
-  s7096 :: SWord8 = s6991 + s7047
-  s7097 :: SWord8 = s18 & s7096
-  s7098 :: SBool = s17 /= s7097
-  s7099 :: SWord8 = if s7098 then s7002 else s7003
-  s7100 :: SWord8 = if s22 then s7099 else s6999
-  s7101 :: SWord8 = s18 & s7100
-  s7102 :: SBool = s17 /= s7101
-  s7103 :: SBool = s_2 == s7102
-  s7104 :: SBool = s7096 < s7047
-  s7105 :: SBool = s7096 < s6991
-  s7106 :: SBool = s7104 | s7105
-  s7107 :: SWord8 = s7096 >>> 1
-  s7108 :: SWord8 = s24 | s7107
-  s7109 :: SWord8 = s26 & s7107
-  s7110 :: SWord8 = if s7106 then s7108 else s7109
-  s7111 :: SWord8 = s18 & s7110
-  s7112 :: SBool = s17 /= s7111
-  s7113 :: SWord8 = s7100 >>> 1
-  s7114 :: SWord8 = s24 | s7113
-  s7115 :: SWord8 = s26 & s7113
-  s7116 :: SWord8 = if s7016 then s7114 else s7115
-  s7117 :: SWord8 = if s22 then s7116 else s7099
-  s7118 :: SWord8 = s7117 >>> 1
-  s7119 :: SWord8 = s24 | s7118
-  s7120 :: SWord8 = s26 & s7118
-  s7121 :: SWord8 = if s7112 then s7119 else s7120
-  s7122 :: SWord8 = if s22 then s7121 else s7116
-  s7123 :: SWord8 = s18 & s7122
-  s7124 :: SBool = s17 /= s7123
-  s7125 :: SBool = s_2 == s7124
-  s7126 :: SWord8 = s7110 >>> 1
-  s7127 :: SWord8 = s24 | s7126
-  s7128 :: SWord8 = s26 & s7126
-  s7129 :: SWord8 = if s7102 then s7127 else s7128
-  s7130 :: SWord8 = s7129 >>> 1
-  s7131 :: SWord8 = s24 | s7130
-  s7132 :: SWord8 = s26 & s7130
-  s7133 :: SWord8 = if s7124 then s7131 else s7132
-  s7134 :: SWord8 = s18 & s7117
-  s7135 :: SBool = s17 /= s7134
-  s7136 :: SWord8 = s7122 >>> 1
-  s7137 :: SWord8 = s24 | s7136
-  s7138 :: SWord8 = s26 & s7136
-  s7139 :: SWord8 = if s7135 then s7137 else s7138
-  s7140 :: SWord8 = if s29 then s7099 else s7047
-  s7141 :: SWord8 = if s170 then s7116 else s7140
-  s7142 :: SWord8 = if s29 then s7121 else s7141
-  s7143 :: SWord8 = if s170 then s7139 else s7142
-  s7144 :: SWord8 = s7129 + s7143
-  s7145 :: SBool = s7144 < s7143
-  s7146 :: SBool = s7144 < s7129
-  s7147 :: SBool = s7145 | s7146
-  s7148 :: SWord8 = s7144 >>> 1
-  s7149 :: SWord8 = s24 | s7148
-  s7150 :: SWord8 = s26 & s7148
-  s7151 :: SWord8 = if s7147 then s7149 else s7150
-  s7152 :: SWord8 = if s7125 then s7133 else s7151
-  s7153 :: SWord8 = s7110 + s7141
-  s7154 :: SWord8 = s18 & s7153
-  s7155 :: SBool = s17 /= s7154
-  s7156 :: SWord8 = if s7155 then s7119 else s7120
-  s7157 :: SWord8 = if s22 then s7156 else s7116
-  s7158 :: SWord8 = s18 & s7157
-  s7159 :: SBool = s17 /= s7158
-  s7160 :: SBool = s_2 == s7159
-  s7161 :: SBool = s7153 < s7141
-  s7162 :: SBool = s7153 < s7110
-  s7163 :: SBool = s7161 | s7162
-  s7164 :: SWord8 = s7153 >>> 1
-  s7165 :: SWord8 = s24 | s7164
-  s7166 :: SWord8 = s26 & s7164
-  s7167 :: SWord8 = if s7163 then s7165 else s7166
-  s7168 :: SWord8 = s7167 >>> 1
-  s7169 :: SWord8 = s24 | s7168
-  s7170 :: SWord8 = s26 & s7168
-  s7171 :: SWord8 = if s7159 then s7169 else s7170
-  s7172 :: SWord8 = s7157 >>> 1
-  s7173 :: SWord8 = s24 | s7172
-  s7174 :: SWord8 = s26 & s7172
-  s7175 :: SWord8 = if s7135 then s7173 else s7174
-  s7176 :: SWord8 = if s29 then s7156 else s7141
-  s7177 :: SWord8 = if s170 then s7175 else s7176
-  s7178 :: SWord8 = s7167 + s7177
-  s7179 :: SBool = s7178 < s7177
-  s7180 :: SBool = s7178 < s7167
-  s7181 :: SBool = s7179 | s7180
-  s7182 :: SWord8 = s7178 >>> 1
-  s7183 :: SWord8 = s24 | s7182
-  s7184 :: SWord8 = s26 & s7182
-  s7185 :: SWord8 = if s7181 then s7183 else s7184
-  s7186 :: SWord8 = if s7160 then s7171 else s7185
-  s7187 :: SWord8 = if s7103 then s7152 else s7186
-  s7188 :: SWord8 = if s6987 then s7095 else s7187
-  s7189 :: SWord8 = s6972 + s7045
-  s7190 :: SWord8 = s18 & s7189
-  s7191 :: SBool = s17 /= s7190
-  s7192 :: SWord8 = if s7191 then s6981 else s6982
-  s7193 :: SWord8 = if s22 then s7192 else s6978
-  s7194 :: SWord8 = s18 & s7193
-  s7195 :: SBool = s17 /= s7194
-  s7196 :: SBool = s_2 == s7195
-  s7197 :: SBool = s7189 < s7045
-  s7198 :: SBool = s7189 < s6972
-  s7199 :: SBool = s7197 | s7198
-  s7200 :: SWord8 = s7189 >>> 1
-  s7201 :: SWord8 = s24 | s7200
-  s7202 :: SWord8 = s26 & s7200
-  s7203 :: SWord8 = if s7199 then s7201 else s7202
-  s7204 :: SWord8 = s18 & s7203
-  s7205 :: SBool = s17 /= s7204
-  s7206 :: SWord8 = s7193 >>> 1
-  s7207 :: SWord8 = s24 | s7206
-  s7208 :: SWord8 = s26 & s7206
-  s7209 :: SWord8 = if s6995 then s7207 else s7208
-  s7210 :: SWord8 = if s22 then s7209 else s7192
-  s7211 :: SWord8 = s7210 >>> 1
-  s7212 :: SWord8 = s24 | s7211
-  s7213 :: SWord8 = s26 & s7211
-  s7214 :: SWord8 = if s7205 then s7212 else s7213
-  s7215 :: SWord8 = if s22 then s7214 else s7209
-  s7216 :: SWord8 = s18 & s7215
-  s7217 :: SBool = s17 /= s7216
-  s7218 :: SBool = s_2 == s7217
-  s7219 :: SWord8 = s7203 >>> 1
-  s7220 :: SWord8 = s24 | s7219
-  s7221 :: SWord8 = s26 & s7219
-  s7222 :: SWord8 = if s7195 then s7220 else s7221
-  s7223 :: SWord8 = s18 & s7222
-  s7224 :: SBool = s17 /= s7223
-  s7225 :: SWord8 = s18 & s7210
-  s7226 :: SBool = s17 /= s7225
-  s7227 :: SWord8 = s7215 >>> 1
-  s7228 :: SWord8 = s24 | s7227
-  s7229 :: SWord8 = s26 & s7227
-  s7230 :: SWord8 = if s7226 then s7228 else s7229
-  s7231 :: SWord8 = if s22 then s7230 else s7214
-  s7232 :: SWord8 = s7231 >>> 1
-  s7233 :: SWord8 = s24 | s7232
-  s7234 :: SWord8 = s26 & s7232
-  s7235 :: SWord8 = if s7224 then s7233 else s7234
-  s7236 :: SWord8 = if s22 then s7235 else s7230
-  s7237 :: SWord8 = s18 & s7236
-  s7238 :: SBool = s17 /= s7237
-  s7239 :: SBool = s_2 == s7238
-  s7240 :: SWord8 = s7222 >>> 1
-  s7241 :: SWord8 = s24 | s7240
-  s7242 :: SWord8 = s26 & s7240
-  s7243 :: SWord8 = if s7217 then s7241 else s7242
-  s7244 :: SWord8 = s7243 >>> 1
-  s7245 :: SWord8 = s24 | s7244
-  s7246 :: SWord8 = s26 & s7244
-  s7247 :: SWord8 = if s7238 then s7245 else s7246
-  s7248 :: SWord8 = s18 & s7231
-  s7249 :: SBool = s17 /= s7248
-  s7250 :: SWord8 = s7236 >>> 1
-  s7251 :: SWord8 = s24 | s7250
-  s7252 :: SWord8 = s26 & s7250
-  s7253 :: SWord8 = if s7249 then s7251 else s7252
-  s7254 :: SWord8 = if s29 then s7192 else s7045
-  s7255 :: SWord8 = if s170 then s7209 else s7254
-  s7256 :: SWord8 = if s29 then s7214 else s7255
-  s7257 :: SWord8 = if s170 then s7230 else s7256
-  s7258 :: SWord8 = if s29 then s7235 else s7257
-  s7259 :: SWord8 = if s170 then s7253 else s7258
-  s7260 :: SWord8 = s7243 + s7259
-  s7261 :: SBool = s7260 < s7259
-  s7262 :: SBool = s7260 < s7243
-  s7263 :: SBool = s7261 | s7262
-  s7264 :: SWord8 = s7260 >>> 1
-  s7265 :: SWord8 = s24 | s7264
-  s7266 :: SWord8 = s26 & s7264
-  s7267 :: SWord8 = if s7263 then s7265 else s7266
-  s7268 :: SWord8 = if s7239 then s7247 else s7267
-  s7269 :: SWord8 = s7222 + s7257
-  s7270 :: SWord8 = s18 & s7269
-  s7271 :: SBool = s17 /= s7270
-  s7272 :: SWord8 = if s7271 then s7233 else s7234
-  s7273 :: SWord8 = if s22 then s7272 else s7230
-  s7274 :: SWord8 = s18 & s7273
-  s7275 :: SBool = s17 /= s7274
-  s7276 :: SBool = s_2 == s7275
-  s7277 :: SBool = s7269 < s7257
-  s7278 :: SBool = s7269 < s7222
-  s7279 :: SBool = s7277 | s7278
-  s7280 :: SWord8 = s7269 >>> 1
-  s7281 :: SWord8 = s24 | s7280
-  s7282 :: SWord8 = s26 & s7280
-  s7283 :: SWord8 = if s7279 then s7281 else s7282
-  s7284 :: SWord8 = s7283 >>> 1
-  s7285 :: SWord8 = s24 | s7284
-  s7286 :: SWord8 = s26 & s7284
-  s7287 :: SWord8 = if s7275 then s7285 else s7286
-  s7288 :: SWord8 = s7273 >>> 1
-  s7289 :: SWord8 = s24 | s7288
-  s7290 :: SWord8 = s26 & s7288
-  s7291 :: SWord8 = if s7249 then s7289 else s7290
-  s7292 :: SWord8 = if s29 then s7272 else s7257
-  s7293 :: SWord8 = if s170 then s7291 else s7292
-  s7294 :: SWord8 = s7283 + s7293
-  s7295 :: SBool = s7294 < s7293
-  s7296 :: SBool = s7294 < s7283
-  s7297 :: SBool = s7295 | s7296
-  s7298 :: SWord8 = s7294 >>> 1
-  s7299 :: SWord8 = s24 | s7298
-  s7300 :: SWord8 = s26 & s7298
-  s7301 :: SWord8 = if s7297 then s7299 else s7300
-  s7302 :: SWord8 = if s7276 then s7287 else s7301
-  s7303 :: SWord8 = if s7218 then s7268 else s7302
-  s7304 :: SWord8 = s7203 + s7255
-  s7305 :: SWord8 = s18 & s7304
-  s7306 :: SBool = s17 /= s7305
-  s7307 :: SWord8 = if s7306 then s7212 else s7213
-  s7308 :: SWord8 = if s22 then s7307 else s7209
-  s7309 :: SWord8 = s18 & s7308
-  s7310 :: SBool = s17 /= s7309
-  s7311 :: SBool = s_2 == s7310
-  s7312 :: SBool = s7304 < s7255
-  s7313 :: SBool = s7304 < s7203
-  s7314 :: SBool = s7312 | s7313
-  s7315 :: SWord8 = s7304 >>> 1
-  s7316 :: SWord8 = s24 | s7315
-  s7317 :: SWord8 = s26 & s7315
-  s7318 :: SWord8 = if s7314 then s7316 else s7317
-  s7319 :: SWord8 = s18 & s7318
-  s7320 :: SBool = s17 /= s7319
-  s7321 :: SWord8 = s7308 >>> 1
-  s7322 :: SWord8 = s24 | s7321
-  s7323 :: SWord8 = s26 & s7321
-  s7324 :: SWord8 = if s7226 then s7322 else s7323
-  s7325 :: SWord8 = if s22 then s7324 else s7307
-  s7326 :: SWord8 = s7325 >>> 1
-  s7327 :: SWord8 = s24 | s7326
-  s7328 :: SWord8 = s26 & s7326
-  s7329 :: SWord8 = if s7320 then s7327 else s7328
-  s7330 :: SWord8 = if s22 then s7329 else s7324
-  s7331 :: SWord8 = s18 & s7330
-  s7332 :: SBool = s17 /= s7331
-  s7333 :: SBool = s_2 == s7332
-  s7334 :: SWord8 = s7318 >>> 1
-  s7335 :: SWord8 = s24 | s7334
-  s7336 :: SWord8 = s26 & s7334
-  s7337 :: SWord8 = if s7310 then s7335 else s7336
-  s7338 :: SWord8 = s7337 >>> 1
-  s7339 :: SWord8 = s24 | s7338
-  s7340 :: SWord8 = s26 & s7338
-  s7341 :: SWord8 = if s7332 then s7339 else s7340
-  s7342 :: SWord8 = s18 & s7325
-  s7343 :: SBool = s17 /= s7342
-  s7344 :: SWord8 = s7330 >>> 1
-  s7345 :: SWord8 = s24 | s7344
-  s7346 :: SWord8 = s26 & s7344
-  s7347 :: SWord8 = if s7343 then s7345 else s7346
-  s7348 :: SWord8 = if s29 then s7307 else s7255
-  s7349 :: SWord8 = if s170 then s7324 else s7348
-  s7350 :: SWord8 = if s29 then s7329 else s7349
-  s7351 :: SWord8 = if s170 then s7347 else s7350
-  s7352 :: SWord8 = s7337 + s7351
-  s7353 :: SBool = s7352 < s7351
-  s7354 :: SBool = s7352 < s7337
-  s7355 :: SBool = s7353 | s7354
-  s7356 :: SWord8 = s7352 >>> 1
-  s7357 :: SWord8 = s24 | s7356
-  s7358 :: SWord8 = s26 & s7356
-  s7359 :: SWord8 = if s7355 then s7357 else s7358
-  s7360 :: SWord8 = if s7333 then s7341 else s7359
-  s7361 :: SWord8 = s7318 + s7349
-  s7362 :: SWord8 = s18 & s7361
-  s7363 :: SBool = s17 /= s7362
-  s7364 :: SWord8 = if s7363 then s7327 else s7328
-  s7365 :: SWord8 = if s22 then s7364 else s7324
-  s7366 :: SWord8 = s18 & s7365
-  s7367 :: SBool = s17 /= s7366
-  s7368 :: SBool = s_2 == s7367
-  s7369 :: SBool = s7361 < s7349
-  s7370 :: SBool = s7361 < s7318
-  s7371 :: SBool = s7369 | s7370
-  s7372 :: SWord8 = s7361 >>> 1
-  s7373 :: SWord8 = s24 | s7372
-  s7374 :: SWord8 = s26 & s7372
-  s7375 :: SWord8 = if s7371 then s7373 else s7374
-  s7376 :: SWord8 = s7375 >>> 1
-  s7377 :: SWord8 = s24 | s7376
-  s7378 :: SWord8 = s26 & s7376
-  s7379 :: SWord8 = if s7367 then s7377 else s7378
-  s7380 :: SWord8 = s7365 >>> 1
-  s7381 :: SWord8 = s24 | s7380
-  s7382 :: SWord8 = s26 & s7380
-  s7383 :: SWord8 = if s7343 then s7381 else s7382
-  s7384 :: SWord8 = if s29 then s7364 else s7349
-  s7385 :: SWord8 = if s170 then s7383 else s7384
-  s7386 :: SWord8 = s7375 + s7385
-  s7387 :: SBool = s7386 < s7385
-  s7388 :: SBool = s7386 < s7375
-  s7389 :: SBool = s7387 | s7388
-  s7390 :: SWord8 = s7386 >>> 1
-  s7391 :: SWord8 = s24 | s7390
-  s7392 :: SWord8 = s26 & s7390
-  s7393 :: SWord8 = if s7389 then s7391 else s7392
-  s7394 :: SWord8 = if s7368 then s7379 else s7393
-  s7395 :: SWord8 = if s7311 then s7360 else s7394
-  s7396 :: SWord8 = if s7196 then s7303 else s7395
-  s7397 :: SWord8 = if s6965 then s7188 else s7396
-  s7398 :: SWord8 = if s6502 then s6957 else s7397
-  s7399 :: SWord8 = if s5575 then s6494 else s7398
-  s7400 :: SWord8 = if s3725 then s5567 else s7399
-  s7401 :: SWord8 = if s21 then s3717 else s7400
-  s7402 :: SWord16 = s17 # s7401
-  s7403 :: SWord16 = s16 * s7402
-  s7404 :: SWord8 = s18 & s165
-  s7405 :: SBool = s17 /= s7404
-  s7406 :: SWord8 = if s22 then s176 else s157
-  s7407 :: SWord8 = s7406 >>> 1
-  s7408 :: SWord8 = s24 | s7407
-  s7409 :: SWord8 = s26 & s7407
-  s7410 :: SWord8 = if s7405 then s7408 else s7409
-  s7411 :: SWord8 = s18 & s193
-  s7412 :: SBool = s17 /= s7411
-  s7413 :: SWord8 = if s7412 then s7408 else s7409
-  s7414 :: SWord8 = if s161 then s7410 else s7413
-  s7415 :: SWord8 = s18 & s216
-  s7416 :: SBool = s17 /= s7415
-  s7417 :: SWord8 = if s22 then s224 else s205
-  s7418 :: SWord8 = s7417 >>> 1
-  s7419 :: SWord8 = s24 | s7418
-  s7420 :: SWord8 = s26 & s7418
-  s7421 :: SWord8 = if s7416 then s7419 else s7420
-  s7422 :: SWord8 = s18 & s227
-  s7423 :: SBool = s17 /= s7422
-  s7424 :: SWord8 = if s7423 then s7419 else s7420
-  s7425 :: SWord8 = if s209 then s7421 else s7424
-  s7426 :: SWord8 = if s140 then s7414 else s7425
-  s7427 :: SWord8 = s18 & s270
-  s7428 :: SBool = s17 /= s7427
-  s7429 :: SWord8 = if s22 then s280 else s262
-  s7430 :: SWord8 = s7429 >>> 1
-  s7431 :: SWord8 = s24 | s7430
-  s7432 :: SWord8 = s26 & s7430
-  s7433 :: SWord8 = if s7428 then s7431 else s7432
-  s7434 :: SWord8 = s18 & s285
-  s7435 :: SBool = s17 /= s7434
-  s7436 :: SWord8 = if s7435 then s7431 else s7432
-  s7437 :: SWord8 = if s266 then s7433 else s7436
-  s7438 :: SWord8 = s18 & s308
-  s7439 :: SBool = s17 /= s7438
-  s7440 :: SWord8 = if s22 then s316 else s297
-  s7441 :: SWord8 = s7440 >>> 1
-  s7442 :: SWord8 = s24 | s7441
-  s7443 :: SWord8 = s26 & s7441
-  s7444 :: SWord8 = if s7439 then s7442 else s7443
-  s7445 :: SWord8 = s18 & s319
-  s7446 :: SBool = s17 /= s7445
-  s7447 :: SWord8 = if s7446 then s7442 else s7443
-  s7448 :: SWord8 = if s301 then s7444 else s7447
-  s7449 :: SWord8 = if s244 then s7437 else s7448
-  s7450 :: SWord8 = if s119 then s7426 else s7449
-  s7451 :: SWord8 = s18 & s384
-  s7452 :: SBool = s17 /= s7451
-  s7453 :: SWord8 = if s22 then s394 else s376
-  s7454 :: SWord8 = s7453 >>> 1
-  s7455 :: SWord8 = s24 | s7454
-  s7456 :: SWord8 = s26 & s7454
-  s7457 :: SWord8 = if s7452 then s7455 else s7456
-  s7458 :: SWord8 = s18 & s401
-  s7459 :: SBool = s17 /= s7458
-  s7460 :: SWord8 = if s7459 then s7455 else s7456
-  s7461 :: SWord8 = if s380 then s7457 else s7460
-  s7462 :: SWord8 = s18 & s424
-  s7463 :: SBool = s17 /= s7462
-  s7464 :: SWord8 = if s22 then s432 else s413
-  s7465 :: SWord8 = s7464 >>> 1
-  s7466 :: SWord8 = s24 | s7465
-  s7467 :: SWord8 = s26 & s7465
-  s7468 :: SWord8 = if s7463 then s7466 else s7467
-  s7469 :: SWord8 = s18 & s435
-  s7470 :: SBool = s17 /= s7469
-  s7471 :: SWord8 = if s7470 then s7466 else s7467
-  s7472 :: SWord8 = if s417 then s7468 else s7471
-  s7473 :: SWord8 = if s359 then s7461 else s7472
-  s7474 :: SWord8 = s18 & s478
-  s7475 :: SBool = s17 /= s7474
-  s7476 :: SWord8 = if s22 then s488 else s470
-  s7477 :: SWord8 = s7476 >>> 1
-  s7478 :: SWord8 = s24 | s7477
-  s7479 :: SWord8 = s26 & s7477
-  s7480 :: SWord8 = if s7475 then s7478 else s7479
-  s7481 :: SWord8 = s18 & s493
-  s7482 :: SBool = s17 /= s7481
-  s7483 :: SWord8 = if s7482 then s7478 else s7479
-  s7484 :: SWord8 = if s474 then s7480 else s7483
-  s7485 :: SWord8 = s18 & s516
-  s7486 :: SBool = s17 /= s7485
-  s7487 :: SWord8 = if s22 then s524 else s505
-  s7488 :: SWord8 = s7487 >>> 1
-  s7489 :: SWord8 = s24 | s7488
-  s7490 :: SWord8 = s26 & s7488
-  s7491 :: SWord8 = if s7486 then s7489 else s7490
-  s7492 :: SWord8 = s18 & s527
-  s7493 :: SBool = s17 /= s7492
-  s7494 :: SWord8 = if s7493 then s7489 else s7490
-  s7495 :: SWord8 = if s509 then s7491 else s7494
-  s7496 :: SWord8 = if s452 then s7484 else s7495
-  s7497 :: SWord8 = if s337 then s7473 else s7496
-  s7498 :: SWord8 = if s98 then s7450 else s7497
-  s7499 :: SWord8 = s18 & s614
-  s7500 :: SBool = s17 /= s7499
-  s7501 :: SWord8 = if s22 then s624 else s606
-  s7502 :: SWord8 = s7501 >>> 1
-  s7503 :: SWord8 = s24 | s7502
-  s7504 :: SWord8 = s26 & s7502
-  s7505 :: SWord8 = if s7500 then s7503 else s7504
-  s7506 :: SWord8 = s18 & s633
-  s7507 :: SBool = s17 /= s7506
-  s7508 :: SWord8 = if s7507 then s7503 else s7504
-  s7509 :: SWord8 = if s610 then s7505 else s7508
-  s7510 :: SWord8 = s18 & s656
-  s7511 :: SBool = s17 /= s7510
-  s7512 :: SWord8 = if s22 then s664 else s645
-  s7513 :: SWord8 = s7512 >>> 1
-  s7514 :: SWord8 = s24 | s7513
-  s7515 :: SWord8 = s26 & s7513
-  s7516 :: SWord8 = if s7511 then s7514 else s7515
-  s7517 :: SWord8 = s18 & s667
-  s7518 :: SBool = s17 /= s7517
-  s7519 :: SWord8 = if s7518 then s7514 else s7515
-  s7520 :: SWord8 = if s649 then s7516 else s7519
-  s7521 :: SWord8 = if s589 then s7509 else s7520
-  s7522 :: SWord8 = s18 & s710
-  s7523 :: SBool = s17 /= s7522
-  s7524 :: SWord8 = if s22 then s720 else s702
-  s7525 :: SWord8 = s7524 >>> 1
-  s7526 :: SWord8 = s24 | s7525
-  s7527 :: SWord8 = s26 & s7525
-  s7528 :: SWord8 = if s7523 then s7526 else s7527
-  s7529 :: SWord8 = s18 & s725
-  s7530 :: SBool = s17 /= s7529
-  s7531 :: SWord8 = if s7530 then s7526 else s7527
-  s7532 :: SWord8 = if s706 then s7528 else s7531
-  s7533 :: SWord8 = s18 & s748
-  s7534 :: SBool = s17 /= s7533
-  s7535 :: SWord8 = if s22 then s756 else s737
-  s7536 :: SWord8 = s7535 >>> 1
-  s7537 :: SWord8 = s24 | s7536
-  s7538 :: SWord8 = s26 & s7536
-  s7539 :: SWord8 = if s7534 then s7537 else s7538
-  s7540 :: SWord8 = s18 & s759
-  s7541 :: SBool = s17 /= s7540
-  s7542 :: SWord8 = if s7541 then s7537 else s7538
-  s7543 :: SWord8 = if s741 then s7539 else s7542
-  s7544 :: SWord8 = if s684 then s7532 else s7543
-  s7545 :: SWord8 = if s568 then s7521 else s7544
-  s7546 :: SWord8 = s18 & s824
-  s7547 :: SBool = s17 /= s7546
-  s7548 :: SWord8 = if s22 then s834 else s816
-  s7549 :: SWord8 = s7548 >>> 1
-  s7550 :: SWord8 = s24 | s7549
-  s7551 :: SWord8 = s26 & s7549
-  s7552 :: SWord8 = if s7547 then s7550 else s7551
-  s7553 :: SWord8 = s18 & s841
-  s7554 :: SBool = s17 /= s7553
-  s7555 :: SWord8 = if s7554 then s7550 else s7551
-  s7556 :: SWord8 = if s820 then s7552 else s7555
-  s7557 :: SWord8 = s18 & s864
-  s7558 :: SBool = s17 /= s7557
-  s7559 :: SWord8 = if s22 then s872 else s853
-  s7560 :: SWord8 = s7559 >>> 1
-  s7561 :: SWord8 = s24 | s7560
-  s7562 :: SWord8 = s26 & s7560
-  s7563 :: SWord8 = if s7558 then s7561 else s7562
-  s7564 :: SWord8 = s18 & s875
-  s7565 :: SBool = s17 /= s7564
-  s7566 :: SWord8 = if s7565 then s7561 else s7562
-  s7567 :: SWord8 = if s857 then s7563 else s7566
-  s7568 :: SWord8 = if s799 then s7556 else s7567
-  s7569 :: SWord8 = s18 & s918
-  s7570 :: SBool = s17 /= s7569
-  s7571 :: SWord8 = if s22 then s928 else s910
-  s7572 :: SWord8 = s7571 >>> 1
-  s7573 :: SWord8 = s24 | s7572
-  s7574 :: SWord8 = s26 & s7572
-  s7575 :: SWord8 = if s7570 then s7573 else s7574
-  s7576 :: SWord8 = s18 & s933
-  s7577 :: SBool = s17 /= s7576
-  s7578 :: SWord8 = if s7577 then s7573 else s7574
-  s7579 :: SWord8 = if s914 then s7575 else s7578
-  s7580 :: SWord8 = s18 & s956
-  s7581 :: SBool = s17 /= s7580
-  s7582 :: SWord8 = if s22 then s964 else s945
-  s7583 :: SWord8 = s7582 >>> 1
-  s7584 :: SWord8 = s24 | s7583
-  s7585 :: SWord8 = s26 & s7583
-  s7586 :: SWord8 = if s7581 then s7584 else s7585
-  s7587 :: SWord8 = s18 & s967
-  s7588 :: SBool = s17 /= s7587
-  s7589 :: SWord8 = if s7588 then s7584 else s7585
-  s7590 :: SWord8 = if s949 then s7586 else s7589
-  s7591 :: SWord8 = if s892 then s7579 else s7590
-  s7592 :: SWord8 = if s777 then s7568 else s7591
-  s7593 :: SWord8 = if s546 then s7545 else s7592
-  s7594 :: SWord8 = if s77 then s7498 else s7593
-  s7595 :: SWord8 = s18 & s1076
-  s7596 :: SBool = s17 /= s7595
-  s7597 :: SWord8 = if s22 then s1086 else s1068
-  s7598 :: SWord8 = s7597 >>> 1
-  s7599 :: SWord8 = s24 | s7598
-  s7600 :: SWord8 = s26 & s7598
-  s7601 :: SWord8 = if s7596 then s7599 else s7600
-  s7602 :: SWord8 = s18 & s1097
-  s7603 :: SBool = s17 /= s7602
-  s7604 :: SWord8 = if s7603 then s7599 else s7600
-  s7605 :: SWord8 = if s1072 then s7601 else s7604
-  s7606 :: SWord8 = s18 & s1120
-  s7607 :: SBool = s17 /= s7606
-  s7608 :: SWord8 = if s22 then s1128 else s1109
-  s7609 :: SWord8 = s7608 >>> 1
-  s7610 :: SWord8 = s24 | s7609
-  s7611 :: SWord8 = s26 & s7609
-  s7612 :: SWord8 = if s7607 then s7610 else s7611
-  s7613 :: SWord8 = s18 & s1131
-  s7614 :: SBool = s17 /= s7613
-  s7615 :: SWord8 = if s7614 then s7610 else s7611
-  s7616 :: SWord8 = if s1113 then s7612 else s7615
-  s7617 :: SWord8 = if s1051 then s7605 else s7616
-  s7618 :: SWord8 = s18 & s1174
-  s7619 :: SBool = s17 /= s7618
-  s7620 :: SWord8 = if s22 then s1184 else s1166
-  s7621 :: SWord8 = s7620 >>> 1
-  s7622 :: SWord8 = s24 | s7621
-  s7623 :: SWord8 = s26 & s7621
-  s7624 :: SWord8 = if s7619 then s7622 else s7623
-  s7625 :: SWord8 = s18 & s1189
-  s7626 :: SBool = s17 /= s7625
-  s7627 :: SWord8 = if s7626 then s7622 else s7623
-  s7628 :: SWord8 = if s1170 then s7624 else s7627
-  s7629 :: SWord8 = s18 & s1212
-  s7630 :: SBool = s17 /= s7629
-  s7631 :: SWord8 = if s22 then s1220 else s1201
-  s7632 :: SWord8 = s7631 >>> 1
-  s7633 :: SWord8 = s24 | s7632
-  s7634 :: SWord8 = s26 & s7632
-  s7635 :: SWord8 = if s7630 then s7633 else s7634
-  s7636 :: SWord8 = s18 & s1223
-  s7637 :: SBool = s17 /= s7636
-  s7638 :: SWord8 = if s7637 then s7633 else s7634
-  s7639 :: SWord8 = if s1205 then s7635 else s7638
-  s7640 :: SWord8 = if s1148 then s7628 else s7639
-  s7641 :: SWord8 = if s1030 then s7617 else s7640
-  s7642 :: SWord8 = s18 & s1288
-  s7643 :: SBool = s17 /= s7642
-  s7644 :: SWord8 = if s22 then s1298 else s1280
-  s7645 :: SWord8 = s7644 >>> 1
-  s7646 :: SWord8 = s24 | s7645
-  s7647 :: SWord8 = s26 & s7645
-  s7648 :: SWord8 = if s7643 then s7646 else s7647
-  s7649 :: SWord8 = s18 & s1305
-  s7650 :: SBool = s17 /= s7649
-  s7651 :: SWord8 = if s7650 then s7646 else s7647
-  s7652 :: SWord8 = if s1284 then s7648 else s7651
-  s7653 :: SWord8 = s18 & s1328
-  s7654 :: SBool = s17 /= s7653
-  s7655 :: SWord8 = if s22 then s1336 else s1317
-  s7656 :: SWord8 = s7655 >>> 1
-  s7657 :: SWord8 = s24 | s7656
-  s7658 :: SWord8 = s26 & s7656
-  s7659 :: SWord8 = if s7654 then s7657 else s7658
-  s7660 :: SWord8 = s18 & s1339
-  s7661 :: SBool = s17 /= s7660
-  s7662 :: SWord8 = if s7661 then s7657 else s7658
-  s7663 :: SWord8 = if s1321 then s7659 else s7662
-  s7664 :: SWord8 = if s1263 then s7652 else s7663
-  s7665 :: SWord8 = s18 & s1382
-  s7666 :: SBool = s17 /= s7665
-  s7667 :: SWord8 = if s22 then s1392 else s1374
-  s7668 :: SWord8 = s7667 >>> 1
-  s7669 :: SWord8 = s24 | s7668
-  s7670 :: SWord8 = s26 & s7668
-  s7671 :: SWord8 = if s7666 then s7669 else s7670
-  s7672 :: SWord8 = s18 & s1397
-  s7673 :: SBool = s17 /= s7672
-  s7674 :: SWord8 = if s7673 then s7669 else s7670
-  s7675 :: SWord8 = if s1378 then s7671 else s7674
-  s7676 :: SWord8 = s18 & s1420
-  s7677 :: SBool = s17 /= s7676
-  s7678 :: SWord8 = if s22 then s1428 else s1409
-  s7679 :: SWord8 = s7678 >>> 1
-  s7680 :: SWord8 = s24 | s7679
-  s7681 :: SWord8 = s26 & s7679
-  s7682 :: SWord8 = if s7677 then s7680 else s7681
-  s7683 :: SWord8 = s18 & s1431
-  s7684 :: SBool = s17 /= s7683
-  s7685 :: SWord8 = if s7684 then s7680 else s7681
-  s7686 :: SWord8 = if s1413 then s7682 else s7685
-  s7687 :: SWord8 = if s1356 then s7675 else s7686
-  s7688 :: SWord8 = if s1241 then s7664 else s7687
-  s7689 :: SWord8 = if s1009 then s7641 else s7688
-  s7690 :: SWord8 = s18 & s1518
-  s7691 :: SBool = s17 /= s7690
-  s7692 :: SWord8 = if s22 then s1528 else s1510
-  s7693 :: SWord8 = s7692 >>> 1
-  s7694 :: SWord8 = s24 | s7693
-  s7695 :: SWord8 = s26 & s7693
-  s7696 :: SWord8 = if s7691 then s7694 else s7695
-  s7697 :: SWord8 = s18 & s1537
-  s7698 :: SBool = s17 /= s7697
-  s7699 :: SWord8 = if s7698 then s7694 else s7695
-  s7700 :: SWord8 = if s1514 then s7696 else s7699
-  s7701 :: SWord8 = s18 & s1560
-  s7702 :: SBool = s17 /= s7701
-  s7703 :: SWord8 = if s22 then s1568 else s1549
-  s7704 :: SWord8 = s7703 >>> 1
-  s7705 :: SWord8 = s24 | s7704
-  s7706 :: SWord8 = s26 & s7704
-  s7707 :: SWord8 = if s7702 then s7705 else s7706
-  s7708 :: SWord8 = s18 & s1571
-  s7709 :: SBool = s17 /= s7708
-  s7710 :: SWord8 = if s7709 then s7705 else s7706
-  s7711 :: SWord8 = if s1553 then s7707 else s7710
-  s7712 :: SWord8 = if s1493 then s7700 else s7711
-  s7713 :: SWord8 = s18 & s1614
-  s7714 :: SBool = s17 /= s7713
-  s7715 :: SWord8 = if s22 then s1624 else s1606
-  s7716 :: SWord8 = s7715 >>> 1
-  s7717 :: SWord8 = s24 | s7716
-  s7718 :: SWord8 = s26 & s7716
-  s7719 :: SWord8 = if s7714 then s7717 else s7718
-  s7720 :: SWord8 = s18 & s1629
-  s7721 :: SBool = s17 /= s7720
-  s7722 :: SWord8 = if s7721 then s7717 else s7718
-  s7723 :: SWord8 = if s1610 then s7719 else s7722
-  s7724 :: SWord8 = s18 & s1652
-  s7725 :: SBool = s17 /= s7724
-  s7726 :: SWord8 = if s22 then s1660 else s1641
-  s7727 :: SWord8 = s7726 >>> 1
-  s7728 :: SWord8 = s24 | s7727
-  s7729 :: SWord8 = s26 & s7727
-  s7730 :: SWord8 = if s7725 then s7728 else s7729
-  s7731 :: SWord8 = s18 & s1663
-  s7732 :: SBool = s17 /= s7731
-  s7733 :: SWord8 = if s7732 then s7728 else s7729
-  s7734 :: SWord8 = if s1645 then s7730 else s7733
-  s7735 :: SWord8 = if s1588 then s7723 else s7734
-  s7736 :: SWord8 = if s1472 then s7712 else s7735
-  s7737 :: SWord8 = s18 & s1728
-  s7738 :: SBool = s17 /= s7737
-  s7739 :: SWord8 = if s22 then s1738 else s1720
-  s7740 :: SWord8 = s7739 >>> 1
-  s7741 :: SWord8 = s24 | s7740
-  s7742 :: SWord8 = s26 & s7740
-  s7743 :: SWord8 = if s7738 then s7741 else s7742
-  s7744 :: SWord8 = s18 & s1745
-  s7745 :: SBool = s17 /= s7744
-  s7746 :: SWord8 = if s7745 then s7741 else s7742
-  s7747 :: SWord8 = if s1724 then s7743 else s7746
-  s7748 :: SWord8 = s18 & s1768
-  s7749 :: SBool = s17 /= s7748
-  s7750 :: SWord8 = if s22 then s1776 else s1757
-  s7751 :: SWord8 = s7750 >>> 1
-  s7752 :: SWord8 = s24 | s7751
-  s7753 :: SWord8 = s26 & s7751
-  s7754 :: SWord8 = if s7749 then s7752 else s7753
-  s7755 :: SWord8 = s18 & s1779
-  s7756 :: SBool = s17 /= s7755
-  s7757 :: SWord8 = if s7756 then s7752 else s7753
-  s7758 :: SWord8 = if s1761 then s7754 else s7757
-  s7759 :: SWord8 = if s1703 then s7747 else s7758
-  s7760 :: SWord8 = s18 & s1822
-  s7761 :: SBool = s17 /= s7760
-  s7762 :: SWord8 = if s22 then s1832 else s1814
-  s7763 :: SWord8 = s7762 >>> 1
-  s7764 :: SWord8 = s24 | s7763
-  s7765 :: SWord8 = s26 & s7763
-  s7766 :: SWord8 = if s7761 then s7764 else s7765
-  s7767 :: SWord8 = s18 & s1837
-  s7768 :: SBool = s17 /= s7767
-  s7769 :: SWord8 = if s7768 then s7764 else s7765
-  s7770 :: SWord8 = if s1818 then s7766 else s7769
-  s7771 :: SWord8 = s18 & s1860
-  s7772 :: SBool = s17 /= s7771
-  s7773 :: SWord8 = if s22 then s1868 else s1849
-  s7774 :: SWord8 = s7773 >>> 1
-  s7775 :: SWord8 = s24 | s7774
-  s7776 :: SWord8 = s26 & s7774
-  s7777 :: SWord8 = if s7772 then s7775 else s7776
-  s7778 :: SWord8 = s18 & s1871
-  s7779 :: SBool = s17 /= s7778
-  s7780 :: SWord8 = if s7779 then s7775 else s7776
-  s7781 :: SWord8 = if s1853 then s7777 else s7780
-  s7782 :: SWord8 = if s1796 then s7770 else s7781
-  s7783 :: SWord8 = if s1681 then s7759 else s7782
-  s7784 :: SWord8 = if s1450 then s7736 else s7783
-  s7785 :: SWord8 = if s987 then s7689 else s7784
-  s7786 :: SWord8 = if s56 then s7594 else s7785
-  s7787 :: SWord8 = s18 & s2002
-  s7788 :: SBool = s17 /= s7787
-  s7789 :: SWord8 = if s22 then s2012 else s1994
-  s7790 :: SWord8 = s7789 >>> 1
-  s7791 :: SWord8 = s24 | s7790
-  s7792 :: SWord8 = s26 & s7790
-  s7793 :: SWord8 = if s7788 then s7791 else s7792
-  s7794 :: SWord8 = s18 & s2025
-  s7795 :: SBool = s17 /= s7794
-  s7796 :: SWord8 = if s7795 then s7791 else s7792
-  s7797 :: SWord8 = if s1998 then s7793 else s7796
-  s7798 :: SWord8 = s18 & s2048
-  s7799 :: SBool = s17 /= s7798
-  s7800 :: SWord8 = if s22 then s2056 else s2037
-  s7801 :: SWord8 = s7800 >>> 1
-  s7802 :: SWord8 = s24 | s7801
-  s7803 :: SWord8 = s26 & s7801
-  s7804 :: SWord8 = if s7799 then s7802 else s7803
-  s7805 :: SWord8 = s18 & s2059
-  s7806 :: SBool = s17 /= s7805
-  s7807 :: SWord8 = if s7806 then s7802 else s7803
-  s7808 :: SWord8 = if s2041 then s7804 else s7807
-  s7809 :: SWord8 = if s1977 then s7797 else s7808
-  s7810 :: SWord8 = s18 & s2102
-  s7811 :: SBool = s17 /= s7810
-  s7812 :: SWord8 = if s22 then s2112 else s2094
-  s7813 :: SWord8 = s7812 >>> 1
-  s7814 :: SWord8 = s24 | s7813
-  s7815 :: SWord8 = s26 & s7813
-  s7816 :: SWord8 = if s7811 then s7814 else s7815
-  s7817 :: SWord8 = s18 & s2117
-  s7818 :: SBool = s17 /= s7817
-  s7819 :: SWord8 = if s7818 then s7814 else s7815
-  s7820 :: SWord8 = if s2098 then s7816 else s7819
-  s7821 :: SWord8 = s18 & s2140
-  s7822 :: SBool = s17 /= s7821
-  s7823 :: SWord8 = if s22 then s2148 else s2129
-  s7824 :: SWord8 = s7823 >>> 1
-  s7825 :: SWord8 = s24 | s7824
-  s7826 :: SWord8 = s26 & s7824
-  s7827 :: SWord8 = if s7822 then s7825 else s7826
-  s7828 :: SWord8 = s18 & s2151
-  s7829 :: SBool = s17 /= s7828
-  s7830 :: SWord8 = if s7829 then s7825 else s7826
-  s7831 :: SWord8 = if s2133 then s7827 else s7830
-  s7832 :: SWord8 = if s2076 then s7820 else s7831
-  s7833 :: SWord8 = if s1956 then s7809 else s7832
-  s7834 :: SWord8 = s18 & s2216
-  s7835 :: SBool = s17 /= s7834
-  s7836 :: SWord8 = if s22 then s2226 else s2208
-  s7837 :: SWord8 = s7836 >>> 1
-  s7838 :: SWord8 = s24 | s7837
-  s7839 :: SWord8 = s26 & s7837
-  s7840 :: SWord8 = if s7835 then s7838 else s7839
-  s7841 :: SWord8 = s18 & s2233
-  s7842 :: SBool = s17 /= s7841
-  s7843 :: SWord8 = if s7842 then s7838 else s7839
-  s7844 :: SWord8 = if s2212 then s7840 else s7843
-  s7845 :: SWord8 = s18 & s2256
-  s7846 :: SBool = s17 /= s7845
-  s7847 :: SWord8 = if s22 then s2264 else s2245
-  s7848 :: SWord8 = s7847 >>> 1
-  s7849 :: SWord8 = s24 | s7848
-  s7850 :: SWord8 = s26 & s7848
-  s7851 :: SWord8 = if s7846 then s7849 else s7850
-  s7852 :: SWord8 = s18 & s2267
-  s7853 :: SBool = s17 /= s7852
-  s7854 :: SWord8 = if s7853 then s7849 else s7850
-  s7855 :: SWord8 = if s2249 then s7851 else s7854
-  s7856 :: SWord8 = if s2191 then s7844 else s7855
-  s7857 :: SWord8 = s18 & s2310
-  s7858 :: SBool = s17 /= s7857
-  s7859 :: SWord8 = if s22 then s2320 else s2302
-  s7860 :: SWord8 = s7859 >>> 1
-  s7861 :: SWord8 = s24 | s7860
-  s7862 :: SWord8 = s26 & s7860
-  s7863 :: SWord8 = if s7858 then s7861 else s7862
-  s7864 :: SWord8 = s18 & s2325
-  s7865 :: SBool = s17 /= s7864
-  s7866 :: SWord8 = if s7865 then s7861 else s7862
-  s7867 :: SWord8 = if s2306 then s7863 else s7866
-  s7868 :: SWord8 = s18 & s2348
-  s7869 :: SBool = s17 /= s7868
-  s7870 :: SWord8 = if s22 then s2356 else s2337
-  s7871 :: SWord8 = s7870 >>> 1
-  s7872 :: SWord8 = s24 | s7871
-  s7873 :: SWord8 = s26 & s7871
-  s7874 :: SWord8 = if s7869 then s7872 else s7873
-  s7875 :: SWord8 = s18 & s2359
-  s7876 :: SBool = s17 /= s7875
-  s7877 :: SWord8 = if s7876 then s7872 else s7873
-  s7878 :: SWord8 = if s2341 then s7874 else s7877
-  s7879 :: SWord8 = if s2284 then s7867 else s7878
-  s7880 :: SWord8 = if s2169 then s7856 else s7879
-  s7881 :: SWord8 = if s1935 then s7833 else s7880
-  s7882 :: SWord8 = s18 & s2446
-  s7883 :: SBool = s17 /= s7882
-  s7884 :: SWord8 = if s22 then s2456 else s2438
-  s7885 :: SWord8 = s7884 >>> 1
-  s7886 :: SWord8 = s24 | s7885
-  s7887 :: SWord8 = s26 & s7885
-  s7888 :: SWord8 = if s7883 then s7886 else s7887
-  s7889 :: SWord8 = s18 & s2465
-  s7890 :: SBool = s17 /= s7889
-  s7891 :: SWord8 = if s7890 then s7886 else s7887
-  s7892 :: SWord8 = if s2442 then s7888 else s7891
-  s7893 :: SWord8 = s18 & s2488
-  s7894 :: SBool = s17 /= s7893
-  s7895 :: SWord8 = if s22 then s2496 else s2477
-  s7896 :: SWord8 = s7895 >>> 1
-  s7897 :: SWord8 = s24 | s7896
-  s7898 :: SWord8 = s26 & s7896
-  s7899 :: SWord8 = if s7894 then s7897 else s7898
-  s7900 :: SWord8 = s18 & s2499
-  s7901 :: SBool = s17 /= s7900
-  s7902 :: SWord8 = if s7901 then s7897 else s7898
-  s7903 :: SWord8 = if s2481 then s7899 else s7902
-  s7904 :: SWord8 = if s2421 then s7892 else s7903
-  s7905 :: SWord8 = s18 & s2542
-  s7906 :: SBool = s17 /= s7905
-  s7907 :: SWord8 = if s22 then s2552 else s2534
-  s7908 :: SWord8 = s7907 >>> 1
-  s7909 :: SWord8 = s24 | s7908
-  s7910 :: SWord8 = s26 & s7908
-  s7911 :: SWord8 = if s7906 then s7909 else s7910
-  s7912 :: SWord8 = s18 & s2557
-  s7913 :: SBool = s17 /= s7912
-  s7914 :: SWord8 = if s7913 then s7909 else s7910
-  s7915 :: SWord8 = if s2538 then s7911 else s7914
-  s7916 :: SWord8 = s18 & s2580
-  s7917 :: SBool = s17 /= s7916
-  s7918 :: SWord8 = if s22 then s2588 else s2569
-  s7919 :: SWord8 = s7918 >>> 1
-  s7920 :: SWord8 = s24 | s7919
-  s7921 :: SWord8 = s26 & s7919
-  s7922 :: SWord8 = if s7917 then s7920 else s7921
-  s7923 :: SWord8 = s18 & s2591
-  s7924 :: SBool = s17 /= s7923
-  s7925 :: SWord8 = if s7924 then s7920 else s7921
-  s7926 :: SWord8 = if s2573 then s7922 else s7925
-  s7927 :: SWord8 = if s2516 then s7915 else s7926
-  s7928 :: SWord8 = if s2400 then s7904 else s7927
-  s7929 :: SWord8 = s18 & s2656
-  s7930 :: SBool = s17 /= s7929
-  s7931 :: SWord8 = if s22 then s2666 else s2648
-  s7932 :: SWord8 = s7931 >>> 1
-  s7933 :: SWord8 = s24 | s7932
-  s7934 :: SWord8 = s26 & s7932
-  s7935 :: SWord8 = if s7930 then s7933 else s7934
-  s7936 :: SWord8 = s18 & s2673
-  s7937 :: SBool = s17 /= s7936
-  s7938 :: SWord8 = if s7937 then s7933 else s7934
-  s7939 :: SWord8 = if s2652 then s7935 else s7938
-  s7940 :: SWord8 = s18 & s2696
-  s7941 :: SBool = s17 /= s7940
-  s7942 :: SWord8 = if s22 then s2704 else s2685
-  s7943 :: SWord8 = s7942 >>> 1
-  s7944 :: SWord8 = s24 | s7943
-  s7945 :: SWord8 = s26 & s7943
-  s7946 :: SWord8 = if s7941 then s7944 else s7945
-  s7947 :: SWord8 = s18 & s2707
-  s7948 :: SBool = s17 /= s7947
-  s7949 :: SWord8 = if s7948 then s7944 else s7945
-  s7950 :: SWord8 = if s2689 then s7946 else s7949
-  s7951 :: SWord8 = if s2631 then s7939 else s7950
-  s7952 :: SWord8 = s18 & s2750
-  s7953 :: SBool = s17 /= s7952
-  s7954 :: SWord8 = if s22 then s2760 else s2742
-  s7955 :: SWord8 = s7954 >>> 1
-  s7956 :: SWord8 = s24 | s7955
-  s7957 :: SWord8 = s26 & s7955
-  s7958 :: SWord8 = if s7953 then s7956 else s7957
-  s7959 :: SWord8 = s18 & s2765
-  s7960 :: SBool = s17 /= s7959
-  s7961 :: SWord8 = if s7960 then s7956 else s7957
-  s7962 :: SWord8 = if s2746 then s7958 else s7961
-  s7963 :: SWord8 = s18 & s2788
-  s7964 :: SBool = s17 /= s7963
-  s7965 :: SWord8 = if s22 then s2796 else s2777
-  s7966 :: SWord8 = s7965 >>> 1
-  s7967 :: SWord8 = s24 | s7966
-  s7968 :: SWord8 = s26 & s7966
-  s7969 :: SWord8 = if s7964 then s7967 else s7968
-  s7970 :: SWord8 = s18 & s2799
-  s7971 :: SBool = s17 /= s7970
-  s7972 :: SWord8 = if s7971 then s7967 else s7968
-  s7973 :: SWord8 = if s2781 then s7969 else s7972
-  s7974 :: SWord8 = if s2724 then s7962 else s7973
-  s7975 :: SWord8 = if s2609 then s7951 else s7974
-  s7976 :: SWord8 = if s2378 then s7928 else s7975
-  s7977 :: SWord8 = if s1914 then s7881 else s7976
-  s7978 :: SWord8 = s18 & s2908
-  s7979 :: SBool = s17 /= s7978
-  s7980 :: SWord8 = if s22 then s2918 else s2900
-  s7981 :: SWord8 = s7980 >>> 1
-  s7982 :: SWord8 = s24 | s7981
-  s7983 :: SWord8 = s26 & s7981
-  s7984 :: SWord8 = if s7979 then s7982 else s7983
-  s7985 :: SWord8 = s18 & s2929
-  s7986 :: SBool = s17 /= s7985
-  s7987 :: SWord8 = if s7986 then s7982 else s7983
-  s7988 :: SWord8 = if s2904 then s7984 else s7987
-  s7989 :: SWord8 = s18 & s2952
-  s7990 :: SBool = s17 /= s7989
-  s7991 :: SWord8 = if s22 then s2960 else s2941
-  s7992 :: SWord8 = s7991 >>> 1
-  s7993 :: SWord8 = s24 | s7992
-  s7994 :: SWord8 = s26 & s7992
-  s7995 :: SWord8 = if s7990 then s7993 else s7994
-  s7996 :: SWord8 = s18 & s2963
-  s7997 :: SBool = s17 /= s7996
-  s7998 :: SWord8 = if s7997 then s7993 else s7994
-  s7999 :: SWord8 = if s2945 then s7995 else s7998
-  s8000 :: SWord8 = if s2883 then s7988 else s7999
-  s8001 :: SWord8 = s18 & s3006
-  s8002 :: SBool = s17 /= s8001
-  s8003 :: SWord8 = if s22 then s3016 else s2998
-  s8004 :: SWord8 = s8003 >>> 1
-  s8005 :: SWord8 = s24 | s8004
-  s8006 :: SWord8 = s26 & s8004
-  s8007 :: SWord8 = if s8002 then s8005 else s8006
-  s8008 :: SWord8 = s18 & s3021
-  s8009 :: SBool = s17 /= s8008
-  s8010 :: SWord8 = if s8009 then s8005 else s8006
-  s8011 :: SWord8 = if s3002 then s8007 else s8010
-  s8012 :: SWord8 = s18 & s3044
-  s8013 :: SBool = s17 /= s8012
-  s8014 :: SWord8 = if s22 then s3052 else s3033
-  s8015 :: SWord8 = s8014 >>> 1
-  s8016 :: SWord8 = s24 | s8015
-  s8017 :: SWord8 = s26 & s8015
-  s8018 :: SWord8 = if s8013 then s8016 else s8017
-  s8019 :: SWord8 = s18 & s3055
-  s8020 :: SBool = s17 /= s8019
-  s8021 :: SWord8 = if s8020 then s8016 else s8017
-  s8022 :: SWord8 = if s3037 then s8018 else s8021
-  s8023 :: SWord8 = if s2980 then s8011 else s8022
-  s8024 :: SWord8 = if s2862 then s8000 else s8023
-  s8025 :: SWord8 = s18 & s3120
-  s8026 :: SBool = s17 /= s8025
-  s8027 :: SWord8 = if s22 then s3130 else s3112
-  s8028 :: SWord8 = s8027 >>> 1
-  s8029 :: SWord8 = s24 | s8028
-  s8030 :: SWord8 = s26 & s8028
-  s8031 :: SWord8 = if s8026 then s8029 else s8030
-  s8032 :: SWord8 = s18 & s3137
-  s8033 :: SBool = s17 /= s8032
-  s8034 :: SWord8 = if s8033 then s8029 else s8030
-  s8035 :: SWord8 = if s3116 then s8031 else s8034
-  s8036 :: SWord8 = s18 & s3160
-  s8037 :: SBool = s17 /= s8036
-  s8038 :: SWord8 = if s22 then s3168 else s3149
-  s8039 :: SWord8 = s8038 >>> 1
-  s8040 :: SWord8 = s24 | s8039
-  s8041 :: SWord8 = s26 & s8039
-  s8042 :: SWord8 = if s8037 then s8040 else s8041
-  s8043 :: SWord8 = s18 & s3171
-  s8044 :: SBool = s17 /= s8043
-  s8045 :: SWord8 = if s8044 then s8040 else s8041
-  s8046 :: SWord8 = if s3153 then s8042 else s8045
-  s8047 :: SWord8 = if s3095 then s8035 else s8046
-  s8048 :: SWord8 = s18 & s3214
-  s8049 :: SBool = s17 /= s8048
-  s8050 :: SWord8 = if s22 then s3224 else s3206
-  s8051 :: SWord8 = s8050 >>> 1
-  s8052 :: SWord8 = s24 | s8051
-  s8053 :: SWord8 = s26 & s8051
-  s8054 :: SWord8 = if s8049 then s8052 else s8053
-  s8055 :: SWord8 = s18 & s3229
-  s8056 :: SBool = s17 /= s8055
-  s8057 :: SWord8 = if s8056 then s8052 else s8053
-  s8058 :: SWord8 = if s3210 then s8054 else s8057
-  s8059 :: SWord8 = s18 & s3252
-  s8060 :: SBool = s17 /= s8059
-  s8061 :: SWord8 = if s22 then s3260 else s3241
-  s8062 :: SWord8 = s8061 >>> 1
-  s8063 :: SWord8 = s24 | s8062
-  s8064 :: SWord8 = s26 & s8062
-  s8065 :: SWord8 = if s8060 then s8063 else s8064
-  s8066 :: SWord8 = s18 & s3263
-  s8067 :: SBool = s17 /= s8066
-  s8068 :: SWord8 = if s8067 then s8063 else s8064
-  s8069 :: SWord8 = if s3245 then s8065 else s8068
-  s8070 :: SWord8 = if s3188 then s8058 else s8069
-  s8071 :: SWord8 = if s3073 then s8047 else s8070
-  s8072 :: SWord8 = if s2841 then s8024 else s8071
-  s8073 :: SWord8 = s18 & s3350
-  s8074 :: SBool = s17 /= s8073
-  s8075 :: SWord8 = if s22 then s3360 else s3342
-  s8076 :: SWord8 = s8075 >>> 1
-  s8077 :: SWord8 = s24 | s8076
-  s8078 :: SWord8 = s26 & s8076
-  s8079 :: SWord8 = if s8074 then s8077 else s8078
-  s8080 :: SWord8 = s18 & s3369
-  s8081 :: SBool = s17 /= s8080
-  s8082 :: SWord8 = if s8081 then s8077 else s8078
-  s8083 :: SWord8 = if s3346 then s8079 else s8082
-  s8084 :: SWord8 = s18 & s3392
-  s8085 :: SBool = s17 /= s8084
-  s8086 :: SWord8 = if s22 then s3400 else s3381
-  s8087 :: SWord8 = s8086 >>> 1
-  s8088 :: SWord8 = s24 | s8087
-  s8089 :: SWord8 = s26 & s8087
-  s8090 :: SWord8 = if s8085 then s8088 else s8089
-  s8091 :: SWord8 = s18 & s3403
-  s8092 :: SBool = s17 /= s8091
-  s8093 :: SWord8 = if s8092 then s8088 else s8089
-  s8094 :: SWord8 = if s3385 then s8090 else s8093
-  s8095 :: SWord8 = if s3325 then s8083 else s8094
-  s8096 :: SWord8 = s18 & s3446
-  s8097 :: SBool = s17 /= s8096
-  s8098 :: SWord8 = if s22 then s3456 else s3438
-  s8099 :: SWord8 = s8098 >>> 1
-  s8100 :: SWord8 = s24 | s8099
-  s8101 :: SWord8 = s26 & s8099
-  s8102 :: SWord8 = if s8097 then s8100 else s8101
-  s8103 :: SWord8 = s18 & s3461
-  s8104 :: SBool = s17 /= s8103
-  s8105 :: SWord8 = if s8104 then s8100 else s8101
-  s8106 :: SWord8 = if s3442 then s8102 else s8105
-  s8107 :: SWord8 = s18 & s3484
-  s8108 :: SBool = s17 /= s8107
-  s8109 :: SWord8 = if s22 then s3492 else s3473
-  s8110 :: SWord8 = s8109 >>> 1
-  s8111 :: SWord8 = s24 | s8110
-  s8112 :: SWord8 = s26 & s8110
-  s8113 :: SWord8 = if s8108 then s8111 else s8112
-  s8114 :: SWord8 = s18 & s3495
-  s8115 :: SBool = s17 /= s8114
-  s8116 :: SWord8 = if s8115 then s8111 else s8112
-  s8117 :: SWord8 = if s3477 then s8113 else s8116
-  s8118 :: SWord8 = if s3420 then s8106 else s8117
-  s8119 :: SWord8 = if s3304 then s8095 else s8118
-  s8120 :: SWord8 = s18 & s3560
-  s8121 :: SBool = s17 /= s8120
-  s8122 :: SWord8 = if s22 then s3570 else s3552
-  s8123 :: SWord8 = s8122 >>> 1
-  s8124 :: SWord8 = s24 | s8123
-  s8125 :: SWord8 = s26 & s8123
-  s8126 :: SWord8 = if s8121 then s8124 else s8125
-  s8127 :: SWord8 = s18 & s3577
-  s8128 :: SBool = s17 /= s8127
-  s8129 :: SWord8 = if s8128 then s8124 else s8125
-  s8130 :: SWord8 = if s3556 then s8126 else s8129
-  s8131 :: SWord8 = s18 & s3600
-  s8132 :: SBool = s17 /= s8131
-  s8133 :: SWord8 = if s22 then s3608 else s3589
-  s8134 :: SWord8 = s8133 >>> 1
-  s8135 :: SWord8 = s24 | s8134
-  s8136 :: SWord8 = s26 & s8134
-  s8137 :: SWord8 = if s8132 then s8135 else s8136
-  s8138 :: SWord8 = s18 & s3611
-  s8139 :: SBool = s17 /= s8138
-  s8140 :: SWord8 = if s8139 then s8135 else s8136
-  s8141 :: SWord8 = if s3593 then s8137 else s8140
-  s8142 :: SWord8 = if s3535 then s8130 else s8141
-  s8143 :: SWord8 = s18 & s3654
-  s8144 :: SBool = s17 /= s8143
-  s8145 :: SWord8 = if s22 then s3664 else s3646
-  s8146 :: SWord8 = s8145 >>> 1
-  s8147 :: SWord8 = s24 | s8146
-  s8148 :: SWord8 = s26 & s8146
-  s8149 :: SWord8 = if s8144 then s8147 else s8148
-  s8150 :: SWord8 = s18 & s3669
-  s8151 :: SBool = s17 /= s8150
-  s8152 :: SWord8 = if s8151 then s8147 else s8148
-  s8153 :: SWord8 = if s3650 then s8149 else s8152
-  s8154 :: SWord8 = s18 & s3692
-  s8155 :: SBool = s17 /= s8154
-  s8156 :: SWord8 = if s22 then s3700 else s3681
-  s8157 :: SWord8 = s8156 >>> 1
-  s8158 :: SWord8 = s24 | s8157
-  s8159 :: SWord8 = s26 & s8157
-  s8160 :: SWord8 = if s8155 then s8158 else s8159
-  s8161 :: SWord8 = s18 & s3703
-  s8162 :: SBool = s17 /= s8161
-  s8163 :: SWord8 = if s8162 then s8158 else s8159
-  s8164 :: SWord8 = if s3685 then s8160 else s8163
-  s8165 :: SWord8 = if s3628 then s8153 else s8164
-  s8166 :: SWord8 = if s3513 then s8142 else s8165
-  s8167 :: SWord8 = if s3282 then s8119 else s8166
-  s8168 :: SWord8 = if s2819 then s8072 else s8167
-  s8169 :: SWord8 = if s1892 then s7977 else s8168
-  s8170 :: SWord8 = if s38 then s7786 else s8169
-  s8171 :: SWord8 = s18 & s3851
-  s8172 :: SBool = s17 /= s8171
-  s8173 :: SWord8 = if s22 then s3861 else s3843
-  s8174 :: SWord8 = s8173 >>> 1
-  s8175 :: SWord8 = s24 | s8174
-  s8176 :: SWord8 = s26 & s8174
-  s8177 :: SWord8 = if s8172 then s8175 else s8176
-  s8178 :: SWord8 = s18 & s3876
-  s8179 :: SBool = s17 /= s8178
-  s8180 :: SWord8 = if s8179 then s8175 else s8176
-  s8181 :: SWord8 = if s3847 then s8177 else s8180
-  s8182 :: SWord8 = s18 & s3899
-  s8183 :: SBool = s17 /= s8182
-  s8184 :: SWord8 = if s22 then s3907 else s3888
-  s8185 :: SWord8 = s8184 >>> 1
-  s8186 :: SWord8 = s24 | s8185
-  s8187 :: SWord8 = s26 & s8185
-  s8188 :: SWord8 = if s8183 then s8186 else s8187
-  s8189 :: SWord8 = s18 & s3910
-  s8190 :: SBool = s17 /= s8189
-  s8191 :: SWord8 = if s8190 then s8186 else s8187
-  s8192 :: SWord8 = if s3892 then s8188 else s8191
-  s8193 :: SWord8 = if s3826 then s8181 else s8192
-  s8194 :: SWord8 = s18 & s3953
-  s8195 :: SBool = s17 /= s8194
-  s8196 :: SWord8 = if s22 then s3963 else s3945
-  s8197 :: SWord8 = s8196 >>> 1
-  s8198 :: SWord8 = s24 | s8197
-  s8199 :: SWord8 = s26 & s8197
-  s8200 :: SWord8 = if s8195 then s8198 else s8199
-  s8201 :: SWord8 = s18 & s3968
-  s8202 :: SBool = s17 /= s8201
-  s8203 :: SWord8 = if s8202 then s8198 else s8199
-  s8204 :: SWord8 = if s3949 then s8200 else s8203
-  s8205 :: SWord8 = s18 & s3991
-  s8206 :: SBool = s17 /= s8205
-  s8207 :: SWord8 = if s22 then s3999 else s3980
-  s8208 :: SWord8 = s8207 >>> 1
-  s8209 :: SWord8 = s24 | s8208
-  s8210 :: SWord8 = s26 & s8208
-  s8211 :: SWord8 = if s8206 then s8209 else s8210
-  s8212 :: SWord8 = s18 & s4002
-  s8213 :: SBool = s17 /= s8212
-  s8214 :: SWord8 = if s8213 then s8209 else s8210
-  s8215 :: SWord8 = if s3984 then s8211 else s8214
-  s8216 :: SWord8 = if s3927 then s8204 else s8215
-  s8217 :: SWord8 = if s3805 then s8193 else s8216
-  s8218 :: SWord8 = s18 & s4067
-  s8219 :: SBool = s17 /= s8218
-  s8220 :: SWord8 = if s22 then s4077 else s4059
-  s8221 :: SWord8 = s8220 >>> 1
-  s8222 :: SWord8 = s24 | s8221
-  s8223 :: SWord8 = s26 & s8221
-  s8224 :: SWord8 = if s8219 then s8222 else s8223
-  s8225 :: SWord8 = s18 & s4084
-  s8226 :: SBool = s17 /= s8225
-  s8227 :: SWord8 = if s8226 then s8222 else s8223
-  s8228 :: SWord8 = if s4063 then s8224 else s8227
-  s8229 :: SWord8 = s18 & s4107
-  s8230 :: SBool = s17 /= s8229
-  s8231 :: SWord8 = if s22 then s4115 else s4096
-  s8232 :: SWord8 = s8231 >>> 1
-  s8233 :: SWord8 = s24 | s8232
-  s8234 :: SWord8 = s26 & s8232
-  s8235 :: SWord8 = if s8230 then s8233 else s8234
-  s8236 :: SWord8 = s18 & s4118
-  s8237 :: SBool = s17 /= s8236
-  s8238 :: SWord8 = if s8237 then s8233 else s8234
-  s8239 :: SWord8 = if s4100 then s8235 else s8238
-  s8240 :: SWord8 = if s4042 then s8228 else s8239
-  s8241 :: SWord8 = s18 & s4161
-  s8242 :: SBool = s17 /= s8241
-  s8243 :: SWord8 = if s22 then s4171 else s4153
-  s8244 :: SWord8 = s8243 >>> 1
-  s8245 :: SWord8 = s24 | s8244
-  s8246 :: SWord8 = s26 & s8244
-  s8247 :: SWord8 = if s8242 then s8245 else s8246
-  s8248 :: SWord8 = s18 & s4176
-  s8249 :: SBool = s17 /= s8248
-  s8250 :: SWord8 = if s8249 then s8245 else s8246
-  s8251 :: SWord8 = if s4157 then s8247 else s8250
-  s8252 :: SWord8 = s18 & s4199
-  s8253 :: SBool = s17 /= s8252
-  s8254 :: SWord8 = if s22 then s4207 else s4188
-  s8255 :: SWord8 = s8254 >>> 1
-  s8256 :: SWord8 = s24 | s8255
-  s8257 :: SWord8 = s26 & s8255
-  s8258 :: SWord8 = if s8253 then s8256 else s8257
-  s8259 :: SWord8 = s18 & s4210
-  s8260 :: SBool = s17 /= s8259
-  s8261 :: SWord8 = if s8260 then s8256 else s8257
-  s8262 :: SWord8 = if s4192 then s8258 else s8261
-  s8263 :: SWord8 = if s4135 then s8251 else s8262
-  s8264 :: SWord8 = if s4020 then s8240 else s8263
-  s8265 :: SWord8 = if s3784 then s8217 else s8264
-  s8266 :: SWord8 = s18 & s4297
-  s8267 :: SBool = s17 /= s8266
-  s8268 :: SWord8 = if s22 then s4307 else s4289
-  s8269 :: SWord8 = s8268 >>> 1
-  s8270 :: SWord8 = s24 | s8269
-  s8271 :: SWord8 = s26 & s8269
-  s8272 :: SWord8 = if s8267 then s8270 else s8271
-  s8273 :: SWord8 = s18 & s4316
-  s8274 :: SBool = s17 /= s8273
-  s8275 :: SWord8 = if s8274 then s8270 else s8271
-  s8276 :: SWord8 = if s4293 then s8272 else s8275
-  s8277 :: SWord8 = s18 & s4339
-  s8278 :: SBool = s17 /= s8277
-  s8279 :: SWord8 = if s22 then s4347 else s4328
-  s8280 :: SWord8 = s8279 >>> 1
-  s8281 :: SWord8 = s24 | s8280
-  s8282 :: SWord8 = s26 & s8280
-  s8283 :: SWord8 = if s8278 then s8281 else s8282
-  s8284 :: SWord8 = s18 & s4350
-  s8285 :: SBool = s17 /= s8284
-  s8286 :: SWord8 = if s8285 then s8281 else s8282
-  s8287 :: SWord8 = if s4332 then s8283 else s8286
-  s8288 :: SWord8 = if s4272 then s8276 else s8287
-  s8289 :: SWord8 = s18 & s4393
-  s8290 :: SBool = s17 /= s8289
-  s8291 :: SWord8 = if s22 then s4403 else s4385
-  s8292 :: SWord8 = s8291 >>> 1
-  s8293 :: SWord8 = s24 | s8292
-  s8294 :: SWord8 = s26 & s8292
-  s8295 :: SWord8 = if s8290 then s8293 else s8294
-  s8296 :: SWord8 = s18 & s4408
-  s8297 :: SBool = s17 /= s8296
-  s8298 :: SWord8 = if s8297 then s8293 else s8294
-  s8299 :: SWord8 = if s4389 then s8295 else s8298
-  s8300 :: SWord8 = s18 & s4431
-  s8301 :: SBool = s17 /= s8300
-  s8302 :: SWord8 = if s22 then s4439 else s4420
-  s8303 :: SWord8 = s8302 >>> 1
-  s8304 :: SWord8 = s24 | s8303
-  s8305 :: SWord8 = s26 & s8303
-  s8306 :: SWord8 = if s8301 then s8304 else s8305
-  s8307 :: SWord8 = s18 & s4442
-  s8308 :: SBool = s17 /= s8307
-  s8309 :: SWord8 = if s8308 then s8304 else s8305
-  s8310 :: SWord8 = if s4424 then s8306 else s8309
-  s8311 :: SWord8 = if s4367 then s8299 else s8310
-  s8312 :: SWord8 = if s4251 then s8288 else s8311
-  s8313 :: SWord8 = s18 & s4507
-  s8314 :: SBool = s17 /= s8313
-  s8315 :: SWord8 = if s22 then s4517 else s4499
-  s8316 :: SWord8 = s8315 >>> 1
-  s8317 :: SWord8 = s24 | s8316
-  s8318 :: SWord8 = s26 & s8316
-  s8319 :: SWord8 = if s8314 then s8317 else s8318
-  s8320 :: SWord8 = s18 & s4524
-  s8321 :: SBool = s17 /= s8320
-  s8322 :: SWord8 = if s8321 then s8317 else s8318
-  s8323 :: SWord8 = if s4503 then s8319 else s8322
-  s8324 :: SWord8 = s18 & s4547
-  s8325 :: SBool = s17 /= s8324
-  s8326 :: SWord8 = if s22 then s4555 else s4536
-  s8327 :: SWord8 = s8326 >>> 1
-  s8328 :: SWord8 = s24 | s8327
-  s8329 :: SWord8 = s26 & s8327
-  s8330 :: SWord8 = if s8325 then s8328 else s8329
-  s8331 :: SWord8 = s18 & s4558
-  s8332 :: SBool = s17 /= s8331
-  s8333 :: SWord8 = if s8332 then s8328 else s8329
-  s8334 :: SWord8 = if s4540 then s8330 else s8333
-  s8335 :: SWord8 = if s4482 then s8323 else s8334
-  s8336 :: SWord8 = s18 & s4601
-  s8337 :: SBool = s17 /= s8336
-  s8338 :: SWord8 = if s22 then s4611 else s4593
-  s8339 :: SWord8 = s8338 >>> 1
-  s8340 :: SWord8 = s24 | s8339
-  s8341 :: SWord8 = s26 & s8339
-  s8342 :: SWord8 = if s8337 then s8340 else s8341
-  s8343 :: SWord8 = s18 & s4616
-  s8344 :: SBool = s17 /= s8343
-  s8345 :: SWord8 = if s8344 then s8340 else s8341
-  s8346 :: SWord8 = if s4597 then s8342 else s8345
-  s8347 :: SWord8 = s18 & s4639
-  s8348 :: SBool = s17 /= s8347
-  s8349 :: SWord8 = if s22 then s4647 else s4628
-  s8350 :: SWord8 = s8349 >>> 1
-  s8351 :: SWord8 = s24 | s8350
-  s8352 :: SWord8 = s26 & s8350
-  s8353 :: SWord8 = if s8348 then s8351 else s8352
-  s8354 :: SWord8 = s18 & s4650
-  s8355 :: SBool = s17 /= s8354
-  s8356 :: SWord8 = if s8355 then s8351 else s8352
-  s8357 :: SWord8 = if s4632 then s8353 else s8356
-  s8358 :: SWord8 = if s4575 then s8346 else s8357
-  s8359 :: SWord8 = if s4460 then s8335 else s8358
-  s8360 :: SWord8 = if s4229 then s8312 else s8359
-  s8361 :: SWord8 = if s3763 then s8265 else s8360
-  s8362 :: SWord8 = s18 & s4759
-  s8363 :: SBool = s17 /= s8362
-  s8364 :: SWord8 = if s22 then s4769 else s4751
-  s8365 :: SWord8 = s8364 >>> 1
-  s8366 :: SWord8 = s24 | s8365
-  s8367 :: SWord8 = s26 & s8365
-  s8368 :: SWord8 = if s8363 then s8366 else s8367
-  s8369 :: SWord8 = s18 & s4780
-  s8370 :: SBool = s17 /= s8369
-  s8371 :: SWord8 = if s8370 then s8366 else s8367
-  s8372 :: SWord8 = if s4755 then s8368 else s8371
-  s8373 :: SWord8 = s18 & s4803
-  s8374 :: SBool = s17 /= s8373
-  s8375 :: SWord8 = if s22 then s4811 else s4792
-  s8376 :: SWord8 = s8375 >>> 1
-  s8377 :: SWord8 = s24 | s8376
-  s8378 :: SWord8 = s26 & s8376
-  s8379 :: SWord8 = if s8374 then s8377 else s8378
-  s8380 :: SWord8 = s18 & s4814
-  s8381 :: SBool = s17 /= s8380
-  s8382 :: SWord8 = if s8381 then s8377 else s8378
-  s8383 :: SWord8 = if s4796 then s8379 else s8382
-  s8384 :: SWord8 = if s4734 then s8372 else s8383
-  s8385 :: SWord8 = s18 & s4857
-  s8386 :: SBool = s17 /= s8385
-  s8387 :: SWord8 = if s22 then s4867 else s4849
-  s8388 :: SWord8 = s8387 >>> 1
-  s8389 :: SWord8 = s24 | s8388
-  s8390 :: SWord8 = s26 & s8388
-  s8391 :: SWord8 = if s8386 then s8389 else s8390
-  s8392 :: SWord8 = s18 & s4872
-  s8393 :: SBool = s17 /= s8392
-  s8394 :: SWord8 = if s8393 then s8389 else s8390
-  s8395 :: SWord8 = if s4853 then s8391 else s8394
-  s8396 :: SWord8 = s18 & s4895
-  s8397 :: SBool = s17 /= s8396
-  s8398 :: SWord8 = if s22 then s4903 else s4884
-  s8399 :: SWord8 = s8398 >>> 1
-  s8400 :: SWord8 = s24 | s8399
-  s8401 :: SWord8 = s26 & s8399
-  s8402 :: SWord8 = if s8397 then s8400 else s8401
-  s8403 :: SWord8 = s18 & s4906
-  s8404 :: SBool = s17 /= s8403
-  s8405 :: SWord8 = if s8404 then s8400 else s8401
-  s8406 :: SWord8 = if s4888 then s8402 else s8405
-  s8407 :: SWord8 = if s4831 then s8395 else s8406
-  s8408 :: SWord8 = if s4713 then s8384 else s8407
-  s8409 :: SWord8 = s18 & s4971
-  s8410 :: SBool = s17 /= s8409
-  s8411 :: SWord8 = if s22 then s4981 else s4963
-  s8412 :: SWord8 = s8411 >>> 1
-  s8413 :: SWord8 = s24 | s8412
-  s8414 :: SWord8 = s26 & s8412
-  s8415 :: SWord8 = if s8410 then s8413 else s8414
-  s8416 :: SWord8 = s18 & s4988
-  s8417 :: SBool = s17 /= s8416
-  s8418 :: SWord8 = if s8417 then s8413 else s8414
-  s8419 :: SWord8 = if s4967 then s8415 else s8418
-  s8420 :: SWord8 = s18 & s5011
-  s8421 :: SBool = s17 /= s8420
-  s8422 :: SWord8 = if s22 then s5019 else s5000
-  s8423 :: SWord8 = s8422 >>> 1
-  s8424 :: SWord8 = s24 | s8423
-  s8425 :: SWord8 = s26 & s8423
-  s8426 :: SWord8 = if s8421 then s8424 else s8425
-  s8427 :: SWord8 = s18 & s5022
-  s8428 :: SBool = s17 /= s8427
-  s8429 :: SWord8 = if s8428 then s8424 else s8425
-  s8430 :: SWord8 = if s5004 then s8426 else s8429
-  s8431 :: SWord8 = if s4946 then s8419 else s8430
-  s8432 :: SWord8 = s18 & s5065
-  s8433 :: SBool = s17 /= s8432
-  s8434 :: SWord8 = if s22 then s5075 else s5057
-  s8435 :: SWord8 = s8434 >>> 1
-  s8436 :: SWord8 = s24 | s8435
-  s8437 :: SWord8 = s26 & s8435
-  s8438 :: SWord8 = if s8433 then s8436 else s8437
-  s8439 :: SWord8 = s18 & s5080
-  s8440 :: SBool = s17 /= s8439
-  s8441 :: SWord8 = if s8440 then s8436 else s8437
-  s8442 :: SWord8 = if s5061 then s8438 else s8441
-  s8443 :: SWord8 = s18 & s5103
-  s8444 :: SBool = s17 /= s8443
-  s8445 :: SWord8 = if s22 then s5111 else s5092
-  s8446 :: SWord8 = s8445 >>> 1
-  s8447 :: SWord8 = s24 | s8446
-  s8448 :: SWord8 = s26 & s8446
-  s8449 :: SWord8 = if s8444 then s8447 else s8448
-  s8450 :: SWord8 = s18 & s5114
-  s8451 :: SBool = s17 /= s8450
-  s8452 :: SWord8 = if s8451 then s8447 else s8448
-  s8453 :: SWord8 = if s5096 then s8449 else s8452
-  s8454 :: SWord8 = if s5039 then s8442 else s8453
-  s8455 :: SWord8 = if s4924 then s8431 else s8454
-  s8456 :: SWord8 = if s4692 then s8408 else s8455
-  s8457 :: SWord8 = s18 & s5201
-  s8458 :: SBool = s17 /= s8457
-  s8459 :: SWord8 = if s22 then s5211 else s5193
-  s8460 :: SWord8 = s8459 >>> 1
-  s8461 :: SWord8 = s24 | s8460
-  s8462 :: SWord8 = s26 & s8460
-  s8463 :: SWord8 = if s8458 then s8461 else s8462
-  s8464 :: SWord8 = s18 & s5220
-  s8465 :: SBool = s17 /= s8464
-  s8466 :: SWord8 = if s8465 then s8461 else s8462
-  s8467 :: SWord8 = if s5197 then s8463 else s8466
-  s8468 :: SWord8 = s18 & s5243
-  s8469 :: SBool = s17 /= s8468
-  s8470 :: SWord8 = if s22 then s5251 else s5232
-  s8471 :: SWord8 = s8470 >>> 1
-  s8472 :: SWord8 = s24 | s8471
-  s8473 :: SWord8 = s26 & s8471
-  s8474 :: SWord8 = if s8469 then s8472 else s8473
-  s8475 :: SWord8 = s18 & s5254
-  s8476 :: SBool = s17 /= s8475
-  s8477 :: SWord8 = if s8476 then s8472 else s8473
-  s8478 :: SWord8 = if s5236 then s8474 else s8477
-  s8479 :: SWord8 = if s5176 then s8467 else s8478
-  s8480 :: SWord8 = s18 & s5297
-  s8481 :: SBool = s17 /= s8480
-  s8482 :: SWord8 = if s22 then s5307 else s5289
-  s8483 :: SWord8 = s8482 >>> 1
-  s8484 :: SWord8 = s24 | s8483
-  s8485 :: SWord8 = s26 & s8483
-  s8486 :: SWord8 = if s8481 then s8484 else s8485
-  s8487 :: SWord8 = s18 & s5312
-  s8488 :: SBool = s17 /= s8487
-  s8489 :: SWord8 = if s8488 then s8484 else s8485
-  s8490 :: SWord8 = if s5293 then s8486 else s8489
-  s8491 :: SWord8 = s18 & s5335
-  s8492 :: SBool = s17 /= s8491
-  s8493 :: SWord8 = if s22 then s5343 else s5324
-  s8494 :: SWord8 = s8493 >>> 1
-  s8495 :: SWord8 = s24 | s8494
-  s8496 :: SWord8 = s26 & s8494
-  s8497 :: SWord8 = if s8492 then s8495 else s8496
-  s8498 :: SWord8 = s18 & s5346
-  s8499 :: SBool = s17 /= s8498
-  s8500 :: SWord8 = if s8499 then s8495 else s8496
-  s8501 :: SWord8 = if s5328 then s8497 else s8500
-  s8502 :: SWord8 = if s5271 then s8490 else s8501
-  s8503 :: SWord8 = if s5155 then s8479 else s8502
-  s8504 :: SWord8 = s18 & s5411
-  s8505 :: SBool = s17 /= s8504
-  s8506 :: SWord8 = if s22 then s5421 else s5403
-  s8507 :: SWord8 = s8506 >>> 1
-  s8508 :: SWord8 = s24 | s8507
-  s8509 :: SWord8 = s26 & s8507
-  s8510 :: SWord8 = if s8505 then s8508 else s8509
-  s8511 :: SWord8 = s18 & s5428
-  s8512 :: SBool = s17 /= s8511
-  s8513 :: SWord8 = if s8512 then s8508 else s8509
-  s8514 :: SWord8 = if s5407 then s8510 else s8513
-  s8515 :: SWord8 = s18 & s5451
-  s8516 :: SBool = s17 /= s8515
-  s8517 :: SWord8 = if s22 then s5459 else s5440
-  s8518 :: SWord8 = s8517 >>> 1
-  s8519 :: SWord8 = s24 | s8518
-  s8520 :: SWord8 = s26 & s8518
-  s8521 :: SWord8 = if s8516 then s8519 else s8520
-  s8522 :: SWord8 = s18 & s5462
-  s8523 :: SBool = s17 /= s8522
-  s8524 :: SWord8 = if s8523 then s8519 else s8520
-  s8525 :: SWord8 = if s5444 then s8521 else s8524
-  s8526 :: SWord8 = if s5386 then s8514 else s8525
-  s8527 :: SWord8 = s18 & s5505
-  s8528 :: SBool = s17 /= s8527
-  s8529 :: SWord8 = if s22 then s5515 else s5497
-  s8530 :: SWord8 = s8529 >>> 1
-  s8531 :: SWord8 = s24 | s8530
-  s8532 :: SWord8 = s26 & s8530
-  s8533 :: SWord8 = if s8528 then s8531 else s8532
-  s8534 :: SWord8 = s18 & s5520
-  s8535 :: SBool = s17 /= s8534
-  s8536 :: SWord8 = if s8535 then s8531 else s8532
-  s8537 :: SWord8 = if s5501 then s8533 else s8536
-  s8538 :: SWord8 = s18 & s5543
-  s8539 :: SBool = s17 /= s8538
-  s8540 :: SWord8 = if s22 then s5551 else s5532
-  s8541 :: SWord8 = s8540 >>> 1
-  s8542 :: SWord8 = s24 | s8541
-  s8543 :: SWord8 = s26 & s8541
-  s8544 :: SWord8 = if s8539 then s8542 else s8543
-  s8545 :: SWord8 = s18 & s5554
-  s8546 :: SBool = s17 /= s8545
-  s8547 :: SWord8 = if s8546 then s8542 else s8543
-  s8548 :: SWord8 = if s5536 then s8544 else s8547
-  s8549 :: SWord8 = if s5479 then s8537 else s8548
-  s8550 :: SWord8 = if s5364 then s8526 else s8549
-  s8551 :: SWord8 = if s5133 then s8503 else s8550
-  s8552 :: SWord8 = if s4670 then s8456 else s8551
-  s8553 :: SWord8 = if s3742 then s8361 else s8552
-  s8554 :: SWord8 = s18 & s5685
-  s8555 :: SBool = s17 /= s8554
-  s8556 :: SWord8 = if s22 then s5695 else s5677
-  s8557 :: SWord8 = s8556 >>> 1
-  s8558 :: SWord8 = s24 | s8557
-  s8559 :: SWord8 = s26 & s8557
-  s8560 :: SWord8 = if s8555 then s8558 else s8559
-  s8561 :: SWord8 = s18 & s5708
-  s8562 :: SBool = s17 /= s8561
-  s8563 :: SWord8 = if s8562 then s8558 else s8559
-  s8564 :: SWord8 = if s5681 then s8560 else s8563
-  s8565 :: SWord8 = s18 & s5731
-  s8566 :: SBool = s17 /= s8565
-  s8567 :: SWord8 = if s22 then s5739 else s5720
-  s8568 :: SWord8 = s8567 >>> 1
-  s8569 :: SWord8 = s24 | s8568
-  s8570 :: SWord8 = s26 & s8568
-  s8571 :: SWord8 = if s8566 then s8569 else s8570
-  s8572 :: SWord8 = s18 & s5742
-  s8573 :: SBool = s17 /= s8572
-  s8574 :: SWord8 = if s8573 then s8569 else s8570
-  s8575 :: SWord8 = if s5724 then s8571 else s8574
-  s8576 :: SWord8 = if s5660 then s8564 else s8575
-  s8577 :: SWord8 = s18 & s5785
-  s8578 :: SBool = s17 /= s8577
-  s8579 :: SWord8 = if s22 then s5795 else s5777
-  s8580 :: SWord8 = s8579 >>> 1
-  s8581 :: SWord8 = s24 | s8580
-  s8582 :: SWord8 = s26 & s8580
-  s8583 :: SWord8 = if s8578 then s8581 else s8582
-  s8584 :: SWord8 = s18 & s5800
-  s8585 :: SBool = s17 /= s8584
-  s8586 :: SWord8 = if s8585 then s8581 else s8582
-  s8587 :: SWord8 = if s5781 then s8583 else s8586
-  s8588 :: SWord8 = s18 & s5823
-  s8589 :: SBool = s17 /= s8588
-  s8590 :: SWord8 = if s22 then s5831 else s5812
-  s8591 :: SWord8 = s8590 >>> 1
-  s8592 :: SWord8 = s24 | s8591
-  s8593 :: SWord8 = s26 & s8591
-  s8594 :: SWord8 = if s8589 then s8592 else s8593
-  s8595 :: SWord8 = s18 & s5834
-  s8596 :: SBool = s17 /= s8595
-  s8597 :: SWord8 = if s8596 then s8592 else s8593
-  s8598 :: SWord8 = if s5816 then s8594 else s8597
-  s8599 :: SWord8 = if s5759 then s8587 else s8598
-  s8600 :: SWord8 = if s5639 then s8576 else s8599
-  s8601 :: SWord8 = s18 & s5899
-  s8602 :: SBool = s17 /= s8601
-  s8603 :: SWord8 = if s22 then s5909 else s5891
-  s8604 :: SWord8 = s8603 >>> 1
-  s8605 :: SWord8 = s24 | s8604
-  s8606 :: SWord8 = s26 & s8604
-  s8607 :: SWord8 = if s8602 then s8605 else s8606
-  s8608 :: SWord8 = s18 & s5916
-  s8609 :: SBool = s17 /= s8608
-  s8610 :: SWord8 = if s8609 then s8605 else s8606
-  s8611 :: SWord8 = if s5895 then s8607 else s8610
-  s8612 :: SWord8 = s18 & s5939
-  s8613 :: SBool = s17 /= s8612
-  s8614 :: SWord8 = if s22 then s5947 else s5928
-  s8615 :: SWord8 = s8614 >>> 1
-  s8616 :: SWord8 = s24 | s8615
-  s8617 :: SWord8 = s26 & s8615
-  s8618 :: SWord8 = if s8613 then s8616 else s8617
-  s8619 :: SWord8 = s18 & s5950
-  s8620 :: SBool = s17 /= s8619
-  s8621 :: SWord8 = if s8620 then s8616 else s8617
-  s8622 :: SWord8 = if s5932 then s8618 else s8621
-  s8623 :: SWord8 = if s5874 then s8611 else s8622
-  s8624 :: SWord8 = s18 & s5993
-  s8625 :: SBool = s17 /= s8624
-  s8626 :: SWord8 = if s22 then s6003 else s5985
-  s8627 :: SWord8 = s8626 >>> 1
-  s8628 :: SWord8 = s24 | s8627
-  s8629 :: SWord8 = s26 & s8627
-  s8630 :: SWord8 = if s8625 then s8628 else s8629
-  s8631 :: SWord8 = s18 & s6008
-  s8632 :: SBool = s17 /= s8631
-  s8633 :: SWord8 = if s8632 then s8628 else s8629
-  s8634 :: SWord8 = if s5989 then s8630 else s8633
-  s8635 :: SWord8 = s18 & s6031
-  s8636 :: SBool = s17 /= s8635
-  s8637 :: SWord8 = if s22 then s6039 else s6020
-  s8638 :: SWord8 = s8637 >>> 1
-  s8639 :: SWord8 = s24 | s8638
-  s8640 :: SWord8 = s26 & s8638
-  s8641 :: SWord8 = if s8636 then s8639 else s8640
-  s8642 :: SWord8 = s18 & s6042
-  s8643 :: SBool = s17 /= s8642
-  s8644 :: SWord8 = if s8643 then s8639 else s8640
-  s8645 :: SWord8 = if s6024 then s8641 else s8644
-  s8646 :: SWord8 = if s5967 then s8634 else s8645
-  s8647 :: SWord8 = if s5852 then s8623 else s8646
-  s8648 :: SWord8 = if s5618 then s8600 else s8647
-  s8649 :: SWord8 = s18 & s6129
-  s8650 :: SBool = s17 /= s8649
-  s8651 :: SWord8 = if s22 then s6139 else s6121
-  s8652 :: SWord8 = s8651 >>> 1
-  s8653 :: SWord8 = s24 | s8652
-  s8654 :: SWord8 = s26 & s8652
-  s8655 :: SWord8 = if s8650 then s8653 else s8654
-  s8656 :: SWord8 = s18 & s6148
-  s8657 :: SBool = s17 /= s8656
-  s8658 :: SWord8 = if s8657 then s8653 else s8654
-  s8659 :: SWord8 = if s6125 then s8655 else s8658
-  s8660 :: SWord8 = s18 & s6171
-  s8661 :: SBool = s17 /= s8660
-  s8662 :: SWord8 = if s22 then s6179 else s6160
-  s8663 :: SWord8 = s8662 >>> 1
-  s8664 :: SWord8 = s24 | s8663
-  s8665 :: SWord8 = s26 & s8663
-  s8666 :: SWord8 = if s8661 then s8664 else s8665
-  s8667 :: SWord8 = s18 & s6182
-  s8668 :: SBool = s17 /= s8667
-  s8669 :: SWord8 = if s8668 then s8664 else s8665
-  s8670 :: SWord8 = if s6164 then s8666 else s8669
-  s8671 :: SWord8 = if s6104 then s8659 else s8670
-  s8672 :: SWord8 = s18 & s6225
-  s8673 :: SBool = s17 /= s8672
-  s8674 :: SWord8 = if s22 then s6235 else s6217
-  s8675 :: SWord8 = s8674 >>> 1
-  s8676 :: SWord8 = s24 | s8675
-  s8677 :: SWord8 = s26 & s8675
-  s8678 :: SWord8 = if s8673 then s8676 else s8677
-  s8679 :: SWord8 = s18 & s6240
-  s8680 :: SBool = s17 /= s8679
-  s8681 :: SWord8 = if s8680 then s8676 else s8677
-  s8682 :: SWord8 = if s6221 then s8678 else s8681
-  s8683 :: SWord8 = s18 & s6263
-  s8684 :: SBool = s17 /= s8683
-  s8685 :: SWord8 = if s22 then s6271 else s6252
-  s8686 :: SWord8 = s8685 >>> 1
-  s8687 :: SWord8 = s24 | s8686
-  s8688 :: SWord8 = s26 & s8686
-  s8689 :: SWord8 = if s8684 then s8687 else s8688
-  s8690 :: SWord8 = s18 & s6274
-  s8691 :: SBool = s17 /= s8690
-  s8692 :: SWord8 = if s8691 then s8687 else s8688
-  s8693 :: SWord8 = if s6256 then s8689 else s8692
-  s8694 :: SWord8 = if s6199 then s8682 else s8693
-  s8695 :: SWord8 = if s6083 then s8671 else s8694
-  s8696 :: SWord8 = s18 & s6339
-  s8697 :: SBool = s17 /= s8696
-  s8698 :: SWord8 = if s22 then s6349 else s6331
-  s8699 :: SWord8 = s8698 >>> 1
-  s8700 :: SWord8 = s24 | s8699
-  s8701 :: SWord8 = s26 & s8699
-  s8702 :: SWord8 = if s8697 then s8700 else s8701
-  s8703 :: SWord8 = s18 & s6356
-  s8704 :: SBool = s17 /= s8703
-  s8705 :: SWord8 = if s8704 then s8700 else s8701
-  s8706 :: SWord8 = if s6335 then s8702 else s8705
-  s8707 :: SWord8 = s18 & s6379
-  s8708 :: SBool = s17 /= s8707
-  s8709 :: SWord8 = if s22 then s6387 else s6368
-  s8710 :: SWord8 = s8709 >>> 1
-  s8711 :: SWord8 = s24 | s8710
-  s8712 :: SWord8 = s26 & s8710
-  s8713 :: SWord8 = if s8708 then s8711 else s8712
-  s8714 :: SWord8 = s18 & s6390
-  s8715 :: SBool = s17 /= s8714
-  s8716 :: SWord8 = if s8715 then s8711 else s8712
-  s8717 :: SWord8 = if s6372 then s8713 else s8716
-  s8718 :: SWord8 = if s6314 then s8706 else s8717
-  s8719 :: SWord8 = s18 & s6433
-  s8720 :: SBool = s17 /= s8719
-  s8721 :: SWord8 = if s22 then s6443 else s6425
-  s8722 :: SWord8 = s8721 >>> 1
-  s8723 :: SWord8 = s24 | s8722
-  s8724 :: SWord8 = s26 & s8722
-  s8725 :: SWord8 = if s8720 then s8723 else s8724
-  s8726 :: SWord8 = s18 & s6448
-  s8727 :: SBool = s17 /= s8726
-  s8728 :: SWord8 = if s8727 then s8723 else s8724
-  s8729 :: SWord8 = if s6429 then s8725 else s8728
-  s8730 :: SWord8 = s18 & s6471
-  s8731 :: SBool = s17 /= s8730
-  s8732 :: SWord8 = if s22 then s6479 else s6460
-  s8733 :: SWord8 = s8732 >>> 1
-  s8734 :: SWord8 = s24 | s8733
-  s8735 :: SWord8 = s26 & s8733
-  s8736 :: SWord8 = if s8731 then s8734 else s8735
-  s8737 :: SWord8 = s18 & s6482
-  s8738 :: SBool = s17 /= s8737
-  s8739 :: SWord8 = if s8738 then s8734 else s8735
-  s8740 :: SWord8 = if s6464 then s8736 else s8739
-  s8741 :: SWord8 = if s6407 then s8729 else s8740
-  s8742 :: SWord8 = if s6292 then s8718 else s8741
-  s8743 :: SWord8 = if s6061 then s8695 else s8742
-  s8744 :: SWord8 = if s5597 then s8648 else s8743
-  s8745 :: SWord8 = s18 & s6591
-  s8746 :: SBool = s17 /= s8745
-  s8747 :: SWord8 = if s22 then s6601 else s6583
-  s8748 :: SWord8 = s8747 >>> 1
-  s8749 :: SWord8 = s24 | s8748
-  s8750 :: SWord8 = s26 & s8748
-  s8751 :: SWord8 = if s8746 then s8749 else s8750
-  s8752 :: SWord8 = s18 & s6612
-  s8753 :: SBool = s17 /= s8752
-  s8754 :: SWord8 = if s8753 then s8749 else s8750
-  s8755 :: SWord8 = if s6587 then s8751 else s8754
-  s8756 :: SWord8 = s18 & s6635
-  s8757 :: SBool = s17 /= s8756
-  s8758 :: SWord8 = if s22 then s6643 else s6624
-  s8759 :: SWord8 = s8758 >>> 1
-  s8760 :: SWord8 = s24 | s8759
-  s8761 :: SWord8 = s26 & s8759
-  s8762 :: SWord8 = if s8757 then s8760 else s8761
-  s8763 :: SWord8 = s18 & s6646
-  s8764 :: SBool = s17 /= s8763
-  s8765 :: SWord8 = if s8764 then s8760 else s8761
-  s8766 :: SWord8 = if s6628 then s8762 else s8765
-  s8767 :: SWord8 = if s6566 then s8755 else s8766
-  s8768 :: SWord8 = s18 & s6689
-  s8769 :: SBool = s17 /= s8768
-  s8770 :: SWord8 = if s22 then s6699 else s6681
-  s8771 :: SWord8 = s8770 >>> 1
-  s8772 :: SWord8 = s24 | s8771
-  s8773 :: SWord8 = s26 & s8771
-  s8774 :: SWord8 = if s8769 then s8772 else s8773
-  s8775 :: SWord8 = s18 & s6704
-  s8776 :: SBool = s17 /= s8775
-  s8777 :: SWord8 = if s8776 then s8772 else s8773
-  s8778 :: SWord8 = if s6685 then s8774 else s8777
-  s8779 :: SWord8 = s18 & s6727
-  s8780 :: SBool = s17 /= s8779
-  s8781 :: SWord8 = if s22 then s6735 else s6716
-  s8782 :: SWord8 = s8781 >>> 1
-  s8783 :: SWord8 = s24 | s8782
-  s8784 :: SWord8 = s26 & s8782
-  s8785 :: SWord8 = if s8780 then s8783 else s8784
-  s8786 :: SWord8 = s18 & s6738
-  s8787 :: SBool = s17 /= s8786
-  s8788 :: SWord8 = if s8787 then s8783 else s8784
-  s8789 :: SWord8 = if s6720 then s8785 else s8788
-  s8790 :: SWord8 = if s6663 then s8778 else s8789
-  s8791 :: SWord8 = if s6545 then s8767 else s8790
-  s8792 :: SWord8 = s18 & s6803
-  s8793 :: SBool = s17 /= s8792
-  s8794 :: SWord8 = if s22 then s6813 else s6795
-  s8795 :: SWord8 = s8794 >>> 1
-  s8796 :: SWord8 = s24 | s8795
-  s8797 :: SWord8 = s26 & s8795
-  s8798 :: SWord8 = if s8793 then s8796 else s8797
-  s8799 :: SWord8 = s18 & s6820
-  s8800 :: SBool = s17 /= s8799
-  s8801 :: SWord8 = if s8800 then s8796 else s8797
-  s8802 :: SWord8 = if s6799 then s8798 else s8801
-  s8803 :: SWord8 = s18 & s6843
-  s8804 :: SBool = s17 /= s8803
-  s8805 :: SWord8 = if s22 then s6851 else s6832
-  s8806 :: SWord8 = s8805 >>> 1
-  s8807 :: SWord8 = s24 | s8806
-  s8808 :: SWord8 = s26 & s8806
-  s8809 :: SWord8 = if s8804 then s8807 else s8808
-  s8810 :: SWord8 = s18 & s6854
-  s8811 :: SBool = s17 /= s8810
-  s8812 :: SWord8 = if s8811 then s8807 else s8808
-  s8813 :: SWord8 = if s6836 then s8809 else s8812
-  s8814 :: SWord8 = if s6778 then s8802 else s8813
-  s8815 :: SWord8 = s18 & s6897
-  s8816 :: SBool = s17 /= s8815
-  s8817 :: SWord8 = if s22 then s6907 else s6889
-  s8818 :: SWord8 = s8817 >>> 1
-  s8819 :: SWord8 = s24 | s8818
-  s8820 :: SWord8 = s26 & s8818
-  s8821 :: SWord8 = if s8816 then s8819 else s8820
-  s8822 :: SWord8 = s18 & s6912
-  s8823 :: SBool = s17 /= s8822
-  s8824 :: SWord8 = if s8823 then s8819 else s8820
-  s8825 :: SWord8 = if s6893 then s8821 else s8824
-  s8826 :: SWord8 = s18 & s6935
-  s8827 :: SBool = s17 /= s8826
-  s8828 :: SWord8 = if s22 then s6943 else s6924
-  s8829 :: SWord8 = s8828 >>> 1
-  s8830 :: SWord8 = s24 | s8829
-  s8831 :: SWord8 = s26 & s8829
-  s8832 :: SWord8 = if s8827 then s8830 else s8831
-  s8833 :: SWord8 = s18 & s6946
-  s8834 :: SBool = s17 /= s8833
-  s8835 :: SWord8 = if s8834 then s8830 else s8831
-  s8836 :: SWord8 = if s6928 then s8832 else s8835
-  s8837 :: SWord8 = if s6871 then s8825 else s8836
-  s8838 :: SWord8 = if s6756 then s8814 else s8837
-  s8839 :: SWord8 = if s6524 then s8791 else s8838
-  s8840 :: SWord8 = s18 & s7033
-  s8841 :: SBool = s17 /= s8840
-  s8842 :: SWord8 = if s22 then s7043 else s7025
-  s8843 :: SWord8 = s8842 >>> 1
-  s8844 :: SWord8 = s24 | s8843
-  s8845 :: SWord8 = s26 & s8843
-  s8846 :: SWord8 = if s8841 then s8844 else s8845
-  s8847 :: SWord8 = s18 & s7052
-  s8848 :: SBool = s17 /= s8847
-  s8849 :: SWord8 = if s8848 then s8844 else s8845
-  s8850 :: SWord8 = if s7029 then s8846 else s8849
-  s8851 :: SWord8 = s18 & s7075
-  s8852 :: SBool = s17 /= s8851
-  s8853 :: SWord8 = if s22 then s7083 else s7064
-  s8854 :: SWord8 = s8853 >>> 1
-  s8855 :: SWord8 = s24 | s8854
-  s8856 :: SWord8 = s26 & s8854
-  s8857 :: SWord8 = if s8852 then s8855 else s8856
-  s8858 :: SWord8 = s18 & s7086
-  s8859 :: SBool = s17 /= s8858
-  s8860 :: SWord8 = if s8859 then s8855 else s8856
-  s8861 :: SWord8 = if s7068 then s8857 else s8860
-  s8862 :: SWord8 = if s7008 then s8850 else s8861
-  s8863 :: SWord8 = s18 & s7129
-  s8864 :: SBool = s17 /= s8863
-  s8865 :: SWord8 = if s22 then s7139 else s7121
-  s8866 :: SWord8 = s8865 >>> 1
-  s8867 :: SWord8 = s24 | s8866
-  s8868 :: SWord8 = s26 & s8866
-  s8869 :: SWord8 = if s8864 then s8867 else s8868
-  s8870 :: SWord8 = s18 & s7144
-  s8871 :: SBool = s17 /= s8870
-  s8872 :: SWord8 = if s8871 then s8867 else s8868
-  s8873 :: SWord8 = if s7125 then s8869 else s8872
-  s8874 :: SWord8 = s18 & s7167
-  s8875 :: SBool = s17 /= s8874
-  s8876 :: SWord8 = if s22 then s7175 else s7156
-  s8877 :: SWord8 = s8876 >>> 1
-  s8878 :: SWord8 = s24 | s8877
-  s8879 :: SWord8 = s26 & s8877
-  s8880 :: SWord8 = if s8875 then s8878 else s8879
-  s8881 :: SWord8 = s18 & s7178
-  s8882 :: SBool = s17 /= s8881
-  s8883 :: SWord8 = if s8882 then s8878 else s8879
-  s8884 :: SWord8 = if s7160 then s8880 else s8883
-  s8885 :: SWord8 = if s7103 then s8873 else s8884
-  s8886 :: SWord8 = if s6987 then s8862 else s8885
-  s8887 :: SWord8 = s18 & s7243
-  s8888 :: SBool = s17 /= s8887
-  s8889 :: SWord8 = if s22 then s7253 else s7235
-  s8890 :: SWord8 = s8889 >>> 1
-  s8891 :: SWord8 = s24 | s8890
-  s8892 :: SWord8 = s26 & s8890
-  s8893 :: SWord8 = if s8888 then s8891 else s8892
-  s8894 :: SWord8 = s18 & s7260
-  s8895 :: SBool = s17 /= s8894
-  s8896 :: SWord8 = if s8895 then s8891 else s8892
-  s8897 :: SWord8 = if s7239 then s8893 else s8896
-  s8898 :: SWord8 = s18 & s7283
-  s8899 :: SBool = s17 /= s8898
-  s8900 :: SWord8 = if s22 then s7291 else s7272
-  s8901 :: SWord8 = s8900 >>> 1
-  s8902 :: SWord8 = s24 | s8901
-  s8903 :: SWord8 = s26 & s8901
-  s8904 :: SWord8 = if s8899 then s8902 else s8903
-  s8905 :: SWord8 = s18 & s7294
-  s8906 :: SBool = s17 /= s8905
-  s8907 :: SWord8 = if s8906 then s8902 else s8903
-  s8908 :: SWord8 = if s7276 then s8904 else s8907
-  s8909 :: SWord8 = if s7218 then s8897 else s8908
-  s8910 :: SWord8 = s18 & s7337
-  s8911 :: SBool = s17 /= s8910
-  s8912 :: SWord8 = if s22 then s7347 else s7329
-  s8913 :: SWord8 = s8912 >>> 1
-  s8914 :: SWord8 = s24 | s8913
-  s8915 :: SWord8 = s26 & s8913
-  s8916 :: SWord8 = if s8911 then s8914 else s8915
-  s8917 :: SWord8 = s18 & s7352
-  s8918 :: SBool = s17 /= s8917
-  s8919 :: SWord8 = if s8918 then s8914 else s8915
-  s8920 :: SWord8 = if s7333 then s8916 else s8919
-  s8921 :: SWord8 = s18 & s7375
-  s8922 :: SBool = s17 /= s8921
-  s8923 :: SWord8 = if s22 then s7383 else s7364
-  s8924 :: SWord8 = s8923 >>> 1
-  s8925 :: SWord8 = s24 | s8924
-  s8926 :: SWord8 = s26 & s8924
-  s8927 :: SWord8 = if s8922 then s8925 else s8926
-  s8928 :: SWord8 = s18 & s7386
-  s8929 :: SBool = s17 /= s8928
-  s8930 :: SWord8 = if s8929 then s8925 else s8926
-  s8931 :: SWord8 = if s7368 then s8927 else s8930
-  s8932 :: SWord8 = if s7311 then s8920 else s8931
-  s8933 :: SWord8 = if s7196 then s8909 else s8932
-  s8934 :: SWord8 = if s6965 then s8886 else s8933
-  s8935 :: SWord8 = if s6502 then s8839 else s8934
-  s8936 :: SWord8 = if s5575 then s8744 else s8935
-  s8937 :: SWord8 = if s3725 then s8553 else s8936
-  s8938 :: SWord8 = if s21 then s8170 else s8937
-  s8939 :: SWord16 = s17 # s8938
-  s8940 :: SWord16 = s7403 + s8939
-  s8941 :: SWord16 = s17 # s1
-  s8942 :: SWord16 = s17 # s3
-  s8943 :: SWord16 = s8941 * s8942
-  s8944 :: SBool = s8940 == s8943
-  s8945 :: SBool = s15 | s8944
-OUTPUTS
-  s8945
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/legato_c.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/legato_c.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/legato_c.gold
+++ /dev/null
@@ -1,6413 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for legatoMult. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: legatoMult_driver
-
-legatoMult.o: legatoMult.c legatoMult.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-legatoMult_driver.o: legatoMult_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-legatoMult_driver: legatoMult.o legatoMult_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f legatoMult_driver
-== END: "Makefile" ==================
-== BEGIN: "legatoMult.h" ================
-/* Header file for legatoMult. Automatically generated by SBV. Do not edit! */
-
-#ifndef __legatoMult__HEADER_INCLUDED__
-#define __legatoMult__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-void legatoMult(const SWord8 x, const SWord8 y, SWord8 *hi,
-                SWord8 *lo);
-
-#endif /* __legatoMult__HEADER_INCLUDED__ */
-== END: "legatoMult.h" ==================
-== BEGIN: "legatoMult_driver.c" ================
-/* Example driver program for legatoMult. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "legatoMult.h"
-
-int main(void)
-{
-  SWord8 hi;
-  SWord8 lo;
-  
-  legatoMult(87, 92, &hi, &lo);
-  
-  printf("legatoMult(87, 92, &hi, &lo) ->\n");
-  printf("  hi = %"PRIu8"\n", hi);
-  printf("  lo = %"PRIu8"\n", lo);
-
-  return 0;
-}
-== END: "legatoMult_driver.c" ==================
-== BEGIN: "legatoMult.c" ================
-/* File: "legatoMult.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "legatoMult.h"
-
-void legatoMult(const SWord8 x, const SWord8 y, SWord8 *hi,
-                SWord8 *lo)
-{
-  const SWord8 s0 = x;
-  const SWord8 s1 = y;
-  const SWord8 s3 = s0 & 1;
-  const SBool  s5 = s3 != 0;
-  const SBool  s6 = 0 == s5;
-  const SWord8 s7 = (s0 >> 1) | (s0 << 7);
-  const SWord8 s9 = s7 & 127;
-  const SWord8 s10 = 1 & s9;
-  const SBool  s11 = 0 != s10;
-  const SBool  s12 = 0 == s11;
-  const SWord8 s13 = (s9 >> 1) | (s9 << 7);
-  const SWord8 s14 = 127 & s13;
-  const SWord8 s15 = 1 & s14;
-  const SBool  s16 = 0 != s15;
-  const SBool  s17 = 0 == s16;
-  const SWord8 s18 = (s14 >> 1) | (s14 << 7);
-  const SWord8 s19 = 127 & s18;
-  const SWord8 s20 = 1 & s19;
-  const SBool  s21 = 0 != s20;
-  const SBool  s22 = 0 == s21;
-  const SWord8 s24 = s5 ? 128 : 0;
-  const SWord8 s25 = 1 & s24;
-  const SBool  s26 = 0 != s25;
-  const SWord8 s27 = s26 ? 128 : 0;
-  const SWord8 s28 = 1 & s27;
-  const SBool  s29 = 0 != s28;
-  const SWord8 s30 = (s19 >> 1) | (s19 << 7);
-  const SWord8 s31 = 128 | s30;
-  const SWord8 s32 = 127 & s30;
-  const SWord8 s33 = s29 ? s31 : s32;
-  const SWord8 s34 = 1 & s33;
-  const SBool  s35 = 0 != s34;
-  const SBool  s36 = 0 == s35;
-  const SWord8 s37 = (s24 >> 1) | (s24 << 7);
-  const SWord8 s38 = 128 | s37;
-  const SWord8 s39 = 127 & s37;
-  const SWord8 s40 = s11 ? s38 : s39;
-  const SWord8 s41 = 1 & s40;
-  const SBool  s42 = 0 != s41;
-  const SWord8 s43 = (s27 >> 1) | (s27 << 7);
-  const SWord8 s44 = 128 | s43;
-  const SWord8 s45 = 127 & s43;
-  const SWord8 s46 = s42 ? s44 : s45;
-  const SWord8 s47 = 1 & s46;
-  const SBool  s48 = 0 != s47;
-  const SWord8 s49 = (s33 >> 1) | (s33 << 7);
-  const SWord8 s50 = 128 | s49;
-  const SWord8 s51 = 127 & s49;
-  const SWord8 s52 = s48 ? s50 : s51;
-  const SWord8 s53 = 1 & s52;
-  const SBool  s54 = 0 != s53;
-  const SBool  s55 = 0 == s54;
-  const SWord8 s56 = (s40 >> 1) | (s40 << 7);
-  const SWord8 s57 = 128 | s56;
-  const SWord8 s58 = 127 & s56;
-  const SWord8 s59 = s16 ? s57 : s58;
-  const SWord8 s60 = 1 & s59;
-  const SBool  s61 = 0 != s60;
-  const SWord8 s62 = (s46 >> 1) | (s46 << 7);
-  const SWord8 s63 = 128 | s62;
-  const SWord8 s64 = 127 & s62;
-  const SWord8 s65 = s61 ? s63 : s64;
-  const SWord8 s66 = 1 & s65;
-  const SBool  s67 = 0 != s66;
-  const SWord8 s68 = (s52 >> 1) | (s52 << 7);
-  const SWord8 s69 = 128 | s68;
-  const SWord8 s70 = 127 & s68;
-  const SWord8 s71 = s67 ? s69 : s70;
-  const SWord8 s72 = 1 & s71;
-  const SBool  s73 = 0 != s72;
-  const SBool  s74 = 0 == s73;
-  const SWord8 s75 = (s59 >> 1) | (s59 << 7);
-  const SWord8 s76 = 128 | s75;
-  const SWord8 s77 = 127 & s75;
-  const SWord8 s78 = s21 ? s76 : s77;
-  const SWord8 s79 = 1 & s78;
-  const SBool  s80 = 0 != s79;
-  const SWord8 s81 = (s65 >> 1) | (s65 << 7);
-  const SWord8 s82 = 128 | s81;
-  const SWord8 s83 = 127 & s81;
-  const SWord8 s84 = s80 ? s82 : s83;
-  const SWord8 s85 = 1 & s84;
-  const SBool  s86 = 0 != s85;
-  const SWord8 s87 = (s71 >> 1) | (s71 << 7);
-  const SWord8 s88 = 128 | s87;
-  const SWord8 s89 = 127 & s87;
-  const SWord8 s90 = s86 ? s88 : s89;
-  const SWord8 s91 = 1 & s90;
-  const SBool  s92 = 0 != s91;
-  const SBool  s93 = 0 == s92;
-  const SWord8 s94 = (s78 >> 1) | (s78 << 7);
-  const SWord8 s95 = 128 | s94;
-  const SWord8 s96 = 127 & s94;
-  const SWord8 s97 = s35 ? s95 : s96;
-  const SWord8 s98 = (s97 >> 1) | (s97 << 7);
-  const SWord8 s99 = 128 | s98;
-  const SWord8 s100 = 127 & s98;
-  const SWord8 s101 = s54 ? s99 : s100;
-  const SWord8 s102 = (s101 >> 1) | (s101 << 7);
-  const SWord8 s103 = 128 | s102;
-  const SWord8 s104 = 127 & s102;
-  const SWord8 s105 = s73 ? s103 : s104;
-  const SWord8 s106 = (s105 >> 1) | (s105 << 7);
-  const SWord8 s107 = 128 | s106;
-  const SWord8 s108 = 127 & s106;
-  const SWord8 s109 = s92 ? s107 : s108;
-  const SWord8 s110 = s1 + s105;
-  const SBool  s111 = s110 < s1;
-  const SBool  s112 = s110 < s105;
-  const SBool  s113 = s111 | s112;
-  const SWord8 s114 = (s110 >> 1) | (s110 << 7);
-  const SWord8 s115 = 128 | s114;
-  const SWord8 s116 = 127 & s114;
-  const SWord8 s117 = s113 ? s115 : s116;
-  const SWord8 s118 = s93 ? s109 : s117;
-  const SWord8 s119 = s1 + s101;
-  const SBool  s120 = s119 < s1;
-  const SBool  s121 = s119 < s101;
-  const SBool  s122 = s120 | s121;
-  const SWord8 s123 = (s119 >> 1) | (s119 << 7);
-  const SWord8 s124 = 128 | s123;
-  const SWord8 s125 = 127 & s123;
-  const SWord8 s126 = s122 ? s124 : s125;
-  const SWord8 s127 = (s126 >> 1) | (s126 << 7);
-  const SWord8 s128 = 128 | s127;
-  const SWord8 s129 = 127 & s127;
-  const SWord8 s130 = s92 ? s128 : s129;
-  const SWord8 s131 = s1 + s126;
-  const SBool  s132 = s131 < s1;
-  const SBool  s133 = s131 < s126;
-  const SBool  s134 = s132 | s133;
-  const SWord8 s135 = (s131 >> 1) | (s131 << 7);
-  const SWord8 s136 = 128 | s135;
-  const SWord8 s137 = 127 & s135;
-  const SWord8 s138 = s134 ? s136 : s137;
-  const SWord8 s139 = s93 ? s130 : s138;
-  const SWord8 s140 = s74 ? s118 : s139;
-  const SWord8 s141 = s1 + s97;
-  const SBool  s142 = s141 < s1;
-  const SBool  s143 = s141 < s97;
-  const SBool  s144 = s142 | s143;
-  const SWord8 s145 = (s141 >> 1) | (s141 << 7);
-  const SWord8 s146 = 128 | s145;
-  const SWord8 s147 = 127 & s145;
-  const SWord8 s148 = s144 ? s146 : s147;
-  const SWord8 s149 = (s148 >> 1) | (s148 << 7);
-  const SWord8 s150 = 128 | s149;
-  const SWord8 s151 = 127 & s149;
-  const SWord8 s152 = s73 ? s150 : s151;
-  const SWord8 s153 = (s152 >> 1) | (s152 << 7);
-  const SWord8 s154 = 128 | s153;
-  const SWord8 s155 = 127 & s153;
-  const SWord8 s156 = s92 ? s154 : s155;
-  const SWord8 s157 = s1 + s152;
-  const SBool  s158 = s157 < s1;
-  const SBool  s159 = s157 < s152;
-  const SBool  s160 = s158 | s159;
-  const SWord8 s161 = (s157 >> 1) | (s157 << 7);
-  const SWord8 s162 = 128 | s161;
-  const SWord8 s163 = 127 & s161;
-  const SWord8 s164 = s160 ? s162 : s163;
-  const SWord8 s165 = s93 ? s156 : s164;
-  const SWord8 s166 = s1 + s148;
-  const SBool  s167 = s166 < s1;
-  const SBool  s168 = s166 < s148;
-  const SBool  s169 = s167 | s168;
-  const SWord8 s170 = (s166 >> 1) | (s166 << 7);
-  const SWord8 s171 = 128 | s170;
-  const SWord8 s172 = 127 & s170;
-  const SWord8 s173 = s169 ? s171 : s172;
-  const SWord8 s174 = (s173 >> 1) | (s173 << 7);
-  const SWord8 s175 = 128 | s174;
-  const SWord8 s176 = 127 & s174;
-  const SWord8 s177 = s92 ? s175 : s176;
-  const SWord8 s178 = s1 + s173;
-  const SBool  s179 = s178 < s1;
-  const SBool  s180 = s178 < s173;
-  const SBool  s181 = s179 | s180;
-  const SWord8 s182 = (s178 >> 1) | (s178 << 7);
-  const SWord8 s183 = 128 | s182;
-  const SWord8 s184 = 127 & s182;
-  const SWord8 s185 = s181 ? s183 : s184;
-  const SWord8 s186 = s93 ? s177 : s185;
-  const SWord8 s187 = s74 ? s165 : s186;
-  const SWord8 s188 = s55 ? s140 : s187;
-  const SWord8 s189 = s1 + s78;
-  const SWord8 s190 = 1 & s189;
-  const SBool  s191 = 0 != s190;
-  const SWord8 s192 = s191 ? s82 : s83;
-  const SWord8 s193 = 1 & s192;
-  const SBool  s194 = 0 != s193;
-  const SWord8 s195 = s194 ? s88 : s89;
-  const SWord8 s196 = 1 & s195;
-  const SBool  s197 = 0 != s196;
-  const SBool  s198 = 0 == s197;
-  const SBool  s199 = s189 < s1;
-  const SBool  s200 = s189 < s78;
-  const SBool  s201 = s199 | s200;
-  const SWord8 s202 = (s189 >> 1) | (s189 << 7);
-  const SWord8 s203 = 128 | s202;
-  const SWord8 s204 = 127 & s202;
-  const SWord8 s205 = s201 ? s203 : s204;
-  const SWord8 s206 = (s205 >> 1) | (s205 << 7);
-  const SWord8 s207 = 128 | s206;
-  const SWord8 s208 = 127 & s206;
-  const SWord8 s209 = s54 ? s207 : s208;
-  const SWord8 s210 = (s209 >> 1) | (s209 << 7);
-  const SWord8 s211 = 128 | s210;
-  const SWord8 s212 = 127 & s210;
-  const SWord8 s213 = s73 ? s211 : s212;
-  const SWord8 s214 = (s213 >> 1) | (s213 << 7);
-  const SWord8 s215 = 128 | s214;
-  const SWord8 s216 = 127 & s214;
-  const SWord8 s217 = s197 ? s215 : s216;
-  const SWord8 s218 = s1 + s213;
-  const SBool  s219 = s218 < s1;
-  const SBool  s220 = s218 < s213;
-  const SBool  s221 = s219 | s220;
-  const SWord8 s222 = (s218 >> 1) | (s218 << 7);
-  const SWord8 s223 = 128 | s222;
-  const SWord8 s224 = 127 & s222;
-  const SWord8 s225 = s221 ? s223 : s224;
-  const SWord8 s226 = s198 ? s217 : s225;
-  const SWord8 s227 = s1 + s209;
-  const SBool  s228 = s227 < s1;
-  const SBool  s229 = s227 < s209;
-  const SBool  s230 = s228 | s229;
-  const SWord8 s231 = (s227 >> 1) | (s227 << 7);
-  const SWord8 s232 = 128 | s231;
-  const SWord8 s233 = 127 & s231;
-  const SWord8 s234 = s230 ? s232 : s233;
-  const SWord8 s235 = (s234 >> 1) | (s234 << 7);
-  const SWord8 s236 = 128 | s235;
-  const SWord8 s237 = 127 & s235;
-  const SWord8 s238 = s197 ? s236 : s237;
-  const SWord8 s239 = s1 + s234;
-  const SBool  s240 = s239 < s1;
-  const SBool  s241 = s239 < s234;
-  const SBool  s242 = s240 | s241;
-  const SWord8 s243 = (s239 >> 1) | (s239 << 7);
-  const SWord8 s244 = 128 | s243;
-  const SWord8 s245 = 127 & s243;
-  const SWord8 s246 = s242 ? s244 : s245;
-  const SWord8 s247 = s198 ? s238 : s246;
-  const SWord8 s248 = s74 ? s226 : s247;
-  const SWord8 s249 = s1 + s205;
-  const SBool  s250 = s249 < s1;
-  const SBool  s251 = s249 < s205;
-  const SBool  s252 = s250 | s251;
-  const SWord8 s253 = (s249 >> 1) | (s249 << 7);
-  const SWord8 s254 = 128 | s253;
-  const SWord8 s255 = 127 & s253;
-  const SWord8 s256 = s252 ? s254 : s255;
-  const SWord8 s257 = (s256 >> 1) | (s256 << 7);
-  const SWord8 s258 = 128 | s257;
-  const SWord8 s259 = 127 & s257;
-  const SWord8 s260 = s73 ? s258 : s259;
-  const SWord8 s261 = (s260 >> 1) | (s260 << 7);
-  const SWord8 s262 = 128 | s261;
-  const SWord8 s263 = 127 & s261;
-  const SWord8 s264 = s197 ? s262 : s263;
-  const SWord8 s265 = s1 + s260;
-  const SBool  s266 = s265 < s1;
-  const SBool  s267 = s265 < s260;
-  const SBool  s268 = s266 | s267;
-  const SWord8 s269 = (s265 >> 1) | (s265 << 7);
-  const SWord8 s270 = 128 | s269;
-  const SWord8 s271 = 127 & s269;
-  const SWord8 s272 = s268 ? s270 : s271;
-  const SWord8 s273 = s198 ? s264 : s272;
-  const SWord8 s274 = s1 + s256;
-  const SBool  s275 = s274 < s1;
-  const SBool  s276 = s274 < s256;
-  const SBool  s277 = s275 | s276;
-  const SWord8 s278 = (s274 >> 1) | (s274 << 7);
-  const SWord8 s279 = 128 | s278;
-  const SWord8 s280 = 127 & s278;
-  const SWord8 s281 = s277 ? s279 : s280;
-  const SWord8 s282 = (s281 >> 1) | (s281 << 7);
-  const SWord8 s283 = 128 | s282;
-  const SWord8 s284 = 127 & s282;
-  const SWord8 s285 = s197 ? s283 : s284;
-  const SWord8 s286 = s1 + s281;
-  const SBool  s287 = s286 < s1;
-  const SBool  s288 = s286 < s281;
-  const SBool  s289 = s287 | s288;
-  const SWord8 s290 = (s286 >> 1) | (s286 << 7);
-  const SWord8 s291 = 128 | s290;
-  const SWord8 s292 = 127 & s290;
-  const SWord8 s293 = s289 ? s291 : s292;
-  const SWord8 s294 = s198 ? s285 : s293;
-  const SWord8 s295 = s74 ? s273 : s294;
-  const SWord8 s296 = s55 ? s248 : s295;
-  const SWord8 s297 = s36 ? s188 : s296;
-  const SWord8 s298 = s1 + s59;
-  const SWord8 s299 = 1 & s298;
-  const SBool  s300 = 0 != s299;
-  const SWord8 s301 = s300 ? s63 : s64;
-  const SWord8 s302 = 1 & s301;
-  const SBool  s303 = 0 != s302;
-  const SWord8 s304 = s303 ? s69 : s70;
-  const SWord8 s305 = 1 & s304;
-  const SBool  s306 = 0 != s305;
-  const SBool  s307 = 0 == s306;
-  const SBool  s308 = s298 < s1;
-  const SBool  s309 = s298 < s59;
-  const SBool  s310 = s308 | s309;
-  const SWord8 s311 = (s298 >> 1) | (s298 << 7);
-  const SWord8 s312 = 128 | s311;
-  const SWord8 s313 = 127 & s311;
-  const SWord8 s314 = s310 ? s312 : s313;
-  const SWord8 s315 = 1 & s314;
-  const SBool  s316 = 0 != s315;
-  const SWord8 s317 = (s301 >> 1) | (s301 << 7);
-  const SWord8 s318 = 128 | s317;
-  const SWord8 s319 = 127 & s317;
-  const SWord8 s320 = s316 ? s318 : s319;
-  const SWord8 s321 = 1 & s320;
-  const SBool  s322 = 0 != s321;
-  const SWord8 s323 = (s304 >> 1) | (s304 << 7);
-  const SWord8 s324 = 128 | s323;
-  const SWord8 s325 = 127 & s323;
-  const SWord8 s326 = s322 ? s324 : s325;
-  const SWord8 s327 = 1 & s326;
-  const SBool  s328 = 0 != s327;
-  const SBool  s329 = 0 == s328;
-  const SWord8 s330 = (s314 >> 1) | (s314 << 7);
-  const SWord8 s331 = 128 | s330;
-  const SWord8 s332 = 127 & s330;
-  const SWord8 s333 = s35 ? s331 : s332;
-  const SWord8 s334 = (s333 >> 1) | (s333 << 7);
-  const SWord8 s335 = 128 | s334;
-  const SWord8 s336 = 127 & s334;
-  const SWord8 s337 = s54 ? s335 : s336;
-  const SWord8 s338 = (s337 >> 1) | (s337 << 7);
-  const SWord8 s339 = 128 | s338;
-  const SWord8 s340 = 127 & s338;
-  const SWord8 s341 = s306 ? s339 : s340;
-  const SWord8 s342 = (s341 >> 1) | (s341 << 7);
-  const SWord8 s343 = 128 | s342;
-  const SWord8 s344 = 127 & s342;
-  const SWord8 s345 = s328 ? s343 : s344;
-  const SWord8 s346 = s1 + s341;
-  const SBool  s347 = s346 < s1;
-  const SBool  s348 = s346 < s341;
-  const SBool  s349 = s347 | s348;
-  const SWord8 s350 = (s346 >> 1) | (s346 << 7);
-  const SWord8 s351 = 128 | s350;
-  const SWord8 s352 = 127 & s350;
-  const SWord8 s353 = s349 ? s351 : s352;
-  const SWord8 s354 = s329 ? s345 : s353;
-  const SWord8 s355 = s1 + s337;
-  const SBool  s356 = s355 < s1;
-  const SBool  s357 = s355 < s337;
-  const SBool  s358 = s356 | s357;
-  const SWord8 s359 = (s355 >> 1) | (s355 << 7);
-  const SWord8 s360 = 128 | s359;
-  const SWord8 s361 = 127 & s359;
-  const SWord8 s362 = s358 ? s360 : s361;
-  const SWord8 s363 = (s362 >> 1) | (s362 << 7);
-  const SWord8 s364 = 128 | s363;
-  const SWord8 s365 = 127 & s363;
-  const SWord8 s366 = s328 ? s364 : s365;
-  const SWord8 s367 = s1 + s362;
-  const SBool  s368 = s367 < s1;
-  const SBool  s369 = s367 < s362;
-  const SBool  s370 = s368 | s369;
-  const SWord8 s371 = (s367 >> 1) | (s367 << 7);
-  const SWord8 s372 = 128 | s371;
-  const SWord8 s373 = 127 & s371;
-  const SWord8 s374 = s370 ? s372 : s373;
-  const SWord8 s375 = s329 ? s366 : s374;
-  const SWord8 s376 = s307 ? s354 : s375;
-  const SWord8 s377 = s1 + s333;
-  const SBool  s378 = s377 < s1;
-  const SBool  s379 = s377 < s333;
-  const SBool  s380 = s378 | s379;
-  const SWord8 s381 = (s377 >> 1) | (s377 << 7);
-  const SWord8 s382 = 128 | s381;
-  const SWord8 s383 = 127 & s381;
-  const SWord8 s384 = s380 ? s382 : s383;
-  const SWord8 s385 = (s384 >> 1) | (s384 << 7);
-  const SWord8 s386 = 128 | s385;
-  const SWord8 s387 = 127 & s385;
-  const SWord8 s388 = s306 ? s386 : s387;
-  const SWord8 s389 = (s388 >> 1) | (s388 << 7);
-  const SWord8 s390 = 128 | s389;
-  const SWord8 s391 = 127 & s389;
-  const SWord8 s392 = s328 ? s390 : s391;
-  const SWord8 s393 = s1 + s388;
-  const SBool  s394 = s393 < s1;
-  const SBool  s395 = s393 < s388;
-  const SBool  s396 = s394 | s395;
-  const SWord8 s397 = (s393 >> 1) | (s393 << 7);
-  const SWord8 s398 = 128 | s397;
-  const SWord8 s399 = 127 & s397;
-  const SWord8 s400 = s396 ? s398 : s399;
-  const SWord8 s401 = s329 ? s392 : s400;
-  const SWord8 s402 = s1 + s384;
-  const SBool  s403 = s402 < s1;
-  const SBool  s404 = s402 < s384;
-  const SBool  s405 = s403 | s404;
-  const SWord8 s406 = (s402 >> 1) | (s402 << 7);
-  const SWord8 s407 = 128 | s406;
-  const SWord8 s408 = 127 & s406;
-  const SWord8 s409 = s405 ? s407 : s408;
-  const SWord8 s410 = (s409 >> 1) | (s409 << 7);
-  const SWord8 s411 = 128 | s410;
-  const SWord8 s412 = 127 & s410;
-  const SWord8 s413 = s328 ? s411 : s412;
-  const SWord8 s414 = s1 + s409;
-  const SBool  s415 = s414 < s1;
-  const SBool  s416 = s414 < s409;
-  const SBool  s417 = s415 | s416;
-  const SWord8 s418 = (s414 >> 1) | (s414 << 7);
-  const SWord8 s419 = 128 | s418;
-  const SWord8 s420 = 127 & s418;
-  const SWord8 s421 = s417 ? s419 : s420;
-  const SWord8 s422 = s329 ? s413 : s421;
-  const SWord8 s423 = s307 ? s401 : s422;
-  const SWord8 s424 = s55 ? s376 : s423;
-  const SWord8 s425 = s1 + s314;
-  const SWord8 s426 = 1 & s425;
-  const SBool  s427 = 0 != s426;
-  const SWord8 s428 = s427 ? s318 : s319;
-  const SWord8 s429 = 1 & s428;
-  const SBool  s430 = 0 != s429;
-  const SWord8 s431 = s430 ? s324 : s325;
-  const SWord8 s432 = 1 & s431;
-  const SBool  s433 = 0 != s432;
-  const SBool  s434 = 0 == s433;
-  const SBool  s435 = s425 < s1;
-  const SBool  s436 = s425 < s314;
-  const SBool  s437 = s435 | s436;
-  const SWord8 s438 = (s425 >> 1) | (s425 << 7);
-  const SWord8 s439 = 128 | s438;
-  const SWord8 s440 = 127 & s438;
-  const SWord8 s441 = s437 ? s439 : s440;
-  const SWord8 s442 = (s441 >> 1) | (s441 << 7);
-  const SWord8 s443 = 128 | s442;
-  const SWord8 s444 = 127 & s442;
-  const SWord8 s445 = s54 ? s443 : s444;
-  const SWord8 s446 = (s445 >> 1) | (s445 << 7);
-  const SWord8 s447 = 128 | s446;
-  const SWord8 s448 = 127 & s446;
-  const SWord8 s449 = s306 ? s447 : s448;
-  const SWord8 s450 = (s449 >> 1) | (s449 << 7);
-  const SWord8 s451 = 128 | s450;
-  const SWord8 s452 = 127 & s450;
-  const SWord8 s453 = s433 ? s451 : s452;
-  const SWord8 s454 = s1 + s449;
-  const SBool  s455 = s454 < s1;
-  const SBool  s456 = s454 < s449;
-  const SBool  s457 = s455 | s456;
-  const SWord8 s458 = (s454 >> 1) | (s454 << 7);
-  const SWord8 s459 = 128 | s458;
-  const SWord8 s460 = 127 & s458;
-  const SWord8 s461 = s457 ? s459 : s460;
-  const SWord8 s462 = s434 ? s453 : s461;
-  const SWord8 s463 = s1 + s445;
-  const SBool  s464 = s463 < s1;
-  const SBool  s465 = s463 < s445;
-  const SBool  s466 = s464 | s465;
-  const SWord8 s467 = (s463 >> 1) | (s463 << 7);
-  const SWord8 s468 = 128 | s467;
-  const SWord8 s469 = 127 & s467;
-  const SWord8 s470 = s466 ? s468 : s469;
-  const SWord8 s471 = (s470 >> 1) | (s470 << 7);
-  const SWord8 s472 = 128 | s471;
-  const SWord8 s473 = 127 & s471;
-  const SWord8 s474 = s433 ? s472 : s473;
-  const SWord8 s475 = s1 + s470;
-  const SBool  s476 = s475 < s1;
-  const SBool  s477 = s475 < s470;
-  const SBool  s478 = s476 | s477;
-  const SWord8 s479 = (s475 >> 1) | (s475 << 7);
-  const SWord8 s480 = 128 | s479;
-  const SWord8 s481 = 127 & s479;
-  const SWord8 s482 = s478 ? s480 : s481;
-  const SWord8 s483 = s434 ? s474 : s482;
-  const SWord8 s484 = s307 ? s462 : s483;
-  const SWord8 s485 = s1 + s441;
-  const SBool  s486 = s485 < s1;
-  const SBool  s487 = s485 < s441;
-  const SBool  s488 = s486 | s487;
-  const SWord8 s489 = (s485 >> 1) | (s485 << 7);
-  const SWord8 s490 = 128 | s489;
-  const SWord8 s491 = 127 & s489;
-  const SWord8 s492 = s488 ? s490 : s491;
-  const SWord8 s493 = (s492 >> 1) | (s492 << 7);
-  const SWord8 s494 = 128 | s493;
-  const SWord8 s495 = 127 & s493;
-  const SWord8 s496 = s306 ? s494 : s495;
-  const SWord8 s497 = (s496 >> 1) | (s496 << 7);
-  const SWord8 s498 = 128 | s497;
-  const SWord8 s499 = 127 & s497;
-  const SWord8 s500 = s433 ? s498 : s499;
-  const SWord8 s501 = s1 + s496;
-  const SBool  s502 = s501 < s1;
-  const SBool  s503 = s501 < s496;
-  const SBool  s504 = s502 | s503;
-  const SWord8 s505 = (s501 >> 1) | (s501 << 7);
-  const SWord8 s506 = 128 | s505;
-  const SWord8 s507 = 127 & s505;
-  const SWord8 s508 = s504 ? s506 : s507;
-  const SWord8 s509 = s434 ? s500 : s508;
-  const SWord8 s510 = s1 + s492;
-  const SBool  s511 = s510 < s1;
-  const SBool  s512 = s510 < s492;
-  const SBool  s513 = s511 | s512;
-  const SWord8 s514 = (s510 >> 1) | (s510 << 7);
-  const SWord8 s515 = 128 | s514;
-  const SWord8 s516 = 127 & s514;
-  const SWord8 s517 = s513 ? s515 : s516;
-  const SWord8 s518 = (s517 >> 1) | (s517 << 7);
-  const SWord8 s519 = 128 | s518;
-  const SWord8 s520 = 127 & s518;
-  const SWord8 s521 = s433 ? s519 : s520;
-  const SWord8 s522 = s1 + s517;
-  const SBool  s523 = s522 < s1;
-  const SBool  s524 = s522 < s517;
-  const SBool  s525 = s523 | s524;
-  const SWord8 s526 = (s522 >> 1) | (s522 << 7);
-  const SWord8 s527 = 128 | s526;
-  const SWord8 s528 = 127 & s526;
-  const SWord8 s529 = s525 ? s527 : s528;
-  const SWord8 s530 = s434 ? s521 : s529;
-  const SWord8 s531 = s307 ? s509 : s530;
-  const SWord8 s532 = s55 ? s484 : s531;
-  const SWord8 s533 = s36 ? s424 : s532;
-  const SWord8 s534 = s22 ? s297 : s533;
-  const SWord8 s535 = s1 + s40;
-  const SWord8 s536 = 1 & s535;
-  const SBool  s537 = 0 != s536;
-  const SWord8 s538 = s537 ? s44 : s45;
-  const SWord8 s539 = 1 & s538;
-  const SBool  s540 = 0 != s539;
-  const SWord8 s541 = s540 ? s50 : s51;
-  const SWord8 s542 = 1 & s541;
-  const SBool  s543 = 0 != s542;
-  const SBool  s544 = 0 == s543;
-  const SBool  s545 = s535 < s1;
-  const SBool  s546 = s535 < s40;
-  const SBool  s547 = s545 | s546;
-  const SWord8 s548 = (s535 >> 1) | (s535 << 7);
-  const SWord8 s549 = 128 | s548;
-  const SWord8 s550 = 127 & s548;
-  const SWord8 s551 = s547 ? s549 : s550;
-  const SWord8 s552 = 1 & s551;
-  const SBool  s553 = 0 != s552;
-  const SWord8 s554 = (s538 >> 1) | (s538 << 7);
-  const SWord8 s555 = 128 | s554;
-  const SWord8 s556 = 127 & s554;
-  const SWord8 s557 = s553 ? s555 : s556;
-  const SWord8 s558 = 1 & s557;
-  const SBool  s559 = 0 != s558;
-  const SWord8 s560 = (s541 >> 1) | (s541 << 7);
-  const SWord8 s561 = 128 | s560;
-  const SWord8 s562 = 127 & s560;
-  const SWord8 s563 = s559 ? s561 : s562;
-  const SWord8 s564 = 1 & s563;
-  const SBool  s565 = 0 != s564;
-  const SBool  s566 = 0 == s565;
-  const SWord8 s567 = (s551 >> 1) | (s551 << 7);
-  const SWord8 s568 = 128 | s567;
-  const SWord8 s569 = 127 & s567;
-  const SWord8 s570 = s21 ? s568 : s569;
-  const SWord8 s571 = 1 & s570;
-  const SBool  s572 = 0 != s571;
-  const SWord8 s573 = (s557 >> 1) | (s557 << 7);
-  const SWord8 s574 = 128 | s573;
-  const SWord8 s575 = 127 & s573;
-  const SWord8 s576 = s572 ? s574 : s575;
-  const SWord8 s577 = 1 & s576;
-  const SBool  s578 = 0 != s577;
-  const SWord8 s579 = (s563 >> 1) | (s563 << 7);
-  const SWord8 s580 = 128 | s579;
-  const SWord8 s581 = 127 & s579;
-  const SWord8 s582 = s578 ? s580 : s581;
-  const SWord8 s583 = 1 & s582;
-  const SBool  s584 = 0 != s583;
-  const SBool  s585 = 0 == s584;
-  const SWord8 s586 = (s570 >> 1) | (s570 << 7);
-  const SWord8 s587 = 128 | s586;
-  const SWord8 s588 = 127 & s586;
-  const SWord8 s589 = s35 ? s587 : s588;
-  const SWord8 s590 = (s589 >> 1) | (s589 << 7);
-  const SWord8 s591 = 128 | s590;
-  const SWord8 s592 = 127 & s590;
-  const SWord8 s593 = s543 ? s591 : s592;
-  const SWord8 s594 = (s593 >> 1) | (s593 << 7);
-  const SWord8 s595 = 128 | s594;
-  const SWord8 s596 = 127 & s594;
-  const SWord8 s597 = s565 ? s595 : s596;
-  const SWord8 s598 = (s597 >> 1) | (s597 << 7);
-  const SWord8 s599 = 128 | s598;
-  const SWord8 s600 = 127 & s598;
-  const SWord8 s601 = s584 ? s599 : s600;
-  const SWord8 s602 = s1 + s597;
-  const SBool  s603 = s602 < s1;
-  const SBool  s604 = s602 < s597;
-  const SBool  s605 = s603 | s604;
-  const SWord8 s606 = (s602 >> 1) | (s602 << 7);
-  const SWord8 s607 = 128 | s606;
-  const SWord8 s608 = 127 & s606;
-  const SWord8 s609 = s605 ? s607 : s608;
-  const SWord8 s610 = s585 ? s601 : s609;
-  const SWord8 s611 = s1 + s593;
-  const SBool  s612 = s611 < s1;
-  const SBool  s613 = s611 < s593;
-  const SBool  s614 = s612 | s613;
-  const SWord8 s615 = (s611 >> 1) | (s611 << 7);
-  const SWord8 s616 = 128 | s615;
-  const SWord8 s617 = 127 & s615;
-  const SWord8 s618 = s614 ? s616 : s617;
-  const SWord8 s619 = (s618 >> 1) | (s618 << 7);
-  const SWord8 s620 = 128 | s619;
-  const SWord8 s621 = 127 & s619;
-  const SWord8 s622 = s584 ? s620 : s621;
-  const SWord8 s623 = s1 + s618;
-  const SBool  s624 = s623 < s1;
-  const SBool  s625 = s623 < s618;
-  const SBool  s626 = s624 | s625;
-  const SWord8 s627 = (s623 >> 1) | (s623 << 7);
-  const SWord8 s628 = 128 | s627;
-  const SWord8 s629 = 127 & s627;
-  const SWord8 s630 = s626 ? s628 : s629;
-  const SWord8 s631 = s585 ? s622 : s630;
-  const SWord8 s632 = s566 ? s610 : s631;
-  const SWord8 s633 = s1 + s589;
-  const SBool  s634 = s633 < s1;
-  const SBool  s635 = s633 < s589;
-  const SBool  s636 = s634 | s635;
-  const SWord8 s637 = (s633 >> 1) | (s633 << 7);
-  const SWord8 s638 = 128 | s637;
-  const SWord8 s639 = 127 & s637;
-  const SWord8 s640 = s636 ? s638 : s639;
-  const SWord8 s641 = (s640 >> 1) | (s640 << 7);
-  const SWord8 s642 = 128 | s641;
-  const SWord8 s643 = 127 & s641;
-  const SWord8 s644 = s565 ? s642 : s643;
-  const SWord8 s645 = (s644 >> 1) | (s644 << 7);
-  const SWord8 s646 = 128 | s645;
-  const SWord8 s647 = 127 & s645;
-  const SWord8 s648 = s584 ? s646 : s647;
-  const SWord8 s649 = s1 + s644;
-  const SBool  s650 = s649 < s1;
-  const SBool  s651 = s649 < s644;
-  const SBool  s652 = s650 | s651;
-  const SWord8 s653 = (s649 >> 1) | (s649 << 7);
-  const SWord8 s654 = 128 | s653;
-  const SWord8 s655 = 127 & s653;
-  const SWord8 s656 = s652 ? s654 : s655;
-  const SWord8 s657 = s585 ? s648 : s656;
-  const SWord8 s658 = s1 + s640;
-  const SBool  s659 = s658 < s1;
-  const SBool  s660 = s658 < s640;
-  const SBool  s661 = s659 | s660;
-  const SWord8 s662 = (s658 >> 1) | (s658 << 7);
-  const SWord8 s663 = 128 | s662;
-  const SWord8 s664 = 127 & s662;
-  const SWord8 s665 = s661 ? s663 : s664;
-  const SWord8 s666 = (s665 >> 1) | (s665 << 7);
-  const SWord8 s667 = 128 | s666;
-  const SWord8 s668 = 127 & s666;
-  const SWord8 s669 = s584 ? s667 : s668;
-  const SWord8 s670 = s1 + s665;
-  const SBool  s671 = s670 < s1;
-  const SBool  s672 = s670 < s665;
-  const SBool  s673 = s671 | s672;
-  const SWord8 s674 = (s670 >> 1) | (s670 << 7);
-  const SWord8 s675 = 128 | s674;
-  const SWord8 s676 = 127 & s674;
-  const SWord8 s677 = s673 ? s675 : s676;
-  const SWord8 s678 = s585 ? s669 : s677;
-  const SWord8 s679 = s566 ? s657 : s678;
-  const SWord8 s680 = s544 ? s632 : s679;
-  const SWord8 s681 = s1 + s570;
-  const SWord8 s682 = 1 & s681;
-  const SBool  s683 = 0 != s682;
-  const SWord8 s684 = s683 ? s574 : s575;
-  const SWord8 s685 = 1 & s684;
-  const SBool  s686 = 0 != s685;
-  const SWord8 s687 = s686 ? s580 : s581;
-  const SWord8 s688 = 1 & s687;
-  const SBool  s689 = 0 != s688;
-  const SBool  s690 = 0 == s689;
-  const SBool  s691 = s681 < s1;
-  const SBool  s692 = s681 < s570;
-  const SBool  s693 = s691 | s692;
-  const SWord8 s694 = (s681 >> 1) | (s681 << 7);
-  const SWord8 s695 = 128 | s694;
-  const SWord8 s696 = 127 & s694;
-  const SWord8 s697 = s693 ? s695 : s696;
-  const SWord8 s698 = (s697 >> 1) | (s697 << 7);
-  const SWord8 s699 = 128 | s698;
-  const SWord8 s700 = 127 & s698;
-  const SWord8 s701 = s543 ? s699 : s700;
-  const SWord8 s702 = (s701 >> 1) | (s701 << 7);
-  const SWord8 s703 = 128 | s702;
-  const SWord8 s704 = 127 & s702;
-  const SWord8 s705 = s565 ? s703 : s704;
-  const SWord8 s706 = (s705 >> 1) | (s705 << 7);
-  const SWord8 s707 = 128 | s706;
-  const SWord8 s708 = 127 & s706;
-  const SWord8 s709 = s689 ? s707 : s708;
-  const SWord8 s710 = s1 + s705;
-  const SBool  s711 = s710 < s1;
-  const SBool  s712 = s710 < s705;
-  const SBool  s713 = s711 | s712;
-  const SWord8 s714 = (s710 >> 1) | (s710 << 7);
-  const SWord8 s715 = 128 | s714;
-  const SWord8 s716 = 127 & s714;
-  const SWord8 s717 = s713 ? s715 : s716;
-  const SWord8 s718 = s690 ? s709 : s717;
-  const SWord8 s719 = s1 + s701;
-  const SBool  s720 = s719 < s1;
-  const SBool  s721 = s719 < s701;
-  const SBool  s722 = s720 | s721;
-  const SWord8 s723 = (s719 >> 1) | (s719 << 7);
-  const SWord8 s724 = 128 | s723;
-  const SWord8 s725 = 127 & s723;
-  const SWord8 s726 = s722 ? s724 : s725;
-  const SWord8 s727 = (s726 >> 1) | (s726 << 7);
-  const SWord8 s728 = 128 | s727;
-  const SWord8 s729 = 127 & s727;
-  const SWord8 s730 = s689 ? s728 : s729;
-  const SWord8 s731 = s1 + s726;
-  const SBool  s732 = s731 < s1;
-  const SBool  s733 = s731 < s726;
-  const SBool  s734 = s732 | s733;
-  const SWord8 s735 = (s731 >> 1) | (s731 << 7);
-  const SWord8 s736 = 128 | s735;
-  const SWord8 s737 = 127 & s735;
-  const SWord8 s738 = s734 ? s736 : s737;
-  const SWord8 s739 = s690 ? s730 : s738;
-  const SWord8 s740 = s566 ? s718 : s739;
-  const SWord8 s741 = s1 + s697;
-  const SBool  s742 = s741 < s1;
-  const SBool  s743 = s741 < s697;
-  const SBool  s744 = s742 | s743;
-  const SWord8 s745 = (s741 >> 1) | (s741 << 7);
-  const SWord8 s746 = 128 | s745;
-  const SWord8 s747 = 127 & s745;
-  const SWord8 s748 = s744 ? s746 : s747;
-  const SWord8 s749 = (s748 >> 1) | (s748 << 7);
-  const SWord8 s750 = 128 | s749;
-  const SWord8 s751 = 127 & s749;
-  const SWord8 s752 = s565 ? s750 : s751;
-  const SWord8 s753 = (s752 >> 1) | (s752 << 7);
-  const SWord8 s754 = 128 | s753;
-  const SWord8 s755 = 127 & s753;
-  const SWord8 s756 = s689 ? s754 : s755;
-  const SWord8 s757 = s1 + s752;
-  const SBool  s758 = s757 < s1;
-  const SBool  s759 = s757 < s752;
-  const SBool  s760 = s758 | s759;
-  const SWord8 s761 = (s757 >> 1) | (s757 << 7);
-  const SWord8 s762 = 128 | s761;
-  const SWord8 s763 = 127 & s761;
-  const SWord8 s764 = s760 ? s762 : s763;
-  const SWord8 s765 = s690 ? s756 : s764;
-  const SWord8 s766 = s1 + s748;
-  const SBool  s767 = s766 < s1;
-  const SBool  s768 = s766 < s748;
-  const SBool  s769 = s767 | s768;
-  const SWord8 s770 = (s766 >> 1) | (s766 << 7);
-  const SWord8 s771 = 128 | s770;
-  const SWord8 s772 = 127 & s770;
-  const SWord8 s773 = s769 ? s771 : s772;
-  const SWord8 s774 = (s773 >> 1) | (s773 << 7);
-  const SWord8 s775 = 128 | s774;
-  const SWord8 s776 = 127 & s774;
-  const SWord8 s777 = s689 ? s775 : s776;
-  const SWord8 s778 = s1 + s773;
-  const SBool  s779 = s778 < s1;
-  const SBool  s780 = s778 < s773;
-  const SBool  s781 = s779 | s780;
-  const SWord8 s782 = (s778 >> 1) | (s778 << 7);
-  const SWord8 s783 = 128 | s782;
-  const SWord8 s784 = 127 & s782;
-  const SWord8 s785 = s781 ? s783 : s784;
-  const SWord8 s786 = s690 ? s777 : s785;
-  const SWord8 s787 = s566 ? s765 : s786;
-  const SWord8 s788 = s544 ? s740 : s787;
-  const SWord8 s789 = s36 ? s680 : s788;
-  const SWord8 s790 = s1 + s551;
-  const SWord8 s791 = 1 & s790;
-  const SBool  s792 = 0 != s791;
-  const SWord8 s793 = s792 ? s555 : s556;
-  const SWord8 s794 = 1 & s793;
-  const SBool  s795 = 0 != s794;
-  const SWord8 s796 = s795 ? s561 : s562;
-  const SWord8 s797 = 1 & s796;
-  const SBool  s798 = 0 != s797;
-  const SBool  s799 = 0 == s798;
-  const SBool  s800 = s790 < s1;
-  const SBool  s801 = s790 < s551;
-  const SBool  s802 = s800 | s801;
-  const SWord8 s803 = (s790 >> 1) | (s790 << 7);
-  const SWord8 s804 = 128 | s803;
-  const SWord8 s805 = 127 & s803;
-  const SWord8 s806 = s802 ? s804 : s805;
-  const SWord8 s807 = 1 & s806;
-  const SBool  s808 = 0 != s807;
-  const SWord8 s809 = (s793 >> 1) | (s793 << 7);
-  const SWord8 s810 = 128 | s809;
-  const SWord8 s811 = 127 & s809;
-  const SWord8 s812 = s808 ? s810 : s811;
-  const SWord8 s813 = 1 & s812;
-  const SBool  s814 = 0 != s813;
-  const SWord8 s815 = (s796 >> 1) | (s796 << 7);
-  const SWord8 s816 = 128 | s815;
-  const SWord8 s817 = 127 & s815;
-  const SWord8 s818 = s814 ? s816 : s817;
-  const SWord8 s819 = 1 & s818;
-  const SBool  s820 = 0 != s819;
-  const SBool  s821 = 0 == s820;
-  const SWord8 s822 = (s806 >> 1) | (s806 << 7);
-  const SWord8 s823 = 128 | s822;
-  const SWord8 s824 = 127 & s822;
-  const SWord8 s825 = s35 ? s823 : s824;
-  const SWord8 s826 = (s825 >> 1) | (s825 << 7);
-  const SWord8 s827 = 128 | s826;
-  const SWord8 s828 = 127 & s826;
-  const SWord8 s829 = s543 ? s827 : s828;
-  const SWord8 s830 = (s829 >> 1) | (s829 << 7);
-  const SWord8 s831 = 128 | s830;
-  const SWord8 s832 = 127 & s830;
-  const SWord8 s833 = s798 ? s831 : s832;
-  const SWord8 s834 = (s833 >> 1) | (s833 << 7);
-  const SWord8 s835 = 128 | s834;
-  const SWord8 s836 = 127 & s834;
-  const SWord8 s837 = s820 ? s835 : s836;
-  const SWord8 s838 = s1 + s833;
-  const SBool  s839 = s838 < s1;
-  const SBool  s840 = s838 < s833;
-  const SBool  s841 = s839 | s840;
-  const SWord8 s842 = (s838 >> 1) | (s838 << 7);
-  const SWord8 s843 = 128 | s842;
-  const SWord8 s844 = 127 & s842;
-  const SWord8 s845 = s841 ? s843 : s844;
-  const SWord8 s846 = s821 ? s837 : s845;
-  const SWord8 s847 = s1 + s829;
-  const SBool  s848 = s847 < s1;
-  const SBool  s849 = s847 < s829;
-  const SBool  s850 = s848 | s849;
-  const SWord8 s851 = (s847 >> 1) | (s847 << 7);
-  const SWord8 s852 = 128 | s851;
-  const SWord8 s853 = 127 & s851;
-  const SWord8 s854 = s850 ? s852 : s853;
-  const SWord8 s855 = (s854 >> 1) | (s854 << 7);
-  const SWord8 s856 = 128 | s855;
-  const SWord8 s857 = 127 & s855;
-  const SWord8 s858 = s820 ? s856 : s857;
-  const SWord8 s859 = s1 + s854;
-  const SBool  s860 = s859 < s1;
-  const SBool  s861 = s859 < s854;
-  const SBool  s862 = s860 | s861;
-  const SWord8 s863 = (s859 >> 1) | (s859 << 7);
-  const SWord8 s864 = 128 | s863;
-  const SWord8 s865 = 127 & s863;
-  const SWord8 s866 = s862 ? s864 : s865;
-  const SWord8 s867 = s821 ? s858 : s866;
-  const SWord8 s868 = s799 ? s846 : s867;
-  const SWord8 s869 = s1 + s825;
-  const SBool  s870 = s869 < s1;
-  const SBool  s871 = s869 < s825;
-  const SBool  s872 = s870 | s871;
-  const SWord8 s873 = (s869 >> 1) | (s869 << 7);
-  const SWord8 s874 = 128 | s873;
-  const SWord8 s875 = 127 & s873;
-  const SWord8 s876 = s872 ? s874 : s875;
-  const SWord8 s877 = (s876 >> 1) | (s876 << 7);
-  const SWord8 s878 = 128 | s877;
-  const SWord8 s879 = 127 & s877;
-  const SWord8 s880 = s798 ? s878 : s879;
-  const SWord8 s881 = (s880 >> 1) | (s880 << 7);
-  const SWord8 s882 = 128 | s881;
-  const SWord8 s883 = 127 & s881;
-  const SWord8 s884 = s820 ? s882 : s883;
-  const SWord8 s885 = s1 + s880;
-  const SBool  s886 = s885 < s1;
-  const SBool  s887 = s885 < s880;
-  const SBool  s888 = s886 | s887;
-  const SWord8 s889 = (s885 >> 1) | (s885 << 7);
-  const SWord8 s890 = 128 | s889;
-  const SWord8 s891 = 127 & s889;
-  const SWord8 s892 = s888 ? s890 : s891;
-  const SWord8 s893 = s821 ? s884 : s892;
-  const SWord8 s894 = s1 + s876;
-  const SBool  s895 = s894 < s1;
-  const SBool  s896 = s894 < s876;
-  const SBool  s897 = s895 | s896;
-  const SWord8 s898 = (s894 >> 1) | (s894 << 7);
-  const SWord8 s899 = 128 | s898;
-  const SWord8 s900 = 127 & s898;
-  const SWord8 s901 = s897 ? s899 : s900;
-  const SWord8 s902 = (s901 >> 1) | (s901 << 7);
-  const SWord8 s903 = 128 | s902;
-  const SWord8 s904 = 127 & s902;
-  const SWord8 s905 = s820 ? s903 : s904;
-  const SWord8 s906 = s1 + s901;
-  const SBool  s907 = s906 < s1;
-  const SBool  s908 = s906 < s901;
-  const SBool  s909 = s907 | s908;
-  const SWord8 s910 = (s906 >> 1) | (s906 << 7);
-  const SWord8 s911 = 128 | s910;
-  const SWord8 s912 = 127 & s910;
-  const SWord8 s913 = s909 ? s911 : s912;
-  const SWord8 s914 = s821 ? s905 : s913;
-  const SWord8 s915 = s799 ? s893 : s914;
-  const SWord8 s916 = s544 ? s868 : s915;
-  const SWord8 s917 = s1 + s806;
-  const SWord8 s918 = 1 & s917;
-  const SBool  s919 = 0 != s918;
-  const SWord8 s920 = s919 ? s810 : s811;
-  const SWord8 s921 = 1 & s920;
-  const SBool  s922 = 0 != s921;
-  const SWord8 s923 = s922 ? s816 : s817;
-  const SWord8 s924 = 1 & s923;
-  const SBool  s925 = 0 != s924;
-  const SBool  s926 = 0 == s925;
-  const SBool  s927 = s917 < s1;
-  const SBool  s928 = s917 < s806;
-  const SBool  s929 = s927 | s928;
-  const SWord8 s930 = (s917 >> 1) | (s917 << 7);
-  const SWord8 s931 = 128 | s930;
-  const SWord8 s932 = 127 & s930;
-  const SWord8 s933 = s929 ? s931 : s932;
-  const SWord8 s934 = (s933 >> 1) | (s933 << 7);
-  const SWord8 s935 = 128 | s934;
-  const SWord8 s936 = 127 & s934;
-  const SWord8 s937 = s543 ? s935 : s936;
-  const SWord8 s938 = (s937 >> 1) | (s937 << 7);
-  const SWord8 s939 = 128 | s938;
-  const SWord8 s940 = 127 & s938;
-  const SWord8 s941 = s798 ? s939 : s940;
-  const SWord8 s942 = (s941 >> 1) | (s941 << 7);
-  const SWord8 s943 = 128 | s942;
-  const SWord8 s944 = 127 & s942;
-  const SWord8 s945 = s925 ? s943 : s944;
-  const SWord8 s946 = s1 + s941;
-  const SBool  s947 = s946 < s1;
-  const SBool  s948 = s946 < s941;
-  const SBool  s949 = s947 | s948;
-  const SWord8 s950 = (s946 >> 1) | (s946 << 7);
-  const SWord8 s951 = 128 | s950;
-  const SWord8 s952 = 127 & s950;
-  const SWord8 s953 = s949 ? s951 : s952;
-  const SWord8 s954 = s926 ? s945 : s953;
-  const SWord8 s955 = s1 + s937;
-  const SBool  s956 = s955 < s1;
-  const SBool  s957 = s955 < s937;
-  const SBool  s958 = s956 | s957;
-  const SWord8 s959 = (s955 >> 1) | (s955 << 7);
-  const SWord8 s960 = 128 | s959;
-  const SWord8 s961 = 127 & s959;
-  const SWord8 s962 = s958 ? s960 : s961;
-  const SWord8 s963 = (s962 >> 1) | (s962 << 7);
-  const SWord8 s964 = 128 | s963;
-  const SWord8 s965 = 127 & s963;
-  const SWord8 s966 = s925 ? s964 : s965;
-  const SWord8 s967 = s1 + s962;
-  const SBool  s968 = s967 < s1;
-  const SBool  s969 = s967 < s962;
-  const SBool  s970 = s968 | s969;
-  const SWord8 s971 = (s967 >> 1) | (s967 << 7);
-  const SWord8 s972 = 128 | s971;
-  const SWord8 s973 = 127 & s971;
-  const SWord8 s974 = s970 ? s972 : s973;
-  const SWord8 s975 = s926 ? s966 : s974;
-  const SWord8 s976 = s799 ? s954 : s975;
-  const SWord8 s977 = s1 + s933;
-  const SBool  s978 = s977 < s1;
-  const SBool  s979 = s977 < s933;
-  const SBool  s980 = s978 | s979;
-  const SWord8 s981 = (s977 >> 1) | (s977 << 7);
-  const SWord8 s982 = 128 | s981;
-  const SWord8 s983 = 127 & s981;
-  const SWord8 s984 = s980 ? s982 : s983;
-  const SWord8 s985 = (s984 >> 1) | (s984 << 7);
-  const SWord8 s986 = 128 | s985;
-  const SWord8 s987 = 127 & s985;
-  const SWord8 s988 = s798 ? s986 : s987;
-  const SWord8 s989 = (s988 >> 1) | (s988 << 7);
-  const SWord8 s990 = 128 | s989;
-  const SWord8 s991 = 127 & s989;
-  const SWord8 s992 = s925 ? s990 : s991;
-  const SWord8 s993 = s1 + s988;
-  const SBool  s994 = s993 < s1;
-  const SBool  s995 = s993 < s988;
-  const SBool  s996 = s994 | s995;
-  const SWord8 s997 = (s993 >> 1) | (s993 << 7);
-  const SWord8 s998 = 128 | s997;
-  const SWord8 s999 = 127 & s997;
-  const SWord8 s1000 = s996 ? s998 : s999;
-  const SWord8 s1001 = s926 ? s992 : s1000;
-  const SWord8 s1002 = s1 + s984;
-  const SBool  s1003 = s1002 < s1;
-  const SBool  s1004 = s1002 < s984;
-  const SBool  s1005 = s1003 | s1004;
-  const SWord8 s1006 = (s1002 >> 1) | (s1002 << 7);
-  const SWord8 s1007 = 128 | s1006;
-  const SWord8 s1008 = 127 & s1006;
-  const SWord8 s1009 = s1005 ? s1007 : s1008;
-  const SWord8 s1010 = (s1009 >> 1) | (s1009 << 7);
-  const SWord8 s1011 = 128 | s1010;
-  const SWord8 s1012 = 127 & s1010;
-  const SWord8 s1013 = s925 ? s1011 : s1012;
-  const SWord8 s1014 = s1 + s1009;
-  const SBool  s1015 = s1014 < s1;
-  const SBool  s1016 = s1014 < s1009;
-  const SBool  s1017 = s1015 | s1016;
-  const SWord8 s1018 = (s1014 >> 1) | (s1014 << 7);
-  const SWord8 s1019 = 128 | s1018;
-  const SWord8 s1020 = 127 & s1018;
-  const SWord8 s1021 = s1017 ? s1019 : s1020;
-  const SWord8 s1022 = s926 ? s1013 : s1021;
-  const SWord8 s1023 = s799 ? s1001 : s1022;
-  const SWord8 s1024 = s544 ? s976 : s1023;
-  const SWord8 s1025 = s36 ? s916 : s1024;
-  const SWord8 s1026 = s22 ? s789 : s1025;
-  const SWord8 s1027 = s17 ? s534 : s1026;
-  const SWord8 s1028 = s1 + s24;
-  const SWord8 s1029 = 1 & s1028;
-  const SBool  s1030 = 0 != s1029;
-  const SWord8 s1031 = s1030 ? 128 : 0;
-  const SWord8 s1032 = 1 & s1031;
-  const SBool  s1033 = 0 != s1032;
-  const SWord8 s1034 = s1033 ? s31 : s32;
-  const SWord8 s1035 = 1 & s1034;
-  const SBool  s1036 = 0 != s1035;
-  const SBool  s1037 = 0 == s1036;
-  const SBool  s1038 = s1028 < s1;
-  const SBool  s1039 = s1028 < s24;
-  const SBool  s1040 = s1038 | s1039;
-  const SWord8 s1041 = (s1028 >> 1) | (s1028 << 7);
-  const SWord8 s1042 = 128 | s1041;
-  const SWord8 s1043 = 127 & s1041;
-  const SWord8 s1044 = s1040 ? s1042 : s1043;
-  const SWord8 s1045 = 1 & s1044;
-  const SBool  s1046 = 0 != s1045;
-  const SWord8 s1047 = (s1031 >> 1) | (s1031 << 7);
-  const SWord8 s1048 = 128 | s1047;
-  const SWord8 s1049 = 127 & s1047;
-  const SWord8 s1050 = s1046 ? s1048 : s1049;
-  const SWord8 s1051 = 1 & s1050;
-  const SBool  s1052 = 0 != s1051;
-  const SWord8 s1053 = (s1034 >> 1) | (s1034 << 7);
-  const SWord8 s1054 = 128 | s1053;
-  const SWord8 s1055 = 127 & s1053;
-  const SWord8 s1056 = s1052 ? s1054 : s1055;
-  const SWord8 s1057 = 1 & s1056;
-  const SBool  s1058 = 0 != s1057;
-  const SBool  s1059 = 0 == s1058;
-  const SWord8 s1060 = (s1044 >> 1) | (s1044 << 7);
-  const SWord8 s1061 = 128 | s1060;
-  const SWord8 s1062 = 127 & s1060;
-  const SWord8 s1063 = s16 ? s1061 : s1062;
-  const SWord8 s1064 = 1 & s1063;
-  const SBool  s1065 = 0 != s1064;
-  const SWord8 s1066 = (s1050 >> 1) | (s1050 << 7);
-  const SWord8 s1067 = 128 | s1066;
-  const SWord8 s1068 = 127 & s1066;
-  const SWord8 s1069 = s1065 ? s1067 : s1068;
-  const SWord8 s1070 = 1 & s1069;
-  const SBool  s1071 = 0 != s1070;
-  const SWord8 s1072 = (s1056 >> 1) | (s1056 << 7);
-  const SWord8 s1073 = 128 | s1072;
-  const SWord8 s1074 = 127 & s1072;
-  const SWord8 s1075 = s1071 ? s1073 : s1074;
-  const SWord8 s1076 = 1 & s1075;
-  const SBool  s1077 = 0 != s1076;
-  const SBool  s1078 = 0 == s1077;
-  const SWord8 s1079 = (s1063 >> 1) | (s1063 << 7);
-  const SWord8 s1080 = 128 | s1079;
-  const SWord8 s1081 = 127 & s1079;
-  const SWord8 s1082 = s21 ? s1080 : s1081;
-  const SWord8 s1083 = 1 & s1082;
-  const SBool  s1084 = 0 != s1083;
-  const SWord8 s1085 = (s1069 >> 1) | (s1069 << 7);
-  const SWord8 s1086 = 128 | s1085;
-  const SWord8 s1087 = 127 & s1085;
-  const SWord8 s1088 = s1084 ? s1086 : s1087;
-  const SWord8 s1089 = 1 & s1088;
-  const SBool  s1090 = 0 != s1089;
-  const SWord8 s1091 = (s1075 >> 1) | (s1075 << 7);
-  const SWord8 s1092 = 128 | s1091;
-  const SWord8 s1093 = 127 & s1091;
-  const SWord8 s1094 = s1090 ? s1092 : s1093;
-  const SWord8 s1095 = 1 & s1094;
-  const SBool  s1096 = 0 != s1095;
-  const SBool  s1097 = 0 == s1096;
-  const SWord8 s1098 = (s1082 >> 1) | (s1082 << 7);
-  const SWord8 s1099 = 128 | s1098;
-  const SWord8 s1100 = 127 & s1098;
-  const SWord8 s1101 = s1036 ? s1099 : s1100;
-  const SWord8 s1102 = (s1101 >> 1) | (s1101 << 7);
-  const SWord8 s1103 = 128 | s1102;
-  const SWord8 s1104 = 127 & s1102;
-  const SWord8 s1105 = s1058 ? s1103 : s1104;
-  const SWord8 s1106 = (s1105 >> 1) | (s1105 << 7);
-  const SWord8 s1107 = 128 | s1106;
-  const SWord8 s1108 = 127 & s1106;
-  const SWord8 s1109 = s1077 ? s1107 : s1108;
-  const SWord8 s1110 = (s1109 >> 1) | (s1109 << 7);
-  const SWord8 s1111 = 128 | s1110;
-  const SWord8 s1112 = 127 & s1110;
-  const SWord8 s1113 = s1096 ? s1111 : s1112;
-  const SWord8 s1114 = s1 + s1109;
-  const SBool  s1115 = s1114 < s1;
-  const SBool  s1116 = s1114 < s1109;
-  const SBool  s1117 = s1115 | s1116;
-  const SWord8 s1118 = (s1114 >> 1) | (s1114 << 7);
-  const SWord8 s1119 = 128 | s1118;
-  const SWord8 s1120 = 127 & s1118;
-  const SWord8 s1121 = s1117 ? s1119 : s1120;
-  const SWord8 s1122 = s1097 ? s1113 : s1121;
-  const SWord8 s1123 = s1 + s1105;
-  const SBool  s1124 = s1123 < s1;
-  const SBool  s1125 = s1123 < s1105;
-  const SBool  s1126 = s1124 | s1125;
-  const SWord8 s1127 = (s1123 >> 1) | (s1123 << 7);
-  const SWord8 s1128 = 128 | s1127;
-  const SWord8 s1129 = 127 & s1127;
-  const SWord8 s1130 = s1126 ? s1128 : s1129;
-  const SWord8 s1131 = (s1130 >> 1) | (s1130 << 7);
-  const SWord8 s1132 = 128 | s1131;
-  const SWord8 s1133 = 127 & s1131;
-  const SWord8 s1134 = s1096 ? s1132 : s1133;
-  const SWord8 s1135 = s1 + s1130;
-  const SBool  s1136 = s1135 < s1;
-  const SBool  s1137 = s1135 < s1130;
-  const SBool  s1138 = s1136 | s1137;
-  const SWord8 s1139 = (s1135 >> 1) | (s1135 << 7);
-  const SWord8 s1140 = 128 | s1139;
-  const SWord8 s1141 = 127 & s1139;
-  const SWord8 s1142 = s1138 ? s1140 : s1141;
-  const SWord8 s1143 = s1097 ? s1134 : s1142;
-  const SWord8 s1144 = s1078 ? s1122 : s1143;
-  const SWord8 s1145 = s1 + s1101;
-  const SBool  s1146 = s1145 < s1;
-  const SBool  s1147 = s1145 < s1101;
-  const SBool  s1148 = s1146 | s1147;
-  const SWord8 s1149 = (s1145 >> 1) | (s1145 << 7);
-  const SWord8 s1150 = 128 | s1149;
-  const SWord8 s1151 = 127 & s1149;
-  const SWord8 s1152 = s1148 ? s1150 : s1151;
-  const SWord8 s1153 = (s1152 >> 1) | (s1152 << 7);
-  const SWord8 s1154 = 128 | s1153;
-  const SWord8 s1155 = 127 & s1153;
-  const SWord8 s1156 = s1077 ? s1154 : s1155;
-  const SWord8 s1157 = (s1156 >> 1) | (s1156 << 7);
-  const SWord8 s1158 = 128 | s1157;
-  const SWord8 s1159 = 127 & s1157;
-  const SWord8 s1160 = s1096 ? s1158 : s1159;
-  const SWord8 s1161 = s1 + s1156;
-  const SBool  s1162 = s1161 < s1;
-  const SBool  s1163 = s1161 < s1156;
-  const SBool  s1164 = s1162 | s1163;
-  const SWord8 s1165 = (s1161 >> 1) | (s1161 << 7);
-  const SWord8 s1166 = 128 | s1165;
-  const SWord8 s1167 = 127 & s1165;
-  const SWord8 s1168 = s1164 ? s1166 : s1167;
-  const SWord8 s1169 = s1097 ? s1160 : s1168;
-  const SWord8 s1170 = s1 + s1152;
-  const SBool  s1171 = s1170 < s1;
-  const SBool  s1172 = s1170 < s1152;
-  const SBool  s1173 = s1171 | s1172;
-  const SWord8 s1174 = (s1170 >> 1) | (s1170 << 7);
-  const SWord8 s1175 = 128 | s1174;
-  const SWord8 s1176 = 127 & s1174;
-  const SWord8 s1177 = s1173 ? s1175 : s1176;
-  const SWord8 s1178 = (s1177 >> 1) | (s1177 << 7);
-  const SWord8 s1179 = 128 | s1178;
-  const SWord8 s1180 = 127 & s1178;
-  const SWord8 s1181 = s1096 ? s1179 : s1180;
-  const SWord8 s1182 = s1 + s1177;
-  const SBool  s1183 = s1182 < s1;
-  const SBool  s1184 = s1182 < s1177;
-  const SBool  s1185 = s1183 | s1184;
-  const SWord8 s1186 = (s1182 >> 1) | (s1182 << 7);
-  const SWord8 s1187 = 128 | s1186;
-  const SWord8 s1188 = 127 & s1186;
-  const SWord8 s1189 = s1185 ? s1187 : s1188;
-  const SWord8 s1190 = s1097 ? s1181 : s1189;
-  const SWord8 s1191 = s1078 ? s1169 : s1190;
-  const SWord8 s1192 = s1059 ? s1144 : s1191;
-  const SWord8 s1193 = s1 + s1082;
-  const SWord8 s1194 = 1 & s1193;
-  const SBool  s1195 = 0 != s1194;
-  const SWord8 s1196 = s1195 ? s1086 : s1087;
-  const SWord8 s1197 = 1 & s1196;
-  const SBool  s1198 = 0 != s1197;
-  const SWord8 s1199 = s1198 ? s1092 : s1093;
-  const SWord8 s1200 = 1 & s1199;
-  const SBool  s1201 = 0 != s1200;
-  const SBool  s1202 = 0 == s1201;
-  const SBool  s1203 = s1193 < s1;
-  const SBool  s1204 = s1193 < s1082;
-  const SBool  s1205 = s1203 | s1204;
-  const SWord8 s1206 = (s1193 >> 1) | (s1193 << 7);
-  const SWord8 s1207 = 128 | s1206;
-  const SWord8 s1208 = 127 & s1206;
-  const SWord8 s1209 = s1205 ? s1207 : s1208;
-  const SWord8 s1210 = (s1209 >> 1) | (s1209 << 7);
-  const SWord8 s1211 = 128 | s1210;
-  const SWord8 s1212 = 127 & s1210;
-  const SWord8 s1213 = s1058 ? s1211 : s1212;
-  const SWord8 s1214 = (s1213 >> 1) | (s1213 << 7);
-  const SWord8 s1215 = 128 | s1214;
-  const SWord8 s1216 = 127 & s1214;
-  const SWord8 s1217 = s1077 ? s1215 : s1216;
-  const SWord8 s1218 = (s1217 >> 1) | (s1217 << 7);
-  const SWord8 s1219 = 128 | s1218;
-  const SWord8 s1220 = 127 & s1218;
-  const SWord8 s1221 = s1201 ? s1219 : s1220;
-  const SWord8 s1222 = s1 + s1217;
-  const SBool  s1223 = s1222 < s1;
-  const SBool  s1224 = s1222 < s1217;
-  const SBool  s1225 = s1223 | s1224;
-  const SWord8 s1226 = (s1222 >> 1) | (s1222 << 7);
-  const SWord8 s1227 = 128 | s1226;
-  const SWord8 s1228 = 127 & s1226;
-  const SWord8 s1229 = s1225 ? s1227 : s1228;
-  const SWord8 s1230 = s1202 ? s1221 : s1229;
-  const SWord8 s1231 = s1 + s1213;
-  const SBool  s1232 = s1231 < s1;
-  const SBool  s1233 = s1231 < s1213;
-  const SBool  s1234 = s1232 | s1233;
-  const SWord8 s1235 = (s1231 >> 1) | (s1231 << 7);
-  const SWord8 s1236 = 128 | s1235;
-  const SWord8 s1237 = 127 & s1235;
-  const SWord8 s1238 = s1234 ? s1236 : s1237;
-  const SWord8 s1239 = (s1238 >> 1) | (s1238 << 7);
-  const SWord8 s1240 = 128 | s1239;
-  const SWord8 s1241 = 127 & s1239;
-  const SWord8 s1242 = s1201 ? s1240 : s1241;
-  const SWord8 s1243 = s1 + s1238;
-  const SBool  s1244 = s1243 < s1;
-  const SBool  s1245 = s1243 < s1238;
-  const SBool  s1246 = s1244 | s1245;
-  const SWord8 s1247 = (s1243 >> 1) | (s1243 << 7);
-  const SWord8 s1248 = 128 | s1247;
-  const SWord8 s1249 = 127 & s1247;
-  const SWord8 s1250 = s1246 ? s1248 : s1249;
-  const SWord8 s1251 = s1202 ? s1242 : s1250;
-  const SWord8 s1252 = s1078 ? s1230 : s1251;
-  const SWord8 s1253 = s1 + s1209;
-  const SBool  s1254 = s1253 < s1;
-  const SBool  s1255 = s1253 < s1209;
-  const SBool  s1256 = s1254 | s1255;
-  const SWord8 s1257 = (s1253 >> 1) | (s1253 << 7);
-  const SWord8 s1258 = 128 | s1257;
-  const SWord8 s1259 = 127 & s1257;
-  const SWord8 s1260 = s1256 ? s1258 : s1259;
-  const SWord8 s1261 = (s1260 >> 1) | (s1260 << 7);
-  const SWord8 s1262 = 128 | s1261;
-  const SWord8 s1263 = 127 & s1261;
-  const SWord8 s1264 = s1077 ? s1262 : s1263;
-  const SWord8 s1265 = (s1264 >> 1) | (s1264 << 7);
-  const SWord8 s1266 = 128 | s1265;
-  const SWord8 s1267 = 127 & s1265;
-  const SWord8 s1268 = s1201 ? s1266 : s1267;
-  const SWord8 s1269 = s1 + s1264;
-  const SBool  s1270 = s1269 < s1;
-  const SBool  s1271 = s1269 < s1264;
-  const SBool  s1272 = s1270 | s1271;
-  const SWord8 s1273 = (s1269 >> 1) | (s1269 << 7);
-  const SWord8 s1274 = 128 | s1273;
-  const SWord8 s1275 = 127 & s1273;
-  const SWord8 s1276 = s1272 ? s1274 : s1275;
-  const SWord8 s1277 = s1202 ? s1268 : s1276;
-  const SWord8 s1278 = s1 + s1260;
-  const SBool  s1279 = s1278 < s1;
-  const SBool  s1280 = s1278 < s1260;
-  const SBool  s1281 = s1279 | s1280;
-  const SWord8 s1282 = (s1278 >> 1) | (s1278 << 7);
-  const SWord8 s1283 = 128 | s1282;
-  const SWord8 s1284 = 127 & s1282;
-  const SWord8 s1285 = s1281 ? s1283 : s1284;
-  const SWord8 s1286 = (s1285 >> 1) | (s1285 << 7);
-  const SWord8 s1287 = 128 | s1286;
-  const SWord8 s1288 = 127 & s1286;
-  const SWord8 s1289 = s1201 ? s1287 : s1288;
-  const SWord8 s1290 = s1 + s1285;
-  const SBool  s1291 = s1290 < s1;
-  const SBool  s1292 = s1290 < s1285;
-  const SBool  s1293 = s1291 | s1292;
-  const SWord8 s1294 = (s1290 >> 1) | (s1290 << 7);
-  const SWord8 s1295 = 128 | s1294;
-  const SWord8 s1296 = 127 & s1294;
-  const SWord8 s1297 = s1293 ? s1295 : s1296;
-  const SWord8 s1298 = s1202 ? s1289 : s1297;
-  const SWord8 s1299 = s1078 ? s1277 : s1298;
-  const SWord8 s1300 = s1059 ? s1252 : s1299;
-  const SWord8 s1301 = s1037 ? s1192 : s1300;
-  const SWord8 s1302 = s1 + s1063;
-  const SWord8 s1303 = 1 & s1302;
-  const SBool  s1304 = 0 != s1303;
-  const SWord8 s1305 = s1304 ? s1067 : s1068;
-  const SWord8 s1306 = 1 & s1305;
-  const SBool  s1307 = 0 != s1306;
-  const SWord8 s1308 = s1307 ? s1073 : s1074;
-  const SWord8 s1309 = 1 & s1308;
-  const SBool  s1310 = 0 != s1309;
-  const SBool  s1311 = 0 == s1310;
-  const SBool  s1312 = s1302 < s1;
-  const SBool  s1313 = s1302 < s1063;
-  const SBool  s1314 = s1312 | s1313;
-  const SWord8 s1315 = (s1302 >> 1) | (s1302 << 7);
-  const SWord8 s1316 = 128 | s1315;
-  const SWord8 s1317 = 127 & s1315;
-  const SWord8 s1318 = s1314 ? s1316 : s1317;
-  const SWord8 s1319 = 1 & s1318;
-  const SBool  s1320 = 0 != s1319;
-  const SWord8 s1321 = (s1305 >> 1) | (s1305 << 7);
-  const SWord8 s1322 = 128 | s1321;
-  const SWord8 s1323 = 127 & s1321;
-  const SWord8 s1324 = s1320 ? s1322 : s1323;
-  const SWord8 s1325 = 1 & s1324;
-  const SBool  s1326 = 0 != s1325;
-  const SWord8 s1327 = (s1308 >> 1) | (s1308 << 7);
-  const SWord8 s1328 = 128 | s1327;
-  const SWord8 s1329 = 127 & s1327;
-  const SWord8 s1330 = s1326 ? s1328 : s1329;
-  const SWord8 s1331 = 1 & s1330;
-  const SBool  s1332 = 0 != s1331;
-  const SBool  s1333 = 0 == s1332;
-  const SWord8 s1334 = (s1318 >> 1) | (s1318 << 7);
-  const SWord8 s1335 = 128 | s1334;
-  const SWord8 s1336 = 127 & s1334;
-  const SWord8 s1337 = s1036 ? s1335 : s1336;
-  const SWord8 s1338 = (s1337 >> 1) | (s1337 << 7);
-  const SWord8 s1339 = 128 | s1338;
-  const SWord8 s1340 = 127 & s1338;
-  const SWord8 s1341 = s1058 ? s1339 : s1340;
-  const SWord8 s1342 = (s1341 >> 1) | (s1341 << 7);
-  const SWord8 s1343 = 128 | s1342;
-  const SWord8 s1344 = 127 & s1342;
-  const SWord8 s1345 = s1310 ? s1343 : s1344;
-  const SWord8 s1346 = (s1345 >> 1) | (s1345 << 7);
-  const SWord8 s1347 = 128 | s1346;
-  const SWord8 s1348 = 127 & s1346;
-  const SWord8 s1349 = s1332 ? s1347 : s1348;
-  const SWord8 s1350 = s1 + s1345;
-  const SBool  s1351 = s1350 < s1;
-  const SBool  s1352 = s1350 < s1345;
-  const SBool  s1353 = s1351 | s1352;
-  const SWord8 s1354 = (s1350 >> 1) | (s1350 << 7);
-  const SWord8 s1355 = 128 | s1354;
-  const SWord8 s1356 = 127 & s1354;
-  const SWord8 s1357 = s1353 ? s1355 : s1356;
-  const SWord8 s1358 = s1333 ? s1349 : s1357;
-  const SWord8 s1359 = s1 + s1341;
-  const SBool  s1360 = s1359 < s1;
-  const SBool  s1361 = s1359 < s1341;
-  const SBool  s1362 = s1360 | s1361;
-  const SWord8 s1363 = (s1359 >> 1) | (s1359 << 7);
-  const SWord8 s1364 = 128 | s1363;
-  const SWord8 s1365 = 127 & s1363;
-  const SWord8 s1366 = s1362 ? s1364 : s1365;
-  const SWord8 s1367 = (s1366 >> 1) | (s1366 << 7);
-  const SWord8 s1368 = 128 | s1367;
-  const SWord8 s1369 = 127 & s1367;
-  const SWord8 s1370 = s1332 ? s1368 : s1369;
-  const SWord8 s1371 = s1 + s1366;
-  const SBool  s1372 = s1371 < s1;
-  const SBool  s1373 = s1371 < s1366;
-  const SBool  s1374 = s1372 | s1373;
-  const SWord8 s1375 = (s1371 >> 1) | (s1371 << 7);
-  const SWord8 s1376 = 128 | s1375;
-  const SWord8 s1377 = 127 & s1375;
-  const SWord8 s1378 = s1374 ? s1376 : s1377;
-  const SWord8 s1379 = s1333 ? s1370 : s1378;
-  const SWord8 s1380 = s1311 ? s1358 : s1379;
-  const SWord8 s1381 = s1 + s1337;
-  const SBool  s1382 = s1381 < s1;
-  const SBool  s1383 = s1381 < s1337;
-  const SBool  s1384 = s1382 | s1383;
-  const SWord8 s1385 = (s1381 >> 1) | (s1381 << 7);
-  const SWord8 s1386 = 128 | s1385;
-  const SWord8 s1387 = 127 & s1385;
-  const SWord8 s1388 = s1384 ? s1386 : s1387;
-  const SWord8 s1389 = (s1388 >> 1) | (s1388 << 7);
-  const SWord8 s1390 = 128 | s1389;
-  const SWord8 s1391 = 127 & s1389;
-  const SWord8 s1392 = s1310 ? s1390 : s1391;
-  const SWord8 s1393 = (s1392 >> 1) | (s1392 << 7);
-  const SWord8 s1394 = 128 | s1393;
-  const SWord8 s1395 = 127 & s1393;
-  const SWord8 s1396 = s1332 ? s1394 : s1395;
-  const SWord8 s1397 = s1 + s1392;
-  const SBool  s1398 = s1397 < s1;
-  const SBool  s1399 = s1397 < s1392;
-  const SBool  s1400 = s1398 | s1399;
-  const SWord8 s1401 = (s1397 >> 1) | (s1397 << 7);
-  const SWord8 s1402 = 128 | s1401;
-  const SWord8 s1403 = 127 & s1401;
-  const SWord8 s1404 = s1400 ? s1402 : s1403;
-  const SWord8 s1405 = s1333 ? s1396 : s1404;
-  const SWord8 s1406 = s1 + s1388;
-  const SBool  s1407 = s1406 < s1;
-  const SBool  s1408 = s1406 < s1388;
-  const SBool  s1409 = s1407 | s1408;
-  const SWord8 s1410 = (s1406 >> 1) | (s1406 << 7);
-  const SWord8 s1411 = 128 | s1410;
-  const SWord8 s1412 = 127 & s1410;
-  const SWord8 s1413 = s1409 ? s1411 : s1412;
-  const SWord8 s1414 = (s1413 >> 1) | (s1413 << 7);
-  const SWord8 s1415 = 128 | s1414;
-  const SWord8 s1416 = 127 & s1414;
-  const SWord8 s1417 = s1332 ? s1415 : s1416;
-  const SWord8 s1418 = s1 + s1413;
-  const SBool  s1419 = s1418 < s1;
-  const SBool  s1420 = s1418 < s1413;
-  const SBool  s1421 = s1419 | s1420;
-  const SWord8 s1422 = (s1418 >> 1) | (s1418 << 7);
-  const SWord8 s1423 = 128 | s1422;
-  const SWord8 s1424 = 127 & s1422;
-  const SWord8 s1425 = s1421 ? s1423 : s1424;
-  const SWord8 s1426 = s1333 ? s1417 : s1425;
-  const SWord8 s1427 = s1311 ? s1405 : s1426;
-  const SWord8 s1428 = s1059 ? s1380 : s1427;
-  const SWord8 s1429 = s1 + s1318;
-  const SWord8 s1430 = 1 & s1429;
-  const SBool  s1431 = 0 != s1430;
-  const SWord8 s1432 = s1431 ? s1322 : s1323;
-  const SWord8 s1433 = 1 & s1432;
-  const SBool  s1434 = 0 != s1433;
-  const SWord8 s1435 = s1434 ? s1328 : s1329;
-  const SWord8 s1436 = 1 & s1435;
-  const SBool  s1437 = 0 != s1436;
-  const SBool  s1438 = 0 == s1437;
-  const SBool  s1439 = s1429 < s1;
-  const SBool  s1440 = s1429 < s1318;
-  const SBool  s1441 = s1439 | s1440;
-  const SWord8 s1442 = (s1429 >> 1) | (s1429 << 7);
-  const SWord8 s1443 = 128 | s1442;
-  const SWord8 s1444 = 127 & s1442;
-  const SWord8 s1445 = s1441 ? s1443 : s1444;
-  const SWord8 s1446 = (s1445 >> 1) | (s1445 << 7);
-  const SWord8 s1447 = 128 | s1446;
-  const SWord8 s1448 = 127 & s1446;
-  const SWord8 s1449 = s1058 ? s1447 : s1448;
-  const SWord8 s1450 = (s1449 >> 1) | (s1449 << 7);
-  const SWord8 s1451 = 128 | s1450;
-  const SWord8 s1452 = 127 & s1450;
-  const SWord8 s1453 = s1310 ? s1451 : s1452;
-  const SWord8 s1454 = (s1453 >> 1) | (s1453 << 7);
-  const SWord8 s1455 = 128 | s1454;
-  const SWord8 s1456 = 127 & s1454;
-  const SWord8 s1457 = s1437 ? s1455 : s1456;
-  const SWord8 s1458 = s1 + s1453;
-  const SBool  s1459 = s1458 < s1;
-  const SBool  s1460 = s1458 < s1453;
-  const SBool  s1461 = s1459 | s1460;
-  const SWord8 s1462 = (s1458 >> 1) | (s1458 << 7);
-  const SWord8 s1463 = 128 | s1462;
-  const SWord8 s1464 = 127 & s1462;
-  const SWord8 s1465 = s1461 ? s1463 : s1464;
-  const SWord8 s1466 = s1438 ? s1457 : s1465;
-  const SWord8 s1467 = s1 + s1449;
-  const SBool  s1468 = s1467 < s1;
-  const SBool  s1469 = s1467 < s1449;
-  const SBool  s1470 = s1468 | s1469;
-  const SWord8 s1471 = (s1467 >> 1) | (s1467 << 7);
-  const SWord8 s1472 = 128 | s1471;
-  const SWord8 s1473 = 127 & s1471;
-  const SWord8 s1474 = s1470 ? s1472 : s1473;
-  const SWord8 s1475 = (s1474 >> 1) | (s1474 << 7);
-  const SWord8 s1476 = 128 | s1475;
-  const SWord8 s1477 = 127 & s1475;
-  const SWord8 s1478 = s1437 ? s1476 : s1477;
-  const SWord8 s1479 = s1 + s1474;
-  const SBool  s1480 = s1479 < s1;
-  const SBool  s1481 = s1479 < s1474;
-  const SBool  s1482 = s1480 | s1481;
-  const SWord8 s1483 = (s1479 >> 1) | (s1479 << 7);
-  const SWord8 s1484 = 128 | s1483;
-  const SWord8 s1485 = 127 & s1483;
-  const SWord8 s1486 = s1482 ? s1484 : s1485;
-  const SWord8 s1487 = s1438 ? s1478 : s1486;
-  const SWord8 s1488 = s1311 ? s1466 : s1487;
-  const SWord8 s1489 = s1 + s1445;
-  const SBool  s1490 = s1489 < s1;
-  const SBool  s1491 = s1489 < s1445;
-  const SBool  s1492 = s1490 | s1491;
-  const SWord8 s1493 = (s1489 >> 1) | (s1489 << 7);
-  const SWord8 s1494 = 128 | s1493;
-  const SWord8 s1495 = 127 & s1493;
-  const SWord8 s1496 = s1492 ? s1494 : s1495;
-  const SWord8 s1497 = (s1496 >> 1) | (s1496 << 7);
-  const SWord8 s1498 = 128 | s1497;
-  const SWord8 s1499 = 127 & s1497;
-  const SWord8 s1500 = s1310 ? s1498 : s1499;
-  const SWord8 s1501 = (s1500 >> 1) | (s1500 << 7);
-  const SWord8 s1502 = 128 | s1501;
-  const SWord8 s1503 = 127 & s1501;
-  const SWord8 s1504 = s1437 ? s1502 : s1503;
-  const SWord8 s1505 = s1 + s1500;
-  const SBool  s1506 = s1505 < s1;
-  const SBool  s1507 = s1505 < s1500;
-  const SBool  s1508 = s1506 | s1507;
-  const SWord8 s1509 = (s1505 >> 1) | (s1505 << 7);
-  const SWord8 s1510 = 128 | s1509;
-  const SWord8 s1511 = 127 & s1509;
-  const SWord8 s1512 = s1508 ? s1510 : s1511;
-  const SWord8 s1513 = s1438 ? s1504 : s1512;
-  const SWord8 s1514 = s1 + s1496;
-  const SBool  s1515 = s1514 < s1;
-  const SBool  s1516 = s1514 < s1496;
-  const SBool  s1517 = s1515 | s1516;
-  const SWord8 s1518 = (s1514 >> 1) | (s1514 << 7);
-  const SWord8 s1519 = 128 | s1518;
-  const SWord8 s1520 = 127 & s1518;
-  const SWord8 s1521 = s1517 ? s1519 : s1520;
-  const SWord8 s1522 = (s1521 >> 1) | (s1521 << 7);
-  const SWord8 s1523 = 128 | s1522;
-  const SWord8 s1524 = 127 & s1522;
-  const SWord8 s1525 = s1437 ? s1523 : s1524;
-  const SWord8 s1526 = s1 + s1521;
-  const SBool  s1527 = s1526 < s1;
-  const SBool  s1528 = s1526 < s1521;
-  const SBool  s1529 = s1527 | s1528;
-  const SWord8 s1530 = (s1526 >> 1) | (s1526 << 7);
-  const SWord8 s1531 = 128 | s1530;
-  const SWord8 s1532 = 127 & s1530;
-  const SWord8 s1533 = s1529 ? s1531 : s1532;
-  const SWord8 s1534 = s1438 ? s1525 : s1533;
-  const SWord8 s1535 = s1311 ? s1513 : s1534;
-  const SWord8 s1536 = s1059 ? s1488 : s1535;
-  const SWord8 s1537 = s1037 ? s1428 : s1536;
-  const SWord8 s1538 = s22 ? s1301 : s1537;
-  const SWord8 s1539 = s1 + s1044;
-  const SWord8 s1540 = 1 & s1539;
-  const SBool  s1541 = 0 != s1540;
-  const SWord8 s1542 = s1541 ? s1048 : s1049;
-  const SWord8 s1543 = 1 & s1542;
-  const SBool  s1544 = 0 != s1543;
-  const SWord8 s1545 = s1544 ? s1054 : s1055;
-  const SWord8 s1546 = 1 & s1545;
-  const SBool  s1547 = 0 != s1546;
-  const SBool  s1548 = 0 == s1547;
-  const SBool  s1549 = s1539 < s1;
-  const SBool  s1550 = s1539 < s1044;
-  const SBool  s1551 = s1549 | s1550;
-  const SWord8 s1552 = (s1539 >> 1) | (s1539 << 7);
-  const SWord8 s1553 = 128 | s1552;
-  const SWord8 s1554 = 127 & s1552;
-  const SWord8 s1555 = s1551 ? s1553 : s1554;
-  const SWord8 s1556 = 1 & s1555;
-  const SBool  s1557 = 0 != s1556;
-  const SWord8 s1558 = (s1542 >> 1) | (s1542 << 7);
-  const SWord8 s1559 = 128 | s1558;
-  const SWord8 s1560 = 127 & s1558;
-  const SWord8 s1561 = s1557 ? s1559 : s1560;
-  const SWord8 s1562 = 1 & s1561;
-  const SBool  s1563 = 0 != s1562;
-  const SWord8 s1564 = (s1545 >> 1) | (s1545 << 7);
-  const SWord8 s1565 = 128 | s1564;
-  const SWord8 s1566 = 127 & s1564;
-  const SWord8 s1567 = s1563 ? s1565 : s1566;
-  const SWord8 s1568 = 1 & s1567;
-  const SBool  s1569 = 0 != s1568;
-  const SBool  s1570 = 0 == s1569;
-  const SWord8 s1571 = (s1555 >> 1) | (s1555 << 7);
-  const SWord8 s1572 = 128 | s1571;
-  const SWord8 s1573 = 127 & s1571;
-  const SWord8 s1574 = s21 ? s1572 : s1573;
-  const SWord8 s1575 = 1 & s1574;
-  const SBool  s1576 = 0 != s1575;
-  const SWord8 s1577 = (s1561 >> 1) | (s1561 << 7);
-  const SWord8 s1578 = 128 | s1577;
-  const SWord8 s1579 = 127 & s1577;
-  const SWord8 s1580 = s1576 ? s1578 : s1579;
-  const SWord8 s1581 = 1 & s1580;
-  const SBool  s1582 = 0 != s1581;
-  const SWord8 s1583 = (s1567 >> 1) | (s1567 << 7);
-  const SWord8 s1584 = 128 | s1583;
-  const SWord8 s1585 = 127 & s1583;
-  const SWord8 s1586 = s1582 ? s1584 : s1585;
-  const SWord8 s1587 = 1 & s1586;
-  const SBool  s1588 = 0 != s1587;
-  const SBool  s1589 = 0 == s1588;
-  const SWord8 s1590 = (s1574 >> 1) | (s1574 << 7);
-  const SWord8 s1591 = 128 | s1590;
-  const SWord8 s1592 = 127 & s1590;
-  const SWord8 s1593 = s1036 ? s1591 : s1592;
-  const SWord8 s1594 = (s1593 >> 1) | (s1593 << 7);
-  const SWord8 s1595 = 128 | s1594;
-  const SWord8 s1596 = 127 & s1594;
-  const SWord8 s1597 = s1547 ? s1595 : s1596;
-  const SWord8 s1598 = (s1597 >> 1) | (s1597 << 7);
-  const SWord8 s1599 = 128 | s1598;
-  const SWord8 s1600 = 127 & s1598;
-  const SWord8 s1601 = s1569 ? s1599 : s1600;
-  const SWord8 s1602 = (s1601 >> 1) | (s1601 << 7);
-  const SWord8 s1603 = 128 | s1602;
-  const SWord8 s1604 = 127 & s1602;
-  const SWord8 s1605 = s1588 ? s1603 : s1604;
-  const SWord8 s1606 = s1 + s1601;
-  const SBool  s1607 = s1606 < s1;
-  const SBool  s1608 = s1606 < s1601;
-  const SBool  s1609 = s1607 | s1608;
-  const SWord8 s1610 = (s1606 >> 1) | (s1606 << 7);
-  const SWord8 s1611 = 128 | s1610;
-  const SWord8 s1612 = 127 & s1610;
-  const SWord8 s1613 = s1609 ? s1611 : s1612;
-  const SWord8 s1614 = s1589 ? s1605 : s1613;
-  const SWord8 s1615 = s1 + s1597;
-  const SBool  s1616 = s1615 < s1;
-  const SBool  s1617 = s1615 < s1597;
-  const SBool  s1618 = s1616 | s1617;
-  const SWord8 s1619 = (s1615 >> 1) | (s1615 << 7);
-  const SWord8 s1620 = 128 | s1619;
-  const SWord8 s1621 = 127 & s1619;
-  const SWord8 s1622 = s1618 ? s1620 : s1621;
-  const SWord8 s1623 = (s1622 >> 1) | (s1622 << 7);
-  const SWord8 s1624 = 128 | s1623;
-  const SWord8 s1625 = 127 & s1623;
-  const SWord8 s1626 = s1588 ? s1624 : s1625;
-  const SWord8 s1627 = s1 + s1622;
-  const SBool  s1628 = s1627 < s1;
-  const SBool  s1629 = s1627 < s1622;
-  const SBool  s1630 = s1628 | s1629;
-  const SWord8 s1631 = (s1627 >> 1) | (s1627 << 7);
-  const SWord8 s1632 = 128 | s1631;
-  const SWord8 s1633 = 127 & s1631;
-  const SWord8 s1634 = s1630 ? s1632 : s1633;
-  const SWord8 s1635 = s1589 ? s1626 : s1634;
-  const SWord8 s1636 = s1570 ? s1614 : s1635;
-  const SWord8 s1637 = s1 + s1593;
-  const SBool  s1638 = s1637 < s1;
-  const SBool  s1639 = s1637 < s1593;
-  const SBool  s1640 = s1638 | s1639;
-  const SWord8 s1641 = (s1637 >> 1) | (s1637 << 7);
-  const SWord8 s1642 = 128 | s1641;
-  const SWord8 s1643 = 127 & s1641;
-  const SWord8 s1644 = s1640 ? s1642 : s1643;
-  const SWord8 s1645 = (s1644 >> 1) | (s1644 << 7);
-  const SWord8 s1646 = 128 | s1645;
-  const SWord8 s1647 = 127 & s1645;
-  const SWord8 s1648 = s1569 ? s1646 : s1647;
-  const SWord8 s1649 = (s1648 >> 1) | (s1648 << 7);
-  const SWord8 s1650 = 128 | s1649;
-  const SWord8 s1651 = 127 & s1649;
-  const SWord8 s1652 = s1588 ? s1650 : s1651;
-  const SWord8 s1653 = s1 + s1648;
-  const SBool  s1654 = s1653 < s1;
-  const SBool  s1655 = s1653 < s1648;
-  const SBool  s1656 = s1654 | s1655;
-  const SWord8 s1657 = (s1653 >> 1) | (s1653 << 7);
-  const SWord8 s1658 = 128 | s1657;
-  const SWord8 s1659 = 127 & s1657;
-  const SWord8 s1660 = s1656 ? s1658 : s1659;
-  const SWord8 s1661 = s1589 ? s1652 : s1660;
-  const SWord8 s1662 = s1 + s1644;
-  const SBool  s1663 = s1662 < s1;
-  const SBool  s1664 = s1662 < s1644;
-  const SBool  s1665 = s1663 | s1664;
-  const SWord8 s1666 = (s1662 >> 1) | (s1662 << 7);
-  const SWord8 s1667 = 128 | s1666;
-  const SWord8 s1668 = 127 & s1666;
-  const SWord8 s1669 = s1665 ? s1667 : s1668;
-  const SWord8 s1670 = (s1669 >> 1) | (s1669 << 7);
-  const SWord8 s1671 = 128 | s1670;
-  const SWord8 s1672 = 127 & s1670;
-  const SWord8 s1673 = s1588 ? s1671 : s1672;
-  const SWord8 s1674 = s1 + s1669;
-  const SBool  s1675 = s1674 < s1;
-  const SBool  s1676 = s1674 < s1669;
-  const SBool  s1677 = s1675 | s1676;
-  const SWord8 s1678 = (s1674 >> 1) | (s1674 << 7);
-  const SWord8 s1679 = 128 | s1678;
-  const SWord8 s1680 = 127 & s1678;
-  const SWord8 s1681 = s1677 ? s1679 : s1680;
-  const SWord8 s1682 = s1589 ? s1673 : s1681;
-  const SWord8 s1683 = s1570 ? s1661 : s1682;
-  const SWord8 s1684 = s1548 ? s1636 : s1683;
-  const SWord8 s1685 = s1 + s1574;
-  const SWord8 s1686 = 1 & s1685;
-  const SBool  s1687 = 0 != s1686;
-  const SWord8 s1688 = s1687 ? s1578 : s1579;
-  const SWord8 s1689 = 1 & s1688;
-  const SBool  s1690 = 0 != s1689;
-  const SWord8 s1691 = s1690 ? s1584 : s1585;
-  const SWord8 s1692 = 1 & s1691;
-  const SBool  s1693 = 0 != s1692;
-  const SBool  s1694 = 0 == s1693;
-  const SBool  s1695 = s1685 < s1;
-  const SBool  s1696 = s1685 < s1574;
-  const SBool  s1697 = s1695 | s1696;
-  const SWord8 s1698 = (s1685 >> 1) | (s1685 << 7);
-  const SWord8 s1699 = 128 | s1698;
-  const SWord8 s1700 = 127 & s1698;
-  const SWord8 s1701 = s1697 ? s1699 : s1700;
-  const SWord8 s1702 = (s1701 >> 1) | (s1701 << 7);
-  const SWord8 s1703 = 128 | s1702;
-  const SWord8 s1704 = 127 & s1702;
-  const SWord8 s1705 = s1547 ? s1703 : s1704;
-  const SWord8 s1706 = (s1705 >> 1) | (s1705 << 7);
-  const SWord8 s1707 = 128 | s1706;
-  const SWord8 s1708 = 127 & s1706;
-  const SWord8 s1709 = s1569 ? s1707 : s1708;
-  const SWord8 s1710 = (s1709 >> 1) | (s1709 << 7);
-  const SWord8 s1711 = 128 | s1710;
-  const SWord8 s1712 = 127 & s1710;
-  const SWord8 s1713 = s1693 ? s1711 : s1712;
-  const SWord8 s1714 = s1 + s1709;
-  const SBool  s1715 = s1714 < s1;
-  const SBool  s1716 = s1714 < s1709;
-  const SBool  s1717 = s1715 | s1716;
-  const SWord8 s1718 = (s1714 >> 1) | (s1714 << 7);
-  const SWord8 s1719 = 128 | s1718;
-  const SWord8 s1720 = 127 & s1718;
-  const SWord8 s1721 = s1717 ? s1719 : s1720;
-  const SWord8 s1722 = s1694 ? s1713 : s1721;
-  const SWord8 s1723 = s1 + s1705;
-  const SBool  s1724 = s1723 < s1;
-  const SBool  s1725 = s1723 < s1705;
-  const SBool  s1726 = s1724 | s1725;
-  const SWord8 s1727 = (s1723 >> 1) | (s1723 << 7);
-  const SWord8 s1728 = 128 | s1727;
-  const SWord8 s1729 = 127 & s1727;
-  const SWord8 s1730 = s1726 ? s1728 : s1729;
-  const SWord8 s1731 = (s1730 >> 1) | (s1730 << 7);
-  const SWord8 s1732 = 128 | s1731;
-  const SWord8 s1733 = 127 & s1731;
-  const SWord8 s1734 = s1693 ? s1732 : s1733;
-  const SWord8 s1735 = s1 + s1730;
-  const SBool  s1736 = s1735 < s1;
-  const SBool  s1737 = s1735 < s1730;
-  const SBool  s1738 = s1736 | s1737;
-  const SWord8 s1739 = (s1735 >> 1) | (s1735 << 7);
-  const SWord8 s1740 = 128 | s1739;
-  const SWord8 s1741 = 127 & s1739;
-  const SWord8 s1742 = s1738 ? s1740 : s1741;
-  const SWord8 s1743 = s1694 ? s1734 : s1742;
-  const SWord8 s1744 = s1570 ? s1722 : s1743;
-  const SWord8 s1745 = s1 + s1701;
-  const SBool  s1746 = s1745 < s1;
-  const SBool  s1747 = s1745 < s1701;
-  const SBool  s1748 = s1746 | s1747;
-  const SWord8 s1749 = (s1745 >> 1) | (s1745 << 7);
-  const SWord8 s1750 = 128 | s1749;
-  const SWord8 s1751 = 127 & s1749;
-  const SWord8 s1752 = s1748 ? s1750 : s1751;
-  const SWord8 s1753 = (s1752 >> 1) | (s1752 << 7);
-  const SWord8 s1754 = 128 | s1753;
-  const SWord8 s1755 = 127 & s1753;
-  const SWord8 s1756 = s1569 ? s1754 : s1755;
-  const SWord8 s1757 = (s1756 >> 1) | (s1756 << 7);
-  const SWord8 s1758 = 128 | s1757;
-  const SWord8 s1759 = 127 & s1757;
-  const SWord8 s1760 = s1693 ? s1758 : s1759;
-  const SWord8 s1761 = s1 + s1756;
-  const SBool  s1762 = s1761 < s1;
-  const SBool  s1763 = s1761 < s1756;
-  const SBool  s1764 = s1762 | s1763;
-  const SWord8 s1765 = (s1761 >> 1) | (s1761 << 7);
-  const SWord8 s1766 = 128 | s1765;
-  const SWord8 s1767 = 127 & s1765;
-  const SWord8 s1768 = s1764 ? s1766 : s1767;
-  const SWord8 s1769 = s1694 ? s1760 : s1768;
-  const SWord8 s1770 = s1 + s1752;
-  const SBool  s1771 = s1770 < s1;
-  const SBool  s1772 = s1770 < s1752;
-  const SBool  s1773 = s1771 | s1772;
-  const SWord8 s1774 = (s1770 >> 1) | (s1770 << 7);
-  const SWord8 s1775 = 128 | s1774;
-  const SWord8 s1776 = 127 & s1774;
-  const SWord8 s1777 = s1773 ? s1775 : s1776;
-  const SWord8 s1778 = (s1777 >> 1) | (s1777 << 7);
-  const SWord8 s1779 = 128 | s1778;
-  const SWord8 s1780 = 127 & s1778;
-  const SWord8 s1781 = s1693 ? s1779 : s1780;
-  const SWord8 s1782 = s1 + s1777;
-  const SBool  s1783 = s1782 < s1;
-  const SBool  s1784 = s1782 < s1777;
-  const SBool  s1785 = s1783 | s1784;
-  const SWord8 s1786 = (s1782 >> 1) | (s1782 << 7);
-  const SWord8 s1787 = 128 | s1786;
-  const SWord8 s1788 = 127 & s1786;
-  const SWord8 s1789 = s1785 ? s1787 : s1788;
-  const SWord8 s1790 = s1694 ? s1781 : s1789;
-  const SWord8 s1791 = s1570 ? s1769 : s1790;
-  const SWord8 s1792 = s1548 ? s1744 : s1791;
-  const SWord8 s1793 = s1037 ? s1684 : s1792;
-  const SWord8 s1794 = s1 + s1555;
-  const SWord8 s1795 = 1 & s1794;
-  const SBool  s1796 = 0 != s1795;
-  const SWord8 s1797 = s1796 ? s1559 : s1560;
-  const SWord8 s1798 = 1 & s1797;
-  const SBool  s1799 = 0 != s1798;
-  const SWord8 s1800 = s1799 ? s1565 : s1566;
-  const SWord8 s1801 = 1 & s1800;
-  const SBool  s1802 = 0 != s1801;
-  const SBool  s1803 = 0 == s1802;
-  const SBool  s1804 = s1794 < s1;
-  const SBool  s1805 = s1794 < s1555;
-  const SBool  s1806 = s1804 | s1805;
-  const SWord8 s1807 = (s1794 >> 1) | (s1794 << 7);
-  const SWord8 s1808 = 128 | s1807;
-  const SWord8 s1809 = 127 & s1807;
-  const SWord8 s1810 = s1806 ? s1808 : s1809;
-  const SWord8 s1811 = 1 & s1810;
-  const SBool  s1812 = 0 != s1811;
-  const SWord8 s1813 = (s1797 >> 1) | (s1797 << 7);
-  const SWord8 s1814 = 128 | s1813;
-  const SWord8 s1815 = 127 & s1813;
-  const SWord8 s1816 = s1812 ? s1814 : s1815;
-  const SWord8 s1817 = 1 & s1816;
-  const SBool  s1818 = 0 != s1817;
-  const SWord8 s1819 = (s1800 >> 1) | (s1800 << 7);
-  const SWord8 s1820 = 128 | s1819;
-  const SWord8 s1821 = 127 & s1819;
-  const SWord8 s1822 = s1818 ? s1820 : s1821;
-  const SWord8 s1823 = 1 & s1822;
-  const SBool  s1824 = 0 != s1823;
-  const SBool  s1825 = 0 == s1824;
-  const SWord8 s1826 = (s1810 >> 1) | (s1810 << 7);
-  const SWord8 s1827 = 128 | s1826;
-  const SWord8 s1828 = 127 & s1826;
-  const SWord8 s1829 = s1036 ? s1827 : s1828;
-  const SWord8 s1830 = (s1829 >> 1) | (s1829 << 7);
-  const SWord8 s1831 = 128 | s1830;
-  const SWord8 s1832 = 127 & s1830;
-  const SWord8 s1833 = s1547 ? s1831 : s1832;
-  const SWord8 s1834 = (s1833 >> 1) | (s1833 << 7);
-  const SWord8 s1835 = 128 | s1834;
-  const SWord8 s1836 = 127 & s1834;
-  const SWord8 s1837 = s1802 ? s1835 : s1836;
-  const SWord8 s1838 = (s1837 >> 1) | (s1837 << 7);
-  const SWord8 s1839 = 128 | s1838;
-  const SWord8 s1840 = 127 & s1838;
-  const SWord8 s1841 = s1824 ? s1839 : s1840;
-  const SWord8 s1842 = s1 + s1837;
-  const SBool  s1843 = s1842 < s1;
-  const SBool  s1844 = s1842 < s1837;
-  const SBool  s1845 = s1843 | s1844;
-  const SWord8 s1846 = (s1842 >> 1) | (s1842 << 7);
-  const SWord8 s1847 = 128 | s1846;
-  const SWord8 s1848 = 127 & s1846;
-  const SWord8 s1849 = s1845 ? s1847 : s1848;
-  const SWord8 s1850 = s1825 ? s1841 : s1849;
-  const SWord8 s1851 = s1 + s1833;
-  const SBool  s1852 = s1851 < s1;
-  const SBool  s1853 = s1851 < s1833;
-  const SBool  s1854 = s1852 | s1853;
-  const SWord8 s1855 = (s1851 >> 1) | (s1851 << 7);
-  const SWord8 s1856 = 128 | s1855;
-  const SWord8 s1857 = 127 & s1855;
-  const SWord8 s1858 = s1854 ? s1856 : s1857;
-  const SWord8 s1859 = (s1858 >> 1) | (s1858 << 7);
-  const SWord8 s1860 = 128 | s1859;
-  const SWord8 s1861 = 127 & s1859;
-  const SWord8 s1862 = s1824 ? s1860 : s1861;
-  const SWord8 s1863 = s1 + s1858;
-  const SBool  s1864 = s1863 < s1;
-  const SBool  s1865 = s1863 < s1858;
-  const SBool  s1866 = s1864 | s1865;
-  const SWord8 s1867 = (s1863 >> 1) | (s1863 << 7);
-  const SWord8 s1868 = 128 | s1867;
-  const SWord8 s1869 = 127 & s1867;
-  const SWord8 s1870 = s1866 ? s1868 : s1869;
-  const SWord8 s1871 = s1825 ? s1862 : s1870;
-  const SWord8 s1872 = s1803 ? s1850 : s1871;
-  const SWord8 s1873 = s1 + s1829;
-  const SBool  s1874 = s1873 < s1;
-  const SBool  s1875 = s1873 < s1829;
-  const SBool  s1876 = s1874 | s1875;
-  const SWord8 s1877 = (s1873 >> 1) | (s1873 << 7);
-  const SWord8 s1878 = 128 | s1877;
-  const SWord8 s1879 = 127 & s1877;
-  const SWord8 s1880 = s1876 ? s1878 : s1879;
-  const SWord8 s1881 = (s1880 >> 1) | (s1880 << 7);
-  const SWord8 s1882 = 128 | s1881;
-  const SWord8 s1883 = 127 & s1881;
-  const SWord8 s1884 = s1802 ? s1882 : s1883;
-  const SWord8 s1885 = (s1884 >> 1) | (s1884 << 7);
-  const SWord8 s1886 = 128 | s1885;
-  const SWord8 s1887 = 127 & s1885;
-  const SWord8 s1888 = s1824 ? s1886 : s1887;
-  const SWord8 s1889 = s1 + s1884;
-  const SBool  s1890 = s1889 < s1;
-  const SBool  s1891 = s1889 < s1884;
-  const SBool  s1892 = s1890 | s1891;
-  const SWord8 s1893 = (s1889 >> 1) | (s1889 << 7);
-  const SWord8 s1894 = 128 | s1893;
-  const SWord8 s1895 = 127 & s1893;
-  const SWord8 s1896 = s1892 ? s1894 : s1895;
-  const SWord8 s1897 = s1825 ? s1888 : s1896;
-  const SWord8 s1898 = s1 + s1880;
-  const SBool  s1899 = s1898 < s1;
-  const SBool  s1900 = s1898 < s1880;
-  const SBool  s1901 = s1899 | s1900;
-  const SWord8 s1902 = (s1898 >> 1) | (s1898 << 7);
-  const SWord8 s1903 = 128 | s1902;
-  const SWord8 s1904 = 127 & s1902;
-  const SWord8 s1905 = s1901 ? s1903 : s1904;
-  const SWord8 s1906 = (s1905 >> 1) | (s1905 << 7);
-  const SWord8 s1907 = 128 | s1906;
-  const SWord8 s1908 = 127 & s1906;
-  const SWord8 s1909 = s1824 ? s1907 : s1908;
-  const SWord8 s1910 = s1 + s1905;
-  const SBool  s1911 = s1910 < s1;
-  const SBool  s1912 = s1910 < s1905;
-  const SBool  s1913 = s1911 | s1912;
-  const SWord8 s1914 = (s1910 >> 1) | (s1910 << 7);
-  const SWord8 s1915 = 128 | s1914;
-  const SWord8 s1916 = 127 & s1914;
-  const SWord8 s1917 = s1913 ? s1915 : s1916;
-  const SWord8 s1918 = s1825 ? s1909 : s1917;
-  const SWord8 s1919 = s1803 ? s1897 : s1918;
-  const SWord8 s1920 = s1548 ? s1872 : s1919;
-  const SWord8 s1921 = s1 + s1810;
-  const SWord8 s1922 = 1 & s1921;
-  const SBool  s1923 = 0 != s1922;
-  const SWord8 s1924 = s1923 ? s1814 : s1815;
-  const SWord8 s1925 = 1 & s1924;
-  const SBool  s1926 = 0 != s1925;
-  const SWord8 s1927 = s1926 ? s1820 : s1821;
-  const SWord8 s1928 = 1 & s1927;
-  const SBool  s1929 = 0 != s1928;
-  const SBool  s1930 = 0 == s1929;
-  const SBool  s1931 = s1921 < s1;
-  const SBool  s1932 = s1921 < s1810;
-  const SBool  s1933 = s1931 | s1932;
-  const SWord8 s1934 = (s1921 >> 1) | (s1921 << 7);
-  const SWord8 s1935 = 128 | s1934;
-  const SWord8 s1936 = 127 & s1934;
-  const SWord8 s1937 = s1933 ? s1935 : s1936;
-  const SWord8 s1938 = (s1937 >> 1) | (s1937 << 7);
-  const SWord8 s1939 = 128 | s1938;
-  const SWord8 s1940 = 127 & s1938;
-  const SWord8 s1941 = s1547 ? s1939 : s1940;
-  const SWord8 s1942 = (s1941 >> 1) | (s1941 << 7);
-  const SWord8 s1943 = 128 | s1942;
-  const SWord8 s1944 = 127 & s1942;
-  const SWord8 s1945 = s1802 ? s1943 : s1944;
-  const SWord8 s1946 = (s1945 >> 1) | (s1945 << 7);
-  const SWord8 s1947 = 128 | s1946;
-  const SWord8 s1948 = 127 & s1946;
-  const SWord8 s1949 = s1929 ? s1947 : s1948;
-  const SWord8 s1950 = s1 + s1945;
-  const SBool  s1951 = s1950 < s1;
-  const SBool  s1952 = s1950 < s1945;
-  const SBool  s1953 = s1951 | s1952;
-  const SWord8 s1954 = (s1950 >> 1) | (s1950 << 7);
-  const SWord8 s1955 = 128 | s1954;
-  const SWord8 s1956 = 127 & s1954;
-  const SWord8 s1957 = s1953 ? s1955 : s1956;
-  const SWord8 s1958 = s1930 ? s1949 : s1957;
-  const SWord8 s1959 = s1 + s1941;
-  const SBool  s1960 = s1959 < s1;
-  const SBool  s1961 = s1959 < s1941;
-  const SBool  s1962 = s1960 | s1961;
-  const SWord8 s1963 = (s1959 >> 1) | (s1959 << 7);
-  const SWord8 s1964 = 128 | s1963;
-  const SWord8 s1965 = 127 & s1963;
-  const SWord8 s1966 = s1962 ? s1964 : s1965;
-  const SWord8 s1967 = (s1966 >> 1) | (s1966 << 7);
-  const SWord8 s1968 = 128 | s1967;
-  const SWord8 s1969 = 127 & s1967;
-  const SWord8 s1970 = s1929 ? s1968 : s1969;
-  const SWord8 s1971 = s1 + s1966;
-  const SBool  s1972 = s1971 < s1;
-  const SBool  s1973 = s1971 < s1966;
-  const SBool  s1974 = s1972 | s1973;
-  const SWord8 s1975 = (s1971 >> 1) | (s1971 << 7);
-  const SWord8 s1976 = 128 | s1975;
-  const SWord8 s1977 = 127 & s1975;
-  const SWord8 s1978 = s1974 ? s1976 : s1977;
-  const SWord8 s1979 = s1930 ? s1970 : s1978;
-  const SWord8 s1980 = s1803 ? s1958 : s1979;
-  const SWord8 s1981 = s1 + s1937;
-  const SBool  s1982 = s1981 < s1;
-  const SBool  s1983 = s1981 < s1937;
-  const SBool  s1984 = s1982 | s1983;
-  const SWord8 s1985 = (s1981 >> 1) | (s1981 << 7);
-  const SWord8 s1986 = 128 | s1985;
-  const SWord8 s1987 = 127 & s1985;
-  const SWord8 s1988 = s1984 ? s1986 : s1987;
-  const SWord8 s1989 = (s1988 >> 1) | (s1988 << 7);
-  const SWord8 s1990 = 128 | s1989;
-  const SWord8 s1991 = 127 & s1989;
-  const SWord8 s1992 = s1802 ? s1990 : s1991;
-  const SWord8 s1993 = (s1992 >> 1) | (s1992 << 7);
-  const SWord8 s1994 = 128 | s1993;
-  const SWord8 s1995 = 127 & s1993;
-  const SWord8 s1996 = s1929 ? s1994 : s1995;
-  const SWord8 s1997 = s1 + s1992;
-  const SBool  s1998 = s1997 < s1;
-  const SBool  s1999 = s1997 < s1992;
-  const SBool  s2000 = s1998 | s1999;
-  const SWord8 s2001 = (s1997 >> 1) | (s1997 << 7);
-  const SWord8 s2002 = 128 | s2001;
-  const SWord8 s2003 = 127 & s2001;
-  const SWord8 s2004 = s2000 ? s2002 : s2003;
-  const SWord8 s2005 = s1930 ? s1996 : s2004;
-  const SWord8 s2006 = s1 + s1988;
-  const SBool  s2007 = s2006 < s1;
-  const SBool  s2008 = s2006 < s1988;
-  const SBool  s2009 = s2007 | s2008;
-  const SWord8 s2010 = (s2006 >> 1) | (s2006 << 7);
-  const SWord8 s2011 = 128 | s2010;
-  const SWord8 s2012 = 127 & s2010;
-  const SWord8 s2013 = s2009 ? s2011 : s2012;
-  const SWord8 s2014 = (s2013 >> 1) | (s2013 << 7);
-  const SWord8 s2015 = 128 | s2014;
-  const SWord8 s2016 = 127 & s2014;
-  const SWord8 s2017 = s1929 ? s2015 : s2016;
-  const SWord8 s2018 = s1 + s2013;
-  const SBool  s2019 = s2018 < s1;
-  const SBool  s2020 = s2018 < s2013;
-  const SBool  s2021 = s2019 | s2020;
-  const SWord8 s2022 = (s2018 >> 1) | (s2018 << 7);
-  const SWord8 s2023 = 128 | s2022;
-  const SWord8 s2024 = 127 & s2022;
-  const SWord8 s2025 = s2021 ? s2023 : s2024;
-  const SWord8 s2026 = s1930 ? s2017 : s2025;
-  const SWord8 s2027 = s1803 ? s2005 : s2026;
-  const SWord8 s2028 = s1548 ? s1980 : s2027;
-  const SWord8 s2029 = s1037 ? s1920 : s2028;
-  const SWord8 s2030 = s22 ? s1793 : s2029;
-  const SWord8 s2031 = s17 ? s1538 : s2030;
-  const SWord8 s2032 = s12 ? s1027 : s2031;
-  const SWord8 s2033 = s1 & 1;
-  const SBool  s2034 = 0 != s2033;
-  const SWord8 s2035 = s2034 ? 128 : 0;
-  const SWord8 s2036 = 1 & s2035;
-  const SBool  s2037 = 0 != s2036;
-  const SWord8 s2038 = s18 | 128;
-  const SWord8 s2039 = s2037 ? s2038 : s19;
-  const SWord8 s2040 = 1 & s2039;
-  const SBool  s2041 = 0 != s2040;
-  const SBool  s2042 = 0 == s2041;
-  const SWord8 s2043 = (s1 >> 1) | (s1 << 7);
-  const SWord8 s2044 = 127 & s2043;
-  const SWord8 s2045 = 1 & s2044;
-  const SBool  s2046 = 0 != s2045;
-  const SWord8 s2047 = (s2035 >> 1) | (s2035 << 7);
-  const SWord8 s2048 = 128 | s2047;
-  const SWord8 s2049 = 127 & s2047;
-  const SWord8 s2050 = s2046 ? s2048 : s2049;
-  const SWord8 s2051 = 1 & s2050;
-  const SBool  s2052 = 0 != s2051;
-  const SWord8 s2053 = (s2039 >> 1) | (s2039 << 7);
-  const SWord8 s2054 = 128 | s2053;
-  const SWord8 s2055 = 127 & s2053;
-  const SWord8 s2056 = s2052 ? s2054 : s2055;
-  const SWord8 s2057 = 1 & s2056;
-  const SBool  s2058 = 0 != s2057;
-  const SBool  s2059 = 0 == s2058;
-  const SWord8 s2060 = (s2044 >> 1) | (s2044 << 7);
-  const SWord8 s2061 = 128 | s2060;
-  const SWord8 s2062 = 127 & s2060;
-  const SWord8 s2063 = s11 ? s2061 : s2062;
-  const SWord8 s2064 = 1 & s2063;
-  const SBool  s2065 = 0 != s2064;
-  const SWord8 s2066 = (s2050 >> 1) | (s2050 << 7);
-  const SWord8 s2067 = 128 | s2066;
-  const SWord8 s2068 = 127 & s2066;
-  const SWord8 s2069 = s2065 ? s2067 : s2068;
-  const SWord8 s2070 = 1 & s2069;
-  const SBool  s2071 = 0 != s2070;
-  const SWord8 s2072 = (s2056 >> 1) | (s2056 << 7);
-  const SWord8 s2073 = 128 | s2072;
-  const SWord8 s2074 = 127 & s2072;
-  const SWord8 s2075 = s2071 ? s2073 : s2074;
-  const SWord8 s2076 = 1 & s2075;
-  const SBool  s2077 = 0 != s2076;
-  const SBool  s2078 = 0 == s2077;
-  const SWord8 s2079 = (s2063 >> 1) | (s2063 << 7);
-  const SWord8 s2080 = 128 | s2079;
-  const SWord8 s2081 = 127 & s2079;
-  const SWord8 s2082 = s16 ? s2080 : s2081;
-  const SWord8 s2083 = 1 & s2082;
-  const SBool  s2084 = 0 != s2083;
-  const SWord8 s2085 = (s2069 >> 1) | (s2069 << 7);
-  const SWord8 s2086 = 128 | s2085;
-  const SWord8 s2087 = 127 & s2085;
-  const SWord8 s2088 = s2084 ? s2086 : s2087;
-  const SWord8 s2089 = 1 & s2088;
-  const SBool  s2090 = 0 != s2089;
-  const SWord8 s2091 = (s2075 >> 1) | (s2075 << 7);
-  const SWord8 s2092 = 128 | s2091;
-  const SWord8 s2093 = 127 & s2091;
-  const SWord8 s2094 = s2090 ? s2092 : s2093;
-  const SWord8 s2095 = 1 & s2094;
-  const SBool  s2096 = 0 != s2095;
-  const SBool  s2097 = 0 == s2096;
-  const SWord8 s2098 = (s2082 >> 1) | (s2082 << 7);
-  const SWord8 s2099 = 128 | s2098;
-  const SWord8 s2100 = 127 & s2098;
-  const SWord8 s2101 = s2041 ? s2099 : s2100;
-  const SWord8 s2102 = 1 & s2101;
-  const SBool  s2103 = 0 != s2102;
-  const SWord8 s2104 = (s2088 >> 1) | (s2088 << 7);
-  const SWord8 s2105 = 128 | s2104;
-  const SWord8 s2106 = 127 & s2104;
-  const SWord8 s2107 = s2103 ? s2105 : s2106;
-  const SWord8 s2108 = 1 & s2107;
-  const SBool  s2109 = 0 != s2108;
-  const SWord8 s2110 = (s2094 >> 1) | (s2094 << 7);
-  const SWord8 s2111 = 128 | s2110;
-  const SWord8 s2112 = 127 & s2110;
-  const SWord8 s2113 = s2109 ? s2111 : s2112;
-  const SWord8 s2114 = 1 & s2113;
-  const SBool  s2115 = 0 != s2114;
-  const SBool  s2116 = 0 == s2115;
-  const SWord8 s2117 = (s2101 >> 1) | (s2101 << 7);
-  const SWord8 s2118 = 128 | s2117;
-  const SWord8 s2119 = 127 & s2117;
-  const SWord8 s2120 = s2058 ? s2118 : s2119;
-  const SWord8 s2121 = (s2120 >> 1) | (s2120 << 7);
-  const SWord8 s2122 = 128 | s2121;
-  const SWord8 s2123 = 127 & s2121;
-  const SWord8 s2124 = s2077 ? s2122 : s2123;
-  const SWord8 s2125 = (s2124 >> 1) | (s2124 << 7);
-  const SWord8 s2126 = 128 | s2125;
-  const SWord8 s2127 = 127 & s2125;
-  const SWord8 s2128 = s2096 ? s2126 : s2127;
-  const SWord8 s2129 = (s2128 >> 1) | (s2128 << 7);
-  const SWord8 s2130 = 128 | s2129;
-  const SWord8 s2131 = 127 & s2129;
-  const SWord8 s2132 = s2115 ? s2130 : s2131;
-  const SWord8 s2133 = s1 + s2128;
-  const SBool  s2134 = s2133 < s1;
-  const SBool  s2135 = s2133 < s2128;
-  const SBool  s2136 = s2134 | s2135;
-  const SWord8 s2137 = (s2133 >> 1) | (s2133 << 7);
-  const SWord8 s2138 = 128 | s2137;
-  const SWord8 s2139 = 127 & s2137;
-  const SWord8 s2140 = s2136 ? s2138 : s2139;
-  const SWord8 s2141 = s2116 ? s2132 : s2140;
-  const SWord8 s2142 = s1 + s2124;
-  const SBool  s2143 = s2142 < s1;
-  const SBool  s2144 = s2142 < s2124;
-  const SBool  s2145 = s2143 | s2144;
-  const SWord8 s2146 = (s2142 >> 1) | (s2142 << 7);
-  const SWord8 s2147 = 128 | s2146;
-  const SWord8 s2148 = 127 & s2146;
-  const SWord8 s2149 = s2145 ? s2147 : s2148;
-  const SWord8 s2150 = (s2149 >> 1) | (s2149 << 7);
-  const SWord8 s2151 = 128 | s2150;
-  const SWord8 s2152 = 127 & s2150;
-  const SWord8 s2153 = s2115 ? s2151 : s2152;
-  const SWord8 s2154 = s1 + s2149;
-  const SBool  s2155 = s2154 < s1;
-  const SBool  s2156 = s2154 < s2149;
-  const SBool  s2157 = s2155 | s2156;
-  const SWord8 s2158 = (s2154 >> 1) | (s2154 << 7);
-  const SWord8 s2159 = 128 | s2158;
-  const SWord8 s2160 = 127 & s2158;
-  const SWord8 s2161 = s2157 ? s2159 : s2160;
-  const SWord8 s2162 = s2116 ? s2153 : s2161;
-  const SWord8 s2163 = s2097 ? s2141 : s2162;
-  const SWord8 s2164 = s1 + s2120;
-  const SBool  s2165 = s2164 < s1;
-  const SBool  s2166 = s2164 < s2120;
-  const SBool  s2167 = s2165 | s2166;
-  const SWord8 s2168 = (s2164 >> 1) | (s2164 << 7);
-  const SWord8 s2169 = 128 | s2168;
-  const SWord8 s2170 = 127 & s2168;
-  const SWord8 s2171 = s2167 ? s2169 : s2170;
-  const SWord8 s2172 = (s2171 >> 1) | (s2171 << 7);
-  const SWord8 s2173 = 128 | s2172;
-  const SWord8 s2174 = 127 & s2172;
-  const SWord8 s2175 = s2096 ? s2173 : s2174;
-  const SWord8 s2176 = (s2175 >> 1) | (s2175 << 7);
-  const SWord8 s2177 = 128 | s2176;
-  const SWord8 s2178 = 127 & s2176;
-  const SWord8 s2179 = s2115 ? s2177 : s2178;
-  const SWord8 s2180 = s1 + s2175;
-  const SBool  s2181 = s2180 < s1;
-  const SBool  s2182 = s2180 < s2175;
-  const SBool  s2183 = s2181 | s2182;
-  const SWord8 s2184 = (s2180 >> 1) | (s2180 << 7);
-  const SWord8 s2185 = 128 | s2184;
-  const SWord8 s2186 = 127 & s2184;
-  const SWord8 s2187 = s2183 ? s2185 : s2186;
-  const SWord8 s2188 = s2116 ? s2179 : s2187;
-  const SWord8 s2189 = s1 + s2171;
-  const SBool  s2190 = s2189 < s1;
-  const SBool  s2191 = s2189 < s2171;
-  const SBool  s2192 = s2190 | s2191;
-  const SWord8 s2193 = (s2189 >> 1) | (s2189 << 7);
-  const SWord8 s2194 = 128 | s2193;
-  const SWord8 s2195 = 127 & s2193;
-  const SWord8 s2196 = s2192 ? s2194 : s2195;
-  const SWord8 s2197 = (s2196 >> 1) | (s2196 << 7);
-  const SWord8 s2198 = 128 | s2197;
-  const SWord8 s2199 = 127 & s2197;
-  const SWord8 s2200 = s2115 ? s2198 : s2199;
-  const SWord8 s2201 = s1 + s2196;
-  const SBool  s2202 = s2201 < s1;
-  const SBool  s2203 = s2201 < s2196;
-  const SBool  s2204 = s2202 | s2203;
-  const SWord8 s2205 = (s2201 >> 1) | (s2201 << 7);
-  const SWord8 s2206 = 128 | s2205;
-  const SWord8 s2207 = 127 & s2205;
-  const SWord8 s2208 = s2204 ? s2206 : s2207;
-  const SWord8 s2209 = s2116 ? s2200 : s2208;
-  const SWord8 s2210 = s2097 ? s2188 : s2209;
-  const SWord8 s2211 = s2078 ? s2163 : s2210;
-  const SWord8 s2212 = s1 + s2101;
-  const SWord8 s2213 = 1 & s2212;
-  const SBool  s2214 = 0 != s2213;
-  const SWord8 s2215 = s2214 ? s2105 : s2106;
-  const SWord8 s2216 = 1 & s2215;
-  const SBool  s2217 = 0 != s2216;
-  const SWord8 s2218 = s2217 ? s2111 : s2112;
-  const SWord8 s2219 = 1 & s2218;
-  const SBool  s2220 = 0 != s2219;
-  const SBool  s2221 = 0 == s2220;
-  const SBool  s2222 = s2212 < s1;
-  const SBool  s2223 = s2212 < s2101;
-  const SBool  s2224 = s2222 | s2223;
-  const SWord8 s2225 = (s2212 >> 1) | (s2212 << 7);
-  const SWord8 s2226 = 128 | s2225;
-  const SWord8 s2227 = 127 & s2225;
-  const SWord8 s2228 = s2224 ? s2226 : s2227;
-  const SWord8 s2229 = (s2228 >> 1) | (s2228 << 7);
-  const SWord8 s2230 = 128 | s2229;
-  const SWord8 s2231 = 127 & s2229;
-  const SWord8 s2232 = s2077 ? s2230 : s2231;
-  const SWord8 s2233 = (s2232 >> 1) | (s2232 << 7);
-  const SWord8 s2234 = 128 | s2233;
-  const SWord8 s2235 = 127 & s2233;
-  const SWord8 s2236 = s2096 ? s2234 : s2235;
-  const SWord8 s2237 = (s2236 >> 1) | (s2236 << 7);
-  const SWord8 s2238 = 128 | s2237;
-  const SWord8 s2239 = 127 & s2237;
-  const SWord8 s2240 = s2220 ? s2238 : s2239;
-  const SWord8 s2241 = s1 + s2236;
-  const SBool  s2242 = s2241 < s1;
-  const SBool  s2243 = s2241 < s2236;
-  const SBool  s2244 = s2242 | s2243;
-  const SWord8 s2245 = (s2241 >> 1) | (s2241 << 7);
-  const SWord8 s2246 = 128 | s2245;
-  const SWord8 s2247 = 127 & s2245;
-  const SWord8 s2248 = s2244 ? s2246 : s2247;
-  const SWord8 s2249 = s2221 ? s2240 : s2248;
-  const SWord8 s2250 = s1 + s2232;
-  const SBool  s2251 = s2250 < s1;
-  const SBool  s2252 = s2250 < s2232;
-  const SBool  s2253 = s2251 | s2252;
-  const SWord8 s2254 = (s2250 >> 1) | (s2250 << 7);
-  const SWord8 s2255 = 128 | s2254;
-  const SWord8 s2256 = 127 & s2254;
-  const SWord8 s2257 = s2253 ? s2255 : s2256;
-  const SWord8 s2258 = (s2257 >> 1) | (s2257 << 7);
-  const SWord8 s2259 = 128 | s2258;
-  const SWord8 s2260 = 127 & s2258;
-  const SWord8 s2261 = s2220 ? s2259 : s2260;
-  const SWord8 s2262 = s1 + s2257;
-  const SBool  s2263 = s2262 < s1;
-  const SBool  s2264 = s2262 < s2257;
-  const SBool  s2265 = s2263 | s2264;
-  const SWord8 s2266 = (s2262 >> 1) | (s2262 << 7);
-  const SWord8 s2267 = 128 | s2266;
-  const SWord8 s2268 = 127 & s2266;
-  const SWord8 s2269 = s2265 ? s2267 : s2268;
-  const SWord8 s2270 = s2221 ? s2261 : s2269;
-  const SWord8 s2271 = s2097 ? s2249 : s2270;
-  const SWord8 s2272 = s1 + s2228;
-  const SBool  s2273 = s2272 < s1;
-  const SBool  s2274 = s2272 < s2228;
-  const SBool  s2275 = s2273 | s2274;
-  const SWord8 s2276 = (s2272 >> 1) | (s2272 << 7);
-  const SWord8 s2277 = 128 | s2276;
-  const SWord8 s2278 = 127 & s2276;
-  const SWord8 s2279 = s2275 ? s2277 : s2278;
-  const SWord8 s2280 = (s2279 >> 1) | (s2279 << 7);
-  const SWord8 s2281 = 128 | s2280;
-  const SWord8 s2282 = 127 & s2280;
-  const SWord8 s2283 = s2096 ? s2281 : s2282;
-  const SWord8 s2284 = (s2283 >> 1) | (s2283 << 7);
-  const SWord8 s2285 = 128 | s2284;
-  const SWord8 s2286 = 127 & s2284;
-  const SWord8 s2287 = s2220 ? s2285 : s2286;
-  const SWord8 s2288 = s1 + s2283;
-  const SBool  s2289 = s2288 < s1;
-  const SBool  s2290 = s2288 < s2283;
-  const SBool  s2291 = s2289 | s2290;
-  const SWord8 s2292 = (s2288 >> 1) | (s2288 << 7);
-  const SWord8 s2293 = 128 | s2292;
-  const SWord8 s2294 = 127 & s2292;
-  const SWord8 s2295 = s2291 ? s2293 : s2294;
-  const SWord8 s2296 = s2221 ? s2287 : s2295;
-  const SWord8 s2297 = s1 + s2279;
-  const SBool  s2298 = s2297 < s1;
-  const SBool  s2299 = s2297 < s2279;
-  const SBool  s2300 = s2298 | s2299;
-  const SWord8 s2301 = (s2297 >> 1) | (s2297 << 7);
-  const SWord8 s2302 = 128 | s2301;
-  const SWord8 s2303 = 127 & s2301;
-  const SWord8 s2304 = s2300 ? s2302 : s2303;
-  const SWord8 s2305 = (s2304 >> 1) | (s2304 << 7);
-  const SWord8 s2306 = 128 | s2305;
-  const SWord8 s2307 = 127 & s2305;
-  const SWord8 s2308 = s2220 ? s2306 : s2307;
-  const SWord8 s2309 = s1 + s2304;
-  const SBool  s2310 = s2309 < s1;
-  const SBool  s2311 = s2309 < s2304;
-  const SBool  s2312 = s2310 | s2311;
-  const SWord8 s2313 = (s2309 >> 1) | (s2309 << 7);
-  const SWord8 s2314 = 128 | s2313;
-  const SWord8 s2315 = 127 & s2313;
-  const SWord8 s2316 = s2312 ? s2314 : s2315;
-  const SWord8 s2317 = s2221 ? s2308 : s2316;
-  const SWord8 s2318 = s2097 ? s2296 : s2317;
-  const SWord8 s2319 = s2078 ? s2271 : s2318;
-  const SWord8 s2320 = s2059 ? s2211 : s2319;
-  const SWord8 s2321 = s1 + s2082;
-  const SWord8 s2322 = 1 & s2321;
-  const SBool  s2323 = 0 != s2322;
-  const SWord8 s2324 = s2323 ? s2086 : s2087;
-  const SWord8 s2325 = 1 & s2324;
-  const SBool  s2326 = 0 != s2325;
-  const SWord8 s2327 = s2326 ? s2092 : s2093;
-  const SWord8 s2328 = 1 & s2327;
-  const SBool  s2329 = 0 != s2328;
-  const SBool  s2330 = 0 == s2329;
-  const SBool  s2331 = s2321 < s1;
-  const SBool  s2332 = s2321 < s2082;
-  const SBool  s2333 = s2331 | s2332;
-  const SWord8 s2334 = (s2321 >> 1) | (s2321 << 7);
-  const SWord8 s2335 = 128 | s2334;
-  const SWord8 s2336 = 127 & s2334;
-  const SWord8 s2337 = s2333 ? s2335 : s2336;
-  const SWord8 s2338 = 1 & s2337;
-  const SBool  s2339 = 0 != s2338;
-  const SWord8 s2340 = (s2324 >> 1) | (s2324 << 7);
-  const SWord8 s2341 = 128 | s2340;
-  const SWord8 s2342 = 127 & s2340;
-  const SWord8 s2343 = s2339 ? s2341 : s2342;
-  const SWord8 s2344 = 1 & s2343;
-  const SBool  s2345 = 0 != s2344;
-  const SWord8 s2346 = (s2327 >> 1) | (s2327 << 7);
-  const SWord8 s2347 = 128 | s2346;
-  const SWord8 s2348 = 127 & s2346;
-  const SWord8 s2349 = s2345 ? s2347 : s2348;
-  const SWord8 s2350 = 1 & s2349;
-  const SBool  s2351 = 0 != s2350;
-  const SBool  s2352 = 0 == s2351;
-  const SWord8 s2353 = (s2337 >> 1) | (s2337 << 7);
-  const SWord8 s2354 = 128 | s2353;
-  const SWord8 s2355 = 127 & s2353;
-  const SWord8 s2356 = s2058 ? s2354 : s2355;
-  const SWord8 s2357 = (s2356 >> 1) | (s2356 << 7);
-  const SWord8 s2358 = 128 | s2357;
-  const SWord8 s2359 = 127 & s2357;
-  const SWord8 s2360 = s2077 ? s2358 : s2359;
-  const SWord8 s2361 = (s2360 >> 1) | (s2360 << 7);
-  const SWord8 s2362 = 128 | s2361;
-  const SWord8 s2363 = 127 & s2361;
-  const SWord8 s2364 = s2329 ? s2362 : s2363;
-  const SWord8 s2365 = (s2364 >> 1) | (s2364 << 7);
-  const SWord8 s2366 = 128 | s2365;
-  const SWord8 s2367 = 127 & s2365;
-  const SWord8 s2368 = s2351 ? s2366 : s2367;
-  const SWord8 s2369 = s1 + s2364;
-  const SBool  s2370 = s2369 < s1;
-  const SBool  s2371 = s2369 < s2364;
-  const SBool  s2372 = s2370 | s2371;
-  const SWord8 s2373 = (s2369 >> 1) | (s2369 << 7);
-  const SWord8 s2374 = 128 | s2373;
-  const SWord8 s2375 = 127 & s2373;
-  const SWord8 s2376 = s2372 ? s2374 : s2375;
-  const SWord8 s2377 = s2352 ? s2368 : s2376;
-  const SWord8 s2378 = s1 + s2360;
-  const SBool  s2379 = s2378 < s1;
-  const SBool  s2380 = s2378 < s2360;
-  const SBool  s2381 = s2379 | s2380;
-  const SWord8 s2382 = (s2378 >> 1) | (s2378 << 7);
-  const SWord8 s2383 = 128 | s2382;
-  const SWord8 s2384 = 127 & s2382;
-  const SWord8 s2385 = s2381 ? s2383 : s2384;
-  const SWord8 s2386 = (s2385 >> 1) | (s2385 << 7);
-  const SWord8 s2387 = 128 | s2386;
-  const SWord8 s2388 = 127 & s2386;
-  const SWord8 s2389 = s2351 ? s2387 : s2388;
-  const SWord8 s2390 = s1 + s2385;
-  const SBool  s2391 = s2390 < s1;
-  const SBool  s2392 = s2390 < s2385;
-  const SBool  s2393 = s2391 | s2392;
-  const SWord8 s2394 = (s2390 >> 1) | (s2390 << 7);
-  const SWord8 s2395 = 128 | s2394;
-  const SWord8 s2396 = 127 & s2394;
-  const SWord8 s2397 = s2393 ? s2395 : s2396;
-  const SWord8 s2398 = s2352 ? s2389 : s2397;
-  const SWord8 s2399 = s2330 ? s2377 : s2398;
-  const SWord8 s2400 = s1 + s2356;
-  const SBool  s2401 = s2400 < s1;
-  const SBool  s2402 = s2400 < s2356;
-  const SBool  s2403 = s2401 | s2402;
-  const SWord8 s2404 = (s2400 >> 1) | (s2400 << 7);
-  const SWord8 s2405 = 128 | s2404;
-  const SWord8 s2406 = 127 & s2404;
-  const SWord8 s2407 = s2403 ? s2405 : s2406;
-  const SWord8 s2408 = (s2407 >> 1) | (s2407 << 7);
-  const SWord8 s2409 = 128 | s2408;
-  const SWord8 s2410 = 127 & s2408;
-  const SWord8 s2411 = s2329 ? s2409 : s2410;
-  const SWord8 s2412 = (s2411 >> 1) | (s2411 << 7);
-  const SWord8 s2413 = 128 | s2412;
-  const SWord8 s2414 = 127 & s2412;
-  const SWord8 s2415 = s2351 ? s2413 : s2414;
-  const SWord8 s2416 = s1 + s2411;
-  const SBool  s2417 = s2416 < s1;
-  const SBool  s2418 = s2416 < s2411;
-  const SBool  s2419 = s2417 | s2418;
-  const SWord8 s2420 = (s2416 >> 1) | (s2416 << 7);
-  const SWord8 s2421 = 128 | s2420;
-  const SWord8 s2422 = 127 & s2420;
-  const SWord8 s2423 = s2419 ? s2421 : s2422;
-  const SWord8 s2424 = s2352 ? s2415 : s2423;
-  const SWord8 s2425 = s1 + s2407;
-  const SBool  s2426 = s2425 < s1;
-  const SBool  s2427 = s2425 < s2407;
-  const SBool  s2428 = s2426 | s2427;
-  const SWord8 s2429 = (s2425 >> 1) | (s2425 << 7);
-  const SWord8 s2430 = 128 | s2429;
-  const SWord8 s2431 = 127 & s2429;
-  const SWord8 s2432 = s2428 ? s2430 : s2431;
-  const SWord8 s2433 = (s2432 >> 1) | (s2432 << 7);
-  const SWord8 s2434 = 128 | s2433;
-  const SWord8 s2435 = 127 & s2433;
-  const SWord8 s2436 = s2351 ? s2434 : s2435;
-  const SWord8 s2437 = s1 + s2432;
-  const SBool  s2438 = s2437 < s1;
-  const SBool  s2439 = s2437 < s2432;
-  const SBool  s2440 = s2438 | s2439;
-  const SWord8 s2441 = (s2437 >> 1) | (s2437 << 7);
-  const SWord8 s2442 = 128 | s2441;
-  const SWord8 s2443 = 127 & s2441;
-  const SWord8 s2444 = s2440 ? s2442 : s2443;
-  const SWord8 s2445 = s2352 ? s2436 : s2444;
-  const SWord8 s2446 = s2330 ? s2424 : s2445;
-  const SWord8 s2447 = s2078 ? s2399 : s2446;
-  const SWord8 s2448 = s1 + s2337;
-  const SWord8 s2449 = 1 & s2448;
-  const SBool  s2450 = 0 != s2449;
-  const SWord8 s2451 = s2450 ? s2341 : s2342;
-  const SWord8 s2452 = 1 & s2451;
-  const SBool  s2453 = 0 != s2452;
-  const SWord8 s2454 = s2453 ? s2347 : s2348;
-  const SWord8 s2455 = 1 & s2454;
-  const SBool  s2456 = 0 != s2455;
-  const SBool  s2457 = 0 == s2456;
-  const SBool  s2458 = s2448 < s1;
-  const SBool  s2459 = s2448 < s2337;
-  const SBool  s2460 = s2458 | s2459;
-  const SWord8 s2461 = (s2448 >> 1) | (s2448 << 7);
-  const SWord8 s2462 = 128 | s2461;
-  const SWord8 s2463 = 127 & s2461;
-  const SWord8 s2464 = s2460 ? s2462 : s2463;
-  const SWord8 s2465 = (s2464 >> 1) | (s2464 << 7);
-  const SWord8 s2466 = 128 | s2465;
-  const SWord8 s2467 = 127 & s2465;
-  const SWord8 s2468 = s2077 ? s2466 : s2467;
-  const SWord8 s2469 = (s2468 >> 1) | (s2468 << 7);
-  const SWord8 s2470 = 128 | s2469;
-  const SWord8 s2471 = 127 & s2469;
-  const SWord8 s2472 = s2329 ? s2470 : s2471;
-  const SWord8 s2473 = (s2472 >> 1) | (s2472 << 7);
-  const SWord8 s2474 = 128 | s2473;
-  const SWord8 s2475 = 127 & s2473;
-  const SWord8 s2476 = s2456 ? s2474 : s2475;
-  const SWord8 s2477 = s1 + s2472;
-  const SBool  s2478 = s2477 < s1;
-  const SBool  s2479 = s2477 < s2472;
-  const SBool  s2480 = s2478 | s2479;
-  const SWord8 s2481 = (s2477 >> 1) | (s2477 << 7);
-  const SWord8 s2482 = 128 | s2481;
-  const SWord8 s2483 = 127 & s2481;
-  const SWord8 s2484 = s2480 ? s2482 : s2483;
-  const SWord8 s2485 = s2457 ? s2476 : s2484;
-  const SWord8 s2486 = s1 + s2468;
-  const SBool  s2487 = s2486 < s1;
-  const SBool  s2488 = s2486 < s2468;
-  const SBool  s2489 = s2487 | s2488;
-  const SWord8 s2490 = (s2486 >> 1) | (s2486 << 7);
-  const SWord8 s2491 = 128 | s2490;
-  const SWord8 s2492 = 127 & s2490;
-  const SWord8 s2493 = s2489 ? s2491 : s2492;
-  const SWord8 s2494 = (s2493 >> 1) | (s2493 << 7);
-  const SWord8 s2495 = 128 | s2494;
-  const SWord8 s2496 = 127 & s2494;
-  const SWord8 s2497 = s2456 ? s2495 : s2496;
-  const SWord8 s2498 = s1 + s2493;
-  const SBool  s2499 = s2498 < s1;
-  const SBool  s2500 = s2498 < s2493;
-  const SBool  s2501 = s2499 | s2500;
-  const SWord8 s2502 = (s2498 >> 1) | (s2498 << 7);
-  const SWord8 s2503 = 128 | s2502;
-  const SWord8 s2504 = 127 & s2502;
-  const SWord8 s2505 = s2501 ? s2503 : s2504;
-  const SWord8 s2506 = s2457 ? s2497 : s2505;
-  const SWord8 s2507 = s2330 ? s2485 : s2506;
-  const SWord8 s2508 = s1 + s2464;
-  const SBool  s2509 = s2508 < s1;
-  const SBool  s2510 = s2508 < s2464;
-  const SBool  s2511 = s2509 | s2510;
-  const SWord8 s2512 = (s2508 >> 1) | (s2508 << 7);
-  const SWord8 s2513 = 128 | s2512;
-  const SWord8 s2514 = 127 & s2512;
-  const SWord8 s2515 = s2511 ? s2513 : s2514;
-  const SWord8 s2516 = (s2515 >> 1) | (s2515 << 7);
-  const SWord8 s2517 = 128 | s2516;
-  const SWord8 s2518 = 127 & s2516;
-  const SWord8 s2519 = s2329 ? s2517 : s2518;
-  const SWord8 s2520 = (s2519 >> 1) | (s2519 << 7);
-  const SWord8 s2521 = 128 | s2520;
-  const SWord8 s2522 = 127 & s2520;
-  const SWord8 s2523 = s2456 ? s2521 : s2522;
-  const SWord8 s2524 = s1 + s2519;
-  const SBool  s2525 = s2524 < s1;
-  const SBool  s2526 = s2524 < s2519;
-  const SBool  s2527 = s2525 | s2526;
-  const SWord8 s2528 = (s2524 >> 1) | (s2524 << 7);
-  const SWord8 s2529 = 128 | s2528;
-  const SWord8 s2530 = 127 & s2528;
-  const SWord8 s2531 = s2527 ? s2529 : s2530;
-  const SWord8 s2532 = s2457 ? s2523 : s2531;
-  const SWord8 s2533 = s1 + s2515;
-  const SBool  s2534 = s2533 < s1;
-  const SBool  s2535 = s2533 < s2515;
-  const SBool  s2536 = s2534 | s2535;
-  const SWord8 s2537 = (s2533 >> 1) | (s2533 << 7);
-  const SWord8 s2538 = 128 | s2537;
-  const SWord8 s2539 = 127 & s2537;
-  const SWord8 s2540 = s2536 ? s2538 : s2539;
-  const SWord8 s2541 = (s2540 >> 1) | (s2540 << 7);
-  const SWord8 s2542 = 128 | s2541;
-  const SWord8 s2543 = 127 & s2541;
-  const SWord8 s2544 = s2456 ? s2542 : s2543;
-  const SWord8 s2545 = s1 + s2540;
-  const SBool  s2546 = s2545 < s1;
-  const SBool  s2547 = s2545 < s2540;
-  const SBool  s2548 = s2546 | s2547;
-  const SWord8 s2549 = (s2545 >> 1) | (s2545 << 7);
-  const SWord8 s2550 = 128 | s2549;
-  const SWord8 s2551 = 127 & s2549;
-  const SWord8 s2552 = s2548 ? s2550 : s2551;
-  const SWord8 s2553 = s2457 ? s2544 : s2552;
-  const SWord8 s2554 = s2330 ? s2532 : s2553;
-  const SWord8 s2555 = s2078 ? s2507 : s2554;
-  const SWord8 s2556 = s2059 ? s2447 : s2555;
-  const SWord8 s2557 = s2042 ? s2320 : s2556;
-  const SWord8 s2558 = s1 + s2063;
-  const SWord8 s2559 = 1 & s2558;
-  const SBool  s2560 = 0 != s2559;
-  const SWord8 s2561 = s2560 ? s2067 : s2068;
-  const SWord8 s2562 = 1 & s2561;
-  const SBool  s2563 = 0 != s2562;
-  const SWord8 s2564 = s2563 ? s2073 : s2074;
-  const SWord8 s2565 = 1 & s2564;
-  const SBool  s2566 = 0 != s2565;
-  const SBool  s2567 = 0 == s2566;
-  const SBool  s2568 = s2558 < s1;
-  const SBool  s2569 = s2558 < s2063;
-  const SBool  s2570 = s2568 | s2569;
-  const SWord8 s2571 = (s2558 >> 1) | (s2558 << 7);
-  const SWord8 s2572 = 128 | s2571;
-  const SWord8 s2573 = 127 & s2571;
-  const SWord8 s2574 = s2570 ? s2572 : s2573;
-  const SWord8 s2575 = 1 & s2574;
-  const SBool  s2576 = 0 != s2575;
-  const SWord8 s2577 = (s2561 >> 1) | (s2561 << 7);
-  const SWord8 s2578 = 128 | s2577;
-  const SWord8 s2579 = 127 & s2577;
-  const SWord8 s2580 = s2576 ? s2578 : s2579;
-  const SWord8 s2581 = 1 & s2580;
-  const SBool  s2582 = 0 != s2581;
-  const SWord8 s2583 = (s2564 >> 1) | (s2564 << 7);
-  const SWord8 s2584 = 128 | s2583;
-  const SWord8 s2585 = 127 & s2583;
-  const SWord8 s2586 = s2582 ? s2584 : s2585;
-  const SWord8 s2587 = 1 & s2586;
-  const SBool  s2588 = 0 != s2587;
-  const SBool  s2589 = 0 == s2588;
-  const SWord8 s2590 = (s2574 >> 1) | (s2574 << 7);
-  const SWord8 s2591 = 128 | s2590;
-  const SWord8 s2592 = 127 & s2590;
-  const SWord8 s2593 = s2041 ? s2591 : s2592;
-  const SWord8 s2594 = 1 & s2593;
-  const SBool  s2595 = 0 != s2594;
-  const SWord8 s2596 = (s2580 >> 1) | (s2580 << 7);
-  const SWord8 s2597 = 128 | s2596;
-  const SWord8 s2598 = 127 & s2596;
-  const SWord8 s2599 = s2595 ? s2597 : s2598;
-  const SWord8 s2600 = 1 & s2599;
-  const SBool  s2601 = 0 != s2600;
-  const SWord8 s2602 = (s2586 >> 1) | (s2586 << 7);
-  const SWord8 s2603 = 128 | s2602;
-  const SWord8 s2604 = 127 & s2602;
-  const SWord8 s2605 = s2601 ? s2603 : s2604;
-  const SWord8 s2606 = 1 & s2605;
-  const SBool  s2607 = 0 != s2606;
-  const SBool  s2608 = 0 == s2607;
-  const SWord8 s2609 = (s2593 >> 1) | (s2593 << 7);
-  const SWord8 s2610 = 128 | s2609;
-  const SWord8 s2611 = 127 & s2609;
-  const SWord8 s2612 = s2058 ? s2610 : s2611;
-  const SWord8 s2613 = (s2612 >> 1) | (s2612 << 7);
-  const SWord8 s2614 = 128 | s2613;
-  const SWord8 s2615 = 127 & s2613;
-  const SWord8 s2616 = s2566 ? s2614 : s2615;
-  const SWord8 s2617 = (s2616 >> 1) | (s2616 << 7);
-  const SWord8 s2618 = 128 | s2617;
-  const SWord8 s2619 = 127 & s2617;
-  const SWord8 s2620 = s2588 ? s2618 : s2619;
-  const SWord8 s2621 = (s2620 >> 1) | (s2620 << 7);
-  const SWord8 s2622 = 128 | s2621;
-  const SWord8 s2623 = 127 & s2621;
-  const SWord8 s2624 = s2607 ? s2622 : s2623;
-  const SWord8 s2625 = s1 + s2620;
-  const SBool  s2626 = s2625 < s1;
-  const SBool  s2627 = s2625 < s2620;
-  const SBool  s2628 = s2626 | s2627;
-  const SWord8 s2629 = (s2625 >> 1) | (s2625 << 7);
-  const SWord8 s2630 = 128 | s2629;
-  const SWord8 s2631 = 127 & s2629;
-  const SWord8 s2632 = s2628 ? s2630 : s2631;
-  const SWord8 s2633 = s2608 ? s2624 : s2632;
-  const SWord8 s2634 = s1 + s2616;
-  const SBool  s2635 = s2634 < s1;
-  const SBool  s2636 = s2634 < s2616;
-  const SBool  s2637 = s2635 | s2636;
-  const SWord8 s2638 = (s2634 >> 1) | (s2634 << 7);
-  const SWord8 s2639 = 128 | s2638;
-  const SWord8 s2640 = 127 & s2638;
-  const SWord8 s2641 = s2637 ? s2639 : s2640;
-  const SWord8 s2642 = (s2641 >> 1) | (s2641 << 7);
-  const SWord8 s2643 = 128 | s2642;
-  const SWord8 s2644 = 127 & s2642;
-  const SWord8 s2645 = s2607 ? s2643 : s2644;
-  const SWord8 s2646 = s1 + s2641;
-  const SBool  s2647 = s2646 < s1;
-  const SBool  s2648 = s2646 < s2641;
-  const SBool  s2649 = s2647 | s2648;
-  const SWord8 s2650 = (s2646 >> 1) | (s2646 << 7);
-  const SWord8 s2651 = 128 | s2650;
-  const SWord8 s2652 = 127 & s2650;
-  const SWord8 s2653 = s2649 ? s2651 : s2652;
-  const SWord8 s2654 = s2608 ? s2645 : s2653;
-  const SWord8 s2655 = s2589 ? s2633 : s2654;
-  const SWord8 s2656 = s1 + s2612;
-  const SBool  s2657 = s2656 < s1;
-  const SBool  s2658 = s2656 < s2612;
-  const SBool  s2659 = s2657 | s2658;
-  const SWord8 s2660 = (s2656 >> 1) | (s2656 << 7);
-  const SWord8 s2661 = 128 | s2660;
-  const SWord8 s2662 = 127 & s2660;
-  const SWord8 s2663 = s2659 ? s2661 : s2662;
-  const SWord8 s2664 = (s2663 >> 1) | (s2663 << 7);
-  const SWord8 s2665 = 128 | s2664;
-  const SWord8 s2666 = 127 & s2664;
-  const SWord8 s2667 = s2588 ? s2665 : s2666;
-  const SWord8 s2668 = (s2667 >> 1) | (s2667 << 7);
-  const SWord8 s2669 = 128 | s2668;
-  const SWord8 s2670 = 127 & s2668;
-  const SWord8 s2671 = s2607 ? s2669 : s2670;
-  const SWord8 s2672 = s1 + s2667;
-  const SBool  s2673 = s2672 < s1;
-  const SBool  s2674 = s2672 < s2667;
-  const SBool  s2675 = s2673 | s2674;
-  const SWord8 s2676 = (s2672 >> 1) | (s2672 << 7);
-  const SWord8 s2677 = 128 | s2676;
-  const SWord8 s2678 = 127 & s2676;
-  const SWord8 s2679 = s2675 ? s2677 : s2678;
-  const SWord8 s2680 = s2608 ? s2671 : s2679;
-  const SWord8 s2681 = s1 + s2663;
-  const SBool  s2682 = s2681 < s1;
-  const SBool  s2683 = s2681 < s2663;
-  const SBool  s2684 = s2682 | s2683;
-  const SWord8 s2685 = (s2681 >> 1) | (s2681 << 7);
-  const SWord8 s2686 = 128 | s2685;
-  const SWord8 s2687 = 127 & s2685;
-  const SWord8 s2688 = s2684 ? s2686 : s2687;
-  const SWord8 s2689 = (s2688 >> 1) | (s2688 << 7);
-  const SWord8 s2690 = 128 | s2689;
-  const SWord8 s2691 = 127 & s2689;
-  const SWord8 s2692 = s2607 ? s2690 : s2691;
-  const SWord8 s2693 = s1 + s2688;
-  const SBool  s2694 = s2693 < s1;
-  const SBool  s2695 = s2693 < s2688;
-  const SBool  s2696 = s2694 | s2695;
-  const SWord8 s2697 = (s2693 >> 1) | (s2693 << 7);
-  const SWord8 s2698 = 128 | s2697;
-  const SWord8 s2699 = 127 & s2697;
-  const SWord8 s2700 = s2696 ? s2698 : s2699;
-  const SWord8 s2701 = s2608 ? s2692 : s2700;
-  const SWord8 s2702 = s2589 ? s2680 : s2701;
-  const SWord8 s2703 = s2567 ? s2655 : s2702;
-  const SWord8 s2704 = s1 + s2593;
-  const SWord8 s2705 = 1 & s2704;
-  const SBool  s2706 = 0 != s2705;
-  const SWord8 s2707 = s2706 ? s2597 : s2598;
-  const SWord8 s2708 = 1 & s2707;
-  const SBool  s2709 = 0 != s2708;
-  const SWord8 s2710 = s2709 ? s2603 : s2604;
-  const SWord8 s2711 = 1 & s2710;
-  const SBool  s2712 = 0 != s2711;
-  const SBool  s2713 = 0 == s2712;
-  const SBool  s2714 = s2704 < s1;
-  const SBool  s2715 = s2704 < s2593;
-  const SBool  s2716 = s2714 | s2715;
-  const SWord8 s2717 = (s2704 >> 1) | (s2704 << 7);
-  const SWord8 s2718 = 128 | s2717;
-  const SWord8 s2719 = 127 & s2717;
-  const SWord8 s2720 = s2716 ? s2718 : s2719;
-  const SWord8 s2721 = (s2720 >> 1) | (s2720 << 7);
-  const SWord8 s2722 = 128 | s2721;
-  const SWord8 s2723 = 127 & s2721;
-  const SWord8 s2724 = s2566 ? s2722 : s2723;
-  const SWord8 s2725 = (s2724 >> 1) | (s2724 << 7);
-  const SWord8 s2726 = 128 | s2725;
-  const SWord8 s2727 = 127 & s2725;
-  const SWord8 s2728 = s2588 ? s2726 : s2727;
-  const SWord8 s2729 = (s2728 >> 1) | (s2728 << 7);
-  const SWord8 s2730 = 128 | s2729;
-  const SWord8 s2731 = 127 & s2729;
-  const SWord8 s2732 = s2712 ? s2730 : s2731;
-  const SWord8 s2733 = s1 + s2728;
-  const SBool  s2734 = s2733 < s1;
-  const SBool  s2735 = s2733 < s2728;
-  const SBool  s2736 = s2734 | s2735;
-  const SWord8 s2737 = (s2733 >> 1) | (s2733 << 7);
-  const SWord8 s2738 = 128 | s2737;
-  const SWord8 s2739 = 127 & s2737;
-  const SWord8 s2740 = s2736 ? s2738 : s2739;
-  const SWord8 s2741 = s2713 ? s2732 : s2740;
-  const SWord8 s2742 = s1 + s2724;
-  const SBool  s2743 = s2742 < s1;
-  const SBool  s2744 = s2742 < s2724;
-  const SBool  s2745 = s2743 | s2744;
-  const SWord8 s2746 = (s2742 >> 1) | (s2742 << 7);
-  const SWord8 s2747 = 128 | s2746;
-  const SWord8 s2748 = 127 & s2746;
-  const SWord8 s2749 = s2745 ? s2747 : s2748;
-  const SWord8 s2750 = (s2749 >> 1) | (s2749 << 7);
-  const SWord8 s2751 = 128 | s2750;
-  const SWord8 s2752 = 127 & s2750;
-  const SWord8 s2753 = s2712 ? s2751 : s2752;
-  const SWord8 s2754 = s1 + s2749;
-  const SBool  s2755 = s2754 < s1;
-  const SBool  s2756 = s2754 < s2749;
-  const SBool  s2757 = s2755 | s2756;
-  const SWord8 s2758 = (s2754 >> 1) | (s2754 << 7);
-  const SWord8 s2759 = 128 | s2758;
-  const SWord8 s2760 = 127 & s2758;
-  const SWord8 s2761 = s2757 ? s2759 : s2760;
-  const SWord8 s2762 = s2713 ? s2753 : s2761;
-  const SWord8 s2763 = s2589 ? s2741 : s2762;
-  const SWord8 s2764 = s1 + s2720;
-  const SBool  s2765 = s2764 < s1;
-  const SBool  s2766 = s2764 < s2720;
-  const SBool  s2767 = s2765 | s2766;
-  const SWord8 s2768 = (s2764 >> 1) | (s2764 << 7);
-  const SWord8 s2769 = 128 | s2768;
-  const SWord8 s2770 = 127 & s2768;
-  const SWord8 s2771 = s2767 ? s2769 : s2770;
-  const SWord8 s2772 = (s2771 >> 1) | (s2771 << 7);
-  const SWord8 s2773 = 128 | s2772;
-  const SWord8 s2774 = 127 & s2772;
-  const SWord8 s2775 = s2588 ? s2773 : s2774;
-  const SWord8 s2776 = (s2775 >> 1) | (s2775 << 7);
-  const SWord8 s2777 = 128 | s2776;
-  const SWord8 s2778 = 127 & s2776;
-  const SWord8 s2779 = s2712 ? s2777 : s2778;
-  const SWord8 s2780 = s1 + s2775;
-  const SBool  s2781 = s2780 < s1;
-  const SBool  s2782 = s2780 < s2775;
-  const SBool  s2783 = s2781 | s2782;
-  const SWord8 s2784 = (s2780 >> 1) | (s2780 << 7);
-  const SWord8 s2785 = 128 | s2784;
-  const SWord8 s2786 = 127 & s2784;
-  const SWord8 s2787 = s2783 ? s2785 : s2786;
-  const SWord8 s2788 = s2713 ? s2779 : s2787;
-  const SWord8 s2789 = s1 + s2771;
-  const SBool  s2790 = s2789 < s1;
-  const SBool  s2791 = s2789 < s2771;
-  const SBool  s2792 = s2790 | s2791;
-  const SWord8 s2793 = (s2789 >> 1) | (s2789 << 7);
-  const SWord8 s2794 = 128 | s2793;
-  const SWord8 s2795 = 127 & s2793;
-  const SWord8 s2796 = s2792 ? s2794 : s2795;
-  const SWord8 s2797 = (s2796 >> 1) | (s2796 << 7);
-  const SWord8 s2798 = 128 | s2797;
-  const SWord8 s2799 = 127 & s2797;
-  const SWord8 s2800 = s2712 ? s2798 : s2799;
-  const SWord8 s2801 = s1 + s2796;
-  const SBool  s2802 = s2801 < s1;
-  const SBool  s2803 = s2801 < s2796;
-  const SBool  s2804 = s2802 | s2803;
-  const SWord8 s2805 = (s2801 >> 1) | (s2801 << 7);
-  const SWord8 s2806 = 128 | s2805;
-  const SWord8 s2807 = 127 & s2805;
-  const SWord8 s2808 = s2804 ? s2806 : s2807;
-  const SWord8 s2809 = s2713 ? s2800 : s2808;
-  const SWord8 s2810 = s2589 ? s2788 : s2809;
-  const SWord8 s2811 = s2567 ? s2763 : s2810;
-  const SWord8 s2812 = s2059 ? s2703 : s2811;
-  const SWord8 s2813 = s1 + s2574;
-  const SWord8 s2814 = 1 & s2813;
-  const SBool  s2815 = 0 != s2814;
-  const SWord8 s2816 = s2815 ? s2578 : s2579;
-  const SWord8 s2817 = 1 & s2816;
-  const SBool  s2818 = 0 != s2817;
-  const SWord8 s2819 = s2818 ? s2584 : s2585;
-  const SWord8 s2820 = 1 & s2819;
-  const SBool  s2821 = 0 != s2820;
-  const SBool  s2822 = 0 == s2821;
-  const SBool  s2823 = s2813 < s1;
-  const SBool  s2824 = s2813 < s2574;
-  const SBool  s2825 = s2823 | s2824;
-  const SWord8 s2826 = (s2813 >> 1) | (s2813 << 7);
-  const SWord8 s2827 = 128 | s2826;
-  const SWord8 s2828 = 127 & s2826;
-  const SWord8 s2829 = s2825 ? s2827 : s2828;
-  const SWord8 s2830 = 1 & s2829;
-  const SBool  s2831 = 0 != s2830;
-  const SWord8 s2832 = (s2816 >> 1) | (s2816 << 7);
-  const SWord8 s2833 = 128 | s2832;
-  const SWord8 s2834 = 127 & s2832;
-  const SWord8 s2835 = s2831 ? s2833 : s2834;
-  const SWord8 s2836 = 1 & s2835;
-  const SBool  s2837 = 0 != s2836;
-  const SWord8 s2838 = (s2819 >> 1) | (s2819 << 7);
-  const SWord8 s2839 = 128 | s2838;
-  const SWord8 s2840 = 127 & s2838;
-  const SWord8 s2841 = s2837 ? s2839 : s2840;
-  const SWord8 s2842 = 1 & s2841;
-  const SBool  s2843 = 0 != s2842;
-  const SBool  s2844 = 0 == s2843;
-  const SWord8 s2845 = (s2829 >> 1) | (s2829 << 7);
-  const SWord8 s2846 = 128 | s2845;
-  const SWord8 s2847 = 127 & s2845;
-  const SWord8 s2848 = s2058 ? s2846 : s2847;
-  const SWord8 s2849 = (s2848 >> 1) | (s2848 << 7);
-  const SWord8 s2850 = 128 | s2849;
-  const SWord8 s2851 = 127 & s2849;
-  const SWord8 s2852 = s2566 ? s2850 : s2851;
-  const SWord8 s2853 = (s2852 >> 1) | (s2852 << 7);
-  const SWord8 s2854 = 128 | s2853;
-  const SWord8 s2855 = 127 & s2853;
-  const SWord8 s2856 = s2821 ? s2854 : s2855;
-  const SWord8 s2857 = (s2856 >> 1) | (s2856 << 7);
-  const SWord8 s2858 = 128 | s2857;
-  const SWord8 s2859 = 127 & s2857;
-  const SWord8 s2860 = s2843 ? s2858 : s2859;
-  const SWord8 s2861 = s1 + s2856;
-  const SBool  s2862 = s2861 < s1;
-  const SBool  s2863 = s2861 < s2856;
-  const SBool  s2864 = s2862 | s2863;
-  const SWord8 s2865 = (s2861 >> 1) | (s2861 << 7);
-  const SWord8 s2866 = 128 | s2865;
-  const SWord8 s2867 = 127 & s2865;
-  const SWord8 s2868 = s2864 ? s2866 : s2867;
-  const SWord8 s2869 = s2844 ? s2860 : s2868;
-  const SWord8 s2870 = s1 + s2852;
-  const SBool  s2871 = s2870 < s1;
-  const SBool  s2872 = s2870 < s2852;
-  const SBool  s2873 = s2871 | s2872;
-  const SWord8 s2874 = (s2870 >> 1) | (s2870 << 7);
-  const SWord8 s2875 = 128 | s2874;
-  const SWord8 s2876 = 127 & s2874;
-  const SWord8 s2877 = s2873 ? s2875 : s2876;
-  const SWord8 s2878 = (s2877 >> 1) | (s2877 << 7);
-  const SWord8 s2879 = 128 | s2878;
-  const SWord8 s2880 = 127 & s2878;
-  const SWord8 s2881 = s2843 ? s2879 : s2880;
-  const SWord8 s2882 = s1 + s2877;
-  const SBool  s2883 = s2882 < s1;
-  const SBool  s2884 = s2882 < s2877;
-  const SBool  s2885 = s2883 | s2884;
-  const SWord8 s2886 = (s2882 >> 1) | (s2882 << 7);
-  const SWord8 s2887 = 128 | s2886;
-  const SWord8 s2888 = 127 & s2886;
-  const SWord8 s2889 = s2885 ? s2887 : s2888;
-  const SWord8 s2890 = s2844 ? s2881 : s2889;
-  const SWord8 s2891 = s2822 ? s2869 : s2890;
-  const SWord8 s2892 = s1 + s2848;
-  const SBool  s2893 = s2892 < s1;
-  const SBool  s2894 = s2892 < s2848;
-  const SBool  s2895 = s2893 | s2894;
-  const SWord8 s2896 = (s2892 >> 1) | (s2892 << 7);
-  const SWord8 s2897 = 128 | s2896;
-  const SWord8 s2898 = 127 & s2896;
-  const SWord8 s2899 = s2895 ? s2897 : s2898;
-  const SWord8 s2900 = (s2899 >> 1) | (s2899 << 7);
-  const SWord8 s2901 = 128 | s2900;
-  const SWord8 s2902 = 127 & s2900;
-  const SWord8 s2903 = s2821 ? s2901 : s2902;
-  const SWord8 s2904 = (s2903 >> 1) | (s2903 << 7);
-  const SWord8 s2905 = 128 | s2904;
-  const SWord8 s2906 = 127 & s2904;
-  const SWord8 s2907 = s2843 ? s2905 : s2906;
-  const SWord8 s2908 = s1 + s2903;
-  const SBool  s2909 = s2908 < s1;
-  const SBool  s2910 = s2908 < s2903;
-  const SBool  s2911 = s2909 | s2910;
-  const SWord8 s2912 = (s2908 >> 1) | (s2908 << 7);
-  const SWord8 s2913 = 128 | s2912;
-  const SWord8 s2914 = 127 & s2912;
-  const SWord8 s2915 = s2911 ? s2913 : s2914;
-  const SWord8 s2916 = s2844 ? s2907 : s2915;
-  const SWord8 s2917 = s1 + s2899;
-  const SBool  s2918 = s2917 < s1;
-  const SBool  s2919 = s2917 < s2899;
-  const SBool  s2920 = s2918 | s2919;
-  const SWord8 s2921 = (s2917 >> 1) | (s2917 << 7);
-  const SWord8 s2922 = 128 | s2921;
-  const SWord8 s2923 = 127 & s2921;
-  const SWord8 s2924 = s2920 ? s2922 : s2923;
-  const SWord8 s2925 = (s2924 >> 1) | (s2924 << 7);
-  const SWord8 s2926 = 128 | s2925;
-  const SWord8 s2927 = 127 & s2925;
-  const SWord8 s2928 = s2843 ? s2926 : s2927;
-  const SWord8 s2929 = s1 + s2924;
-  const SBool  s2930 = s2929 < s1;
-  const SBool  s2931 = s2929 < s2924;
-  const SBool  s2932 = s2930 | s2931;
-  const SWord8 s2933 = (s2929 >> 1) | (s2929 << 7);
-  const SWord8 s2934 = 128 | s2933;
-  const SWord8 s2935 = 127 & s2933;
-  const SWord8 s2936 = s2932 ? s2934 : s2935;
-  const SWord8 s2937 = s2844 ? s2928 : s2936;
-  const SWord8 s2938 = s2822 ? s2916 : s2937;
-  const SWord8 s2939 = s2567 ? s2891 : s2938;
-  const SWord8 s2940 = s1 + s2829;
-  const SWord8 s2941 = 1 & s2940;
-  const SBool  s2942 = 0 != s2941;
-  const SWord8 s2943 = s2942 ? s2833 : s2834;
-  const SWord8 s2944 = 1 & s2943;
-  const SBool  s2945 = 0 != s2944;
-  const SWord8 s2946 = s2945 ? s2839 : s2840;
-  const SWord8 s2947 = 1 & s2946;
-  const SBool  s2948 = 0 != s2947;
-  const SBool  s2949 = 0 == s2948;
-  const SBool  s2950 = s2940 < s1;
-  const SBool  s2951 = s2940 < s2829;
-  const SBool  s2952 = s2950 | s2951;
-  const SWord8 s2953 = (s2940 >> 1) | (s2940 << 7);
-  const SWord8 s2954 = 128 | s2953;
-  const SWord8 s2955 = 127 & s2953;
-  const SWord8 s2956 = s2952 ? s2954 : s2955;
-  const SWord8 s2957 = (s2956 >> 1) | (s2956 << 7);
-  const SWord8 s2958 = 128 | s2957;
-  const SWord8 s2959 = 127 & s2957;
-  const SWord8 s2960 = s2566 ? s2958 : s2959;
-  const SWord8 s2961 = (s2960 >> 1) | (s2960 << 7);
-  const SWord8 s2962 = 128 | s2961;
-  const SWord8 s2963 = 127 & s2961;
-  const SWord8 s2964 = s2821 ? s2962 : s2963;
-  const SWord8 s2965 = (s2964 >> 1) | (s2964 << 7);
-  const SWord8 s2966 = 128 | s2965;
-  const SWord8 s2967 = 127 & s2965;
-  const SWord8 s2968 = s2948 ? s2966 : s2967;
-  const SWord8 s2969 = s1 + s2964;
-  const SBool  s2970 = s2969 < s1;
-  const SBool  s2971 = s2969 < s2964;
-  const SBool  s2972 = s2970 | s2971;
-  const SWord8 s2973 = (s2969 >> 1) | (s2969 << 7);
-  const SWord8 s2974 = 128 | s2973;
-  const SWord8 s2975 = 127 & s2973;
-  const SWord8 s2976 = s2972 ? s2974 : s2975;
-  const SWord8 s2977 = s2949 ? s2968 : s2976;
-  const SWord8 s2978 = s1 + s2960;
-  const SBool  s2979 = s2978 < s1;
-  const SBool  s2980 = s2978 < s2960;
-  const SBool  s2981 = s2979 | s2980;
-  const SWord8 s2982 = (s2978 >> 1) | (s2978 << 7);
-  const SWord8 s2983 = 128 | s2982;
-  const SWord8 s2984 = 127 & s2982;
-  const SWord8 s2985 = s2981 ? s2983 : s2984;
-  const SWord8 s2986 = (s2985 >> 1) | (s2985 << 7);
-  const SWord8 s2987 = 128 | s2986;
-  const SWord8 s2988 = 127 & s2986;
-  const SWord8 s2989 = s2948 ? s2987 : s2988;
-  const SWord8 s2990 = s1 + s2985;
-  const SBool  s2991 = s2990 < s1;
-  const SBool  s2992 = s2990 < s2985;
-  const SBool  s2993 = s2991 | s2992;
-  const SWord8 s2994 = (s2990 >> 1) | (s2990 << 7);
-  const SWord8 s2995 = 128 | s2994;
-  const SWord8 s2996 = 127 & s2994;
-  const SWord8 s2997 = s2993 ? s2995 : s2996;
-  const SWord8 s2998 = s2949 ? s2989 : s2997;
-  const SWord8 s2999 = s2822 ? s2977 : s2998;
-  const SWord8 s3000 = s1 + s2956;
-  const SBool  s3001 = s3000 < s1;
-  const SBool  s3002 = s3000 < s2956;
-  const SBool  s3003 = s3001 | s3002;
-  const SWord8 s3004 = (s3000 >> 1) | (s3000 << 7);
-  const SWord8 s3005 = 128 | s3004;
-  const SWord8 s3006 = 127 & s3004;
-  const SWord8 s3007 = s3003 ? s3005 : s3006;
-  const SWord8 s3008 = (s3007 >> 1) | (s3007 << 7);
-  const SWord8 s3009 = 128 | s3008;
-  const SWord8 s3010 = 127 & s3008;
-  const SWord8 s3011 = s2821 ? s3009 : s3010;
-  const SWord8 s3012 = (s3011 >> 1) | (s3011 << 7);
-  const SWord8 s3013 = 128 | s3012;
-  const SWord8 s3014 = 127 & s3012;
-  const SWord8 s3015 = s2948 ? s3013 : s3014;
-  const SWord8 s3016 = s1 + s3011;
-  const SBool  s3017 = s3016 < s1;
-  const SBool  s3018 = s3016 < s3011;
-  const SBool  s3019 = s3017 | s3018;
-  const SWord8 s3020 = (s3016 >> 1) | (s3016 << 7);
-  const SWord8 s3021 = 128 | s3020;
-  const SWord8 s3022 = 127 & s3020;
-  const SWord8 s3023 = s3019 ? s3021 : s3022;
-  const SWord8 s3024 = s2949 ? s3015 : s3023;
-  const SWord8 s3025 = s1 + s3007;
-  const SBool  s3026 = s3025 < s1;
-  const SBool  s3027 = s3025 < s3007;
-  const SBool  s3028 = s3026 | s3027;
-  const SWord8 s3029 = (s3025 >> 1) | (s3025 << 7);
-  const SWord8 s3030 = 128 | s3029;
-  const SWord8 s3031 = 127 & s3029;
-  const SWord8 s3032 = s3028 ? s3030 : s3031;
-  const SWord8 s3033 = (s3032 >> 1) | (s3032 << 7);
-  const SWord8 s3034 = 128 | s3033;
-  const SWord8 s3035 = 127 & s3033;
-  const SWord8 s3036 = s2948 ? s3034 : s3035;
-  const SWord8 s3037 = s1 + s3032;
-  const SBool  s3038 = s3037 < s1;
-  const SBool  s3039 = s3037 < s3032;
-  const SBool  s3040 = s3038 | s3039;
-  const SWord8 s3041 = (s3037 >> 1) | (s3037 << 7);
-  const SWord8 s3042 = 128 | s3041;
-  const SWord8 s3043 = 127 & s3041;
-  const SWord8 s3044 = s3040 ? s3042 : s3043;
-  const SWord8 s3045 = s2949 ? s3036 : s3044;
-  const SWord8 s3046 = s2822 ? s3024 : s3045;
-  const SWord8 s3047 = s2567 ? s2999 : s3046;
-  const SWord8 s3048 = s2059 ? s2939 : s3047;
-  const SWord8 s3049 = s2042 ? s2812 : s3048;
-  const SWord8 s3050 = s17 ? s2557 : s3049;
-  const SWord8 s3051 = s1 + s2044;
-  const SWord8 s3052 = 1 & s3051;
-  const SBool  s3053 = 0 != s3052;
-  const SWord8 s3054 = s3053 ? s2048 : s2049;
-  const SWord8 s3055 = 1 & s3054;
-  const SBool  s3056 = 0 != s3055;
-  const SWord8 s3057 = s3056 ? s2054 : s2055;
-  const SWord8 s3058 = 1 & s3057;
-  const SBool  s3059 = 0 != s3058;
-  const SBool  s3060 = 0 == s3059;
-  const SBool  s3061 = s3051 < s1;
-  const SBool  s3062 = s3051 < s2044;
-  const SBool  s3063 = s3061 | s3062;
-  const SWord8 s3064 = (s3051 >> 1) | (s3051 << 7);
-  const SWord8 s3065 = 128 | s3064;
-  const SWord8 s3066 = 127 & s3064;
-  const SWord8 s3067 = s3063 ? s3065 : s3066;
-  const SWord8 s3068 = 1 & s3067;
-  const SBool  s3069 = 0 != s3068;
-  const SWord8 s3070 = (s3054 >> 1) | (s3054 << 7);
-  const SWord8 s3071 = 128 | s3070;
-  const SWord8 s3072 = 127 & s3070;
-  const SWord8 s3073 = s3069 ? s3071 : s3072;
-  const SWord8 s3074 = 1 & s3073;
-  const SBool  s3075 = 0 != s3074;
-  const SWord8 s3076 = (s3057 >> 1) | (s3057 << 7);
-  const SWord8 s3077 = 128 | s3076;
-  const SWord8 s3078 = 127 & s3076;
-  const SWord8 s3079 = s3075 ? s3077 : s3078;
-  const SWord8 s3080 = 1 & s3079;
-  const SBool  s3081 = 0 != s3080;
-  const SBool  s3082 = 0 == s3081;
-  const SWord8 s3083 = (s3067 >> 1) | (s3067 << 7);
-  const SWord8 s3084 = 128 | s3083;
-  const SWord8 s3085 = 127 & s3083;
-  const SWord8 s3086 = s16 ? s3084 : s3085;
-  const SWord8 s3087 = 1 & s3086;
-  const SBool  s3088 = 0 != s3087;
-  const SWord8 s3089 = (s3073 >> 1) | (s3073 << 7);
-  const SWord8 s3090 = 128 | s3089;
-  const SWord8 s3091 = 127 & s3089;
-  const SWord8 s3092 = s3088 ? s3090 : s3091;
-  const SWord8 s3093 = 1 & s3092;
-  const SBool  s3094 = 0 != s3093;
-  const SWord8 s3095 = (s3079 >> 1) | (s3079 << 7);
-  const SWord8 s3096 = 128 | s3095;
-  const SWord8 s3097 = 127 & s3095;
-  const SWord8 s3098 = s3094 ? s3096 : s3097;
-  const SWord8 s3099 = 1 & s3098;
-  const SBool  s3100 = 0 != s3099;
-  const SBool  s3101 = 0 == s3100;
-  const SWord8 s3102 = (s3086 >> 1) | (s3086 << 7);
-  const SWord8 s3103 = 128 | s3102;
-  const SWord8 s3104 = 127 & s3102;
-  const SWord8 s3105 = s2041 ? s3103 : s3104;
-  const SWord8 s3106 = 1 & s3105;
-  const SBool  s3107 = 0 != s3106;
-  const SWord8 s3108 = (s3092 >> 1) | (s3092 << 7);
-  const SWord8 s3109 = 128 | s3108;
-  const SWord8 s3110 = 127 & s3108;
-  const SWord8 s3111 = s3107 ? s3109 : s3110;
-  const SWord8 s3112 = 1 & s3111;
-  const SBool  s3113 = 0 != s3112;
-  const SWord8 s3114 = (s3098 >> 1) | (s3098 << 7);
-  const SWord8 s3115 = 128 | s3114;
-  const SWord8 s3116 = 127 & s3114;
-  const SWord8 s3117 = s3113 ? s3115 : s3116;
-  const SWord8 s3118 = 1 & s3117;
-  const SBool  s3119 = 0 != s3118;
-  const SBool  s3120 = 0 == s3119;
-  const SWord8 s3121 = (s3105 >> 1) | (s3105 << 7);
-  const SWord8 s3122 = 128 | s3121;
-  const SWord8 s3123 = 127 & s3121;
-  const SWord8 s3124 = s3059 ? s3122 : s3123;
-  const SWord8 s3125 = (s3124 >> 1) | (s3124 << 7);
-  const SWord8 s3126 = 128 | s3125;
-  const SWord8 s3127 = 127 & s3125;
-  const SWord8 s3128 = s3081 ? s3126 : s3127;
-  const SWord8 s3129 = (s3128 >> 1) | (s3128 << 7);
-  const SWord8 s3130 = 128 | s3129;
-  const SWord8 s3131 = 127 & s3129;
-  const SWord8 s3132 = s3100 ? s3130 : s3131;
-  const SWord8 s3133 = (s3132 >> 1) | (s3132 << 7);
-  const SWord8 s3134 = 128 | s3133;
-  const SWord8 s3135 = 127 & s3133;
-  const SWord8 s3136 = s3119 ? s3134 : s3135;
-  const SWord8 s3137 = s1 + s3132;
-  const SBool  s3138 = s3137 < s1;
-  const SBool  s3139 = s3137 < s3132;
-  const SBool  s3140 = s3138 | s3139;
-  const SWord8 s3141 = (s3137 >> 1) | (s3137 << 7);
-  const SWord8 s3142 = 128 | s3141;
-  const SWord8 s3143 = 127 & s3141;
-  const SWord8 s3144 = s3140 ? s3142 : s3143;
-  const SWord8 s3145 = s3120 ? s3136 : s3144;
-  const SWord8 s3146 = s1 + s3128;
-  const SBool  s3147 = s3146 < s1;
-  const SBool  s3148 = s3146 < s3128;
-  const SBool  s3149 = s3147 | s3148;
-  const SWord8 s3150 = (s3146 >> 1) | (s3146 << 7);
-  const SWord8 s3151 = 128 | s3150;
-  const SWord8 s3152 = 127 & s3150;
-  const SWord8 s3153 = s3149 ? s3151 : s3152;
-  const SWord8 s3154 = (s3153 >> 1) | (s3153 << 7);
-  const SWord8 s3155 = 128 | s3154;
-  const SWord8 s3156 = 127 & s3154;
-  const SWord8 s3157 = s3119 ? s3155 : s3156;
-  const SWord8 s3158 = s1 + s3153;
-  const SBool  s3159 = s3158 < s1;
-  const SBool  s3160 = s3158 < s3153;
-  const SBool  s3161 = s3159 | s3160;
-  const SWord8 s3162 = (s3158 >> 1) | (s3158 << 7);
-  const SWord8 s3163 = 128 | s3162;
-  const SWord8 s3164 = 127 & s3162;
-  const SWord8 s3165 = s3161 ? s3163 : s3164;
-  const SWord8 s3166 = s3120 ? s3157 : s3165;
-  const SWord8 s3167 = s3101 ? s3145 : s3166;
-  const SWord8 s3168 = s1 + s3124;
-  const SBool  s3169 = s3168 < s1;
-  const SBool  s3170 = s3168 < s3124;
-  const SBool  s3171 = s3169 | s3170;
-  const SWord8 s3172 = (s3168 >> 1) | (s3168 << 7);
-  const SWord8 s3173 = 128 | s3172;
-  const SWord8 s3174 = 127 & s3172;
-  const SWord8 s3175 = s3171 ? s3173 : s3174;
-  const SWord8 s3176 = (s3175 >> 1) | (s3175 << 7);
-  const SWord8 s3177 = 128 | s3176;
-  const SWord8 s3178 = 127 & s3176;
-  const SWord8 s3179 = s3100 ? s3177 : s3178;
-  const SWord8 s3180 = (s3179 >> 1) | (s3179 << 7);
-  const SWord8 s3181 = 128 | s3180;
-  const SWord8 s3182 = 127 & s3180;
-  const SWord8 s3183 = s3119 ? s3181 : s3182;
-  const SWord8 s3184 = s1 + s3179;
-  const SBool  s3185 = s3184 < s1;
-  const SBool  s3186 = s3184 < s3179;
-  const SBool  s3187 = s3185 | s3186;
-  const SWord8 s3188 = (s3184 >> 1) | (s3184 << 7);
-  const SWord8 s3189 = 128 | s3188;
-  const SWord8 s3190 = 127 & s3188;
-  const SWord8 s3191 = s3187 ? s3189 : s3190;
-  const SWord8 s3192 = s3120 ? s3183 : s3191;
-  const SWord8 s3193 = s1 + s3175;
-  const SBool  s3194 = s3193 < s1;
-  const SBool  s3195 = s3193 < s3175;
-  const SBool  s3196 = s3194 | s3195;
-  const SWord8 s3197 = (s3193 >> 1) | (s3193 << 7);
-  const SWord8 s3198 = 128 | s3197;
-  const SWord8 s3199 = 127 & s3197;
-  const SWord8 s3200 = s3196 ? s3198 : s3199;
-  const SWord8 s3201 = (s3200 >> 1) | (s3200 << 7);
-  const SWord8 s3202 = 128 | s3201;
-  const SWord8 s3203 = 127 & s3201;
-  const SWord8 s3204 = s3119 ? s3202 : s3203;
-  const SWord8 s3205 = s1 + s3200;
-  const SBool  s3206 = s3205 < s1;
-  const SBool  s3207 = s3205 < s3200;
-  const SBool  s3208 = s3206 | s3207;
-  const SWord8 s3209 = (s3205 >> 1) | (s3205 << 7);
-  const SWord8 s3210 = 128 | s3209;
-  const SWord8 s3211 = 127 & s3209;
-  const SWord8 s3212 = s3208 ? s3210 : s3211;
-  const SWord8 s3213 = s3120 ? s3204 : s3212;
-  const SWord8 s3214 = s3101 ? s3192 : s3213;
-  const SWord8 s3215 = s3082 ? s3167 : s3214;
-  const SWord8 s3216 = s1 + s3105;
-  const SWord8 s3217 = 1 & s3216;
-  const SBool  s3218 = 0 != s3217;
-  const SWord8 s3219 = s3218 ? s3109 : s3110;
-  const SWord8 s3220 = 1 & s3219;
-  const SBool  s3221 = 0 != s3220;
-  const SWord8 s3222 = s3221 ? s3115 : s3116;
-  const SWord8 s3223 = 1 & s3222;
-  const SBool  s3224 = 0 != s3223;
-  const SBool  s3225 = 0 == s3224;
-  const SBool  s3226 = s3216 < s1;
-  const SBool  s3227 = s3216 < s3105;
-  const SBool  s3228 = s3226 | s3227;
-  const SWord8 s3229 = (s3216 >> 1) | (s3216 << 7);
-  const SWord8 s3230 = 128 | s3229;
-  const SWord8 s3231 = 127 & s3229;
-  const SWord8 s3232 = s3228 ? s3230 : s3231;
-  const SWord8 s3233 = (s3232 >> 1) | (s3232 << 7);
-  const SWord8 s3234 = 128 | s3233;
-  const SWord8 s3235 = 127 & s3233;
-  const SWord8 s3236 = s3081 ? s3234 : s3235;
-  const SWord8 s3237 = (s3236 >> 1) | (s3236 << 7);
-  const SWord8 s3238 = 128 | s3237;
-  const SWord8 s3239 = 127 & s3237;
-  const SWord8 s3240 = s3100 ? s3238 : s3239;
-  const SWord8 s3241 = (s3240 >> 1) | (s3240 << 7);
-  const SWord8 s3242 = 128 | s3241;
-  const SWord8 s3243 = 127 & s3241;
-  const SWord8 s3244 = s3224 ? s3242 : s3243;
-  const SWord8 s3245 = s1 + s3240;
-  const SBool  s3246 = s3245 < s1;
-  const SBool  s3247 = s3245 < s3240;
-  const SBool  s3248 = s3246 | s3247;
-  const SWord8 s3249 = (s3245 >> 1) | (s3245 << 7);
-  const SWord8 s3250 = 128 | s3249;
-  const SWord8 s3251 = 127 & s3249;
-  const SWord8 s3252 = s3248 ? s3250 : s3251;
-  const SWord8 s3253 = s3225 ? s3244 : s3252;
-  const SWord8 s3254 = s1 + s3236;
-  const SBool  s3255 = s3254 < s1;
-  const SBool  s3256 = s3254 < s3236;
-  const SBool  s3257 = s3255 | s3256;
-  const SWord8 s3258 = (s3254 >> 1) | (s3254 << 7);
-  const SWord8 s3259 = 128 | s3258;
-  const SWord8 s3260 = 127 & s3258;
-  const SWord8 s3261 = s3257 ? s3259 : s3260;
-  const SWord8 s3262 = (s3261 >> 1) | (s3261 << 7);
-  const SWord8 s3263 = 128 | s3262;
-  const SWord8 s3264 = 127 & s3262;
-  const SWord8 s3265 = s3224 ? s3263 : s3264;
-  const SWord8 s3266 = s1 + s3261;
-  const SBool  s3267 = s3266 < s1;
-  const SBool  s3268 = s3266 < s3261;
-  const SBool  s3269 = s3267 | s3268;
-  const SWord8 s3270 = (s3266 >> 1) | (s3266 << 7);
-  const SWord8 s3271 = 128 | s3270;
-  const SWord8 s3272 = 127 & s3270;
-  const SWord8 s3273 = s3269 ? s3271 : s3272;
-  const SWord8 s3274 = s3225 ? s3265 : s3273;
-  const SWord8 s3275 = s3101 ? s3253 : s3274;
-  const SWord8 s3276 = s1 + s3232;
-  const SBool  s3277 = s3276 < s1;
-  const SBool  s3278 = s3276 < s3232;
-  const SBool  s3279 = s3277 | s3278;
-  const SWord8 s3280 = (s3276 >> 1) | (s3276 << 7);
-  const SWord8 s3281 = 128 | s3280;
-  const SWord8 s3282 = 127 & s3280;
-  const SWord8 s3283 = s3279 ? s3281 : s3282;
-  const SWord8 s3284 = (s3283 >> 1) | (s3283 << 7);
-  const SWord8 s3285 = 128 | s3284;
-  const SWord8 s3286 = 127 & s3284;
-  const SWord8 s3287 = s3100 ? s3285 : s3286;
-  const SWord8 s3288 = (s3287 >> 1) | (s3287 << 7);
-  const SWord8 s3289 = 128 | s3288;
-  const SWord8 s3290 = 127 & s3288;
-  const SWord8 s3291 = s3224 ? s3289 : s3290;
-  const SWord8 s3292 = s1 + s3287;
-  const SBool  s3293 = s3292 < s1;
-  const SBool  s3294 = s3292 < s3287;
-  const SBool  s3295 = s3293 | s3294;
-  const SWord8 s3296 = (s3292 >> 1) | (s3292 << 7);
-  const SWord8 s3297 = 128 | s3296;
-  const SWord8 s3298 = 127 & s3296;
-  const SWord8 s3299 = s3295 ? s3297 : s3298;
-  const SWord8 s3300 = s3225 ? s3291 : s3299;
-  const SWord8 s3301 = s1 + s3283;
-  const SBool  s3302 = s3301 < s1;
-  const SBool  s3303 = s3301 < s3283;
-  const SBool  s3304 = s3302 | s3303;
-  const SWord8 s3305 = (s3301 >> 1) | (s3301 << 7);
-  const SWord8 s3306 = 128 | s3305;
-  const SWord8 s3307 = 127 & s3305;
-  const SWord8 s3308 = s3304 ? s3306 : s3307;
-  const SWord8 s3309 = (s3308 >> 1) | (s3308 << 7);
-  const SWord8 s3310 = 128 | s3309;
-  const SWord8 s3311 = 127 & s3309;
-  const SWord8 s3312 = s3224 ? s3310 : s3311;
-  const SWord8 s3313 = s1 + s3308;
-  const SBool  s3314 = s3313 < s1;
-  const SBool  s3315 = s3313 < s3308;
-  const SBool  s3316 = s3314 | s3315;
-  const SWord8 s3317 = (s3313 >> 1) | (s3313 << 7);
-  const SWord8 s3318 = 128 | s3317;
-  const SWord8 s3319 = 127 & s3317;
-  const SWord8 s3320 = s3316 ? s3318 : s3319;
-  const SWord8 s3321 = s3225 ? s3312 : s3320;
-  const SWord8 s3322 = s3101 ? s3300 : s3321;
-  const SWord8 s3323 = s3082 ? s3275 : s3322;
-  const SWord8 s3324 = s3060 ? s3215 : s3323;
-  const SWord8 s3325 = s1 + s3086;
-  const SWord8 s3326 = 1 & s3325;
-  const SBool  s3327 = 0 != s3326;
-  const SWord8 s3328 = s3327 ? s3090 : s3091;
-  const SWord8 s3329 = 1 & s3328;
-  const SBool  s3330 = 0 != s3329;
-  const SWord8 s3331 = s3330 ? s3096 : s3097;
-  const SWord8 s3332 = 1 & s3331;
-  const SBool  s3333 = 0 != s3332;
-  const SBool  s3334 = 0 == s3333;
-  const SBool  s3335 = s3325 < s1;
-  const SBool  s3336 = s3325 < s3086;
-  const SBool  s3337 = s3335 | s3336;
-  const SWord8 s3338 = (s3325 >> 1) | (s3325 << 7);
-  const SWord8 s3339 = 128 | s3338;
-  const SWord8 s3340 = 127 & s3338;
-  const SWord8 s3341 = s3337 ? s3339 : s3340;
-  const SWord8 s3342 = 1 & s3341;
-  const SBool  s3343 = 0 != s3342;
-  const SWord8 s3344 = (s3328 >> 1) | (s3328 << 7);
-  const SWord8 s3345 = 128 | s3344;
-  const SWord8 s3346 = 127 & s3344;
-  const SWord8 s3347 = s3343 ? s3345 : s3346;
-  const SWord8 s3348 = 1 & s3347;
-  const SBool  s3349 = 0 != s3348;
-  const SWord8 s3350 = (s3331 >> 1) | (s3331 << 7);
-  const SWord8 s3351 = 128 | s3350;
-  const SWord8 s3352 = 127 & s3350;
-  const SWord8 s3353 = s3349 ? s3351 : s3352;
-  const SWord8 s3354 = 1 & s3353;
-  const SBool  s3355 = 0 != s3354;
-  const SBool  s3356 = 0 == s3355;
-  const SWord8 s3357 = (s3341 >> 1) | (s3341 << 7);
-  const SWord8 s3358 = 128 | s3357;
-  const SWord8 s3359 = 127 & s3357;
-  const SWord8 s3360 = s3059 ? s3358 : s3359;
-  const SWord8 s3361 = (s3360 >> 1) | (s3360 << 7);
-  const SWord8 s3362 = 128 | s3361;
-  const SWord8 s3363 = 127 & s3361;
-  const SWord8 s3364 = s3081 ? s3362 : s3363;
-  const SWord8 s3365 = (s3364 >> 1) | (s3364 << 7);
-  const SWord8 s3366 = 128 | s3365;
-  const SWord8 s3367 = 127 & s3365;
-  const SWord8 s3368 = s3333 ? s3366 : s3367;
-  const SWord8 s3369 = (s3368 >> 1) | (s3368 << 7);
-  const SWord8 s3370 = 128 | s3369;
-  const SWord8 s3371 = 127 & s3369;
-  const SWord8 s3372 = s3355 ? s3370 : s3371;
-  const SWord8 s3373 = s1 + s3368;
-  const SBool  s3374 = s3373 < s1;
-  const SBool  s3375 = s3373 < s3368;
-  const SBool  s3376 = s3374 | s3375;
-  const SWord8 s3377 = (s3373 >> 1) | (s3373 << 7);
-  const SWord8 s3378 = 128 | s3377;
-  const SWord8 s3379 = 127 & s3377;
-  const SWord8 s3380 = s3376 ? s3378 : s3379;
-  const SWord8 s3381 = s3356 ? s3372 : s3380;
-  const SWord8 s3382 = s1 + s3364;
-  const SBool  s3383 = s3382 < s1;
-  const SBool  s3384 = s3382 < s3364;
-  const SBool  s3385 = s3383 | s3384;
-  const SWord8 s3386 = (s3382 >> 1) | (s3382 << 7);
-  const SWord8 s3387 = 128 | s3386;
-  const SWord8 s3388 = 127 & s3386;
-  const SWord8 s3389 = s3385 ? s3387 : s3388;
-  const SWord8 s3390 = (s3389 >> 1) | (s3389 << 7);
-  const SWord8 s3391 = 128 | s3390;
-  const SWord8 s3392 = 127 & s3390;
-  const SWord8 s3393 = s3355 ? s3391 : s3392;
-  const SWord8 s3394 = s1 + s3389;
-  const SBool  s3395 = s3394 < s1;
-  const SBool  s3396 = s3394 < s3389;
-  const SBool  s3397 = s3395 | s3396;
-  const SWord8 s3398 = (s3394 >> 1) | (s3394 << 7);
-  const SWord8 s3399 = 128 | s3398;
-  const SWord8 s3400 = 127 & s3398;
-  const SWord8 s3401 = s3397 ? s3399 : s3400;
-  const SWord8 s3402 = s3356 ? s3393 : s3401;
-  const SWord8 s3403 = s3334 ? s3381 : s3402;
-  const SWord8 s3404 = s1 + s3360;
-  const SBool  s3405 = s3404 < s1;
-  const SBool  s3406 = s3404 < s3360;
-  const SBool  s3407 = s3405 | s3406;
-  const SWord8 s3408 = (s3404 >> 1) | (s3404 << 7);
-  const SWord8 s3409 = 128 | s3408;
-  const SWord8 s3410 = 127 & s3408;
-  const SWord8 s3411 = s3407 ? s3409 : s3410;
-  const SWord8 s3412 = (s3411 >> 1) | (s3411 << 7);
-  const SWord8 s3413 = 128 | s3412;
-  const SWord8 s3414 = 127 & s3412;
-  const SWord8 s3415 = s3333 ? s3413 : s3414;
-  const SWord8 s3416 = (s3415 >> 1) | (s3415 << 7);
-  const SWord8 s3417 = 128 | s3416;
-  const SWord8 s3418 = 127 & s3416;
-  const SWord8 s3419 = s3355 ? s3417 : s3418;
-  const SWord8 s3420 = s1 + s3415;
-  const SBool  s3421 = s3420 < s1;
-  const SBool  s3422 = s3420 < s3415;
-  const SBool  s3423 = s3421 | s3422;
-  const SWord8 s3424 = (s3420 >> 1) | (s3420 << 7);
-  const SWord8 s3425 = 128 | s3424;
-  const SWord8 s3426 = 127 & s3424;
-  const SWord8 s3427 = s3423 ? s3425 : s3426;
-  const SWord8 s3428 = s3356 ? s3419 : s3427;
-  const SWord8 s3429 = s1 + s3411;
-  const SBool  s3430 = s3429 < s1;
-  const SBool  s3431 = s3429 < s3411;
-  const SBool  s3432 = s3430 | s3431;
-  const SWord8 s3433 = (s3429 >> 1) | (s3429 << 7);
-  const SWord8 s3434 = 128 | s3433;
-  const SWord8 s3435 = 127 & s3433;
-  const SWord8 s3436 = s3432 ? s3434 : s3435;
-  const SWord8 s3437 = (s3436 >> 1) | (s3436 << 7);
-  const SWord8 s3438 = 128 | s3437;
-  const SWord8 s3439 = 127 & s3437;
-  const SWord8 s3440 = s3355 ? s3438 : s3439;
-  const SWord8 s3441 = s1 + s3436;
-  const SBool  s3442 = s3441 < s1;
-  const SBool  s3443 = s3441 < s3436;
-  const SBool  s3444 = s3442 | s3443;
-  const SWord8 s3445 = (s3441 >> 1) | (s3441 << 7);
-  const SWord8 s3446 = 128 | s3445;
-  const SWord8 s3447 = 127 & s3445;
-  const SWord8 s3448 = s3444 ? s3446 : s3447;
-  const SWord8 s3449 = s3356 ? s3440 : s3448;
-  const SWord8 s3450 = s3334 ? s3428 : s3449;
-  const SWord8 s3451 = s3082 ? s3403 : s3450;
-  const SWord8 s3452 = s1 + s3341;
-  const SWord8 s3453 = 1 & s3452;
-  const SBool  s3454 = 0 != s3453;
-  const SWord8 s3455 = s3454 ? s3345 : s3346;
-  const SWord8 s3456 = 1 & s3455;
-  const SBool  s3457 = 0 != s3456;
-  const SWord8 s3458 = s3457 ? s3351 : s3352;
-  const SWord8 s3459 = 1 & s3458;
-  const SBool  s3460 = 0 != s3459;
-  const SBool  s3461 = 0 == s3460;
-  const SBool  s3462 = s3452 < s1;
-  const SBool  s3463 = s3452 < s3341;
-  const SBool  s3464 = s3462 | s3463;
-  const SWord8 s3465 = (s3452 >> 1) | (s3452 << 7);
-  const SWord8 s3466 = 128 | s3465;
-  const SWord8 s3467 = 127 & s3465;
-  const SWord8 s3468 = s3464 ? s3466 : s3467;
-  const SWord8 s3469 = (s3468 >> 1) | (s3468 << 7);
-  const SWord8 s3470 = 128 | s3469;
-  const SWord8 s3471 = 127 & s3469;
-  const SWord8 s3472 = s3081 ? s3470 : s3471;
-  const SWord8 s3473 = (s3472 >> 1) | (s3472 << 7);
-  const SWord8 s3474 = 128 | s3473;
-  const SWord8 s3475 = 127 & s3473;
-  const SWord8 s3476 = s3333 ? s3474 : s3475;
-  const SWord8 s3477 = (s3476 >> 1) | (s3476 << 7);
-  const SWord8 s3478 = 128 | s3477;
-  const SWord8 s3479 = 127 & s3477;
-  const SWord8 s3480 = s3460 ? s3478 : s3479;
-  const SWord8 s3481 = s1 + s3476;
-  const SBool  s3482 = s3481 < s1;
-  const SBool  s3483 = s3481 < s3476;
-  const SBool  s3484 = s3482 | s3483;
-  const SWord8 s3485 = (s3481 >> 1) | (s3481 << 7);
-  const SWord8 s3486 = 128 | s3485;
-  const SWord8 s3487 = 127 & s3485;
-  const SWord8 s3488 = s3484 ? s3486 : s3487;
-  const SWord8 s3489 = s3461 ? s3480 : s3488;
-  const SWord8 s3490 = s1 + s3472;
-  const SBool  s3491 = s3490 < s1;
-  const SBool  s3492 = s3490 < s3472;
-  const SBool  s3493 = s3491 | s3492;
-  const SWord8 s3494 = (s3490 >> 1) | (s3490 << 7);
-  const SWord8 s3495 = 128 | s3494;
-  const SWord8 s3496 = 127 & s3494;
-  const SWord8 s3497 = s3493 ? s3495 : s3496;
-  const SWord8 s3498 = (s3497 >> 1) | (s3497 << 7);
-  const SWord8 s3499 = 128 | s3498;
-  const SWord8 s3500 = 127 & s3498;
-  const SWord8 s3501 = s3460 ? s3499 : s3500;
-  const SWord8 s3502 = s1 + s3497;
-  const SBool  s3503 = s3502 < s1;
-  const SBool  s3504 = s3502 < s3497;
-  const SBool  s3505 = s3503 | s3504;
-  const SWord8 s3506 = (s3502 >> 1) | (s3502 << 7);
-  const SWord8 s3507 = 128 | s3506;
-  const SWord8 s3508 = 127 & s3506;
-  const SWord8 s3509 = s3505 ? s3507 : s3508;
-  const SWord8 s3510 = s3461 ? s3501 : s3509;
-  const SWord8 s3511 = s3334 ? s3489 : s3510;
-  const SWord8 s3512 = s1 + s3468;
-  const SBool  s3513 = s3512 < s1;
-  const SBool  s3514 = s3512 < s3468;
-  const SBool  s3515 = s3513 | s3514;
-  const SWord8 s3516 = (s3512 >> 1) | (s3512 << 7);
-  const SWord8 s3517 = 128 | s3516;
-  const SWord8 s3518 = 127 & s3516;
-  const SWord8 s3519 = s3515 ? s3517 : s3518;
-  const SWord8 s3520 = (s3519 >> 1) | (s3519 << 7);
-  const SWord8 s3521 = 128 | s3520;
-  const SWord8 s3522 = 127 & s3520;
-  const SWord8 s3523 = s3333 ? s3521 : s3522;
-  const SWord8 s3524 = (s3523 >> 1) | (s3523 << 7);
-  const SWord8 s3525 = 128 | s3524;
-  const SWord8 s3526 = 127 & s3524;
-  const SWord8 s3527 = s3460 ? s3525 : s3526;
-  const SWord8 s3528 = s1 + s3523;
-  const SBool  s3529 = s3528 < s1;
-  const SBool  s3530 = s3528 < s3523;
-  const SBool  s3531 = s3529 | s3530;
-  const SWord8 s3532 = (s3528 >> 1) | (s3528 << 7);
-  const SWord8 s3533 = 128 | s3532;
-  const SWord8 s3534 = 127 & s3532;
-  const SWord8 s3535 = s3531 ? s3533 : s3534;
-  const SWord8 s3536 = s3461 ? s3527 : s3535;
-  const SWord8 s3537 = s1 + s3519;
-  const SBool  s3538 = s3537 < s1;
-  const SBool  s3539 = s3537 < s3519;
-  const SBool  s3540 = s3538 | s3539;
-  const SWord8 s3541 = (s3537 >> 1) | (s3537 << 7);
-  const SWord8 s3542 = 128 | s3541;
-  const SWord8 s3543 = 127 & s3541;
-  const SWord8 s3544 = s3540 ? s3542 : s3543;
-  const SWord8 s3545 = (s3544 >> 1) | (s3544 << 7);
-  const SWord8 s3546 = 128 | s3545;
-  const SWord8 s3547 = 127 & s3545;
-  const SWord8 s3548 = s3460 ? s3546 : s3547;
-  const SWord8 s3549 = s1 + s3544;
-  const SBool  s3550 = s3549 < s1;
-  const SBool  s3551 = s3549 < s3544;
-  const SBool  s3552 = s3550 | s3551;
-  const SWord8 s3553 = (s3549 >> 1) | (s3549 << 7);
-  const SWord8 s3554 = 128 | s3553;
-  const SWord8 s3555 = 127 & s3553;
-  const SWord8 s3556 = s3552 ? s3554 : s3555;
-  const SWord8 s3557 = s3461 ? s3548 : s3556;
-  const SWord8 s3558 = s3334 ? s3536 : s3557;
-  const SWord8 s3559 = s3082 ? s3511 : s3558;
-  const SWord8 s3560 = s3060 ? s3451 : s3559;
-  const SWord8 s3561 = s2042 ? s3324 : s3560;
-  const SWord8 s3562 = s1 + s3067;
-  const SWord8 s3563 = 1 & s3562;
-  const SBool  s3564 = 0 != s3563;
-  const SWord8 s3565 = s3564 ? s3071 : s3072;
-  const SWord8 s3566 = 1 & s3565;
-  const SBool  s3567 = 0 != s3566;
-  const SWord8 s3568 = s3567 ? s3077 : s3078;
-  const SWord8 s3569 = 1 & s3568;
-  const SBool  s3570 = 0 != s3569;
-  const SBool  s3571 = 0 == s3570;
-  const SBool  s3572 = s3562 < s1;
-  const SBool  s3573 = s3562 < s3067;
-  const SBool  s3574 = s3572 | s3573;
-  const SWord8 s3575 = (s3562 >> 1) | (s3562 << 7);
-  const SWord8 s3576 = 128 | s3575;
-  const SWord8 s3577 = 127 & s3575;
-  const SWord8 s3578 = s3574 ? s3576 : s3577;
-  const SWord8 s3579 = 1 & s3578;
-  const SBool  s3580 = 0 != s3579;
-  const SWord8 s3581 = (s3565 >> 1) | (s3565 << 7);
-  const SWord8 s3582 = 128 | s3581;
-  const SWord8 s3583 = 127 & s3581;
-  const SWord8 s3584 = s3580 ? s3582 : s3583;
-  const SWord8 s3585 = 1 & s3584;
-  const SBool  s3586 = 0 != s3585;
-  const SWord8 s3587 = (s3568 >> 1) | (s3568 << 7);
-  const SWord8 s3588 = 128 | s3587;
-  const SWord8 s3589 = 127 & s3587;
-  const SWord8 s3590 = s3586 ? s3588 : s3589;
-  const SWord8 s3591 = 1 & s3590;
-  const SBool  s3592 = 0 != s3591;
-  const SBool  s3593 = 0 == s3592;
-  const SWord8 s3594 = (s3578 >> 1) | (s3578 << 7);
-  const SWord8 s3595 = 128 | s3594;
-  const SWord8 s3596 = 127 & s3594;
-  const SWord8 s3597 = s2041 ? s3595 : s3596;
-  const SWord8 s3598 = 1 & s3597;
-  const SBool  s3599 = 0 != s3598;
-  const SWord8 s3600 = (s3584 >> 1) | (s3584 << 7);
-  const SWord8 s3601 = 128 | s3600;
-  const SWord8 s3602 = 127 & s3600;
-  const SWord8 s3603 = s3599 ? s3601 : s3602;
-  const SWord8 s3604 = 1 & s3603;
-  const SBool  s3605 = 0 != s3604;
-  const SWord8 s3606 = (s3590 >> 1) | (s3590 << 7);
-  const SWord8 s3607 = 128 | s3606;
-  const SWord8 s3608 = 127 & s3606;
-  const SWord8 s3609 = s3605 ? s3607 : s3608;
-  const SWord8 s3610 = 1 & s3609;
-  const SBool  s3611 = 0 != s3610;
-  const SBool  s3612 = 0 == s3611;
-  const SWord8 s3613 = (s3597 >> 1) | (s3597 << 7);
-  const SWord8 s3614 = 128 | s3613;
-  const SWord8 s3615 = 127 & s3613;
-  const SWord8 s3616 = s3059 ? s3614 : s3615;
-  const SWord8 s3617 = (s3616 >> 1) | (s3616 << 7);
-  const SWord8 s3618 = 128 | s3617;
-  const SWord8 s3619 = 127 & s3617;
-  const SWord8 s3620 = s3570 ? s3618 : s3619;
-  const SWord8 s3621 = (s3620 >> 1) | (s3620 << 7);
-  const SWord8 s3622 = 128 | s3621;
-  const SWord8 s3623 = 127 & s3621;
-  const SWord8 s3624 = s3592 ? s3622 : s3623;
-  const SWord8 s3625 = (s3624 >> 1) | (s3624 << 7);
-  const SWord8 s3626 = 128 | s3625;
-  const SWord8 s3627 = 127 & s3625;
-  const SWord8 s3628 = s3611 ? s3626 : s3627;
-  const SWord8 s3629 = s1 + s3624;
-  const SBool  s3630 = s3629 < s1;
-  const SBool  s3631 = s3629 < s3624;
-  const SBool  s3632 = s3630 | s3631;
-  const SWord8 s3633 = (s3629 >> 1) | (s3629 << 7);
-  const SWord8 s3634 = 128 | s3633;
-  const SWord8 s3635 = 127 & s3633;
-  const SWord8 s3636 = s3632 ? s3634 : s3635;
-  const SWord8 s3637 = s3612 ? s3628 : s3636;
-  const SWord8 s3638 = s1 + s3620;
-  const SBool  s3639 = s3638 < s1;
-  const SBool  s3640 = s3638 < s3620;
-  const SBool  s3641 = s3639 | s3640;
-  const SWord8 s3642 = (s3638 >> 1) | (s3638 << 7);
-  const SWord8 s3643 = 128 | s3642;
-  const SWord8 s3644 = 127 & s3642;
-  const SWord8 s3645 = s3641 ? s3643 : s3644;
-  const SWord8 s3646 = (s3645 >> 1) | (s3645 << 7);
-  const SWord8 s3647 = 128 | s3646;
-  const SWord8 s3648 = 127 & s3646;
-  const SWord8 s3649 = s3611 ? s3647 : s3648;
-  const SWord8 s3650 = s1 + s3645;
-  const SBool  s3651 = s3650 < s1;
-  const SBool  s3652 = s3650 < s3645;
-  const SBool  s3653 = s3651 | s3652;
-  const SWord8 s3654 = (s3650 >> 1) | (s3650 << 7);
-  const SWord8 s3655 = 128 | s3654;
-  const SWord8 s3656 = 127 & s3654;
-  const SWord8 s3657 = s3653 ? s3655 : s3656;
-  const SWord8 s3658 = s3612 ? s3649 : s3657;
-  const SWord8 s3659 = s3593 ? s3637 : s3658;
-  const SWord8 s3660 = s1 + s3616;
-  const SBool  s3661 = s3660 < s1;
-  const SBool  s3662 = s3660 < s3616;
-  const SBool  s3663 = s3661 | s3662;
-  const SWord8 s3664 = (s3660 >> 1) | (s3660 << 7);
-  const SWord8 s3665 = 128 | s3664;
-  const SWord8 s3666 = 127 & s3664;
-  const SWord8 s3667 = s3663 ? s3665 : s3666;
-  const SWord8 s3668 = (s3667 >> 1) | (s3667 << 7);
-  const SWord8 s3669 = 128 | s3668;
-  const SWord8 s3670 = 127 & s3668;
-  const SWord8 s3671 = s3592 ? s3669 : s3670;
-  const SWord8 s3672 = (s3671 >> 1) | (s3671 << 7);
-  const SWord8 s3673 = 128 | s3672;
-  const SWord8 s3674 = 127 & s3672;
-  const SWord8 s3675 = s3611 ? s3673 : s3674;
-  const SWord8 s3676 = s1 + s3671;
-  const SBool  s3677 = s3676 < s1;
-  const SBool  s3678 = s3676 < s3671;
-  const SBool  s3679 = s3677 | s3678;
-  const SWord8 s3680 = (s3676 >> 1) | (s3676 << 7);
-  const SWord8 s3681 = 128 | s3680;
-  const SWord8 s3682 = 127 & s3680;
-  const SWord8 s3683 = s3679 ? s3681 : s3682;
-  const SWord8 s3684 = s3612 ? s3675 : s3683;
-  const SWord8 s3685 = s1 + s3667;
-  const SBool  s3686 = s3685 < s1;
-  const SBool  s3687 = s3685 < s3667;
-  const SBool  s3688 = s3686 | s3687;
-  const SWord8 s3689 = (s3685 >> 1) | (s3685 << 7);
-  const SWord8 s3690 = 128 | s3689;
-  const SWord8 s3691 = 127 & s3689;
-  const SWord8 s3692 = s3688 ? s3690 : s3691;
-  const SWord8 s3693 = (s3692 >> 1) | (s3692 << 7);
-  const SWord8 s3694 = 128 | s3693;
-  const SWord8 s3695 = 127 & s3693;
-  const SWord8 s3696 = s3611 ? s3694 : s3695;
-  const SWord8 s3697 = s1 + s3692;
-  const SBool  s3698 = s3697 < s1;
-  const SBool  s3699 = s3697 < s3692;
-  const SBool  s3700 = s3698 | s3699;
-  const SWord8 s3701 = (s3697 >> 1) | (s3697 << 7);
-  const SWord8 s3702 = 128 | s3701;
-  const SWord8 s3703 = 127 & s3701;
-  const SWord8 s3704 = s3700 ? s3702 : s3703;
-  const SWord8 s3705 = s3612 ? s3696 : s3704;
-  const SWord8 s3706 = s3593 ? s3684 : s3705;
-  const SWord8 s3707 = s3571 ? s3659 : s3706;
-  const SWord8 s3708 = s1 + s3597;
-  const SWord8 s3709 = 1 & s3708;
-  const SBool  s3710 = 0 != s3709;
-  const SWord8 s3711 = s3710 ? s3601 : s3602;
-  const SWord8 s3712 = 1 & s3711;
-  const SBool  s3713 = 0 != s3712;
-  const SWord8 s3714 = s3713 ? s3607 : s3608;
-  const SWord8 s3715 = 1 & s3714;
-  const SBool  s3716 = 0 != s3715;
-  const SBool  s3717 = 0 == s3716;
-  const SBool  s3718 = s3708 < s1;
-  const SBool  s3719 = s3708 < s3597;
-  const SBool  s3720 = s3718 | s3719;
-  const SWord8 s3721 = (s3708 >> 1) | (s3708 << 7);
-  const SWord8 s3722 = 128 | s3721;
-  const SWord8 s3723 = 127 & s3721;
-  const SWord8 s3724 = s3720 ? s3722 : s3723;
-  const SWord8 s3725 = (s3724 >> 1) | (s3724 << 7);
-  const SWord8 s3726 = 128 | s3725;
-  const SWord8 s3727 = 127 & s3725;
-  const SWord8 s3728 = s3570 ? s3726 : s3727;
-  const SWord8 s3729 = (s3728 >> 1) | (s3728 << 7);
-  const SWord8 s3730 = 128 | s3729;
-  const SWord8 s3731 = 127 & s3729;
-  const SWord8 s3732 = s3592 ? s3730 : s3731;
-  const SWord8 s3733 = (s3732 >> 1) | (s3732 << 7);
-  const SWord8 s3734 = 128 | s3733;
-  const SWord8 s3735 = 127 & s3733;
-  const SWord8 s3736 = s3716 ? s3734 : s3735;
-  const SWord8 s3737 = s1 + s3732;
-  const SBool  s3738 = s3737 < s1;
-  const SBool  s3739 = s3737 < s3732;
-  const SBool  s3740 = s3738 | s3739;
-  const SWord8 s3741 = (s3737 >> 1) | (s3737 << 7);
-  const SWord8 s3742 = 128 | s3741;
-  const SWord8 s3743 = 127 & s3741;
-  const SWord8 s3744 = s3740 ? s3742 : s3743;
-  const SWord8 s3745 = s3717 ? s3736 : s3744;
-  const SWord8 s3746 = s1 + s3728;
-  const SBool  s3747 = s3746 < s1;
-  const SBool  s3748 = s3746 < s3728;
-  const SBool  s3749 = s3747 | s3748;
-  const SWord8 s3750 = (s3746 >> 1) | (s3746 << 7);
-  const SWord8 s3751 = 128 | s3750;
-  const SWord8 s3752 = 127 & s3750;
-  const SWord8 s3753 = s3749 ? s3751 : s3752;
-  const SWord8 s3754 = (s3753 >> 1) | (s3753 << 7);
-  const SWord8 s3755 = 128 | s3754;
-  const SWord8 s3756 = 127 & s3754;
-  const SWord8 s3757 = s3716 ? s3755 : s3756;
-  const SWord8 s3758 = s1 + s3753;
-  const SBool  s3759 = s3758 < s1;
-  const SBool  s3760 = s3758 < s3753;
-  const SBool  s3761 = s3759 | s3760;
-  const SWord8 s3762 = (s3758 >> 1) | (s3758 << 7);
-  const SWord8 s3763 = 128 | s3762;
-  const SWord8 s3764 = 127 & s3762;
-  const SWord8 s3765 = s3761 ? s3763 : s3764;
-  const SWord8 s3766 = s3717 ? s3757 : s3765;
-  const SWord8 s3767 = s3593 ? s3745 : s3766;
-  const SWord8 s3768 = s1 + s3724;
-  const SBool  s3769 = s3768 < s1;
-  const SBool  s3770 = s3768 < s3724;
-  const SBool  s3771 = s3769 | s3770;
-  const SWord8 s3772 = (s3768 >> 1) | (s3768 << 7);
-  const SWord8 s3773 = 128 | s3772;
-  const SWord8 s3774 = 127 & s3772;
-  const SWord8 s3775 = s3771 ? s3773 : s3774;
-  const SWord8 s3776 = (s3775 >> 1) | (s3775 << 7);
-  const SWord8 s3777 = 128 | s3776;
-  const SWord8 s3778 = 127 & s3776;
-  const SWord8 s3779 = s3592 ? s3777 : s3778;
-  const SWord8 s3780 = (s3779 >> 1) | (s3779 << 7);
-  const SWord8 s3781 = 128 | s3780;
-  const SWord8 s3782 = 127 & s3780;
-  const SWord8 s3783 = s3716 ? s3781 : s3782;
-  const SWord8 s3784 = s1 + s3779;
-  const SBool  s3785 = s3784 < s1;
-  const SBool  s3786 = s3784 < s3779;
-  const SBool  s3787 = s3785 | s3786;
-  const SWord8 s3788 = (s3784 >> 1) | (s3784 << 7);
-  const SWord8 s3789 = 128 | s3788;
-  const SWord8 s3790 = 127 & s3788;
-  const SWord8 s3791 = s3787 ? s3789 : s3790;
-  const SWord8 s3792 = s3717 ? s3783 : s3791;
-  const SWord8 s3793 = s1 + s3775;
-  const SBool  s3794 = s3793 < s1;
-  const SBool  s3795 = s3793 < s3775;
-  const SBool  s3796 = s3794 | s3795;
-  const SWord8 s3797 = (s3793 >> 1) | (s3793 << 7);
-  const SWord8 s3798 = 128 | s3797;
-  const SWord8 s3799 = 127 & s3797;
-  const SWord8 s3800 = s3796 ? s3798 : s3799;
-  const SWord8 s3801 = (s3800 >> 1) | (s3800 << 7);
-  const SWord8 s3802 = 128 | s3801;
-  const SWord8 s3803 = 127 & s3801;
-  const SWord8 s3804 = s3716 ? s3802 : s3803;
-  const SWord8 s3805 = s1 + s3800;
-  const SBool  s3806 = s3805 < s1;
-  const SBool  s3807 = s3805 < s3800;
-  const SBool  s3808 = s3806 | s3807;
-  const SWord8 s3809 = (s3805 >> 1) | (s3805 << 7);
-  const SWord8 s3810 = 128 | s3809;
-  const SWord8 s3811 = 127 & s3809;
-  const SWord8 s3812 = s3808 ? s3810 : s3811;
-  const SWord8 s3813 = s3717 ? s3804 : s3812;
-  const SWord8 s3814 = s3593 ? s3792 : s3813;
-  const SWord8 s3815 = s3571 ? s3767 : s3814;
-  const SWord8 s3816 = s3060 ? s3707 : s3815;
-  const SWord8 s3817 = s1 + s3578;
-  const SWord8 s3818 = 1 & s3817;
-  const SBool  s3819 = 0 != s3818;
-  const SWord8 s3820 = s3819 ? s3582 : s3583;
-  const SWord8 s3821 = 1 & s3820;
-  const SBool  s3822 = 0 != s3821;
-  const SWord8 s3823 = s3822 ? s3588 : s3589;
-  const SWord8 s3824 = 1 & s3823;
-  const SBool  s3825 = 0 != s3824;
-  const SBool  s3826 = 0 == s3825;
-  const SBool  s3827 = s3817 < s1;
-  const SBool  s3828 = s3817 < s3578;
-  const SBool  s3829 = s3827 | s3828;
-  const SWord8 s3830 = (s3817 >> 1) | (s3817 << 7);
-  const SWord8 s3831 = 128 | s3830;
-  const SWord8 s3832 = 127 & s3830;
-  const SWord8 s3833 = s3829 ? s3831 : s3832;
-  const SWord8 s3834 = 1 & s3833;
-  const SBool  s3835 = 0 != s3834;
-  const SWord8 s3836 = (s3820 >> 1) | (s3820 << 7);
-  const SWord8 s3837 = 128 | s3836;
-  const SWord8 s3838 = 127 & s3836;
-  const SWord8 s3839 = s3835 ? s3837 : s3838;
-  const SWord8 s3840 = 1 & s3839;
-  const SBool  s3841 = 0 != s3840;
-  const SWord8 s3842 = (s3823 >> 1) | (s3823 << 7);
-  const SWord8 s3843 = 128 | s3842;
-  const SWord8 s3844 = 127 & s3842;
-  const SWord8 s3845 = s3841 ? s3843 : s3844;
-  const SWord8 s3846 = 1 & s3845;
-  const SBool  s3847 = 0 != s3846;
-  const SBool  s3848 = 0 == s3847;
-  const SWord8 s3849 = (s3833 >> 1) | (s3833 << 7);
-  const SWord8 s3850 = 128 | s3849;
-  const SWord8 s3851 = 127 & s3849;
-  const SWord8 s3852 = s3059 ? s3850 : s3851;
-  const SWord8 s3853 = (s3852 >> 1) | (s3852 << 7);
-  const SWord8 s3854 = 128 | s3853;
-  const SWord8 s3855 = 127 & s3853;
-  const SWord8 s3856 = s3570 ? s3854 : s3855;
-  const SWord8 s3857 = (s3856 >> 1) | (s3856 << 7);
-  const SWord8 s3858 = 128 | s3857;
-  const SWord8 s3859 = 127 & s3857;
-  const SWord8 s3860 = s3825 ? s3858 : s3859;
-  const SWord8 s3861 = (s3860 >> 1) | (s3860 << 7);
-  const SWord8 s3862 = 128 | s3861;
-  const SWord8 s3863 = 127 & s3861;
-  const SWord8 s3864 = s3847 ? s3862 : s3863;
-  const SWord8 s3865 = s1 + s3860;
-  const SBool  s3866 = s3865 < s1;
-  const SBool  s3867 = s3865 < s3860;
-  const SBool  s3868 = s3866 | s3867;
-  const SWord8 s3869 = (s3865 >> 1) | (s3865 << 7);
-  const SWord8 s3870 = 128 | s3869;
-  const SWord8 s3871 = 127 & s3869;
-  const SWord8 s3872 = s3868 ? s3870 : s3871;
-  const SWord8 s3873 = s3848 ? s3864 : s3872;
-  const SWord8 s3874 = s1 + s3856;
-  const SBool  s3875 = s3874 < s1;
-  const SBool  s3876 = s3874 < s3856;
-  const SBool  s3877 = s3875 | s3876;
-  const SWord8 s3878 = (s3874 >> 1) | (s3874 << 7);
-  const SWord8 s3879 = 128 | s3878;
-  const SWord8 s3880 = 127 & s3878;
-  const SWord8 s3881 = s3877 ? s3879 : s3880;
-  const SWord8 s3882 = (s3881 >> 1) | (s3881 << 7);
-  const SWord8 s3883 = 128 | s3882;
-  const SWord8 s3884 = 127 & s3882;
-  const SWord8 s3885 = s3847 ? s3883 : s3884;
-  const SWord8 s3886 = s1 + s3881;
-  const SBool  s3887 = s3886 < s1;
-  const SBool  s3888 = s3886 < s3881;
-  const SBool  s3889 = s3887 | s3888;
-  const SWord8 s3890 = (s3886 >> 1) | (s3886 << 7);
-  const SWord8 s3891 = 128 | s3890;
-  const SWord8 s3892 = 127 & s3890;
-  const SWord8 s3893 = s3889 ? s3891 : s3892;
-  const SWord8 s3894 = s3848 ? s3885 : s3893;
-  const SWord8 s3895 = s3826 ? s3873 : s3894;
-  const SWord8 s3896 = s1 + s3852;
-  const SBool  s3897 = s3896 < s1;
-  const SBool  s3898 = s3896 < s3852;
-  const SBool  s3899 = s3897 | s3898;
-  const SWord8 s3900 = (s3896 >> 1) | (s3896 << 7);
-  const SWord8 s3901 = 128 | s3900;
-  const SWord8 s3902 = 127 & s3900;
-  const SWord8 s3903 = s3899 ? s3901 : s3902;
-  const SWord8 s3904 = (s3903 >> 1) | (s3903 << 7);
-  const SWord8 s3905 = 128 | s3904;
-  const SWord8 s3906 = 127 & s3904;
-  const SWord8 s3907 = s3825 ? s3905 : s3906;
-  const SWord8 s3908 = (s3907 >> 1) | (s3907 << 7);
-  const SWord8 s3909 = 128 | s3908;
-  const SWord8 s3910 = 127 & s3908;
-  const SWord8 s3911 = s3847 ? s3909 : s3910;
-  const SWord8 s3912 = s1 + s3907;
-  const SBool  s3913 = s3912 < s1;
-  const SBool  s3914 = s3912 < s3907;
-  const SBool  s3915 = s3913 | s3914;
-  const SWord8 s3916 = (s3912 >> 1) | (s3912 << 7);
-  const SWord8 s3917 = 128 | s3916;
-  const SWord8 s3918 = 127 & s3916;
-  const SWord8 s3919 = s3915 ? s3917 : s3918;
-  const SWord8 s3920 = s3848 ? s3911 : s3919;
-  const SWord8 s3921 = s1 + s3903;
-  const SBool  s3922 = s3921 < s1;
-  const SBool  s3923 = s3921 < s3903;
-  const SBool  s3924 = s3922 | s3923;
-  const SWord8 s3925 = (s3921 >> 1) | (s3921 << 7);
-  const SWord8 s3926 = 128 | s3925;
-  const SWord8 s3927 = 127 & s3925;
-  const SWord8 s3928 = s3924 ? s3926 : s3927;
-  const SWord8 s3929 = (s3928 >> 1) | (s3928 << 7);
-  const SWord8 s3930 = 128 | s3929;
-  const SWord8 s3931 = 127 & s3929;
-  const SWord8 s3932 = s3847 ? s3930 : s3931;
-  const SWord8 s3933 = s1 + s3928;
-  const SBool  s3934 = s3933 < s1;
-  const SBool  s3935 = s3933 < s3928;
-  const SBool  s3936 = s3934 | s3935;
-  const SWord8 s3937 = (s3933 >> 1) | (s3933 << 7);
-  const SWord8 s3938 = 128 | s3937;
-  const SWord8 s3939 = 127 & s3937;
-  const SWord8 s3940 = s3936 ? s3938 : s3939;
-  const SWord8 s3941 = s3848 ? s3932 : s3940;
-  const SWord8 s3942 = s3826 ? s3920 : s3941;
-  const SWord8 s3943 = s3571 ? s3895 : s3942;
-  const SWord8 s3944 = s1 + s3833;
-  const SWord8 s3945 = 1 & s3944;
-  const SBool  s3946 = 0 != s3945;
-  const SWord8 s3947 = s3946 ? s3837 : s3838;
-  const SWord8 s3948 = 1 & s3947;
-  const SBool  s3949 = 0 != s3948;
-  const SWord8 s3950 = s3949 ? s3843 : s3844;
-  const SWord8 s3951 = 1 & s3950;
-  const SBool  s3952 = 0 != s3951;
-  const SBool  s3953 = 0 == s3952;
-  const SBool  s3954 = s3944 < s1;
-  const SBool  s3955 = s3944 < s3833;
-  const SBool  s3956 = s3954 | s3955;
-  const SWord8 s3957 = (s3944 >> 1) | (s3944 << 7);
-  const SWord8 s3958 = 128 | s3957;
-  const SWord8 s3959 = 127 & s3957;
-  const SWord8 s3960 = s3956 ? s3958 : s3959;
-  const SWord8 s3961 = (s3960 >> 1) | (s3960 << 7);
-  const SWord8 s3962 = 128 | s3961;
-  const SWord8 s3963 = 127 & s3961;
-  const SWord8 s3964 = s3570 ? s3962 : s3963;
-  const SWord8 s3965 = (s3964 >> 1) | (s3964 << 7);
-  const SWord8 s3966 = 128 | s3965;
-  const SWord8 s3967 = 127 & s3965;
-  const SWord8 s3968 = s3825 ? s3966 : s3967;
-  const SWord8 s3969 = (s3968 >> 1) | (s3968 << 7);
-  const SWord8 s3970 = 128 | s3969;
-  const SWord8 s3971 = 127 & s3969;
-  const SWord8 s3972 = s3952 ? s3970 : s3971;
-  const SWord8 s3973 = s1 + s3968;
-  const SBool  s3974 = s3973 < s1;
-  const SBool  s3975 = s3973 < s3968;
-  const SBool  s3976 = s3974 | s3975;
-  const SWord8 s3977 = (s3973 >> 1) | (s3973 << 7);
-  const SWord8 s3978 = 128 | s3977;
-  const SWord8 s3979 = 127 & s3977;
-  const SWord8 s3980 = s3976 ? s3978 : s3979;
-  const SWord8 s3981 = s3953 ? s3972 : s3980;
-  const SWord8 s3982 = s1 + s3964;
-  const SBool  s3983 = s3982 < s1;
-  const SBool  s3984 = s3982 < s3964;
-  const SBool  s3985 = s3983 | s3984;
-  const SWord8 s3986 = (s3982 >> 1) | (s3982 << 7);
-  const SWord8 s3987 = 128 | s3986;
-  const SWord8 s3988 = 127 & s3986;
-  const SWord8 s3989 = s3985 ? s3987 : s3988;
-  const SWord8 s3990 = (s3989 >> 1) | (s3989 << 7);
-  const SWord8 s3991 = 128 | s3990;
-  const SWord8 s3992 = 127 & s3990;
-  const SWord8 s3993 = s3952 ? s3991 : s3992;
-  const SWord8 s3994 = s1 + s3989;
-  const SBool  s3995 = s3994 < s1;
-  const SBool  s3996 = s3994 < s3989;
-  const SBool  s3997 = s3995 | s3996;
-  const SWord8 s3998 = (s3994 >> 1) | (s3994 << 7);
-  const SWord8 s3999 = 128 | s3998;
-  const SWord8 s4000 = 127 & s3998;
-  const SWord8 s4001 = s3997 ? s3999 : s4000;
-  const SWord8 s4002 = s3953 ? s3993 : s4001;
-  const SWord8 s4003 = s3826 ? s3981 : s4002;
-  const SWord8 s4004 = s1 + s3960;
-  const SBool  s4005 = s4004 < s1;
-  const SBool  s4006 = s4004 < s3960;
-  const SBool  s4007 = s4005 | s4006;
-  const SWord8 s4008 = (s4004 >> 1) | (s4004 << 7);
-  const SWord8 s4009 = 128 | s4008;
-  const SWord8 s4010 = 127 & s4008;
-  const SWord8 s4011 = s4007 ? s4009 : s4010;
-  const SWord8 s4012 = (s4011 >> 1) | (s4011 << 7);
-  const SWord8 s4013 = 128 | s4012;
-  const SWord8 s4014 = 127 & s4012;
-  const SWord8 s4015 = s3825 ? s4013 : s4014;
-  const SWord8 s4016 = (s4015 >> 1) | (s4015 << 7);
-  const SWord8 s4017 = 128 | s4016;
-  const SWord8 s4018 = 127 & s4016;
-  const SWord8 s4019 = s3952 ? s4017 : s4018;
-  const SWord8 s4020 = s1 + s4015;
-  const SBool  s4021 = s4020 < s1;
-  const SBool  s4022 = s4020 < s4015;
-  const SBool  s4023 = s4021 | s4022;
-  const SWord8 s4024 = (s4020 >> 1) | (s4020 << 7);
-  const SWord8 s4025 = 128 | s4024;
-  const SWord8 s4026 = 127 & s4024;
-  const SWord8 s4027 = s4023 ? s4025 : s4026;
-  const SWord8 s4028 = s3953 ? s4019 : s4027;
-  const SWord8 s4029 = s1 + s4011;
-  const SBool  s4030 = s4029 < s1;
-  const SBool  s4031 = s4029 < s4011;
-  const SBool  s4032 = s4030 | s4031;
-  const SWord8 s4033 = (s4029 >> 1) | (s4029 << 7);
-  const SWord8 s4034 = 128 | s4033;
-  const SWord8 s4035 = 127 & s4033;
-  const SWord8 s4036 = s4032 ? s4034 : s4035;
-  const SWord8 s4037 = (s4036 >> 1) | (s4036 << 7);
-  const SWord8 s4038 = 128 | s4037;
-  const SWord8 s4039 = 127 & s4037;
-  const SWord8 s4040 = s3952 ? s4038 : s4039;
-  const SWord8 s4041 = s1 + s4036;
-  const SBool  s4042 = s4041 < s1;
-  const SBool  s4043 = s4041 < s4036;
-  const SBool  s4044 = s4042 | s4043;
-  const SWord8 s4045 = (s4041 >> 1) | (s4041 << 7);
-  const SWord8 s4046 = 128 | s4045;
-  const SWord8 s4047 = 127 & s4045;
-  const SWord8 s4048 = s4044 ? s4046 : s4047;
-  const SWord8 s4049 = s3953 ? s4040 : s4048;
-  const SWord8 s4050 = s3826 ? s4028 : s4049;
-  const SWord8 s4051 = s3571 ? s4003 : s4050;
-  const SWord8 s4052 = s3060 ? s3943 : s4051;
-  const SWord8 s4053 = s2042 ? s3816 : s4052;
-  const SWord8 s4054 = s17 ? s3561 : s4053;
-  const SWord8 s4055 = s12 ? s3050 : s4054;
-  const SWord8 s4056 = s6 ? s2032 : s4055;
-  const SWord8 s4057 = 1 & s105;
-  const SBool  s4058 = 0 != s4057;
-  const SWord8 s4059 = 1 & s101;
-  const SBool  s4060 = 0 != s4059;
-  const SWord8 s4061 = 1 & s97;
-  const SBool  s4062 = 0 != s4061;
-  const SWord8 s4063 = (s84 >> 1) | (s84 << 7);
-  const SWord8 s4064 = 128 | s4063;
-  const SWord8 s4065 = 127 & s4063;
-  const SWord8 s4066 = s4062 ? s4064 : s4065;
-  const SWord8 s4067 = (s4066 >> 1) | (s4066 << 7);
-  const SWord8 s4068 = 128 | s4067;
-  const SWord8 s4069 = 127 & s4067;
-  const SWord8 s4070 = s4060 ? s4068 : s4069;
-  const SWord8 s4071 = (s4070 >> 1) | (s4070 << 7);
-  const SWord8 s4072 = 128 | s4071;
-  const SWord8 s4073 = 127 & s4071;
-  const SWord8 s4074 = s4058 ? s4072 : s4073;
-  const SWord8 s4075 = 1 & s110;
-  const SBool  s4076 = 0 != s4075;
-  const SWord8 s4077 = s4076 ? s4072 : s4073;
-  const SWord8 s4078 = s93 ? s4074 : s4077;
-  const SWord8 s4079 = 1 & s126;
-  const SBool  s4080 = 0 != s4079;
-  const SWord8 s4081 = 1 & s119;
-  const SBool  s4082 = 0 != s4081;
-  const SWord8 s4083 = s4082 ? s4068 : s4069;
-  const SWord8 s4084 = (s4083 >> 1) | (s4083 << 7);
-  const SWord8 s4085 = 128 | s4084;
-  const SWord8 s4086 = 127 & s4084;
-  const SWord8 s4087 = s4080 ? s4085 : s4086;
-  const SWord8 s4088 = 1 & s131;
-  const SBool  s4089 = 0 != s4088;
-  const SWord8 s4090 = s4089 ? s4085 : s4086;
-  const SWord8 s4091 = s93 ? s4087 : s4090;
-  const SWord8 s4092 = s74 ? s4078 : s4091;
-  const SWord8 s4093 = 1 & s152;
-  const SBool  s4094 = 0 != s4093;
-  const SWord8 s4095 = 1 & s148;
-  const SBool  s4096 = 0 != s4095;
-  const SWord8 s4097 = 1 & s141;
-  const SBool  s4098 = 0 != s4097;
-  const SWord8 s4099 = s4098 ? s4064 : s4065;
-  const SWord8 s4100 = (s4099 >> 1) | (s4099 << 7);
-  const SWord8 s4101 = 128 | s4100;
-  const SWord8 s4102 = 127 & s4100;
-  const SWord8 s4103 = s4096 ? s4101 : s4102;
-  const SWord8 s4104 = (s4103 >> 1) | (s4103 << 7);
-  const SWord8 s4105 = 128 | s4104;
-  const SWord8 s4106 = 127 & s4104;
-  const SWord8 s4107 = s4094 ? s4105 : s4106;
-  const SWord8 s4108 = 1 & s157;
-  const SBool  s4109 = 0 != s4108;
-  const SWord8 s4110 = s4109 ? s4105 : s4106;
-  const SWord8 s4111 = s93 ? s4107 : s4110;
-  const SWord8 s4112 = 1 & s173;
-  const SBool  s4113 = 0 != s4112;
-  const SWord8 s4114 = 1 & s166;
-  const SBool  s4115 = 0 != s4114;
-  const SWord8 s4116 = s4115 ? s4101 : s4102;
-  const SWord8 s4117 = (s4116 >> 1) | (s4116 << 7);
-  const SWord8 s4118 = 128 | s4117;
-  const SWord8 s4119 = 127 & s4117;
-  const SWord8 s4120 = s4113 ? s4118 : s4119;
-  const SWord8 s4121 = 1 & s178;
-  const SBool  s4122 = 0 != s4121;
-  const SWord8 s4123 = s4122 ? s4118 : s4119;
-  const SWord8 s4124 = s93 ? s4120 : s4123;
-  const SWord8 s4125 = s74 ? s4111 : s4124;
-  const SWord8 s4126 = s55 ? s4092 : s4125;
-  const SWord8 s4127 = 1 & s213;
-  const SBool  s4128 = 0 != s4127;
-  const SWord8 s4129 = 1 & s209;
-  const SBool  s4130 = 0 != s4129;
-  const SWord8 s4131 = 1 & s205;
-  const SBool  s4132 = 0 != s4131;
-  const SWord8 s4133 = (s192 >> 1) | (s192 << 7);
-  const SWord8 s4134 = 128 | s4133;
-  const SWord8 s4135 = 127 & s4133;
-  const SWord8 s4136 = s4132 ? s4134 : s4135;
-  const SWord8 s4137 = (s4136 >> 1) | (s4136 << 7);
-  const SWord8 s4138 = 128 | s4137;
-  const SWord8 s4139 = 127 & s4137;
-  const SWord8 s4140 = s4130 ? s4138 : s4139;
-  const SWord8 s4141 = (s4140 >> 1) | (s4140 << 7);
-  const SWord8 s4142 = 128 | s4141;
-  const SWord8 s4143 = 127 & s4141;
-  const SWord8 s4144 = s4128 ? s4142 : s4143;
-  const SWord8 s4145 = 1 & s218;
-  const SBool  s4146 = 0 != s4145;
-  const SWord8 s4147 = s4146 ? s4142 : s4143;
-  const SWord8 s4148 = s198 ? s4144 : s4147;
-  const SWord8 s4149 = 1 & s234;
-  const SBool  s4150 = 0 != s4149;
-  const SWord8 s4151 = 1 & s227;
-  const SBool  s4152 = 0 != s4151;
-  const SWord8 s4153 = s4152 ? s4138 : s4139;
-  const SWord8 s4154 = (s4153 >> 1) | (s4153 << 7);
-  const SWord8 s4155 = 128 | s4154;
-  const SWord8 s4156 = 127 & s4154;
-  const SWord8 s4157 = s4150 ? s4155 : s4156;
-  const SWord8 s4158 = 1 & s239;
-  const SBool  s4159 = 0 != s4158;
-  const SWord8 s4160 = s4159 ? s4155 : s4156;
-  const SWord8 s4161 = s198 ? s4157 : s4160;
-  const SWord8 s4162 = s74 ? s4148 : s4161;
-  const SWord8 s4163 = 1 & s260;
-  const SBool  s4164 = 0 != s4163;
-  const SWord8 s4165 = 1 & s256;
-  const SBool  s4166 = 0 != s4165;
-  const SWord8 s4167 = 1 & s249;
-  const SBool  s4168 = 0 != s4167;
-  const SWord8 s4169 = s4168 ? s4134 : s4135;
-  const SWord8 s4170 = (s4169 >> 1) | (s4169 << 7);
-  const SWord8 s4171 = 128 | s4170;
-  const SWord8 s4172 = 127 & s4170;
-  const SWord8 s4173 = s4166 ? s4171 : s4172;
-  const SWord8 s4174 = (s4173 >> 1) | (s4173 << 7);
-  const SWord8 s4175 = 128 | s4174;
-  const SWord8 s4176 = 127 & s4174;
-  const SWord8 s4177 = s4164 ? s4175 : s4176;
-  const SWord8 s4178 = 1 & s265;
-  const SBool  s4179 = 0 != s4178;
-  const SWord8 s4180 = s4179 ? s4175 : s4176;
-  const SWord8 s4181 = s198 ? s4177 : s4180;
-  const SWord8 s4182 = 1 & s281;
-  const SBool  s4183 = 0 != s4182;
-  const SWord8 s4184 = 1 & s274;
-  const SBool  s4185 = 0 != s4184;
-  const SWord8 s4186 = s4185 ? s4171 : s4172;
-  const SWord8 s4187 = (s4186 >> 1) | (s4186 << 7);
-  const SWord8 s4188 = 128 | s4187;
-  const SWord8 s4189 = 127 & s4187;
-  const SWord8 s4190 = s4183 ? s4188 : s4189;
-  const SWord8 s4191 = 1 & s286;
-  const SBool  s4192 = 0 != s4191;
-  const SWord8 s4193 = s4192 ? s4188 : s4189;
-  const SWord8 s4194 = s198 ? s4190 : s4193;
-  const SWord8 s4195 = s74 ? s4181 : s4194;
-  const SWord8 s4196 = s55 ? s4162 : s4195;
-  const SWord8 s4197 = s36 ? s4126 : s4196;
-  const SWord8 s4198 = 1 & s341;
-  const SBool  s4199 = 0 != s4198;
-  const SWord8 s4200 = 1 & s337;
-  const SBool  s4201 = 0 != s4200;
-  const SWord8 s4202 = 1 & s333;
-  const SBool  s4203 = 0 != s4202;
-  const SWord8 s4204 = (s320 >> 1) | (s320 << 7);
-  const SWord8 s4205 = 128 | s4204;
-  const SWord8 s4206 = 127 & s4204;
-  const SWord8 s4207 = s4203 ? s4205 : s4206;
-  const SWord8 s4208 = (s4207 >> 1) | (s4207 << 7);
-  const SWord8 s4209 = 128 | s4208;
-  const SWord8 s4210 = 127 & s4208;
-  const SWord8 s4211 = s4201 ? s4209 : s4210;
-  const SWord8 s4212 = (s4211 >> 1) | (s4211 << 7);
-  const SWord8 s4213 = 128 | s4212;
-  const SWord8 s4214 = 127 & s4212;
-  const SWord8 s4215 = s4199 ? s4213 : s4214;
-  const SWord8 s4216 = 1 & s346;
-  const SBool  s4217 = 0 != s4216;
-  const SWord8 s4218 = s4217 ? s4213 : s4214;
-  const SWord8 s4219 = s329 ? s4215 : s4218;
-  const SWord8 s4220 = 1 & s362;
-  const SBool  s4221 = 0 != s4220;
-  const SWord8 s4222 = 1 & s355;
-  const SBool  s4223 = 0 != s4222;
-  const SWord8 s4224 = s4223 ? s4209 : s4210;
-  const SWord8 s4225 = (s4224 >> 1) | (s4224 << 7);
-  const SWord8 s4226 = 128 | s4225;
-  const SWord8 s4227 = 127 & s4225;
-  const SWord8 s4228 = s4221 ? s4226 : s4227;
-  const SWord8 s4229 = 1 & s367;
-  const SBool  s4230 = 0 != s4229;
-  const SWord8 s4231 = s4230 ? s4226 : s4227;
-  const SWord8 s4232 = s329 ? s4228 : s4231;
-  const SWord8 s4233 = s307 ? s4219 : s4232;
-  const SWord8 s4234 = 1 & s388;
-  const SBool  s4235 = 0 != s4234;
-  const SWord8 s4236 = 1 & s384;
-  const SBool  s4237 = 0 != s4236;
-  const SWord8 s4238 = 1 & s377;
-  const SBool  s4239 = 0 != s4238;
-  const SWord8 s4240 = s4239 ? s4205 : s4206;
-  const SWord8 s4241 = (s4240 >> 1) | (s4240 << 7);
-  const SWord8 s4242 = 128 | s4241;
-  const SWord8 s4243 = 127 & s4241;
-  const SWord8 s4244 = s4237 ? s4242 : s4243;
-  const SWord8 s4245 = (s4244 >> 1) | (s4244 << 7);
-  const SWord8 s4246 = 128 | s4245;
-  const SWord8 s4247 = 127 & s4245;
-  const SWord8 s4248 = s4235 ? s4246 : s4247;
-  const SWord8 s4249 = 1 & s393;
-  const SBool  s4250 = 0 != s4249;
-  const SWord8 s4251 = s4250 ? s4246 : s4247;
-  const SWord8 s4252 = s329 ? s4248 : s4251;
-  const SWord8 s4253 = 1 & s409;
-  const SBool  s4254 = 0 != s4253;
-  const SWord8 s4255 = 1 & s402;
-  const SBool  s4256 = 0 != s4255;
-  const SWord8 s4257 = s4256 ? s4242 : s4243;
-  const SWord8 s4258 = (s4257 >> 1) | (s4257 << 7);
-  const SWord8 s4259 = 128 | s4258;
-  const SWord8 s4260 = 127 & s4258;
-  const SWord8 s4261 = s4254 ? s4259 : s4260;
-  const SWord8 s4262 = 1 & s414;
-  const SBool  s4263 = 0 != s4262;
-  const SWord8 s4264 = s4263 ? s4259 : s4260;
-  const SWord8 s4265 = s329 ? s4261 : s4264;
-  const SWord8 s4266 = s307 ? s4252 : s4265;
-  const SWord8 s4267 = s55 ? s4233 : s4266;
-  const SWord8 s4268 = 1 & s449;
-  const SBool  s4269 = 0 != s4268;
-  const SWord8 s4270 = 1 & s445;
-  const SBool  s4271 = 0 != s4270;
-  const SWord8 s4272 = 1 & s441;
-  const SBool  s4273 = 0 != s4272;
-  const SWord8 s4274 = (s428 >> 1) | (s428 << 7);
-  const SWord8 s4275 = 128 | s4274;
-  const SWord8 s4276 = 127 & s4274;
-  const SWord8 s4277 = s4273 ? s4275 : s4276;
-  const SWord8 s4278 = (s4277 >> 1) | (s4277 << 7);
-  const SWord8 s4279 = 128 | s4278;
-  const SWord8 s4280 = 127 & s4278;
-  const SWord8 s4281 = s4271 ? s4279 : s4280;
-  const SWord8 s4282 = (s4281 >> 1) | (s4281 << 7);
-  const SWord8 s4283 = 128 | s4282;
-  const SWord8 s4284 = 127 & s4282;
-  const SWord8 s4285 = s4269 ? s4283 : s4284;
-  const SWord8 s4286 = 1 & s454;
-  const SBool  s4287 = 0 != s4286;
-  const SWord8 s4288 = s4287 ? s4283 : s4284;
-  const SWord8 s4289 = s434 ? s4285 : s4288;
-  const SWord8 s4290 = 1 & s470;
-  const SBool  s4291 = 0 != s4290;
-  const SWord8 s4292 = 1 & s463;
-  const SBool  s4293 = 0 != s4292;
-  const SWord8 s4294 = s4293 ? s4279 : s4280;
-  const SWord8 s4295 = (s4294 >> 1) | (s4294 << 7);
-  const SWord8 s4296 = 128 | s4295;
-  const SWord8 s4297 = 127 & s4295;
-  const SWord8 s4298 = s4291 ? s4296 : s4297;
-  const SWord8 s4299 = 1 & s475;
-  const SBool  s4300 = 0 != s4299;
-  const SWord8 s4301 = s4300 ? s4296 : s4297;
-  const SWord8 s4302 = s434 ? s4298 : s4301;
-  const SWord8 s4303 = s307 ? s4289 : s4302;
-  const SWord8 s4304 = 1 & s496;
-  const SBool  s4305 = 0 != s4304;
-  const SWord8 s4306 = 1 & s492;
-  const SBool  s4307 = 0 != s4306;
-  const SWord8 s4308 = 1 & s485;
-  const SBool  s4309 = 0 != s4308;
-  const SWord8 s4310 = s4309 ? s4275 : s4276;
-  const SWord8 s4311 = (s4310 >> 1) | (s4310 << 7);
-  const SWord8 s4312 = 128 | s4311;
-  const SWord8 s4313 = 127 & s4311;
-  const SWord8 s4314 = s4307 ? s4312 : s4313;
-  const SWord8 s4315 = (s4314 >> 1) | (s4314 << 7);
-  const SWord8 s4316 = 128 | s4315;
-  const SWord8 s4317 = 127 & s4315;
-  const SWord8 s4318 = s4305 ? s4316 : s4317;
-  const SWord8 s4319 = 1 & s501;
-  const SBool  s4320 = 0 != s4319;
-  const SWord8 s4321 = s4320 ? s4316 : s4317;
-  const SWord8 s4322 = s434 ? s4318 : s4321;
-  const SWord8 s4323 = 1 & s517;
-  const SBool  s4324 = 0 != s4323;
-  const SWord8 s4325 = 1 & s510;
-  const SBool  s4326 = 0 != s4325;
-  const SWord8 s4327 = s4326 ? s4312 : s4313;
-  const SWord8 s4328 = (s4327 >> 1) | (s4327 << 7);
-  const SWord8 s4329 = 128 | s4328;
-  const SWord8 s4330 = 127 & s4328;
-  const SWord8 s4331 = s4324 ? s4329 : s4330;
-  const SWord8 s4332 = 1 & s522;
-  const SBool  s4333 = 0 != s4332;
-  const SWord8 s4334 = s4333 ? s4329 : s4330;
-  const SWord8 s4335 = s434 ? s4331 : s4334;
-  const SWord8 s4336 = s307 ? s4322 : s4335;
-  const SWord8 s4337 = s55 ? s4303 : s4336;
-  const SWord8 s4338 = s36 ? s4267 : s4337;
-  const SWord8 s4339 = s22 ? s4197 : s4338;
-  const SWord8 s4340 = 1 & s597;
-  const SBool  s4341 = 0 != s4340;
-  const SWord8 s4342 = 1 & s593;
-  const SBool  s4343 = 0 != s4342;
-  const SWord8 s4344 = 1 & s589;
-  const SBool  s4345 = 0 != s4344;
-  const SWord8 s4346 = (s576 >> 1) | (s576 << 7);
-  const SWord8 s4347 = 128 | s4346;
-  const SWord8 s4348 = 127 & s4346;
-  const SWord8 s4349 = s4345 ? s4347 : s4348;
-  const SWord8 s4350 = (s4349 >> 1) | (s4349 << 7);
-  const SWord8 s4351 = 128 | s4350;
-  const SWord8 s4352 = 127 & s4350;
-  const SWord8 s4353 = s4343 ? s4351 : s4352;
-  const SWord8 s4354 = (s4353 >> 1) | (s4353 << 7);
-  const SWord8 s4355 = 128 | s4354;
-  const SWord8 s4356 = 127 & s4354;
-  const SWord8 s4357 = s4341 ? s4355 : s4356;
-  const SWord8 s4358 = 1 & s602;
-  const SBool  s4359 = 0 != s4358;
-  const SWord8 s4360 = s4359 ? s4355 : s4356;
-  const SWord8 s4361 = s585 ? s4357 : s4360;
-  const SWord8 s4362 = 1 & s618;
-  const SBool  s4363 = 0 != s4362;
-  const SWord8 s4364 = 1 & s611;
-  const SBool  s4365 = 0 != s4364;
-  const SWord8 s4366 = s4365 ? s4351 : s4352;
-  const SWord8 s4367 = (s4366 >> 1) | (s4366 << 7);
-  const SWord8 s4368 = 128 | s4367;
-  const SWord8 s4369 = 127 & s4367;
-  const SWord8 s4370 = s4363 ? s4368 : s4369;
-  const SWord8 s4371 = 1 & s623;
-  const SBool  s4372 = 0 != s4371;
-  const SWord8 s4373 = s4372 ? s4368 : s4369;
-  const SWord8 s4374 = s585 ? s4370 : s4373;
-  const SWord8 s4375 = s566 ? s4361 : s4374;
-  const SWord8 s4376 = 1 & s644;
-  const SBool  s4377 = 0 != s4376;
-  const SWord8 s4378 = 1 & s640;
-  const SBool  s4379 = 0 != s4378;
-  const SWord8 s4380 = 1 & s633;
-  const SBool  s4381 = 0 != s4380;
-  const SWord8 s4382 = s4381 ? s4347 : s4348;
-  const SWord8 s4383 = (s4382 >> 1) | (s4382 << 7);
-  const SWord8 s4384 = 128 | s4383;
-  const SWord8 s4385 = 127 & s4383;
-  const SWord8 s4386 = s4379 ? s4384 : s4385;
-  const SWord8 s4387 = (s4386 >> 1) | (s4386 << 7);
-  const SWord8 s4388 = 128 | s4387;
-  const SWord8 s4389 = 127 & s4387;
-  const SWord8 s4390 = s4377 ? s4388 : s4389;
-  const SWord8 s4391 = 1 & s649;
-  const SBool  s4392 = 0 != s4391;
-  const SWord8 s4393 = s4392 ? s4388 : s4389;
-  const SWord8 s4394 = s585 ? s4390 : s4393;
-  const SWord8 s4395 = 1 & s665;
-  const SBool  s4396 = 0 != s4395;
-  const SWord8 s4397 = 1 & s658;
-  const SBool  s4398 = 0 != s4397;
-  const SWord8 s4399 = s4398 ? s4384 : s4385;
-  const SWord8 s4400 = (s4399 >> 1) | (s4399 << 7);
-  const SWord8 s4401 = 128 | s4400;
-  const SWord8 s4402 = 127 & s4400;
-  const SWord8 s4403 = s4396 ? s4401 : s4402;
-  const SWord8 s4404 = 1 & s670;
-  const SBool  s4405 = 0 != s4404;
-  const SWord8 s4406 = s4405 ? s4401 : s4402;
-  const SWord8 s4407 = s585 ? s4403 : s4406;
-  const SWord8 s4408 = s566 ? s4394 : s4407;
-  const SWord8 s4409 = s544 ? s4375 : s4408;
-  const SWord8 s4410 = 1 & s705;
-  const SBool  s4411 = 0 != s4410;
-  const SWord8 s4412 = 1 & s701;
-  const SBool  s4413 = 0 != s4412;
-  const SWord8 s4414 = 1 & s697;
-  const SBool  s4415 = 0 != s4414;
-  const SWord8 s4416 = (s684 >> 1) | (s684 << 7);
-  const SWord8 s4417 = 128 | s4416;
-  const SWord8 s4418 = 127 & s4416;
-  const SWord8 s4419 = s4415 ? s4417 : s4418;
-  const SWord8 s4420 = (s4419 >> 1) | (s4419 << 7);
-  const SWord8 s4421 = 128 | s4420;
-  const SWord8 s4422 = 127 & s4420;
-  const SWord8 s4423 = s4413 ? s4421 : s4422;
-  const SWord8 s4424 = (s4423 >> 1) | (s4423 << 7);
-  const SWord8 s4425 = 128 | s4424;
-  const SWord8 s4426 = 127 & s4424;
-  const SWord8 s4427 = s4411 ? s4425 : s4426;
-  const SWord8 s4428 = 1 & s710;
-  const SBool  s4429 = 0 != s4428;
-  const SWord8 s4430 = s4429 ? s4425 : s4426;
-  const SWord8 s4431 = s690 ? s4427 : s4430;
-  const SWord8 s4432 = 1 & s726;
-  const SBool  s4433 = 0 != s4432;
-  const SWord8 s4434 = 1 & s719;
-  const SBool  s4435 = 0 != s4434;
-  const SWord8 s4436 = s4435 ? s4421 : s4422;
-  const SWord8 s4437 = (s4436 >> 1) | (s4436 << 7);
-  const SWord8 s4438 = 128 | s4437;
-  const SWord8 s4439 = 127 & s4437;
-  const SWord8 s4440 = s4433 ? s4438 : s4439;
-  const SWord8 s4441 = 1 & s731;
-  const SBool  s4442 = 0 != s4441;
-  const SWord8 s4443 = s4442 ? s4438 : s4439;
-  const SWord8 s4444 = s690 ? s4440 : s4443;
-  const SWord8 s4445 = s566 ? s4431 : s4444;
-  const SWord8 s4446 = 1 & s752;
-  const SBool  s4447 = 0 != s4446;
-  const SWord8 s4448 = 1 & s748;
-  const SBool  s4449 = 0 != s4448;
-  const SWord8 s4450 = 1 & s741;
-  const SBool  s4451 = 0 != s4450;
-  const SWord8 s4452 = s4451 ? s4417 : s4418;
-  const SWord8 s4453 = (s4452 >> 1) | (s4452 << 7);
-  const SWord8 s4454 = 128 | s4453;
-  const SWord8 s4455 = 127 & s4453;
-  const SWord8 s4456 = s4449 ? s4454 : s4455;
-  const SWord8 s4457 = (s4456 >> 1) | (s4456 << 7);
-  const SWord8 s4458 = 128 | s4457;
-  const SWord8 s4459 = 127 & s4457;
-  const SWord8 s4460 = s4447 ? s4458 : s4459;
-  const SWord8 s4461 = 1 & s757;
-  const SBool  s4462 = 0 != s4461;
-  const SWord8 s4463 = s4462 ? s4458 : s4459;
-  const SWord8 s4464 = s690 ? s4460 : s4463;
-  const SWord8 s4465 = 1 & s773;
-  const SBool  s4466 = 0 != s4465;
-  const SWord8 s4467 = 1 & s766;
-  const SBool  s4468 = 0 != s4467;
-  const SWord8 s4469 = s4468 ? s4454 : s4455;
-  const SWord8 s4470 = (s4469 >> 1) | (s4469 << 7);
-  const SWord8 s4471 = 128 | s4470;
-  const SWord8 s4472 = 127 & s4470;
-  const SWord8 s4473 = s4466 ? s4471 : s4472;
-  const SWord8 s4474 = 1 & s778;
-  const SBool  s4475 = 0 != s4474;
-  const SWord8 s4476 = s4475 ? s4471 : s4472;
-  const SWord8 s4477 = s690 ? s4473 : s4476;
-  const SWord8 s4478 = s566 ? s4464 : s4477;
-  const SWord8 s4479 = s544 ? s4445 : s4478;
-  const SWord8 s4480 = s36 ? s4409 : s4479;
-  const SWord8 s4481 = 1 & s833;
-  const SBool  s4482 = 0 != s4481;
-  const SWord8 s4483 = 1 & s829;
-  const SBool  s4484 = 0 != s4483;
-  const SWord8 s4485 = 1 & s825;
-  const SBool  s4486 = 0 != s4485;
-  const SWord8 s4487 = (s812 >> 1) | (s812 << 7);
-  const SWord8 s4488 = 128 | s4487;
-  const SWord8 s4489 = 127 & s4487;
-  const SWord8 s4490 = s4486 ? s4488 : s4489;
-  const SWord8 s4491 = (s4490 >> 1) | (s4490 << 7);
-  const SWord8 s4492 = 128 | s4491;
-  const SWord8 s4493 = 127 & s4491;
-  const SWord8 s4494 = s4484 ? s4492 : s4493;
-  const SWord8 s4495 = (s4494 >> 1) | (s4494 << 7);
-  const SWord8 s4496 = 128 | s4495;
-  const SWord8 s4497 = 127 & s4495;
-  const SWord8 s4498 = s4482 ? s4496 : s4497;
-  const SWord8 s4499 = 1 & s838;
-  const SBool  s4500 = 0 != s4499;
-  const SWord8 s4501 = s4500 ? s4496 : s4497;
-  const SWord8 s4502 = s821 ? s4498 : s4501;
-  const SWord8 s4503 = 1 & s854;
-  const SBool  s4504 = 0 != s4503;
-  const SWord8 s4505 = 1 & s847;
-  const SBool  s4506 = 0 != s4505;
-  const SWord8 s4507 = s4506 ? s4492 : s4493;
-  const SWord8 s4508 = (s4507 >> 1) | (s4507 << 7);
-  const SWord8 s4509 = 128 | s4508;
-  const SWord8 s4510 = 127 & s4508;
-  const SWord8 s4511 = s4504 ? s4509 : s4510;
-  const SWord8 s4512 = 1 & s859;
-  const SBool  s4513 = 0 != s4512;
-  const SWord8 s4514 = s4513 ? s4509 : s4510;
-  const SWord8 s4515 = s821 ? s4511 : s4514;
-  const SWord8 s4516 = s799 ? s4502 : s4515;
-  const SWord8 s4517 = 1 & s880;
-  const SBool  s4518 = 0 != s4517;
-  const SWord8 s4519 = 1 & s876;
-  const SBool  s4520 = 0 != s4519;
-  const SWord8 s4521 = 1 & s869;
-  const SBool  s4522 = 0 != s4521;
-  const SWord8 s4523 = s4522 ? s4488 : s4489;
-  const SWord8 s4524 = (s4523 >> 1) | (s4523 << 7);
-  const SWord8 s4525 = 128 | s4524;
-  const SWord8 s4526 = 127 & s4524;
-  const SWord8 s4527 = s4520 ? s4525 : s4526;
-  const SWord8 s4528 = (s4527 >> 1) | (s4527 << 7);
-  const SWord8 s4529 = 128 | s4528;
-  const SWord8 s4530 = 127 & s4528;
-  const SWord8 s4531 = s4518 ? s4529 : s4530;
-  const SWord8 s4532 = 1 & s885;
-  const SBool  s4533 = 0 != s4532;
-  const SWord8 s4534 = s4533 ? s4529 : s4530;
-  const SWord8 s4535 = s821 ? s4531 : s4534;
-  const SWord8 s4536 = 1 & s901;
-  const SBool  s4537 = 0 != s4536;
-  const SWord8 s4538 = 1 & s894;
-  const SBool  s4539 = 0 != s4538;
-  const SWord8 s4540 = s4539 ? s4525 : s4526;
-  const SWord8 s4541 = (s4540 >> 1) | (s4540 << 7);
-  const SWord8 s4542 = 128 | s4541;
-  const SWord8 s4543 = 127 & s4541;
-  const SWord8 s4544 = s4537 ? s4542 : s4543;
-  const SWord8 s4545 = 1 & s906;
-  const SBool  s4546 = 0 != s4545;
-  const SWord8 s4547 = s4546 ? s4542 : s4543;
-  const SWord8 s4548 = s821 ? s4544 : s4547;
-  const SWord8 s4549 = s799 ? s4535 : s4548;
-  const SWord8 s4550 = s544 ? s4516 : s4549;
-  const SWord8 s4551 = 1 & s941;
-  const SBool  s4552 = 0 != s4551;
-  const SWord8 s4553 = 1 & s937;
-  const SBool  s4554 = 0 != s4553;
-  const SWord8 s4555 = 1 & s933;
-  const SBool  s4556 = 0 != s4555;
-  const SWord8 s4557 = (s920 >> 1) | (s920 << 7);
-  const SWord8 s4558 = 128 | s4557;
-  const SWord8 s4559 = 127 & s4557;
-  const SWord8 s4560 = s4556 ? s4558 : s4559;
-  const SWord8 s4561 = (s4560 >> 1) | (s4560 << 7);
-  const SWord8 s4562 = 128 | s4561;
-  const SWord8 s4563 = 127 & s4561;
-  const SWord8 s4564 = s4554 ? s4562 : s4563;
-  const SWord8 s4565 = (s4564 >> 1) | (s4564 << 7);
-  const SWord8 s4566 = 128 | s4565;
-  const SWord8 s4567 = 127 & s4565;
-  const SWord8 s4568 = s4552 ? s4566 : s4567;
-  const SWord8 s4569 = 1 & s946;
-  const SBool  s4570 = 0 != s4569;
-  const SWord8 s4571 = s4570 ? s4566 : s4567;
-  const SWord8 s4572 = s926 ? s4568 : s4571;
-  const SWord8 s4573 = 1 & s962;
-  const SBool  s4574 = 0 != s4573;
-  const SWord8 s4575 = 1 & s955;
-  const SBool  s4576 = 0 != s4575;
-  const SWord8 s4577 = s4576 ? s4562 : s4563;
-  const SWord8 s4578 = (s4577 >> 1) | (s4577 << 7);
-  const SWord8 s4579 = 128 | s4578;
-  const SWord8 s4580 = 127 & s4578;
-  const SWord8 s4581 = s4574 ? s4579 : s4580;
-  const SWord8 s4582 = 1 & s967;
-  const SBool  s4583 = 0 != s4582;
-  const SWord8 s4584 = s4583 ? s4579 : s4580;
-  const SWord8 s4585 = s926 ? s4581 : s4584;
-  const SWord8 s4586 = s799 ? s4572 : s4585;
-  const SWord8 s4587 = 1 & s988;
-  const SBool  s4588 = 0 != s4587;
-  const SWord8 s4589 = 1 & s984;
-  const SBool  s4590 = 0 != s4589;
-  const SWord8 s4591 = 1 & s977;
-  const SBool  s4592 = 0 != s4591;
-  const SWord8 s4593 = s4592 ? s4558 : s4559;
-  const SWord8 s4594 = (s4593 >> 1) | (s4593 << 7);
-  const SWord8 s4595 = 128 | s4594;
-  const SWord8 s4596 = 127 & s4594;
-  const SWord8 s4597 = s4590 ? s4595 : s4596;
-  const SWord8 s4598 = (s4597 >> 1) | (s4597 << 7);
-  const SWord8 s4599 = 128 | s4598;
-  const SWord8 s4600 = 127 & s4598;
-  const SWord8 s4601 = s4588 ? s4599 : s4600;
-  const SWord8 s4602 = 1 & s993;
-  const SBool  s4603 = 0 != s4602;
-  const SWord8 s4604 = s4603 ? s4599 : s4600;
-  const SWord8 s4605 = s926 ? s4601 : s4604;
-  const SWord8 s4606 = 1 & s1009;
-  const SBool  s4607 = 0 != s4606;
-  const SWord8 s4608 = 1 & s1002;
-  const SBool  s4609 = 0 != s4608;
-  const SWord8 s4610 = s4609 ? s4595 : s4596;
-  const SWord8 s4611 = (s4610 >> 1) | (s4610 << 7);
-  const SWord8 s4612 = 128 | s4611;
-  const SWord8 s4613 = 127 & s4611;
-  const SWord8 s4614 = s4607 ? s4612 : s4613;
-  const SWord8 s4615 = 1 & s1014;
-  const SBool  s4616 = 0 != s4615;
-  const SWord8 s4617 = s4616 ? s4612 : s4613;
-  const SWord8 s4618 = s926 ? s4614 : s4617;
-  const SWord8 s4619 = s799 ? s4605 : s4618;
-  const SWord8 s4620 = s544 ? s4586 : s4619;
-  const SWord8 s4621 = s36 ? s4550 : s4620;
-  const SWord8 s4622 = s22 ? s4480 : s4621;
-  const SWord8 s4623 = s17 ? s4339 : s4622;
-  const SWord8 s4624 = 1 & s1109;
-  const SBool  s4625 = 0 != s4624;
-  const SWord8 s4626 = 1 & s1105;
-  const SBool  s4627 = 0 != s4626;
-  const SWord8 s4628 = 1 & s1101;
-  const SBool  s4629 = 0 != s4628;
-  const SWord8 s4630 = (s1088 >> 1) | (s1088 << 7);
-  const SWord8 s4631 = 128 | s4630;
-  const SWord8 s4632 = 127 & s4630;
-  const SWord8 s4633 = s4629 ? s4631 : s4632;
-  const SWord8 s4634 = (s4633 >> 1) | (s4633 << 7);
-  const SWord8 s4635 = 128 | s4634;
-  const SWord8 s4636 = 127 & s4634;
-  const SWord8 s4637 = s4627 ? s4635 : s4636;
-  const SWord8 s4638 = (s4637 >> 1) | (s4637 << 7);
-  const SWord8 s4639 = 128 | s4638;
-  const SWord8 s4640 = 127 & s4638;
-  const SWord8 s4641 = s4625 ? s4639 : s4640;
-  const SWord8 s4642 = 1 & s1114;
-  const SBool  s4643 = 0 != s4642;
-  const SWord8 s4644 = s4643 ? s4639 : s4640;
-  const SWord8 s4645 = s1097 ? s4641 : s4644;
-  const SWord8 s4646 = 1 & s1130;
-  const SBool  s4647 = 0 != s4646;
-  const SWord8 s4648 = 1 & s1123;
-  const SBool  s4649 = 0 != s4648;
-  const SWord8 s4650 = s4649 ? s4635 : s4636;
-  const SWord8 s4651 = (s4650 >> 1) | (s4650 << 7);
-  const SWord8 s4652 = 128 | s4651;
-  const SWord8 s4653 = 127 & s4651;
-  const SWord8 s4654 = s4647 ? s4652 : s4653;
-  const SWord8 s4655 = 1 & s1135;
-  const SBool  s4656 = 0 != s4655;
-  const SWord8 s4657 = s4656 ? s4652 : s4653;
-  const SWord8 s4658 = s1097 ? s4654 : s4657;
-  const SWord8 s4659 = s1078 ? s4645 : s4658;
-  const SWord8 s4660 = 1 & s1156;
-  const SBool  s4661 = 0 != s4660;
-  const SWord8 s4662 = 1 & s1152;
-  const SBool  s4663 = 0 != s4662;
-  const SWord8 s4664 = 1 & s1145;
-  const SBool  s4665 = 0 != s4664;
-  const SWord8 s4666 = s4665 ? s4631 : s4632;
-  const SWord8 s4667 = (s4666 >> 1) | (s4666 << 7);
-  const SWord8 s4668 = 128 | s4667;
-  const SWord8 s4669 = 127 & s4667;
-  const SWord8 s4670 = s4663 ? s4668 : s4669;
-  const SWord8 s4671 = (s4670 >> 1) | (s4670 << 7);
-  const SWord8 s4672 = 128 | s4671;
-  const SWord8 s4673 = 127 & s4671;
-  const SWord8 s4674 = s4661 ? s4672 : s4673;
-  const SWord8 s4675 = 1 & s1161;
-  const SBool  s4676 = 0 != s4675;
-  const SWord8 s4677 = s4676 ? s4672 : s4673;
-  const SWord8 s4678 = s1097 ? s4674 : s4677;
-  const SWord8 s4679 = 1 & s1177;
-  const SBool  s4680 = 0 != s4679;
-  const SWord8 s4681 = 1 & s1170;
-  const SBool  s4682 = 0 != s4681;
-  const SWord8 s4683 = s4682 ? s4668 : s4669;
-  const SWord8 s4684 = (s4683 >> 1) | (s4683 << 7);
-  const SWord8 s4685 = 128 | s4684;
-  const SWord8 s4686 = 127 & s4684;
-  const SWord8 s4687 = s4680 ? s4685 : s4686;
-  const SWord8 s4688 = 1 & s1182;
-  const SBool  s4689 = 0 != s4688;
-  const SWord8 s4690 = s4689 ? s4685 : s4686;
-  const SWord8 s4691 = s1097 ? s4687 : s4690;
-  const SWord8 s4692 = s1078 ? s4678 : s4691;
-  const SWord8 s4693 = s1059 ? s4659 : s4692;
-  const SWord8 s4694 = 1 & s1217;
-  const SBool  s4695 = 0 != s4694;
-  const SWord8 s4696 = 1 & s1213;
-  const SBool  s4697 = 0 != s4696;
-  const SWord8 s4698 = 1 & s1209;
-  const SBool  s4699 = 0 != s4698;
-  const SWord8 s4700 = (s1196 >> 1) | (s1196 << 7);
-  const SWord8 s4701 = 128 | s4700;
-  const SWord8 s4702 = 127 & s4700;
-  const SWord8 s4703 = s4699 ? s4701 : s4702;
-  const SWord8 s4704 = (s4703 >> 1) | (s4703 << 7);
-  const SWord8 s4705 = 128 | s4704;
-  const SWord8 s4706 = 127 & s4704;
-  const SWord8 s4707 = s4697 ? s4705 : s4706;
-  const SWord8 s4708 = (s4707 >> 1) | (s4707 << 7);
-  const SWord8 s4709 = 128 | s4708;
-  const SWord8 s4710 = 127 & s4708;
-  const SWord8 s4711 = s4695 ? s4709 : s4710;
-  const SWord8 s4712 = 1 & s1222;
-  const SBool  s4713 = 0 != s4712;
-  const SWord8 s4714 = s4713 ? s4709 : s4710;
-  const SWord8 s4715 = s1202 ? s4711 : s4714;
-  const SWord8 s4716 = 1 & s1238;
-  const SBool  s4717 = 0 != s4716;
-  const SWord8 s4718 = 1 & s1231;
-  const SBool  s4719 = 0 != s4718;
-  const SWord8 s4720 = s4719 ? s4705 : s4706;
-  const SWord8 s4721 = (s4720 >> 1) | (s4720 << 7);
-  const SWord8 s4722 = 128 | s4721;
-  const SWord8 s4723 = 127 & s4721;
-  const SWord8 s4724 = s4717 ? s4722 : s4723;
-  const SWord8 s4725 = 1 & s1243;
-  const SBool  s4726 = 0 != s4725;
-  const SWord8 s4727 = s4726 ? s4722 : s4723;
-  const SWord8 s4728 = s1202 ? s4724 : s4727;
-  const SWord8 s4729 = s1078 ? s4715 : s4728;
-  const SWord8 s4730 = 1 & s1264;
-  const SBool  s4731 = 0 != s4730;
-  const SWord8 s4732 = 1 & s1260;
-  const SBool  s4733 = 0 != s4732;
-  const SWord8 s4734 = 1 & s1253;
-  const SBool  s4735 = 0 != s4734;
-  const SWord8 s4736 = s4735 ? s4701 : s4702;
-  const SWord8 s4737 = (s4736 >> 1) | (s4736 << 7);
-  const SWord8 s4738 = 128 | s4737;
-  const SWord8 s4739 = 127 & s4737;
-  const SWord8 s4740 = s4733 ? s4738 : s4739;
-  const SWord8 s4741 = (s4740 >> 1) | (s4740 << 7);
-  const SWord8 s4742 = 128 | s4741;
-  const SWord8 s4743 = 127 & s4741;
-  const SWord8 s4744 = s4731 ? s4742 : s4743;
-  const SWord8 s4745 = 1 & s1269;
-  const SBool  s4746 = 0 != s4745;
-  const SWord8 s4747 = s4746 ? s4742 : s4743;
-  const SWord8 s4748 = s1202 ? s4744 : s4747;
-  const SWord8 s4749 = 1 & s1285;
-  const SBool  s4750 = 0 != s4749;
-  const SWord8 s4751 = 1 & s1278;
-  const SBool  s4752 = 0 != s4751;
-  const SWord8 s4753 = s4752 ? s4738 : s4739;
-  const SWord8 s4754 = (s4753 >> 1) | (s4753 << 7);
-  const SWord8 s4755 = 128 | s4754;
-  const SWord8 s4756 = 127 & s4754;
-  const SWord8 s4757 = s4750 ? s4755 : s4756;
-  const SWord8 s4758 = 1 & s1290;
-  const SBool  s4759 = 0 != s4758;
-  const SWord8 s4760 = s4759 ? s4755 : s4756;
-  const SWord8 s4761 = s1202 ? s4757 : s4760;
-  const SWord8 s4762 = s1078 ? s4748 : s4761;
-  const SWord8 s4763 = s1059 ? s4729 : s4762;
-  const SWord8 s4764 = s1037 ? s4693 : s4763;
-  const SWord8 s4765 = 1 & s1345;
-  const SBool  s4766 = 0 != s4765;
-  const SWord8 s4767 = 1 & s1341;
-  const SBool  s4768 = 0 != s4767;
-  const SWord8 s4769 = 1 & s1337;
-  const SBool  s4770 = 0 != s4769;
-  const SWord8 s4771 = (s1324 >> 1) | (s1324 << 7);
-  const SWord8 s4772 = 128 | s4771;
-  const SWord8 s4773 = 127 & s4771;
-  const SWord8 s4774 = s4770 ? s4772 : s4773;
-  const SWord8 s4775 = (s4774 >> 1) | (s4774 << 7);
-  const SWord8 s4776 = 128 | s4775;
-  const SWord8 s4777 = 127 & s4775;
-  const SWord8 s4778 = s4768 ? s4776 : s4777;
-  const SWord8 s4779 = (s4778 >> 1) | (s4778 << 7);
-  const SWord8 s4780 = 128 | s4779;
-  const SWord8 s4781 = 127 & s4779;
-  const SWord8 s4782 = s4766 ? s4780 : s4781;
-  const SWord8 s4783 = 1 & s1350;
-  const SBool  s4784 = 0 != s4783;
-  const SWord8 s4785 = s4784 ? s4780 : s4781;
-  const SWord8 s4786 = s1333 ? s4782 : s4785;
-  const SWord8 s4787 = 1 & s1366;
-  const SBool  s4788 = 0 != s4787;
-  const SWord8 s4789 = 1 & s1359;
-  const SBool  s4790 = 0 != s4789;
-  const SWord8 s4791 = s4790 ? s4776 : s4777;
-  const SWord8 s4792 = (s4791 >> 1) | (s4791 << 7);
-  const SWord8 s4793 = 128 | s4792;
-  const SWord8 s4794 = 127 & s4792;
-  const SWord8 s4795 = s4788 ? s4793 : s4794;
-  const SWord8 s4796 = 1 & s1371;
-  const SBool  s4797 = 0 != s4796;
-  const SWord8 s4798 = s4797 ? s4793 : s4794;
-  const SWord8 s4799 = s1333 ? s4795 : s4798;
-  const SWord8 s4800 = s1311 ? s4786 : s4799;
-  const SWord8 s4801 = 1 & s1392;
-  const SBool  s4802 = 0 != s4801;
-  const SWord8 s4803 = 1 & s1388;
-  const SBool  s4804 = 0 != s4803;
-  const SWord8 s4805 = 1 & s1381;
-  const SBool  s4806 = 0 != s4805;
-  const SWord8 s4807 = s4806 ? s4772 : s4773;
-  const SWord8 s4808 = (s4807 >> 1) | (s4807 << 7);
-  const SWord8 s4809 = 128 | s4808;
-  const SWord8 s4810 = 127 & s4808;
-  const SWord8 s4811 = s4804 ? s4809 : s4810;
-  const SWord8 s4812 = (s4811 >> 1) | (s4811 << 7);
-  const SWord8 s4813 = 128 | s4812;
-  const SWord8 s4814 = 127 & s4812;
-  const SWord8 s4815 = s4802 ? s4813 : s4814;
-  const SWord8 s4816 = 1 & s1397;
-  const SBool  s4817 = 0 != s4816;
-  const SWord8 s4818 = s4817 ? s4813 : s4814;
-  const SWord8 s4819 = s1333 ? s4815 : s4818;
-  const SWord8 s4820 = 1 & s1413;
-  const SBool  s4821 = 0 != s4820;
-  const SWord8 s4822 = 1 & s1406;
-  const SBool  s4823 = 0 != s4822;
-  const SWord8 s4824 = s4823 ? s4809 : s4810;
-  const SWord8 s4825 = (s4824 >> 1) | (s4824 << 7);
-  const SWord8 s4826 = 128 | s4825;
-  const SWord8 s4827 = 127 & s4825;
-  const SWord8 s4828 = s4821 ? s4826 : s4827;
-  const SWord8 s4829 = 1 & s1418;
-  const SBool  s4830 = 0 != s4829;
-  const SWord8 s4831 = s4830 ? s4826 : s4827;
-  const SWord8 s4832 = s1333 ? s4828 : s4831;
-  const SWord8 s4833 = s1311 ? s4819 : s4832;
-  const SWord8 s4834 = s1059 ? s4800 : s4833;
-  const SWord8 s4835 = 1 & s1453;
-  const SBool  s4836 = 0 != s4835;
-  const SWord8 s4837 = 1 & s1449;
-  const SBool  s4838 = 0 != s4837;
-  const SWord8 s4839 = 1 & s1445;
-  const SBool  s4840 = 0 != s4839;
-  const SWord8 s4841 = (s1432 >> 1) | (s1432 << 7);
-  const SWord8 s4842 = 128 | s4841;
-  const SWord8 s4843 = 127 & s4841;
-  const SWord8 s4844 = s4840 ? s4842 : s4843;
-  const SWord8 s4845 = (s4844 >> 1) | (s4844 << 7);
-  const SWord8 s4846 = 128 | s4845;
-  const SWord8 s4847 = 127 & s4845;
-  const SWord8 s4848 = s4838 ? s4846 : s4847;
-  const SWord8 s4849 = (s4848 >> 1) | (s4848 << 7);
-  const SWord8 s4850 = 128 | s4849;
-  const SWord8 s4851 = 127 & s4849;
-  const SWord8 s4852 = s4836 ? s4850 : s4851;
-  const SWord8 s4853 = 1 & s1458;
-  const SBool  s4854 = 0 != s4853;
-  const SWord8 s4855 = s4854 ? s4850 : s4851;
-  const SWord8 s4856 = s1438 ? s4852 : s4855;
-  const SWord8 s4857 = 1 & s1474;
-  const SBool  s4858 = 0 != s4857;
-  const SWord8 s4859 = 1 & s1467;
-  const SBool  s4860 = 0 != s4859;
-  const SWord8 s4861 = s4860 ? s4846 : s4847;
-  const SWord8 s4862 = (s4861 >> 1) | (s4861 << 7);
-  const SWord8 s4863 = 128 | s4862;
-  const SWord8 s4864 = 127 & s4862;
-  const SWord8 s4865 = s4858 ? s4863 : s4864;
-  const SWord8 s4866 = 1 & s1479;
-  const SBool  s4867 = 0 != s4866;
-  const SWord8 s4868 = s4867 ? s4863 : s4864;
-  const SWord8 s4869 = s1438 ? s4865 : s4868;
-  const SWord8 s4870 = s1311 ? s4856 : s4869;
-  const SWord8 s4871 = 1 & s1500;
-  const SBool  s4872 = 0 != s4871;
-  const SWord8 s4873 = 1 & s1496;
-  const SBool  s4874 = 0 != s4873;
-  const SWord8 s4875 = 1 & s1489;
-  const SBool  s4876 = 0 != s4875;
-  const SWord8 s4877 = s4876 ? s4842 : s4843;
-  const SWord8 s4878 = (s4877 >> 1) | (s4877 << 7);
-  const SWord8 s4879 = 128 | s4878;
-  const SWord8 s4880 = 127 & s4878;
-  const SWord8 s4881 = s4874 ? s4879 : s4880;
-  const SWord8 s4882 = (s4881 >> 1) | (s4881 << 7);
-  const SWord8 s4883 = 128 | s4882;
-  const SWord8 s4884 = 127 & s4882;
-  const SWord8 s4885 = s4872 ? s4883 : s4884;
-  const SWord8 s4886 = 1 & s1505;
-  const SBool  s4887 = 0 != s4886;
-  const SWord8 s4888 = s4887 ? s4883 : s4884;
-  const SWord8 s4889 = s1438 ? s4885 : s4888;
-  const SWord8 s4890 = 1 & s1521;
-  const SBool  s4891 = 0 != s4890;
-  const SWord8 s4892 = 1 & s1514;
-  const SBool  s4893 = 0 != s4892;
-  const SWord8 s4894 = s4893 ? s4879 : s4880;
-  const SWord8 s4895 = (s4894 >> 1) | (s4894 << 7);
-  const SWord8 s4896 = 128 | s4895;
-  const SWord8 s4897 = 127 & s4895;
-  const SWord8 s4898 = s4891 ? s4896 : s4897;
-  const SWord8 s4899 = 1 & s1526;
-  const SBool  s4900 = 0 != s4899;
-  const SWord8 s4901 = s4900 ? s4896 : s4897;
-  const SWord8 s4902 = s1438 ? s4898 : s4901;
-  const SWord8 s4903 = s1311 ? s4889 : s4902;
-  const SWord8 s4904 = s1059 ? s4870 : s4903;
-  const SWord8 s4905 = s1037 ? s4834 : s4904;
-  const SWord8 s4906 = s22 ? s4764 : s4905;
-  const SWord8 s4907 = 1 & s1601;
-  const SBool  s4908 = 0 != s4907;
-  const SWord8 s4909 = 1 & s1597;
-  const SBool  s4910 = 0 != s4909;
-  const SWord8 s4911 = 1 & s1593;
-  const SBool  s4912 = 0 != s4911;
-  const SWord8 s4913 = (s1580 >> 1) | (s1580 << 7);
-  const SWord8 s4914 = 128 | s4913;
-  const SWord8 s4915 = 127 & s4913;
-  const SWord8 s4916 = s4912 ? s4914 : s4915;
-  const SWord8 s4917 = (s4916 >> 1) | (s4916 << 7);
-  const SWord8 s4918 = 128 | s4917;
-  const SWord8 s4919 = 127 & s4917;
-  const SWord8 s4920 = s4910 ? s4918 : s4919;
-  const SWord8 s4921 = (s4920 >> 1) | (s4920 << 7);
-  const SWord8 s4922 = 128 | s4921;
-  const SWord8 s4923 = 127 & s4921;
-  const SWord8 s4924 = s4908 ? s4922 : s4923;
-  const SWord8 s4925 = 1 & s1606;
-  const SBool  s4926 = 0 != s4925;
-  const SWord8 s4927 = s4926 ? s4922 : s4923;
-  const SWord8 s4928 = s1589 ? s4924 : s4927;
-  const SWord8 s4929 = 1 & s1622;
-  const SBool  s4930 = 0 != s4929;
-  const SWord8 s4931 = 1 & s1615;
-  const SBool  s4932 = 0 != s4931;
-  const SWord8 s4933 = s4932 ? s4918 : s4919;
-  const SWord8 s4934 = (s4933 >> 1) | (s4933 << 7);
-  const SWord8 s4935 = 128 | s4934;
-  const SWord8 s4936 = 127 & s4934;
-  const SWord8 s4937 = s4930 ? s4935 : s4936;
-  const SWord8 s4938 = 1 & s1627;
-  const SBool  s4939 = 0 != s4938;
-  const SWord8 s4940 = s4939 ? s4935 : s4936;
-  const SWord8 s4941 = s1589 ? s4937 : s4940;
-  const SWord8 s4942 = s1570 ? s4928 : s4941;
-  const SWord8 s4943 = 1 & s1648;
-  const SBool  s4944 = 0 != s4943;
-  const SWord8 s4945 = 1 & s1644;
-  const SBool  s4946 = 0 != s4945;
-  const SWord8 s4947 = 1 & s1637;
-  const SBool  s4948 = 0 != s4947;
-  const SWord8 s4949 = s4948 ? s4914 : s4915;
-  const SWord8 s4950 = (s4949 >> 1) | (s4949 << 7);
-  const SWord8 s4951 = 128 | s4950;
-  const SWord8 s4952 = 127 & s4950;
-  const SWord8 s4953 = s4946 ? s4951 : s4952;
-  const SWord8 s4954 = (s4953 >> 1) | (s4953 << 7);
-  const SWord8 s4955 = 128 | s4954;
-  const SWord8 s4956 = 127 & s4954;
-  const SWord8 s4957 = s4944 ? s4955 : s4956;
-  const SWord8 s4958 = 1 & s1653;
-  const SBool  s4959 = 0 != s4958;
-  const SWord8 s4960 = s4959 ? s4955 : s4956;
-  const SWord8 s4961 = s1589 ? s4957 : s4960;
-  const SWord8 s4962 = 1 & s1669;
-  const SBool  s4963 = 0 != s4962;
-  const SWord8 s4964 = 1 & s1662;
-  const SBool  s4965 = 0 != s4964;
-  const SWord8 s4966 = s4965 ? s4951 : s4952;
-  const SWord8 s4967 = (s4966 >> 1) | (s4966 << 7);
-  const SWord8 s4968 = 128 | s4967;
-  const SWord8 s4969 = 127 & s4967;
-  const SWord8 s4970 = s4963 ? s4968 : s4969;
-  const SWord8 s4971 = 1 & s1674;
-  const SBool  s4972 = 0 != s4971;
-  const SWord8 s4973 = s4972 ? s4968 : s4969;
-  const SWord8 s4974 = s1589 ? s4970 : s4973;
-  const SWord8 s4975 = s1570 ? s4961 : s4974;
-  const SWord8 s4976 = s1548 ? s4942 : s4975;
-  const SWord8 s4977 = 1 & s1709;
-  const SBool  s4978 = 0 != s4977;
-  const SWord8 s4979 = 1 & s1705;
-  const SBool  s4980 = 0 != s4979;
-  const SWord8 s4981 = 1 & s1701;
-  const SBool  s4982 = 0 != s4981;
-  const SWord8 s4983 = (s1688 >> 1) | (s1688 << 7);
-  const SWord8 s4984 = 128 | s4983;
-  const SWord8 s4985 = 127 & s4983;
-  const SWord8 s4986 = s4982 ? s4984 : s4985;
-  const SWord8 s4987 = (s4986 >> 1) | (s4986 << 7);
-  const SWord8 s4988 = 128 | s4987;
-  const SWord8 s4989 = 127 & s4987;
-  const SWord8 s4990 = s4980 ? s4988 : s4989;
-  const SWord8 s4991 = (s4990 >> 1) | (s4990 << 7);
-  const SWord8 s4992 = 128 | s4991;
-  const SWord8 s4993 = 127 & s4991;
-  const SWord8 s4994 = s4978 ? s4992 : s4993;
-  const SWord8 s4995 = 1 & s1714;
-  const SBool  s4996 = 0 != s4995;
-  const SWord8 s4997 = s4996 ? s4992 : s4993;
-  const SWord8 s4998 = s1694 ? s4994 : s4997;
-  const SWord8 s4999 = 1 & s1730;
-  const SBool  s5000 = 0 != s4999;
-  const SWord8 s5001 = 1 & s1723;
-  const SBool  s5002 = 0 != s5001;
-  const SWord8 s5003 = s5002 ? s4988 : s4989;
-  const SWord8 s5004 = (s5003 >> 1) | (s5003 << 7);
-  const SWord8 s5005 = 128 | s5004;
-  const SWord8 s5006 = 127 & s5004;
-  const SWord8 s5007 = s5000 ? s5005 : s5006;
-  const SWord8 s5008 = 1 & s1735;
-  const SBool  s5009 = 0 != s5008;
-  const SWord8 s5010 = s5009 ? s5005 : s5006;
-  const SWord8 s5011 = s1694 ? s5007 : s5010;
-  const SWord8 s5012 = s1570 ? s4998 : s5011;
-  const SWord8 s5013 = 1 & s1756;
-  const SBool  s5014 = 0 != s5013;
-  const SWord8 s5015 = 1 & s1752;
-  const SBool  s5016 = 0 != s5015;
-  const SWord8 s5017 = 1 & s1745;
-  const SBool  s5018 = 0 != s5017;
-  const SWord8 s5019 = s5018 ? s4984 : s4985;
-  const SWord8 s5020 = (s5019 >> 1) | (s5019 << 7);
-  const SWord8 s5021 = 128 | s5020;
-  const SWord8 s5022 = 127 & s5020;
-  const SWord8 s5023 = s5016 ? s5021 : s5022;
-  const SWord8 s5024 = (s5023 >> 1) | (s5023 << 7);
-  const SWord8 s5025 = 128 | s5024;
-  const SWord8 s5026 = 127 & s5024;
-  const SWord8 s5027 = s5014 ? s5025 : s5026;
-  const SWord8 s5028 = 1 & s1761;
-  const SBool  s5029 = 0 != s5028;
-  const SWord8 s5030 = s5029 ? s5025 : s5026;
-  const SWord8 s5031 = s1694 ? s5027 : s5030;
-  const SWord8 s5032 = 1 & s1777;
-  const SBool  s5033 = 0 != s5032;
-  const SWord8 s5034 = 1 & s1770;
-  const SBool  s5035 = 0 != s5034;
-  const SWord8 s5036 = s5035 ? s5021 : s5022;
-  const SWord8 s5037 = (s5036 >> 1) | (s5036 << 7);
-  const SWord8 s5038 = 128 | s5037;
-  const SWord8 s5039 = 127 & s5037;
-  const SWord8 s5040 = s5033 ? s5038 : s5039;
-  const SWord8 s5041 = 1 & s1782;
-  const SBool  s5042 = 0 != s5041;
-  const SWord8 s5043 = s5042 ? s5038 : s5039;
-  const SWord8 s5044 = s1694 ? s5040 : s5043;
-  const SWord8 s5045 = s1570 ? s5031 : s5044;
-  const SWord8 s5046 = s1548 ? s5012 : s5045;
-  const SWord8 s5047 = s1037 ? s4976 : s5046;
-  const SWord8 s5048 = 1 & s1837;
-  const SBool  s5049 = 0 != s5048;
-  const SWord8 s5050 = 1 & s1833;
-  const SBool  s5051 = 0 != s5050;
-  const SWord8 s5052 = 1 & s1829;
-  const SBool  s5053 = 0 != s5052;
-  const SWord8 s5054 = (s1816 >> 1) | (s1816 << 7);
-  const SWord8 s5055 = 128 | s5054;
-  const SWord8 s5056 = 127 & s5054;
-  const SWord8 s5057 = s5053 ? s5055 : s5056;
-  const SWord8 s5058 = (s5057 >> 1) | (s5057 << 7);
-  const SWord8 s5059 = 128 | s5058;
-  const SWord8 s5060 = 127 & s5058;
-  const SWord8 s5061 = s5051 ? s5059 : s5060;
-  const SWord8 s5062 = (s5061 >> 1) | (s5061 << 7);
-  const SWord8 s5063 = 128 | s5062;
-  const SWord8 s5064 = 127 & s5062;
-  const SWord8 s5065 = s5049 ? s5063 : s5064;
-  const SWord8 s5066 = 1 & s1842;
-  const SBool  s5067 = 0 != s5066;
-  const SWord8 s5068 = s5067 ? s5063 : s5064;
-  const SWord8 s5069 = s1825 ? s5065 : s5068;
-  const SWord8 s5070 = 1 & s1858;
-  const SBool  s5071 = 0 != s5070;
-  const SWord8 s5072 = 1 & s1851;
-  const SBool  s5073 = 0 != s5072;
-  const SWord8 s5074 = s5073 ? s5059 : s5060;
-  const SWord8 s5075 = (s5074 >> 1) | (s5074 << 7);
-  const SWord8 s5076 = 128 | s5075;
-  const SWord8 s5077 = 127 & s5075;
-  const SWord8 s5078 = s5071 ? s5076 : s5077;
-  const SWord8 s5079 = 1 & s1863;
-  const SBool  s5080 = 0 != s5079;
-  const SWord8 s5081 = s5080 ? s5076 : s5077;
-  const SWord8 s5082 = s1825 ? s5078 : s5081;
-  const SWord8 s5083 = s1803 ? s5069 : s5082;
-  const SWord8 s5084 = 1 & s1884;
-  const SBool  s5085 = 0 != s5084;
-  const SWord8 s5086 = 1 & s1880;
-  const SBool  s5087 = 0 != s5086;
-  const SWord8 s5088 = 1 & s1873;
-  const SBool  s5089 = 0 != s5088;
-  const SWord8 s5090 = s5089 ? s5055 : s5056;
-  const SWord8 s5091 = (s5090 >> 1) | (s5090 << 7);
-  const SWord8 s5092 = 128 | s5091;
-  const SWord8 s5093 = 127 & s5091;
-  const SWord8 s5094 = s5087 ? s5092 : s5093;
-  const SWord8 s5095 = (s5094 >> 1) | (s5094 << 7);
-  const SWord8 s5096 = 128 | s5095;
-  const SWord8 s5097 = 127 & s5095;
-  const SWord8 s5098 = s5085 ? s5096 : s5097;
-  const SWord8 s5099 = 1 & s1889;
-  const SBool  s5100 = 0 != s5099;
-  const SWord8 s5101 = s5100 ? s5096 : s5097;
-  const SWord8 s5102 = s1825 ? s5098 : s5101;
-  const SWord8 s5103 = 1 & s1905;
-  const SBool  s5104 = 0 != s5103;
-  const SWord8 s5105 = 1 & s1898;
-  const SBool  s5106 = 0 != s5105;
-  const SWord8 s5107 = s5106 ? s5092 : s5093;
-  const SWord8 s5108 = (s5107 >> 1) | (s5107 << 7);
-  const SWord8 s5109 = 128 | s5108;
-  const SWord8 s5110 = 127 & s5108;
-  const SWord8 s5111 = s5104 ? s5109 : s5110;
-  const SWord8 s5112 = 1 & s1910;
-  const SBool  s5113 = 0 != s5112;
-  const SWord8 s5114 = s5113 ? s5109 : s5110;
-  const SWord8 s5115 = s1825 ? s5111 : s5114;
-  const SWord8 s5116 = s1803 ? s5102 : s5115;
-  const SWord8 s5117 = s1548 ? s5083 : s5116;
-  const SWord8 s5118 = 1 & s1945;
-  const SBool  s5119 = 0 != s5118;
-  const SWord8 s5120 = 1 & s1941;
-  const SBool  s5121 = 0 != s5120;
-  const SWord8 s5122 = 1 & s1937;
-  const SBool  s5123 = 0 != s5122;
-  const SWord8 s5124 = (s1924 >> 1) | (s1924 << 7);
-  const SWord8 s5125 = 128 | s5124;
-  const SWord8 s5126 = 127 & s5124;
-  const SWord8 s5127 = s5123 ? s5125 : s5126;
-  const SWord8 s5128 = (s5127 >> 1) | (s5127 << 7);
-  const SWord8 s5129 = 128 | s5128;
-  const SWord8 s5130 = 127 & s5128;
-  const SWord8 s5131 = s5121 ? s5129 : s5130;
-  const SWord8 s5132 = (s5131 >> 1) | (s5131 << 7);
-  const SWord8 s5133 = 128 | s5132;
-  const SWord8 s5134 = 127 & s5132;
-  const SWord8 s5135 = s5119 ? s5133 : s5134;
-  const SWord8 s5136 = 1 & s1950;
-  const SBool  s5137 = 0 != s5136;
-  const SWord8 s5138 = s5137 ? s5133 : s5134;
-  const SWord8 s5139 = s1930 ? s5135 : s5138;
-  const SWord8 s5140 = 1 & s1966;
-  const SBool  s5141 = 0 != s5140;
-  const SWord8 s5142 = 1 & s1959;
-  const SBool  s5143 = 0 != s5142;
-  const SWord8 s5144 = s5143 ? s5129 : s5130;
-  const SWord8 s5145 = (s5144 >> 1) | (s5144 << 7);
-  const SWord8 s5146 = 128 | s5145;
-  const SWord8 s5147 = 127 & s5145;
-  const SWord8 s5148 = s5141 ? s5146 : s5147;
-  const SWord8 s5149 = 1 & s1971;
-  const SBool  s5150 = 0 != s5149;
-  const SWord8 s5151 = s5150 ? s5146 : s5147;
-  const SWord8 s5152 = s1930 ? s5148 : s5151;
-  const SWord8 s5153 = s1803 ? s5139 : s5152;
-  const SWord8 s5154 = 1 & s1992;
-  const SBool  s5155 = 0 != s5154;
-  const SWord8 s5156 = 1 & s1988;
-  const SBool  s5157 = 0 != s5156;
-  const SWord8 s5158 = 1 & s1981;
-  const SBool  s5159 = 0 != s5158;
-  const SWord8 s5160 = s5159 ? s5125 : s5126;
-  const SWord8 s5161 = (s5160 >> 1) | (s5160 << 7);
-  const SWord8 s5162 = 128 | s5161;
-  const SWord8 s5163 = 127 & s5161;
-  const SWord8 s5164 = s5157 ? s5162 : s5163;
-  const SWord8 s5165 = (s5164 >> 1) | (s5164 << 7);
-  const SWord8 s5166 = 128 | s5165;
-  const SWord8 s5167 = 127 & s5165;
-  const SWord8 s5168 = s5155 ? s5166 : s5167;
-  const SWord8 s5169 = 1 & s1997;
-  const SBool  s5170 = 0 != s5169;
-  const SWord8 s5171 = s5170 ? s5166 : s5167;
-  const SWord8 s5172 = s1930 ? s5168 : s5171;
-  const SWord8 s5173 = 1 & s2013;
-  const SBool  s5174 = 0 != s5173;
-  const SWord8 s5175 = 1 & s2006;
-  const SBool  s5176 = 0 != s5175;
-  const SWord8 s5177 = s5176 ? s5162 : s5163;
-  const SWord8 s5178 = (s5177 >> 1) | (s5177 << 7);
-  const SWord8 s5179 = 128 | s5178;
-  const SWord8 s5180 = 127 & s5178;
-  const SWord8 s5181 = s5174 ? s5179 : s5180;
-  const SWord8 s5182 = 1 & s2018;
-  const SBool  s5183 = 0 != s5182;
-  const SWord8 s5184 = s5183 ? s5179 : s5180;
-  const SWord8 s5185 = s1930 ? s5181 : s5184;
-  const SWord8 s5186 = s1803 ? s5172 : s5185;
-  const SWord8 s5187 = s1548 ? s5153 : s5186;
-  const SWord8 s5188 = s1037 ? s5117 : s5187;
-  const SWord8 s5189 = s22 ? s5047 : s5188;
-  const SWord8 s5190 = s17 ? s4906 : s5189;
-  const SWord8 s5191 = s12 ? s4623 : s5190;
-  const SWord8 s5192 = 1 & s2128;
-  const SBool  s5193 = 0 != s5192;
-  const SWord8 s5194 = 1 & s2124;
-  const SBool  s5195 = 0 != s5194;
-  const SWord8 s5196 = 1 & s2120;
-  const SBool  s5197 = 0 != s5196;
-  const SWord8 s5198 = (s2107 >> 1) | (s2107 << 7);
-  const SWord8 s5199 = 128 | s5198;
-  const SWord8 s5200 = 127 & s5198;
-  const SWord8 s5201 = s5197 ? s5199 : s5200;
-  const SWord8 s5202 = (s5201 >> 1) | (s5201 << 7);
-  const SWord8 s5203 = 128 | s5202;
-  const SWord8 s5204 = 127 & s5202;
-  const SWord8 s5205 = s5195 ? s5203 : s5204;
-  const SWord8 s5206 = (s5205 >> 1) | (s5205 << 7);
-  const SWord8 s5207 = 128 | s5206;
-  const SWord8 s5208 = 127 & s5206;
-  const SWord8 s5209 = s5193 ? s5207 : s5208;
-  const SWord8 s5210 = 1 & s2133;
-  const SBool  s5211 = 0 != s5210;
-  const SWord8 s5212 = s5211 ? s5207 : s5208;
-  const SWord8 s5213 = s2116 ? s5209 : s5212;
-  const SWord8 s5214 = 1 & s2149;
-  const SBool  s5215 = 0 != s5214;
-  const SWord8 s5216 = 1 & s2142;
-  const SBool  s5217 = 0 != s5216;
-  const SWord8 s5218 = s5217 ? s5203 : s5204;
-  const SWord8 s5219 = (s5218 >> 1) | (s5218 << 7);
-  const SWord8 s5220 = 128 | s5219;
-  const SWord8 s5221 = 127 & s5219;
-  const SWord8 s5222 = s5215 ? s5220 : s5221;
-  const SWord8 s5223 = 1 & s2154;
-  const SBool  s5224 = 0 != s5223;
-  const SWord8 s5225 = s5224 ? s5220 : s5221;
-  const SWord8 s5226 = s2116 ? s5222 : s5225;
-  const SWord8 s5227 = s2097 ? s5213 : s5226;
-  const SWord8 s5228 = 1 & s2175;
-  const SBool  s5229 = 0 != s5228;
-  const SWord8 s5230 = 1 & s2171;
-  const SBool  s5231 = 0 != s5230;
-  const SWord8 s5232 = 1 & s2164;
-  const SBool  s5233 = 0 != s5232;
-  const SWord8 s5234 = s5233 ? s5199 : s5200;
-  const SWord8 s5235 = (s5234 >> 1) | (s5234 << 7);
-  const SWord8 s5236 = 128 | s5235;
-  const SWord8 s5237 = 127 & s5235;
-  const SWord8 s5238 = s5231 ? s5236 : s5237;
-  const SWord8 s5239 = (s5238 >> 1) | (s5238 << 7);
-  const SWord8 s5240 = 128 | s5239;
-  const SWord8 s5241 = 127 & s5239;
-  const SWord8 s5242 = s5229 ? s5240 : s5241;
-  const SWord8 s5243 = 1 & s2180;
-  const SBool  s5244 = 0 != s5243;
-  const SWord8 s5245 = s5244 ? s5240 : s5241;
-  const SWord8 s5246 = s2116 ? s5242 : s5245;
-  const SWord8 s5247 = 1 & s2196;
-  const SBool  s5248 = 0 != s5247;
-  const SWord8 s5249 = 1 & s2189;
-  const SBool  s5250 = 0 != s5249;
-  const SWord8 s5251 = s5250 ? s5236 : s5237;
-  const SWord8 s5252 = (s5251 >> 1) | (s5251 << 7);
-  const SWord8 s5253 = 128 | s5252;
-  const SWord8 s5254 = 127 & s5252;
-  const SWord8 s5255 = s5248 ? s5253 : s5254;
-  const SWord8 s5256 = 1 & s2201;
-  const SBool  s5257 = 0 != s5256;
-  const SWord8 s5258 = s5257 ? s5253 : s5254;
-  const SWord8 s5259 = s2116 ? s5255 : s5258;
-  const SWord8 s5260 = s2097 ? s5246 : s5259;
-  const SWord8 s5261 = s2078 ? s5227 : s5260;
-  const SWord8 s5262 = 1 & s2236;
-  const SBool  s5263 = 0 != s5262;
-  const SWord8 s5264 = 1 & s2232;
-  const SBool  s5265 = 0 != s5264;
-  const SWord8 s5266 = 1 & s2228;
-  const SBool  s5267 = 0 != s5266;
-  const SWord8 s5268 = (s2215 >> 1) | (s2215 << 7);
-  const SWord8 s5269 = 128 | s5268;
-  const SWord8 s5270 = 127 & s5268;
-  const SWord8 s5271 = s5267 ? s5269 : s5270;
-  const SWord8 s5272 = (s5271 >> 1) | (s5271 << 7);
-  const SWord8 s5273 = 128 | s5272;
-  const SWord8 s5274 = 127 & s5272;
-  const SWord8 s5275 = s5265 ? s5273 : s5274;
-  const SWord8 s5276 = (s5275 >> 1) | (s5275 << 7);
-  const SWord8 s5277 = 128 | s5276;
-  const SWord8 s5278 = 127 & s5276;
-  const SWord8 s5279 = s5263 ? s5277 : s5278;
-  const SWord8 s5280 = 1 & s2241;
-  const SBool  s5281 = 0 != s5280;
-  const SWord8 s5282 = s5281 ? s5277 : s5278;
-  const SWord8 s5283 = s2221 ? s5279 : s5282;
-  const SWord8 s5284 = 1 & s2257;
-  const SBool  s5285 = 0 != s5284;
-  const SWord8 s5286 = 1 & s2250;
-  const SBool  s5287 = 0 != s5286;
-  const SWord8 s5288 = s5287 ? s5273 : s5274;
-  const SWord8 s5289 = (s5288 >> 1) | (s5288 << 7);
-  const SWord8 s5290 = 128 | s5289;
-  const SWord8 s5291 = 127 & s5289;
-  const SWord8 s5292 = s5285 ? s5290 : s5291;
-  const SWord8 s5293 = 1 & s2262;
-  const SBool  s5294 = 0 != s5293;
-  const SWord8 s5295 = s5294 ? s5290 : s5291;
-  const SWord8 s5296 = s2221 ? s5292 : s5295;
-  const SWord8 s5297 = s2097 ? s5283 : s5296;
-  const SWord8 s5298 = 1 & s2283;
-  const SBool  s5299 = 0 != s5298;
-  const SWord8 s5300 = 1 & s2279;
-  const SBool  s5301 = 0 != s5300;
-  const SWord8 s5302 = 1 & s2272;
-  const SBool  s5303 = 0 != s5302;
-  const SWord8 s5304 = s5303 ? s5269 : s5270;
-  const SWord8 s5305 = (s5304 >> 1) | (s5304 << 7);
-  const SWord8 s5306 = 128 | s5305;
-  const SWord8 s5307 = 127 & s5305;
-  const SWord8 s5308 = s5301 ? s5306 : s5307;
-  const SWord8 s5309 = (s5308 >> 1) | (s5308 << 7);
-  const SWord8 s5310 = 128 | s5309;
-  const SWord8 s5311 = 127 & s5309;
-  const SWord8 s5312 = s5299 ? s5310 : s5311;
-  const SWord8 s5313 = 1 & s2288;
-  const SBool  s5314 = 0 != s5313;
-  const SWord8 s5315 = s5314 ? s5310 : s5311;
-  const SWord8 s5316 = s2221 ? s5312 : s5315;
-  const SWord8 s5317 = 1 & s2304;
-  const SBool  s5318 = 0 != s5317;
-  const SWord8 s5319 = 1 & s2297;
-  const SBool  s5320 = 0 != s5319;
-  const SWord8 s5321 = s5320 ? s5306 : s5307;
-  const SWord8 s5322 = (s5321 >> 1) | (s5321 << 7);
-  const SWord8 s5323 = 128 | s5322;
-  const SWord8 s5324 = 127 & s5322;
-  const SWord8 s5325 = s5318 ? s5323 : s5324;
-  const SWord8 s5326 = 1 & s2309;
-  const SBool  s5327 = 0 != s5326;
-  const SWord8 s5328 = s5327 ? s5323 : s5324;
-  const SWord8 s5329 = s2221 ? s5325 : s5328;
-  const SWord8 s5330 = s2097 ? s5316 : s5329;
-  const SWord8 s5331 = s2078 ? s5297 : s5330;
-  const SWord8 s5332 = s2059 ? s5261 : s5331;
-  const SWord8 s5333 = 1 & s2364;
-  const SBool  s5334 = 0 != s5333;
-  const SWord8 s5335 = 1 & s2360;
-  const SBool  s5336 = 0 != s5335;
-  const SWord8 s5337 = 1 & s2356;
-  const SBool  s5338 = 0 != s5337;
-  const SWord8 s5339 = (s2343 >> 1) | (s2343 << 7);
-  const SWord8 s5340 = 128 | s5339;
-  const SWord8 s5341 = 127 & s5339;
-  const SWord8 s5342 = s5338 ? s5340 : s5341;
-  const SWord8 s5343 = (s5342 >> 1) | (s5342 << 7);
-  const SWord8 s5344 = 128 | s5343;
-  const SWord8 s5345 = 127 & s5343;
-  const SWord8 s5346 = s5336 ? s5344 : s5345;
-  const SWord8 s5347 = (s5346 >> 1) | (s5346 << 7);
-  const SWord8 s5348 = 128 | s5347;
-  const SWord8 s5349 = 127 & s5347;
-  const SWord8 s5350 = s5334 ? s5348 : s5349;
-  const SWord8 s5351 = 1 & s2369;
-  const SBool  s5352 = 0 != s5351;
-  const SWord8 s5353 = s5352 ? s5348 : s5349;
-  const SWord8 s5354 = s2352 ? s5350 : s5353;
-  const SWord8 s5355 = 1 & s2385;
-  const SBool  s5356 = 0 != s5355;
-  const SWord8 s5357 = 1 & s2378;
-  const SBool  s5358 = 0 != s5357;
-  const SWord8 s5359 = s5358 ? s5344 : s5345;
-  const SWord8 s5360 = (s5359 >> 1) | (s5359 << 7);
-  const SWord8 s5361 = 128 | s5360;
-  const SWord8 s5362 = 127 & s5360;
-  const SWord8 s5363 = s5356 ? s5361 : s5362;
-  const SWord8 s5364 = 1 & s2390;
-  const SBool  s5365 = 0 != s5364;
-  const SWord8 s5366 = s5365 ? s5361 : s5362;
-  const SWord8 s5367 = s2352 ? s5363 : s5366;
-  const SWord8 s5368 = s2330 ? s5354 : s5367;
-  const SWord8 s5369 = 1 & s2411;
-  const SBool  s5370 = 0 != s5369;
-  const SWord8 s5371 = 1 & s2407;
-  const SBool  s5372 = 0 != s5371;
-  const SWord8 s5373 = 1 & s2400;
-  const SBool  s5374 = 0 != s5373;
-  const SWord8 s5375 = s5374 ? s5340 : s5341;
-  const SWord8 s5376 = (s5375 >> 1) | (s5375 << 7);
-  const SWord8 s5377 = 128 | s5376;
-  const SWord8 s5378 = 127 & s5376;
-  const SWord8 s5379 = s5372 ? s5377 : s5378;
-  const SWord8 s5380 = (s5379 >> 1) | (s5379 << 7);
-  const SWord8 s5381 = 128 | s5380;
-  const SWord8 s5382 = 127 & s5380;
-  const SWord8 s5383 = s5370 ? s5381 : s5382;
-  const SWord8 s5384 = 1 & s2416;
-  const SBool  s5385 = 0 != s5384;
-  const SWord8 s5386 = s5385 ? s5381 : s5382;
-  const SWord8 s5387 = s2352 ? s5383 : s5386;
-  const SWord8 s5388 = 1 & s2432;
-  const SBool  s5389 = 0 != s5388;
-  const SWord8 s5390 = 1 & s2425;
-  const SBool  s5391 = 0 != s5390;
-  const SWord8 s5392 = s5391 ? s5377 : s5378;
-  const SWord8 s5393 = (s5392 >> 1) | (s5392 << 7);
-  const SWord8 s5394 = 128 | s5393;
-  const SWord8 s5395 = 127 & s5393;
-  const SWord8 s5396 = s5389 ? s5394 : s5395;
-  const SWord8 s5397 = 1 & s2437;
-  const SBool  s5398 = 0 != s5397;
-  const SWord8 s5399 = s5398 ? s5394 : s5395;
-  const SWord8 s5400 = s2352 ? s5396 : s5399;
-  const SWord8 s5401 = s2330 ? s5387 : s5400;
-  const SWord8 s5402 = s2078 ? s5368 : s5401;
-  const SWord8 s5403 = 1 & s2472;
-  const SBool  s5404 = 0 != s5403;
-  const SWord8 s5405 = 1 & s2468;
-  const SBool  s5406 = 0 != s5405;
-  const SWord8 s5407 = 1 & s2464;
-  const SBool  s5408 = 0 != s5407;
-  const SWord8 s5409 = (s2451 >> 1) | (s2451 << 7);
-  const SWord8 s5410 = 128 | s5409;
-  const SWord8 s5411 = 127 & s5409;
-  const SWord8 s5412 = s5408 ? s5410 : s5411;
-  const SWord8 s5413 = (s5412 >> 1) | (s5412 << 7);
-  const SWord8 s5414 = 128 | s5413;
-  const SWord8 s5415 = 127 & s5413;
-  const SWord8 s5416 = s5406 ? s5414 : s5415;
-  const SWord8 s5417 = (s5416 >> 1) | (s5416 << 7);
-  const SWord8 s5418 = 128 | s5417;
-  const SWord8 s5419 = 127 & s5417;
-  const SWord8 s5420 = s5404 ? s5418 : s5419;
-  const SWord8 s5421 = 1 & s2477;
-  const SBool  s5422 = 0 != s5421;
-  const SWord8 s5423 = s5422 ? s5418 : s5419;
-  const SWord8 s5424 = s2457 ? s5420 : s5423;
-  const SWord8 s5425 = 1 & s2493;
-  const SBool  s5426 = 0 != s5425;
-  const SWord8 s5427 = 1 & s2486;
-  const SBool  s5428 = 0 != s5427;
-  const SWord8 s5429 = s5428 ? s5414 : s5415;
-  const SWord8 s5430 = (s5429 >> 1) | (s5429 << 7);
-  const SWord8 s5431 = 128 | s5430;
-  const SWord8 s5432 = 127 & s5430;
-  const SWord8 s5433 = s5426 ? s5431 : s5432;
-  const SWord8 s5434 = 1 & s2498;
-  const SBool  s5435 = 0 != s5434;
-  const SWord8 s5436 = s5435 ? s5431 : s5432;
-  const SWord8 s5437 = s2457 ? s5433 : s5436;
-  const SWord8 s5438 = s2330 ? s5424 : s5437;
-  const SWord8 s5439 = 1 & s2519;
-  const SBool  s5440 = 0 != s5439;
-  const SWord8 s5441 = 1 & s2515;
-  const SBool  s5442 = 0 != s5441;
-  const SWord8 s5443 = 1 & s2508;
-  const SBool  s5444 = 0 != s5443;
-  const SWord8 s5445 = s5444 ? s5410 : s5411;
-  const SWord8 s5446 = (s5445 >> 1) | (s5445 << 7);
-  const SWord8 s5447 = 128 | s5446;
-  const SWord8 s5448 = 127 & s5446;
-  const SWord8 s5449 = s5442 ? s5447 : s5448;
-  const SWord8 s5450 = (s5449 >> 1) | (s5449 << 7);
-  const SWord8 s5451 = 128 | s5450;
-  const SWord8 s5452 = 127 & s5450;
-  const SWord8 s5453 = s5440 ? s5451 : s5452;
-  const SWord8 s5454 = 1 & s2524;
-  const SBool  s5455 = 0 != s5454;
-  const SWord8 s5456 = s5455 ? s5451 : s5452;
-  const SWord8 s5457 = s2457 ? s5453 : s5456;
-  const SWord8 s5458 = 1 & s2540;
-  const SBool  s5459 = 0 != s5458;
-  const SWord8 s5460 = 1 & s2533;
-  const SBool  s5461 = 0 != s5460;
-  const SWord8 s5462 = s5461 ? s5447 : s5448;
-  const SWord8 s5463 = (s5462 >> 1) | (s5462 << 7);
-  const SWord8 s5464 = 128 | s5463;
-  const SWord8 s5465 = 127 & s5463;
-  const SWord8 s5466 = s5459 ? s5464 : s5465;
-  const SWord8 s5467 = 1 & s2545;
-  const SBool  s5468 = 0 != s5467;
-  const SWord8 s5469 = s5468 ? s5464 : s5465;
-  const SWord8 s5470 = s2457 ? s5466 : s5469;
-  const SWord8 s5471 = s2330 ? s5457 : s5470;
-  const SWord8 s5472 = s2078 ? s5438 : s5471;
-  const SWord8 s5473 = s2059 ? s5402 : s5472;
-  const SWord8 s5474 = s2042 ? s5332 : s5473;
-  const SWord8 s5475 = 1 & s2620;
-  const SBool  s5476 = 0 != s5475;
-  const SWord8 s5477 = 1 & s2616;
-  const SBool  s5478 = 0 != s5477;
-  const SWord8 s5479 = 1 & s2612;
-  const SBool  s5480 = 0 != s5479;
-  const SWord8 s5481 = (s2599 >> 1) | (s2599 << 7);
-  const SWord8 s5482 = 128 | s5481;
-  const SWord8 s5483 = 127 & s5481;
-  const SWord8 s5484 = s5480 ? s5482 : s5483;
-  const SWord8 s5485 = (s5484 >> 1) | (s5484 << 7);
-  const SWord8 s5486 = 128 | s5485;
-  const SWord8 s5487 = 127 & s5485;
-  const SWord8 s5488 = s5478 ? s5486 : s5487;
-  const SWord8 s5489 = (s5488 >> 1) | (s5488 << 7);
-  const SWord8 s5490 = 128 | s5489;
-  const SWord8 s5491 = 127 & s5489;
-  const SWord8 s5492 = s5476 ? s5490 : s5491;
-  const SWord8 s5493 = 1 & s2625;
-  const SBool  s5494 = 0 != s5493;
-  const SWord8 s5495 = s5494 ? s5490 : s5491;
-  const SWord8 s5496 = s2608 ? s5492 : s5495;
-  const SWord8 s5497 = 1 & s2641;
-  const SBool  s5498 = 0 != s5497;
-  const SWord8 s5499 = 1 & s2634;
-  const SBool  s5500 = 0 != s5499;
-  const SWord8 s5501 = s5500 ? s5486 : s5487;
-  const SWord8 s5502 = (s5501 >> 1) | (s5501 << 7);
-  const SWord8 s5503 = 128 | s5502;
-  const SWord8 s5504 = 127 & s5502;
-  const SWord8 s5505 = s5498 ? s5503 : s5504;
-  const SWord8 s5506 = 1 & s2646;
-  const SBool  s5507 = 0 != s5506;
-  const SWord8 s5508 = s5507 ? s5503 : s5504;
-  const SWord8 s5509 = s2608 ? s5505 : s5508;
-  const SWord8 s5510 = s2589 ? s5496 : s5509;
-  const SWord8 s5511 = 1 & s2667;
-  const SBool  s5512 = 0 != s5511;
-  const SWord8 s5513 = 1 & s2663;
-  const SBool  s5514 = 0 != s5513;
-  const SWord8 s5515 = 1 & s2656;
-  const SBool  s5516 = 0 != s5515;
-  const SWord8 s5517 = s5516 ? s5482 : s5483;
-  const SWord8 s5518 = (s5517 >> 1) | (s5517 << 7);
-  const SWord8 s5519 = 128 | s5518;
-  const SWord8 s5520 = 127 & s5518;
-  const SWord8 s5521 = s5514 ? s5519 : s5520;
-  const SWord8 s5522 = (s5521 >> 1) | (s5521 << 7);
-  const SWord8 s5523 = 128 | s5522;
-  const SWord8 s5524 = 127 & s5522;
-  const SWord8 s5525 = s5512 ? s5523 : s5524;
-  const SWord8 s5526 = 1 & s2672;
-  const SBool  s5527 = 0 != s5526;
-  const SWord8 s5528 = s5527 ? s5523 : s5524;
-  const SWord8 s5529 = s2608 ? s5525 : s5528;
-  const SWord8 s5530 = 1 & s2688;
-  const SBool  s5531 = 0 != s5530;
-  const SWord8 s5532 = 1 & s2681;
-  const SBool  s5533 = 0 != s5532;
-  const SWord8 s5534 = s5533 ? s5519 : s5520;
-  const SWord8 s5535 = (s5534 >> 1) | (s5534 << 7);
-  const SWord8 s5536 = 128 | s5535;
-  const SWord8 s5537 = 127 & s5535;
-  const SWord8 s5538 = s5531 ? s5536 : s5537;
-  const SWord8 s5539 = 1 & s2693;
-  const SBool  s5540 = 0 != s5539;
-  const SWord8 s5541 = s5540 ? s5536 : s5537;
-  const SWord8 s5542 = s2608 ? s5538 : s5541;
-  const SWord8 s5543 = s2589 ? s5529 : s5542;
-  const SWord8 s5544 = s2567 ? s5510 : s5543;
-  const SWord8 s5545 = 1 & s2728;
-  const SBool  s5546 = 0 != s5545;
-  const SWord8 s5547 = 1 & s2724;
-  const SBool  s5548 = 0 != s5547;
-  const SWord8 s5549 = 1 & s2720;
-  const SBool  s5550 = 0 != s5549;
-  const SWord8 s5551 = (s2707 >> 1) | (s2707 << 7);
-  const SWord8 s5552 = 128 | s5551;
-  const SWord8 s5553 = 127 & s5551;
-  const SWord8 s5554 = s5550 ? s5552 : s5553;
-  const SWord8 s5555 = (s5554 >> 1) | (s5554 << 7);
-  const SWord8 s5556 = 128 | s5555;
-  const SWord8 s5557 = 127 & s5555;
-  const SWord8 s5558 = s5548 ? s5556 : s5557;
-  const SWord8 s5559 = (s5558 >> 1) | (s5558 << 7);
-  const SWord8 s5560 = 128 | s5559;
-  const SWord8 s5561 = 127 & s5559;
-  const SWord8 s5562 = s5546 ? s5560 : s5561;
-  const SWord8 s5563 = 1 & s2733;
-  const SBool  s5564 = 0 != s5563;
-  const SWord8 s5565 = s5564 ? s5560 : s5561;
-  const SWord8 s5566 = s2713 ? s5562 : s5565;
-  const SWord8 s5567 = 1 & s2749;
-  const SBool  s5568 = 0 != s5567;
-  const SWord8 s5569 = 1 & s2742;
-  const SBool  s5570 = 0 != s5569;
-  const SWord8 s5571 = s5570 ? s5556 : s5557;
-  const SWord8 s5572 = (s5571 >> 1) | (s5571 << 7);
-  const SWord8 s5573 = 128 | s5572;
-  const SWord8 s5574 = 127 & s5572;
-  const SWord8 s5575 = s5568 ? s5573 : s5574;
-  const SWord8 s5576 = 1 & s2754;
-  const SBool  s5577 = 0 != s5576;
-  const SWord8 s5578 = s5577 ? s5573 : s5574;
-  const SWord8 s5579 = s2713 ? s5575 : s5578;
-  const SWord8 s5580 = s2589 ? s5566 : s5579;
-  const SWord8 s5581 = 1 & s2775;
-  const SBool  s5582 = 0 != s5581;
-  const SWord8 s5583 = 1 & s2771;
-  const SBool  s5584 = 0 != s5583;
-  const SWord8 s5585 = 1 & s2764;
-  const SBool  s5586 = 0 != s5585;
-  const SWord8 s5587 = s5586 ? s5552 : s5553;
-  const SWord8 s5588 = (s5587 >> 1) | (s5587 << 7);
-  const SWord8 s5589 = 128 | s5588;
-  const SWord8 s5590 = 127 & s5588;
-  const SWord8 s5591 = s5584 ? s5589 : s5590;
-  const SWord8 s5592 = (s5591 >> 1) | (s5591 << 7);
-  const SWord8 s5593 = 128 | s5592;
-  const SWord8 s5594 = 127 & s5592;
-  const SWord8 s5595 = s5582 ? s5593 : s5594;
-  const SWord8 s5596 = 1 & s2780;
-  const SBool  s5597 = 0 != s5596;
-  const SWord8 s5598 = s5597 ? s5593 : s5594;
-  const SWord8 s5599 = s2713 ? s5595 : s5598;
-  const SWord8 s5600 = 1 & s2796;
-  const SBool  s5601 = 0 != s5600;
-  const SWord8 s5602 = 1 & s2789;
-  const SBool  s5603 = 0 != s5602;
-  const SWord8 s5604 = s5603 ? s5589 : s5590;
-  const SWord8 s5605 = (s5604 >> 1) | (s5604 << 7);
-  const SWord8 s5606 = 128 | s5605;
-  const SWord8 s5607 = 127 & s5605;
-  const SWord8 s5608 = s5601 ? s5606 : s5607;
-  const SWord8 s5609 = 1 & s2801;
-  const SBool  s5610 = 0 != s5609;
-  const SWord8 s5611 = s5610 ? s5606 : s5607;
-  const SWord8 s5612 = s2713 ? s5608 : s5611;
-  const SWord8 s5613 = s2589 ? s5599 : s5612;
-  const SWord8 s5614 = s2567 ? s5580 : s5613;
-  const SWord8 s5615 = s2059 ? s5544 : s5614;
-  const SWord8 s5616 = 1 & s2856;
-  const SBool  s5617 = 0 != s5616;
-  const SWord8 s5618 = 1 & s2852;
-  const SBool  s5619 = 0 != s5618;
-  const SWord8 s5620 = 1 & s2848;
-  const SBool  s5621 = 0 != s5620;
-  const SWord8 s5622 = (s2835 >> 1) | (s2835 << 7);
-  const SWord8 s5623 = 128 | s5622;
-  const SWord8 s5624 = 127 & s5622;
-  const SWord8 s5625 = s5621 ? s5623 : s5624;
-  const SWord8 s5626 = (s5625 >> 1) | (s5625 << 7);
-  const SWord8 s5627 = 128 | s5626;
-  const SWord8 s5628 = 127 & s5626;
-  const SWord8 s5629 = s5619 ? s5627 : s5628;
-  const SWord8 s5630 = (s5629 >> 1) | (s5629 << 7);
-  const SWord8 s5631 = 128 | s5630;
-  const SWord8 s5632 = 127 & s5630;
-  const SWord8 s5633 = s5617 ? s5631 : s5632;
-  const SWord8 s5634 = 1 & s2861;
-  const SBool  s5635 = 0 != s5634;
-  const SWord8 s5636 = s5635 ? s5631 : s5632;
-  const SWord8 s5637 = s2844 ? s5633 : s5636;
-  const SWord8 s5638 = 1 & s2877;
-  const SBool  s5639 = 0 != s5638;
-  const SWord8 s5640 = 1 & s2870;
-  const SBool  s5641 = 0 != s5640;
-  const SWord8 s5642 = s5641 ? s5627 : s5628;
-  const SWord8 s5643 = (s5642 >> 1) | (s5642 << 7);
-  const SWord8 s5644 = 128 | s5643;
-  const SWord8 s5645 = 127 & s5643;
-  const SWord8 s5646 = s5639 ? s5644 : s5645;
-  const SWord8 s5647 = 1 & s2882;
-  const SBool  s5648 = 0 != s5647;
-  const SWord8 s5649 = s5648 ? s5644 : s5645;
-  const SWord8 s5650 = s2844 ? s5646 : s5649;
-  const SWord8 s5651 = s2822 ? s5637 : s5650;
-  const SWord8 s5652 = 1 & s2903;
-  const SBool  s5653 = 0 != s5652;
-  const SWord8 s5654 = 1 & s2899;
-  const SBool  s5655 = 0 != s5654;
-  const SWord8 s5656 = 1 & s2892;
-  const SBool  s5657 = 0 != s5656;
-  const SWord8 s5658 = s5657 ? s5623 : s5624;
-  const SWord8 s5659 = (s5658 >> 1) | (s5658 << 7);
-  const SWord8 s5660 = 128 | s5659;
-  const SWord8 s5661 = 127 & s5659;
-  const SWord8 s5662 = s5655 ? s5660 : s5661;
-  const SWord8 s5663 = (s5662 >> 1) | (s5662 << 7);
-  const SWord8 s5664 = 128 | s5663;
-  const SWord8 s5665 = 127 & s5663;
-  const SWord8 s5666 = s5653 ? s5664 : s5665;
-  const SWord8 s5667 = 1 & s2908;
-  const SBool  s5668 = 0 != s5667;
-  const SWord8 s5669 = s5668 ? s5664 : s5665;
-  const SWord8 s5670 = s2844 ? s5666 : s5669;
-  const SWord8 s5671 = 1 & s2924;
-  const SBool  s5672 = 0 != s5671;
-  const SWord8 s5673 = 1 & s2917;
-  const SBool  s5674 = 0 != s5673;
-  const SWord8 s5675 = s5674 ? s5660 : s5661;
-  const SWord8 s5676 = (s5675 >> 1) | (s5675 << 7);
-  const SWord8 s5677 = 128 | s5676;
-  const SWord8 s5678 = 127 & s5676;
-  const SWord8 s5679 = s5672 ? s5677 : s5678;
-  const SWord8 s5680 = 1 & s2929;
-  const SBool  s5681 = 0 != s5680;
-  const SWord8 s5682 = s5681 ? s5677 : s5678;
-  const SWord8 s5683 = s2844 ? s5679 : s5682;
-  const SWord8 s5684 = s2822 ? s5670 : s5683;
-  const SWord8 s5685 = s2567 ? s5651 : s5684;
-  const SWord8 s5686 = 1 & s2964;
-  const SBool  s5687 = 0 != s5686;
-  const SWord8 s5688 = 1 & s2960;
-  const SBool  s5689 = 0 != s5688;
-  const SWord8 s5690 = 1 & s2956;
-  const SBool  s5691 = 0 != s5690;
-  const SWord8 s5692 = (s2943 >> 1) | (s2943 << 7);
-  const SWord8 s5693 = 128 | s5692;
-  const SWord8 s5694 = 127 & s5692;
-  const SWord8 s5695 = s5691 ? s5693 : s5694;
-  const SWord8 s5696 = (s5695 >> 1) | (s5695 << 7);
-  const SWord8 s5697 = 128 | s5696;
-  const SWord8 s5698 = 127 & s5696;
-  const SWord8 s5699 = s5689 ? s5697 : s5698;
-  const SWord8 s5700 = (s5699 >> 1) | (s5699 << 7);
-  const SWord8 s5701 = 128 | s5700;
-  const SWord8 s5702 = 127 & s5700;
-  const SWord8 s5703 = s5687 ? s5701 : s5702;
-  const SWord8 s5704 = 1 & s2969;
-  const SBool  s5705 = 0 != s5704;
-  const SWord8 s5706 = s5705 ? s5701 : s5702;
-  const SWord8 s5707 = s2949 ? s5703 : s5706;
-  const SWord8 s5708 = 1 & s2985;
-  const SBool  s5709 = 0 != s5708;
-  const SWord8 s5710 = 1 & s2978;
-  const SBool  s5711 = 0 != s5710;
-  const SWord8 s5712 = s5711 ? s5697 : s5698;
-  const SWord8 s5713 = (s5712 >> 1) | (s5712 << 7);
-  const SWord8 s5714 = 128 | s5713;
-  const SWord8 s5715 = 127 & s5713;
-  const SWord8 s5716 = s5709 ? s5714 : s5715;
-  const SWord8 s5717 = 1 & s2990;
-  const SBool  s5718 = 0 != s5717;
-  const SWord8 s5719 = s5718 ? s5714 : s5715;
-  const SWord8 s5720 = s2949 ? s5716 : s5719;
-  const SWord8 s5721 = s2822 ? s5707 : s5720;
-  const SWord8 s5722 = 1 & s3011;
-  const SBool  s5723 = 0 != s5722;
-  const SWord8 s5724 = 1 & s3007;
-  const SBool  s5725 = 0 != s5724;
-  const SWord8 s5726 = 1 & s3000;
-  const SBool  s5727 = 0 != s5726;
-  const SWord8 s5728 = s5727 ? s5693 : s5694;
-  const SWord8 s5729 = (s5728 >> 1) | (s5728 << 7);
-  const SWord8 s5730 = 128 | s5729;
-  const SWord8 s5731 = 127 & s5729;
-  const SWord8 s5732 = s5725 ? s5730 : s5731;
-  const SWord8 s5733 = (s5732 >> 1) | (s5732 << 7);
-  const SWord8 s5734 = 128 | s5733;
-  const SWord8 s5735 = 127 & s5733;
-  const SWord8 s5736 = s5723 ? s5734 : s5735;
-  const SWord8 s5737 = 1 & s3016;
-  const SBool  s5738 = 0 != s5737;
-  const SWord8 s5739 = s5738 ? s5734 : s5735;
-  const SWord8 s5740 = s2949 ? s5736 : s5739;
-  const SWord8 s5741 = 1 & s3032;
-  const SBool  s5742 = 0 != s5741;
-  const SWord8 s5743 = 1 & s3025;
-  const SBool  s5744 = 0 != s5743;
-  const SWord8 s5745 = s5744 ? s5730 : s5731;
-  const SWord8 s5746 = (s5745 >> 1) | (s5745 << 7);
-  const SWord8 s5747 = 128 | s5746;
-  const SWord8 s5748 = 127 & s5746;
-  const SWord8 s5749 = s5742 ? s5747 : s5748;
-  const SWord8 s5750 = 1 & s3037;
-  const SBool  s5751 = 0 != s5750;
-  const SWord8 s5752 = s5751 ? s5747 : s5748;
-  const SWord8 s5753 = s2949 ? s5749 : s5752;
-  const SWord8 s5754 = s2822 ? s5740 : s5753;
-  const SWord8 s5755 = s2567 ? s5721 : s5754;
-  const SWord8 s5756 = s2059 ? s5685 : s5755;
-  const SWord8 s5757 = s2042 ? s5615 : s5756;
-  const SWord8 s5758 = s17 ? s5474 : s5757;
-  const SWord8 s5759 = 1 & s3132;
-  const SBool  s5760 = 0 != s5759;
-  const SWord8 s5761 = 1 & s3128;
-  const SBool  s5762 = 0 != s5761;
-  const SWord8 s5763 = 1 & s3124;
-  const SBool  s5764 = 0 != s5763;
-  const SWord8 s5765 = (s3111 >> 1) | (s3111 << 7);
-  const SWord8 s5766 = 128 | s5765;
-  const SWord8 s5767 = 127 & s5765;
-  const SWord8 s5768 = s5764 ? s5766 : s5767;
-  const SWord8 s5769 = (s5768 >> 1) | (s5768 << 7);
-  const SWord8 s5770 = 128 | s5769;
-  const SWord8 s5771 = 127 & s5769;
-  const SWord8 s5772 = s5762 ? s5770 : s5771;
-  const SWord8 s5773 = (s5772 >> 1) | (s5772 << 7);
-  const SWord8 s5774 = 128 | s5773;
-  const SWord8 s5775 = 127 & s5773;
-  const SWord8 s5776 = s5760 ? s5774 : s5775;
-  const SWord8 s5777 = 1 & s3137;
-  const SBool  s5778 = 0 != s5777;
-  const SWord8 s5779 = s5778 ? s5774 : s5775;
-  const SWord8 s5780 = s3120 ? s5776 : s5779;
-  const SWord8 s5781 = 1 & s3153;
-  const SBool  s5782 = 0 != s5781;
-  const SWord8 s5783 = 1 & s3146;
-  const SBool  s5784 = 0 != s5783;
-  const SWord8 s5785 = s5784 ? s5770 : s5771;
-  const SWord8 s5786 = (s5785 >> 1) | (s5785 << 7);
-  const SWord8 s5787 = 128 | s5786;
-  const SWord8 s5788 = 127 & s5786;
-  const SWord8 s5789 = s5782 ? s5787 : s5788;
-  const SWord8 s5790 = 1 & s3158;
-  const SBool  s5791 = 0 != s5790;
-  const SWord8 s5792 = s5791 ? s5787 : s5788;
-  const SWord8 s5793 = s3120 ? s5789 : s5792;
-  const SWord8 s5794 = s3101 ? s5780 : s5793;
-  const SWord8 s5795 = 1 & s3179;
-  const SBool  s5796 = 0 != s5795;
-  const SWord8 s5797 = 1 & s3175;
-  const SBool  s5798 = 0 != s5797;
-  const SWord8 s5799 = 1 & s3168;
-  const SBool  s5800 = 0 != s5799;
-  const SWord8 s5801 = s5800 ? s5766 : s5767;
-  const SWord8 s5802 = (s5801 >> 1) | (s5801 << 7);
-  const SWord8 s5803 = 128 | s5802;
-  const SWord8 s5804 = 127 & s5802;
-  const SWord8 s5805 = s5798 ? s5803 : s5804;
-  const SWord8 s5806 = (s5805 >> 1) | (s5805 << 7);
-  const SWord8 s5807 = 128 | s5806;
-  const SWord8 s5808 = 127 & s5806;
-  const SWord8 s5809 = s5796 ? s5807 : s5808;
-  const SWord8 s5810 = 1 & s3184;
-  const SBool  s5811 = 0 != s5810;
-  const SWord8 s5812 = s5811 ? s5807 : s5808;
-  const SWord8 s5813 = s3120 ? s5809 : s5812;
-  const SWord8 s5814 = 1 & s3200;
-  const SBool  s5815 = 0 != s5814;
-  const SWord8 s5816 = 1 & s3193;
-  const SBool  s5817 = 0 != s5816;
-  const SWord8 s5818 = s5817 ? s5803 : s5804;
-  const SWord8 s5819 = (s5818 >> 1) | (s5818 << 7);
-  const SWord8 s5820 = 128 | s5819;
-  const SWord8 s5821 = 127 & s5819;
-  const SWord8 s5822 = s5815 ? s5820 : s5821;
-  const SWord8 s5823 = 1 & s3205;
-  const SBool  s5824 = 0 != s5823;
-  const SWord8 s5825 = s5824 ? s5820 : s5821;
-  const SWord8 s5826 = s3120 ? s5822 : s5825;
-  const SWord8 s5827 = s3101 ? s5813 : s5826;
-  const SWord8 s5828 = s3082 ? s5794 : s5827;
-  const SWord8 s5829 = 1 & s3240;
-  const SBool  s5830 = 0 != s5829;
-  const SWord8 s5831 = 1 & s3236;
-  const SBool  s5832 = 0 != s5831;
-  const SWord8 s5833 = 1 & s3232;
-  const SBool  s5834 = 0 != s5833;
-  const SWord8 s5835 = (s3219 >> 1) | (s3219 << 7);
-  const SWord8 s5836 = 128 | s5835;
-  const SWord8 s5837 = 127 & s5835;
-  const SWord8 s5838 = s5834 ? s5836 : s5837;
-  const SWord8 s5839 = (s5838 >> 1) | (s5838 << 7);
-  const SWord8 s5840 = 128 | s5839;
-  const SWord8 s5841 = 127 & s5839;
-  const SWord8 s5842 = s5832 ? s5840 : s5841;
-  const SWord8 s5843 = (s5842 >> 1) | (s5842 << 7);
-  const SWord8 s5844 = 128 | s5843;
-  const SWord8 s5845 = 127 & s5843;
-  const SWord8 s5846 = s5830 ? s5844 : s5845;
-  const SWord8 s5847 = 1 & s3245;
-  const SBool  s5848 = 0 != s5847;
-  const SWord8 s5849 = s5848 ? s5844 : s5845;
-  const SWord8 s5850 = s3225 ? s5846 : s5849;
-  const SWord8 s5851 = 1 & s3261;
-  const SBool  s5852 = 0 != s5851;
-  const SWord8 s5853 = 1 & s3254;
-  const SBool  s5854 = 0 != s5853;
-  const SWord8 s5855 = s5854 ? s5840 : s5841;
-  const SWord8 s5856 = (s5855 >> 1) | (s5855 << 7);
-  const SWord8 s5857 = 128 | s5856;
-  const SWord8 s5858 = 127 & s5856;
-  const SWord8 s5859 = s5852 ? s5857 : s5858;
-  const SWord8 s5860 = 1 & s3266;
-  const SBool  s5861 = 0 != s5860;
-  const SWord8 s5862 = s5861 ? s5857 : s5858;
-  const SWord8 s5863 = s3225 ? s5859 : s5862;
-  const SWord8 s5864 = s3101 ? s5850 : s5863;
-  const SWord8 s5865 = 1 & s3287;
-  const SBool  s5866 = 0 != s5865;
-  const SWord8 s5867 = 1 & s3283;
-  const SBool  s5868 = 0 != s5867;
-  const SWord8 s5869 = 1 & s3276;
-  const SBool  s5870 = 0 != s5869;
-  const SWord8 s5871 = s5870 ? s5836 : s5837;
-  const SWord8 s5872 = (s5871 >> 1) | (s5871 << 7);
-  const SWord8 s5873 = 128 | s5872;
-  const SWord8 s5874 = 127 & s5872;
-  const SWord8 s5875 = s5868 ? s5873 : s5874;
-  const SWord8 s5876 = (s5875 >> 1) | (s5875 << 7);
-  const SWord8 s5877 = 128 | s5876;
-  const SWord8 s5878 = 127 & s5876;
-  const SWord8 s5879 = s5866 ? s5877 : s5878;
-  const SWord8 s5880 = 1 & s3292;
-  const SBool  s5881 = 0 != s5880;
-  const SWord8 s5882 = s5881 ? s5877 : s5878;
-  const SWord8 s5883 = s3225 ? s5879 : s5882;
-  const SWord8 s5884 = 1 & s3308;
-  const SBool  s5885 = 0 != s5884;
-  const SWord8 s5886 = 1 & s3301;
-  const SBool  s5887 = 0 != s5886;
-  const SWord8 s5888 = s5887 ? s5873 : s5874;
-  const SWord8 s5889 = (s5888 >> 1) | (s5888 << 7);
-  const SWord8 s5890 = 128 | s5889;
-  const SWord8 s5891 = 127 & s5889;
-  const SWord8 s5892 = s5885 ? s5890 : s5891;
-  const SWord8 s5893 = 1 & s3313;
-  const SBool  s5894 = 0 != s5893;
-  const SWord8 s5895 = s5894 ? s5890 : s5891;
-  const SWord8 s5896 = s3225 ? s5892 : s5895;
-  const SWord8 s5897 = s3101 ? s5883 : s5896;
-  const SWord8 s5898 = s3082 ? s5864 : s5897;
-  const SWord8 s5899 = s3060 ? s5828 : s5898;
-  const SWord8 s5900 = 1 & s3368;
-  const SBool  s5901 = 0 != s5900;
-  const SWord8 s5902 = 1 & s3364;
-  const SBool  s5903 = 0 != s5902;
-  const SWord8 s5904 = 1 & s3360;
-  const SBool  s5905 = 0 != s5904;
-  const SWord8 s5906 = (s3347 >> 1) | (s3347 << 7);
-  const SWord8 s5907 = 128 | s5906;
-  const SWord8 s5908 = 127 & s5906;
-  const SWord8 s5909 = s5905 ? s5907 : s5908;
-  const SWord8 s5910 = (s5909 >> 1) | (s5909 << 7);
-  const SWord8 s5911 = 128 | s5910;
-  const SWord8 s5912 = 127 & s5910;
-  const SWord8 s5913 = s5903 ? s5911 : s5912;
-  const SWord8 s5914 = (s5913 >> 1) | (s5913 << 7);
-  const SWord8 s5915 = 128 | s5914;
-  const SWord8 s5916 = 127 & s5914;
-  const SWord8 s5917 = s5901 ? s5915 : s5916;
-  const SWord8 s5918 = 1 & s3373;
-  const SBool  s5919 = 0 != s5918;
-  const SWord8 s5920 = s5919 ? s5915 : s5916;
-  const SWord8 s5921 = s3356 ? s5917 : s5920;
-  const SWord8 s5922 = 1 & s3389;
-  const SBool  s5923 = 0 != s5922;
-  const SWord8 s5924 = 1 & s3382;
-  const SBool  s5925 = 0 != s5924;
-  const SWord8 s5926 = s5925 ? s5911 : s5912;
-  const SWord8 s5927 = (s5926 >> 1) | (s5926 << 7);
-  const SWord8 s5928 = 128 | s5927;
-  const SWord8 s5929 = 127 & s5927;
-  const SWord8 s5930 = s5923 ? s5928 : s5929;
-  const SWord8 s5931 = 1 & s3394;
-  const SBool  s5932 = 0 != s5931;
-  const SWord8 s5933 = s5932 ? s5928 : s5929;
-  const SWord8 s5934 = s3356 ? s5930 : s5933;
-  const SWord8 s5935 = s3334 ? s5921 : s5934;
-  const SWord8 s5936 = 1 & s3415;
-  const SBool  s5937 = 0 != s5936;
-  const SWord8 s5938 = 1 & s3411;
-  const SBool  s5939 = 0 != s5938;
-  const SWord8 s5940 = 1 & s3404;
-  const SBool  s5941 = 0 != s5940;
-  const SWord8 s5942 = s5941 ? s5907 : s5908;
-  const SWord8 s5943 = (s5942 >> 1) | (s5942 << 7);
-  const SWord8 s5944 = 128 | s5943;
-  const SWord8 s5945 = 127 & s5943;
-  const SWord8 s5946 = s5939 ? s5944 : s5945;
-  const SWord8 s5947 = (s5946 >> 1) | (s5946 << 7);
-  const SWord8 s5948 = 128 | s5947;
-  const SWord8 s5949 = 127 & s5947;
-  const SWord8 s5950 = s5937 ? s5948 : s5949;
-  const SWord8 s5951 = 1 & s3420;
-  const SBool  s5952 = 0 != s5951;
-  const SWord8 s5953 = s5952 ? s5948 : s5949;
-  const SWord8 s5954 = s3356 ? s5950 : s5953;
-  const SWord8 s5955 = 1 & s3436;
-  const SBool  s5956 = 0 != s5955;
-  const SWord8 s5957 = 1 & s3429;
-  const SBool  s5958 = 0 != s5957;
-  const SWord8 s5959 = s5958 ? s5944 : s5945;
-  const SWord8 s5960 = (s5959 >> 1) | (s5959 << 7);
-  const SWord8 s5961 = 128 | s5960;
-  const SWord8 s5962 = 127 & s5960;
-  const SWord8 s5963 = s5956 ? s5961 : s5962;
-  const SWord8 s5964 = 1 & s3441;
-  const SBool  s5965 = 0 != s5964;
-  const SWord8 s5966 = s5965 ? s5961 : s5962;
-  const SWord8 s5967 = s3356 ? s5963 : s5966;
-  const SWord8 s5968 = s3334 ? s5954 : s5967;
-  const SWord8 s5969 = s3082 ? s5935 : s5968;
-  const SWord8 s5970 = 1 & s3476;
-  const SBool  s5971 = 0 != s5970;
-  const SWord8 s5972 = 1 & s3472;
-  const SBool  s5973 = 0 != s5972;
-  const SWord8 s5974 = 1 & s3468;
-  const SBool  s5975 = 0 != s5974;
-  const SWord8 s5976 = (s3455 >> 1) | (s3455 << 7);
-  const SWord8 s5977 = 128 | s5976;
-  const SWord8 s5978 = 127 & s5976;
-  const SWord8 s5979 = s5975 ? s5977 : s5978;
-  const SWord8 s5980 = (s5979 >> 1) | (s5979 << 7);
-  const SWord8 s5981 = 128 | s5980;
-  const SWord8 s5982 = 127 & s5980;
-  const SWord8 s5983 = s5973 ? s5981 : s5982;
-  const SWord8 s5984 = (s5983 >> 1) | (s5983 << 7);
-  const SWord8 s5985 = 128 | s5984;
-  const SWord8 s5986 = 127 & s5984;
-  const SWord8 s5987 = s5971 ? s5985 : s5986;
-  const SWord8 s5988 = 1 & s3481;
-  const SBool  s5989 = 0 != s5988;
-  const SWord8 s5990 = s5989 ? s5985 : s5986;
-  const SWord8 s5991 = s3461 ? s5987 : s5990;
-  const SWord8 s5992 = 1 & s3497;
-  const SBool  s5993 = 0 != s5992;
-  const SWord8 s5994 = 1 & s3490;
-  const SBool  s5995 = 0 != s5994;
-  const SWord8 s5996 = s5995 ? s5981 : s5982;
-  const SWord8 s5997 = (s5996 >> 1) | (s5996 << 7);
-  const SWord8 s5998 = 128 | s5997;
-  const SWord8 s5999 = 127 & s5997;
-  const SWord8 s6000 = s5993 ? s5998 : s5999;
-  const SWord8 s6001 = 1 & s3502;
-  const SBool  s6002 = 0 != s6001;
-  const SWord8 s6003 = s6002 ? s5998 : s5999;
-  const SWord8 s6004 = s3461 ? s6000 : s6003;
-  const SWord8 s6005 = s3334 ? s5991 : s6004;
-  const SWord8 s6006 = 1 & s3523;
-  const SBool  s6007 = 0 != s6006;
-  const SWord8 s6008 = 1 & s3519;
-  const SBool  s6009 = 0 != s6008;
-  const SWord8 s6010 = 1 & s3512;
-  const SBool  s6011 = 0 != s6010;
-  const SWord8 s6012 = s6011 ? s5977 : s5978;
-  const SWord8 s6013 = (s6012 >> 1) | (s6012 << 7);
-  const SWord8 s6014 = 128 | s6013;
-  const SWord8 s6015 = 127 & s6013;
-  const SWord8 s6016 = s6009 ? s6014 : s6015;
-  const SWord8 s6017 = (s6016 >> 1) | (s6016 << 7);
-  const SWord8 s6018 = 128 | s6017;
-  const SWord8 s6019 = 127 & s6017;
-  const SWord8 s6020 = s6007 ? s6018 : s6019;
-  const SWord8 s6021 = 1 & s3528;
-  const SBool  s6022 = 0 != s6021;
-  const SWord8 s6023 = s6022 ? s6018 : s6019;
-  const SWord8 s6024 = s3461 ? s6020 : s6023;
-  const SWord8 s6025 = 1 & s3544;
-  const SBool  s6026 = 0 != s6025;
-  const SWord8 s6027 = 1 & s3537;
-  const SBool  s6028 = 0 != s6027;
-  const SWord8 s6029 = s6028 ? s6014 : s6015;
-  const SWord8 s6030 = (s6029 >> 1) | (s6029 << 7);
-  const SWord8 s6031 = 128 | s6030;
-  const SWord8 s6032 = 127 & s6030;
-  const SWord8 s6033 = s6026 ? s6031 : s6032;
-  const SWord8 s6034 = 1 & s3549;
-  const SBool  s6035 = 0 != s6034;
-  const SWord8 s6036 = s6035 ? s6031 : s6032;
-  const SWord8 s6037 = s3461 ? s6033 : s6036;
-  const SWord8 s6038 = s3334 ? s6024 : s6037;
-  const SWord8 s6039 = s3082 ? s6005 : s6038;
-  const SWord8 s6040 = s3060 ? s5969 : s6039;
-  const SWord8 s6041 = s2042 ? s5899 : s6040;
-  const SWord8 s6042 = 1 & s3624;
-  const SBool  s6043 = 0 != s6042;
-  const SWord8 s6044 = 1 & s3620;
-  const SBool  s6045 = 0 != s6044;
-  const SWord8 s6046 = 1 & s3616;
-  const SBool  s6047 = 0 != s6046;
-  const SWord8 s6048 = (s3603 >> 1) | (s3603 << 7);
-  const SWord8 s6049 = 128 | s6048;
-  const SWord8 s6050 = 127 & s6048;
-  const SWord8 s6051 = s6047 ? s6049 : s6050;
-  const SWord8 s6052 = (s6051 >> 1) | (s6051 << 7);
-  const SWord8 s6053 = 128 | s6052;
-  const SWord8 s6054 = 127 & s6052;
-  const SWord8 s6055 = s6045 ? s6053 : s6054;
-  const SWord8 s6056 = (s6055 >> 1) | (s6055 << 7);
-  const SWord8 s6057 = 128 | s6056;
-  const SWord8 s6058 = 127 & s6056;
-  const SWord8 s6059 = s6043 ? s6057 : s6058;
-  const SWord8 s6060 = 1 & s3629;
-  const SBool  s6061 = 0 != s6060;
-  const SWord8 s6062 = s6061 ? s6057 : s6058;
-  const SWord8 s6063 = s3612 ? s6059 : s6062;
-  const SWord8 s6064 = 1 & s3645;
-  const SBool  s6065 = 0 != s6064;
-  const SWord8 s6066 = 1 & s3638;
-  const SBool  s6067 = 0 != s6066;
-  const SWord8 s6068 = s6067 ? s6053 : s6054;
-  const SWord8 s6069 = (s6068 >> 1) | (s6068 << 7);
-  const SWord8 s6070 = 128 | s6069;
-  const SWord8 s6071 = 127 & s6069;
-  const SWord8 s6072 = s6065 ? s6070 : s6071;
-  const SWord8 s6073 = 1 & s3650;
-  const SBool  s6074 = 0 != s6073;
-  const SWord8 s6075 = s6074 ? s6070 : s6071;
-  const SWord8 s6076 = s3612 ? s6072 : s6075;
-  const SWord8 s6077 = s3593 ? s6063 : s6076;
-  const SWord8 s6078 = 1 & s3671;
-  const SBool  s6079 = 0 != s6078;
-  const SWord8 s6080 = 1 & s3667;
-  const SBool  s6081 = 0 != s6080;
-  const SWord8 s6082 = 1 & s3660;
-  const SBool  s6083 = 0 != s6082;
-  const SWord8 s6084 = s6083 ? s6049 : s6050;
-  const SWord8 s6085 = (s6084 >> 1) | (s6084 << 7);
-  const SWord8 s6086 = 128 | s6085;
-  const SWord8 s6087 = 127 & s6085;
-  const SWord8 s6088 = s6081 ? s6086 : s6087;
-  const SWord8 s6089 = (s6088 >> 1) | (s6088 << 7);
-  const SWord8 s6090 = 128 | s6089;
-  const SWord8 s6091 = 127 & s6089;
-  const SWord8 s6092 = s6079 ? s6090 : s6091;
-  const SWord8 s6093 = 1 & s3676;
-  const SBool  s6094 = 0 != s6093;
-  const SWord8 s6095 = s6094 ? s6090 : s6091;
-  const SWord8 s6096 = s3612 ? s6092 : s6095;
-  const SWord8 s6097 = 1 & s3692;
-  const SBool  s6098 = 0 != s6097;
-  const SWord8 s6099 = 1 & s3685;
-  const SBool  s6100 = 0 != s6099;
-  const SWord8 s6101 = s6100 ? s6086 : s6087;
-  const SWord8 s6102 = (s6101 >> 1) | (s6101 << 7);
-  const SWord8 s6103 = 128 | s6102;
-  const SWord8 s6104 = 127 & s6102;
-  const SWord8 s6105 = s6098 ? s6103 : s6104;
-  const SWord8 s6106 = 1 & s3697;
-  const SBool  s6107 = 0 != s6106;
-  const SWord8 s6108 = s6107 ? s6103 : s6104;
-  const SWord8 s6109 = s3612 ? s6105 : s6108;
-  const SWord8 s6110 = s3593 ? s6096 : s6109;
-  const SWord8 s6111 = s3571 ? s6077 : s6110;
-  const SWord8 s6112 = 1 & s3732;
-  const SBool  s6113 = 0 != s6112;
-  const SWord8 s6114 = 1 & s3728;
-  const SBool  s6115 = 0 != s6114;
-  const SWord8 s6116 = 1 & s3724;
-  const SBool  s6117 = 0 != s6116;
-  const SWord8 s6118 = (s3711 >> 1) | (s3711 << 7);
-  const SWord8 s6119 = 128 | s6118;
-  const SWord8 s6120 = 127 & s6118;
-  const SWord8 s6121 = s6117 ? s6119 : s6120;
-  const SWord8 s6122 = (s6121 >> 1) | (s6121 << 7);
-  const SWord8 s6123 = 128 | s6122;
-  const SWord8 s6124 = 127 & s6122;
-  const SWord8 s6125 = s6115 ? s6123 : s6124;
-  const SWord8 s6126 = (s6125 >> 1) | (s6125 << 7);
-  const SWord8 s6127 = 128 | s6126;
-  const SWord8 s6128 = 127 & s6126;
-  const SWord8 s6129 = s6113 ? s6127 : s6128;
-  const SWord8 s6130 = 1 & s3737;
-  const SBool  s6131 = 0 != s6130;
-  const SWord8 s6132 = s6131 ? s6127 : s6128;
-  const SWord8 s6133 = s3717 ? s6129 : s6132;
-  const SWord8 s6134 = 1 & s3753;
-  const SBool  s6135 = 0 != s6134;
-  const SWord8 s6136 = 1 & s3746;
-  const SBool  s6137 = 0 != s6136;
-  const SWord8 s6138 = s6137 ? s6123 : s6124;
-  const SWord8 s6139 = (s6138 >> 1) | (s6138 << 7);
-  const SWord8 s6140 = 128 | s6139;
-  const SWord8 s6141 = 127 & s6139;
-  const SWord8 s6142 = s6135 ? s6140 : s6141;
-  const SWord8 s6143 = 1 & s3758;
-  const SBool  s6144 = 0 != s6143;
-  const SWord8 s6145 = s6144 ? s6140 : s6141;
-  const SWord8 s6146 = s3717 ? s6142 : s6145;
-  const SWord8 s6147 = s3593 ? s6133 : s6146;
-  const SWord8 s6148 = 1 & s3779;
-  const SBool  s6149 = 0 != s6148;
-  const SWord8 s6150 = 1 & s3775;
-  const SBool  s6151 = 0 != s6150;
-  const SWord8 s6152 = 1 & s3768;
-  const SBool  s6153 = 0 != s6152;
-  const SWord8 s6154 = s6153 ? s6119 : s6120;
-  const SWord8 s6155 = (s6154 >> 1) | (s6154 << 7);
-  const SWord8 s6156 = 128 | s6155;
-  const SWord8 s6157 = 127 & s6155;
-  const SWord8 s6158 = s6151 ? s6156 : s6157;
-  const SWord8 s6159 = (s6158 >> 1) | (s6158 << 7);
-  const SWord8 s6160 = 128 | s6159;
-  const SWord8 s6161 = 127 & s6159;
-  const SWord8 s6162 = s6149 ? s6160 : s6161;
-  const SWord8 s6163 = 1 & s3784;
-  const SBool  s6164 = 0 != s6163;
-  const SWord8 s6165 = s6164 ? s6160 : s6161;
-  const SWord8 s6166 = s3717 ? s6162 : s6165;
-  const SWord8 s6167 = 1 & s3800;
-  const SBool  s6168 = 0 != s6167;
-  const SWord8 s6169 = 1 & s3793;
-  const SBool  s6170 = 0 != s6169;
-  const SWord8 s6171 = s6170 ? s6156 : s6157;
-  const SWord8 s6172 = (s6171 >> 1) | (s6171 << 7);
-  const SWord8 s6173 = 128 | s6172;
-  const SWord8 s6174 = 127 & s6172;
-  const SWord8 s6175 = s6168 ? s6173 : s6174;
-  const SWord8 s6176 = 1 & s3805;
-  const SBool  s6177 = 0 != s6176;
-  const SWord8 s6178 = s6177 ? s6173 : s6174;
-  const SWord8 s6179 = s3717 ? s6175 : s6178;
-  const SWord8 s6180 = s3593 ? s6166 : s6179;
-  const SWord8 s6181 = s3571 ? s6147 : s6180;
-  const SWord8 s6182 = s3060 ? s6111 : s6181;
-  const SWord8 s6183 = 1 & s3860;
-  const SBool  s6184 = 0 != s6183;
-  const SWord8 s6185 = 1 & s3856;
-  const SBool  s6186 = 0 != s6185;
-  const SWord8 s6187 = 1 & s3852;
-  const SBool  s6188 = 0 != s6187;
-  const SWord8 s6189 = (s3839 >> 1) | (s3839 << 7);
-  const SWord8 s6190 = 128 | s6189;
-  const SWord8 s6191 = 127 & s6189;
-  const SWord8 s6192 = s6188 ? s6190 : s6191;
-  const SWord8 s6193 = (s6192 >> 1) | (s6192 << 7);
-  const SWord8 s6194 = 128 | s6193;
-  const SWord8 s6195 = 127 & s6193;
-  const SWord8 s6196 = s6186 ? s6194 : s6195;
-  const SWord8 s6197 = (s6196 >> 1) | (s6196 << 7);
-  const SWord8 s6198 = 128 | s6197;
-  const SWord8 s6199 = 127 & s6197;
-  const SWord8 s6200 = s6184 ? s6198 : s6199;
-  const SWord8 s6201 = 1 & s3865;
-  const SBool  s6202 = 0 != s6201;
-  const SWord8 s6203 = s6202 ? s6198 : s6199;
-  const SWord8 s6204 = s3848 ? s6200 : s6203;
-  const SWord8 s6205 = 1 & s3881;
-  const SBool  s6206 = 0 != s6205;
-  const SWord8 s6207 = 1 & s3874;
-  const SBool  s6208 = 0 != s6207;
-  const SWord8 s6209 = s6208 ? s6194 : s6195;
-  const SWord8 s6210 = (s6209 >> 1) | (s6209 << 7);
-  const SWord8 s6211 = 128 | s6210;
-  const SWord8 s6212 = 127 & s6210;
-  const SWord8 s6213 = s6206 ? s6211 : s6212;
-  const SWord8 s6214 = 1 & s3886;
-  const SBool  s6215 = 0 != s6214;
-  const SWord8 s6216 = s6215 ? s6211 : s6212;
-  const SWord8 s6217 = s3848 ? s6213 : s6216;
-  const SWord8 s6218 = s3826 ? s6204 : s6217;
-  const SWord8 s6219 = 1 & s3907;
-  const SBool  s6220 = 0 != s6219;
-  const SWord8 s6221 = 1 & s3903;
-  const SBool  s6222 = 0 != s6221;
-  const SWord8 s6223 = 1 & s3896;
-  const SBool  s6224 = 0 != s6223;
-  const SWord8 s6225 = s6224 ? s6190 : s6191;
-  const SWord8 s6226 = (s6225 >> 1) | (s6225 << 7);
-  const SWord8 s6227 = 128 | s6226;
-  const SWord8 s6228 = 127 & s6226;
-  const SWord8 s6229 = s6222 ? s6227 : s6228;
-  const SWord8 s6230 = (s6229 >> 1) | (s6229 << 7);
-  const SWord8 s6231 = 128 | s6230;
-  const SWord8 s6232 = 127 & s6230;
-  const SWord8 s6233 = s6220 ? s6231 : s6232;
-  const SWord8 s6234 = 1 & s3912;
-  const SBool  s6235 = 0 != s6234;
-  const SWord8 s6236 = s6235 ? s6231 : s6232;
-  const SWord8 s6237 = s3848 ? s6233 : s6236;
-  const SWord8 s6238 = 1 & s3928;
-  const SBool  s6239 = 0 != s6238;
-  const SWord8 s6240 = 1 & s3921;
-  const SBool  s6241 = 0 != s6240;
-  const SWord8 s6242 = s6241 ? s6227 : s6228;
-  const SWord8 s6243 = (s6242 >> 1) | (s6242 << 7);
-  const SWord8 s6244 = 128 | s6243;
-  const SWord8 s6245 = 127 & s6243;
-  const SWord8 s6246 = s6239 ? s6244 : s6245;
-  const SWord8 s6247 = 1 & s3933;
-  const SBool  s6248 = 0 != s6247;
-  const SWord8 s6249 = s6248 ? s6244 : s6245;
-  const SWord8 s6250 = s3848 ? s6246 : s6249;
-  const SWord8 s6251 = s3826 ? s6237 : s6250;
-  const SWord8 s6252 = s3571 ? s6218 : s6251;
-  const SWord8 s6253 = 1 & s3968;
-  const SBool  s6254 = 0 != s6253;
-  const SWord8 s6255 = 1 & s3964;
-  const SBool  s6256 = 0 != s6255;
-  const SWord8 s6257 = 1 & s3960;
-  const SBool  s6258 = 0 != s6257;
-  const SWord8 s6259 = (s3947 >> 1) | (s3947 << 7);
-  const SWord8 s6260 = 128 | s6259;
-  const SWord8 s6261 = 127 & s6259;
-  const SWord8 s6262 = s6258 ? s6260 : s6261;
-  const SWord8 s6263 = (s6262 >> 1) | (s6262 << 7);
-  const SWord8 s6264 = 128 | s6263;
-  const SWord8 s6265 = 127 & s6263;
-  const SWord8 s6266 = s6256 ? s6264 : s6265;
-  const SWord8 s6267 = (s6266 >> 1) | (s6266 << 7);
-  const SWord8 s6268 = 128 | s6267;
-  const SWord8 s6269 = 127 & s6267;
-  const SWord8 s6270 = s6254 ? s6268 : s6269;
-  const SWord8 s6271 = 1 & s3973;
-  const SBool  s6272 = 0 != s6271;
-  const SWord8 s6273 = s6272 ? s6268 : s6269;
-  const SWord8 s6274 = s3953 ? s6270 : s6273;
-  const SWord8 s6275 = 1 & s3989;
-  const SBool  s6276 = 0 != s6275;
-  const SWord8 s6277 = 1 & s3982;
-  const SBool  s6278 = 0 != s6277;
-  const SWord8 s6279 = s6278 ? s6264 : s6265;
-  const SWord8 s6280 = (s6279 >> 1) | (s6279 << 7);
-  const SWord8 s6281 = 128 | s6280;
-  const SWord8 s6282 = 127 & s6280;
-  const SWord8 s6283 = s6276 ? s6281 : s6282;
-  const SWord8 s6284 = 1 & s3994;
-  const SBool  s6285 = 0 != s6284;
-  const SWord8 s6286 = s6285 ? s6281 : s6282;
-  const SWord8 s6287 = s3953 ? s6283 : s6286;
-  const SWord8 s6288 = s3826 ? s6274 : s6287;
-  const SWord8 s6289 = 1 & s4015;
-  const SBool  s6290 = 0 != s6289;
-  const SWord8 s6291 = 1 & s4011;
-  const SBool  s6292 = 0 != s6291;
-  const SWord8 s6293 = 1 & s4004;
-  const SBool  s6294 = 0 != s6293;
-  const SWord8 s6295 = s6294 ? s6260 : s6261;
-  const SWord8 s6296 = (s6295 >> 1) | (s6295 << 7);
-  const SWord8 s6297 = 128 | s6296;
-  const SWord8 s6298 = 127 & s6296;
-  const SWord8 s6299 = s6292 ? s6297 : s6298;
-  const SWord8 s6300 = (s6299 >> 1) | (s6299 << 7);
-  const SWord8 s6301 = 128 | s6300;
-  const SWord8 s6302 = 127 & s6300;
-  const SWord8 s6303 = s6290 ? s6301 : s6302;
-  const SWord8 s6304 = 1 & s4020;
-  const SBool  s6305 = 0 != s6304;
-  const SWord8 s6306 = s6305 ? s6301 : s6302;
-  const SWord8 s6307 = s3953 ? s6303 : s6306;
-  const SWord8 s6308 = 1 & s4036;
-  const SBool  s6309 = 0 != s6308;
-  const SWord8 s6310 = 1 & s4029;
-  const SBool  s6311 = 0 != s6310;
-  const SWord8 s6312 = s6311 ? s6297 : s6298;
-  const SWord8 s6313 = (s6312 >> 1) | (s6312 << 7);
-  const SWord8 s6314 = 128 | s6313;
-  const SWord8 s6315 = 127 & s6313;
-  const SWord8 s6316 = s6309 ? s6314 : s6315;
-  const SWord8 s6317 = 1 & s4041;
-  const SBool  s6318 = 0 != s6317;
-  const SWord8 s6319 = s6318 ? s6314 : s6315;
-  const SWord8 s6320 = s3953 ? s6316 : s6319;
-  const SWord8 s6321 = s3826 ? s6307 : s6320;
-  const SWord8 s6322 = s3571 ? s6288 : s6321;
-  const SWord8 s6323 = s3060 ? s6252 : s6322;
-  const SWord8 s6324 = s2042 ? s6182 : s6323;
-  const SWord8 s6325 = s17 ? s6041 : s6324;
-  const SWord8 s6326 = s12 ? s5758 : s6325;
-  const SWord8 s6327 = s6 ? s5191 : s6326;
-  
-  *hi = s4056;
-  *lo = s6327;
-}
-== END: "legatoMult.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/popCount1.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/popCount1.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/popCount1.gold
+++ /dev/null
@@ -1,126 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for popCount. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: popCount_driver
-
-popCount.o: popCount.c popCount.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-popCount_driver.o: popCount_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-popCount_driver: popCount.o popCount_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f popCount_driver
-== END: "Makefile" ==================
-== BEGIN: "popCount.h" ================
-/* Header file for popCount. Automatically generated by SBV. Do not edit! */
-
-#ifndef __popCount__HEADER_INCLUDED__
-#define __popCount__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-SWord8 popCount(const SWord64 x);
-
-#endif /* __popCount__HEADER_INCLUDED__ */
-== END: "popCount.h" ==================
-== BEGIN: "popCount_driver.c" ================
-/* Example driver program for popCount. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "popCount.h"
-
-int main(void)
-{
-  const SWord8 __result = popCount(0x0123456789abcdefULL);
-  
-  printf("popCount(0x0123456789abcdefULL) = %"PRIu8"\n", __result);
-
-  return 0;
-}
-== END: "popCount_driver.c" ==================
-== BEGIN: "popCount.c" ================
-/* File: "popCount.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "popCount.h"
-
-SWord8 popCount(const SWord64 x)
-{
-  const SWord64 s0 = x;
-  static const SWord8 table0[] = {
-      0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4, 1, 2, 2, 3, 2, 3,
-      3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4,
-      3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 1, 2,
-      2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5,
-      3, 4, 4, 5, 4, 5, 5, 6, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5,
-      5, 6, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 1, 2, 2, 3,
-      2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4,
-      4, 5, 4, 5, 5, 6, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
-      3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 2, 3, 3, 4, 3, 4,
-      4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6,
-      5, 6, 6, 7, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 4, 5,
-      5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8
-  };
-  const SWord64 s11 = s0 & 0x00000000000000ffULL;
-  const SWord8  s12 = table0[s11];
-  const SWord64 s13 = s0 >> 8;
-  const SWord64 s14 = 0x00000000000000ffULL & s13;
-  const SWord8  s15 = table0[s14];
-  const SWord8  s16 = s12 + s15;
-  const SWord64 s17 = s13 >> 8;
-  const SWord64 s18 = 0x00000000000000ffULL & s17;
-  const SWord8  s19 = table0[s18];
-  const SWord8  s20 = s16 + s19;
-  const SWord64 s21 = s17 >> 8;
-  const SWord64 s22 = 0x00000000000000ffULL & s21;
-  const SWord8  s23 = table0[s22];
-  const SWord8  s24 = s20 + s23;
-  const SWord64 s25 = s21 >> 8;
-  const SWord64 s26 = 0x00000000000000ffULL & s25;
-  const SWord8  s27 = table0[s26];
-  const SWord8  s28 = s24 + s27;
-  const SWord64 s29 = s25 >> 8;
-  const SWord64 s30 = 0x00000000000000ffULL & s29;
-  const SWord8  s31 = table0[s30];
-  const SWord8  s32 = s28 + s31;
-  const SWord64 s33 = s29 >> 8;
-  const SWord64 s34 = 0x00000000000000ffULL & s33;
-  const SWord8  s35 = table0[s34];
-  const SWord8  s36 = s32 + s35;
-  const SWord64 s37 = s33 >> 8;
-  const SWord64 s38 = 0x00000000000000ffULL & s37;
-  const SWord8  s39 = table0[s38];
-  const SWord8  s40 = s36 + s39;
-  
-  return s40;
-}
-== END: "popCount.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/popCount2.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/popCount2.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/popCount2.gold
+++ /dev/null
@@ -1,126 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for popCount. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: popCount_driver
-
-popCount.o: popCount.c popCount.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-popCount_driver.o: popCount_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-popCount_driver: popCount.o popCount_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f popCount_driver
-== END: "Makefile" ==================
-== BEGIN: "popCount.h" ================
-/* Header file for popCount. Automatically generated by SBV. Do not edit! */
-
-#ifndef __popCount__HEADER_INCLUDED__
-#define __popCount__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-SWord8 popCount(const SWord64 x);
-
-#endif /* __popCount__HEADER_INCLUDED__ */
-== END: "popCount.h" ==================
-== BEGIN: "popCount_driver.c" ================
-/* Example driver program for popCount. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "popCount.h"
-
-int main(void)
-{
-  const SWord8 __result = popCount(0x0123456789abcdefULL);
-  
-  printf("popCount(0x0123456789abcdefULL) = %"PRIu8"\n", __result);
-
-  return 0;
-}
-== END: "popCount_driver.c" ==================
-== BEGIN: "popCount.c" ================
-/* File: "popCount.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "popCount.h"
-
-SWord8 popCount(const SWord64 x)
-{
-  const SWord64 s0 = x;
-  static const SWord8 table0[] = {
-      0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4, 1, 2, 2, 3, 2, 3,
-      3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4,
-      3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 1, 2,
-      2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5,
-      3, 4, 4, 5, 4, 5, 5, 6, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5,
-      5, 6, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 1, 2, 2, 3,
-      2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4,
-      4, 5, 4, 5, 5, 6, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
-      3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 2, 3, 3, 4, 3, 4,
-      4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6,
-      5, 6, 6, 7, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 4, 5,
-      5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8
-  };
-  const SWord64 s11 = s0 & 0x00000000000000ffULL;
-  const SWord8  s12 = s11 >= 256 ? 0 : table0[s11];
-  const SWord64 s13 = s0 >> 8;
-  const SWord64 s14 = 0x00000000000000ffULL & s13;
-  const SWord8  s15 = s14 >= 256 ? 0 : table0[s14];
-  const SWord8  s16 = s12 + s15;
-  const SWord64 s17 = s13 >> 8;
-  const SWord64 s18 = 0x00000000000000ffULL & s17;
-  const SWord8  s19 = s18 >= 256 ? 0 : table0[s18];
-  const SWord8  s20 = s16 + s19;
-  const SWord64 s21 = s17 >> 8;
-  const SWord64 s22 = 0x00000000000000ffULL & s21;
-  const SWord8  s23 = s22 >= 256 ? 0 : table0[s22];
-  const SWord8  s24 = s20 + s23;
-  const SWord64 s25 = s21 >> 8;
-  const SWord64 s26 = 0x00000000000000ffULL & s25;
-  const SWord8  s27 = s26 >= 256 ? 0 : table0[s26];
-  const SWord8  s28 = s24 + s27;
-  const SWord64 s29 = s25 >> 8;
-  const SWord64 s30 = 0x00000000000000ffULL & s29;
-  const SWord8  s31 = s30 >= 256 ? 0 : table0[s30];
-  const SWord8  s32 = s28 + s31;
-  const SWord64 s33 = s29 >> 8;
-  const SWord64 s34 = 0x00000000000000ffULL & s33;
-  const SWord8  s35 = s34 >= 256 ? 0 : table0[s34];
-  const SWord8  s36 = s32 + s35;
-  const SWord64 s37 = s33 >> 8;
-  const SWord64 s38 = 0x00000000000000ffULL & s37;
-  const SWord8  s39 = s38 >= 256 ? 0 : table0[s38];
-  const SWord8  s40 = s36 + s39;
-  
-  return s40;
-}
-== END: "popCount.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/prefixSum_16.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/prefixSum_16.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/prefixSum_16.gold
+++ /dev/null
@@ -1,117 +0,0 @@
-INPUTS
-  s0 :: SWord32
-  s1 :: SWord32
-  s2 :: SWord32
-  s3 :: SWord32
-  s4 :: SWord32
-  s5 :: SWord32
-  s6 :: SWord32
-  s7 :: SWord32
-  s8 :: SWord32
-  s9 :: SWord32
-  s10 :: SWord32
-  s11 :: SWord32
-  s12 :: SWord32
-  s13 :: SWord32
-  s14 :: SWord32
-  s15 :: SWord32
-CONSTANTS
-  s_2 = False
-  s_1 = True
-TABLES
-ARRAYS
-UNINTERPRETED CONSTANTS
-  uninterpreted_flOp :: SWord32 -> SWord32 -> SWord32
-  uninterpreted_u :: SWord32
-AXIOMS
-  -- user defined axiom: flOp is associative
-  :assumption (forall (?x BitVec[32]) (?y BitVec[32]) (?z BitVec[32])
-                      (= (uninterpreted_flOp (uninterpreted_flOp ?x ?y) ?z)
-                         (uninterpreted_flOp ?x (uninterpreted_flOp ?y ?z))
-                      )
-              )
-  -- user defined axiom: u is left-unit for flOp
-  :assumption (forall (?x BitVec[32])
-                      (= (uninterpreted_flOp uninterpreted_u ?x)
-                         ?x
-                      )
-              )
-DEFINE
-  s16 :: SWord32 = uninterpreted_u
-  s17 :: SWord32 = s16 uninterpreted_flOp s0
-  s18 :: SBool = s0 == s17
-  s19 :: SWord32 = s0 uninterpreted_flOp s1
-  s20 :: SWord32 = s16 uninterpreted_flOp s19
-  s21 :: SBool = s19 == s20
-  s22 :: SWord32 = s19 uninterpreted_flOp s2
-  s23 :: SWord32 = s20 uninterpreted_flOp s2
-  s24 :: SBool = s22 == s23
-  s25 :: SWord32 = s22 uninterpreted_flOp s3
-  s26 :: SWord32 = s2 uninterpreted_flOp s3
-  s27 :: SWord32 = s19 uninterpreted_flOp s26
-  s28 :: SWord32 = s16 uninterpreted_flOp s27
-  s29 :: SBool = s25 == s28
-  s30 :: SWord32 = s25 uninterpreted_flOp s4
-  s31 :: SWord32 = s28 uninterpreted_flOp s4
-  s32 :: SBool = s30 == s31
-  s33 :: SWord32 = s30 uninterpreted_flOp s5
-  s34 :: SWord32 = s4 uninterpreted_flOp s5
-  s35 :: SWord32 = s28 uninterpreted_flOp s34
-  s36 :: SBool = s33 == s35
-  s37 :: SWord32 = s33 uninterpreted_flOp s6
-  s38 :: SWord32 = s35 uninterpreted_flOp s6
-  s39 :: SBool = s37 == s38
-  s40 :: SWord32 = s37 uninterpreted_flOp s7
-  s41 :: SWord32 = s6 uninterpreted_flOp s7
-  s42 :: SWord32 = s34 uninterpreted_flOp s41
-  s43 :: SWord32 = s27 uninterpreted_flOp s42
-  s44 :: SWord32 = s16 uninterpreted_flOp s43
-  s45 :: SBool = s40 == s44
-  s46 :: SWord32 = s40 uninterpreted_flOp s8
-  s47 :: SWord32 = s44 uninterpreted_flOp s8
-  s48 :: SBool = s46 == s47
-  s49 :: SWord32 = s46 uninterpreted_flOp s9
-  s50 :: SWord32 = s8 uninterpreted_flOp s9
-  s51 :: SWord32 = s44 uninterpreted_flOp s50
-  s52 :: SBool = s49 == s51
-  s53 :: SWord32 = s49 uninterpreted_flOp s10
-  s54 :: SWord32 = s51 uninterpreted_flOp s10
-  s55 :: SBool = s53 == s54
-  s56 :: SWord32 = s53 uninterpreted_flOp s11
-  s57 :: SWord32 = s10 uninterpreted_flOp s11
-  s58 :: SWord32 = s50 uninterpreted_flOp s57
-  s59 :: SWord32 = s44 uninterpreted_flOp s58
-  s60 :: SBool = s56 == s59
-  s61 :: SWord32 = s56 uninterpreted_flOp s12
-  s62 :: SWord32 = s59 uninterpreted_flOp s12
-  s63 :: SBool = s61 == s62
-  s64 :: SWord32 = s61 uninterpreted_flOp s13
-  s65 :: SWord32 = s12 uninterpreted_flOp s13
-  s66 :: SWord32 = s59 uninterpreted_flOp s65
-  s67 :: SBool = s64 == s66
-  s68 :: SWord32 = s64 uninterpreted_flOp s14
-  s69 :: SWord32 = s66 uninterpreted_flOp s14
-  s70 :: SBool = s68 == s69
-  s71 :: SWord32 = s68 uninterpreted_flOp s15
-  s72 :: SWord32 = s14 uninterpreted_flOp s15
-  s73 :: SWord32 = s65 uninterpreted_flOp s72
-  s74 :: SWord32 = s58 uninterpreted_flOp s73
-  s75 :: SWord32 = s43 uninterpreted_flOp s74
-  s76 :: SBool = s71 == s75
-  s77 :: SBool = s70 & s76
-  s78 :: SBool = s67 & s77
-  s79 :: SBool = s63 & s78
-  s80 :: SBool = s60 & s79
-  s81 :: SBool = s55 & s80
-  s82 :: SBool = s52 & s81
-  s83 :: SBool = s48 & s82
-  s84 :: SBool = s45 & s83
-  s85 :: SBool = s39 & s84
-  s86 :: SBool = s36 & s85
-  s87 :: SBool = s32 & s86
-  s88 :: SBool = s29 & s87
-  s89 :: SBool = s24 & s88
-  s90 :: SBool = s21 & s89
-  s91 :: SBool = s18 & s90
-OUTPUTS
-  s91
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/selChecked.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/selChecked.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/selChecked.gold
+++ /dev/null
@@ -1,87 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for selChecked. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: selChecked_driver
-
-selChecked.o: selChecked.c selChecked.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-selChecked_driver.o: selChecked_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-selChecked_driver: selChecked.o selChecked_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f selChecked_driver
-== END: "Makefile" ==================
-== BEGIN: "selChecked.h" ================
-/* Header file for selChecked. Automatically generated by SBV. Do not edit! */
-
-#ifndef __selChecked__HEADER_INCLUDED__
-#define __selChecked__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-SWord8 selChecked(const SWord8 x);
-
-#endif /* __selChecked__HEADER_INCLUDED__ */
-== END: "selChecked.h" ==================
-== BEGIN: "selChecked_driver.c" ================
-/* Example driver program for selChecked. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "selChecked.h"
-
-int main(void)
-{
-  const SWord8 __result = selChecked(65);
-  
-  printf("selChecked(65) = %"PRIu8"\n", __result);
-
-  return 0;
-}
-== END: "selChecked_driver.c" ==================
-== BEGIN: "selChecked.c" ================
-/* File: "selChecked.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "selChecked.h"
-
-SWord8 selChecked(const SWord8 x)
-{
-  const SWord8 s0 = x;
-  const SWord8 s3 = s0 + 2;
-  const SWord8 table0[] = {
-       1, s3
-  };
-  const SWord8 s5 = s0 >= 2 ? 3 : table0[s0];
-  
-  return s5;
-}
-== END: "selChecked.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/selUnchecked.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/selUnchecked.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/selUnchecked.gold
+++ /dev/null
@@ -1,87 +0,0 @@
-== BEGIN: "Makefile" ================
-# Makefile for selUnChecked. Automatically generated by SBV. Do not edit!
-
-CC=gcc
-CCFLAGS=-Wall -O3 -DNDEBUG -fomit-frame-pointer
-
-all: selUnChecked_driver
-
-selUnChecked.o: selUnChecked.c selUnChecked.h
-	${CC} ${CCFLAGS} -c $< -o $@
-
-selUnChecked_driver.o: selUnChecked_driver.c
-	${CC} ${CCFLAGS} -c $< -o $@
-
-selUnChecked_driver: selUnChecked.o selUnChecked_driver.o
-	${CC} ${CCFLAGS} $^ -o $@
-
-clean:
-	rm -f *.o
-
-veryclean: clean
-	rm -f selUnChecked_driver
-== END: "Makefile" ==================
-== BEGIN: "selUnChecked.h" ================
-/* Header file for selUnChecked. Automatically generated by SBV. Do not edit! */
-
-#ifndef __selUnChecked__HEADER_INCLUDED__
-#define __selUnChecked__HEADER_INCLUDED__
-
-#include <inttypes.h>
-#include <stdint.h>
-
-/* Unsigned bit-vectors */
-typedef uint8_t  SBool  ;
-typedef uint8_t  SWord8 ;
-typedef uint16_t SWord16;
-typedef uint32_t SWord32;
-typedef uint64_t SWord64;
-
-/* Signed bit-vectors */
-typedef int8_t  SInt8 ;
-typedef int16_t SInt16;
-typedef int32_t SInt32;
-typedef int64_t SInt64;
-
-/* Entry point prototype: */
-SWord8 selUnChecked(const SWord8 x);
-
-#endif /* __selUnChecked__HEADER_INCLUDED__ */
-== END: "selUnChecked.h" ==================
-== BEGIN: "selUnChecked_driver.c" ================
-/* Example driver program for selUnChecked. */
-/* Automatically generated by SBV. Edit as you see fit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include "selUnChecked.h"
-
-int main(void)
-{
-  const SWord8 __result = selUnChecked(65);
-  
-  printf("selUnChecked(65) = %"PRIu8"\n", __result);
-
-  return 0;
-}
-== END: "selUnChecked_driver.c" ==================
-== BEGIN: "selUnChecked.c" ================
-/* File: "selUnChecked.c". Automatically generated by SBV. Do not edit! */
-
-#include <inttypes.h>
-#include <stdint.h>
-#include "selUnChecked.h"
-
-SWord8 selUnChecked(const SWord8 x)
-{
-  const SWord8 s0 = x;
-  const SWord8 s3 = s0 + 2;
-  const SWord8 table0[] = {
-       1, s3
-  };
-  const SWord8 s5 = table0[s0];
-  
-  return s5;
-}
-== END: "selUnChecked.c" ==================
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/temperature.gold b/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/temperature.gold
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/GoldFiles/temperature.gold
+++ /dev/null
@@ -1,2 +0,0 @@
-Satisfiable. Model:
-  s0 = 28 :: SWord16
diff --git a/Temp/sbv-0.9.18/SBVUnitTest/SBVUnitTest.hs b/Temp/sbv-0.9.18/SBVUnitTest/SBVUnitTest.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/SBVUnitTest/SBVUnitTest.hs
+++ /dev/null
@@ -1,172 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Main
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- SBV library unit-test program
------------------------------------------------------------------------------
-
-module Main(main, createGolds) where
-
-import Control.Monad           (when)
-import System.Directory        (doesDirectoryExist, findExecutable)
-import System.Environment      (getArgs, getEnv)
-import System.Exit             (exitWith, ExitCode(..))
-import System.FilePath         ((</>))
-import System.Process          (readProcessWithExitCode)
-import Test.HUnit              (Test(..), Counts(..), runTestTT)
-
-import Data.SBV                (yices, SMTSolver(..))
-import Data.SBV.Utils.SBVTest  (SBVTestSuite(..), generateGoldCheck)
-import Paths_sbv               (getDataDir)
-
--- To add a new collection of tests, import below and add to testCollection variable
-import qualified Data.SBV.TestSuite.Arrays.Memory                  as T01_01(testSuite)
-import qualified Data.SBV.TestSuite.Basics.Arithmetic              as T02_01(testSuite)
-import qualified Data.SBV.TestSuite.Basics.BasicTests              as T02_02(testSuite)
-import qualified Data.SBV.TestSuite.Basics.Higher                  as T02_03(testSuite)
-import qualified Data.SBV.TestSuite.Basics.Index                   as T02_04(testSuite)
-import qualified Data.SBV.TestSuite.Basics.ProofTests              as T02_05(testSuite)
-import qualified Data.SBV.TestSuite.Basics.QRem                    as T02_06(testSuite)
-import qualified Data.SBV.TestSuite.BitPrecise.BitTricks           as T03_01(testSuite)
-import qualified Data.SBV.TestSuite.BitPrecise.Legato              as T03_02(testSuite)
-import qualified Data.SBV.TestSuite.CRC.CCITT                      as T04_01(testSuite)
-import qualified Data.SBV.TestSuite.CRC.CCITT_Unidir               as T04_02(testSuite)
-import qualified Data.SBV.TestSuite.CRC.GenPoly                    as T04_03(testSuite)
-import qualified Data.SBV.TestSuite.CRC.Parity                     as T04_04(testSuite)
-import qualified Data.SBV.TestSuite.CRC.USB5                       as T04_05(testSuite)
-import qualified Data.SBV.TestSuite.CodeGeneration.AddSub          as T05_01(testSuite)
-import qualified Data.SBV.TestSuite.CodeGeneration.CgTests         as T05_02(testSuite)
-import qualified Data.SBV.TestSuite.CodeGeneration.Fibonacci       as T05_03(testSuite)
-import qualified Data.SBV.TestSuite.CodeGeneration.GCD             as T05_04(testSuite)
-import qualified Data.SBV.TestSuite.CodeGeneration.PopulationCount as T05_05(testSuite)
-import qualified Data.SBV.TestSuite.Crypto.AES                     as T06_01(testSuite)
-import qualified Data.SBV.TestSuite.Polynomials.Polynomials        as T07_01(testSuite)
-import qualified Data.SBV.TestSuite.PrefixSum.PrefixSum            as T08_01(testSuite)
-import qualified Data.SBV.TestSuite.Puzzles.DogCatMouse            as T09_01(testSuite)
-import qualified Data.SBV.TestSuite.Puzzles.Euler185               as T09_02(testSuite)
-import qualified Data.SBV.TestSuite.Puzzles.MagicSquare            as T09_03(testSuite)
-import qualified Data.SBV.TestSuite.Puzzles.NQueens                as T09_04(testSuite)
-import qualified Data.SBV.TestSuite.Puzzles.PowerSet               as T09_05(testSuite)
-import qualified Data.SBV.TestSuite.Puzzles.Sudoku                 as T09_06(testSuite)
-import qualified Data.SBV.TestSuite.Puzzles.Temperature            as T09_07(testSuite)
-import qualified Data.SBV.TestSuite.Puzzles.U2Bridge               as T09_08(testSuite)
-import qualified Data.SBV.TestSuite.Uninterpreted.AUF              as T10_01(testSuite)
-import qualified Data.SBV.TestSuite.Uninterpreted.Function         as T10_02(testSuite)
-import qualified Data.SBV.TestSuite.Uninterpreted.Uninterpreted    as T10_03(testSuite)
-
-testCollection :: [(String, SBVTestSuite)]
-testCollection = [
-       ("mem",         T01_01.testSuite)
-     , ("arith",       T02_01.testSuite)
-     , ("basic",       T02_02.testSuite)
-     , ("higher",      T02_03.testSuite)
-     , ("index",       T02_04.testSuite)
-     , ("proof",       T02_05.testSuite)
-     , ("qrem",        T02_06.testSuite)
-     , ("bitTricks",   T03_01.testSuite)
-     , ("legato",      T03_02.testSuite)
-     , ("ccitt",       T04_01.testSuite)
-     , ("ccitt2",      T04_02.testSuite)
-     , ("genPoly",     T04_03.testSuite)
-     , ("parity",      T04_04.testSuite)
-     , ("usb5",        T04_05.testSuite)
-     , ("addSub",      T05_01.testSuite)
-     , ("cgtest",      T05_02.testSuite)
-     , ("fib",         T05_03.testSuite)
-     , ("gcd",         T05_04.testSuite)
-     , ("popCount",    T05_05.testSuite)
-     , ("aes",         T06_01.testSuite)
-     , ("poly",        T07_01.testSuite)
-     , ("prefixSum",   T08_01.testSuite)
-     , ("dogCatMouse", T09_01.testSuite)
-     , ("euler185",    T09_02.testSuite)
-     , ("magicSquare", T09_03.testSuite)
-     , ("nQueens",     T09_04.testSuite)
-     , ("powerset",    T09_05.testSuite)
-     , ("sudoku",      T09_06.testSuite)
-     , ("temperature", T09_07.testSuite)
-     , ("u2bridge",    T09_08.testSuite)
-     , ("auf1",        T10_01.testSuite)
-     , ("auf2",        T10_02.testSuite)
-     , ("unint",       T10_03.testSuite)
-     ]
-
--- No user serviceable parts below..
-
-main :: IO ()
-main = do tgts <- getArgs
-          run tgts False []
-
-createGolds :: String -> IO ()
-createGolds tgts = run (words tgts) True ["SBVUnitTest/GoldFiles"]
-
-checkGoldDir :: FilePath -> IO ()
-checkGoldDir gd = do e <- doesDirectoryExist gd
-                     when (not e) $
-                             do putStrLn $ "*** Cannot locate gold file repository!"
-                                putStrLn $ "*** Please call with one argument, the directory name of the gold files."
-                                putStrLn $ "*** Cannot run test cases, exiting."
-                                exitWith $ ExitFailure 1
-
-checkYices :: IO ()
-checkYices = do ex <- getEnv "SBV_YICES" `catch` (\_ -> return (executable yices))
-                mbP <- findExecutable ex
-                case mbP of
-                  Nothing -> do putStrLn $ "*** Cannot find default SMT solver executable for " ++ nm
-                                putStrLn $ "*** Please make sure the executable " ++ show ex
-                                putStrLn $ "*** is installed and is in your path."
-                                putStrLn $ "*** Cannot run test cases, exiting."
-                                exitWith $ ExitFailure 1
-                  Just p  -> do putStrLn $ "*** Using solver : " ++ nm ++ " (" ++ show p ++ ")"
-                                checkYicesVersion p
- where nm = name yices
-
-checkYicesVersion :: FilePath -> IO ()
-checkYicesVersion p =
-        do (ec, yOut, _yErr) <- readProcessWithExitCode p ["-V"] ""
-           case ec of
-             ExitFailure _ -> do putStrLn $ "*** Cannot determine Yices version. Please install Yices version 2.X first."
-                                 exitWith $ ExitFailure 1
-             ExitSuccess   -> do let isYices1 = take 2 yOut == "1." -- crude test; might fail..
-                                 when isYices1 $ putStrLn $ "*** Yices version 1.X is detected. Version 2.X is strongly recommended!"
-                                 opts <- getEnv "SBV_YICES_OPTIONS" `catch` (\_ -> return (unwords (options yices)))
-                                 when (isYices1 && opts /= "-tc -smt -e") $ do
-                                           putStrLn $ "*** Either install Yices 2.X, or set the environment variable:"
-                                           putStrLn $ "***     SBV_YICES_OPTIONS=\"-tc -smt -e\""
-                                           putStrLn $ "*** To use Yices 1.X with SBV."
-                                           putStrLn $ "*** However, upgrading to Yices 2.X is highly recommended!"
-                                           exitWith $ ExitFailure 1
-
-run :: [String] -> Bool -> [String] -> IO ()
-run targets shouldCreate [gd] =
-        do mapM_ checkTgt targets
-           putStrLn $ "*** Starting SBV unit tests..\n*** Gold files at: " ++ show gd
-           checkGoldDir gd
-           checkYices
-           cts <- runTestTT $ TestList $ map mkTst [c | (tc, c) <- testCollection, select tc]
-           decide shouldCreate cts
-  where mkTst (SBVTestSuite f) = f $ generateGoldCheck gd shouldCreate
-        select tc = null targets || tc `elem` targets
-        checkTgt t | t `elem` allTargets = return ()
-                   | True                = do putStrLn $ "*** Unknown test target: " ++ show t
-                                              exitWith $ ExitFailure 1
-        allTargets = map fst testCollection
-run targets shouldCreate [] = getDataDir >>= \d -> run targets shouldCreate [d </> "SBVUnitTest" </> "GoldFiles"]
-run _       _            _  = error "SBVUnitTests.run: impossible happened!"
-
-decide :: Bool -> Counts -> IO ()
-decide shouldCreate cts@(Counts c t e f) = do
-        when (c /= t) $ putStrLn $ "*** Not all test cases were tried. (Only tested " ++ show t ++ " of " ++ show c ++ ")"
-        when (e /= 0) $ putStrLn $ "*** " ++ show e ++ " (of " ++ show c ++ ") test cases in error."
-        when (f /= 0) $ putStrLn $ "*** " ++ show f ++ " (of " ++ show c ++ ") test cases failed."
-        if (c == t && e == 0 && f == 0)
-           then do if shouldCreate
-                      then putStrLn $ "All " ++ show c ++ " test cases executed in gold-file generation mode."
-                      else putStrLn $ "All " ++ show c ++ " test cases successfully passed."
-                   exitWith $ ExitSuccess
-           else exitWith $ ExitFailure 2
diff --git a/Temp/sbv-0.9.18/Setup.hs b/Temp/sbv-0.9.18/Setup.hs
deleted file mode 100644
--- a/Temp/sbv-0.9.18/Setup.hs
+++ /dev/null
@@ -1,33 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module      :  Main
--- Copyright   :  (c) Levent Erkok
--- License     :  BSD3
--- Maintainer  :  erkokl@gmail.com
--- Stability   :  experimental
--- Portability :  portable
---
--- Setup module for the sbv library
------------------------------------------------------------------------------
-
-{-# OPTIONS_GHC -Wall #-}
-module Main(main) where
-
-import Distribution.Simple (defaultMainWithHooks, simpleUserHooks, postInst)
-import System.Directory    (findExecutable)
-import System.Exit         (exitWith, ExitCode(..))
-
-import Data.SBV.Provers.Prover (SMTSolver(..), yices)
-
-main :: IO ()
-main = defaultMainWithHooks simpleUserHooks{ postInst = checkDefSolver }
- where checkDefSolver _ _ _ _ = do
-                mbP <- findExecutable ex
-                case mbP of
-                   Nothing -> do putStrLn $ "*** The sbv library requires the default solver " ++ nm ++ " to be installed."
-                                 putStrLn $ "*** The executable " ++ show ex ++ " must be in your path."
-                                 putStrLn $ "*** Do not forget to install " ++ nm ++ "!"
-                   Just _  -> return ()
-                exitWith ExitSuccess
-       ex = executable yices
-       nm = name yices
diff --git a/Temp/sbv-0.9.18/sbv.cabal b/Temp/sbv-0.9.18/sbv.cabal
deleted file mode 100644
--- a/Temp/sbv-0.9.18/sbv.cabal
+++ /dev/null
@@ -1,176 +0,0 @@
-Name:          sbv
-Version:       0.9.18
-Category:      Formal Methods, Theorem Provers, Bit vectors, Symbolic Computation, Math
-Synopsis:      Symbolic Bit Vectors: Prove bit-precise program properties using SMT solvers.
-Description:   Express properties about bit-precise Haskell programs and automatically prove
-               them using SMT solvers. Automatically generate C programs from Haskell functions.
-               The SBV library adds support for symbolic bit vectors, allowing formal models of
-               bit-precise programs to be created.
-               .
-               >   $ ghci -XScopedTypeVariables
-               >   Prelude> :m Data.SBV
-               >   Prelude Data.SBV> prove $ \(x::SWord8) -> x `shiftL` 2 .== 4*x
-               >   Q.E.D.
-               >   Prelude Data.SBV> prove $ forAll ["x"] $ \(x::SWord8) -> x `shiftL` 2 .== x
-               >   Falsifiable. Counter-example:
-               >     x = 128 :: SWord8
-               .
-               The library introduces the following types and concepts:
-               .
-                 * 'SBool': Symbolic Booleans (bits)
-               .
-                 * 'SWord8', 'SWord16', 'SWord32', 'SWord64': Symbolic Words (unsigned)
-               .
-                 * 'SInt8',  'SInt16',  'SInt32',  'SInt64': Symbolic Ints (signed)
-               .
-                 * 'SArray', 'SFunArray': Flat arrays of symbolic values
-               .
-                 * Symbolic polynomials over GF(2^n), and polynomial arithmetic
-               .
-                 * Uninterpreted constants and functions over symbolic values, with user
-                   defined SMT-Lib axioms
-               .
-               Predicates (i.e., functions that return 'SBool') built out of
-               these types can be:
-               .
-                 * proven correct via an external SMT solver (the 'prove' function)
-               .
-                 * checked for satisfiability (the 'sat' and 'allSat' functions)
-               .
-                 * quick-checked
-               .
-               The SBV library can also compile Haskell functions that manipulate symbolic
-               values directly to C, rendering them as straight-line C programs that can be
-               executed in, say, embedded platforms.
-               .
-               In addition to the library, the installation will create the
-               executable @SBVUnitTests@. You should run it once the installation is complete,
-               to make sure the unit tests are run and all is well.
-               .
-               SBV is hosted at GitHub: <http://github.com/LeventErkok/sbv>. Comments,
-               bug reports, and patches are always welcome.
-               .
-               Galois, Inc. (<http://www.galois.com>) has contributed to the development of SBV,
-               by providing time and computing machinery. The following people reported bugs,
-               provided comments/feedback, or contributed to the development of SBV in various ways:
-               Ian Blumenfeld, Iavor Diatchki, Lee Pike, Austin Seipp, Don Stewart, and Josef Svenningsson.
-
-Copyright:     Levent Erkok, 2010-2011
-License:       BSD3
-License-file:  LICENSE
-Stability:     Experimental
-Author:        Levent Erkok
-Homepage:      http://github.com/LeventErkok/sbv
-Bug-reports:   http://github.com/LeventErkok/sbv/issues
-Maintainer:    Levent Erkok (erkokl@gmail.com)
-Build-Type:    Custom
-Cabal-Version: >= 1.6
-Data-Files: SBVUnitTest/GoldFiles/*.gold
-Extra-Source-Files: INSTALL, README, COPYRIGHT
-
-source-repository head
-    type:       git
-    location:   git://github.com/LeventErkok/sbv.git
-
-Library
-  ghc-options     : -Wall
-  ghc-prof-options: -auto-all -caf-all
-  Build-Depends   : base                >= 3 && < 5
-                  , deepseq             >= 1.1.0.2
-                  , process             >= 1.0.1.3
-                  , containers          >= 0.3.0.0
-                  , QuickCheck          >= 2.4.0.1
-                  , strict-concurrency  >= 0.2.4.1
-                  , old-time            >= 1.0.0.5
-                  , mtl                 >= 2.0.1.0
-                  , array               >= 0.3.0.1
-                  , HUnit               >= 1.2.2.3
-                  , directory           >= 1.0.1.1
-                  , filepath            >= 1.1.0.4
-                  , pretty              >= 1.0.1.1
-                  , random              >= 1.0.0.2
-  Exposed-modules : Data.SBV
-                  , Data.SBV.Internals
-                  , Data.SBV.Examples.BitPrecise.BitTricks
-                  , Data.SBV.Examples.BitPrecise.Legato
-                  , Data.SBV.Examples.CodeGeneration.AddSub
-                  , Data.SBV.Examples.CodeGeneration.Fibonacci
-                  , Data.SBV.Examples.CodeGeneration.GCD
-                  , Data.SBV.Examples.CodeGeneration.PopulationCount
-                  , Data.SBV.Examples.Crypto.AES
-                  , Data.SBV.Examples.Polynomials.Polynomials
-                  , Data.SBV.Examples.PrefixSum.PrefixSum
-                  , Data.SBV.Examples.Puzzles.DogCatMouse
-                  , Data.SBV.Examples.Puzzles.Euler185
-                  , Data.SBV.Examples.Puzzles.MagicSquare
-                  , Data.SBV.Examples.Puzzles.NQueens
-                  , Data.SBV.Examples.Puzzles.Sudoku
-                  , Data.SBV.Examples.Puzzles.U2Bridge
-                  , Data.SBV.Examples.Uninterpreted.AUF
-                  , Data.SBV.Examples.Uninterpreted.Function
-  Other-modules   : Data.SBV.BitVectors.Data
-                  , Data.SBV.BitVectors.Model
-                  , Data.SBV.BitVectors.Splittable
-                  , Data.SBV.BitVectors.Polynomial
-                  , Data.SBV.BitVectors.PrettyNum
-                  , Data.SBV.Compilers.C
-                  , Data.SBV.Compilers.CodeGen
-                  , Data.SBV.SMT.SMT
-                  , Data.SBV.SMT.SMTLib
-                  , Data.SBV.Provers.Prover
-                  , Data.SBV.Provers.SExpr
-                  , Data.SBV.Provers.Yices
-                  , Data.SBV.Utils.Boolean
-                  , Data.SBV.Utils.TDiff
-                  , Data.SBV.Utils.SBVTest
-                  , Data.SBV.Utils.Lib
-                  , Data.SBV.Examples.Arrays.Memory
-                  , Data.SBV.Examples.Basics.BasicTests
-                  , Data.SBV.Examples.Basics.Higher
-                  , Data.SBV.Examples.Basics.Index
-                  , Data.SBV.Examples.Basics.ProofTests
-                  , Data.SBV.Examples.Basics.QRem
-                  , Data.SBV.Examples.CRC.CCITT
-                  , Data.SBV.Examples.CRC.CCITT_Unidir
-                  , Data.SBV.Examples.CRC.GenPoly
-                  , Data.SBV.Examples.CRC.Parity
-                  , Data.SBV.Examples.CRC.USB5
-                  , Data.SBV.Examples.Puzzles.PowerSet
-                  , Data.SBV.Examples.Puzzles.Temperature
-                  , Data.SBV.Examples.Uninterpreted.Uninterpreted
-                  , Data.SBV.TestSuite.Arrays.Memory
-                  , Data.SBV.TestSuite.Basics.Arithmetic
-                  , Data.SBV.TestSuite.Basics.BasicTests
-                  , Data.SBV.TestSuite.Basics.Higher
-                  , Data.SBV.TestSuite.Basics.Index
-                  , Data.SBV.TestSuite.Basics.ProofTests
-                  , Data.SBV.TestSuite.Basics.QRem
-                  , Data.SBV.TestSuite.BitPrecise.BitTricks
-                  , Data.SBV.TestSuite.BitPrecise.Legato
-                  , Data.SBV.TestSuite.CodeGeneration.AddSub
-                  , Data.SBV.TestSuite.CodeGeneration.CgTests
-                  , Data.SBV.TestSuite.CodeGeneration.Fibonacci
-                  , Data.SBV.TestSuite.CodeGeneration.GCD
-                  , Data.SBV.TestSuite.CodeGeneration.PopulationCount
-                  , Data.SBV.TestSuite.Crypto.AES
-                  , Data.SBV.TestSuite.CRC.CCITT
-                  , Data.SBV.TestSuite.CRC.CCITT_Unidir
-                  , Data.SBV.TestSuite.CRC.GenPoly
-                  , Data.SBV.TestSuite.CRC.Parity
-                  , Data.SBV.TestSuite.CRC.USB5
-                  , Data.SBV.TestSuite.PrefixSum.PrefixSum
-                  , Data.SBV.TestSuite.Polynomials.Polynomials
-                  , Data.SBV.TestSuite.Puzzles.DogCatMouse
-                  , Data.SBV.TestSuite.Puzzles.Euler185
-                  , Data.SBV.TestSuite.Puzzles.MagicSquare
-                  , Data.SBV.TestSuite.Puzzles.NQueens
-                  , Data.SBV.TestSuite.Puzzles.PowerSet
-                  , Data.SBV.TestSuite.Puzzles.Sudoku
-                  , Data.SBV.TestSuite.Puzzles.U2Bridge
-                  , Data.SBV.TestSuite.Puzzles.Temperature
-                  , Data.SBV.TestSuite.Uninterpreted.AUF
-                  , Data.SBV.TestSuite.Uninterpreted.Uninterpreted
-                  , Data.SBV.TestSuite.Uninterpreted.Function
-
-Executable SBVUnitTests
-  main-is         : SBVUnitTest/SBVUnitTest.hs
diff --git a/dist/build/HSNoise-0.0.1.o b/dist/build/HSNoise-0.0.1.o
deleted file mode 100644
Binary files a/dist/build/HSNoise-0.0.1.o and /dev/null differ
diff --git a/dist/build/Math/Noise.hi b/dist/build/Math/Noise.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise.hi and /dev/null differ
diff --git a/dist/build/Math/Noise.o b/dist/build/Math/Noise.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise.o and /dev/null differ
diff --git a/dist/build/Math/Noise/Interpolation.hi b/dist/build/Math/Noise/Interpolation.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Interpolation.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/Interpolation.o b/dist/build/Math/Noise/Interpolation.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Interpolation.o and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/Abs.hi b/dist/build/Math/Noise/Modules/Abs.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/Abs.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/Abs.o b/dist/build/Math/Noise/Modules/Abs.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/Abs.o and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/Billow.hi b/dist/build/Math/Noise/Modules/Billow.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/Billow.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/Billow.o b/dist/build/Math/Noise/Modules/Billow.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/Billow.o and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/Perlin.hi b/dist/build/Math/Noise/Modules/Perlin.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/Perlin.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/Perlin.o b/dist/build/Math/Noise/Modules/Perlin.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/Perlin.o and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/ScaleBias.hi b/dist/build/Math/Noise/Modules/ScaleBias.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/ScaleBias.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/ScaleBias.o b/dist/build/Math/Noise/Modules/ScaleBias.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/ScaleBias.o and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/Select.hi b/dist/build/Math/Noise/Modules/Select.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/Select.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/Select.o b/dist/build/Math/Noise/Modules/Select.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/Select.o and /dev/null differ
diff --git a/dist/build/Math/Noise/Modules/perlin.o b/dist/build/Math/Noise/Modules/perlin.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/Modules/perlin.o and /dev/null differ
diff --git a/dist/build/Math/Noise/NoiseGen.hi b/dist/build/Math/Noise/NoiseGen.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/NoiseGen.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/NoiseGen.o b/dist/build/Math/Noise/NoiseGen.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/NoiseGen.o and /dev/null differ
diff --git a/dist/build/Math/Noise/NoiseModule.hi b/dist/build/Math/Noise/NoiseModule.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/NoiseModule.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/NoiseModule.o b/dist/build/Math/Noise/NoiseModule.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/NoiseModule.o and /dev/null differ
diff --git a/dist/build/Math/Noise/VectorTable.hi b/dist/build/Math/Noise/VectorTable.hi
deleted file mode 100644
Binary files a/dist/build/Math/Noise/VectorTable.hi and /dev/null differ
diff --git a/dist/build/Math/Noise/VectorTable.o b/dist/build/Math/Noise/VectorTable.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/VectorTable.o and /dev/null differ
diff --git a/dist/build/Math/Noise/noisegen.o b/dist/build/Math/Noise/noisegen.o
deleted file mode 100644
Binary files a/dist/build/Math/Noise/noisegen.o and /dev/null differ
diff --git a/dist/build/autogen/Paths_Noise.hs b/dist/build/autogen/Paths_Noise.hs
deleted file mode 100644
--- a/dist/build/autogen/Paths_Noise.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-module Paths_Noise (
-    version,
-    getBinDir, getLibDir, getDataDir, getLibexecDir,
-    getDataFileName
-  ) where
-
-import Data.Version (Version(..))
-import System.Environment (getEnv)
-
-version :: Version
-version = Version {versionBranch = [0,0,1], versionTags = []}
-
-bindir, libdir, datadir, libexecdir :: FilePath
-
-bindir     = "/home/hugo/.cabal/bin"
-libdir     = "/home/hugo/.cabal/lib/Noise-0.0.1/ghc-7.0.3"
-datadir    = "/home/hugo/.cabal/share/Noise-0.0.1"
-libexecdir = "/home/hugo/.cabal/libexec"
-
-getBinDir, getLibDir, getDataDir, getLibexecDir :: IO FilePath
-getBinDir = catch (getEnv "Noise_bindir") (\_ -> return bindir)
-getLibDir = catch (getEnv "Noise_libdir") (\_ -> return libdir)
-getDataDir = catch (getEnv "Noise_datadir") (\_ -> return datadir)
-getLibexecDir = catch (getEnv "Noise_libexecdir") (\_ -> return libexecdir)
-
-getDataFileName :: FilePath -> IO FilePath
-getDataFileName name = do
-  dir <- getDataDir
-  return (dir ++ "/" ++ name)
diff --git a/dist/build/autogen/cabal_macros.h b/dist/build/autogen/cabal_macros.h
deleted file mode 100644
--- a/dist/build/autogen/cabal_macros.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* DO NOT EDIT: This file is automatically generated by Cabal */
-
-/* package array-0.3.0.2 */
-#define VERSION_array "0.3.0.2"
-#define MIN_VERSION_array(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  3 || \
-  (major1) == 0 && (major2) == 3 && (minor) <= 0)
-
-/* package base-4.3.1.0 */
-#define VERSION_base "4.3.1.0"
-#define MIN_VERSION_base(major1,major2,minor) (\
-  (major1) <  4 || \
-  (major1) == 4 && (major2) <  3 || \
-  (major1) == 4 && (major2) == 3 && (minor) <= 1)
-
-/* package data-default-0.2.0.1 */
-#define VERSION_data_default "0.2.0.1"
-#define MIN_VERSION_data_default(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  2 || \
-  (major1) == 0 && (major2) == 2 && (minor) <= 0)
-
-/* package vector-0.7.0.1 */
-#define VERSION_vector "0.7.0.1"
-#define MIN_VERSION_vector(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  7 || \
-  (major1) == 0 && (major2) == 7 && (minor) <= 0)
-
diff --git a/dist/build/libHSNoise-0.0.1.a b/dist/build/libHSNoise-0.0.1.a
deleted file mode 100644
Binary files a/dist/build/libHSNoise-0.0.1.a and /dev/null differ
diff --git a/dist/package.conf.inplace b/dist/package.conf.inplace
deleted file mode 100644
--- a/dist/package.conf.inplace
+++ /dev/null
@@ -1,2 +0,0 @@
-[InstalledPackageInfo {installedPackageId = InstalledPackageId "Noise-0.0.1-inplace", sourcePackageId = PackageIdentifier {pkgName = PackageName "Noise", pkgVersion = Version {versionBranch = [0,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "Hugo Daniel <hugodaniel@hackological.com>", author = "", stability = "", homepage = "", pkgUrl = "", description = "A Haskell coherent noise generator roughly based on libnoise.\nFor more information on libnoise, please check: <http://libnoise.sourceforge.net>.\n\nThe noise modules were extensively profiled and benchmarked,\nthe slower pure functions were rewritten in C.\nThe main objective of this packer is to provide a simple interface\nto compose noise modules.\n\nYou could compose several noise modules like this:\n\n> myPerlin = perlin `isSourceOf` scalebias\nscale = 1.0\n`isSourceOf` absolute\n> myComposition = perlin\nperlinFrequency = 0.123\n`andModule` billow\nbillowOctaves = 12\n`andModule` myPerlin\n`areSourcesOf`\nselect\nupperBound = 0.7, lowerBound = 0.2\n\nThis is a 3D noise package, to get a value you need to specify a\ntriple:\n\n> getValue myComposition (-0.1, -0.5, 0.76)\n\nFor more information please read the documentation of each module\nbellow.", category = "Math", exposed = True, exposedModules = ["Math.Noise","Math.Noise.NoiseGen","Math.Noise.NoiseModule","Math.Noise.Modules.Abs","Math.Noise.Modules.Billow","Math.Noise.Modules.Perlin","Math.Noise.Modules.Select","Math.Noise.Modules.ScaleBias"], hiddenModules = ["Math.Noise.Interpolation","Math.Noise.VectorTable"], importDirs = ["/home/hugo/Development/Personal/Noise/dist/build"], libraryDirs = ["/home/hugo/Development/Personal/Noise/dist/build"], hsLibraries = ["HSNoise-0.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/Development/Personal/Noise/Math/Noise","/home/hugo/Development/Personal/Noise/Math/Noise/Modules"], includes = [], depends = [InstalledPackageId "array-0.3.0.2-3444ee049e55c8df31a0796287f56a5e",InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",InstalledPackageId "data-default-0.2.0.1-af7457a414bf8afe6d487bc4398590fa",InstalledPackageId "vector-0.7.0.1-3a18a3c369c7e19a25c6ed8559ed6128"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Development/Personal/Noise/dist/doc/html/Noise/Noise.haddock"], haddockHTMLs = ["/home/hugo/Development/Personal/Noise/dist/doc/html/Noise"]}
-]
diff --git a/dist/setup-config b/dist/setup-config
deleted file mode 100644
--- a/dist/setup-config
+++ /dev/null
@@ -1,2 +0,0 @@
-Saved package config for Noise-0.0.1 written by Cabal-1.10.1.0 using ghc-7.0
-LocalBuildInfo {configFlags = ConfigFlags {configPrograms = [], configProgramPaths = [], configProgramArgs = [], configHcFlavor = Flag GHC, configHcPath = NoFlag, configHcPkg = NoFlag, configVanillaLib = Flag True, configProfLib = Flag False, configSharedLib = Flag False, configProfExe = Flag False, configConfigureArgs = [], configOptimization = Flag NormalOptimisation, configProgPrefix = Flag "", configProgSuffix = Flag "", configInstallDirs = InstallDirs {prefix = Flag "/home/hugo/.cabal", bindir = NoFlag, libdir = NoFlag, libsubdir = NoFlag, dynlibdir = NoFlag, libexecdir = NoFlag, progdir = NoFlag, includedir = NoFlag, datadir = NoFlag, datasubdir = NoFlag, docdir = NoFlag, mandir = NoFlag, htmldir = NoFlag, haddockdir = NoFlag}, configScratchDir = NoFlag, configExtraLibDirs = [], configExtraIncludeDirs = [], configDistPref = Flag "dist", configVerbosity = Flag Normal, configUserInstall = Flag True, configPackageDB = NoFlag, configGHCiLib = Flag True, configSplitObjs = Flag False, configStripExes = Flag True, configConstraints = [Dependency (PackageName "array") (ThisVersion (Version {versionBranch = [0,3,0,2], versionTags = []})),Dependency (PackageName "base") (ThisVersion (Version {versionBranch = [4,3,1,0], versionTags = []})),Dependency (PackageName "data-default") (ThisVersion (Version {versionBranch = [0,2,0,1], versionTags = []})),Dependency (PackageName "vector") (ThisVersion (Version {versionBranch = [0,7,0,1], versionTags = []}))], configConfigurationsFlags = [], configTests = Flag False}, extraConfigArgs = [], installDirTemplates = InstallDirs {prefix = "/home/hugo/.cabal", bindir = "$prefix/bin", libdir = "$prefix/lib", libsubdir = "$pkgid/$compiler", dynlibdir = "$libdir", libexecdir = "$prefix/libexec", progdir = "$libdir/hugs/programs", includedir = "$libdir/$libsubdir/include", datadir = "$prefix/share", datasubdir = "$pkgid", docdir = "$datadir/doc/$pkgid", mandir = "$datadir/man", htmldir = "$docdir/html", haddockdir = "$htmldir"}, compiler = Compiler {compilerId = CompilerId GHC (Version {versionBranch = [7,0,3], versionTags = []}), compilerLanguages = [(Haskell98,"-XHaskell98"),(Haskell2010,"-XHaskell2010")], compilerExtensions = [(UnknownExtension "Haskell98","-XHaskell98"),(UnknownExtension "Haskell2010","-XHaskell2010"),(CPP,"-XCPP"),(UnknownExtension "NoCPP","-XNoCPP"),(PostfixOperators,"-XPostfixOperators"),(UnknownExtension "NoPostfixOperators","-XNoPostfixOperators"),(TupleSections,"-XTupleSections"),(UnknownExtension "NoTupleSections","-XNoTupleSections"),(PatternGuards,"-XPatternGuards"),(UnknownExtension "NoPatternGuards","-XNoPatternGuards"),(UnicodeSyntax,"-XUnicodeSyntax"),(UnknownExtension "NoUnicodeSyntax","-XNoUnicodeSyntax"),(MagicHash,"-XMagicHash"),(UnknownExtension "NoMagicHash","-XNoMagicHash"),(PolymorphicComponents,"-XPolymorphicComponents"),(UnknownExtension "NoPolymorphicComponents","-XNoPolymorphicComponents"),(ExistentialQuantification,"-XExistentialQuantification"),(UnknownExtension "NoExistentialQuantification","-XNoExistentialQuantification"),(KindSignatures,"-XKindSignatures"),(UnknownExtension "NoKindSignatures","-XNoKindSignatures"),(EmptyDataDecls,"-XEmptyDataDecls"),(UnknownExtension "NoEmptyDataDecls","-XNoEmptyDataDecls"),(ParallelListComp,"-XParallelListComp"),(UnknownExtension "NoParallelListComp","-XNoParallelListComp"),(TransformListComp,"-XTransformListComp"),(UnknownExtension "NoTransformListComp","-XNoTransformListComp"),(ForeignFunctionInterface,"-XForeignFunctionInterface"),(UnknownExtension "NoForeignFunctionInterface","-XNoForeignFunctionInterface"),(UnliftedFFITypes,"-XUnliftedFFITypes"),(UnknownExtension "NoUnliftedFFITypes","-XNoUnliftedFFITypes"),(GHCForeignImportPrim,"-XGHCForeignImportPrim"),(UnknownExtension "NoGHCForeignImportPrim","-XNoGHCForeignImportPrim"),(LiberalTypeSynonyms,"-XLiberalTypeSynonyms"),(UnknownExtension "NoLiberalTypeSynonyms","-XNoLiberalTypeSynonyms"),(Rank2Types,"-XRank2Types"),(UnknownExtension "NoRank2Types","-XNoRank2Types"),(RankNTypes,"-XRankNTypes"),(UnknownExtension "NoRankNTypes","-XNoRankNTypes"),(ImpredicativeTypes,"-XImpredicativeTypes"),(UnknownExtension "NoImpredicativeTypes","-XNoImpredicativeTypes"),(TypeOperators,"-XTypeOperators"),(UnknownExtension "NoTypeOperators","-XNoTypeOperators"),(RecursiveDo,"-XRecursiveDo"),(UnknownExtension "NoRecursiveDo","-XNoRecursiveDo"),(DoRec,"-XDoRec"),(UnknownExtension "NoDoRec","-XNoDoRec"),(Arrows,"-XArrows"),(UnknownExtension "NoArrows","-XNoArrows"),(UnknownExtension "PArr","-XPArr"),(UnknownExtension "NoPArr","-XNoPArr"),(TemplateHaskell,"-XTemplateHaskell"),(UnknownExtension "NoTemplateHaskell","-XNoTemplateHaskell"),(QuasiQuotes,"-XQuasiQuotes"),(UnknownExtension "NoQuasiQuotes","-XNoQuasiQuotes"),(Generics,"-XGenerics"),(UnknownExtension "NoGenerics","-XNoGenerics"),(NoImplicitPrelude,"-XNoImplicitPrelude"),(NoImplicitPrelude,"-XNoImplicitPrelude"),(RecordWildCards,"-XRecordWildCards"),(UnknownExtension "NoRecordWildCards","-XNoRecordWildCards"),(NamedFieldPuns,"-XNamedFieldPuns"),(UnknownExtension "NoNamedFieldPuns","-XNoNamedFieldPuns"),(RecordPuns,"-XRecordPuns"),(UnknownExtension "NoRecordPuns","-XNoRecordPuns"),(DisambiguateRecordFields,"-XDisambiguateRecordFields"),(UnknownExtension "NoDisambiguateRecordFields","-XNoDisambiguateRecordFields"),(OverloadedStrings,"-XOverloadedStrings"),(UnknownExtension "NoOverloadedStrings","-XNoOverloadedStrings"),(GADTs,"-XGADTs"),(UnknownExtension "NoGADTs","-XNoGADTs"),(ViewPatterns,"-XViewPatterns"),(UnknownExtension "NoViewPatterns","-XNoViewPatterns"),(TypeFamilies,"-XTypeFamilies"),(UnknownExtension "NoTypeFamilies","-XNoTypeFamilies"),(BangPatterns,"-XBangPatterns"),(UnknownExtension "NoBangPatterns","-XNoBangPatterns"),(NoMonomorphismRestriction,"-XNoMonomorphismRestriction"),(NoMonomorphismRestriction,"-XNoMonomorphismRestriction"),(NPlusKPatterns,"-XNPlusKPatterns"),(UnknownExtension "NoNPlusKPatterns","-XNoNPlusKPatterns"),(DoAndIfThenElse,"-XDoAndIfThenElse"),(UnknownExtension "NoDoAndIfThenElse","-XNoDoAndIfThenElse"),(RebindableSyntax,"-XRebindableSyntax"),(UnknownExtension "NoRebindableSyntax","-XNoRebindableSyntax"),(NoMonoPatBinds,"-XNoMonoPatBinds"),(NoMonoPatBinds,"-XNoMonoPatBinds"),(ExplicitForAll,"-XExplicitForAll"),(UnknownExtension "NoExplicitForAll","-XNoExplicitForAll"),(UnknownExtension "AlternativeLayoutRule","-XAlternativeLayoutRule"),(UnknownExtension "NoAlternativeLayoutRule","-XNoAlternativeLayoutRule"),(UnknownExtension "AlternativeLayoutRuleTransitional","-XAlternativeLayoutRuleTransitional"),(UnknownExtension "NoAlternativeLayoutRuleTransitional","-XNoAlternativeLayoutRuleTransitional"),(DatatypeContexts,"-XDatatypeContexts"),(UnknownExtension "NoDatatypeContexts","-XNoDatatypeContexts"),(MonoLocalBinds,"-XMonoLocalBinds"),(UnknownExtension "NoMonoLocalBinds","-XNoMonoLocalBinds"),(RelaxedPolyRec,"-XRelaxedPolyRec"),(UnknownExtension "NoRelaxedPolyRec","-XNoRelaxedPolyRec"),(ExtendedDefaultRules,"-XExtendedDefaultRules"),(UnknownExtension "NoExtendedDefaultRules","-XNoExtendedDefaultRules"),(ImplicitParams,"-XImplicitParams"),(UnknownExtension "NoImplicitParams","-XNoImplicitParams"),(ScopedTypeVariables,"-XScopedTypeVariables"),(UnknownExtension "NoScopedTypeVariables","-XNoScopedTypeVariables"),(PatternSignatures,"-XPatternSignatures"),(UnknownExtension "NoPatternSignatures","-XNoPatternSignatures"),(UnboxedTuples,"-XUnboxedTuples"),(UnknownExtension "NoUnboxedTuples","-XNoUnboxedTuples"),(StandaloneDeriving,"-XStandaloneDeriving"),(UnknownExtension "NoStandaloneDeriving","-XNoStandaloneDeriving"),(DeriveDataTypeable,"-XDeriveDataTypeable"),(UnknownExtension "NoDeriveDataTypeable","-XNoDeriveDataTypeable"),(DeriveFunctor,"-XDeriveFunctor"),(UnknownExtension "NoDeriveFunctor","-XNoDeriveFunctor"),(DeriveTraversable,"-XDeriveTraversable"),(UnknownExtension "NoDeriveTraversable","-XNoDeriveTraversable"),(DeriveFoldable,"-XDeriveFoldable"),(UnknownExtension "NoDeriveFoldable","-XNoDeriveFoldable"),(TypeSynonymInstances,"-XTypeSynonymInstances"),(UnknownExtension "NoTypeSynonymInstances","-XNoTypeSynonymInstances"),(FlexibleContexts,"-XFlexibleContexts"),(UnknownExtension "NoFlexibleContexts","-XNoFlexibleContexts"),(FlexibleInstances,"-XFlexibleInstances"),(UnknownExtension "NoFlexibleInstances","-XNoFlexibleInstances"),(ConstrainedClassMethods,"-XConstrainedClassMethods"),(UnknownExtension "NoConstrainedClassMethods","-XNoConstrainedClassMethods"),(MultiParamTypeClasses,"-XMultiParamTypeClasses"),(UnknownExtension "NoMultiParamTypeClasses","-XNoMultiParamTypeClasses"),(FunctionalDependencies,"-XFunctionalDependencies"),(UnknownExtension "NoFunctionalDependencies","-XNoFunctionalDependencies"),(GeneralizedNewtypeDeriving,"-XGeneralizedNewtypeDeriving"),(UnknownExtension "NoGeneralizedNewtypeDeriving","-XNoGeneralizedNewtypeDeriving"),(OverlappingInstances,"-XOverlappingInstances"),(UnknownExtension "NoOverlappingInstances","-XNoOverlappingInstances"),(UndecidableInstances,"-XUndecidableInstances"),(UnknownExtension "NoUndecidableInstances","-XNoUndecidableInstances"),(IncoherentInstances,"-XIncoherentInstances"),(UnknownExtension "NoIncoherentInstances","-XNoIncoherentInstances"),(PackageImports,"-XPackageImports"),(UnknownExtension "NoPackageImports","-XNoPackageImports"),(NewQualifiedOperators,"-XNewQualifiedOperators"),(UnknownExtension "NoNewQualifiedOperators","-XNoNewQualifiedOperators")]}, buildDir = "dist/build", scratchDir = "dist/scratch", libraryConfig = Just (ComponentLocalBuildInfo {componentPackageDeps = [(InstalledPackageId "array-0.3.0.2-3444ee049e55c8df31a0796287f56a5e",PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,3,0,2], versionTags = []}}),(InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,3,1,0], versionTags = []}}),(InstalledPackageId "data-default-0.2.0.1-af7457a414bf8afe6d487bc4398590fa",PackageIdentifier {pkgName = PackageName "data-default", pkgVersion = Version {versionBranch = [0,2,0,1], versionTags = []}}),(InstalledPackageId "vector-0.7.0.1-3a18a3c369c7e19a25c6ed8559ed6128",PackageIdentifier {pkgName = PackageName "vector", pkgVersion = Version {versionBranch = [0,7,0,1], versionTags = []}})]}), executableConfigs = [], testSuiteConfigs = [], installedPkgs = PackageIndex (fromList [(InstalledPackageId "array-0.3.0.2-3444ee049e55c8df31a0796287f56a5e",InstalledPackageInfo {installedPackageId = InstalledPackageId "array-0.3.0.2-3444ee049e55c8df31a0796287f56a5e", sourcePackageId = PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,3,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package defines the classes @IArray@ of immutable arrays and\n@MArray@ of arrays mutable within appropriate monads, as well as\nsome instances of these classes.", category = "Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Array","Base"],ModuleName ["Data","Array","IArray"],ModuleName ["Data","Array","IO"],ModuleName ["Data","Array","IO","Internals"],ModuleName ["Data","Array","MArray"],ModuleName ["Data","Array","ST"],ModuleName ["Data","Array","Storable"],ModuleName ["Data","Array","Unboxed"],ModuleName ["Data","Array"]], hiddenModules = [], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/array-0.3.0.2"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/array-0.3.0.2"], hsLibraries = ["HSarray-0.3.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/array-0.3.0.2/array.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/array-0.3.0.2"]}),(InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",InstalledPackageInfo {installedPackageId = InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20", sourcePackageId = PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,3,1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains the Prelude and its support libraries,\nand a large collection of useful libraries ranging from data\nstructures to parsing combinators and debugging utilities.", category = "", exposed = True, exposedModules = [ModuleName ["Foreign","Concurrent"],ModuleName ["GHC","Arr"],ModuleName ["GHC","Base"],ModuleName ["GHC","Classes"],ModuleName ["GHC","Conc"],ModuleName ["GHC","Conc","IO"],ModuleName ["GHC","Conc","Signal"],ModuleName ["GHC","Conc","Sync"],ModuleName ["GHC","ConsoleHandler"],ModuleName ["GHC","Constants"],ModuleName ["GHC","Desugar"],ModuleName ["GHC","Enum"],ModuleName ["GHC","Environment"],ModuleName ["GHC","Err"],ModuleName ["GHC","Exception"],ModuleName ["GHC","Exts"],ModuleName ["GHC","Float"],ModuleName ["GHC","ForeignPtr"],ModuleName ["GHC","MVar"],ModuleName ["GHC","IO"],ModuleName ["GHC","IO","IOMode"],ModuleName ["GHC","IO","Buffer"],ModuleName ["GHC","IO","Device"],ModuleName ["GHC","IO","BufferedIO"],ModuleName ["GHC","IO","FD"],ModuleName ["GHC","IO","Exception"],ModuleName ["GHC","IO","Encoding"],ModuleName ["GHC","IO","Encoding","Latin1"],ModuleName ["GHC","IO","Encoding","UTF8"],ModuleName ["GHC","IO","Encoding","UTF16"],ModuleName ["GHC","IO","Encoding","UTF32"],ModuleName ["GHC","IO","Encoding","Types"],ModuleName ["GHC","IO","Encoding","Iconv"],ModuleName ["GHC","IO","Encoding","CodePage"],ModuleName ["GHC","IO","Handle"],ModuleName ["GHC","IO","Handle","Types"],ModuleName ["GHC","IO","Handle","Internals"],ModuleName ["GHC","IO","Handle","FD"],ModuleName ["GHC","IO","Handle","Text"],ModuleName ["GHC","IOBase"],ModuleName ["GHC","Handle"],ModuleName ["GHC","IORef"],ModuleName ["GHC","IOArray"],ModuleName ["GHC","Int"],ModuleName ["GHC","List"],ModuleName ["GHC","Num"],ModuleName ["GHC","PArr"],ModuleName ["GHC","Pack"],ModuleName ["GHC","Ptr"],ModuleName ["GHC","Read"],ModuleName ["GHC","Real"],ModuleName ["GHC","ST"],ModuleName ["GHC","STRef"],ModuleName ["GHC","Show"],ModuleName ["GHC","Stable"],ModuleName ["GHC","Storable"],ModuleName ["GHC","TopHandler"],ModuleName ["GHC","Unicode"],ModuleName ["GHC","Weak"],ModuleName ["GHC","Word"],ModuleName ["System","Timeout"],ModuleName ["System","Event"],ModuleName ["Control","Applicative"],ModuleName ["Control","Arrow"],ModuleName ["Control","Category"],ModuleName ["Control","Concurrent"],ModuleName ["Control","Concurrent","Chan"],ModuleName ["Control","Concurrent","MVar"],ModuleName ["Control","Concurrent","QSem"],ModuleName ["Control","Concurrent","QSemN"],ModuleName ["Control","Concurrent","SampleVar"],ModuleName ["Control","Exception"],ModuleName ["Control","Exception","Base"],ModuleName ["Control","OldException"],ModuleName ["Control","Monad"],ModuleName ["Control","Monad","Fix"],ModuleName ["Control","Monad","Instances"],ModuleName ["Control","Monad","ST"],ModuleName ["Control","Monad","ST","Lazy"],ModuleName ["Control","Monad","ST","Strict"],ModuleName ["Data","Bits"],ModuleName ["Data","Bool"],ModuleName ["Data","Char"],ModuleName ["Data","Complex"],ModuleName ["Data","Dynamic"],ModuleName ["Data","Either"],ModuleName ["Data","Eq"],ModuleName ["Data","Data"],ModuleName ["Data","Fixed"],ModuleName ["Data","Foldable"],ModuleName ["Data","Function"],ModuleName ["Data","Functor"],ModuleName ["Data","HashTable"],ModuleName ["Data","IORef"],ModuleName ["Data","Int"],ModuleName ["Data","Ix"],ModuleName ["Data","List"],ModuleName ["Data","Maybe"],ModuleName ["Data","Monoid"],ModuleName ["Data","Ord"],ModuleName ["Data","Ratio"],ModuleName ["Data","STRef"],ModuleName ["Data","STRef","Lazy"],ModuleName ["Data","STRef","Strict"],ModuleName ["Data","String"],ModuleName ["Data","Traversable"],ModuleName ["Data","Tuple"],ModuleName ["Data","Typeable"],ModuleName ["Data","Unique"],ModuleName ["Data","Version"],ModuleName ["Data","Word"],ModuleName ["Debug","Trace"],ModuleName ["Foreign"],ModuleName ["Foreign","C"],ModuleName ["Foreign","C","Error"],ModuleName ["Foreign","C","String"],ModuleName ["Foreign","C","Types"],ModuleName ["Foreign","ForeignPtr"],ModuleName ["Foreign","Marshal"],ModuleName ["Foreign","Marshal","Alloc"],ModuleName ["Foreign","Marshal","Array"],ModuleName ["Foreign","Marshal","Error"],ModuleName ["Foreign","Marshal","Pool"],ModuleName ["Foreign","Marshal","Utils"],ModuleName ["Foreign","Ptr"],ModuleName ["Foreign","StablePtr"],ModuleName ["Foreign","Storable"],ModuleName ["Numeric"],ModuleName ["Prelude"],ModuleName ["System","Console","GetOpt"],ModuleName ["System","CPUTime"],ModuleName ["System","Environment"],ModuleName ["System","Exit"],ModuleName ["System","IO"],ModuleName ["System","IO","Error"],ModuleName ["System","IO","Unsafe"],ModuleName ["System","Info"],ModuleName ["System","Mem"],ModuleName ["System","Mem","StableName"],ModuleName ["System","Mem","Weak"],ModuleName ["System","Posix","Internals"],ModuleName ["System","Posix","Types"],ModuleName ["Text","ParserCombinators","ReadP"],ModuleName ["Text","ParserCombinators","ReadPrec"],ModuleName ["Text","Printf"],ModuleName ["Text","Read"],ModuleName ["Text","Read","Lex"],ModuleName ["Text","Show"],ModuleName ["Text","Show","Functions"],ModuleName ["Unsafe","Coerce"]], hiddenModules = [ModuleName ["System","Event","Array"],ModuleName ["System","Event","Clock"],ModuleName ["System","Event","Control"],ModuleName ["System","Event","EPoll"],ModuleName ["System","Event","IntMap"],ModuleName ["System","Event","Internal"],ModuleName ["System","Event","KQueue"],ModuleName ["System","Event","Manager"],ModuleName ["System","Event","PSQ"],ModuleName ["System","Event","Poll"],ModuleName ["System","Event","Thread"],ModuleName ["System","Event","Unique"]], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/base-4.3.1.0"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/base-4.3.1.0"], hsLibraries = ["HSbase-4.3.1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/Local/lib/ghc-7.0.3/base-4.3.1.0/include"], includes = ["HsBase.h"], depends = [InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba",InstalledPackageId "integer-gmp-0.2.0.3-4908241a60353d401d28868826ecd015",InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/base-4.3.1.0/base.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/base-4.3.1.0"]}),(InstalledPackageId "builtin_ffi",InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_ffi", sourcePackageId = PackageIdentifier {pkgName = PackageName "ffi", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3"], hsLibraries = ["HSffi"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/Local/lib/ghc-7.0.3/include"], includes = [], depends = [], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}),(InstalledPackageId "builtin_rts",InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_rts", sourcePackageId = PackageIdentifier {pkgName = PackageName "rts", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3"], hsLibraries = ["HSrts"], extraLibraries = ["m","rt","dl"], extraGHCiLibraries = [], includeDirs = ["/home/hugo/Local/lib/ghc-7.0.3/include"], includes = ["Stg.h"], depends = [InstalledPackageId "builtin_ffi"], hugsOptions = [], ccOptions = [], ldOptions = ["-u","ghczmprim_GHCziTypes_Izh_static_info","-u","ghczmprim_GHCziTypes_Czh_static_info","-u","ghczmprim_GHCziTypes_Fzh_static_info","-u","ghczmprim_GHCziTypes_Dzh_static_info","-u","base_GHCziPtr_Ptr_static_info","-u","base_GHCziWord_Wzh_static_info","-u","base_GHCziInt_I8zh_static_info","-u","base_GHCziInt_I16zh_static_info","-u","base_GHCziInt_I32zh_static_info","-u","base_GHCziInt_I64zh_static_info","-u","base_GHCziWord_W8zh_static_info","-u","base_GHCziWord_W16zh_static_info","-u","base_GHCziWord_W32zh_static_info","-u","base_GHCziWord_W64zh_static_info","-u","base_GHCziStable_StablePtr_static_info","-u","ghczmprim_GHCziTypes_Izh_con_info","-u","ghczmprim_GHCziTypes_Czh_con_info","-u","ghczmprim_GHCziTypes_Fzh_con_info","-u","ghczmprim_GHCziTypes_Dzh_con_info","-u","base_GHCziPtr_Ptr_con_info","-u","base_GHCziPtr_FunPtr_con_info","-u","base_GHCziStable_StablePtr_con_info","-u","ghczmprim_GHCziBool_False_closure","-u","ghczmprim_GHCziBool_True_closure","-u","base_GHCziPack_unpackCString_closure","-u","base_GHCziIOziException_stackOverflow_closure","-u","base_GHCziIOziException_heapOverflow_closure","-u","base_ControlziExceptionziBase_nonTermination_closure","-u","base_GHCziIOziException_blockedIndefinitelyOnMVar_closure","-u","base_GHCziIOziException_blockedIndefinitelyOnSTM_closure","-u","base_ControlziExceptionziBase_nestedAtomically_closure","-u","base_GHCziWeak_runFinalizzerBatch_closure","-u","base_GHCziTopHandler_runIO_closure","-u","base_GHCziTopHandler_runNonIO_closure","-u","base_GHCziConcziIO_ensureIOManagerIsRunning_closure","-u","base_GHCziConcziSync_runSparks_closure","-u","base_GHCziConcziSignal_runHandlers_closure"], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}),(InstalledPackageId "containers-0.4.0.0-8781485edb2ac0db733a9f9c72e27945",InstalledPackageInfo {installedPackageId = InstalledPackageId "containers-0.4.0.0-8781485edb2ac0db733a9f9c72e27945", sourcePackageId = PackageIdentifier {pkgName = PackageName "containers", pkgVersion = Version {versionBranch = [0,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains efficient general-purpose implementations\nof various basic immutable container types.  The declared cost of\neach operation is either worst-case or amortized, but remains\nvalid even if structures are shared.", category = "Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Graph"],ModuleName ["Data","Sequence"],ModuleName ["Data","Tree"],ModuleName ["Data","IntMap"],ModuleName ["Data","IntSet"],ModuleName ["Data","Map"],ModuleName ["Data","Set"]], hiddenModules = [], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/containers-0.4.0.0"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/containers-0.4.0.0"], hsLibraries = ["HScontainers-0.4.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.2-3444ee049e55c8df31a0796287f56a5e",InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/containers-0.4.0.0/containers.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/containers-0.4.0.0"]}),(InstalledPackageId "data-default-0.2.0.1-af7457a414bf8afe6d487bc4398590fa",InstalledPackageInfo {installedPackageId = InstalledPackageId "data-default-0.2.0.1-af7457a414bf8afe6d487bc4398590fa", sourcePackageId = PackageIdentifier {pkgName = PackageName "data-default", pkgVersion = Version {versionBranch = [0,2,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "<l.mai@web.de>", author = "Lukas Mai", stability = "", homepage = "", pkgUrl = "", description = "", category = "Data", exposed = True, exposedModules = [ModuleName ["Data","Default"]], hiddenModules = [], importDirs = ["/home/hugo/.cabal/lib/data-default-0.2.0.1/ghc-7.0.3"], libraryDirs = ["/home/hugo/.cabal/lib/data-default-0.2.0.1/ghc-7.0.3"], hsLibraries = ["HSdata-default-0.2.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",InstalledPackageId "containers-0.4.0.0-8781485edb2ac0db733a9f9c72e27945"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/.cabal/share/doc/data-default-0.2.0.1/html/data-default.haddock"], haddockHTMLs = ["/home/hugo/.cabal/share/doc/data-default-0.2.0.1/html"]}),(InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba",InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-prim", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "GHC primitives.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Prim"],ModuleName ["GHC","Bool"],ModuleName ["GHC","Debug"],ModuleName ["GHC","Generics"],ModuleName ["GHC","Magic"],ModuleName ["GHC","Ordering"],ModuleName ["GHC","PrimopWrappers"],ModuleName ["GHC","IntWord32"],ModuleName ["GHC","IntWord64"],ModuleName ["GHC","Tuple"],ModuleName ["GHC","Types"],ModuleName ["GHC","Unit"]], hiddenModules = [], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/ghc-prim-0.2.0.0"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/ghc-prim-0.2.0.0"], hsLibraries = ["HSghc-prim-0.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/ghc-prim.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0"]}),(InstalledPackageId "integer-gmp-0.2.0.3-4908241a60353d401d28868826ecd015",InstalledPackageInfo {installedPackageId = InstalledPackageId "integer-gmp-0.2.0.3-4908241a60353d401d28868826ecd015", sourcePackageId = PackageIdentifier {pkgName = PackageName "integer-gmp", pkgVersion = Version {versionBranch = [0,2,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains an Integer library based on GMP.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Integer"],ModuleName ["GHC","Integer","GMP","Internals"]], hiddenModules = [ModuleName ["GHC","Integer","Type"]], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/integer-gmp-0.2.0.3"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/integer-gmp-0.2.0.3"], hsLibraries = ["HSinteger-gmp-0.2.0.3"], extraLibraries = ["gmp"], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/integer-gmp-0.2.0.3/integer-gmp.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/integer-gmp-0.2.0.3"]}),(InstalledPackageId "primitive-0.3.1-8254baf92d822508a6aa7805b8b44531",InstalledPackageInfo {installedPackageId = InstalledPackageId "primitive-0.3.1-8254baf92d822508a6aa7805b8b44531", sourcePackageId = PackageIdentifier {pkgName = PackageName "primitive", pkgVersion = Version {versionBranch = [0,3,1], versionTags = []}}, license = BSD3, copyright = "(c) Roman Leshchinskiy 2009-2010", maintainer = "Roman Leshchinskiy <rl@cse.unsw.edu.au>", author = "Roman Leshchinskiy <rl@cse.unsw.edu.au>", stability = "", homepage = "http://code.haskell.org/primitive", pkgUrl = "", description = ".\nThis package provides wrappers for primitive array operations from\nGHC.Prim.", category = "Data", exposed = True, exposedModules = [ModuleName ["Control","Monad","Primitive"],ModuleName ["Data","Primitive"],ModuleName ["Data","Primitive","MachDeps"],ModuleName ["Data","Primitive","Types"],ModuleName ["Data","Primitive","Array"],ModuleName ["Data","Primitive","ByteArray"],ModuleName ["Data","Primitive","Addr"]], hiddenModules = [], importDirs = ["/home/hugo/.cabal/lib/primitive-0.3.1/ghc-7.0.3"], libraryDirs = ["/home/hugo/.cabal/lib/primitive-0.3.1/ghc-7.0.3"], hsLibraries = ["HSprimitive-0.3.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/.cabal/lib/primitive-0.3.1/ghc-7.0.3/include"], includes = ["primitive-memops.h"], depends = [InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/.cabal/share/doc/primitive-0.3.1/html/primitive.haddock"], haddockHTMLs = ["/home/hugo/.cabal/share/doc/primitive-0.3.1/html"]}),(InstalledPackageId "vector-0.7.0.1-3a18a3c369c7e19a25c6ed8559ed6128",InstalledPackageInfo {installedPackageId = InstalledPackageId "vector-0.7.0.1-3a18a3c369c7e19a25c6ed8559ed6128", sourcePackageId = PackageIdentifier {pkgName = PackageName "vector", pkgVersion = Version {versionBranch = [0,7,0,1], versionTags = []}}, license = BSD3, copyright = "(c) Roman Leshchinskiy 2008-2010", maintainer = "Roman Leshchinskiy <rl@cse.unsw.edu.au>", author = "Roman Leshchinskiy <rl@cse.unsw.edu.au>", stability = "", homepage = "http://code.haskell.org/vector", pkgUrl = "", description = ".\nAn efficient implementation of Int-indexed arrays (both mutable\nand immutable), with a powerful loop fusion optimization framework .\n\nIt is structured as follows:\n\n[@Data.Vector@] Boxed vectors of arbitrary types.\n\n[@Data.Vector.Unboxed@] Unboxed vectors with an adaptive\nrepresentation based on data type families.\n\n[@Data.Vector.Storable@] Unboxed vectors of 'Storable' types.\n\n[@Data.Vector.Primitive@] Unboxed vectors of primitive types as\ndefined by the @primitive@ package. @Data.Vector.Unboxed@ is more\nflexible at no performance cost.\n\n[@Data.Vector.Generic@] Generic interface to the vector types.\n\nThere is also a (draft) tutorial on common uses of vector.\n\n* <http://haskell.org/haskellwiki/Numeric_Haskell:_A_Vector_Tutorial>\n\nPlease use the project trac to submit bug reports and feature\nrequests.\n\n* <http://trac.haskell.org/vector>\n\nChanges in version 0.7.0.1\n\n* Dependency on package ghc removed\n\nChanges in version 0.7\n\n* New functions for freezing, copying and thawing vectors: @freeze@,\n@thaw@, @unsafeThaw@ and @clone@\n\n* @newWith@ and @newUnsafeWith@ on mutable vectors replaced by\n@replicate@\n\n* New function: @concat@\n\n* New function for safe indexing: @(!?)@\n\n* @Monoid@ instances for all vector types\n\n* Significant recycling and fusion improvements\n\n* Bug fixes\n\n* Support for GHC 7.0", category = "Data, Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Vector","Internal","Check"],ModuleName ["Data","Vector","Fusion","Util"],ModuleName ["Data","Vector","Fusion","Stream","Size"],ModuleName ["Data","Vector","Fusion","Stream","Monadic"],ModuleName ["Data","Vector","Fusion","Stream"],ModuleName ["Data","Vector","Generic","Mutable"],ModuleName ["Data","Vector","Generic","Base"],ModuleName ["Data","Vector","Generic","New"],ModuleName ["Data","Vector","Generic"],ModuleName ["Data","Vector","Primitive","Mutable"],ModuleName ["Data","Vector","Primitive"],ModuleName ["Data","Vector","Storable","Internal"],ModuleName ["Data","Vector","Storable","Mutable"],ModuleName ["Data","Vector","Storable"],ModuleName ["Data","Vector","Unboxed","Base"],ModuleName ["Data","Vector","Unboxed","Mutable"],ModuleName ["Data","Vector","Unboxed"],ModuleName ["Data","Vector","Mutable"],ModuleName ["Data","Vector"]], hiddenModules = [], importDirs = ["/home/hugo/.cabal/lib/vector-0.7.0.1/ghc-7.0.3"], libraryDirs = ["/home/hugo/.cabal/lib/vector-0.7.0.1/ghc-7.0.3"], hsLibraries = ["HSvector-0.7.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/.cabal/lib/vector-0.7.0.1/ghc-7.0.3/include"], includes = [], depends = [InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",InstalledPackageId "primitive-0.3.1-8254baf92d822508a6aa7805b8b44531"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/.cabal/share/doc/vector-0.7.0.1/html/vector.haddock"], haddockHTMLs = ["/home/hugo/.cabal/share/doc/vector-0.7.0.1/html"]})]) (fromList [(PackageName "array",fromList [(Version {versionBranch = [0,3,0,2], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "array-0.3.0.2-3444ee049e55c8df31a0796287f56a5e", sourcePackageId = PackageIdentifier {pkgName = PackageName "array", pkgVersion = Version {versionBranch = [0,3,0,2], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package defines the classes @IArray@ of immutable arrays and\n@MArray@ of arrays mutable within appropriate monads, as well as\nsome instances of these classes.", category = "Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Array","Base"],ModuleName ["Data","Array","IArray"],ModuleName ["Data","Array","IO"],ModuleName ["Data","Array","IO","Internals"],ModuleName ["Data","Array","MArray"],ModuleName ["Data","Array","ST"],ModuleName ["Data","Array","Storable"],ModuleName ["Data","Array","Unboxed"],ModuleName ["Data","Array"]], hiddenModules = [], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/array-0.3.0.2"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/array-0.3.0.2"], hsLibraries = ["HSarray-0.3.0.2"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/array-0.3.0.2/array.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/array-0.3.0.2"]}])]),(PackageName "base",fromList [(Version {versionBranch = [4,3,1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20", sourcePackageId = PackageIdentifier {pkgName = PackageName "base", pkgVersion = Version {versionBranch = [4,3,1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains the Prelude and its support libraries,\nand a large collection of useful libraries ranging from data\nstructures to parsing combinators and debugging utilities.", category = "", exposed = True, exposedModules = [ModuleName ["Foreign","Concurrent"],ModuleName ["GHC","Arr"],ModuleName ["GHC","Base"],ModuleName ["GHC","Classes"],ModuleName ["GHC","Conc"],ModuleName ["GHC","Conc","IO"],ModuleName ["GHC","Conc","Signal"],ModuleName ["GHC","Conc","Sync"],ModuleName ["GHC","ConsoleHandler"],ModuleName ["GHC","Constants"],ModuleName ["GHC","Desugar"],ModuleName ["GHC","Enum"],ModuleName ["GHC","Environment"],ModuleName ["GHC","Err"],ModuleName ["GHC","Exception"],ModuleName ["GHC","Exts"],ModuleName ["GHC","Float"],ModuleName ["GHC","ForeignPtr"],ModuleName ["GHC","MVar"],ModuleName ["GHC","IO"],ModuleName ["GHC","IO","IOMode"],ModuleName ["GHC","IO","Buffer"],ModuleName ["GHC","IO","Device"],ModuleName ["GHC","IO","BufferedIO"],ModuleName ["GHC","IO","FD"],ModuleName ["GHC","IO","Exception"],ModuleName ["GHC","IO","Encoding"],ModuleName ["GHC","IO","Encoding","Latin1"],ModuleName ["GHC","IO","Encoding","UTF8"],ModuleName ["GHC","IO","Encoding","UTF16"],ModuleName ["GHC","IO","Encoding","UTF32"],ModuleName ["GHC","IO","Encoding","Types"],ModuleName ["GHC","IO","Encoding","Iconv"],ModuleName ["GHC","IO","Encoding","CodePage"],ModuleName ["GHC","IO","Handle"],ModuleName ["GHC","IO","Handle","Types"],ModuleName ["GHC","IO","Handle","Internals"],ModuleName ["GHC","IO","Handle","FD"],ModuleName ["GHC","IO","Handle","Text"],ModuleName ["GHC","IOBase"],ModuleName ["GHC","Handle"],ModuleName ["GHC","IORef"],ModuleName ["GHC","IOArray"],ModuleName ["GHC","Int"],ModuleName ["GHC","List"],ModuleName ["GHC","Num"],ModuleName ["GHC","PArr"],ModuleName ["GHC","Pack"],ModuleName ["GHC","Ptr"],ModuleName ["GHC","Read"],ModuleName ["GHC","Real"],ModuleName ["GHC","ST"],ModuleName ["GHC","STRef"],ModuleName ["GHC","Show"],ModuleName ["GHC","Stable"],ModuleName ["GHC","Storable"],ModuleName ["GHC","TopHandler"],ModuleName ["GHC","Unicode"],ModuleName ["GHC","Weak"],ModuleName ["GHC","Word"],ModuleName ["System","Timeout"],ModuleName ["System","Event"],ModuleName ["Control","Applicative"],ModuleName ["Control","Arrow"],ModuleName ["Control","Category"],ModuleName ["Control","Concurrent"],ModuleName ["Control","Concurrent","Chan"],ModuleName ["Control","Concurrent","MVar"],ModuleName ["Control","Concurrent","QSem"],ModuleName ["Control","Concurrent","QSemN"],ModuleName ["Control","Concurrent","SampleVar"],ModuleName ["Control","Exception"],ModuleName ["Control","Exception","Base"],ModuleName ["Control","OldException"],ModuleName ["Control","Monad"],ModuleName ["Control","Monad","Fix"],ModuleName ["Control","Monad","Instances"],ModuleName ["Control","Monad","ST"],ModuleName ["Control","Monad","ST","Lazy"],ModuleName ["Control","Monad","ST","Strict"],ModuleName ["Data","Bits"],ModuleName ["Data","Bool"],ModuleName ["Data","Char"],ModuleName ["Data","Complex"],ModuleName ["Data","Dynamic"],ModuleName ["Data","Either"],ModuleName ["Data","Eq"],ModuleName ["Data","Data"],ModuleName ["Data","Fixed"],ModuleName ["Data","Foldable"],ModuleName ["Data","Function"],ModuleName ["Data","Functor"],ModuleName ["Data","HashTable"],ModuleName ["Data","IORef"],ModuleName ["Data","Int"],ModuleName ["Data","Ix"],ModuleName ["Data","List"],ModuleName ["Data","Maybe"],ModuleName ["Data","Monoid"],ModuleName ["Data","Ord"],ModuleName ["Data","Ratio"],ModuleName ["Data","STRef"],ModuleName ["Data","STRef","Lazy"],ModuleName ["Data","STRef","Strict"],ModuleName ["Data","String"],ModuleName ["Data","Traversable"],ModuleName ["Data","Tuple"],ModuleName ["Data","Typeable"],ModuleName ["Data","Unique"],ModuleName ["Data","Version"],ModuleName ["Data","Word"],ModuleName ["Debug","Trace"],ModuleName ["Foreign"],ModuleName ["Foreign","C"],ModuleName ["Foreign","C","Error"],ModuleName ["Foreign","C","String"],ModuleName ["Foreign","C","Types"],ModuleName ["Foreign","ForeignPtr"],ModuleName ["Foreign","Marshal"],ModuleName ["Foreign","Marshal","Alloc"],ModuleName ["Foreign","Marshal","Array"],ModuleName ["Foreign","Marshal","Error"],ModuleName ["Foreign","Marshal","Pool"],ModuleName ["Foreign","Marshal","Utils"],ModuleName ["Foreign","Ptr"],ModuleName ["Foreign","StablePtr"],ModuleName ["Foreign","Storable"],ModuleName ["Numeric"],ModuleName ["Prelude"],ModuleName ["System","Console","GetOpt"],ModuleName ["System","CPUTime"],ModuleName ["System","Environment"],ModuleName ["System","Exit"],ModuleName ["System","IO"],ModuleName ["System","IO","Error"],ModuleName ["System","IO","Unsafe"],ModuleName ["System","Info"],ModuleName ["System","Mem"],ModuleName ["System","Mem","StableName"],ModuleName ["System","Mem","Weak"],ModuleName ["System","Posix","Internals"],ModuleName ["System","Posix","Types"],ModuleName ["Text","ParserCombinators","ReadP"],ModuleName ["Text","ParserCombinators","ReadPrec"],ModuleName ["Text","Printf"],ModuleName ["Text","Read"],ModuleName ["Text","Read","Lex"],ModuleName ["Text","Show"],ModuleName ["Text","Show","Functions"],ModuleName ["Unsafe","Coerce"]], hiddenModules = [ModuleName ["System","Event","Array"],ModuleName ["System","Event","Clock"],ModuleName ["System","Event","Control"],ModuleName ["System","Event","EPoll"],ModuleName ["System","Event","IntMap"],ModuleName ["System","Event","Internal"],ModuleName ["System","Event","KQueue"],ModuleName ["System","Event","Manager"],ModuleName ["System","Event","PSQ"],ModuleName ["System","Event","Poll"],ModuleName ["System","Event","Thread"],ModuleName ["System","Event","Unique"]], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/base-4.3.1.0"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/base-4.3.1.0"], hsLibraries = ["HSbase-4.3.1.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/Local/lib/ghc-7.0.3/base-4.3.1.0/include"], includes = ["HsBase.h"], depends = [InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba",InstalledPackageId "integer-gmp-0.2.0.3-4908241a60353d401d28868826ecd015",InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/base-4.3.1.0/base.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/base-4.3.1.0"]}])]),(PackageName "containers",fromList [(Version {versionBranch = [0,4,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "containers-0.4.0.0-8781485edb2ac0db733a9f9c72e27945", sourcePackageId = PackageIdentifier {pkgName = PackageName "containers", pkgVersion = Version {versionBranch = [0,4,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains efficient general-purpose implementations\nof various basic immutable container types.  The declared cost of\neach operation is either worst-case or amortized, but remains\nvalid even if structures are shared.", category = "Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Graph"],ModuleName ["Data","Sequence"],ModuleName ["Data","Tree"],ModuleName ["Data","IntMap"],ModuleName ["Data","IntSet"],ModuleName ["Data","Map"],ModuleName ["Data","Set"]], hiddenModules = [], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/containers-0.4.0.0"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/containers-0.4.0.0"], hsLibraries = ["HScontainers-0.4.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "array-0.3.0.2-3444ee049e55c8df31a0796287f56a5e",InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/containers-0.4.0.0/containers.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/containers-0.4.0.0"]}])]),(PackageName "data-default",fromList [(Version {versionBranch = [0,2,0,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "data-default-0.2.0.1-af7457a414bf8afe6d487bc4398590fa", sourcePackageId = PackageIdentifier {pkgName = PackageName "data-default", pkgVersion = Version {versionBranch = [0,2,0,1], versionTags = []}}, license = BSD3, copyright = "", maintainer = "<l.mai@web.de>", author = "Lukas Mai", stability = "", homepage = "", pkgUrl = "", description = "", category = "Data", exposed = True, exposedModules = [ModuleName ["Data","Default"]], hiddenModules = [], importDirs = ["/home/hugo/.cabal/lib/data-default-0.2.0.1/ghc-7.0.3"], libraryDirs = ["/home/hugo/.cabal/lib/data-default-0.2.0.1/ghc-7.0.3"], hsLibraries = ["HSdata-default-0.2.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",InstalledPackageId "containers-0.4.0.0-8781485edb2ac0db733a9f9c72e27945"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/.cabal/share/doc/data-default-0.2.0.1/html/data-default.haddock"], haddockHTMLs = ["/home/hugo/.cabal/share/doc/data-default-0.2.0.1/html"]}])]),(PackageName "ffi",fromList [(Version {versionBranch = [1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_ffi", sourcePackageId = PackageIdentifier {pkgName = PackageName "ffi", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3"], hsLibraries = ["HSffi"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/Local/lib/ghc-7.0.3/include"], includes = [], depends = [], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}])]),(PackageName "ghc-prim",fromList [(Version {versionBranch = [0,2,0,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba", sourcePackageId = PackageIdentifier {pkgName = PackageName "ghc-prim", pkgVersion = Version {versionBranch = [0,2,0,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "GHC primitives.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Prim"],ModuleName ["GHC","Bool"],ModuleName ["GHC","Debug"],ModuleName ["GHC","Generics"],ModuleName ["GHC","Magic"],ModuleName ["GHC","Ordering"],ModuleName ["GHC","PrimopWrappers"],ModuleName ["GHC","IntWord32"],ModuleName ["GHC","IntWord64"],ModuleName ["GHC","Tuple"],ModuleName ["GHC","Types"],ModuleName ["GHC","Unit"]], hiddenModules = [], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/ghc-prim-0.2.0.0"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/ghc-prim-0.2.0.0"], hsLibraries = ["HSghc-prim-0.2.0.0"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "builtin_rts"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/ghc-prim.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0"]}])]),(PackageName "integer-gmp",fromList [(Version {versionBranch = [0,2,0,3], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "integer-gmp-0.2.0.3-4908241a60353d401d28868826ecd015", sourcePackageId = PackageIdentifier {pkgName = PackageName "integer-gmp", pkgVersion = Version {versionBranch = [0,2,0,3], versionTags = []}}, license = BSD3, copyright = "", maintainer = "libraries@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "This package contains an Integer library based on GMP.", category = "", exposed = True, exposedModules = [ModuleName ["GHC","Integer"],ModuleName ["GHC","Integer","GMP","Internals"]], hiddenModules = [ModuleName ["GHC","Integer","Type"]], importDirs = ["/home/hugo/Local/lib/ghc-7.0.3/integer-gmp-0.2.0.3"], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3/integer-gmp-0.2.0.3"], hsLibraries = ["HSinteger-gmp-0.2.0.3"], extraLibraries = ["gmp"], extraGHCiLibraries = [], includeDirs = [], includes = [], depends = [InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/Local/share/doc/ghc/html/libraries/integer-gmp-0.2.0.3/integer-gmp.haddock"], haddockHTMLs = ["/home/hugo/Local/share/doc/ghc/html/libraries/integer-gmp-0.2.0.3"]}])]),(PackageName "primitive",fromList [(Version {versionBranch = [0,3,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "primitive-0.3.1-8254baf92d822508a6aa7805b8b44531", sourcePackageId = PackageIdentifier {pkgName = PackageName "primitive", pkgVersion = Version {versionBranch = [0,3,1], versionTags = []}}, license = BSD3, copyright = "(c) Roman Leshchinskiy 2009-2010", maintainer = "Roman Leshchinskiy <rl@cse.unsw.edu.au>", author = "Roman Leshchinskiy <rl@cse.unsw.edu.au>", stability = "", homepage = "http://code.haskell.org/primitive", pkgUrl = "", description = ".\nThis package provides wrappers for primitive array operations from\nGHC.Prim.", category = "Data", exposed = True, exposedModules = [ModuleName ["Control","Monad","Primitive"],ModuleName ["Data","Primitive"],ModuleName ["Data","Primitive","MachDeps"],ModuleName ["Data","Primitive","Types"],ModuleName ["Data","Primitive","Array"],ModuleName ["Data","Primitive","ByteArray"],ModuleName ["Data","Primitive","Addr"]], hiddenModules = [], importDirs = ["/home/hugo/.cabal/lib/primitive-0.3.1/ghc-7.0.3"], libraryDirs = ["/home/hugo/.cabal/lib/primitive-0.3.1/ghc-7.0.3"], hsLibraries = ["HSprimitive-0.3.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/.cabal/lib/primitive-0.3.1/ghc-7.0.3/include"], includes = ["primitive-memops.h"], depends = [InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",InstalledPackageId "ghc-prim-0.2.0.0-d9df11f804556f362beb0ea4e67261ba"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/.cabal/share/doc/primitive-0.3.1/html/primitive.haddock"], haddockHTMLs = ["/home/hugo/.cabal/share/doc/primitive-0.3.1/html"]}])]),(PackageName "rts",fromList [(Version {versionBranch = [1,0], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "builtin_rts", sourcePackageId = PackageIdentifier {pkgName = PackageName "rts", pkgVersion = Version {versionBranch = [1,0], versionTags = []}}, license = BSD3, copyright = "", maintainer = "glasgow-haskell-users@haskell.org", author = "", stability = "", homepage = "", pkgUrl = "", description = "", category = "", exposed = True, exposedModules = [], hiddenModules = [], importDirs = [], libraryDirs = ["/home/hugo/Local/lib/ghc-7.0.3"], hsLibraries = ["HSrts"], extraLibraries = ["m","rt","dl"], extraGHCiLibraries = [], includeDirs = ["/home/hugo/Local/lib/ghc-7.0.3/include"], includes = ["Stg.h"], depends = [InstalledPackageId "builtin_ffi"], hugsOptions = [], ccOptions = [], ldOptions = ["-u","ghczmprim_GHCziTypes_Izh_static_info","-u","ghczmprim_GHCziTypes_Czh_static_info","-u","ghczmprim_GHCziTypes_Fzh_static_info","-u","ghczmprim_GHCziTypes_Dzh_static_info","-u","base_GHCziPtr_Ptr_static_info","-u","base_GHCziWord_Wzh_static_info","-u","base_GHCziInt_I8zh_static_info","-u","base_GHCziInt_I16zh_static_info","-u","base_GHCziInt_I32zh_static_info","-u","base_GHCziInt_I64zh_static_info","-u","base_GHCziWord_W8zh_static_info","-u","base_GHCziWord_W16zh_static_info","-u","base_GHCziWord_W32zh_static_info","-u","base_GHCziWord_W64zh_static_info","-u","base_GHCziStable_StablePtr_static_info","-u","ghczmprim_GHCziTypes_Izh_con_info","-u","ghczmprim_GHCziTypes_Czh_con_info","-u","ghczmprim_GHCziTypes_Fzh_con_info","-u","ghczmprim_GHCziTypes_Dzh_con_info","-u","base_GHCziPtr_Ptr_con_info","-u","base_GHCziPtr_FunPtr_con_info","-u","base_GHCziStable_StablePtr_con_info","-u","ghczmprim_GHCziBool_False_closure","-u","ghczmprim_GHCziBool_True_closure","-u","base_GHCziPack_unpackCString_closure","-u","base_GHCziIOziException_stackOverflow_closure","-u","base_GHCziIOziException_heapOverflow_closure","-u","base_ControlziExceptionziBase_nonTermination_closure","-u","base_GHCziIOziException_blockedIndefinitelyOnMVar_closure","-u","base_GHCziIOziException_blockedIndefinitelyOnSTM_closure","-u","base_ControlziExceptionziBase_nestedAtomically_closure","-u","base_GHCziWeak_runFinalizzerBatch_closure","-u","base_GHCziTopHandler_runIO_closure","-u","base_GHCziTopHandler_runNonIO_closure","-u","base_GHCziConcziIO_ensureIOManagerIsRunning_closure","-u","base_GHCziConcziSync_runSparks_closure","-u","base_GHCziConcziSignal_runHandlers_closure"], frameworkDirs = [], frameworks = [], haddockInterfaces = [], haddockHTMLs = []}])]),(PackageName "vector",fromList [(Version {versionBranch = [0,7,0,1], versionTags = []},[InstalledPackageInfo {installedPackageId = InstalledPackageId "vector-0.7.0.1-3a18a3c369c7e19a25c6ed8559ed6128", sourcePackageId = PackageIdentifier {pkgName = PackageName "vector", pkgVersion = Version {versionBranch = [0,7,0,1], versionTags = []}}, license = BSD3, copyright = "(c) Roman Leshchinskiy 2008-2010", maintainer = "Roman Leshchinskiy <rl@cse.unsw.edu.au>", author = "Roman Leshchinskiy <rl@cse.unsw.edu.au>", stability = "", homepage = "http://code.haskell.org/vector", pkgUrl = "", description = ".\nAn efficient implementation of Int-indexed arrays (both mutable\nand immutable), with a powerful loop fusion optimization framework .\n\nIt is structured as follows:\n\n[@Data.Vector@] Boxed vectors of arbitrary types.\n\n[@Data.Vector.Unboxed@] Unboxed vectors with an adaptive\nrepresentation based on data type families.\n\n[@Data.Vector.Storable@] Unboxed vectors of 'Storable' types.\n\n[@Data.Vector.Primitive@] Unboxed vectors of primitive types as\ndefined by the @primitive@ package. @Data.Vector.Unboxed@ is more\nflexible at no performance cost.\n\n[@Data.Vector.Generic@] Generic interface to the vector types.\n\nThere is also a (draft) tutorial on common uses of vector.\n\n* <http://haskell.org/haskellwiki/Numeric_Haskell:_A_Vector_Tutorial>\n\nPlease use the project trac to submit bug reports and feature\nrequests.\n\n* <http://trac.haskell.org/vector>\n\nChanges in version 0.7.0.1\n\n* Dependency on package ghc removed\n\nChanges in version 0.7\n\n* New functions for freezing, copying and thawing vectors: @freeze@,\n@thaw@, @unsafeThaw@ and @clone@\n\n* @newWith@ and @newUnsafeWith@ on mutable vectors replaced by\n@replicate@\n\n* New function: @concat@\n\n* New function for safe indexing: @(!?)@\n\n* @Monoid@ instances for all vector types\n\n* Significant recycling and fusion improvements\n\n* Bug fixes\n\n* Support for GHC 7.0", category = "Data, Data Structures", exposed = True, exposedModules = [ModuleName ["Data","Vector","Internal","Check"],ModuleName ["Data","Vector","Fusion","Util"],ModuleName ["Data","Vector","Fusion","Stream","Size"],ModuleName ["Data","Vector","Fusion","Stream","Monadic"],ModuleName ["Data","Vector","Fusion","Stream"],ModuleName ["Data","Vector","Generic","Mutable"],ModuleName ["Data","Vector","Generic","Base"],ModuleName ["Data","Vector","Generic","New"],ModuleName ["Data","Vector","Generic"],ModuleName ["Data","Vector","Primitive","Mutable"],ModuleName ["Data","Vector","Primitive"],ModuleName ["Data","Vector","Storable","Internal"],ModuleName ["Data","Vector","Storable","Mutable"],ModuleName ["Data","Vector","Storable"],ModuleName ["Data","Vector","Unboxed","Base"],ModuleName ["Data","Vector","Unboxed","Mutable"],ModuleName ["Data","Vector","Unboxed"],ModuleName ["Data","Vector","Mutable"],ModuleName ["Data","Vector"]], hiddenModules = [], importDirs = ["/home/hugo/.cabal/lib/vector-0.7.0.1/ghc-7.0.3"], libraryDirs = ["/home/hugo/.cabal/lib/vector-0.7.0.1/ghc-7.0.3"], hsLibraries = ["HSvector-0.7.0.1"], extraLibraries = [], extraGHCiLibraries = [], includeDirs = ["/home/hugo/.cabal/lib/vector-0.7.0.1/ghc-7.0.3/include"], includes = [], depends = [InstalledPackageId "base-4.3.1.0-1554f26e1cc1c87f47464e927dddbd20",InstalledPackageId "primitive-0.3.1-8254baf92d822508a6aa7805b8b44531"], hugsOptions = [], ccOptions = [], ldOptions = [], frameworkDirs = [], frameworks = [], haddockInterfaces = ["/home/hugo/.cabal/share/doc/vector-0.7.0.1/html/vector.haddock"], haddockHTMLs = ["/home/hugo/.cabal/share/doc/vector-0.7.0.1/html"]}])])]), pkgDescrFile = Just "./Noise.cabal", localPkgDescr = PackageDescription {package = PackageIdentifier {pkgName = PackageName "Noise", pkgVersion = Version {versionBranch = [0,0,1], versionTags = []}}, license = BSD3, licenseFile = "LICENSE", copyright = "", maintainer = "Hugo Daniel <hugodaniel@hackological.com>", author = "", stability = "", testedWith = [], homepage = "", pkgUrl = "", bugReports = "", sourceRepos = [], synopsis = "A Haskell coherent noise generator", description = "A Haskell coherent noise generator roughly based on libnoise.\nFor more information on libnoise, please check: <http://libnoise.sourceforge.net>.\n\nThe noise modules were extensively profiled and benchmarked,\nthe slower pure functions were rewritten in C.\nThe main objective of this packer is to provide a simple interface\nto compose noise modules.\n\nYou could compose several noise modules like this:\n\n> myPerlin = perlin `isSourceOf` scalebias\nscale = 1.0\n`isSourceOf` absolute\n> myComposition = perlin\nperlinFrequency = 0.123\n`andModule` billow\nbillowOctaves = 12\n`andModule` myPerlin\n`areSourcesOf`\nselect\nupperBound = 0.7, lowerBound = 0.2\n\nThis is a 3D noise package, to get a value you need to specify a\ntriple:\n\n> getValue myComposition (-0.1, -0.5, 0.76)\n\nFor more information please read the documentation of each module\nbellow.", category = "Math", customFieldsPD = [], buildDepends = [Dependency (PackageName "array") (IntersectVersionRanges AnyVersion (ThisVersion (Version {versionBranch = [0,3,0,2], versionTags = []}))),Dependency (PackageName "base") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [4], versionTags = []})) (LaterVersion (Version {versionBranch = [4], versionTags = []}))) (ThisVersion (Version {versionBranch = [4,3,1,0], versionTags = []}))),Dependency (PackageName "data-default") (IntersectVersionRanges AnyVersion (ThisVersion (Version {versionBranch = [0,2,0,1], versionTags = []}))),Dependency (PackageName "vector") (IntersectVersionRanges AnyVersion (ThisVersion (Version {versionBranch = [0,7,0,1], versionTags = []})))], specVersionRaw = Right (UnionVersionRanges (ThisVersion (Version {versionBranch = [1,6], versionTags = []})) (LaterVersion (Version {versionBranch = [1,6], versionTags = []}))), buildType = Just Simple, library = Just (Library {exposedModules = [ModuleName ["Math","Noise"],ModuleName ["Math","Noise","NoiseGen"],ModuleName ["Math","Noise","NoiseModule"],ModuleName ["Math","Noise","Modules","Abs"],ModuleName ["Math","Noise","Modules","Billow"],ModuleName ["Math","Noise","Modules","Perlin"],ModuleName ["Math","Noise","Modules","Select"],ModuleName ["Math","Noise","Modules","ScaleBias"]], libExposed = True, libBuildInfo = BuildInfo {buildable = True, buildTools = [], cppOptions = [], ccOptions = [], ldOptions = [], pkgconfigDepends = [], frameworks = [], cSources = ["Math/Noise/noisegen.c","Math/Noise/Modules/perlin.c"], hsSourceDirs = ["."], otherModules = [ModuleName ["Math","Noise","Interpolation"],ModuleName ["Math","Noise","VectorTable"]], defaultLanguage = Nothing, otherLanguages = [], defaultExtensions = [], otherExtensions = [], oldExtensions = [BangPatterns], extraLibs = [], extraLibDirs = [], includeDirs = ["Math/Noise","Math/Noise/Modules"], includes = [], installIncludes = [], options = [(GHC,["-O2","-funbox-strict-fields"])], ghcProfOptions = [], ghcSharedOptions = [], customFieldsBI = [], targetBuildDepends = [Dependency (PackageName "array") (IntersectVersionRanges AnyVersion (ThisVersion (Version {versionBranch = [0,3,0,2], versionTags = []}))),Dependency (PackageName "base") (IntersectVersionRanges (UnionVersionRanges (ThisVersion (Version {versionBranch = [4], versionTags = []})) (LaterVersion (Version {versionBranch = [4], versionTags = []}))) (ThisVersion (Version {versionBranch = [4,3,1,0], versionTags = []}))),Dependency (PackageName "data-default") (IntersectVersionRanges AnyVersion (ThisVersion (Version {versionBranch = [0,2,0,1], versionTags = []}))),Dependency (PackageName "vector") (IntersectVersionRanges AnyVersion (ThisVersion (Version {versionBranch = [0,7,0,1], versionTags = []})))]}}), executables = [], testSuites = [], dataFiles = [], dataDir = "", extraSrcFiles = ["README.txt","Math/Noise/common.h","Math/Noise/noisegen.h","Math/Noise/Modules/perlin.h"], extraTmpFiles = []}, withPrograms = [("alex",ConfiguredProgram {programId = "alex", programVersion = Just (Version {versionBranch = [2,3,5], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/hugo/.cabal/bin/alex"}}),("ar",ConfiguredProgram {programId = "ar", programVersion = Nothing, programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ar"}}),("c2hs",ConfiguredProgram {programId = "c2hs", programVersion = Just (Version {versionBranch = [0,16,3], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/hugo/.cabal/bin/c2hs"}}),("cpphs",ConfiguredProgram {programId = "cpphs", programVersion = Just (Version {versionBranch = [1,11], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/hugo/.cabal/bin/cpphs"}}),("gcc",ConfiguredProgram {programId = "gcc", programVersion = Just (Version {versionBranch = [4,6,0], versionTags = []}), programDefaultArgs = ["-fno-stack-protector"], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/gcc"}}),("ghc",ConfiguredProgram {programId = "ghc", programVersion = Just (Version {versionBranch = [7,0,3], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/hugo/Local/bin/ghc"}}),("ghc-pkg",ConfiguredProgram {programId = "ghc-pkg", programVersion = Just (Version {versionBranch = [7,0,3], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/hugo/Local/bin/ghc-pkg"}}),("haddock",ConfiguredProgram {programId = "haddock", programVersion = Just (Version {versionBranch = [2,9,2], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/hugo/Local/bin/haddock"}}),("happy",ConfiguredProgram {programId = "happy", programVersion = Just (Version {versionBranch = [1,18,6], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/hugo/.cabal/bin/happy"}}),("hsc2hs",ConfiguredProgram {programId = "hsc2hs", programVersion = Just (Version {versionBranch = [0,67], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/home/hugo/Local/bin/hsc2hs"}}),("ld",ConfiguredProgram {programId = "ld", programVersion = Nothing, programDefaultArgs = ["-x"], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ld"}}),("pkg-config",ConfiguredProgram {programId = "pkg-config", programVersion = Just (Version {versionBranch = [0,25], versionTags = []}), programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/pkg-config"}}),("ranlib",ConfiguredProgram {programId = "ranlib", programVersion = Nothing, programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/ranlib"}}),("strip",ConfiguredProgram {programId = "strip", programVersion = Nothing, programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/usr/bin/strip"}}),("tar",ConfiguredProgram {programId = "tar", programVersion = Nothing, programDefaultArgs = [], programOverrideArgs = [], programLocation = FoundOnSystem {locationPath = "/bin/tar"}})], withPackageDB = [GlobalPackageDB,UserPackageDB], withVanillaLib = True, withProfLib = False, withSharedLib = False, withProfExe = False, withOptimization = NormalOptimisation, withGHCiLib = True, splitObjs = False, stripExes = True, progPrefix = "", progSuffix = ""}
diff --git a/libnoise/COPYING.txt b/libnoise/COPYING.txt
deleted file mode 100644
--- a/libnoise/COPYING.txt
+++ /dev/null
@@ -1,504 +0,0 @@
-		  GNU LESSER GENERAL PUBLIC LICENSE
-		       Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 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.
-
-[This is the first released version of the Lesser GPL.  It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
-  This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it.  You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations below.
-
-  When we speak of free software, we are referring to freedom of use,
-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 and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
-  To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights.  These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
-  For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you.  You must make sure that they, too, receive or can get the source
-code.  If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it.  And you must show them these terms so they know their rights.
-
-  We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
-  To protect each distributor, we want to make it very clear that
-there is no warranty for the free library.  Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-
-  Finally, software patents pose a constant threat to the existence of
-any free program.  We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder.  Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
-  Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License.  This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License.  We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
-  When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library.  The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom.  The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
-  We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License.  It also provides other free software developers Less
-of an advantage over competing non-free programs.  These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries.  However, the Lesser license provides advantages in certain
-special circumstances.
-
-  For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it becomes
-a de-facto standard.  To achieve this, non-free programs must be
-allowed to use the library.  A more frequent case is that a free
-library does the same job as widely used non-free libraries.  In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
-  In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software.  For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
-  Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.  Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library".  The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-
-		  GNU LESSER GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
-  A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
-  The "Library", below, refers to any such software library or work
-which has been distributed under these terms.  A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language.  (Hereinafter, translation is
-included without limitation in the term "modification".)
-
-  "Source code" for a work means the preferred form of the work for
-making modifications to it.  For a library, 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 library.
-
-  Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it).  Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-  
-  1. You may copy and distribute verbatim copies of the Library's
-complete 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 distribute a copy of this License along with the
-Library.
-
-  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 Library or any portion
-of it, thus forming a work based on the Library, 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) The modified work must itself be a software library.
-
-    b) You must cause the files modified to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    c) You must cause the whole of the work to be licensed at no
-    charge to all third parties under the terms of this License.
-
-    d) If a facility in the modified Library refers to a function or a
-    table of data to be supplied by an application program that uses
-    the facility, other than as an argument passed when the facility
-    is invoked, then you must make a good faith effort to ensure that,
-    in the event an application does not supply such function or
-    table, the facility still operates, and performs whatever part of
-    its purpose remains meaningful.
-
-    (For example, a function in a library to compute square roots has
-    a purpose that is entirely well-defined independent of the
-    application.  Therefore, Subsection 2d requires that any
-    application-supplied function or table used by this function must
-    be optional: if the application does not supply it, the square
-    root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Library,
-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 Library, 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 Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library.  To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License.  (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.)  Do not make any other change in
-these notices.
-
-  Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
-  This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
-  4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you 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.
-
-  If distribution of 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 satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library".  Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
-  However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library".  The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
-  When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library.  The
-threshold for this to be true is not precisely defined by law.
-
-  If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work.  (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
-  Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-
-  6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
-  You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License.  You must supply a copy of this License.  If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License.  Also, you must do one
-of these things:
-
-    a) Accompany the work with the complete corresponding
-    machine-readable source code for the Library including whatever
-    changes were used in the work (which must be distributed under
-    Sections 1 and 2 above); and, if the work is an executable linked
-    with the Library, with the complete machine-readable "work that
-    uses the Library", as object code and/or source code, so that the
-    user can modify the Library and then relink to produce a modified
-    executable containing the modified Library.  (It is understood
-    that the user who changes the contents of definitions files in the
-    Library will not necessarily be able to recompile the application
-    to use the modified definitions.)
-
-    b) Use a suitable shared library mechanism for linking with the
-    Library.  A suitable mechanism is one that (1) uses at run time a
-    copy of the library already present on the user's computer system,
-    rather than copying library functions into the executable, and (2)
-    will operate properly with a modified version of the library, if
-    the user installs one, as long as the modified version is
-    interface-compatible with the version that the work was made with.
-
-    c) Accompany the work with a written offer, valid for at
-    least three years, to give the same user the materials
-    specified in Subsection 6a, above, for a charge no more
-    than the cost of performing this distribution.
-
-    d) If distribution of the work is made by offering access to copy
-    from a designated place, offer equivalent access to copy the above
-    specified materials from the same place.
-
-    e) Verify that the user has already received a copy of these
-    materials or that you have already sent this user a copy.
-
-  For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it.  However, as a special exception,
-the materials to be 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.
-
-  It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system.  Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-
-  7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
-    a) Accompany the combined library with a copy of the same work
-    based on the Library, uncombined with any other library
-    facilities.  This must be distributed under the terms of the
-    Sections above.
-
-    b) Give prominent notice with the combined library of the fact
-    that part of it is a work based on the Library, and explaining
-    where to find the accompanying uncombined form of the same work.
-
-  8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License.  Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library 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.
-
-  9. 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 Library or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
-  10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-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 with
-this License.
-
-  11. 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 Library at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Library 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 Library.
-
-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.
-
-  12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library 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.
-
-  13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser 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 Library
-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 Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-
-  14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-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
-
-  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "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
-LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-  16. 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 LIBRARY 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
-LIBRARY (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 LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), 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 Libraries
-
-  If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change.  You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms of the
-ordinary General Public License).
-
-  To apply these terms, attach the following notices to the library.  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 library's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Lesser General Public
-    License as published by the Free Software Foundation; either
-    version 2.1 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that 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 library; 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.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the library, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the
-  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
-
-  <signature of Ty Coon>, 1 April 1990
-  Ty Coon, President of Vice
-
-That's all there is to it!
-
-
diff --git a/libnoise/noise/INSTALL b/libnoise/noise/INSTALL
deleted file mode 100644
--- a/libnoise/noise/INSTALL
+++ /dev/null
@@ -1,34 +0,0 @@
-Installing libnoise:
-
-1.  Make!
-
-CXXFLAGS='-O3 -fomit-frame-pointer ...options of choice...' make
-
-Using compiler optimizations for libnoise is *strongly recommended*.  Using the
-unoptimized library is roughly a fifth as fast as using -O3 on my test
-computer.
-
-2.  Install!
-
-The 'include' directory should be copied to your software include directory,
-usually /usr/local/include, with an appropriate name.  I use
-
-  cp -R include /usr/local/include/noise
-
-Similarly, the *contents* of the 'lib' directory should go into your library
-directory (usually /usr/local/lib).  Once you've done that, run 'ldconfig',
-then make a symlink from LIBDIR/libnoise.so to LIBDIR/libnoise.so.0.  I use:
-
-  cp lib/* /usr/local/lib
-  ldconfig
-  ln -s /usr/local/lib/libnoise.so.0 /usr/local/lib/libnoise.so
-
-At this point, you should be able to include libnoise in your projects using
-
-  #include <noise/noise.h>
-
-and
-
-  g++ ...options... -lnoise
-
-At some point we'll automate this process.
diff --git a/libnoise/noise/Makefile b/libnoise/noise/Makefile
deleted file mode 100644
--- a/libnoise/noise/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-.PHONY: all doc src include
-all: doc src include lib
-clean: cleandoc cleansrc cleaninclude cleanlib
-install: installinclude installlib
-
-doc src include lib:
-	$(MAKE) -C $@
-
-lib: include
-
-cleandoc:
-	$(MAKE) -C doc clean
-cleansrc:
-	$(MAKE) -C src clean
-cleaninclude:
-	$(MAKE) -C include clean
-cleanlib:
-	$(MAKE) -C lib clean
-
-installinclude:
-	$(MAKE) -C include include
-installlib:
-	$(MAKE) -C lib include
diff --git a/libnoise/noise/doc/Doxyfile b/libnoise/noise/doc/Doxyfile
deleted file mode 100644
--- a/libnoise/noise/doc/Doxyfile
+++ /dev/null
@@ -1,215 +0,0 @@
-# Doxyfile 1.3.9.1
-
-#---------------------------------------------------------------------------
-# Project related configuration options
-#---------------------------------------------------------------------------
-PROJECT_NAME           = libnoise
-PROJECT_NUMBER         = 0.9.0
-OUTPUT_DIRECTORY       = .
-CREATE_SUBDIRS         = NO
-OUTPUT_LANGUAGE        = English
-USE_WINDOWS_ENCODING   = YES
-BRIEF_MEMBER_DESC      = YES
-REPEAT_BRIEF           = YES
-ABBREVIATE_BRIEF       = 
-ALWAYS_DETAILED_SEC    = NO
-INLINE_INHERITED_MEMB  = NO
-FULL_PATH_NAMES        = NO
-STRIP_FROM_PATH        = 
-STRIP_FROM_INC_PATH    = 
-SHORT_NAMES            = NO
-JAVADOC_AUTOBRIEF      = YES
-MULTILINE_CPP_IS_BRIEF = NO
-DETAILS_AT_TOP         = YES
-INHERIT_DOCS           = YES
-DISTRIBUTE_GROUP_DOC   = NO
-TAB_SIZE               = 2
-ALIASES                = 
-OPTIMIZE_OUTPUT_FOR_C  = NO
-OPTIMIZE_OUTPUT_JAVA   = NO
-SUBGROUPING            = YES
-#---------------------------------------------------------------------------
-# Build related configuration options
-#---------------------------------------------------------------------------
-EXTRACT_ALL            = NO
-EXTRACT_PRIVATE        = NO
-EXTRACT_STATIC         = NO
-EXTRACT_LOCAL_CLASSES  = NO
-EXTRACT_LOCAL_METHODS  = NO
-HIDE_UNDOC_MEMBERS     = NO
-HIDE_UNDOC_CLASSES     = NO
-HIDE_FRIEND_COMPOUNDS  = NO
-HIDE_IN_BODY_DOCS      = NO
-INTERNAL_DOCS          = NO
-CASE_SENSE_NAMES       = YES
-HIDE_SCOPE_NAMES       = NO
-SHOW_INCLUDE_FILES     = YES
-INLINE_INFO            = YES
-SORT_MEMBER_DOCS       = YES
-SORT_BRIEF_DOCS        = NO
-SORT_BY_SCOPE_NAME     = NO
-GENERATE_TODOLIST      = YES
-GENERATE_TESTLIST      = YES
-GENERATE_BUGLIST       = YES
-GENERATE_DEPRECATEDLIST= YES
-ENABLED_SECTIONS       = 
-MAX_INITIALIZER_LINES  = 30
-SHOW_USED_FILES        = YES
-SHOW_DIRECTORIES       = YES
-#---------------------------------------------------------------------------
-# configuration options related to warning and progress messages
-#---------------------------------------------------------------------------
-QUIET                  = NO
-WARNINGS               = YES
-WARN_IF_UNDOCUMENTED   = YES
-WARN_IF_DOC_ERROR      = YES
-WARN_FORMAT            = "$file:$line: $text"
-WARN_LOGFILE           = 
-#---------------------------------------------------------------------------
-# configuration options related to the input files
-#---------------------------------------------------------------------------
-INPUT                  = ../src/
-FILE_PATTERNS          = *.cpp \
-                         *.h
-RECURSIVE              = YES
-EXCLUDE                = 
-EXCLUDE_SYMLINKS       = NO
-EXCLUDE_PATTERNS       = 
-EXAMPLE_PATH           = 
-EXAMPLE_PATTERNS       = 
-EXAMPLE_RECURSIVE      = NO
-IMAGE_PATH             = img/
-INPUT_FILTER           = 
-FILTER_PATTERNS        = 
-FILTER_SOURCE_FILES    = NO
-#---------------------------------------------------------------------------
-# configuration options related to source browsing
-#---------------------------------------------------------------------------
-SOURCE_BROWSER         = NO
-INLINE_SOURCES         = NO
-STRIP_CODE_COMMENTS    = YES
-REFERENCED_BY_RELATION = YES
-REFERENCES_RELATION    = YES
-VERBATIM_HEADERS       = YES
-#---------------------------------------------------------------------------
-# configuration options related to the alphabetical class index
-#---------------------------------------------------------------------------
-ALPHABETICAL_INDEX     = NO
-COLS_IN_ALPHA_INDEX    = 5
-IGNORE_PREFIX          = 
-#---------------------------------------------------------------------------
-# configuration options related to the HTML output
-#---------------------------------------------------------------------------
-GENERATE_HTML          = YES
-HTML_OUTPUT            = html
-HTML_FILE_EXTENSION    = .html
-HTML_HEADER            = htmldata/templateheader.html
-HTML_FOOTER            = htmldata/templatefooter.html
-HTML_STYLESHEET        = htmldata/doxygen.css
-HTML_ALIGN_MEMBERS     = YES
-GENERATE_HTMLHELP      = NO
-CHM_FILE               = 
-HHC_LOCATION           = 
-GENERATE_CHI           = NO
-BINARY_TOC             = NO
-TOC_EXPAND             = NO
-DISABLE_INDEX          = NO
-ENUM_VALUES_PER_LINE   = 8
-GENERATE_TREEVIEW      = NO
-TREEVIEW_WIDTH         = 250
-#---------------------------------------------------------------------------
-# configuration options related to the LaTeX output
-#---------------------------------------------------------------------------
-GENERATE_LATEX         = NO
-LATEX_OUTPUT           = latex
-LATEX_CMD_NAME         = latex
-MAKEINDEX_CMD_NAME     = makeindex
-COMPACT_LATEX          = NO
-PAPER_TYPE             = a4wide
-EXTRA_PACKAGES         = 
-LATEX_HEADER           = 
-PDF_HYPERLINKS         = NO
-USE_PDFLATEX           = NO
-LATEX_BATCHMODE        = NO
-LATEX_HIDE_INDICES     = NO
-#---------------------------------------------------------------------------
-# configuration options related to the RTF output
-#---------------------------------------------------------------------------
-GENERATE_RTF           = NO
-RTF_OUTPUT             = rtf
-COMPACT_RTF            = NO
-RTF_HYPERLINKS         = NO
-RTF_STYLESHEET_FILE    = 
-RTF_EXTENSIONS_FILE    = 
-#---------------------------------------------------------------------------
-# configuration options related to the man page output
-#---------------------------------------------------------------------------
-GENERATE_MAN           = NO
-MAN_OUTPUT             = man
-MAN_EXTENSION          = .3
-MAN_LINKS              = NO
-#---------------------------------------------------------------------------
-# configuration options related to the XML output
-#---------------------------------------------------------------------------
-GENERATE_XML           = NO
-XML_OUTPUT             = xml
-XML_SCHEMA             = 
-XML_DTD                = 
-XML_PROGRAMLISTING     = YES
-#---------------------------------------------------------------------------
-# configuration options for the AutoGen Definitions output
-#---------------------------------------------------------------------------
-GENERATE_AUTOGEN_DEF   = NO
-#---------------------------------------------------------------------------
-# configuration options related to the Perl module output
-#---------------------------------------------------------------------------
-GENERATE_PERLMOD       = NO
-PERLMOD_LATEX          = NO
-PERLMOD_PRETTY         = YES
-PERLMOD_MAKEVAR_PREFIX = 
-#---------------------------------------------------------------------------
-# Configuration options related to the preprocessor   
-#---------------------------------------------------------------------------
-ENABLE_PREPROCESSING   = YES
-MACRO_EXPANSION        = NO
-EXPAND_ONLY_PREDEF     = NO
-SEARCH_INCLUDES        = NO
-INCLUDE_PATH           = 
-INCLUDE_FILE_PATTERNS  = 
-PREDEFINED             = DOXYGEN_SHOULD_SKIP_THIS
-EXPAND_AS_DEFINED      = 
-SKIP_FUNCTION_MACROS   = YES
-#---------------------------------------------------------------------------
-# Configuration::additions related to external references   
-#---------------------------------------------------------------------------
-TAGFILES               = 
-GENERATE_TAGFILE       = 
-ALLEXTERNALS           = NO
-EXTERNAL_GROUPS        = YES
-PERL_PATH              = /usr/bin/perl
-#---------------------------------------------------------------------------
-# Configuration options related to the dot tool   
-#---------------------------------------------------------------------------
-CLASS_DIAGRAMS         = YES
-HIDE_UNDOC_RELATIONS   = YES
-HAVE_DOT               = NO
-CLASS_GRAPH            = YES
-COLLABORATION_GRAPH    = YES
-UML_LOOK               = NO
-TEMPLATE_RELATIONS     = YES
-INCLUDE_GRAPH          = YES
-INCLUDED_BY_GRAPH      = YES
-CALL_GRAPH             = NO
-GRAPHICAL_HIERARCHY    = YES
-DOT_IMAGE_FORMAT       = png
-DOT_PATH               = 
-DOTFILE_DIRS           = 
-MAX_DOT_GRAPH_WIDTH    = 1024
-MAX_DOT_GRAPH_HEIGHT   = 1024
-MAX_DOT_GRAPH_DEPTH    = 0
-GENERATE_LEGEND        = YES
-DOT_CLEANUP            = YES
-#---------------------------------------------------------------------------
-# Configuration::additions related to the search engine   
-#---------------------------------------------------------------------------
-SEARCHENGINE           = NO
diff --git a/libnoise/noise/doc/Makefile b/libnoise/noise/doc/Makefile
deleted file mode 100644
--- a/libnoise/noise/doc/Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-# Also include the core source directory
-include ../src/Sources
-
-# Various binaries we're using
-DOXYGEN=`which doxygen`
-
-# Source code files
-
-html: Doxyfile $(HEADERS)
-	$(DOXYGEN) Doxyfile
-
-.PHONY: clean
-clean:
-	-rm -rf html
diff --git a/libnoise/noise/doc/html/abs_8h-source.html b/libnoise/noise/doc/html/abs_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/abs_8h-source.html
+++ /dev/null
@@ -1,181 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>abs.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// abs.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_ABS_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_ABS_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module {
-00032 
-00035 
-00038 
-00042 
-<a name="l00049"></a><a class="code" href="classnoise_1_1module_1_1Abs.html">00049</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Abs.html">Abs</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00050     {
-00051 
-00052       <span class="keyword">public</span>:
-00053 
-00055         <a class="code" href="classnoise_1_1module_1_1Abs.html">Abs</a> ();
-00056 
-<a name="l00057"></a><a class="code" href="classnoise_1_1module_1_1Abs.html#a1">00057</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00058 <span class="keyword">        </span>{
-00059           <span class="keywordflow">return</span> 1;
-00060         }
-00061 
-00062         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00063 
-00064     };
-00065 
-00067 
-00069 
-00071 
-00072   }
-00073 
-00074 }
-00075 
-00076 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/add_8h-source.html b/libnoise/noise/doc/html/add_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/add_8h-source.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>add.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// add.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_ADD_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_ADD_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036     
-00039     
-00043     
-<a name="l00050"></a><a class="code" href="classnoise_1_1module_1_1Add.html">00050</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Add.html">Add</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00051     {
-00052 
-00053       <span class="keyword">public</span>:
-00054 
-00056         <a class="code" href="classnoise_1_1module_1_1Add.html">Add</a> ();
-00057 
-<a name="l00058"></a><a class="code" href="classnoise_1_1module_1_1Add.html#a1">00058</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00059 <span class="keyword">        </span>{
-00060           <span class="keywordflow">return</span> 2;
-00061         }
-00062 
-00063         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00064 
-00065     };
-00066 
-00068 
-00070 
-00072 
-00073   }
-00074 
-00075 }
-00076 
-00077 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/annotated.html b/libnoise/noise/doc/html/annotated.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/annotated.html
+++ /dev/null
@@ -1,161 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindexHL" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>libnoise Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Abs.html">noise::module::Abs</a></td><td class="indexvalue">Noise module that outputs the absolute value of the output value from a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a></td><td class="indexvalue">Noise module that outputs the sum of the two output values from two source modules </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td class="indexvalue">Noise module that outputs three-dimensional "billowy" noise </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a></td><td class="indexvalue">Noise module that outputs a weighted blend of the output values from two source modules given the output value supplied by a control module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td class="indexvalue">Noise module that caches the last output value generated by a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Checkerboard.html">noise::module::Checkerboard</a></td><td class="indexvalue">Noise module that outputs a checkerboard pattern </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td class="indexvalue">Noise module that clamps the output value from a source module to a range of values </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a></td><td class="indexvalue">Noise module that outputs a constant value </td></tr>
-  <tr><td class="indexkey"><a class="el" href="structnoise_1_1module_1_1ControlPoint.html">noise::module::ControlPoint</a></td><td class="indexvalue">This structure defines a control point </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td class="indexvalue">Noise module that maps the output value from a source module onto an arbitrary function curve </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a></td><td class="indexvalue">Model that defines the surface of a cylinder </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a></td><td class="indexvalue">Noise module that outputs concentric cylinders </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td class="indexvalue">Noise module that uses three source modules to displace each coordinate of the input value before returning the output value from a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1Exception.html">noise::Exception</a></td><td class="indexvalue">Abstract base class for libnoise exceptions </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1ExceptionInvalidParam.html">noise::ExceptionInvalidParam</a></td><td class="indexvalue">Invalid parameter exception </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a></td><td class="indexvalue">No module exception </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1ExceptionOutOfMemory.html">noise::ExceptionOutOfMemory</a></td><td class="indexvalue">Out of memory exception </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1ExceptionUnknown.html">noise::ExceptionUnknown</a></td><td class="indexvalue">Unknown exception </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a></td><td class="indexvalue">Noise module that maps the output value from a source module onto an exponential curve </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Invert.html">noise::module::Invert</a></td><td class="indexvalue">Noise module that inverts the output value from a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td class="indexvalue">Model that defines the displacement of a line segment </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Max.html">noise::module::Max</a></td><td class="indexvalue">Noise module that outputs the larger of the two output values from two source modules </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Min.html">noise::module::Min</a></td><td class="indexvalue">Noise module that outputs the smaller of the two output values from two source modules </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td class="indexvalue">Abstract base class for noise modules </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Multiply.html">noise::module::Multiply</a></td><td class="indexvalue">Noise module that outputs the product of the two output values from two source modules </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td class="indexvalue">Noise module that outputs 3-dimensional <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a></td><td class="indexvalue">Model that defines the surface of a plane </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Power.html">noise::module::Power</a></td><td class="indexvalue">Noise module that raises the output value from a first source module to the power of the output value from a second source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td class="indexvalue">Noise module that outputs 3-dimensional ridged-multifractal noise </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td class="indexvalue">Noise module that rotates the input value around the origin before returning the output value from a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td class="indexvalue">Noise module that applies a scaling factor and a bias to the output value from a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td class="indexvalue">Noise module that scales the coordinates of the input value before returning the output value from a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td class="indexvalue">Noise module that outputs the value selected from one of two source modules chosen by the output value from a control module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a></td><td class="indexvalue">Model that defines the surface of a sphere </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a></td><td class="indexvalue">Noise module that outputs concentric spheres </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td class="indexvalue">Noise module that maps the output value from a source module onto a terrace-forming curve </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td class="indexvalue">Noise module that moves the coordinates of the input value before returning the output value from a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td class="indexvalue">Noise module that randomly displaces the input value before returning the output value from a source module </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td class="indexvalue">Noise module that outputs <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells </td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/background.png b/libnoise/noise/doc/html/background.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/background.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/basictypes_8h-source.html b/libnoise/noise/doc/html/basictypes_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/basictypes_8h-source.html
+++ /dev/null
@@ -1,171 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>basictypes.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// basictypes.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_BASICTYPES_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_BASICTYPES_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="comment">// You may need to modify these constants for your compiler or platform.</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00034 
-<a name="l00036"></a><a class="code" href="group__libnoise.html#ga0">00036</a>   <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> uint;
-00037 
-<a name="l00039"></a><a class="code" href="group__libnoise.html#ga1">00039</a>   <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> uint32;
-00040 
-<a name="l00042"></a><a class="code" href="group__libnoise.html#ga2">00042</a>   <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> uint16;
-00043 
-<a name="l00045"></a><a class="code" href="group__libnoise.html#ga3">00045</a>   <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> uint8;
-00046 
-<a name="l00048"></a><a class="code" href="group__libnoise.html#ga4">00048</a>   <span class="keyword">typedef</span> <span class="keywordtype">int</span> int32;
-00049 
-<a name="l00051"></a><a class="code" href="group__libnoise.html#ga5">00051</a>   <span class="keyword">typedef</span> <span class="keywordtype">short</span> int16;
-00052 
-<a name="l00054"></a><a class="code" href="group__libnoise.html#ga6">00054</a>   <span class="keyword">typedef</span> <span class="keywordtype">char</span> int8;
-00055 
-00057 
-00058 }
-00059 
-00060 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/billow_8h-source.html b/libnoise/noise/doc/html/billow_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/billow_8h-source.html
+++ /dev/null
@@ -1,273 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>billow.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// billow.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_BILLOW_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_BILLOW_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__generatormodules.html#ga0">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_BILLOW_FREQUENCY = 1.0;
-00045 
-<a name="l00047"></a><a class="code" href="group__generatormodules.html#ga1">00047</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_BILLOW_LACUNARITY = 2.0;
-00048 
-<a name="l00051"></a><a class="code" href="group__generatormodules.html#ga2">00051</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_BILLOW_OCTAVE_COUNT = 6;
-00052 
-<a name="l00055"></a><a class="code" href="group__generatormodules.html#ga3">00055</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_BILLOW_PERSISTENCE = 0.5;
-00056 
-<a name="l00058"></a><a class="code" href="group__generatormodules.html#ga4">00058</a>     <span class="keyword">const</span> noise::NoiseQuality DEFAULT_BILLOW_QUALITY = QUALITY_STD;
-00059 
-<a name="l00061"></a><a class="code" href="group__generatormodules.html#ga5">00061</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_BILLOW_SEED = 0;
-00062 
-<a name="l00065"></a><a class="code" href="group__generatormodules.html#ga6">00065</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> BILLOW_MAX_OCTAVE = 30;
-00066 
-<a name="l00078"></a><a class="code" href="classnoise_1_1module_1_1Billow.html">00078</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Billow.html">Billow</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00079     {
-00080 
-00081       <span class="keyword">public</span>:
-00082 
-00099         <a class="code" href="classnoise_1_1module_1_1Billow.html">Billow</a> ();
-00100 
-<a name="l00104"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a1">00104</a>         <span class="keywordtype">double</span> GetFrequency ()<span class="keyword"> const</span>
-00105 <span class="keyword">        </span>{
-00106           <span class="keywordflow">return</span> m_frequency;
-00107         }
-00108 
-<a name="l00115"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a2">00115</a>         <span class="keywordtype">double</span> GetLacunarity ()<span class="keyword"> const</span>
-00116 <span class="keyword">        </span>{
-00117           <span class="keywordflow">return</span> m_lacunarity;
-00118         }
-00119 
-<a name="l00126"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a3">00126</a>         noise::NoiseQuality GetNoiseQuality ()<span class="keyword"> const</span>
-00127 <span class="keyword">        </span>{
-00128           <span class="keywordflow">return</span> m_noiseQuality;
-00129         }
-00130 
-<a name="l00137"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a4">00137</a>         <span class="keywordtype">int</span> GetOctaveCount ()<span class="keyword"> const</span>
-00138 <span class="keyword">        </span>{
-00139           <span class="keywordflow">return</span> m_octaveCount;
-00140         }
-00141 
-<a name="l00147"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a5">00147</a>         <span class="keywordtype">double</span> GetPersistence ()<span class="keyword"> const</span>
-00148 <span class="keyword">        </span>{
-00149           <span class="keywordflow">return</span> m_persistence;
-00150         }
-00151 
-<a name="l00155"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a6">00155</a>         <span class="keywordtype">int</span> GetSeed ()<span class="keyword"> const</span>
-00156 <span class="keyword">        </span>{
-00157           <span class="keywordflow">return</span> m_seed;
-00158         }
-00159 
-<a name="l00160"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a7">00160</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00161 <span class="keyword">        </span>{
-00162           <span class="keywordflow">return</span> 0;
-00163         }
-00164 
-00165         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00166 
-<a name="l00170"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a9">00170</a>         <span class="keywordtype">void</span> SetFrequency (<span class="keywordtype">double</span> frequency)
-00171         {
-00172           m_frequency = frequency;
-00173         }
-00174 
-<a name="l00184"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a10">00184</a>         <span class="keywordtype">void</span> SetLacunarity (<span class="keywordtype">double</span> lacunarity)
-00185         {
-00186           m_lacunarity = lacunarity;
-00187         }
-00188 
-<a name="l00195"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a11">00195</a>         <span class="keywordtype">void</span> SetNoiseQuality (noise::NoiseQuality noiseQuality)
-00196         {
-00197           m_noiseQuality = noiseQuality;
-00198         }
-00199 
-<a name="l00216"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a12">00216</a>         <span class="keywordtype">void</span> SetOctaveCount (<span class="keywordtype">int</span> octaveCount)
-00217         {
-00218           <span class="keywordflow">if</span> (octaveCount &lt; 1 || octaveCount &gt; BILLOW_MAX_OCTAVE) {
-00219             <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionInvalidParam.html">noise::ExceptionInvalidParam</a> ();
-00220           }
-00221           m_octaveCount = octaveCount;
-00222         }
-00223 
-<a name="l00232"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a13">00232</a>         <span class="keywordtype">void</span> SetPersistence (<span class="keywordtype">double</span> persistence)
-00233         {
-00234           m_persistence = persistence;
-00235         }
-00236 
-<a name="l00240"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#a14">00240</a>         <span class="keywordtype">void</span> SetSeed (<span class="keywordtype">int</span> seed)
-00241         {
-00242           m_seed = seed;
-00243         }
-00244 
-00245       <span class="keyword">protected</span>:
-00246 
-<a name="l00248"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#p0">00248</a>         <span class="keywordtype">double</span> m_frequency;
-00249 
-<a name="l00251"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#p1">00251</a>         <span class="keywordtype">double</span> m_lacunarity;
-00252 
-<a name="l00254"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#p2">00254</a>         noise::NoiseQuality m_noiseQuality;
-00255 
-<a name="l00257"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#p3">00257</a>         <span class="keywordtype">int</span> m_octaveCount;
-00258 
-<a name="l00260"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#p4">00260</a>         <span class="keywordtype">double</span> m_persistence;
-00261 
-<a name="l00263"></a><a class="code" href="classnoise_1_1module_1_1Billow.html#p5">00263</a>         <span class="keywordtype">int</span> m_seed;
-00264 
-00265     };
-00266 
-00268 
-00270 
-00272 
-00273   }
-00274 
-00275 }
-00276 
-00277 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/blend_8h-source.html b/libnoise/noise/doc/html/blend_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/blend_8h-source.html
+++ /dev/null
@@ -1,196 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>blend.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// blend.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_BLEND_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_BLEND_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00043 
-<a name="l00070"></a><a class="code" href="classnoise_1_1module_1_1Blend.html">00070</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Blend.html">Blend</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00071     {
-00072 
-00073       <span class="keyword">public</span>:
-00074 
-00076         <a class="code" href="classnoise_1_1module_1_1Blend.html">Blend</a> ();
-00077 
-<a name="l00093"></a><a class="code" href="classnoise_1_1module_1_1Blend.html#a1">00093</a>         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; GetControlModule ()<span class="keyword"> const</span>
-00094 <span class="keyword">        </span>{
-00095           <span class="keywordflow">if</span> (m_pSourceModule == NULL || m_pSourceModule[2] == NULL) {
-00096             <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a> ();
-00097           }
-00098           <span class="keywordflow">return</span> *(m_pSourceModule[2]);
-00099         }
-00100 
-<a name="l00101"></a><a class="code" href="classnoise_1_1module_1_1Blend.html#a2">00101</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00102 <span class="keyword">        </span>{
-00103           <span class="keywordflow">return</span> 3;
-00104         }
-00105 
-00106         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00107 
-<a name="l00126"></a><a class="code" href="classnoise_1_1module_1_1Blend.html#a4">00126</a>         <span class="keywordtype">void</span> SetControlModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; controlModule)
-00127         {
-00128           assert (m_pSourceModule != NULL);
-00129           m_pSourceModule[2] = &amp;controlModule;
-00130         }
-00131 
-00132     };
-00133 
-00135 
-00137 
-00139 
-00140   }
-00141 
-00142 }
-00143 
-00144 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/cache_8h-source.html b/libnoise/noise/doc/html/cache_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/cache_8h-source.html
+++ /dev/null
@@ -1,200 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>cache.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// cache.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_CACHE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_CACHE_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00043 
-<a name="l00067"></a><a class="code" href="classnoise_1_1module_1_1Cache.html">00067</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Cache.html">Cache</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00068     {
-00069 
-00070       <span class="keyword">public</span>:
-00071 
-00073         <a class="code" href="classnoise_1_1module_1_1Cache.html">Cache</a> ();
-00074 
-<a name="l00075"></a><a class="code" href="classnoise_1_1module_1_1Cache.html#a1">00075</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00076 <span class="keyword">        </span>{
-00077           <span class="keywordflow">return</span> 1;
-00078         }
-00079 
-00080         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00081 
-<a name="l00082"></a><a class="code" href="classnoise_1_1module_1_1Cache.html#a3">00082</a>         <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetSourceModule (<span class="keywordtype">int</span> index, <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; sourceModule)
-00083         {
-00084           Module::SetSourceModule (index, sourceModule);
-00085           m_isCached = <span class="keyword">false</span>;
-00086         }
-00087 
-00088       <span class="keyword">protected</span>:
-00089 
-<a name="l00091"></a><a class="code" href="classnoise_1_1module_1_1Cache.html#p0">00091</a>         <span class="keyword">mutable</span> <span class="keywordtype">double</span> m_cachedValue;
-00092 
-<a name="l00095"></a><a class="code" href="classnoise_1_1module_1_1Cache.html#p1">00095</a>         <span class="keyword">mutable</span> <span class="keywordtype">double</span> m_isCached;
-00096 
-<a name="l00098"></a><a class="code" href="classnoise_1_1module_1_1Cache.html#p2">00098</a>         <span class="keyword">mutable</span> <span class="keywordtype">double</span> m_xCache;
-00099 
-<a name="l00101"></a><a class="code" href="classnoise_1_1module_1_1Cache.html#p3">00101</a>         <span class="keyword">mutable</span> <span class="keywordtype">double</span> m_yCache;
-00102 
-<a name="l00104"></a><a class="code" href="classnoise_1_1module_1_1Cache.html#p4">00104</a>         <span class="keyword">mutable</span> <span class="keywordtype">double</span> m_zCache;
-00105 
-00106     };
-00107 
-00109 
-00111 
-00113 
-00114   }
-00115 
-00116 }
-00117 
-00118 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/checkerboard_8h-source.html b/libnoise/noise/doc/html/checkerboard_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/checkerboard_8h-source.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>checkerboard.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// checkerboard.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_CHECKERBOARD_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_CHECKERBOARD_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00054"></a><a class="code" href="classnoise_1_1module_1_1Checkerboard.html">00054</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Checkerboard.html">Checkerboard</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00055     {
-00056 
-00057       <span class="keyword">public</span>:
-00058 
-00060         <a class="code" href="classnoise_1_1module_1_1Checkerboard.html">Checkerboard</a> ();
-00061 
-<a name="l00062"></a><a class="code" href="classnoise_1_1module_1_1Checkerboard.html#a1">00062</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00063 <span class="keyword">        </span>{
-00064         <span class="keywordflow">return</span> 0;
-00065         }
-00066 
-00067         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00068 
-00069     };
-00070 
-00072 
-00074 
-00076 
-00077   }
-00078 
-00079 }
-00080 
-00081 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/clamp_8h-source.html b/libnoise/noise/doc/html/clamp_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/clamp_8h-source.html
+++ /dev/null
@@ -1,204 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>clamp.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// clamp.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_CLAMP_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_CLAMP_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00045"></a><a class="code" href="group__modifiermodules.html#ga0">00045</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_CLAMP_LOWER_BOUND = -1.0;
-00046 
-<a name="l00049"></a><a class="code" href="group__modifiermodules.html#ga1">00049</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_CLAMP_UPPER_BOUND = 1.0;
-00050 
-<a name="l00069"></a><a class="code" href="classnoise_1_1module_1_1Clamp.html">00069</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Clamp.html">Clamp</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00070     {
-00071 
-00072       <span class="keyword">public</span>:
-00073 
-00081         <a class="code" href="classnoise_1_1module_1_1Clamp.html">Clamp</a> ();
-00082 
-<a name="l00090"></a><a class="code" href="classnoise_1_1module_1_1Clamp.html#a1">00090</a>         <span class="keywordtype">double</span> GetLowerBound ()<span class="keyword"> const</span>
-00091 <span class="keyword">        </span>{
-00092           <span class="keywordflow">return</span> m_lowerBound;
-00093         }
-00094 
-<a name="l00095"></a><a class="code" href="classnoise_1_1module_1_1Clamp.html#a2">00095</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00096 <span class="keyword">        </span>{
-00097           <span class="keywordflow">return</span> 1;
-00098         }
-00099 
-<a name="l00107"></a><a class="code" href="classnoise_1_1module_1_1Clamp.html#a3">00107</a>         <span class="keywordtype">double</span> GetUpperBound ()<span class="keyword"> const</span>
-00108 <span class="keyword">        </span>{
-00109           <span class="keywordflow">return</span> m_upperBound;
-00110         }
-00111 
-00112         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00113 
-00130         <span class="keywordtype">void</span> SetBounds (<span class="keywordtype">double</span> lowerBound, <span class="keywordtype">double</span> upperBound);
-00131 
-00132       <span class="keyword">protected</span>:
-00133 
-<a name="l00135"></a><a class="code" href="classnoise_1_1module_1_1Clamp.html#p0">00135</a>         <span class="keywordtype">double</span> m_lowerBound;
-00136 
-<a name="l00138"></a><a class="code" href="classnoise_1_1module_1_1Clamp.html#p1">00138</a>         <span class="keywordtype">double</span> m_upperBound;
-00139 
-00140     };
-00141 
-00143 
-00145 
-00147 
-00148   }
-00149 
-00150 }
-00151 
-00152 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1Exception.html b/libnoise/noise/doc/html/classnoise_1_1Exception.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1Exception.html
+++ /dev/null
@@ -1,141 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::Exception Class Reference<br>
-<small>
-[<a class="el" href="group__libnoise.html">libnoise</a>]</small>
-</h1><code>#include &lt;<a class="el" href="exception_8h-source.html">exception.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::Exception:
-<p><center><img src="classnoise_1_1Exception.png" usemap="#noise::Exception_map" border="0" alt=""></center>
-<map name="noise::Exception_map">
-<area href="classnoise_1_1ExceptionInvalidParam.html" alt="noise::ExceptionInvalidParam" shape="rect" coords="0,56,183,80">
-<area href="classnoise_1_1ExceptionNoModule.html" alt="noise::ExceptionNoModule" shape="rect" coords="193,56,376,80">
-<area href="classnoise_1_1ExceptionOutOfMemory.html" alt="noise::ExceptionOutOfMemory" shape="rect" coords="386,56,569,80">
-<area href="classnoise_1_1ExceptionUnknown.html" alt="noise::ExceptionUnknown" shape="rect" coords="579,56,762,80">
-</map>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Abstract base class for libnoise exceptions. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-</table>
-<hr>The documentation for this class was generated from the following file:<ul>
-<li><a class="el" href="exception_8h-source.html">exception.h</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1Exception.png b/libnoise/noise/doc/html/classnoise_1_1Exception.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1Exception.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1ExceptionInvalidParam.html b/libnoise/noise/doc/html/classnoise_1_1ExceptionInvalidParam.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1ExceptionInvalidParam.html
+++ /dev/null
@@ -1,140 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::ExceptionInvalidParam Class Reference<br>
-<small>
-[<a class="el" href="group__libnoise.html">libnoise</a>]</small>
-</h1><code>#include &lt;<a class="el" href="exception_8h-source.html">exception.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::ExceptionInvalidParam:
-<p><center><img src="classnoise_1_1ExceptionInvalidParam.png" usemap="#noise::ExceptionInvalidParam_map" border="0" alt=""></center>
-<map name="noise::ExceptionInvalidParam_map">
-<area href="classnoise_1_1Exception.html" alt="noise::Exception" shape="rect" coords="0,0,176,24">
-</map>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Invalid parameter exception. 
-<p>
-An invalid parameter was passed to a libnoise function or method. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-</table>
-<hr>The documentation for this class was generated from the following file:<ul>
-<li><a class="el" href="exception_8h-source.html">exception.h</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1ExceptionInvalidParam.png b/libnoise/noise/doc/html/classnoise_1_1ExceptionInvalidParam.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1ExceptionInvalidParam.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1ExceptionNoModule.html b/libnoise/noise/doc/html/classnoise_1_1ExceptionNoModule.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1ExceptionNoModule.html
+++ /dev/null
@@ -1,142 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::ExceptionNoModule Class Reference<br>
-<small>
-[<a class="el" href="group__libnoise.html">libnoise</a>]</small>
-</h1><code>#include &lt;<a class="el" href="exception_8h-source.html">exception.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::ExceptionNoModule:
-<p><center><img src="classnoise_1_1ExceptionNoModule.png" usemap="#noise::ExceptionNoModule_map" border="0" alt=""></center>
-<map name="noise::ExceptionNoModule_map">
-<area href="classnoise_1_1Exception.html" alt="noise::Exception" shape="rect" coords="0,0,161,24">
-</map>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-No module exception. 
-<p>
-Could not retrieve a source module from a noise module.<p>
-<dl compact><dt><b>Note:</b></dt><dd>If one or more required source modules were not connected to a specific noise module, and its GetValue() method was called, that method will raise a debug assertion instead of this exception. This is done for performance reasons. </dd></dl>
-
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-</table>
-<hr>The documentation for this class was generated from the following file:<ul>
-<li><a class="el" href="exception_8h-source.html">exception.h</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1ExceptionNoModule.png b/libnoise/noise/doc/html/classnoise_1_1ExceptionNoModule.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1ExceptionNoModule.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1ExceptionOutOfMemory.html b/libnoise/noise/doc/html/classnoise_1_1ExceptionOutOfMemory.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1ExceptionOutOfMemory.html
+++ /dev/null
@@ -1,140 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::ExceptionOutOfMemory Class Reference<br>
-<small>
-[<a class="el" href="group__libnoise.html">libnoise</a>]</small>
-</h1><code>#include &lt;<a class="el" href="exception_8h-source.html">exception.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::ExceptionOutOfMemory:
-<p><center><img src="classnoise_1_1ExceptionOutOfMemory.png" usemap="#noise::ExceptionOutOfMemory_map" border="0" alt=""></center>
-<map name="noise::ExceptionOutOfMemory_map">
-<area href="classnoise_1_1Exception.html" alt="noise::Exception" shape="rect" coords="0,0,183,24">
-</map>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Out of memory exception. 
-<p>
-There was not enough memory to perform an action. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-</table>
-<hr>The documentation for this class was generated from the following file:<ul>
-<li><a class="el" href="exception_8h-source.html">exception.h</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1ExceptionOutOfMemory.png b/libnoise/noise/doc/html/classnoise_1_1ExceptionOutOfMemory.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1ExceptionOutOfMemory.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1ExceptionUnknown.html b/libnoise/noise/doc/html/classnoise_1_1ExceptionUnknown.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1ExceptionUnknown.html
+++ /dev/null
@@ -1,140 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::ExceptionUnknown Class Reference<br>
-<small>
-[<a class="el" href="group__libnoise.html">libnoise</a>]</small>
-</h1><code>#include &lt;<a class="el" href="exception_8h-source.html">exception.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::ExceptionUnknown:
-<p><center><img src="classnoise_1_1ExceptionUnknown.png" usemap="#noise::ExceptionUnknown_map" border="0" alt=""></center>
-<map name="noise::ExceptionUnknown_map">
-<area href="classnoise_1_1Exception.html" alt="noise::Exception" shape="rect" coords="0,0,154,24">
-</map>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Unknown exception. 
-<p>
-libnoise raised an unknown exception. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-</table>
-<hr>The documentation for this class was generated from the following file:<ul>
-<li><a class="el" href="exception_8h-source.html">exception.h</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1ExceptionUnknown.png b/libnoise/noise/doc/html/classnoise_1_1ExceptionUnknown.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1ExceptionUnknown.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1model_1_1Cylinder-members.html b/libnoise/noise/doc/html/classnoise_1_1model_1_1Cylinder-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1model_1_1Cylinder-members.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::model::Cylinder Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a0">Cylinder</a>()</td><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a1">Cylinder</a>(const module::Module &amp;module)</td><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a2">GetModule</a>() const </td><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a3">GetValue</a>(double angle, double height) const </td><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a4">SetModule</a>(const module::Module &amp;module)</td><td><a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a></td><td><code> [inline]</code></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1model_1_1Cylinder.html b/libnoise/noise/doc/html/classnoise_1_1model_1_1Cylinder.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1model_1_1Cylinder.html
+++ /dev/null
@@ -1,312 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::model::Cylinder Class Reference<br>
-<small>
-[<a class="el" href="group__models.html">Models</a>]</small>
-</h1><code>#include &lt;<a class="el" href="cylinder_8h-source.html">cylinder.h</a>&gt;</code>
-<p>
-<a href="classnoise_1_1model_1_1Cylinder-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Model that defines the surface of a cylinder. 
-<p>
-<div align="center">
-<img src="modelcylinder.png" alt="modelcylinder.png">
-</div>
-<p>
-This model returns an output value from a noise module given the coordinates of an input value located on the surface of a cylinder.<p>
-To generate an output value, pass the (angle, height) coordinates of an input value to the <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a3">GetValue()</a> method.<p>
-This model is useful for creating:<ul>
-<li>seamless textures that can be mapped onto a cylinder</li></ul>
-<p>
-This cylinder has a radius of 1.0 unit and has infinite height. It is oriented along the <em>y</em> axis. Its center is located at the origin. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::model::Cylinder::Cylinder"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a0">Cylinder</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a1">Cylinder</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;module)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a2">GetModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the noise module that is used to generate the output values.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a3">GetValue</a> (double angle, double height) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the output value from the noise module given the (angle, height) coordinates of the specified input value located on the surface of the cylinder.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Cylinder.html#a4">SetModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;module)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the noise module that is used to generate the output values.  <a href="#a4"></a><br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::model::Cylinder::Cylinder"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Cylinder::Cylinder           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>module</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>The noise module that is used to generate the output values. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a2" doxytag="noise::model::Cylinder::GetModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; noise::model::Cylinder::GetModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the noise module that is used to generate the output values. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the noise module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A noise module was passed to the <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a4">SetModule()</a> method. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::model::Cylinder::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Cylinder::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>angle</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>height</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const</td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the output value from the noise module given the (angle, height) coordinates of the specified input value located on the surface of the cylinder. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>angle</em>&nbsp;</td><td>The angle around the cylinder's center, in degrees. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>height</em>&nbsp;</td><td>The height along the <em>y</em> axis.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value from the noise module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A noise module was passed to the <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a4">SetModule()</a> method.</dd></dl>
-This output value is generated by the noise module passed to the <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a4">SetModule()</a> method.<p>
-This cylinder has a radius of 1.0 unit and has infinite height. It is oriented along the <em>y</em> axis. Its center is located at the origin.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::model::Cylinder::SetModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::model::Cylinder::SetModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>module</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the noise module that is used to generate the output values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>The noise module that is used to generate the output values.</td></tr>
-  </table>
-</dl>
-This noise module must exist for the lifetime of this object, until you pass a new noise module to this method.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="cylinder_8h-source.html">cylinder.h</a><li>cylinder.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1model_1_1Line-members.html b/libnoise/noise/doc/html/classnoise_1_1model_1_1Line-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1model_1_1Line-members.html
+++ /dev/null
@@ -1,130 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::model::Line Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a2">GetAttenuate</a>() const </td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a3">GetModule</a>() const </td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a4">GetValue</a>(double p) const </td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a0">Line</a>()</td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a1">Line</a>(const module::Module &amp;module)</td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a5">SetAttenuate</a>(bool att)</td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a6">SetEndPoint</a>(double x, double y, double z)</td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a7">SetModule</a>(const module::Module &amp;module)</td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Line.html#a8">SetStartPoint</a>(double x, double y, double z)</td><td><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td><td><code> [inline]</code></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1model_1_1Line.html b/libnoise/noise/doc/html/classnoise_1_1model_1_1Line.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1model_1_1Line.html
+++ /dev/null
@@ -1,481 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::model::Line Class Reference<br>
-<small>
-[<a class="el" href="group__models.html">Models</a>]</small>
-</h1><code>#include &lt;<a class="el" href="line_8h-source.html">line.h</a>&gt;</code>
-<p>
-<a href="classnoise_1_1model_1_1Line-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Model that defines the displacement of a line segment. 
-<p>
-This model returns an output value from a noise module given the one-dimensional coordinate of an input value located on a line segment, which can be used as displacements.<p>
-This class is useful for creating:<ul>
-<li>roads and rivers</li><li>disaffected college students</li></ul>
-<p>
-To generate an output value, pass an input value between 0.0 and 1.0 to the <a class="el" href="classnoise_1_1model_1_1Line.html#a4">GetValue()</a> method. 0.0 represents the start position of the line segment and 1.0 represents the end position of the line segment. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::model::Line::Line"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a0">Line</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a1">Line</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;module)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a2">GetAttenuate</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a flag indicating whether the output value is to be attenuated (moved toward 0.0) as the ends of the line segment are approached by the input value.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a3">GetModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the noise module that is used to generate the output values.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a4">GetValue</a> (double p) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the output value from the noise module given the one-dimensional coordinate of the specified input value located on the line segment.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a5">SetAttenuate</a> (bool att)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets a flag indicating that the output value is to be attenuated (moved toward 0.0) as the ends of the line segment are approached.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a6">SetEndPoint</a> (double x, double y, double z)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the position ( <em>x</em>, <em>y</em>, <em>z</em> ) of the end of the line segment to choose values along.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a7">SetModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;module)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the noise module that is used to generate the output values.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html#a8">SetStartPoint</a> (double x, double y, double z)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the position ( <em>x</em>, <em>y</em>, <em>z</em> ) of the start of the line segment to choose values along.  <a href="#a8"></a><br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::model::Line::Line"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Line::Line           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>module</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>The noise module that is used to generate the output values. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a2" doxytag="noise::model::Line::GetAttenuate"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">bool noise::model::Line::GetAttenuate           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns a flag indicating whether the output value is to be attenuated (moved toward 0.0) as the ends of the line segment are approached by the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd><ul>
-<li><em>true</em> if the value is to be attenuated</li><li><em>false</em> if not. </li></ul>
-</dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::model::Line::GetModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; noise::model::Line::GetModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the noise module that is used to generate the output values. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the noise module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A noise module was passed to the <a class="el" href="classnoise_1_1model_1_1Line.html#a7">SetModule()</a> method. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::model::Line::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Line::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>p</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const</td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the output value from the noise module given the one-dimensional coordinate of the specified input value located on the line segment. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>The distance along the line segment (ranges from 0.0 to 1.0)</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value from the noise module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A noise module was passed to the <a class="el" href="classnoise_1_1model_1_1Line.html#a7">SetModule()</a> method. <p>
-The start and end points of the line segment were specified.</dd></dl>
-The output value is generated by the noise module passed to the <a class="el" href="classnoise_1_1model_1_1Line.html#a7">SetModule()</a> method. This value may be attenuated (moved toward 0.0) as <em>p</em> approaches either end of the line segment; this is the default behavior.<p>
-If the value is not to be attenuated, <em>p</em> can safely range outside the 0.0 to 1.0 range; the output value will be extrapolated along the line that this segment is part of.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::model::Line::SetAttenuate"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::model::Line::SetAttenuate           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">bool&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>att</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets a flag indicating that the output value is to be attenuated (moved toward 0.0) as the ends of the line segment are approached. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>att</em>&nbsp;</td><td>A flag that specifies whether the output value is to be attenuated. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::model::Line::SetEndPoint"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::model::Line::SetEndPoint           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the position ( <em>x</em>, <em>y</em>, <em>z</em> ) of the end of the line segment to choose values along. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>x coordinate of the end position. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>y coordinate of the end position. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>z coordinate of the end position. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::model::Line::SetModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::model::Line::SetModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>module</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the noise module that is used to generate the output values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>The noise module that is used to generate the output values.</td></tr>
-  </table>
-</dl>
-This noise module must exist for the lifetime of this object, until you pass a new noise module to this method.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::model::Line::SetStartPoint"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::model::Line::SetStartPoint           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the position ( <em>x</em>, <em>y</em>, <em>z</em> ) of the start of the line segment to choose values along. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>x coordinate of the start position. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>y coordinate of the start position. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>z coordinate of the start position. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="line_8h-source.html">line.h</a><li>line.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1model_1_1Plane-members.html b/libnoise/noise/doc/html/classnoise_1_1model_1_1Plane-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1model_1_1Plane-members.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::model::Plane Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Plane.html#a2">GetModule</a>() const </td><td><a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Plane.html#a3">GetValue</a>(double x, double z) const </td><td><a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Plane.html#a0">Plane</a>()</td><td><a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Plane.html#a1">Plane</a>(const module::Module &amp;module)</td><td><a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Plane.html#a4">SetModule</a>(const module::Module &amp;module)</td><td><a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a></td><td><code> [inline]</code></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1model_1_1Plane.html b/libnoise/noise/doc/html/classnoise_1_1model_1_1Plane.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1model_1_1Plane.html
+++ /dev/null
@@ -1,307 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::model::Plane Class Reference<br>
-<small>
-[<a class="el" href="group__models.html">Models</a>]</small>
-</h1><code>#include &lt;<a class="el" href="plane_8h-source.html">plane.h</a>&gt;</code>
-<p>
-<a href="classnoise_1_1model_1_1Plane-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Model that defines the surface of a plane. 
-<p>
-This model returns an output value from a noise module given the coordinates of an input value located on the surface of an ( <em>x</em>, <em>z</em> ) plane.<p>
-To generate an output value, pass the ( <em>x</em>, <em>z</em> ) coordinates of an input value to the <a class="el" href="classnoise_1_1model_1_1Plane.html#a3">GetValue()</a> method.<p>
-This model is useful for creating:<ul>
-<li>two-dimensional textures</li><li>terrain height maps for local areas</li></ul>
-<p>
-This plane extends infinitely in both directions. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::model::Plane::Plane"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Plane.html#a0">Plane</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Plane.html#a1">Plane</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;module)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Plane.html#a2">GetModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the noise module that is used to generate the output values.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Plane.html#a3">GetValue</a> (double x, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the output value from the noise module given the ( <em>x</em>, <em>z</em> ) coordinates of the specified input value located on the surface of the plane.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Plane.html#a4">SetModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;module)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the noise module that is used to generate the output values.  <a href="#a4"></a><br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::model::Plane::Plane"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Plane::Plane           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>module</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>The noise module that is used to generate the output values. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a2" doxytag="noise::model::Plane::GetModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; noise::model::Plane::GetModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the noise module that is used to generate the output values. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the noise module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A noise module was passed to the <a class="el" href="classnoise_1_1model_1_1Plane.html#a4">SetModule()</a> method. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::model::Plane::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Plane::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const</td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the output value from the noise module given the ( <em>x</em>, <em>z</em> ) coordinates of the specified input value located on the surface of the plane. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value from the noise module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A noise module was passed to the <a class="el" href="classnoise_1_1model_1_1Plane.html#a4">SetModule()</a> method.</dd></dl>
-This output value is generated by the noise module passed to the <a class="el" href="classnoise_1_1model_1_1Plane.html#a4">SetModule()</a> method.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::model::Plane::SetModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::model::Plane::SetModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>module</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the noise module that is used to generate the output values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>The noise module that is used to generate the output values.</td></tr>
-  </table>
-</dl>
-This noise module must exist for the lifetime of this object, until you pass a new noise module to this method.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="plane_8h-source.html">plane.h</a><li>plane.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1model_1_1Sphere-members.html b/libnoise/noise/doc/html/classnoise_1_1model_1_1Sphere-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1model_1_1Sphere-members.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::model::Sphere Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Sphere.html#a2">GetModule</a>() const </td><td><a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Sphere.html#a3">GetValue</a>(double lat, double lon) const </td><td><a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Sphere.html#a4">SetModule</a>(const module::Module &amp;module)</td><td><a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Sphere.html#a0">Sphere</a>()</td><td><a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1model_1_1Sphere.html#a1">Sphere</a>(const module::Module &amp;module)</td><td><a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1model_1_1Sphere.html b/libnoise/noise/doc/html/classnoise_1_1model_1_1Sphere.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1model_1_1Sphere.html
+++ /dev/null
@@ -1,313 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::model::Sphere Class Reference<br>
-<small>
-[<a class="el" href="group__models.html">Models</a>]</small>
-</h1><code>#include &lt;<a class="el" href="sphere_8h-source.html">sphere.h</a>&gt;</code>
-<p>
-<a href="classnoise_1_1model_1_1Sphere-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Model that defines the surface of a sphere. 
-<p>
-<div align="center">
-<img src="modelsphere.png" alt="modelsphere.png">
-</div>
-<p>
-This model returns an output value from a noise module given the coordinates of an input value located on the surface of a sphere.<p>
-To generate an output value, pass the (latitude, longitude) coordinates of an input value to the <a class="el" href="classnoise_1_1model_1_1Sphere.html#a3">GetValue()</a> method.<p>
-This model is useful for creating:<ul>
-<li>seamless textures that can be mapped onto a sphere</li><li>terrain height maps for entire planets</li></ul>
-<p>
-This sphere has a radius of 1.0 unit and its center is located at the origin. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::model::Sphere::Sphere"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Sphere.html#a0">Sphere</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Sphere.html#a1">Sphere</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;module)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Sphere.html#a2">GetModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the noise module that is used to generate the output values.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Sphere.html#a3">GetValue</a> (double lat, double lon) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the output value from the noise module given the (latitude, longitude) coordinates of the specified input value located on the surface of the sphere.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Sphere.html#a4">SetModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;module)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the noise module that is used to generate the output values.  <a href="#a4"></a><br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::model::Sphere::Sphere"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Sphere::Sphere           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>module</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>The noise module that is used to generate the output values. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a2" doxytag="noise::model::Sphere::GetModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; noise::model::Sphere::GetModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the noise module that is used to generate the output values. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the noise module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A noise module was passed to the <a class="el" href="classnoise_1_1model_1_1Sphere.html#a4">SetModule()</a> method. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::model::Sphere::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Sphere::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>lat</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>lon</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const</td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the output value from the noise module given the (latitude, longitude) coordinates of the specified input value located on the surface of the sphere. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>lat</em>&nbsp;</td><td>The latitude of the input value, in degrees. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>lon</em>&nbsp;</td><td>The longitude of the input value, in degrees.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value from the noise module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A noise module was passed to the <a class="el" href="classnoise_1_1model_1_1Sphere.html#a4">SetModule()</a> method.</dd></dl>
-This output value is generated by the noise module passed to the <a class="el" href="classnoise_1_1model_1_1Sphere.html#a4">SetModule()</a> method.<p>
-Use a negative latitude if the input value is located on the southern hemisphere.<p>
-Use a negative longitude if the input value is located on the western hemisphere.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::model::Sphere::SetModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::model::Sphere::SetModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">module::Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>module</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the noise module that is used to generate the output values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>The noise module that is used to generate the output values.</td></tr>
-  </table>
-</dl>
-This noise module must exist for the lifetime of this object, until you pass a new noise module to this method.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="sphere_8h-source.html">sphere.h</a><li>sphere.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs-members.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Abs Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Abs.html">noise::module::Abs</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Abs.html#a0">Abs</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Abs.html">noise::module::Abs</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Abs.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Abs.html">noise::module::Abs</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Abs.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Abs.html">noise::module::Abs</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs.html
+++ /dev/null
@@ -1,245 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Abs Class Reference<br>
-<small>
-[<a class="el" href="group__modifiermodules.html">Modifier Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="abs_8h-source.html">abs.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Abs:
-<p><center><img src="classnoise_1_1module_1_1Abs.png" usemap="#noise::module::Abs_map" border="0" alt=""></center>
-<map name="noise::module::Abs_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Abs-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs the absolute value of the output value from a source module. 
-<p>
-<div align="center">
-<img src="moduleabs.png" alt="moduleabs.png">
-</div>
-<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Abs::Abs"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Abs.html#a0">Abs</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Abs.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Abs.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Abs::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Abs::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Abs::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Abs::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Abs.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="abs_8h-source.html">abs.h</a><li>abs.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Abs.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Add-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Add-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Add-members.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Add Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Add.html#a0">Add</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Add.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Add.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Add.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Add.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Add.html
+++ /dev/null
@@ -1,245 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Add Class Reference<br>
-<small>
-[<a class="el" href="group__combinermodules.html">Combiner Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="add_8h-source.html">add.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Add:
-<p><center><img src="classnoise_1_1module_1_1Add.png" usemap="#noise::module::Add_map" border="0" alt=""></center>
-<map name="noise::module::Add_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Add-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs the sum of the two output values from two source modules. 
-<p>
-<div align="center">
-<img src="moduleadd.png" alt="moduleadd.png">
-</div>
-<p>
-This noise module requires two source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Add::Add"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Add.html#a0">Add</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Add.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Add.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Add::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Add::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Add::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Add::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Add.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="add_8h-source.html">add.h</a><li>add.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Add.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Add.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Add.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow-members.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Billow Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a0">Billow</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a1">GetFrequency</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a2">GetLacunarity</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a3">GetNoiseQuality</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a4">GetOctaveCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a5">GetPersistence</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a6">GetSeed</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a7">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a8">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#p0">m_frequency</a></td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#p1">m_lacunarity</a></td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#p2">m_noiseQuality</a></td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#p3">m_octaveCount</a></td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#p4">m_persistence</a></td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#p5">m_seed</a></td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a9">SetFrequency</a>(double frequency)</td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a10">SetLacunarity</a>(double lacunarity)</td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a11">SetNoiseQuality</a>(noise::NoiseQuality noiseQuality)</td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a12">SetOctaveCount</a>(int octaveCount)</td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a13">SetPersistence</a>(double persistence)</td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Billow.html#a14">SetSeed</a>(int seed)</td><td><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow.html
+++ /dev/null
@@ -1,739 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Billow Class Reference<br>
-<small>
-[<a class="el" href="group__generatormodules.html">Generator Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="billow_8h-source.html">billow.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Billow:
-<p><center><img src="classnoise_1_1module_1_1Billow.png" usemap="#noise::module::Billow_map" border="0" alt=""></center>
-<map name="noise::module::Billow_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Billow-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs three-dimensional "billowy" noise. 
-<p>
-<div align="center">
-<img src="modulebillow.png" alt="modulebillow.png">
-</div>
-<p>
-This noise module generates "billowy" noise suitable for clouds and rocks.<p>
-This noise module is nearly identical to <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> except this noise module modifies each octave with an absolute-value function. See the documentation of <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> for more information. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a0">Billow</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a1">GetFrequency</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the frequency of the first octave.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a2">GetLacunarity</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the lacunarity of the billowy noise.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a3">GetNoiseQuality</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the quality of the billowy noise.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a4">GetOctaveCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of octaves that generate the billowy noise.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a5">GetPersistence</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the persistence value of the billowy noise.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a6">GetSeed</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the seed value used by the billowy-noise function.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a7">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a8">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a9">SetFrequency</a> (double frequency)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the frequency of the first octave.  <a href="#a9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a10">SetLacunarity</a> (double lacunarity)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the lacunarity of the billowy noise.  <a href="#a10"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a11">SetNoiseQuality</a> (<a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> noiseQuality)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the quality of the billowy noise.  <a href="#a11"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a12">SetOctaveCount</a> (int octaveCount)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the number of octaves that generate the billowy noise.  <a href="#a12"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a13">SetPersistence</a> (double persistence)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the persistence value of the billowy noise.  <a href="#a13"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#a14">SetSeed</a> (int seed)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the seed value used by the billowy-noise function.  <a href="#a14"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Billow::m_frequency"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#p0">m_frequency</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency of the first octave. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Billow::m_lacunarity"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#p1">m_lacunarity</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency multiplier between successive octaves. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::Billow::m_noiseQuality"></a>
-<a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#p2">m_noiseQuality</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Quality of the billowy noise. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p3" doxytag="noise::module::Billow::m_octaveCount"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#p3">m_octaveCount</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Total number of octaves that generate the billowy noise. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p4" doxytag="noise::module::Billow::m_persistence"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#p4">m_persistence</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Persistence value of the billowy noise. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p5" doxytag="noise::module::Billow::m_seed"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html#p5">m_seed</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seed value used by the billowy-noise function. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Billow::Billow"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Billow::Billow           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default frequency is set to <a class="el" href="group__generatormodules.html#ga0">noise::module::DEFAULT_BILLOW_FREQUENCY</a>.<p>
-The default lacunarity is set to <a class="el" href="group__generatormodules.html#ga1">noise::module::DEFAULT_BILLOW_LACUNARITY</a>.<p>
-The default number of octaves is set to <a class="el" href="group__generatormodules.html#ga2">noise::module::DEFAULT_BILLOW_OCTAVE_COUNT</a>.<p>
-The default persistence value is set to <a class="el" href="group__generatormodules.html#ga3">noise::module::DEFAULT_BILLOW_PERSISTENCE</a>.<p>
-The default seed value is set to <a class="el" href="group__generatormodules.html#ga5">noise::module::DEFAULT_BILLOW_SEED</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Billow::GetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Billow::GetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the frequency of the first octave. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The frequency of the first octave. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Billow::GetLacunarity"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Billow::GetLacunarity           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the lacunarity of the billowy noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The lacunarity of the billowy noise.</dd></dl>
-The lacunarity is the frequency multiplier between successive octaves.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Billow::GetNoiseQuality"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> noise::module::Billow::GetNoiseQuality           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the quality of the billowy noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The quality of the billowy noise.</dd></dl>
-See <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> for definitions of the various coherent-noise qualities.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Billow::GetOctaveCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::Billow::GetOctaveCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of octaves that generate the billowy noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of octaves that generate the billowy noise.</dd></dl>
-The number of octaves controls the amount of detail in the billowy noise.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Billow::GetPersistence"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Billow::GetPersistence           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the persistence value of the billowy noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The persistence value of the billowy noise.</dd></dl>
-The persistence value controls the roughness of the billowy noise.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::Billow::GetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::Billow::GetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the seed value used by the billowy-noise function. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The seed value. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::Billow::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Billow::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::Billow::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Billow::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Billow.html#a7">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::Billow::SetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Billow::SetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>frequency</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the frequency of the first octave. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>frequency</em>&nbsp;</td><td>The frequency of the first octave. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a10" doxytag="noise::module::Billow::SetLacunarity"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Billow::SetLacunarity           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>lacunarity</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the lacunarity of the billowy noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>lacunarity</em>&nbsp;</td><td>The lacunarity of the billowy noise.</td></tr>
-  </table>
-</dl>
-The lacunarity is the frequency multiplier between successive octaves.<p>
-For best results, set the lacunarity to a number between 1.5 and 3.5.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a11" doxytag="noise::module::Billow::SetNoiseQuality"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Billow::SetNoiseQuality           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>noiseQuality</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the quality of the billowy noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noiseQuality</em>&nbsp;</td><td>The quality of the billowy noise.</td></tr>
-  </table>
-</dl>
-See <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> for definitions of the various coherent-noise qualities.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a12" doxytag="noise::module::Billow::SetOctaveCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Billow::SetOctaveCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>octaveCount</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the number of octaves that generate the billowy noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>octaveCount</em>&nbsp;</td><td>The number of octaves that generate the billowy noise.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The number of octaves ranges from 1 to <a class="el" href="group__generatormodules.html#ga6">noise::module::BILLOW_MAX_OCTAVE</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-The number of octaves controls the amount of detail in the billowy noise.<p>
-The larger the number of octaves, the more time required to calculate the billowy-noise value.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a13" doxytag="noise::module::Billow::SetPersistence"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Billow::SetPersistence           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>persistence</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the persistence value of the billowy noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>persistence</em>&nbsp;</td><td>The persistence value of the billowy noise.</td></tr>
-  </table>
-</dl>
-The persistence value controls the roughness of the billowy noise.<p>
-For best results, set the persistence value to a number between 0.0 and 1.0.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a14" doxytag="noise::module::Billow::SetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Billow::SetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>seed</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the seed value used by the billowy-noise function. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>The seed value. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="billow_8h-source.html">billow.h</a><li>billow.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Billow.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend-members.html
+++ /dev/null
@@ -1,131 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Blend Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Blend.html#a0">Blend</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Blend.html#a1">GetControlModule</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Blend.html#a2">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Blend.html#a3">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Blend.html#a4">SetControlModule</a>(const Module &amp;controlModule)</td><td><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend.html
+++ /dev/null
@@ -1,329 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Blend Class Reference<br>
-<small>
-[<a class="el" href="group__selectormodules.html">Selector Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="blend_8h-source.html">blend.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Blend:
-<p><center><img src="classnoise_1_1module_1_1Blend.png" usemap="#noise::module::Blend_map" border="0" alt=""></center>
-<map name="noise::module::Blend_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Blend-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs a weighted blend of the output values from two source modules given the output value supplied by a control module. 
-<p>
-<div align="center">
-<img src="moduleblend.png" alt="moduleblend.png">
-</div>
-<p>
-Unlike most other noise modules, the index value assigned to a source module determines its role in the blending operation:<ul>
-<li>Source module 0 (upper left in the diagram) outputs one of the values to blend.</li><li>Source module 1 (lower left in the diagram) outputs one of the values to blend.</li><li>Source module 2 (bottom of the diagram) is known as the <em>control module</em>. The control module determines the weight of the blending operation. Negative values weigh the blend towards the output value from the source module with an index value of 0. Positive values weigh the blend towards the output value from the source module with an index value of 1.</li></ul>
-<p>
-An application can pass the control module to the <a class="el" href="classnoise_1_1module_1_1Blend.html#a4">SetControlModule()</a> method instead of the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. This may make the application code easier to read.<p>
-This noise module uses linear interpolation to perform the blending operation.<p>
-This noise module requires three source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Blend::Blend"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Blend.html#a0">Blend</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Blend.html#a1">GetControlModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the control module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Blend.html#a2">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Blend.html#a3">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Blend.html#a4">SetControlModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;controlModule)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the control module.  <a href="#a4"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Blend::GetControlModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; noise::module::Blend::GetControlModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the control module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the control module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A control module has been added to this noise module via a call to <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> or <a class="el" href="classnoise_1_1module_1_1Blend.html#a4">SetControlModule()</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionNoModule</em>&nbsp;</td><td>See the preconditions for more information.</td></tr>
-  </table>
-</dl>
-The control module determines the weight of the blending operation. Negative values weigh the blend towards the output value from the source module with an index value of 0. Positive values weigh the blend towards the output value from the source module with an index value of 1.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Blend::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Blend::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Blend::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Blend::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Blend.html#a2">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Blend::SetControlModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Blend::SetControlModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>controlModule</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the control module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>controlModule</em>&nbsp;</td><td>The control module.</td></tr>
-  </table>
-</dl>
-The control module determines the weight of the blending operation. Negative values weigh the blend towards the output value from the source module with an index value of 0. Positive values weigh the blend towards the output value from the source module with an index value of 1.<p>
-This method assigns the control module an index value of 2. Passing the control module to this method produces the same results as passing the control module to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method while assigning that noise module an index value of 2.<p>
-This control module must exist throughout the lifetime of this noise module unless another control module replaces that control module.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="blend_8h-source.html">blend.h</a><li>blend.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Blend.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache-members.html
+++ /dev/null
@@ -1,134 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Cache Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#a0">Cache</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#p0">m_cachedValue</a></td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td><code> [mutable, protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#p1">m_isCached</a></td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td><code> [mutable, protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#p2">m_xCache</a></td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td><code> [mutable, protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#p3">m_yCache</a></td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td><code> [mutable, protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#p4">m_zCache</a></td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td><code> [mutable, protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cache.html#a3">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache.html
+++ /dev/null
@@ -1,326 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Cache Class Reference<br>
-<small>
-[<a class="el" href="group__miscmodules.html">Miscellaneous Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="cache_8h-source.html">cache.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Cache:
-<p><center><img src="classnoise_1_1module_1_1Cache.png" usemap="#noise::module::Cache_map" border="0" alt=""></center>
-<map name="noise::module::Cache_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Cache-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that caches the last output value generated by a source module. 
-<p>
-If an application passes an input value to the <a class="el" href="classnoise_1_1module_1_1Cache.html#a2">GetValue()</a> method that differs from the previously passed-in input value, this noise module instructs the source module to calculate the output value. This value, as well as the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value, are stored (cached) in this noise module.<p>
-If the application passes an input value to the <a class="el" href="classnoise_1_1module_1_1Cache.html#a2">GetValue()</a> method that is equal to the previously passed-in input value, this noise module returns the cached output value without having the source module recalculate the output value.<p>
-If an application passes a new source module to the <a class="el" href="classnoise_1_1module_1_1Cache.html#a3">SetSourceModule()</a> method, the cache is invalidated.<p>
-Caching a noise module is useful if it is used as a source module for multiple noise modules. If a source module is not cached, the source module will redundantly calculate the same output value once for each noise module in which it is included.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Cache::Cache"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#a0">Cache</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#a3">SetSourceModule</a> (int index, const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;sourceModule)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Connects a source module to this noise module.  <a href="#a3"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Cache::m_cachedValue"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#p0">m_cachedValue</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The cached output value at the cached input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Cache::m_isCached"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#p1">m_isCached</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines if a cached output value is stored in this noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::Cache::m_xCache"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#p2">m_xCache</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><em>x</em> coordinate of the cached input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p3" doxytag="noise::module::Cache::m_yCache"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#p3">m_yCache</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><em>y</em> coordinate of the cached input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p4" doxytag="noise::module::Cache::m_zCache"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html#p4">m_zCache</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><em>z</em> coordinate of the cached input value. <br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Cache::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Cache::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Cache::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Cache::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Cache.html#a3">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Cache.html#a3">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Cache.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Cache::SetSourceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual void noise::module::Cache::SetSourceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname" nowrap> <em>index</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>sourceModule</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Connects a source module to this noise module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>index</em>&nbsp;</td><td>An index value to assign to this source module. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>sourceModule</em>&nbsp;</td><td>The source module to attach.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The index value ranges from 0 to one less than the number of source modules required by this noise module.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-A noise module mathematically combines the output values from the source modules to generate the value returned by <a class="el" href="classnoise_1_1module_1_1Cache.html#a2">GetValue()</a>.<p>
-The index value to assign a source module is a unique identifier for that source module. If an index value has already been assigned to a source module, this noise module replaces the old source module with the new source module.<p>
-Before an application can call the <a class="el" href="classnoise_1_1module_1_1Cache.html#a2">GetValue()</a> method, it must first connect all required source modules. To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Cache.html#a1">GetSourceModuleCount()</a> method.<p>
-This source module must exist throughout the lifetime of this noise module unless another source module replaces that source module.<p>
-A noise module does not modify a source module; it only modifies its output values. 
-<p>
-Reimplemented from <a class="el" href="classnoise_1_1module_1_1Module.html#a5">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="cache_8h-source.html">cache.h</a><li>cache.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cache.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard-members.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Checkerboard Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Checkerboard.html">noise::module::Checkerboard</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a0">Checkerboard</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Checkerboard.html">noise::module::Checkerboard</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Checkerboard.html">noise::module::Checkerboard</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Checkerboard.html">noise::module::Checkerboard</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard.html
+++ /dev/null
@@ -1,247 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Checkerboard Class Reference<br>
-<small>
-[<a class="el" href="group__generatormodules.html">Generator Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="checkerboard_8h-source.html">checkerboard.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Checkerboard:
-<p><center><img src="classnoise_1_1module_1_1Checkerboard.png" usemap="#noise::module::Checkerboard_map" border="0" alt=""></center>
-<map name="noise::module::Checkerboard_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,175,24">
-</map>
-<a href="classnoise_1_1module_1_1Checkerboard-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs a checkerboard pattern. 
-<p>
-<div align="center">
-<img src="modulecheckerboard.png" alt="modulecheckerboard.png">
-</div>
-<p>
-This noise module outputs unit-sized blocks of alternating values. The values of these blocks alternate between -1.0 and +1.0.<p>
-This noise module is not really useful by itself, but it is often used for debugging purposes.<p>
-This noise module does not require any source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Checkerboard::Checkerboard"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a0">Checkerboard</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Checkerboard::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Checkerboard::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Checkerboard::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Checkerboard::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="checkerboard_8h-source.html">checkerboard.h</a><li>checkerboard.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Checkerboard.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp-members.html
+++ /dev/null
@@ -1,134 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Clamp Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Clamp.html#a0">Clamp</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Clamp.html#a1">GetLowerBound</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Clamp.html#a2">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Clamp.html#a3">GetUpperBound</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Clamp.html#a4">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Clamp.html#p0">m_lowerBound</a></td><td><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Clamp.html#p1">m_upperBound</a></td><td><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Clamp.html#a5">SetBounds</a>(double lowerBound, double upperBound)</td><td><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp.html
+++ /dev/null
@@ -1,407 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Clamp Class Reference<br>
-<small>
-[<a class="el" href="group__modifiermodules.html">Modifier Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="clamp_8h-source.html">clamp.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Clamp:
-<p><center><img src="classnoise_1_1module_1_1Clamp.png" usemap="#noise::module::Clamp_map" border="0" alt=""></center>
-<map name="noise::module::Clamp_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Clamp-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that clamps the output value from a source module to a range of values. 
-<p>
-<div align="center">
-<img src="moduleclamp.png" alt="moduleclamp.png">
-</div>
-<p>
-The range of values in which to clamp the output value is called the <em>clamping range</em>.<p>
-If the output value from the source module is less than the lower bound of the clamping range, this noise module clamps that value to the lower bound. If the output value from the source module is greater than the upper bound of the clamping range, this noise module clamps that value to the upper bound.<p>
-To specify the upper and lower bounds of the clamping range, call the <a class="el" href="classnoise_1_1module_1_1Clamp.html#a5">SetBounds()</a> method.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html#a0">Clamp</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html#a1">GetLowerBound</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the lower bound of the clamping range.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html#a2">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html#a3">GetUpperBound</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the upper bound of the clamping range.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html#a4">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html#a5">SetBounds</a> (double lowerBound, double upperBound)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the lower and upper bounds of the clamping range.  <a href="#a5"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Clamp::m_lowerBound"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html#p0">m_lowerBound</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Lower bound of the clamping range. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Clamp::m_upperBound"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html#p1">m_upperBound</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Upper bound of the clamping range. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Clamp::Clamp"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Clamp::Clamp           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default lower bound of the clamping range is set to <a class="el" href="group__modifiermodules.html#ga0">noise::module::DEFAULT_CLAMP_LOWER_BOUND</a>.<p>
-The default upper bound of the clamping range is set to <a class="el" href="group__modifiermodules.html#ga1">noise::module::DEFAULT_CLAMP_UPPER_BOUND</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Clamp::GetLowerBound"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Clamp::GetLowerBound           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the lower bound of the clamping range. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The lower bound.</dd></dl>
-If the output value from the source module is less than the lower bound of the clamping range, this noise module clamps that value to the lower bound.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Clamp::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Clamp::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Clamp::GetUpperBound"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Clamp::GetUpperBound           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the upper bound of the clamping range. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The upper bound.</dd></dl>
-If the output value from the source module is greater than the upper bound of the clamping range, this noise module clamps that value to the upper bound.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Clamp::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Clamp::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Clamp.html#a2">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Clamp::SetBounds"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Clamp::SetBounds           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>lowerBound</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>upperBound</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the lower and upper bounds of the clamping range. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>lowerBound</em>&nbsp;</td><td>The lower bound. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>upperBound</em>&nbsp;</td><td>The upper bound.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The lower bound must be less than or equal to the upper bound.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-If the output value from the source module is less than the lower bound of the clamping range, this noise module clamps that value to the lower bound. If the output value from the source module is greater than the upper bound of the clamping range, this noise module clamps that value to the upper bound.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="clamp_8h-source.html">clamp.h</a><li>clamp.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Clamp.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Const-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Const-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Const-members.html
+++ /dev/null
@@ -1,132 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Const Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Const.html#a0">Const</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Const.html#a1">GetConstValue</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Const.html#a2">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Const.html#a3">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Const.html#p0">m_constValue</a></td><td><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Const.html#a4">SetConstValue</a>(double constValue)</td><td><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Const.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Const.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Const.html
+++ /dev/null
@@ -1,352 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Const Class Reference<br>
-<small>
-[<a class="el" href="group__generatormodules.html">Generator Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="const_8h-source.html">const.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Const:
-<p><center><img src="classnoise_1_1module_1_1Const.png" usemap="#noise::module::Const_map" border="0" alt=""></center>
-<map name="noise::module::Const_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Const-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs a constant value. 
-<p>
-<div align="center">
-<img src="moduleconst.png" alt="moduleconst.png">
-</div>
-<p>
-To specify the constant value, call the <a class="el" href="classnoise_1_1module_1_1Const.html#a4">SetConstValue()</a> method.<p>
-This noise module is not useful by itself, but it is often used as a source module for other noise modules.<p>
-This noise module does not require any source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Const.html#a0">Const</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Const.html#a1">GetConstValue</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the constant output value for this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Const.html#a2">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Const.html#a3">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Const.html#a4">SetConstValue</a> (double constValue)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the constant output value for this noise module.  <a href="#a4"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Const::m_constValue"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Const.html#p0">m_constValue</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constant value. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Const::Const"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Const::Const           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default constant value is set to <a class="el" href="group__generatormodules.html#ga7">noise::module::DEFAULT_CONST_VALUE</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Const::GetConstValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Const::GetConstValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the constant output value for this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The constant output value for this noise module. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Const::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Const::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Const::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual double noise::module::Const::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Const.html#a2">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Const::SetConstValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Const::SetConstValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>constValue</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the constant output value for this noise module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>constValue</em>&nbsp;</td><td>The constant output value for this noise module. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="const_8h-source.html">const.h</a><li>const.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Const.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Const.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Const.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve-members.html
+++ /dev/null
@@ -1,138 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Curve Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#a2">AddControlPoint</a>(double inputValue, double outputValue)</td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#a3">ClearAllControlPoints</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#a0">Curve</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#b0">FindInsertionPos</a>(double inputValue)</td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#a4">GetControlPointArray</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#a5">GetControlPointCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#a6">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#a7">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#b1">InsertAtPos</a>(int insertionPos, double inputValue, double outputValue)</td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#p0">m_controlPointCount</a></td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#p1">m_pControlPoints</a></td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Curve.html#a1">~Curve</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve.html
+++ /dev/null
@@ -1,521 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Curve Class Reference<br>
-<small>
-[<a class="el" href="group__modifiermodules.html">Modifier Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="curve_8h-source.html">curve.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Curve:
-<p><center><img src="classnoise_1_1module_1_1Curve.png" usemap="#noise::module::Curve_map" border="0" alt=""></center>
-<map name="noise::module::Curve_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Curve-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that maps the output value from a source module onto an arbitrary function curve. 
-<p>
-<div align="center">
-<img src="modulecurve.png" alt="modulecurve.png">
-</div>
-<p>
-This noise module maps the output value from the source module onto an application-defined curve. This curve is defined by a number of <em>control points</em>; each control point has an <em>input value</em> that maps to an <em>output value</em>. Refer to the following illustration:<p>
-<div align="center">
-<img src="curve.png" alt="curve.png">
-</div>
-<p>
-To add the control points to this curve, call the <a class="el" href="classnoise_1_1module_1_1Curve.html#a2">AddControlPoint()</a> method.<p>
-Since this curve is a cubic spline, an application must add a minimum of four control points to the curve. If this is not done, the <a class="el" href="classnoise_1_1module_1_1Curve.html#a7">GetValue()</a> method fails. Each control point can have any input and output value, although no two control points can have the same input value. There is no limit to the number of control points that can be added to the curve.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Curve::Curve"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#a0">Curve</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1" doxytag="noise::module::Curve::~Curve"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#a1">~Curve</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#a2">AddControlPoint</a> (double inputValue, double outputValue)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a control point to the curve.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#a3">ClearAllControlPoints</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes all the control points on the curve.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structnoise_1_1module_1_1ControlPoint.html">ControlPoint</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#a4">GetControlPointArray</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a pointer to the array of control points on the curve.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#a5">GetControlPointCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of control points on the curve.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#a6">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#a7">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a7"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#b0">FindInsertionPos</a> (double inputValue)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines the array index in which to insert the control point into the internal control point array.  <a href="#b0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#b1">InsertAtPos</a> (int insertionPos, double inputValue, double outputValue)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inserts the control point at the specified position in the internal control point array.  <a href="#b1"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Curve::m_controlPointCount"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#p0">m_controlPointCount</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of control points on the curve. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Curve::m_pControlPoints"></a>
-<a class="el" href="structnoise_1_1module_1_1ControlPoint.html">ControlPoint</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html#p1">m_pControlPoints</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Array that stores the control points. <br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a2" doxytag="noise::module::Curve::AddControlPoint"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Curve::AddControlPoint           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>inputValue</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>outputValue</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Adds a control point to the curve. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>inputValue</em>&nbsp;</td><td>The input value stored in the control point. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>outputValue</em>&nbsp;</td><td>The output value stored in the control point.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>No two control points have the same input value.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-It does not matter which order these points are added.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Curve::ClearAllControlPoints"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Curve::ClearAllControlPoints           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Deletes all the control points on the curve. 
-<p>
-<dl compact><dt><b>Postcondition:</b></dt><dd>All points on the curve are deleted. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="b0" doxytag="noise::module::Curve::FindInsertionPos"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int Curve::FindInsertionPos           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>inputValue</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [protected]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Determines the array index in which to insert the control point into the internal control point array. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>inputValue</em>&nbsp;</td><td>The input value of the control point.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The array index in which to insert the control point.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>No two control points have the same input value.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-By inserting the control point at the returned array index, this class ensures that the control point array is sorted by input value. The code that maps a value onto the curve requires a sorted control point array.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Curve::GetControlPointArray"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="structnoise_1_1module_1_1ControlPoint.html">ControlPoint</a>* noise::module::Curve::GetControlPointArray           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns a pointer to the array of control points on the curve. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A pointer to the array of control points.</dd></dl>
-Before calling this method, call <a class="el" href="classnoise_1_1module_1_1Curve.html#a5">GetControlPointCount()</a> to determine the number of control points in this array.<p>
-It is recommended that an application does not store this pointer for later use since the pointer to the array may change if the application calls another method of this object.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Curve::GetControlPointCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::Curve::GetControlPointCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of control points on the curve. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of control points on the curve. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::Curve::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Curve::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::Curve::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Curve::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Curve.html#a6">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="b1" doxytag="noise::module::Curve::InsertAtPos"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Curve::InsertAtPos           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname" nowrap> <em>insertionPos</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>inputValue</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>outputValue</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [protected]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Inserts the control point at the specified position in the internal control point array. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>insertionPos</em>&nbsp;</td><td>The zero-based array position in which to insert the control point. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>inputValue</em>&nbsp;</td><td>The input value stored in the control point. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>outputValue</em>&nbsp;</td><td>The output value stored in the control point.</td></tr>
-  </table>
-</dl>
-To make room for this new control point, this method reallocates the control point array and shifts all control points occurring after the insertion position up by one.<p>
-Because the curve mapping algorithm used by this noise module requires that all control points in the array must be sorted by input value, the new control point should be inserted at the position in which the order is still preserved.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="curve_8h-source.html">curve.h</a><li>curve.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Curve.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders-members.html
+++ /dev/null
@@ -1,132 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Cylinders Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a0">Cylinders</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a1">GetFrequency</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a2">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a3">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html#p0">m_frequency</a></td><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a4">SetFrequency</a>(double frequency)</td><td><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders.html
+++ /dev/null
@@ -1,355 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Cylinders Class Reference<br>
-<small>
-[<a class="el" href="group__generatormodules.html">Generator Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="cylinders_8h-source.html">cylinders.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Cylinders:
-<p><center><img src="classnoise_1_1module_1_1Cylinders.png" usemap="#noise::module::Cylinders_map" border="0" alt=""></center>
-<map name="noise::module::Cylinders_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,148,24">
-</map>
-<a href="classnoise_1_1module_1_1Cylinders-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs concentric cylinders. 
-<p>
-<div align="center">
-<img src="modulecylinders.png" alt="modulecylinders.png">
-</div>
-<p>
-This noise module outputs concentric cylinders centered on the origin. These cylinders are oriented along the <em>y</em> axis similar to the concentric rings of a tree. Each cylinder extends infinitely along the <em>y</em> axis.<p>
-The first cylinder has a radius of 1.0. Each subsequent cylinder has a radius that is 1.0 unit larger than the previous cylinder.<p>
-The output value from this noise module is determined by the distance between the input value and the the nearest cylinder surface. The input values that are located on a cylinder surface are given the output value 1.0 and the input values that are equidistant from two cylinder surfaces are given the output value -1.0.<p>
-An application can change the frequency of the concentric cylinders. Increasing the frequency reduces the distances between cylinders. To specify the frequency, call the <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a4">SetFrequency()</a> method.<p>
-This noise module, modified with some low-frequency, low-power turbulence, is useful for generating wood-like textures.<p>
-This noise module does not require any source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a0">Cylinders</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a1">GetFrequency</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the frequency of the concentric cylinders.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a2">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a3">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cylinders.html#a4">SetFrequency</a> (double frequency)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the frequenct of the concentric cylinders.  <a href="#a4"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Cylinders::m_frequency"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cylinders.html#p0">m_frequency</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency of the concentric cylinders. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Cylinders::Cylinders"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Cylinders::Cylinders           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default frequency is set to <a class="el" href="group__generatormodules.html#ga8">noise::module::DEFAULT_CYLINDERS_FREQUENCY</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Cylinders::GetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Cylinders::GetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the frequency of the concentric cylinders. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The frequency of the concentric cylinders.</dd></dl>
-Increasing the frequency increases the density of the concentric cylinders, reducing the distances between them.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Cylinders::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Cylinders::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Cylinders::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Cylinders::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a2">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Cylinders::SetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Cylinders::SetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>frequency</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the frequenct of the concentric cylinders. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>frequency</em>&nbsp;</td><td>The frequency of the concentric cylinders.</td></tr>
-  </table>
-</dl>
-Increasing the frequency increases the density of the concentric cylinders, reducing the distances between them.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="cylinders_8h-source.html">cylinders.h</a><li>cylinders.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Cylinders.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace-members.html
+++ /dev/null
@@ -1,136 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Displace Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a0">Displace</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a3">GetXDisplaceModule</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a4">GetYDisplaceModule</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a5">GetZDisplaceModule</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a6">SetDisplaceModules</a>(const Module &amp;xDisplaceModule, const Module &amp;yDisplaceModule, const Module &amp;zDisplaceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a7">SetXDisplaceModule</a>(const Module &amp;xDisplaceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a8">SetYDisplaceModule</a>(const Module &amp;yDisplaceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Displace.html#a9">SetZDisplaceModule</a>(const Module &amp;zDisplaceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace.html
+++ /dev/null
@@ -1,544 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Displace Class Reference<br>
-<small>
-[<a class="el" href="group__transformermodules.html">Transformer Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="displace_8h-source.html">displace.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Displace:
-<p><center><img src="classnoise_1_1module_1_1Displace.png" usemap="#noise::module::Displace_map" border="0" alt=""></center>
-<map name="noise::module::Displace_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,143,24">
-</map>
-<a href="classnoise_1_1module_1_1Displace-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that uses three source modules to displace each coordinate of the input value before returning the output value from a source module. 
-<p>
-<div align="center">
-<img src="moduledisplace.png" alt="moduledisplace.png">
-</div>
-<p>
-Unlike most other noise modules, the index value assigned to a source module determines its role in the displacement operation:<ul>
-<li>Source module 0 (left in the diagram) outputs a value.</li><li>Source module 1 (lower left in the diagram) specifies the offset to apply to the <em>x</em> coordinate of the input value.</li><li>Source module 2 (lower center in the diagram) specifies the offset to apply to the <em>y</em> coordinate of the input value.</li><li>Source module 3 (lower right in the diagram) specifies the offset to apply to the <em>z</em> coordinate of the input value.</li></ul>
-<p>
-The <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue()</a> method modifies the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value using the output values from the three displacement modules before retrieving the output value from the source module.<p>
-The <a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a> noise module is a special case of the displacement module; internally, there are three Perlin-noise modules that perform the displacement operation.<p>
-This noise module requires four source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Displace::Displace"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a0">Displace</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a3">GetXDisplaceModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the <em>x</em> displacement module.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a4">GetYDisplaceModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the <em>y</em> displacement module.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a5">GetZDisplaceModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the <em>z</em> displacement module.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a6">SetDisplaceModules</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;xDisplaceModule, const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;yDisplaceModule, const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;zDisplaceModule)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the <em>x</em>, <em>y</em>, and <em>z</em> displacement modules.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a7">SetXDisplaceModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;xDisplaceModule)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the <em>x</em> displacement module.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a8">SetYDisplaceModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;yDisplaceModule)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the <em>y</em> displacement module.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html#a9">SetZDisplaceModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;zDisplaceModule)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the <em>z</em> displacement module.  <a href="#a9"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Displace::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Displace::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Displace::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Displace::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Displace.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Displace::GetXDisplaceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; noise::module::Displace::GetXDisplaceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the <em>x</em> displacement module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the <em>x</em> displacement module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>This displacement module has been added to this noise module via a call to <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> or <a class="el" href="classnoise_1_1module_1_1Displace.html#a7">SetXDisplaceModule()</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionNoModule</em>&nbsp;</td><td>See the preconditions for more information.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue()</a> method displaces the input value by adding the output value from this displacement module to the <em>x</em> coordinate of the input value before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Displace::GetYDisplaceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; noise::module::Displace::GetYDisplaceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the <em>y</em> displacement module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the <em>y</em> displacement module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>This displacement module has been added to this noise module via a call to <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> or <a class="el" href="classnoise_1_1module_1_1Displace.html#a8">SetYDisplaceModule()</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionNoModule</em>&nbsp;</td><td>See the preconditions for more information.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue()</a> method displaces the input value by adding the output value from this displacement module to the <em>y</em> coordinate of the input value before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Displace::GetZDisplaceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; noise::module::Displace::GetZDisplaceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the <em>z</em> displacement module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the <em>z</em> displacement module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>This displacement module has been added to this noise module via a call to <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> or <a class="el" href="classnoise_1_1module_1_1Displace.html#a9">SetZDisplaceModule()</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionNoModule</em>&nbsp;</td><td>See the preconditions for more information.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue()</a> method displaces the input value by adding the output value from this displacement module to the <em>z</em> coordinate of the input value before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::Displace::SetDisplaceModules"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Displace::SetDisplaceModules           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>xDisplaceModule</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>yDisplaceModule</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>zDisplaceModule</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the <em>x</em>, <em>y</em>, and <em>z</em> displacement modules. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>xDisplaceModule</em>&nbsp;</td><td>Displacement module that displaces the <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>yDisplaceModule</em>&nbsp;</td><td>Displacement module that displaces the <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>zDisplaceModule</em>&nbsp;</td><td>Displacement module that displaces the <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue()</a> method displaces the input value by adding the output value from each of the displacement modules to the corresponding coordinates of the input value before returning the output value from the source module.<p>
-This method assigns an index value of 1 to the <em>x</em> displacement module, an index value of 2 to the <em>y</em> displacement module, and an index value of 3 to the <em>z</em> displacement module.<p>
-These displacement modules must exist throughout the lifetime of this noise module unless another displacement module replaces it.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::Displace::SetXDisplaceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Displace::SetXDisplaceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>xDisplaceModule</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the <em>x</em> displacement module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>xDisplaceModule</em>&nbsp;</td><td>Displacement module that displaces the <em>x</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue()</a> method displaces the input value by adding the output value from this displacement module to the <em>x</em> coordinate of the input value before returning the output value from the source module.<p>
-This method assigns an index value of 1 to the <em>x</em> displacement module. Passing this displacement module to this method produces the same results as passing this displacement module to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method while assigning it an index value of 1.<p>
-This displacement module must exist throughout the lifetime of this noise module unless another displacement module replaces it.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::Displace::SetYDisplaceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Displace::SetYDisplaceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>yDisplaceModule</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the <em>y</em> displacement module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>yDisplaceModule</em>&nbsp;</td><td>Displacement module that displaces the <em>y</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue()</a> method displaces the input value by adding the output value from this displacement module to the <em>y</em> coordinate of the input value before returning the output value from the source module.<p>
-This method assigns an index value of 2 to the <em>y</em> displacement module. Passing this displacement module to this method produces the same results as passing this displacement module to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method while assigning it an index value of 2.<p>
-This displacement module must exist throughout the lifetime of this noise module unless another displacement module replaces it.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::Displace::SetZDisplaceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Displace::SetZDisplaceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>zDisplaceModule</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the <em>z</em> displacement module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>zDisplaceModule</em>&nbsp;</td><td>Displacement module that displaces the <em>z</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">GetValue()</a> method displaces the input value by adding the output value from this displacement module to the <em>z</em> coordinate of the input value before returning the output value from the source module.<p>
-This method assigns an index value of 3 to the <em>z</em> displacement module. Passing this displacement module to this method produces the same results as passing this displacement module to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method while assigning it an index value of 3.<p>
-This displacement module must exist throughout the lifetime of this noise module unless another displacement module replaces it.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="displace_8h-source.html">displace.h</a><li>displace.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Displace.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent-members.html
+++ /dev/null
@@ -1,132 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Exponent Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Exponent.html#a0">Exponent</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Exponent.html#a1">GetExponent</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Exponent.html#a2">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Exponent.html#a3">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Exponent.html#p0">m_exponent</a></td><td><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Exponent.html#a4">SetExponent</a>(double exponent)</td><td><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent.html
+++ /dev/null
@@ -1,351 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Exponent Class Reference<br>
-<small>
-[<a class="el" href="group__modifiermodules.html">Modifier Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="exponent_8h-source.html">exponent.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Exponent:
-<p><center><img src="classnoise_1_1module_1_1Exponent.png" usemap="#noise::module::Exponent_map" border="0" alt=""></center>
-<map name="noise::module::Exponent_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,146,24">
-</map>
-<a href="classnoise_1_1module_1_1Exponent-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that maps the output value from a source module onto an exponential curve. 
-<p>
-<div align="center">
-<img src="moduleexponent.png" alt="moduleexponent.png">
-</div>
-<p>
-Because most noise modules will output values that range from -1.0 to +1.0, this noise module first normalizes this output value (the range becomes 0.0 to 1.0), maps that value onto an exponential curve, then rescales that value back to the original range.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Exponent.html#a0">Exponent</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Exponent.html#a1">GetExponent</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the exponent value to apply to the output value from the source module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Exponent.html#a2">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Exponent.html#a3">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Exponent.html#a4">SetExponent</a> (double exponent)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the exponent value to apply to the output value from the source module.  <a href="#a4"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Exponent::m_exponent"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Exponent.html#p0">m_exponent</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classnoise_1_1module_1_1Exponent.html">Exponent</a> to apply to the output value from the source module. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Exponent::Exponent"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Exponent::Exponent           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default exponent is set to <a class="el" href="group__modifiermodules.html#ga2">noise::module::DEFAULT_EXPONENT</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Exponent::GetExponent"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Exponent::GetExponent           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the exponent value to apply to the output value from the source module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The exponent value.</dd></dl>
-Because most noise modules will output values that range from -1.0 to +1.0, this noise module first normalizes this output value (the range becomes 0.0 to 1.0), maps that value onto an exponential curve, then rescales that value back to the original range.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Exponent::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Exponent::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Exponent::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Exponent::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Exponent.html#a2">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Exponent::SetExponent"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Exponent::SetExponent           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>exponent</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the exponent value to apply to the output value from the source module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>exponent</em>&nbsp;</td><td>The exponent value.</td></tr>
-  </table>
-</dl>
-Because most noise modules will output values that range from -1.0 to +1.0, this noise module first normalizes this output value (the range becomes 0.0 to 1.0), maps that value onto an exponential curve, then rescales that value back to the original range.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="exponent_8h-source.html">exponent.h</a><li>exponent.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Exponent.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert-members.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Invert Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Invert.html">noise::module::Invert</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Invert.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Invert.html">noise::module::Invert</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Invert.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Invert.html">noise::module::Invert</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Invert.html#a0">Invert</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Invert.html">noise::module::Invert</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert.html
+++ /dev/null
@@ -1,245 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Invert Class Reference<br>
-<small>
-[<a class="el" href="group__modifiermodules.html">Modifier Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="invert_8h-source.html">invert.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Invert:
-<p><center><img src="classnoise_1_1module_1_1Invert.png" usemap="#noise::module::Invert_map" border="0" alt=""></center>
-<map name="noise::module::Invert_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Invert-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that inverts the output value from a source module. 
-<p>
-<div align="center">
-<img src="moduleinvert.png" alt="moduleinvert.png">
-</div>
-<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Invert::Invert"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Invert.html#a0">Invert</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Invert.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Invert.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Invert::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Invert::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Invert::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Invert::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Invert.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="invert_8h-source.html">invert.h</a><li>invert.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Invert.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Max-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Max-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Max-members.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Max Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Max.html">noise::module::Max</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Max.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Max.html">noise::module::Max</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Max.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Max.html">noise::module::Max</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Max.html#a0">Max</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Max.html">noise::module::Max</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Max.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Max.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Max.html
+++ /dev/null
@@ -1,245 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Max Class Reference<br>
-<small>
-[<a class="el" href="group__combinermodules.html">Combiner Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="max_8h-source.html">max.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Max:
-<p><center><img src="classnoise_1_1module_1_1Max.png" usemap="#noise::module::Max_map" border="0" alt=""></center>
-<map name="noise::module::Max_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Max-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs the larger of the two output values from two source modules. 
-<p>
-<div align="center">
-<img src="modulemax.png" alt="modulemax.png">
-</div>
-<p>
-This noise module requires two source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Max::Max"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Max.html#a0">Max</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Max.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Max.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Max::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Max::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Max::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Max::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Max.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="max_8h-source.html">max.h</a><li>max.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Max.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Max.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Max.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Min-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Min-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Min-members.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Min Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Min.html">noise::module::Min</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Min.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Min.html">noise::module::Min</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Min.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Min.html">noise::module::Min</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Min.html#a0">Min</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Min.html">noise::module::Min</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Min.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Min.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Min.html
+++ /dev/null
@@ -1,245 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Min Class Reference<br>
-<small>
-[<a class="el" href="group__combinermodules.html">Combiner Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="min_8h-source.html">min.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Min:
-<p><center><img src="classnoise_1_1module_1_1Min.png" usemap="#noise::module::Min_map" border="0" alt=""></center>
-<map name="noise::module::Min_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Min-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs the smaller of the two output values from two source modules. 
-<p>
-<div align="center">
-<img src="modulemin.png" alt="modulemin.png">
-</div>
-<p>
-This noise module requires two source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Min::Min"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Min.html#a0">Min</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Min.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Min.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Min::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Min::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Min::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Min::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Min.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="min_8h-source.html">min.h</a><li>min.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Min.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Min.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Min.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Module-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Module-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Module-members.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Module Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a3">GetSourceModuleCount</a>() const =0</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [pure virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue</a>(double x, double y, double z) const =0</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [pure virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Module.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Module.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Module.html
+++ /dev/null
@@ -1,440 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Module Class Reference<br>
-<small>
-[<a class="el" href="group__modules.html">Noise Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="modulebase_8h-source.html">modulebase.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Module:
-<p><center><img src="classnoise_1_1module_1_1Module.png" usemap="#noise::module::Module_map" border="0" alt=""></center>
-<map name="noise::module::Module_map">
-<area href="classnoise_1_1module_1_1Abs.html" alt="noise::module::Abs" shape="rect" coords="185,56,360,80">
-<area href="classnoise_1_1module_1_1Add.html" alt="noise::module::Add" shape="rect" coords="185,112,360,136">
-<area href="classnoise_1_1module_1_1Billow.html" alt="noise::module::Billow" shape="rect" coords="185,168,360,192">
-<area href="classnoise_1_1module_1_1Blend.html" alt="noise::module::Blend" shape="rect" coords="185,224,360,248">
-<area href="classnoise_1_1module_1_1Cache.html" alt="noise::module::Cache" shape="rect" coords="185,280,360,304">
-<area href="classnoise_1_1module_1_1Checkerboard.html" alt="noise::module::Checkerboard" shape="rect" coords="185,336,360,360">
-<area href="classnoise_1_1module_1_1Clamp.html" alt="noise::module::Clamp" shape="rect" coords="185,392,360,416">
-<area href="classnoise_1_1module_1_1Const.html" alt="noise::module::Const" shape="rect" coords="185,448,360,472">
-<area href="classnoise_1_1module_1_1Curve.html" alt="noise::module::Curve" shape="rect" coords="185,504,360,528">
-<area href="classnoise_1_1module_1_1Cylinders.html" alt="noise::module::Cylinders" shape="rect" coords="185,560,360,584">
-<area href="classnoise_1_1module_1_1Displace.html" alt="noise::module::Displace" shape="rect" coords="185,616,360,640">
-<area href="classnoise_1_1module_1_1Exponent.html" alt="noise::module::Exponent" shape="rect" coords="185,672,360,696">
-<area href="classnoise_1_1module_1_1Invert.html" alt="noise::module::Invert" shape="rect" coords="185,728,360,752">
-<area href="classnoise_1_1module_1_1Max.html" alt="noise::module::Max" shape="rect" coords="185,784,360,808">
-<area href="classnoise_1_1module_1_1Min.html" alt="noise::module::Min" shape="rect" coords="185,840,360,864">
-<area href="classnoise_1_1module_1_1Multiply.html" alt="noise::module::Multiply" shape="rect" coords="185,896,360,920">
-<area href="classnoise_1_1module_1_1Perlin.html" alt="noise::module::Perlin" shape="rect" coords="185,952,360,976">
-<area href="classnoise_1_1module_1_1Power.html" alt="noise::module::Power" shape="rect" coords="185,1008,360,1032">
-<area href="classnoise_1_1module_1_1RidgedMulti.html" alt="noise::module::RidgedMulti" shape="rect" coords="185,1064,360,1088">
-<area href="classnoise_1_1module_1_1RotatePoint.html" alt="noise::module::RotatePoint" shape="rect" coords="185,1120,360,1144">
-<area href="classnoise_1_1module_1_1ScaleBias.html" alt="noise::module::ScaleBias" shape="rect" coords="185,1176,360,1200">
-<area href="classnoise_1_1module_1_1ScalePoint.html" alt="noise::module::ScalePoint" shape="rect" coords="185,1232,360,1256">
-<area href="classnoise_1_1module_1_1Select.html" alt="noise::module::Select" shape="rect" coords="185,1288,360,1312">
-<area href="classnoise_1_1module_1_1Spheres.html" alt="noise::module::Spheres" shape="rect" coords="185,1344,360,1368">
-<area href="classnoise_1_1module_1_1Terrace.html" alt="noise::module::Terrace" shape="rect" coords="185,1400,360,1424">
-<area href="classnoise_1_1module_1_1TranslatePoint.html" alt="noise::module::TranslatePoint" shape="rect" coords="185,1456,360,1480">
-<area href="classnoise_1_1module_1_1Turbulence.html" alt="noise::module::Turbulence" shape="rect" coords="185,1512,360,1536">
-<area href="classnoise_1_1module_1_1Voronoi.html" alt="noise::module::Voronoi" shape="rect" coords="185,1568,360,1592">
-</map>
-<a href="classnoise_1_1module_1_1Module-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Abstract base class for noise modules. 
-<p>
-A <em>noise module</em> is an object that calculates and outputs a value given a three-dimensional input value.<p>
-Each type of noise module uses a specific method to calculate an output value. Some of these methods include:<p>
-<ul>
-<li>Calculating a value using a coherent-noise function or some other mathematical function.</li><li>Mathematically changing the output value from another noise module in various ways.</li><li>Combining the output values from two noise modules in various ways.</li></ul>
-<p>
-An application can use the output values from these noise modules in the following ways:<p>
-<ul>
-<li>It can be used as an elevation value for a terrain height map</li><li>It can be used as a grayscale (or an RGB-channel) value for a procedural texture</li><li>It can be used as a position value for controlling the movement of a simulated lifeform.</li></ul>
-<p>
-A noise module defines a near-infinite 3-dimensional texture. Each position in this "texture" has a specific value.<p>
-<b>Combining noise modules</b><p>
-Noise modules can be combined with other noise modules to generate complex output values. A noise module that is used as a source of output values for another noise module is called a <em>source module</em>. Each of these source modules may be connected to other source modules, and so on.<p>
-There is no limit to the number of noise modules that can be connected together in this way. However, each connected noise module increases the time required to calculate an output value.<p>
-<b>Noise-module categories</b><p>
-The noise module classes that are included in libnoise can be roughly divided into five categories.<p>
-<em>Generator Modules</em><p>
-A generator module outputs a value generated by a coherent-noise function or some other mathematical function.<p>
-Examples of generator modules include:<ul>
-<li><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a>: Outputs a constant value.</li><li><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a>: Outputs a value generated by a Perlin-noise function.</li><li><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a>: Outputs a value generated by a Voronoi-cell function.</li></ul>
-<p>
-<em>Modifier Modules</em><p>
-A modifer module mathematically modifies the output value from a source module.<p>
-Examples of modifier modules include:<ul>
-<li><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a>: Maps the output value from the source module onto an arbitrary function curve.</li><li><a class="el" href="classnoise_1_1module_1_1Invert.html">noise::module::Invert</a>: Inverts the output value from the source module.</li></ul>
-<p>
-<em>Combiner Modules</em><p>
-A combiner module mathematically combines the output values from two or more source modules together.<p>
-Examples of combiner modules include:<ul>
-<li><a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a>: Adds the two output values from two source modules.</li><li><a class="el" href="classnoise_1_1module_1_1Max.html">noise::module::Max</a>: Outputs the larger of the two output values from two source modules.</li></ul>
-<p>
-<em>Selector Modules</em><p>
-A selector module uses the output value from a <em>control module</em> to specify how to combine the output values from its source modules.<p>
-Examples of selector modules include:<ul>
-<li><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a>: Outputs a value that is linearly interpolated between the output values from two source modules; the interpolation weight is determined by the output value from the control module.</li><li><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a>: Outputs the value selected from one of two source modules chosen by the output value from a control module.</li></ul>
-<p>
-<em>Transformer Modules</em><p>
-A transformer module applies a transformation to the coordinates of the input value before retrieving the output value from the source module. A transformer module does not modify the output value.<p>
-Examples of transformer modules include:<ul>
-<li><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">RotatePoint</a>: Rotates the coordinates of the input value around the origin before retrieving the output value from the source module.</li><li><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">ScalePoint</a>: Multiplies each coordinate of the input value by a constant value before retrieving the output value from the source module.</li></ul>
-<p>
-<b>Connecting source modules to a noise module</b><p>
-An application connects a source module to a noise module by passing the source module to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.<p>
-The application must also pass an <em>index value</em> to <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> as well. An index value is a numeric identifier for that source module. Index values are consecutively numbered starting at zero.<p>
-To retrieve a reference to a source module, pass its index value to the <a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule()</a> method.<p>
-Each noise module requires the attachment of a certain number of source modules before it can output a value. For example, the <a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a> module requires two source modules, while the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> module requires none. Call the <a class="el" href="classnoise_1_1module_1_1Module.html#a3">GetSourceModuleCount()</a> method to retrieve the number of source modules required by that module.<p>
-For non-selector modules, it usually does not matter which index value an application assigns to a particular source module, but for selector modules, the purpose of a source module is defined by its index value. For example, consider the <a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a> noise module, which requires three source modules. The control module is the source module assigned an index value of 2. The control module determines whether the noise module will output the value from the source module assigned an index value of 0 or the output value from the source module assigned an index value of 1.<p>
-<b>Generating output values with a noise module</b><p>
-Once an application has connected all required source modules to a noise module, the application can now begin to generate output values with that noise module.<p>
-To generate an output value, pass the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of an input value to the <a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue()</a> method.<p>
-<b>Using a noise module to generate terrain height maps or textures</b><p>
-One way to generate a terrain height map or a texture is to first allocate a 2-dimensional array of floating-point values. For each array element, pass the array subscripts as <em>x</em> and <em>y</em> coordinates to the <a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue()</a> method (leaving the <em>z</em> coordinate set to zero) and place the resulting output value into the array element.<p>
-<b>Creating your own noise modules</b><p>
-Create a class that publicly derives from noise::module::Module.<p>
-In the constructor, call the base class' constructor while passing the return value from <a class="el" href="classnoise_1_1module_1_1Module.html#a3">GetSourceModuleCount()</a> to it.<p>
-Override the <a class="el" href="classnoise_1_1module_1_1Module.html#a3">GetSourceModuleCount()</a> pure virtual method. From this method, return the number of source modules required by your noise module.<p>
-Override the <a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue()</a> pure virtual method. For generator modules, calculate and output a value given the coordinates of the input value. For other modules, retrieve the output values from each source module referenced in the protected <em>m_pSourceModule</em> array, mathematically combine those values, and return the combined value.<p>
-When developing a noise module, you must ensure that your noise module does not modify any source module or control module connected to it; a noise module can only modify the output value from those source modules. You must also ensure that if an application fails to connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method and then attempts to call the <a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue()</a> method, your module will raise an assertion.<p>
-It shouldn't be too difficult to create your own noise module. If you still have some problems, take a look at the source code for <a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a>, which is a very simple noise module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Module::Module"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a> (int sourceModuleCount)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1" doxytag="noise::module::Module::~Module"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a> (int index) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a reference to a source module connected to this noise module.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Module.html#a3">GetSourceModuleCount</a> () const =0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue</a> (double x, double y, double z) const =0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a> (int index, const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;sourceModule)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Connects a source module to this noise module.  <a href="#a5"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Module::m_pSourceModule"></a>
-const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> **&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An array containing the pointers to each source module required by this noise module. <br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a2" doxytag="noise::module::Module::GetSourceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; noise::module::Module::GetSourceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>index</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns a reference to a source module connected to this noise module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>index</em>&nbsp;</td><td>The index value assigned to the source module.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the source module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The index value ranges from 0 to one less than the number of source modules required by this noise module. <p>
-A source module with the specified index value has been added to this noise module via a call to <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionNoModule</em>&nbsp;</td><td>See the preconditions for more information.</td></tr>
-  </table>
-</dl>
-Each noise module requires the attachment of a certain number of source modules before an application can call the <a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue()</a> method.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Module::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Module::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [pure virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implemented in <a class="el" href="classnoise_1_1module_1_1Abs.html#a1">noise::module::Abs</a>, <a class="el" href="classnoise_1_1module_1_1Add.html#a1">noise::module::Add</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a7">noise::module::Billow</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a2">noise::module::Blend</a>, <a class="el" href="classnoise_1_1module_1_1Cache.html#a1">noise::module::Cache</a>, <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a1">noise::module::Checkerboard</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a2">noise::module::Clamp</a>, <a class="el" href="classnoise_1_1module_1_1Const.html#a2">noise::module::Const</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a6">noise::module::Curve</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a2">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Displace.html#a1">noise::module::Displace</a>, <a class="el" href="classnoise_1_1module_1_1Exponent.html#a2">noise::module::Exponent</a>, <a class="el" href="classnoise_1_1module_1_1Invert.html#a1">noise::module::Invert</a>, <a class="el" href="classnoise_1_1module_1_1Max.html#a1">noise::module::Max</a>, <a class="el" href="classnoise_1_1module_1_1Min.html#a1">noise::module::Min</a>, <a class="el" href="classnoise_1_1module_1_1Multiply.html#a1">noise::module::Multiply</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a7">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Power.html#a1">noise::module::Power</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a6">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a1">noise::module::RotatePoint</a>, <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a3">noise::module::ScaleBias</a>, <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a1">noise::module::ScalePoint</a>, <a class="el" href="classnoise_1_1module_1_1Select.html#a4">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a2">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1Terrace.html#a6">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a1">noise::module::TranslatePoint</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a5">noise::module::Turbulence</a>, and <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a4">noise::module::Voronoi</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Module::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual double noise::module::Module::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Module.html#a3">GetSourceModuleCount()</a> method. 
-<p>
-Implemented in <a class="el" href="classnoise_1_1module_1_1Abs.html#a2">noise::module::Abs</a>, <a class="el" href="classnoise_1_1module_1_1Add.html#a2">noise::module::Add</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a8">noise::module::Billow</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a3">noise::module::Blend</a>, <a class="el" href="classnoise_1_1module_1_1Cache.html#a2">noise::module::Cache</a>, <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a2">noise::module::Checkerboard</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a4">noise::module::Clamp</a>, <a class="el" href="classnoise_1_1module_1_1Const.html#a3">noise::module::Const</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a7">noise::module::Curve</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a3">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">noise::module::Displace</a>, <a class="el" href="classnoise_1_1module_1_1Exponent.html#a3">noise::module::Exponent</a>, <a class="el" href="classnoise_1_1module_1_1Invert.html#a2">noise::module::Invert</a>, <a class="el" href="classnoise_1_1module_1_1Max.html#a2">noise::module::Max</a>, <a class="el" href="classnoise_1_1module_1_1Min.html#a2">noise::module::Min</a>, <a class="el" href="classnoise_1_1module_1_1Multiply.html#a2">noise::module::Multiply</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a8">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Power.html#a2">noise::module::Power</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a7">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">noise::module::RotatePoint</a>, <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">noise::module::ScaleBias</a>, <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">noise::module::ScalePoint</a>, <a class="el" href="classnoise_1_1module_1_1Select.html#a6">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a3">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1Terrace.html#a9">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">noise::module::TranslatePoint</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a6">noise::module::Turbulence</a>, and <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a7">noise::module::Voronoi</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Module::SetSourceModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual void noise::module::Module::SetSourceModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname" nowrap> <em>index</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>sourceModule</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Connects a source module to this noise module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>index</em>&nbsp;</td><td>An index value to assign to this source module. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>sourceModule</em>&nbsp;</td><td>The source module to attach.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The index value ranges from 0 to one less than the number of source modules required by this noise module.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-A noise module mathematically combines the output values from the source modules to generate the value returned by <a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue()</a>.<p>
-The index value to assign a source module is a unique identifier for that source module. If an index value has already been assigned to a source module, this noise module replaces the old source module with the new source module.<p>
-Before an application can call the <a class="el" href="classnoise_1_1module_1_1Module.html#a4">GetValue()</a> method, it must first connect all required source modules. To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Module.html#a3">GetSourceModuleCount()</a> method.<p>
-This source module must exist throughout the lifetime of this noise module unless another source module replaces that source module.<p>
-A noise module does not modify a source module; it only modifies its output values. 
-<p>
-Reimplemented in <a class="el" href="classnoise_1_1module_1_1Cache.html#a3">noise::module::Cache</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="modulebase_8h-source.html">modulebase.h</a><li>modulebase.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Module.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Module.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Module.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply-members.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Multiply Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Multiply.html">noise::module::Multiply</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Multiply.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Multiply.html">noise::module::Multiply</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Multiply.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Multiply.html">noise::module::Multiply</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Multiply.html#a0">Multiply</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Multiply.html">noise::module::Multiply</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply.html
+++ /dev/null
@@ -1,245 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Multiply Class Reference<br>
-<small>
-[<a class="el" href="group__combinermodules.html">Combiner Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="multiply_8h-source.html">multiply.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Multiply:
-<p><center><img src="classnoise_1_1module_1_1Multiply.png" usemap="#noise::module::Multiply_map" border="0" alt=""></center>
-<map name="noise::module::Multiply_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,138,24">
-</map>
-<a href="classnoise_1_1module_1_1Multiply-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs the product of the two output values from two source modules. 
-<p>
-<div align="center">
-<img src="modulemultiply.png" alt="modulemultiply.png">
-</div>
-<p>
-This noise module requires two source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Multiply::Multiply"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Multiply.html#a0">Multiply</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Multiply.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Multiply.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Multiply::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Multiply::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Multiply::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Multiply::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Multiply.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="multiply_8h-source.html">multiply.h</a><li>multiply.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Multiply.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin-members.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Perlin Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a1">GetFrequency</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a2">GetLacunarity</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a3">GetNoiseQuality</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a4">GetOctaveCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a5">GetPersistence</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a6">GetSeed</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a7">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a8">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#p0">m_frequency</a></td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#p1">m_lacunarity</a></td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#p2">m_noiseQuality</a></td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#p3">m_octaveCount</a></td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#p4">m_persistence</a></td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#p5">m_seed</a></td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a0">Perlin</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a9">SetFrequency</a>(double frequency)</td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a10">SetLacunarity</a>(double lacunarity)</td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a11">SetNoiseQuality</a>(noise::NoiseQuality noiseQuality)</td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a12">SetOctaveCount</a>(int octaveCount)</td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a13">SetPersistence</a>(double persistence)</td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Perlin.html#a14">SetSeed</a>(int seed)</td><td><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin.html
+++ /dev/null
@@ -1,761 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Perlin Class Reference<br>
-<small>
-[<a class="el" href="group__generatormodules.html">Generator Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="perlin_8h-source.html">perlin.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Perlin:
-<p><center><img src="classnoise_1_1module_1_1Perlin.png" usemap="#noise::module::Perlin_map" border="0" alt=""></center>
-<map name="noise::module::Perlin_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Perlin-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs 3-dimensional <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<div align="center">
-<img src="moduleperlin.png" alt="moduleperlin.png">
-</div>
-<p>
-<a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise is the sum of several coherent-noise functions of ever-increasing frequencies and ever-decreasing amplitudes.<p>
-An important property of <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise is that a small change in the input value will produce a small change in the output value, while a large change in the input value will produce a random change in the output value.<p>
-This noise module outputs Perlin-noise values that usually range from -1.0 to +1.0, but there are no guarantees that all output values will exist within that range.<p>
-For a better description of <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise, see the links in the <em>References and Acknowledgments</em> section.<p>
-This noise module does not require any source modules.<p>
-<b>Octaves</b><p>
-The number of octaves control the <em>amount of detail</em> of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. Adding more octaves increases the detail of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise, but with the drawback of increasing the calculation time.<p>
-An octave is one of the coherent-noise functions in a series of coherent-noise functions that are added together to form <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.<p>
-An application may specify the frequency of the first octave by calling the <a class="el" href="classnoise_1_1module_1_1Perlin.html#a9">SetFrequency()</a> method.<p>
-An application may specify the number of octaves that generate <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise by calling the <a class="el" href="classnoise_1_1module_1_1Perlin.html#a12">SetOctaveCount()</a> method.<p>
-These coherent-noise functions are called octaves because each octave has, by default, double the frequency of the previous octave. Musical tones have this property as well; a musical C tone that is one octave higher than the previous C tone has double its frequency.<p>
-<b>Frequency</b><p>
-An application may specify the frequency of the first octave by calling the <a class="el" href="classnoise_1_1module_1_1Perlin.html#a9">SetFrequency()</a> method.<p>
-<b>Persistence</b><p>
-The persistence value controls the <em>roughness</em> of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. Larger values produce rougher noise.<p>
-The persistence value determines how quickly the amplitudes diminish for successive octaves. The amplitude of the first octave is 1.0. The amplitude of each subsequent octave is equal to the product of the previous octave's amplitude and the persistence value. So a persistence value of 0.5 sets the amplitude of the first octave to 1.0; the second, 0.5; the third, 0.25; etc.<p>
-An application may specify the persistence value by calling the <a class="el" href="classnoise_1_1module_1_1Perlin.html#a13">SetPersistence()</a> method.<p>
-<b>Lacunarity</b><p>
-The lacunarity specifies the frequency multipler between successive octaves.<p>
-The effect of modifying the lacunarity is subtle; you may need to play with the lacunarity value to determine the effects. For best results, set the lacunarity to a number between 1.5 and 3.5.<p>
-<b>References &amp; acknowledgments</b><p>
-<a href="http://www.noisemachine.com/talk1/">The Noise Machine</a> - From the master, Ken <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> himself. This page contains a presentation that describes <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise and some of its variants. He won an Oscar for creating the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise algorithm!<p>
-<a href="http://freespace.virgin.net/hugo.elias/models/m_perlin.htm">Perlin Noise</a> - Hugo Elias's webpage contains a very good description of <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise and describes its many applications. This page gave me the inspiration to create libnoise in the first place. Now that I know how to generate <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise, I will never again use cheesy subdivision algorithms to create terrain (unless I absolutely need the speed.)<p>
-<a href="http://www.robo-murito.net/code/perlin-noise-math-faq.html">The Perlin noise math FAQ</a> - A good page that describes <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise in plain English with only a minor amount of math. During development of libnoise, I noticed that my coherent-noise function generated terrain with some "regularity" to the terrain features. This page describes a better coherent-noise function called <em>gradient noise</em>. This version of noise::module::Perlin uses gradient coherent noise to generate <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a0">Perlin</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a1">GetFrequency</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the frequency of the first octave.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a2">GetLacunarity</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the lacunarity of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a3">GetNoiseQuality</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the quality of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a4">GetOctaveCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of octaves that generate the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a5">GetPersistence</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the persistence value of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a6">GetSeed</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the seed value used by the Perlin-noise function.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a7">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a8">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a9">SetFrequency</a> (double frequency)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the frequency of the first octave.  <a href="#a9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a10">SetLacunarity</a> (double lacunarity)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the lacunarity of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="#a10"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a11">SetNoiseQuality</a> (<a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> noiseQuality)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the quality of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="#a11"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a12">SetOctaveCount</a> (int octaveCount)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the number of octaves that generate the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="#a12"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a13">SetPersistence</a> (double persistence)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the persistence value of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="#a13"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#a14">SetSeed</a> (int seed)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the seed value used by the Perlin-noise function.  <a href="#a14"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Perlin::m_frequency"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#p0">m_frequency</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency of the first octave. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Perlin::m_lacunarity"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#p1">m_lacunarity</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency multiplier between successive octaves. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::Perlin::m_noiseQuality"></a>
-<a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#p2">m_noiseQuality</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Quality of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p3" doxytag="noise::module::Perlin::m_octaveCount"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#p3">m_octaveCount</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Total number of octaves that generate the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p4" doxytag="noise::module::Perlin::m_persistence"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#p4">m_persistence</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Persistence of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p5" doxytag="noise::module::Perlin::m_seed"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html#p5">m_seed</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seed value used by the Perlin-noise function. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Perlin::Perlin"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Perlin::Perlin           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default frequency is set to <a class="el" href="group__generatormodules.html#ga9">noise::module::DEFAULT_PERLIN_FREQUENCY</a>.<p>
-The default lacunarity is set to <a class="el" href="group__generatormodules.html#ga10">noise::module::DEFAULT_PERLIN_LACUNARITY</a>.<p>
-The default number of octaves is set to <a class="el" href="group__generatormodules.html#ga11">noise::module::DEFAULT_PERLIN_OCTAVE_COUNT</a>.<p>
-The default persistence value is set to <a class="el" href="group__generatormodules.html#ga12">noise::module::DEFAULT_PERLIN_PERSISTENCE</a>.<p>
-The default seed value is set to <a class="el" href="group__generatormodules.html#ga14">noise::module::DEFAULT_PERLIN_SEED</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Perlin::GetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Perlin::GetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the frequency of the first octave. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The frequency of the first octave. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Perlin::GetLacunarity"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Perlin::GetLacunarity           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the lacunarity of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The lacunarity of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.</dd></dl>
-The lacunarity is the frequency multiplier between successive octaves.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Perlin::GetNoiseQuality"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> noise::module::Perlin::GetNoiseQuality           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the quality of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The quality of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.</dd></dl>
-See <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> for definitions of the various coherent-noise qualities.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Perlin::GetOctaveCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::Perlin::GetOctaveCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of octaves that generate the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of octaves that generate the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.</dd></dl>
-The number of octaves controls the amount of detail in the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Perlin::GetPersistence"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Perlin::GetPersistence           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the persistence value of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The persistence value of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.</dd></dl>
-The persistence value controls the roughness of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::Perlin::GetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::Perlin::GetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the seed value used by the Perlin-noise function. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The seed value. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::Perlin::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Perlin::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::Perlin::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Perlin::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Perlin.html#a7">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::Perlin::SetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Perlin::SetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>frequency</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the frequency of the first octave. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>frequency</em>&nbsp;</td><td>The frequency of the first octave. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a10" doxytag="noise::module::Perlin::SetLacunarity"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Perlin::SetLacunarity           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>lacunarity</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the lacunarity of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>lacunarity</em>&nbsp;</td><td>The lacunarity of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.</td></tr>
-  </table>
-</dl>
-The lacunarity is the frequency multiplier between successive octaves.<p>
-For best results, set the lacunarity to a number between 1.5 and 3.5.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a11" doxytag="noise::module::Perlin::SetNoiseQuality"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Perlin::SetNoiseQuality           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>noiseQuality</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the quality of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noiseQuality</em>&nbsp;</td><td>The quality of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.</td></tr>
-  </table>
-</dl>
-See <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> for definitions of the various coherent-noise qualities.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a12" doxytag="noise::module::Perlin::SetOctaveCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Perlin::SetOctaveCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>octaveCount</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the number of octaves that generate the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>octaveCount</em>&nbsp;</td><td>The number of octaves that generate the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The number of octaves ranges from 1 to <a class="el" href="group__generatormodules.html#ga15">noise::module::PERLIN_MAX_OCTAVE</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-The number of octaves controls the amount of detail in the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.<p>
-The larger the number of octaves, the more time required to calculate the Perlin-noise value.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a13" doxytag="noise::module::Perlin::SetPersistence"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Perlin::SetPersistence           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>persistence</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the persistence value of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>persistence</em>&nbsp;</td><td>The persistence value of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.</td></tr>
-  </table>
-</dl>
-The persistence value controls the roughness of the <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.<p>
-For best results, set the persistence to a number between 0.0 and 1.0.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a14" doxytag="noise::module::Perlin::SetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Perlin::SetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>seed</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the seed value used by the Perlin-noise function. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>The seed value. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="perlin_8h-source.html">perlin.h</a><li>perlin.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Perlin.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Power-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Power-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Power-members.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Power Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Power.html">noise::module::Power</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Power.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Power.html">noise::module::Power</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Power.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Power.html">noise::module::Power</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Power.html#a0">Power</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Power.html">noise::module::Power</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Power.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Power.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Power.html
+++ /dev/null
@@ -1,247 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Power Class Reference<br>
-<small>
-[<a class="el" href="group__combinermodules.html">Combiner Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="power_8h-source.html">power.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Power:
-<p><center><img src="classnoise_1_1module_1_1Power.png" usemap="#noise::module::Power_map" border="0" alt=""></center>
-<map name="noise::module::Power_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Power-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that raises the output value from a first source module to the power of the output value from a second source module. 
-<p>
-<div align="center">
-<img src="modulepower.png" alt="modulepower.png">
-</div>
-<p>
-The first source module must have an index value of 0.<p>
-The second source module must have an index value of 1.<p>
-This noise module requires two source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Power::Power"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Power.html#a0">Power</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Power.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Power.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Power::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Power::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Power::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Power::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Power.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="power_8h-source.html">power.h</a><li>power.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Power.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Power.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Power.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti-members.html
+++ /dev/null
@@ -1,146 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::RidgedMulti Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#b0">CalcSpectralWeights</a>()</td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a1">GetFrequency</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a2">GetLacunarity</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a3">GetNoiseQuality</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a4">GetOctaveCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a5">GetSeed</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a6">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a7">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p0">m_frequency</a></td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p1">m_lacunarity</a></td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p2">m_noiseQuality</a></td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p3">m_octaveCount</a></td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p4">m_pSpectralWeights</a></td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p5">m_seed</a></td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a0">RidgedMulti</a>()</td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a8">SetFrequency</a>(double frequency)</td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a9">SetLacunarity</a>(double lacunarity)</td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a10">SetNoiseQuality</a>(noise::NoiseQuality noiseQuality)</td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a11">SetOctaveCount</a>(int octaveCount)</td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a12">SetSeed</a>(int seed)</td><td><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti.html
+++ /dev/null
@@ -1,713 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::RidgedMulti Class Reference<br>
-<small>
-[<a class="el" href="group__generatormodules.html">Generator Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="ridgedmulti_8h-source.html">ridgedmulti.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::RidgedMulti:
-<p><center><img src="classnoise_1_1module_1_1RidgedMulti.png" usemap="#noise::module::RidgedMulti_map" border="0" alt=""></center>
-<map name="noise::module::RidgedMulti_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,160,24">
-</map>
-<a href="classnoise_1_1module_1_1RidgedMulti-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs 3-dimensional ridged-multifractal noise. 
-<p>
-<div align="center">
-<img src="moduleridgedmulti.png" alt="moduleridgedmulti.png">
-</div>
-<p>
-This noise module, heavily based on the Perlin-noise module, generates ridged-multifractal noise. Ridged-multifractal noise is generated in much of the same way as <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise, except the output of each octave is modified by an absolute-value function. Modifying the octave values in this way produces ridge-like formations.<p>
-Ridged-multifractal noise does not use a persistence value. This is because the persistence values of the octaves are based on the values generated from from previous octaves, creating a feedback loop (or that's what it looks like after reading the code.)<p>
-This noise module outputs ridged-multifractal-noise values that usually range from -1.0 to +1.0, but there are no guarantees that all output values will exist within that range.<p>
-<dl compact><dt><b>Note:</b></dt><dd>For ridged-multifractal noise generated with only one octave, the output value ranges from -1.0 to 0.0.</dd></dl>
-Ridged-multifractal noise is often used to generate craggy mountainous terrain or marble-like textures.<p>
-This noise module does not require any source modules.<p>
-<b>Octaves</b><p>
-The number of octaves control the <em>amount of detail</em> of the ridged-multifractal noise. Adding more octaves increases the detail of the ridged-multifractal noise, but with the drawback of increasing the calculation time.<p>
-An application may specify the number of octaves that generate ridged-multifractal noise by calling the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a11">SetOctaveCount()</a> method.<p>
-<b>Frequency</b><p>
-An application may specify the frequency of the first octave by calling the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a8">SetFrequency()</a> method.<p>
-<b>Lacunarity</b><p>
-The lacunarity specifies the frequency multipler between successive octaves.<p>
-The effect of modifying the lacunarity is subtle; you may need to play with the lacunarity value to determine the effects. For best results, set the lacunarity to a number between 1.5 and 3.5.<p>
-<b>References &amp; Acknowledgments</b><p>
-<a href="http://www.texturingandmodeling.com/Musgrave.html">F. Kenton "Doc Mojo" Musgrave's texturing page</a> - This page contains links to source code that generates ridged-multfractal noise, among other types of noise. The source file <a href="http://www.texturingandmodeling.com/CODE/MUSGRAVE/CLOUD/fractal.c">fractal.c</a> contains the code I used in my ridged-multifractal class (see the <em>RidgedMultifractal()</em> function.) This code was written by F. Kenton Musgrave, the person who created <a href="http://www.pandromeda.com/">MojoWorld</a>. He is also one of the authors in <em>Texturing and Modeling: A Procedural Approach</em> (Morgan Kaufmann, 2002. ISBN 1-55860-848-6.) 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a0">RidgedMulti</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a1">GetFrequency</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the frequency of the first octave.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a2">GetLacunarity</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the lacunarity of the ridged-multifractal noise.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a3">GetNoiseQuality</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the quality of the ridged-multifractal noise.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a4">GetOctaveCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of octaves that generate the ridged-multifractal noise.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a5">GetSeed</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the seed value used by the ridged-multifractal-noise function.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a6">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a7">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a8">SetFrequency</a> (double frequency)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the frequency of the first octave.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a9">SetLacunarity</a> (double lacunarity)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the lacunarity of the ridged-multifractal noise.  <a href="#a9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a10">SetNoiseQuality</a> (<a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> noiseQuality)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the quality of the ridged-multifractal noise.  <a href="#a10"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a11">SetOctaveCount</a> (int octaveCount)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the number of octaves that generate the ridged-multifractal noise.  <a href="#a11"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a12">SetSeed</a> (int seed)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the seed value used by the ridged-multifractal-noise function.  <a href="#a12"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#b0">CalcSpectralWeights</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculates the spectral weights for each octave.  <a href="#b0"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::RidgedMulti::m_frequency"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p0">m_frequency</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency of the first octave. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::RidgedMulti::m_lacunarity"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p1">m_lacunarity</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency multiplier between successive octaves. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::RidgedMulti::m_noiseQuality"></a>
-<a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p2">m_noiseQuality</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Quality of the ridged-multifractal noise. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p3" doxytag="noise::module::RidgedMulti::m_octaveCount"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p3">m_octaveCount</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Total number of octaves that generate the ridged-multifractal noise. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p4" doxytag="noise::module::RidgedMulti::m_pSpectralWeights"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p4">m_pSpectralWeights</a> [<a class="el" href="group__generatormodules.html#ga21">RIDGED_MAX_OCTAVE</a>]</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains the spectral weights for each octave. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p5" doxytag="noise::module::RidgedMulti::m_seed"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p5">m_seed</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seed value used by the ridged-multfractal-noise function. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::RidgedMulti::RidgedMulti"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">RidgedMulti::RidgedMulti           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default number of octaves is set to <a class="el" href="group__generatormodules.html#ga18">noise::module::DEFAULT_RIDGED_OCTAVE_COUNT</a>.<p>
-The default frequency is set to <a class="el" href="group__generatormodules.html#ga16">noise::module::DEFAULT_RIDGED_FREQUENCY</a>.<p>
-The default lacunarity is set to <a class="el" href="group__generatormodules.html#ga17">noise::module::DEFAULT_RIDGED_LACUNARITY</a>.<p>
-The default seed value is set to <a class="el" href="group__generatormodules.html#ga20">noise::module::DEFAULT_RIDGED_SEED</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="b0" doxytag="noise::module::RidgedMulti::CalcSpectralWeights"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void RidgedMulti::CalcSpectralWeights           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [protected]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Calculates the spectral weights for each octave. 
-<p>
-This method is called when the lacunarity changes.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a1" doxytag="noise::module::RidgedMulti::GetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::RidgedMulti::GetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the frequency of the first octave. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The frequency of the first octave. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::RidgedMulti::GetLacunarity"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::RidgedMulti::GetLacunarity           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the lacunarity of the ridged-multifractal noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The lacunarity of the ridged-multifractal noise.</dd></dl>
-The lacunarity is the frequency multiplier between successive octaves.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::RidgedMulti::GetNoiseQuality"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> noise::module::RidgedMulti::GetNoiseQuality           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the quality of the ridged-multifractal noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The quality of the ridged-multifractal noise.</dd></dl>
-See <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> for definitions of the various coherent-noise qualities.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::RidgedMulti::GetOctaveCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::RidgedMulti::GetOctaveCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of octaves that generate the ridged-multifractal noise. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of octaves that generate the ridged-multifractal noise.</dd></dl>
-The number of octaves controls the amount of detail in the ridged-multifractal noise.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::RidgedMulti::GetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::RidgedMulti::GetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the seed value used by the ridged-multifractal-noise function. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The seed value. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::RidgedMulti::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::RidgedMulti::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::RidgedMulti::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double RidgedMulti::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a6">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::RidgedMulti::SetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::RidgedMulti::SetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>frequency</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the frequency of the first octave. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>frequency</em>&nbsp;</td><td>The frequency of the first octave. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::RidgedMulti::SetLacunarity"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::RidgedMulti::SetLacunarity           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>lacunarity</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the lacunarity of the ridged-multifractal noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>lacunarity</em>&nbsp;</td><td>The lacunarity of the ridged-multifractal noise.</td></tr>
-  </table>
-</dl>
-The lacunarity is the frequency multiplier between successive octaves.<p>
-For best results, set the lacunarity to a number between 1.5 and 3.5.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a10" doxytag="noise::module::RidgedMulti::SetNoiseQuality"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::RidgedMulti::SetNoiseQuality           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>noiseQuality</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the quality of the ridged-multifractal noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noiseQuality</em>&nbsp;</td><td>The quality of the ridged-multifractal noise.</td></tr>
-  </table>
-</dl>
-See <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> for definitions of the various coherent-noise qualities.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a11" doxytag="noise::module::RidgedMulti::SetOctaveCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::RidgedMulti::SetOctaveCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>octaveCount</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the number of octaves that generate the ridged-multifractal noise. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>octaveCount</em>&nbsp;</td><td>The number of octaves that generate the ridged-multifractal noise.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The number of octaves ranges from 1 to <a class="el" href="group__generatormodules.html#ga21">noise::module::RIDGED_MAX_OCTAVE</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-The number of octaves controls the amount of detail in the ridged-multifractal noise.<p>
-The larger the number of octaves, the more time required to calculate the ridged-multifractal-noise value.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a12" doxytag="noise::module::RidgedMulti::SetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::RidgedMulti::SetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>seed</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the seed value used by the ridged-multifractal-noise function. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>The seed value. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="ridgedmulti_8h-source.html">ridgedmulti.h</a><li>ridgedmulti.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1RidgedMulti.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint-members.html
+++ /dev/null
@@ -1,148 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::RotatePoint Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a3">GetXAngle</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a4">GetYAngle</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a5">GetZAngle</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p0">m_x1Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p1">m_x2Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p2">m_x3Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p3">m_xAngle</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p4">m_y1Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p5">m_y2Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p6">m_y3Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p7">m_yAngle</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p8">m_z1Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p9">m_z2Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p10">m_z3Matrix</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p11">m_zAngle</a></td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a0">RotatePoint</a>()</td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a6">SetAngles</a>(double xAngle, double yAngle, double zAngle)</td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a7">SetXAngle</a>(double xAngle)</td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a8">SetYAngle</a>(double yAngle)</td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a9">SetZAngle</a>(double zAngle)</td><td><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint.html
+++ /dev/null
@@ -1,595 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::RotatePoint Class Reference<br>
-<small>
-[<a class="el" href="group__transformermodules.html">Transformer Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="rotatepoint_8h-source.html">rotatepoint.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::RotatePoint:
-<p><center><img src="classnoise_1_1module_1_1RotatePoint.png" usemap="#noise::module::RotatePoint_map" border="0" alt=""></center>
-<map name="noise::module::RotatePoint_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,157,24">
-</map>
-<a href="classnoise_1_1module_1_1RotatePoint-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that rotates the input value around the origin before returning the output value from a source module. 
-<p>
-<div align="center">
-<img src="modulerotatepoint.png" alt="modulerotatepoint.png">
-</div>
-<p>
-The <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">GetValue()</a> method rotates the coordinates of the input value around the origin before returning the output value from the source module. To set the rotation angles, call the <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a6">SetAngles()</a> method. To set the rotation angle around the individual <em>x</em>, <em>y</em>, or <em>z</em> axes, call the <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a7">SetXAngle()</a>, <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a8">SetYAngle()</a> or <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a9">SetZAngle()</a> methods, respectively.<p>
-The coordinate system of the input value is assumed to be "left-handed" (<em>x</em> increases to the right, <em>y</em> increases upward, and <em>z</em> increases inward.)<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a0">RotatePoint</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a3">GetXAngle</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the rotation angle around the <em>x</em> axis to apply to the input value.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a4">GetYAngle</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the rotation angle around the <em>y</em> axis to apply to the input value.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a5">GetZAngle</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the rotation angle around the <em>z</em> axis to apply to the input value.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a6">SetAngles</a> (double xAngle, double yAngle, double zAngle)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the rotation angles around all three axes to apply to the input value.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a7">SetXAngle</a> (double xAngle)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the rotation angle around the <em>x</em> axis to apply to the input value.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a8">SetYAngle</a> (double yAngle)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the rotation angle around the <em>y</em> axis to apply to the input value.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a9">SetZAngle</a> (double zAngle)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the rotation angle around the <em>z</em> axis to apply to the input value.  <a href="#a9"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::RotatePoint::m_x1Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p0">m_x1Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::RotatePoint::m_x2Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p1">m_x2Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::RotatePoint::m_x3Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p2">m_x3Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p3" doxytag="noise::module::RotatePoint::m_xAngle"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p3">m_xAngle</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><em>x</em> rotation angle applied to the input value, in degrees. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p4" doxytag="noise::module::RotatePoint::m_y1Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p4">m_y1Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p5" doxytag="noise::module::RotatePoint::m_y2Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p5">m_y2Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p6" doxytag="noise::module::RotatePoint::m_y3Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p6">m_y3Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p7" doxytag="noise::module::RotatePoint::m_yAngle"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p7">m_yAngle</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><em>y</em> rotation angle applied to the input value, in degrees. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p8" doxytag="noise::module::RotatePoint::m_z1Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p8">m_z1Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p9" doxytag="noise::module::RotatePoint::m_z2Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p9">m_z2Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p10" doxytag="noise::module::RotatePoint::m_z3Matrix"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p10">m_z3Matrix</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An entry within the 3x3 rotation matrix used for rotating the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p11" doxytag="noise::module::RotatePoint::m_zAngle"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p11">m_zAngle</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><em>z</em> rotation angle applied to the input value, in degrees. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::RotatePoint::RotatePoint"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">RotatePoint::RotatePoint           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default rotation angle around the <em>x</em> axis, in degrees, is set to <a class="el" href="group__transformermodules.html#ga0">noise::module::DEFAULT_ROTATE_X</a>.<p>
-The default rotation angle around the <em>y</em> axis, in degrees, is set to <a class="el" href="group__transformermodules.html#ga1">noise::module::DEFAULT_ROTATE_Y</a>.<p>
-The default rotation angle around the <em>z</em> axis, in degrees, is set to <a class="el" href="group__transformermodules.html#ga2">noise::module::DEFAULT_ROTATE_Z</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::RotatePoint::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::RotatePoint::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::RotatePoint::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double RotatePoint::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::RotatePoint::GetXAngle"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::RotatePoint::GetXAngle           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the rotation angle around the <em>x</em> axis to apply to the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The rotation angle around the <em>x</em> axis, in degrees. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::RotatePoint::GetYAngle"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::RotatePoint::GetYAngle           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the rotation angle around the <em>y</em> axis to apply to the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The rotation angle around the <em>y</em> axis, in degrees. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::RotatePoint::GetZAngle"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::RotatePoint::GetZAngle           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the rotation angle around the <em>z</em> axis to apply to the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The rotation angle around the <em>z</em> axis, in degrees. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::RotatePoint::SetAngles"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void RotatePoint::SetAngles           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>xAngle</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>yAngle</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>zAngle</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the rotation angles around all three axes to apply to the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>xAngle</em>&nbsp;</td><td>The rotation angle around the <em>x</em> axis, in degrees. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>yAngle</em>&nbsp;</td><td>The rotation angle around the <em>y</em> axis, in degrees. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>zAngle</em>&nbsp;</td><td>The rotation angle around the <em>z</em> axis, in degrees.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">GetValue()</a> method rotates the coordinates of the input value around the origin before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::RotatePoint::SetXAngle"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::RotatePoint::SetXAngle           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>xAngle</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the rotation angle around the <em>x</em> axis to apply to the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>xAngle</em>&nbsp;</td><td>The rotation angle around the <em>x</em> axis, in degrees.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">GetValue()</a> method rotates the coordinates of the input value around the origin before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::RotatePoint::SetYAngle"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::RotatePoint::SetYAngle           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>yAngle</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the rotation angle around the <em>y</em> axis to apply to the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>yAngle</em>&nbsp;</td><td>The rotation angle around the <em>y</em> axis, in degrees.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">GetValue()</a> method rotates the coordinates of the input value around the origin before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::RotatePoint::SetZAngle"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::RotatePoint::SetZAngle           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>zAngle</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the rotation angle around the <em>z</em> axis to apply to the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>zAngle</em>&nbsp;</td><td>The rotation angle around the <em>z</em> axis, in degrees.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">GetValue()</a> method rotates the coordinates of the input value around the origin before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="rotatepoint_8h-source.html">rotatepoint.h</a><li>rotatepoint.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1RotatePoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias-members.html
+++ /dev/null
@@ -1,135 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::ScaleBias Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a1">GetBias</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a2">GetScale</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a3">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#p0">m_bias</a></td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#p1">m_scale</a></td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a0">ScaleBias</a>()</td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a5">SetBias</a>(double bias)</td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a6">SetScale</a>(double scale)</td><td><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias.html
+++ /dev/null
@@ -1,427 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::ScaleBias Class Reference<br>
-<small>
-[<a class="el" href="group__modifiermodules.html">Modifier Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="scalebias_8h-source.html">scalebias.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::ScaleBias:
-<p><center><img src="classnoise_1_1module_1_1ScaleBias.png" usemap="#noise::module::ScaleBias_map" border="0" alt=""></center>
-<map name="noise::module::ScaleBias_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,150,24">
-</map>
-<a href="classnoise_1_1module_1_1ScaleBias-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that applies a scaling factor and a bias to the output value from a source module. 
-<p>
-<div align="center">
-<img src="modulescalebias.png" alt="modulescalebias.png">
-</div>
-<p>
-The <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">GetValue()</a> method retrieves the output value from the source module, multiplies it with a scaling factor, adds a bias to it, then outputs the value.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a0">ScaleBias</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a1">GetBias</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the bias to apply to the scaled output value from the source module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a2">GetScale</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the scaling factor to apply to the output value from the source module.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a3">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a5">SetBias</a> (double bias)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the bias to apply to the scaled output value from the source module.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a6">SetScale</a> (double scale)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the scaling factor to apply to the output value from the source module.  <a href="#a6"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::ScaleBias::m_bias"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#p0">m_bias</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Bias to apply to the scaled output value from the source module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::ScaleBias::m_scale"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html#p1">m_scale</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scaling factor to apply to the output value from the source module. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::ScaleBias::ScaleBias"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">ScaleBias::ScaleBias           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default bias is set to <a class="el" href="group__modifiermodules.html#ga3">noise::module::DEFAULT_BIAS</a>.<p>
-The default scaling factor is set to <a class="el" href="group__modifiermodules.html#ga4">noise::module::DEFAULT_SCALE</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::ScaleBias::GetBias"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::ScaleBias::GetBias           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the bias to apply to the scaled output value from the source module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The bias to apply.</dd></dl>
-The <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">GetValue()</a> method retrieves the output value from the source module, multiplies it with the scaling factor, adds the bias to it, then outputs the value.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::ScaleBias::GetScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::ScaleBias::GetScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the scaling factor to apply to the output value from the source module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The scaling factor to apply.</dd></dl>
-The <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">GetValue()</a> method retrieves the output value from the source module, multiplies it with the scaling factor, adds the bias to it, then outputs the value.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::ScaleBias::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::ScaleBias::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::ScaleBias::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double ScaleBias::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a3">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::ScaleBias::SetBias"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::ScaleBias::SetBias           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>bias</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the bias to apply to the scaled output value from the source module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>bias</em>&nbsp;</td><td>The bias to apply.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">GetValue()</a> method retrieves the output value from the source module, multiplies it with the scaling factor, adds the bias to it, then outputs the value.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::ScaleBias::SetScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::ScaleBias::SetScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>scale</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the scaling factor to apply to the output value from the source module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>scale</em>&nbsp;</td><td>The scaling factor to apply.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">GetValue()</a> method retrieves the output value from the source module, multiplies it with the scaling factor, adds the bias to it, then outputs the value.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="scalebias_8h-source.html">scalebias.h</a><li>scalebias.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScaleBias.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint-members.html
+++ /dev/null
@@ -1,140 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::ScalePoint Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a3">GetXScale</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a4">GetYScale</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a5">GetZScale</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p0">m_xScale</a></td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p1">m_yScale</a></td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p2">m_zScale</a></td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a0">ScalePoint</a>()</td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a6">SetScale</a>(double scale)</td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a7">SetScale</a>(double xScale, double yScale, double zScale)</td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a8">SetXScale</a>(double xScale)</td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a9">SetYScale</a>(double yScale)</td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a10">SetZScale</a>(double zScale)</td><td><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint.html
+++ /dev/null
@@ -1,596 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::ScalePoint Class Reference<br>
-<small>
-[<a class="el" href="group__transformermodules.html">Transformer Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="scalepoint_8h-source.html">scalepoint.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::ScalePoint:
-<p><center><img src="classnoise_1_1module_1_1ScalePoint.png" usemap="#noise::module::ScalePoint_map" border="0" alt=""></center>
-<map name="noise::module::ScalePoint_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,154,24">
-</map>
-<a href="classnoise_1_1module_1_1ScalePoint-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that scales the coordinates of the input value before returning the output value from a source module. 
-<p>
-<div align="center">
-<img src="modulescalepoint.png" alt="modulescalepoint.png">
-</div>
-<p>
-The <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">GetValue()</a> method multiplies the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value with a scaling factor before returning the output value from the source module. To set the scaling factor, call the <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a6">SetScale()</a> method. To set the scaling factor to apply to the individual <em>x</em>, <em>y</em>, or <em>z</em> coordinates, call the <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a8">SetXScale()</a>, <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a9">SetYScale()</a> or <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a10">SetZScale()</a> methods, respectively.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a0">ScalePoint</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a3">GetXScale</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the scaling factor applied to the <em>x</em> coordinate of the input value.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a4">GetYScale</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the scaling factor applied to the <em>y</em> coordinate of the input value.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a5">GetZScale</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the scaling factor applied to the <em>z</em> coordinate of the input value.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a6">SetScale</a> (double scale)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the scaling factor to apply to the input value.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a7">SetScale</a> (double xScale, double yScale, double zScale)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the scaling factor to apply to the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a8">SetXScale</a> (double xScale)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the scaling factor to apply to the <em>x</em> coordinate of the input value.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a9">SetYScale</a> (double yScale)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the scaling factor to apply to the <em>y</em> coordinate of the input value.  <a href="#a9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a10">SetZScale</a> (double zScale)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the scaling factor to apply to the <em>z</em> coordinate of the input value.  <a href="#a10"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::ScalePoint::m_xScale"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p0">m_xScale</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scaling factor applied to the <em>x</em> coordinate of the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::ScalePoint::m_yScale"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p1">m_yScale</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scaling factor applied to the <em>y</em> coordinate of the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::ScalePoint::m_zScale"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p2">m_zScale</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scaling factor applied to the <em>z</em> coordinate of the input value. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::ScalePoint::ScalePoint"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">ScalePoint::ScalePoint           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default scaling factor applied to the <em>x</em> coordinate is set to <a class="el" href="group__transformermodules.html#ga3">noise::module::DEFAULT_SCALE_POINT_X</a>.<p>
-The default scaling factor applied to the <em>y</em> coordinate is set to <a class="el" href="group__transformermodules.html#ga4">noise::module::DEFAULT_SCALE_POINT_Y</a>.<p>
-The default scaling factor applied to the <em>z</em> coordinate is set to <a class="el" href="group__transformermodules.html#ga5">noise::module::DEFAULT_SCALE_POINT_Z</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::ScalePoint::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::ScalePoint::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::ScalePoint::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double ScalePoint::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::ScalePoint::GetXScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::ScalePoint::GetXScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the scaling factor applied to the <em>x</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The scaling factor applied to the <em>x</em> coordinate. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::ScalePoint::GetYScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::ScalePoint::GetYScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the scaling factor applied to the <em>y</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The scaling factor applied to the <em>y</em> coordinate. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::ScalePoint::GetZScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::ScalePoint::GetZScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the scaling factor applied to the <em>z</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The scaling factor applied to the <em>z</em> coordinate. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::ScalePoint::SetScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::ScalePoint::SetScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>xScale</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>yScale</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>zScale</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the scaling factor to apply to the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>xScale</em>&nbsp;</td><td>The scaling factor to apply to the <em>x</em> coordinate. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>yScale</em>&nbsp;</td><td>The scaling factor to apply to the <em>y</em> coordinate. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>zScale</em>&nbsp;</td><td>The scaling factor to apply to the <em>z</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">GetValue()</a> method multiplies the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value with a scaling factor before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::ScalePoint::SetScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::ScalePoint::SetScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>scale</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the scaling factor to apply to the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>scale</em>&nbsp;</td><td>The scaling factor to apply.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">GetValue()</a> method multiplies the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value with a scaling factor before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::ScalePoint::SetXScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::ScalePoint::SetXScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>xScale</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the scaling factor to apply to the <em>x</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>xScale</em>&nbsp;</td><td>The scaling factor to apply to the <em>x</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">GetValue()</a> method multiplies the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value with a scaling factor before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::ScalePoint::SetYScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::ScalePoint::SetYScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>yScale</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the scaling factor to apply to the <em>y</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>yScale</em>&nbsp;</td><td>The scaling factor to apply to the <em>y</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">GetValue()</a> method multiplies the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value with a scaling factor before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a10" doxytag="noise::module::ScalePoint::SetZScale"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::ScalePoint::SetZScale           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>zScale</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the scaling factor to apply to the <em>z</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>zScale</em>&nbsp;</td><td>The scaling factor to apply to the <em>z</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">GetValue()</a> method multiplies the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value with a scaling factor before returning the output value from the source module.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="scalepoint_8h-source.html">scalepoint.h</a><li>scalepoint.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1ScalePoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Select-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Select-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Select-members.html
+++ /dev/null
@@ -1,139 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Select Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a1">GetControlModule</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a2">GetEdgeFalloff</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a3">GetLowerBound</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a4">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a5">GetUpperBound</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a6">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#p0">m_edgeFalloff</a></td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#p1">m_lowerBound</a></td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#p2">m_upperBound</a></td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a0">Select</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a7">SetBounds</a>(double lowerBound, double upperBound)</td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a8">SetControlModule</a>(const Module &amp;controlModule)</td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Select.html#a9">SetEdgeFalloff</a>(double edgeFalloff)</td><td><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Select.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Select.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Select.html
+++ /dev/null
@@ -1,570 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Select Class Reference<br>
-<small>
-[<a class="el" href="group__selectormodules.html">Selector Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="select_8h-source.html">select.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Select:
-<p><center><img src="classnoise_1_1module_1_1Select.png" usemap="#noise::module::Select_map" border="0" alt=""></center>
-<map name="noise::module::Select_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,136,24">
-</map>
-<a href="classnoise_1_1module_1_1Select-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs the value selected from one of two source modules chosen by the output value from a control module. 
-<p>
-<div align="center">
-<img src="moduleselect.png" alt="moduleselect.png">
-</div>
-<p>
-Unlike most other noise modules, the index value assigned to a source module determines its role in the selection operation:<ul>
-<li>Source module 0 (upper left in the diagram) outputs a value.</li><li>Source module 1 (lower left in the diagram) outputs a value.</li><li>Source module 2 (bottom of the diagram) is known as the <em>control module</em>. The control module determines the value to select. If the output value from the control module is within a range of values known as the <em>selection range</em>, this noise module outputs the value from the source module with an index value of 1. Otherwise, this noise module outputs the value from the source module with an index value of 0.</li></ul>
-<p>
-To specify the bounds of the selection range, call the <a class="el" href="classnoise_1_1module_1_1Select.html#a7">SetBounds()</a> method.<p>
-An application can pass the control module to the <a class="el" href="classnoise_1_1module_1_1Select.html#a8">SetControlModule()</a> method instead of the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. This may make the application code easier to read.<p>
-By default, there is an abrupt transition between the output values from the two source modules at the selection-range boundary. To smooth the transition, pass a non-zero value to the <a class="el" href="classnoise_1_1module_1_1Select.html#a9">SetEdgeFalloff()</a> method. Higher values result in a smoother transition.<p>
-This noise module requires three source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a0">Select</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a1">GetControlModule</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the control module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a2">GetEdgeFalloff</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the falloff value at the edge transition.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a3">GetLowerBound</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the lower bound of the selection range.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a4">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a5">GetUpperBound</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the upper bound of the selection range.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a6">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a7">SetBounds</a> (double lowerBound, double upperBound)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the lower and upper bounds of the selection range.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a8">SetControlModule</a> (const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;controlModule)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the control module.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#a9">SetEdgeFalloff</a> (double edgeFalloff)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the falloff value at the edge transition.  <a href="#a9"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Select::m_edgeFalloff"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#p0">m_edgeFalloff</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Edge-falloff value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Select::m_lowerBound"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#p1">m_lowerBound</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Lower bound of the selection range. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::Select::m_upperBound"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html#p2">m_upperBound</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Upper bound of the selection range. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Select::Select"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Select::Select           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default falloff value at the edge transition is set to <a class="el" href="group__selectormodules.html#ga0">noise::module::DEFAULT_SELECT_EDGE_FALLOFF</a>.<p>
-The default lower bound of the selection range is set to <a class="el" href="group__selectormodules.html#ga1">noise::module::DEFAULT_SELECT_LOWER_BOUND</a>.<p>
-The default upper bound of the selection range is set to <a class="el" href="group__selectormodules.html#ga2">noise::module::DEFAULT_SELECT_UPPER_BOUND</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Select::GetControlModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; noise::module::Select::GetControlModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the control module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A reference to the control module.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>A control module has been added to this noise module via a call to <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> or <a class="el" href="classnoise_1_1module_1_1Select.html#a8">SetControlModule()</a>.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionNoModule</em>&nbsp;</td><td>See the preconditions for more information.</td></tr>
-  </table>
-</dl>
-The control module determines the output value to select. If the output value from the control module is within a range of values known as the <em>selection range</em>, the <a class="el" href="classnoise_1_1module_1_1Select.html#a6">GetValue()</a> method outputs the value from the source module with an index value of 1. Otherwise, this method outputs the value from the source module with an index value of 0.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Select::GetEdgeFalloff"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Select::GetEdgeFalloff           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the falloff value at the edge transition. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The falloff value at the edge transition.</dd></dl>
-The falloff value is the width of the edge transition at either edge of the selection range.<p>
-By default, there is an abrupt transition between the output values from the two source modules at the selection-range boundary.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Select::GetLowerBound"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Select::GetLowerBound           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the lower bound of the selection range. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The lower bound of the selection range.</dd></dl>
-If the output value from the control module is within the selection range, the <a class="el" href="classnoise_1_1module_1_1Select.html#a6">GetValue()</a> method outputs the value from the source module with an index value of 1. Otherwise, this method outputs the value from the source module with an index value of 0.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Select::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Select::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Select::GetUpperBound"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Select::GetUpperBound           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the upper bound of the selection range. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The upper bound of the selection range.</dd></dl>
-If the output value from the control module is within the selection range, the <a class="el" href="classnoise_1_1module_1_1Select.html#a6">GetValue()</a> method outputs the value from the source module with an index value of 1. Otherwise, this method outputs the value from the source module with an index value of 0.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::Select::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Select::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Select.html#a4">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::Select::SetBounds"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Select::SetBounds           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>lowerBound</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>upperBound</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the lower and upper bounds of the selection range. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>lowerBound</em>&nbsp;</td><td>The lower bound. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>upperBound</em>&nbsp;</td><td>The upper bound.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The lower bound must be less than or equal to the upper bound.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-If the output value from the control module is within the selection range, the <a class="el" href="classnoise_1_1module_1_1Select.html#a6">GetValue()</a> method outputs the value from the source module with an index value of 1. Otherwise, this method outputs the value from the source module with an index value of 0.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::Select::SetControlModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Select::SetControlModule           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const <a class="el" href="classnoise_1_1module_1_1Module.html">Module</a> &amp;&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>controlModule</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the control module. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>controlModule</em>&nbsp;</td><td>The control module.</td></tr>
-  </table>
-</dl>
-The control module determines the output value to select. If the output value from the control module is within a range of values known as the <em>selection range</em>, the <a class="el" href="classnoise_1_1module_1_1Select.html#a6">GetValue()</a> method outputs the value from the source module with an index value of 1. Otherwise, this method outputs the value from the source module with an index value of 0.<p>
-This method assigns the control module an index value of 2. Passing the control module to this method produces the same results as passing the control module to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method while assigning that noise module an index value of 2.<p>
-This control module must exist throughout the lifetime of this noise module unless another control module replaces that control module.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::Select::SetEdgeFalloff"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Select::SetEdgeFalloff           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>edgeFalloff</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the falloff value at the edge transition. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>edgeFalloff</em>&nbsp;</td><td>The falloff value at the edge transition.</td></tr>
-  </table>
-</dl>
-The falloff value is the width of the edge transition at either edge of the selection range.<p>
-By default, there is an abrupt transition between the values from the two source modules at the boundaries of the selection range.<p>
-For example, if the selection range is 0.5 to 0.8, and the edge falloff value is 0.1, then the <a class="el" href="classnoise_1_1module_1_1Select.html#a6">GetValue()</a> method outputs:<ul>
-<li>the output value from the source module with an index value of 0 if the output value from the control module is less than 0.4 ( = 0.5 - 0.1).</li><li>a linear blend between the two output values from the two source modules if the output value from the control module is between 0.4 ( = 0.5 - 0.1) and 0.6 ( = 0.5 + 0.1).</li><li>the output value from the source module with an index value of 1 if the output value from the control module is between 0.6 ( = 0.5 + 0.1) and 0.7 ( = 0.8 - 0.1).</li><li>a linear blend between the output values from the two source modules if the output value from the control module is between 0.7 ( = 0.8 - 0.1 ) and 0.9 ( = 0.8 + 0.1).</li><li>the output value from the source module with an index value of 0 if the output value from the control module is greater than 0.9 ( = 0.8 + 0.1). </li></ul>
-    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="select_8h-source.html">select.h</a><li>select.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Select.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Select.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Select.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres-members.html
+++ /dev/null
@@ -1,132 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Spheres Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Spheres.html#a1">GetFrequency</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Spheres.html#a2">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Spheres.html#a3">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Spheres.html#p0">m_frequency</a></td><td><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Spheres.html#a4">SetFrequency</a>(double frequency)</td><td><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Spheres.html#a0">Spheres</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres.html
+++ /dev/null
@@ -1,355 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Spheres Class Reference<br>
-<small>
-[<a class="el" href="group__generatormodules.html">Generator Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="spheres_8h-source.html">spheres.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Spheres:
-<p><center><img src="classnoise_1_1module_1_1Spheres.png" usemap="#noise::module::Spheres_map" border="0" alt=""></center>
-<map name="noise::module::Spheres_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,141,24">
-</map>
-<a href="classnoise_1_1module_1_1Spheres-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs concentric spheres. 
-<p>
-<div align="center">
-<img src="modulespheres.png" alt="modulespheres.png">
-</div>
-<p>
-This noise module outputs concentric spheres centered on the origin like the concentric rings of an onion.<p>
-The first sphere has a radius of 1.0. Each subsequent sphere has a radius that is 1.0 unit larger than the previous sphere.<p>
-The output value from this noise module is determined by the distance between the input value and the the nearest spherical surface. The input values that are located on a spherical surface are given the output value 1.0 and the input values that are equidistant from two spherical surfaces are given the output value -1.0.<p>
-An application can change the frequency of the concentric spheres. Increasing the frequency reduces the distances between spheres. To specify the frequency, call the <a class="el" href="classnoise_1_1module_1_1Spheres.html#a4">SetFrequency()</a> method.<p>
-This noise module, modified with some low-frequency, low-power turbulence, is useful for generating agate-like textures.<p>
-This noise module does not require any source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Spheres.html#a0">Spheres</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Spheres.html#a1">GetFrequency</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the frequency of the concentric spheres.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Spheres.html#a2">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Spheres.html#a3">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Spheres.html#a4">SetFrequency</a> (double frequency)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the frequenct of the concentric spheres.  <a href="#a4"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Spheres::m_frequency"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Spheres.html#p0">m_frequency</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency of the concentric spheres. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Spheres::Spheres"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Spheres::Spheres           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default frequency is set to <a class="el" href="group__generatormodules.html#ga22">noise::module::DEFAULT_SPHERES_FREQUENCY</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Spheres::GetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Spheres::GetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the frequency of the concentric spheres. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The frequency of the concentric spheres.</dd></dl>
-Increasing the frequency increases the density of the concentric spheres, reducing the distances between them.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Spheres::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Spheres::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Spheres::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Spheres::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Spheres.html#a2">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Spheres::SetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Spheres::SetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>frequency</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the frequenct of the concentric spheres. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>frequency</em>&nbsp;</td><td>The frequency of the concentric spheres.</td></tr>
-  </table>
-</dl>
-Increasing the frequency increases the density of the concentric spheres, reducing the distances between them.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="spheres_8h-source.html">spheres.h</a><li>spheres.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Spheres.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace-members.html
+++ /dev/null
@@ -1,142 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Terrace Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a2">AddControlPoint</a>(double value)</td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a3">ClearAllControlPoints</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#b0">FindInsertionPos</a>(double value)</td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a4">GetControlPointArray</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a5">GetControlPointCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a6">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a9">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#b1">InsertAtPos</a>(int insertionPos, double value)</td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a7">InvertTerraces</a>(bool invert=true)</td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a8">IsTerracesInverted</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#p0">m_controlPointCount</a></td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#p1">m_invertTerraces</a></td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#p2">m_pControlPoints</a></td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a10">MakeControlPoints</a>(int controlPointCount)</td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a0">Terrace</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Terrace.html#a1">~Terrace</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace.html
+++ /dev/null
@@ -1,630 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Terrace Class Reference<br>
-<small>
-[<a class="el" href="group__modifiermodules.html">Modifier Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="terrace_8h-source.html">terrace.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Terrace:
-<p><center><img src="classnoise_1_1module_1_1Terrace.png" usemap="#noise::module::Terrace_map" border="0" alt=""></center>
-<map name="noise::module::Terrace_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,139,24">
-</map>
-<a href="classnoise_1_1module_1_1Terrace-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that maps the output value from a source module onto a terrace-forming curve. 
-<p>
-<div align="center">
-<img src="moduleterrace.png" alt="moduleterrace.png">
-</div>
-<p>
-This noise module maps the output value from the source module onto a terrace-forming curve. The start of this curve has a slope of zero; its slope then smoothly increases. This curve also contains <em>control points</em> which resets the slope to zero at that point, producing a "terracing" effect. Refer to the following illustration:<p>
-<div align="center">
-<img src="terrace.png" alt="terrace.png">
-</div>
-<p>
-To add a control point to this noise module, call the <a class="el" href="classnoise_1_1module_1_1Terrace.html#a2">AddControlPoint()</a> method.<p>
-An application must add a minimum of two control points to the curve. If this is not done, the <a class="el" href="classnoise_1_1module_1_1Terrace.html#a9">GetValue()</a> method fails. The control points can have any value, although no two control points can have the same value. There is no limit to the number of control points that can be added to the curve.<p>
-This noise module clamps the output value from the source module if that value is less than the value of the lowest control point or greater than the value of the highest control point.<p>
-This noise module is often used to generate terrain features such as your stereotypical desert canyon.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0" doxytag="noise::module::Terrace::Terrace"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a0">Terrace</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1" doxytag="noise::module::Terrace::~Terrace"></a>
-&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a1">~Terrace</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a2">AddControlPoint</a> (double value)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a control point to the terrace-forming curve.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a3">ClearAllControlPoints</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes all the control points on the terrace-forming curve.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const double *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a4">GetControlPointArray</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a pointer to the array of control points on the terrace-forming curve.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a5">GetControlPointCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of control points on the terrace-forming curve.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a6">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a7">InvertTerraces</a> (bool invert=true)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enables or disables the inversion of the terrace-forming curve between the control points.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a8">IsTerracesInverted</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines if the terrace-forming curve between the control points is inverted.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a9">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#a10">MakeControlPoints</a> (int controlPointCount)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a number of equally-spaced control points that range from -1 to +1.  <a href="#a10"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#b0">FindInsertionPos</a> (double value)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines the array index in which to insert the control point into the internal control point array.  <a href="#b0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#b1">InsertAtPos</a> (int insertionPos, double value)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inserts the control point at the specified position in the internal control point array.  <a href="#b1"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Terrace::m_controlPointCount"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#p0">m_controlPointCount</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of control points stored in this noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Terrace::m_invertTerraces"></a>
-bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#p1">m_invertTerraces</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines if the terrace-forming curve between all control points is inverted. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::Terrace::m_pControlPoints"></a>
-double *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html#p2">m_pControlPoints</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Array that stores the control points. <br></td></tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a2" doxytag="noise::module::Terrace::AddControlPoint"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Terrace::AddControlPoint           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>value</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Adds a control point to the terrace-forming curve. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>The value of the control point to add.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>No two control points have the same value.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-Two or more control points define the terrace-forming curve. The start of this curve has a slope of zero; its slope then smoothly increases. At the control points, its slope resets to zero.<p>
-It does not matter which order these points are added.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Terrace::ClearAllControlPoints"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Terrace::ClearAllControlPoints           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Deletes all the control points on the terrace-forming curve. 
-<p>
-<dl compact><dt><b>Postcondition:</b></dt><dd>All control points on the terrace-forming curve are deleted. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="b0" doxytag="noise::module::Terrace::FindInsertionPos"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int Terrace::FindInsertionPos           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>value</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [protected]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Determines the array index in which to insert the control point into the internal control point array. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>The value of the control point.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The array index in which to insert the control point.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>No two control points have the same value.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-By inserting the control point at the returned array index, this class ensures that the control point array is sorted by value. The code that maps a value onto the curve requires a sorted control point array.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Terrace::GetControlPointArray"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">const double* noise::module::Terrace::GetControlPointArray           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns a pointer to the array of control points on the terrace-forming curve. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>A pointer to the array of control points in this noise module.</dd></dl>
-Two or more control points define the terrace-forming curve. The start of this curve has a slope of zero; its slope then smoothly increases. At the control points, its slope resets to zero.<p>
-Before calling this method, call <a class="el" href="classnoise_1_1module_1_1Terrace.html#a5">GetControlPointCount()</a> to determine the number of control points in this array.<p>
-It is recommended that an application does not store this pointer for later use since the pointer to the array may change if the application calls another method of this object.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Terrace::GetControlPointCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::Terrace::GetControlPointCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of control points on the terrace-forming curve. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of control points on the terrace-forming curve. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::Terrace::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Terrace::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::Terrace::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Terrace::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Terrace.html#a6">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="b1" doxytag="noise::module::Terrace::InsertAtPos"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Terrace::InsertAtPos           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname" nowrap> <em>insertionPos</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>value</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [protected]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Inserts the control point at the specified position in the internal control point array. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>insertionPos</em>&nbsp;</td><td>The zero-based array position in which to insert the control point. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>The value of the control point.</td></tr>
-  </table>
-</dl>
-To make room for this new control point, this method reallocates the control point array and shifts all control points occurring after the insertion position up by one.<p>
-Because the curve mapping algorithm in this noise module requires that all control points in the array be sorted by value, the new control point should be inserted at the position in which the order is still preserved.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::Terrace::InvertTerraces"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Terrace::InvertTerraces           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">bool&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>invert</em> = <code>true</code>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Enables or disables the inversion of the terrace-forming curve between the control points. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>invert</em>&nbsp;</td><td>Specifies whether to invert the curve between the control points. </td></tr>
-  </table>
-</dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::Terrace::IsTerracesInverted"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">bool noise::module::Terrace::IsTerracesInverted           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Determines if the terrace-forming curve between the control points is inverted. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd><ul>
-<li><em>true</em> if the curve between the control points is inverted.</li><li><em>false</em> if the curve between the control points is not inverted. </li></ul>
-</dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a10" doxytag="noise::module::Terrace::MakeControlPoints"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Terrace::MakeControlPoints           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>controlPointCount</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Creates a number of equally-spaced control points that range from -1 to +1. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>controlPointCount</em>&nbsp;</td><td>The number of control points to generate.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The number of control points must be greater than or equal to 2.</dd></dl>
-<dl compact><dt><b>Postcondition:</b></dt><dd>The previous control points on the terrace-forming curve are deleted.</dd></dl>
-<dl compact><dt><b>Exceptions:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>noise::ExceptionInvalidParam</em>&nbsp;</td><td>An invalid parameter was specified; see the preconditions for more information.</td></tr>
-  </table>
-</dl>
-Two or more control points define the terrace-forming curve. The start of this curve has a slope of zero; its slope then smoothly increases. At the control points, its slope resets to zero.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="terrace_8h-source.html">terrace.h</a><li>terrace.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Terrace.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint-members.html
+++ /dev/null
@@ -1,140 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::TranslatePoint Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a1">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a3">GetXTranslation</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a4">GetYTranslation</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a5">GetZTranslation</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p0">m_xTranslation</a></td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p1">m_yTranslation</a></td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p2">m_zTranslation</a></td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a6">SetTranslation</a>(double translation)</td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a7">SetTranslation</a>(double xTranslation, double yTranslation, double zTranslation)</td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a8">SetXTranslation</a>(double xTranslation)</td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a9">SetYTranslation</a>(double yTranslation)</td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a10">SetZTranslation</a>(double zTranslation)</td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a0">TranslatePoint</a>()</td><td><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint.html
+++ /dev/null
@@ -1,596 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::TranslatePoint Class Reference<br>
-<small>
-[<a class="el" href="group__transformermodules.html">Transformer Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="translatepoint_8h-source.html">translatepoint.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::TranslatePoint:
-<p><center><img src="classnoise_1_1module_1_1TranslatePoint.png" usemap="#noise::module::TranslatePoint_map" border="0" alt=""></center>
-<map name="noise::module::TranslatePoint_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,174,24">
-</map>
-<a href="classnoise_1_1module_1_1TranslatePoint-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that moves the coordinates of the input value before returning the output value from a source module. 
-<p>
-<div align="center">
-<img src="moduletranslatepoint.png" alt="moduletranslatepoint.png">
-</div>
-<p>
-The <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">GetValue()</a> method moves the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value by a translation amount before returning the output value from the source module. To set the translation amount, call the <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a6">SetTranslation()</a> method. To set the translation amount to apply to the individual <em>x</em>, <em>y</em>, or <em>z</em> coordinates, call the <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a8">SetXTranslation()</a>, <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a9">SetYTranslation()</a> or <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a10">SetZTranslation()</a> methods, respectively.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a0">TranslatePoint</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a1">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a3">GetXTranslation</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the translation amount to apply to the <em>x</em> coordinate of the input value.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a4">GetYTranslation</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the translation amount to apply to the <em>y</em> coordinate of the input value.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a5">GetZTranslation</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the translation amount to apply to the <em>z</em> coordinate of the input value.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a6">SetTranslation</a> (double translation)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the translation amount to apply to the input value.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a7">SetTranslation</a> (double xTranslation, double yTranslation, double zTranslation)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the translation amounts to apply to the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a8">SetXTranslation</a> (double xTranslation)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the translation amount to apply to the <em>x</em> coordinate of the input value.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a9">SetYTranslation</a> (double yTranslation)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the translation amount to apply to the <em>y</em> coordinate of the input value.  <a href="#a9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a10">SetZTranslation</a> (double zTranslation)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the translation amount to apply to the <em>z</em> coordinate of the input value.  <a href="#a10"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::TranslatePoint::m_xTranslation"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p0">m_xTranslation</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Translation amount applied to the <em>x</em> coordinate of the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::TranslatePoint::m_yTranslation"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p1">m_yTranslation</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Translation amount applied to the <em>y</em> coordinate of the input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::TranslatePoint::m_zTranslation"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p2">m_zTranslation</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Translation amount applied to the <em>z</em> coordinate of the input value. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::TranslatePoint::TranslatePoint"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">TranslatePoint::TranslatePoint           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default translation amount to apply to the <em>x</em> coordinate is set to <a class="el" href="group__transformermodules.html#ga6">noise::module::DEFAULT_TRANSLATE_POINT_X</a>.<p>
-The default translation amount to apply to the <em>y</em> coordinate is set to <a class="el" href="group__transformermodules.html#ga7">noise::module::DEFAULT_TRANSLATE_POINT_Y</a>.<p>
-The default translation amount to apply to the <em>z</em> coordinate is set to <a class="el" href="group__transformermodules.html#ga8">noise::module::DEFAULT_TRANSLATE_POINT_Z</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::TranslatePoint::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::TranslatePoint::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::TranslatePoint::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double TranslatePoint::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a1">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::TranslatePoint::GetXTranslation"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::TranslatePoint::GetXTranslation           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the translation amount to apply to the <em>x</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The translation amount to apply to the <em>x</em> coordinate. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::TranslatePoint::GetYTranslation"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::TranslatePoint::GetYTranslation           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the translation amount to apply to the <em>y</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The translation amount to apply to the <em>y</em> coordinate. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::TranslatePoint::GetZTranslation"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::TranslatePoint::GetZTranslation           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the translation amount to apply to the <em>z</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The translation amount to apply to the <em>z</em> coordinate. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::TranslatePoint::SetTranslation"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::TranslatePoint::SetTranslation           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>xTranslation</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>yTranslation</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>zTranslation</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the translation amounts to apply to the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>xTranslation</em>&nbsp;</td><td>The translation amount to apply to the <em>x</em> coordinate. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>yTranslation</em>&nbsp;</td><td>The translation amount to apply to the <em>y</em> coordinate. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>zTranslation</em>&nbsp;</td><td>The translation amount to apply to the <em>z</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">GetValue()</a> method moves the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value by a translation amount before returning the output value from the source module     </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::TranslatePoint::SetTranslation"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::TranslatePoint::SetTranslation           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>translation</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the translation amount to apply to the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>translation</em>&nbsp;</td><td>The translation amount to apply.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">GetValue()</a> method moves the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value by a translation amount before returning the output value from the source module     </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::TranslatePoint::SetXTranslation"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::TranslatePoint::SetXTranslation           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>xTranslation</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the translation amount to apply to the <em>x</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>xTranslation</em>&nbsp;</td><td>The translation amount to apply to the <em>x</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">GetValue()</a> method moves the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value by a translation amount before returning the output value from the source module     </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::TranslatePoint::SetYTranslation"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::TranslatePoint::SetYTranslation           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>yTranslation</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the translation amount to apply to the <em>y</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>yTranslation</em>&nbsp;</td><td>The translation amount to apply to the <em>y</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">GetValue()</a> method moves the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value by a translation amount before returning the output value from the source module     </td>
-  </tr>
-</table>
-<a class="anchor" name="a10" doxytag="noise::module::TranslatePoint::SetZTranslation"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::TranslatePoint::SetZTranslation           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>zTranslation</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the translation amount to apply to the <em>z</em> coordinate of the input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>zTranslation</em>&nbsp;</td><td>The translation amount to apply to the <em>z</em> coordinate.</td></tr>
-  </table>
-</dl>
-The <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">GetValue()</a> method moves the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value by a translation amount before returning the output value from the source module     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="translatepoint_8h-source.html">translatepoint.h</a><li>translatepoint.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1TranslatePoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence-members.html
+++ /dev/null
@@ -1,141 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Turbulence Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a1">GetFrequency</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a2">GetPower</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a3">GetRoughnessCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a4">GetSeed</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a5">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a6">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#p0">m_power</a></td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#p1">m_xDistortModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#p2">m_yDistortModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#p3">m_zDistortModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a7">SetFrequency</a>(double frequency)</td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a8">SetPower</a>(double power)</td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a9">SetRoughness</a>(int roughness)</td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a10">SetSeed</a>(int seed)</td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a0">Turbulence</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence.html
+++ /dev/null
@@ -1,593 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Turbulence Class Reference<br>
-<small>
-[<a class="el" href="group__transformermodules.html">Transformer Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="turbulence_8h-source.html">turbulence.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Turbulence:
-<p><center><img src="classnoise_1_1module_1_1Turbulence.png" usemap="#noise::module::Turbulence_map" border="0" alt=""></center>
-<map name="noise::module::Turbulence_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,158,24">
-</map>
-<a href="classnoise_1_1module_1_1Turbulence-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that randomly displaces the input value before returning the output value from a source module. 
-<p>
-<div align="center">
-<img src="moduleturbulence.png" alt="moduleturbulence.png">
-</div>
-<p>
-<em><a class="el" href="classnoise_1_1module_1_1Turbulence.html">Turbulence</a></em> is the pseudo-random displacement of the input value. The <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a6">GetValue()</a> method randomly displaces the ( <em>x</em>, <em>y</em>, <em>z</em> ) coordinates of the input value before retrieving the output value from the source module. To control the turbulence, an application can modify its frequency, its power, and its roughness.<p>
-The frequency of the turbulence determines how rapidly the displacement amount changes. To specify the frequency, call the <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a7">SetFrequency()</a> method.<p>
-The power of the turbulence determines the scaling factor that is applied to the displacement amount. To specify the power, call the <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a8">SetPower()</a> method.<p>
-The roughness of the turbulence determines the roughness of the changes to the displacement amount. Low values smoothly change the displacement amount. High values roughly change the displacement amount, which produces more "kinky" changes. To specify the roughness, call the <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a9">SetRoughness()</a> method.<p>
-Use of this noise module may require some trial and error. Assuming that you are using a generator module as the source module, you should first:<ul>
-<li>Set the frequency to the same frequency as the source module.</li><li>Set the power to the reciprocal of the frequency.</li></ul>
-<p>
-From these initial frequency and power values, modify these values until this noise module produce the desired changes in your terrain or texture. For example:<ul>
-<li>Low frequency (1/8 initial frequency) and low power (1/8 initial power) produces very minor, almost unnoticeable changes.</li><li>Low frequency (1/8 initial frequency) and high power (8 times initial power) produces "ropey" lava-like terrain or marble-like textures.</li><li>High frequency (8 times initial frequency) and low power (1/8 initial power) produces a noisy version of the initial terrain or texture.</li><li>High frequency (8 times initial frequency) and high power (8 times initial power) produces nearly pure noise, which isn't entirely useful.</li></ul>
-<p>
-Displacing the input values result in more realistic terrain and textures. If you are generating elevations for terrain height maps, you can use this noise module to produce more realistic mountain ranges or terrain features that look like flowing lava rock. If you are generating values for textures, you can use this noise module to produce realistic marble-like or "oily" textures.<p>
-Internally, there are three <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise modules that displace the input value; one for the <em>x</em>, one for the <em>y</em>, and one for the <em>z</em> coordinate.<p>
-This noise module requires one source module. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a0">Turbulence</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a1">GetFrequency</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the frequency of the turbulence.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a2">GetPower</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the power of the turbulence.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a3">GetRoughnessCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the roughness of the turbulence.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a4">GetSeed</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the seed value of the internal Perlin-noise modules that are used to displace the input values.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a5">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a6">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a7">SetFrequency</a> (double frequency)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the frequency of the turbulence.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a8">SetPower</a> (double power)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the power of the turbulence.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a9">SetRoughness</a> (int roughness)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the roughness of the turbulence.  <a href="#a9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#a10">SetSeed</a> (int seed)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the seed value of the internal noise modules that are used to displace the input values.  <a href="#a10"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Turbulence::m_power"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#p0">m_power</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The power (scale) of the displacement. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Turbulence::m_xDistortModule"></a>
-<a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#p1">m_xDistortModule</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that displaces the <em>x</em> coordinate. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::Turbulence::m_yDistortModule"></a>
-<a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#p2">m_yDistortModule</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that displaces the <em>y</em> coordinate. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p3" doxytag="noise::module::Turbulence::m_zDistortModule"></a>
-<a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html#p3">m_zDistortModule</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that displaces the <em>z</em> coordinate. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Turbulence::Turbulence"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Turbulence::Turbulence           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default frequency is set to <a class="el" href="group__transformermodules.html#ga9">noise::module::DEFAULT_TURBULENCE_FREQUENCY</a>.<p>
-The default power is set to <a class="el" href="group__transformermodules.html#ga10">noise::module::DEFAULT_TURBULENCE_POWER</a>.<p>
-The default roughness is set to <a class="el" href="group__transformermodules.html#ga11">noise::module::DEFAULT_TURBULENCE_ROUGHNESS</a>.<p>
-The default seed value is set to <a class="el" href="group__transformermodules.html#ga12">noise::module::DEFAULT_TURBULENCE_SEED</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Turbulence::GetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Turbulence::GetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const</td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the frequency of the turbulence. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The frequency of the turbulence.</dd></dl>
-The frequency of the turbulence determines how rapidly the displacement amount changes.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Turbulence::GetPower"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Turbulence::GetPower           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the power of the turbulence. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The power of the turbulence.</dd></dl>
-The power of the turbulence determines the scaling factor that is applied to the displacement amount.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Turbulence::GetRoughnessCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::Turbulence::GetRoughnessCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the roughness of the turbulence. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The roughness of the turbulence.</dd></dl>
-The roughness of the turbulence determines the roughness of the changes to the displacement amount. Low values smoothly change the displacement amount. High values roughly change the displacement amount, which produces more "kinky" changes.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Turbulence::GetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int Turbulence::GetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const</td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the seed value of the internal Perlin-noise modules that are used to displace the input values. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The seed value.</dd></dl>
-Internally, there are three <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise modules that displace the input value; one for the <em>x</em>, one for the <em>y</em>, and one for the <em>z</em> coordinate.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Turbulence::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Turbulence::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::Turbulence::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Turbulence::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a5">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::Turbulence::SetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Turbulence::SetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>frequency</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the frequency of the turbulence. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>frequency</em>&nbsp;</td><td>The frequency of the turbulence.</td></tr>
-  </table>
-</dl>
-The frequency of the turbulence determines how rapidly the displacement amount changes.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::Turbulence::SetPower"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Turbulence::SetPower           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>power</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the power of the turbulence. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>power</em>&nbsp;</td><td>The power of the turbulence.</td></tr>
-  </table>
-</dl>
-The power of the turbulence determines the scaling factor that is applied to the displacement amount.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::Turbulence::SetRoughness"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Turbulence::SetRoughness           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>roughness</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the roughness of the turbulence. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>roughness</em>&nbsp;</td><td>The roughness of the turbulence.</td></tr>
-  </table>
-</dl>
-The roughness of the turbulence determines the roughness of the changes to the displacement amount. Low values smoothly change the displacement amount. High values roughly change the displacement amount, which produces more "kinky" changes.<p>
-Internally, there are three <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise modules that displace the input value; one for the <em>x</em>, one for the <em>y</em>, and one for the <em>z</em> coordinate. The roughness value is equal to the number of octaves used by the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise modules.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a10" doxytag="noise::module::Turbulence::SetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void Turbulence::SetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>seed</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the seed value of the internal noise modules that are used to displace the input values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>The seed value.</td></tr>
-  </table>
-</dl>
-Internally, there are three <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise modules that displace the input value; one for the <em>x</em>, one for the <em>y</em>, and one for the <em>z</em> coordinate. This noise module assigns the following seed values to the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise modules:<ul>
-<li>It assigns the seed value (<em>seed</em> + 0) to the <em>x</em> noise module.</li><li>It assigns the seed value (<em>seed</em> + 1) to the <em>y</em> noise module.</li><li>It assigns the seed value (<em>seed</em> + 2) to the <em>z</em> noise module. </li></ul>
-    </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="turbulence_8h-source.html">turbulence.h</a><li>turbulence.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Turbulence.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi-members.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi-members.html
+++ /dev/null
@@ -1,141 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Voronoi Member List</h1>This is the complete list of members for <a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a1">EnableDistance</a>(bool enable=true)</td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a2">GetDisplacement</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a3">GetFrequency</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a5">GetSeed</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a2">GetSourceModule</a>(int index) const </td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a4">GetSourceModuleCount</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a7">GetValue</a>(double x, double y, double z) const </td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a6">IsDistanceEnabled</a>() const </td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#p0">m_displacement</a></td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#p1">m_enableDistance</a></td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#p2">m_frequency</a></td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#p0">m_pSourceModule</a></td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#p3">m_seed</a></td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [protected]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a0">Module</a>(int sourceModuleCount)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a8">SetDisplacement</a>(double displacement)</td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a9">SetFrequency</a>(double frequency)</td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a10">SetSeed</a>(int seed)</td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule</a>(int index, const Module &amp;sourceModule)</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td><code> [inline, virtual]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a0">Voronoi</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classnoise_1_1module_1_1Module.html#a1">~Module</a>()</td><td><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi.html b/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi.html
+++ /dev/null
@@ -1,585 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::Voronoi Class Reference<br>
-<small>
-[<a class="el" href="group__generatormodules.html">Generator Modules</a>]</small>
-</h1><code>#include &lt;<a class="el" href="voronoi_8h-source.html">voronoi.h</a>&gt;</code>
-<p>
-<p>Inheritance diagram for noise::module::Voronoi:
-<p><center><img src="classnoise_1_1module_1_1Voronoi.png" usemap="#noise::module::Voronoi_map" border="0" alt=""></center>
-<map name="noise::module::Voronoi_map">
-<area href="classnoise_1_1module_1_1Module.html" alt="noise::module::Module" shape="rect" coords="0,0,139,24">
-</map>
-<a href="classnoise_1_1module_1_1Voronoi-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-Noise module that outputs <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells. 
-<p>
-<div align="center">
-<img src="modulevoronoi.png" alt="modulevoronoi.png">
-</div>
-<p>
-In mathematics, a <em><a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cell</em> is a region containing all the points that are closer to a specific <em>seed point</em> than to any other seed point. These cells mesh with one another, producing polygon-like formations.<p>
-By default, this noise module randomly places a seed point within each unit cube. By modifying the <em>frequency</em> of the seed points, an application can change the distance between seed points. The higher the frequency, the closer together this noise module places the seed points, which reduces the size of the cells. To specify the frequency of the cells, call the <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a9">SetFrequency()</a> method.<p>
-This noise module assigns each <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cell with a random constant value from a coherent-noise function. The <em>displacement value</em> controls the range of random values to assign to each cell. The range of random values is +/- the displacement value. Call the <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a8">SetDisplacement()</a> method to specify the displacement value.<p>
-To modify the random positions of the seed points, call the <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a10">SetSeed()</a> method.<p>
-This noise module can optionally add the distance from the nearest seed to the output value. To enable this feature, call the <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a1">EnableDistance()</a> method. This causes the points in the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells to increase in value the further away that point is from the nearest seed point.<p>
-<a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells are often used to generate cracked-mud terrain formations or crystal-like textures<p>
-This noise module requires no source modules. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a0">Voronoi</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a1">EnableDistance</a> (bool enable=true)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enables or disables applying the distance from the nearest seed point to the output value.  <a href="#a1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a2">GetDisplacement</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the displacement value of the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells.  <a href="#a2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a3">GetFrequency</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the frequency of the seed points.  <a href="#a3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a4">GetSourceModuleCount</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of source modules required by this noise module.  <a href="#a4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a5">GetSeed</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the seed value used by the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells.  <a href="#a5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a6">IsDistanceEnabled</a> () const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines if the distance from the nearest seed point is applied to the output value.  <a href="#a6"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a7">GetValue</a> (double x, double y, double z) const </td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an output value given the coordinates of the specified input value.  <a href="#a7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a8">SetDisplacement</a> (double displacement)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the displacement value of the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells.  <a href="#a8"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a9">SetFrequency</a> (double frequency)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the frequency of the seed points.  <a href="#a9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#a10">SetSeed</a> (int seed)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the seed value used by the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells.  <a href="#a10"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p0" doxytag="noise::module::Voronoi::m_displacement"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#p0">m_displacement</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scale of the random displacement to apply to each <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cell. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p1" doxytag="noise::module::Voronoi::m_enableDistance"></a>
-bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#p1">m_enableDistance</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines if the distance from the nearest seed point is applied to the output value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p2" doxytag="noise::module::Voronoi::m_frequency"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#p2">m_frequency</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frequency of the seed points. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="p3" doxytag="noise::module::Voronoi::m_seed"></a>
-int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html#p3">m_seed</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seed value used by the coherent-noise function to determine the positions of the seed points. <br></td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="a0" doxytag="noise::module::Voronoi::Voronoi"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">Voronoi::Voronoi           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Constructor. 
-<p>
-The default displacement value is set to <a class="el" href="group__generatormodules.html#ga23">noise::module::DEFAULT_VORONOI_DISPLACEMENT</a>.<p>
-The default frequency is set to <a class="el" href="group__generatormodules.html#ga24">noise::module::DEFAULT_VORONOI_FREQUENCY</a>.<p>
-The default seed value is set to <a class="el" href="group__generatormodules.html#ga25">noise::module::DEFAULT_VORONOI_SEED</a>.     </td>
-  </tr>
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a1" doxytag="noise::module::Voronoi::EnableDistance"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Voronoi::EnableDistance           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">bool&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>enable</em> = <code>true</code>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Enables or disables applying the distance from the nearest seed point to the output value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>enable</em>&nbsp;</td><td>Specifies whether to apply the distance to the output value or not.</td></tr>
-  </table>
-</dl>
-Applying the distance from the nearest seed point to the output value causes the points in the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells to increase in value the further away that point is from the nearest seed point. Setting this value to <em>true</em> (and setting the displacement to a near-zero value) causes this noise module to generate cracked mud formations.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a2" doxytag="noise::module::Voronoi::GetDisplacement"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Voronoi::GetDisplacement           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the displacement value of the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The displacement value of the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells.</dd></dl>
-This noise module assigns each <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cell with a random constant value from a coherent-noise function. The <em>displacement value</em> controls the range of random values to assign to each cell. The range of random values is +/- the displacement value.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a3" doxytag="noise::module::Voronoi::GetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::module::Voronoi::GetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the frequency of the seed points. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The frequency of the seed points.</dd></dl>
-The frequency determines the size of the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells and the distance between these cells.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a5" doxytag="noise::module::Voronoi::GetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::module::Voronoi::GetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the seed value used by the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The seed value.</dd></dl>
-The positions of the seed values are calculated by a coherent-noise function. By modifying the seed value, the output of that function changes.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a4" doxytag="noise::module::Voronoi::GetSourceModuleCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">virtual int noise::module::Voronoi::GetSourceModuleCount           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the number of source modules required by this noise module. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd>The number of source modules required by this noise module. </dd></dl>
-
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a7" doxytag="noise::module::Voronoi::GetValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double Voronoi::GetValue           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"> const<code> [virtual]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an output value given the coordinates of the specified input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The output value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>All source modules required by this noise module have been passed to the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method.</dd></dl>
-Before an application can call this method, it must first connect all required source modules via the <a class="el" href="classnoise_1_1module_1_1Module.html#a5">SetSourceModule()</a> method. If these source modules are not connected to this noise module, this method raises a debug assertion.<p>
-To determine the number of source modules required by this noise module, call the <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a4">GetSourceModuleCount()</a> method. 
-<p>
-Implements <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>.    </td>
-  </tr>
-</table>
-<a class="anchor" name="a6" doxytag="noise::module::Voronoi::IsDistanceEnabled"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">bool noise::module::Voronoi::IsDistanceEnabled           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap> const<code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Determines if the distance from the nearest seed point is applied to the output value. 
-<p>
-<dl compact><dt><b>Returns:</b></dt><dd><ul>
-<li><em>true</em> if the distance is applied to the output value.</li><li><em>false</em> if not.</li></ul>
-</dd></dl>
-Applying the distance from the nearest seed point to the output value causes the points in the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells to increase in value the further away that point is from the nearest seed point.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a8" doxytag="noise::module::Voronoi::SetDisplacement"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Voronoi::SetDisplacement           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>displacement</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the displacement value of the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>displacement</em>&nbsp;</td><td>The displacement value of the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells.</td></tr>
-  </table>
-</dl>
-This noise module assigns each <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cell with a random constant value from a coherent-noise function. The <em>displacement value</em> controls the range of random values to assign to each cell. The range of random values is +/- the displacement value.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a9" doxytag="noise::module::Voronoi::SetFrequency"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Voronoi::SetFrequency           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>frequency</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the frequency of the seed points. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>frequency</em>&nbsp;</td><td>The frequency of the seed points.</td></tr>
-  </table>
-</dl>
-The frequency determines the size of the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells and the distance between these cells.     </td>
-  </tr>
-</table>
-<a class="anchor" name="a10" doxytag="noise::module::Voronoi::SetSeed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::module::Voronoi::SetSeed           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>seed</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Sets the seed value used by the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>The seed value.</td></tr>
-  </table>
-</dl>
-The positions of the seed values are calculated by a coherent-noise function. By modifying the seed value, the output of that function changes.     </td>
-  </tr>
-</table>
-<hr>The documentation for this class was generated from the following files:<ul>
-<li><a class="el" href="voronoi_8h-source.html">voronoi.h</a><li>voronoi.cpp</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi.png b/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/classnoise_1_1module_1_1Voronoi.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/const_8h-source.html b/libnoise/noise/doc/html/const_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/const_8h-source.html
+++ /dev/null
@@ -1,201 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>const.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// const.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_CONST_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_CONST_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00043 
-<a name="l00045"></a><a class="code" href="group__generatormodules.html#ga7">00045</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_CONST_VALUE = 0.0;
-00046 
-<a name="l00057"></a><a class="code" href="classnoise_1_1module_1_1Const.html">00057</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Const.html">Const</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00058     {
-00059 
-00060       <span class="keyword">public</span>:
-00061 
-00066         <a class="code" href="classnoise_1_1module_1_1Const.html">Const</a> ();
-00067 
-<a name="l00071"></a><a class="code" href="classnoise_1_1module_1_1Const.html#a1">00071</a>         <span class="keywordtype">double</span> GetConstValue ()<span class="keyword"> const</span>
-00072 <span class="keyword">        </span>{
-00073           <span class="keywordflow">return</span> m_constValue;
-00074         }
-00075 
-<a name="l00076"></a><a class="code" href="classnoise_1_1module_1_1Const.html#a2">00076</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00077 <span class="keyword">        </span>{
-00078           <span class="keywordflow">return</span> 0;
-00079         }
-00080 
-<a name="l00081"></a><a class="code" href="classnoise_1_1module_1_1Const.html#a3">00081</a>         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z)<span class="keyword"> const</span>
-00082 <span class="keyword">        </span>{
-00083           <span class="keywordflow">return</span> m_constValue;
-00084         }
-00085 
-<a name="l00089"></a><a class="code" href="classnoise_1_1module_1_1Const.html#a4">00089</a>         <span class="keywordtype">void</span> SetConstValue (<span class="keywordtype">double</span> constValue)
-00090         {
-00091           m_constValue = constValue;
-00092         }
-00093 
-00094       <span class="keyword">protected</span>:
-00095 
-<a name="l00097"></a><a class="code" href="classnoise_1_1module_1_1Const.html#p0">00097</a>         <span class="keywordtype">double</span> m_constValue;
-00098 
-00099     };
-00100 
-00102 
-00104 
-00106 
-00107   }
-00108 
-00109 }
-00110 
-00111 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/curve.png b/libnoise/noise/doc/html/curve.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/curve.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/curve_8h-source.html b/libnoise/noise/doc/html/curve_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/curve_8h-source.html
+++ /dev/null
@@ -1,218 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>curve.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// curve.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_CURVE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_CURVE_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-<a name="l00040"></a><a class="code" href="structnoise_1_1module_1_1ControlPoint.html">00040</a>     <span class="keyword">struct </span><a class="code" href="structnoise_1_1module_1_1ControlPoint.html">ControlPoint</a>
-00041     {
-00042 
-<a name="l00044"></a><a class="code" href="structnoise_1_1module_1_1ControlPoint.html#o0">00044</a>       <span class="keywordtype">double</span> inputValue;
-00045 
-<a name="l00047"></a><a class="code" href="structnoise_1_1module_1_1ControlPoint.html#o1">00047</a>       <span class="keywordtype">double</span> outputValue;
-00048 
-00049     };
-00050 
-00053 
-00056 
-<a name="l00081"></a><a class="code" href="classnoise_1_1module_1_1Curve.html">00081</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Curve.html">Curve</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00082     {
-00083 
-00084       <span class="keyword">public</span>:
-00085 
-00087         <a class="code" href="classnoise_1_1module_1_1Curve.html">Curve</a> ();
-00088 
-00090         ~<a class="code" href="classnoise_1_1module_1_1Curve.html">Curve</a> ();
-00091 
-00103         <span class="keywordtype">void</span> AddControlPoint (<span class="keywordtype">double</span> inputValue, <span class="keywordtype">double</span> outputValue);
-00104 
-00108         <span class="keywordtype">void</span> ClearAllControlPoints ();
-00109 
-<a name="l00120"></a><a class="code" href="classnoise_1_1module_1_1Curve.html#a4">00120</a>         <span class="keyword">const</span> <a class="code" href="structnoise_1_1module_1_1ControlPoint.html">ControlPoint</a>* GetControlPointArray ()<span class="keyword"> const</span>
-00121 <span class="keyword">        </span>{
-00122           <span class="keywordflow">return</span> m_pControlPoints;
-00123         }
-00124 
-<a name="l00128"></a><a class="code" href="classnoise_1_1module_1_1Curve.html#a5">00128</a>         <span class="keywordtype">int</span> GetControlPointCount ()<span class="keyword"> const</span>
-00129 <span class="keyword">        </span>{
-00130           <span class="keywordflow">return</span> m_controlPointCount;
-00131         }
-00132 
-<a name="l00133"></a><a class="code" href="classnoise_1_1module_1_1Curve.html#a6">00133</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00134 <span class="keyword">        </span>{
-00135           <span class="keywordflow">return</span> 1;
-00136         }
-00137 
-00138         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00139 
-00140       <span class="keyword">protected</span>:
-00141 
-00158         <span class="keywordtype">int</span> FindInsertionPos (<span class="keywordtype">double</span> inputValue);
-00159 
-00176         <span class="keywordtype">void</span> InsertAtPos (<span class="keywordtype">int</span> insertionPos, <span class="keywordtype">double</span> inputValue,
-00177           <span class="keywordtype">double</span> outputValue);
-00178 
-<a name="l00180"></a><a class="code" href="classnoise_1_1module_1_1Curve.html#p0">00180</a>         <span class="keywordtype">int</span> m_controlPointCount;
-00181 
-<a name="l00183"></a><a class="code" href="classnoise_1_1module_1_1Curve.html#p1">00183</a>         <a class="code" href="structnoise_1_1module_1_1ControlPoint.html">ControlPoint</a>* m_pControlPoints;
-00184 
-00185     };
-00186 
-00188 
-00190 
-00192 
-00193   }
-00194 
-00195 }
-00196 
-00197 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/cylinder_8h-source.html b/libnoise/noise/doc/html/cylinder_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/cylinder_8h-source.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">model</a></div>
-<h1>cylinder.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// cylinder.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODEL_CYLINDER_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODEL_CYLINDER_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include &lt;assert.h&gt;</span>
-00027 <span class="preprocessor">#include &lt;math.h&gt;</span>
-00028 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
-00029 <span class="preprocessor">#include "../module/modulebase.h"</span>
-00030 
-00031 <span class="keyword">namespace </span>noise
-00032 {
-00033 
-00034   <span class="keyword">namespace </span>model
-00035   {
-00036 
-00039 
-00043 
-<a name="l00059"></a><a class="code" href="classnoise_1_1model_1_1Cylinder.html">00059</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1model_1_1Cylinder.html">Cylinder</a>
-00060     {
-00061 
-00062       <span class="keyword">public</span>:
-00063 
-00065         <a class="code" href="classnoise_1_1model_1_1Cylinder.html">Cylinder</a> ();
-00066 
-00071         <a class="code" href="classnoise_1_1model_1_1Cylinder.html">Cylinder</a> (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; module);
-00072 
-<a name="l00079"></a><a class="code" href="classnoise_1_1model_1_1Cylinder.html#a2">00079</a>         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; GetModule ()<span class="keyword"> const</span>
-00080 <span class="keyword">        </span>{
-00081           assert (m_pModule != NULL);
-00082           <span class="keywordflow">return</span> *m_pModule;
-00083         }
-00084 
-00102         <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> angle, <span class="keywordtype">double</span> height) <span class="keyword">const</span>;
-00103 
-<a name="l00111"></a><a class="code" href="classnoise_1_1model_1_1Cylinder.html#a4">00111</a>         <span class="keywordtype">void</span> SetModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; module)
-00112         {
-00113           m_pModule = &amp;module;
-00114         }
-00115 
-00116       <span class="keyword">private</span>:
-00117 
-00119         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>* m_pModule;
-00120 
-00121     };
-00122 
-00124 
-00126 
-00127   }
-00128 
-00129 }
-00130 
-00131 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/cylinders_8h-source.html b/libnoise/noise/doc/html/cylinders_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/cylinders_8h-source.html
+++ /dev/null
@@ -1,198 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>cylinders.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// cylinders.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_CYLINDERS_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_CYLINDERS_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__generatormodules.html#ga8">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_CYLINDERS_FREQUENCY = 1.0;
-00045 
-<a name="l00072"></a><a class="code" href="classnoise_1_1module_1_1Cylinders.html">00072</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Cylinders.html">Cylinders</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00073     {
-00074 
-00075       <span class="keyword">public</span>:
-00076 
-00081         <a class="code" href="classnoise_1_1module_1_1Cylinders.html">Cylinders</a> ();
-00082 
-<a name="l00089"></a><a class="code" href="classnoise_1_1module_1_1Cylinders.html#a1">00089</a>         <span class="keywordtype">double</span> GetFrequency ()<span class="keyword"> const</span>
-00090 <span class="keyword">        </span>{
-00091           <span class="keywordflow">return</span> m_frequency;
-00092         }
-00093 
-<a name="l00094"></a><a class="code" href="classnoise_1_1module_1_1Cylinders.html#a2">00094</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00095 <span class="keyword">        </span>{
-00096           <span class="keywordflow">return</span> 0;
-00097         }
-00098 
-00099         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00100 
-<a name="l00107"></a><a class="code" href="classnoise_1_1module_1_1Cylinders.html#a4">00107</a>         <span class="keywordtype">void</span> SetFrequency (<span class="keywordtype">double</span> frequency)
-00108         {
-00109           m_frequency = frequency;
-00110         }
-00111 
-00112       <span class="keyword">protected</span>:
-00113 
-<a name="l00115"></a><a class="code" href="classnoise_1_1module_1_1Cylinders.html#p0">00115</a>         <span class="keywordtype">double</span> m_frequency;
-00116 
-00117     };
-00118 
-00120 
-00122 
-00124 
-00125   }
-00126 
-00127 }
-00128 
-00129 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/dir_000000.html b/libnoise/noise/doc/html/dir_000000.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/dir_000000.html
+++ /dev/null
@@ -1,157 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>src Directory Reference</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Directories</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">directory&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_000002.html">model</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">directory&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_000001.html">module</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">directory&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_000003.html">win32</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Files</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>basictypes.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>exception.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>interp.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>latlon.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>latlon.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>mathconsts.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>misc.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>noise.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>noisegen.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>noisegen.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>vectortable.h</b></td></tr>
-
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/dir_000001.html b/libnoise/noise/doc/html/dir_000001.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/dir_000001.html
+++ /dev/null
@@ -1,246 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>module Directory Reference</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Files</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>abs.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>abs.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>add.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>add.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>billow.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>billow.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>blend.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>blend.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>cache.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>cache.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>checkerboard.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>checkerboard.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>clamp.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>clamp.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>const.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>const.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>curve.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>curve.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>cylinders.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>cylinders.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>displace.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>displace.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>exponent.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>exponent.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>invert.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>invert.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>max.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>max.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>min.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>min.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>module.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>modulebase.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>modulebase.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>multiply.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>multiply.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>perlin.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>perlin.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>power.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>power.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>ridgedmulti.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>ridgedmulti.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>rotatepoint.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>rotatepoint.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>scalebias.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>scalebias.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>scalepoint.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>scalepoint.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>select.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>select.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>spheres.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>spheres.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>terrace.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>terrace.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>translatepoint.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>translatepoint.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>turbulence.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>turbulence.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>voronoi.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>voronoi.h</b></td></tr>
-
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/dir_000002.html b/libnoise/noise/doc/html/dir_000002.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/dir_000002.html
+++ /dev/null
@@ -1,146 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">model</a></div>
-<h1>model Directory Reference</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Files</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>cylinder.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>cylinder.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>line.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>line.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>model.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>plane.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>plane.h</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>sphere.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>sphere.h</b></td></tr>
-
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/dir_000003.html b/libnoise/noise/doc/html/dir_000003.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/dir_000003.html
+++ /dev/null
@@ -1,132 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000003.html">win32</a></div>
-<h1>win32 Directory Reference</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Files</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>dllmain.cpp</b></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><b>resource.h</b></td></tr>
-
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/displace_8h-source.html b/libnoise/noise/doc/html/displace_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/displace_8h-source.html
+++ /dev/null
@@ -1,232 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>displace.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// displace.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_DISPLACE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_DISPLACE_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00043 
-<a name="l00069"></a><a class="code" href="classnoise_1_1module_1_1Displace.html">00069</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Displace.html">Displace</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00070     {
-00071 
-00072       <span class="keyword">public</span>:
-00073 
-00075       <a class="code" href="classnoise_1_1module_1_1Displace.html">Displace</a> ();
-00076 
-<a name="l00077"></a><a class="code" href="classnoise_1_1module_1_1Displace.html#a1">00077</a>       <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00078 <span class="keyword">      </span>{
-00079         <span class="keywordflow">return</span> 4;
-00080       }
-00081 
-00082       <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00083 
-<a name="l00098"></a><a class="code" href="classnoise_1_1module_1_1Displace.html#a3">00098</a>       <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; GetXDisplaceModule ()<span class="keyword"> const</span>
-00099 <span class="keyword">      </span>{
-00100         <span class="keywordflow">if</span> (m_pSourceModule == NULL || m_pSourceModule[1] == NULL) {
-00101           <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a> ();
-00102         }
-00103         <span class="keywordflow">return</span> *(m_pSourceModule[1]);
-00104       }
-00105 
-<a name="l00120"></a><a class="code" href="classnoise_1_1module_1_1Displace.html#a4">00120</a>       <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; GetYDisplaceModule ()<span class="keyword"> const</span>
-00121 <span class="keyword">      </span>{
-00122         <span class="keywordflow">if</span> (m_pSourceModule == NULL || m_pSourceModule[2] == NULL) {
-00123           <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a> ();
-00124         }
-00125         <span class="keywordflow">return</span> *(m_pSourceModule[2]);
-00126       }
-00127 
-<a name="l00142"></a><a class="code" href="classnoise_1_1module_1_1Displace.html#a5">00142</a>       <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; GetZDisplaceModule ()<span class="keyword"> const</span>
-00143 <span class="keyword">      </span>{
-00144         <span class="keywordflow">if</span> (m_pSourceModule == NULL || m_pSourceModule[3] == NULL) {
-00145           <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a> ();
-00146         }
-00147         <span class="keywordflow">return</span> *(m_pSourceModule[3]);
-00148       }
-00149 
-<a name="l00170"></a><a class="code" href="classnoise_1_1module_1_1Displace.html#a6">00170</a>       <span class="keywordtype">void</span> SetDisplaceModules (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; xDisplaceModule,
-00171         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; yDisplaceModule, <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; zDisplaceModule)
-00172       {
-00173         SetXDisplaceModule (xDisplaceModule);
-00174         SetYDisplaceModule (yDisplaceModule);
-00175         SetZDisplaceModule (zDisplaceModule);
-00176       }
-00177 
-<a name="l00195"></a><a class="code" href="classnoise_1_1module_1_1Displace.html#a7">00195</a>       <span class="keywordtype">void</span> SetXDisplaceModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; xDisplaceModule)
-00196       {
-00197         assert (m_pSourceModule != NULL);
-00198         m_pSourceModule[1] = &amp;xDisplaceModule;
-00199       }
-00200 
-<a name="l00218"></a><a class="code" href="classnoise_1_1module_1_1Displace.html#a8">00218</a>       <span class="keywordtype">void</span> SetYDisplaceModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; yDisplaceModule)
-00219       {
-00220         assert (m_pSourceModule != NULL);
-00221         m_pSourceModule[2] = &amp;yDisplaceModule;
-00222       }
-00223 
-<a name="l00241"></a><a class="code" href="classnoise_1_1module_1_1Displace.html#a9">00241</a>       <span class="keywordtype">void</span> SetZDisplaceModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; zDisplaceModule)
-00242       {
-00243         assert (m_pSourceModule != NULL);
-00244         m_pSourceModule[3] = &amp;zDisplaceModule;
-00245       }
-00246 
-00247     };
-00248 
-00250 
-00252 
-00254 
-00255   }
-00256 
-00257 }
-00258 
-00259 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/doxygen.css b/libnoise/noise/doc/html/doxygen.css
deleted file mode 100644
--- a/libnoise/noise/doc/html/doxygen.css
+++ /dev/null
@@ -1,249 +0,0 @@
-body
-{
- background-color: #99cccc;
- background-image: url(background.png);
- display: block;
- font-family: verdana,helvetica,sans-serif;
- font-size: 10pt;
- margin-left: auto;
- margin-right: auto;
- max-width: 70em;
-}
-
-img
-{
- background-color: white;
- border-style: none;
-}
-
-span.header
-{
- font-weight: bold;
-}
-
-table.layout
-{
- border-collapse: collapse;
- border-style: none;
- border-width: 0px;
- margin: 0px;
- padding: 0px;
- width: 100%;
-}
-
-td.header
-{
- background-color: white;
- background-repeat: no-repeat;
- padding: 6pt;
- vertical-align: top;
-}
-
-td.sidebar
-{
- background-color: #99cccc;
- border-color: #669999;
- border-style: none;
- border-width: 0px;
- padding: 3pt;
- vertical-align: top;
- width: 18em;
- font-size: 8pt;
-}
-
-td.sidebar a:hover
-{
- color: red;
-}
-
-td.content
-{
- background-color: white;
- vertical-align: top;
- padding: 6pt;
-}
-
-td.footer
-{
- background-color: white;
- vertical-align: bottom;
-}
-
-ul.toc
-{
- padding-left: 1em;
-}
-
-td.content img
-{
- padding: 4pt;
-}
-
-div.fragment
-{
- background-color: #ddeeee;
- border-color: #996666;
- border-style: dashed;
- border-width: 1px;
- font-family: monospace;
- padding: 8pt;
- margin: 8pt;
- margin-left: 24pt;
-}
-
-td {
- font-size: 10pt;
-}
-
-
-
-
-
-caption
-{
- font-weight: bold
-}
-
-a.qindex
-{
-}
-
-a.qindexRef
-{
-}
-
-a.el
-{
- text-decoration: none;
- font-weight: bold
-}
-
-a.elRef
-{
- font-weight: bold
-}
-
-a.code
-{
- text-decoration: none;
- font-weight: normal;
- color: #4444ee
-}
-
-a.codeRef
-{
- font-weight: normal;
- color: #4444ee
-}
-
-dl.el
-{
- margin-left: -1cm
-}
-
-div.ah
-{
- background-color: black;
- font-weight: bold;
- color: #ffffff;
- margin-bottom: 3px;
- margin-top: 3px
-}
-
-div.groupHeader
-{
- margin-left: 16px;
- margin-top: 12px;
- margin-bottom: 6px;
- font-weight: bold
-}
-
-div.groupText
-{
- margin-left: 16px;
- font-style: italic;
-}
-
-td.indexkey
-{
- background-color: #ddeeee;
- font-weight: bold;
- padding-right: 10px;
- padding-top: 2px;
- padding-left: 10px;
- padding-bottom: 2px;
- margin-left: 0px;
- margin-right: 0px;
- margin-top: 2px;
- margin-bottom: 2px
-}
-
-td.indexvalue
-{
- background-color: #ddeeee;
- font-style: italic;
- padding-right: 10px;
- padding-top: 2px;
- padding-left: 10px;
- padding-bottom: 2px;
- margin-left: 0px;
- margin-right: 0px;
- margin-top: 2px;
- margin-bottom: 2px
-}
-
-td.md
-{
- background-color: #ddeeee;
- font-weight: bold;
-}
-
-td.mdname1
-{
- background-color: #ddeeee;
- font-weight: bold;
- color: #602020;
-}
-
-td.mdname
-{
- background-color: #ddeeee;
- font-weight: bold;
- color: #602020;
- width: 600px;
-}
-
-span.keyword
-{
- color: #008000
-}
-
-span.keywordtype
-{
- color: #604020
-}
-
-span.keywordflow
-{
- color: #e08000
-}
-
-span.comment
-{
- color: #800000
-}
-
-span.preprocessor
-{
- color: #806020
-}
-
-span.stringliteral
-{
- color: #002080
-}
-
-span.charliteral
-{
- color: #008080
-}
diff --git a/libnoise/noise/doc/html/doxygen.png b/libnoise/noise/doc/html/doxygen.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/doxygen.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/exception_8h-source.html b/libnoise/noise/doc/html/exception_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/exception_8h-source.html
+++ /dev/null
@@ -1,175 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>exception.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// exception.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_EXCEPTION_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_EXCEPTION_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="keyword">namespace </span>noise
-00027 {
-00028 
-00031 
-<a name="l00033"></a><a class="code" href="classnoise_1_1Exception.html">00033</a>   <span class="keyword">class </span><a class="code" href="classnoise_1_1Exception.html">Exception</a>
-00034   {
-00035   };
-00036 
-<a name="l00040"></a><a class="code" href="classnoise_1_1ExceptionInvalidParam.html">00040</a>   <span class="keyword">class </span><a class="code" href="classnoise_1_1ExceptionInvalidParam.html">ExceptionInvalidParam</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1Exception.html">Exception</a>
-00041   {
-00042   };
-00043 
-<a name="l00052"></a><a class="code" href="classnoise_1_1ExceptionNoModule.html">00052</a>   <span class="keyword">class </span><a class="code" href="classnoise_1_1ExceptionNoModule.html">ExceptionNoModule</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1Exception.html">Exception</a>
-00053   {
-00054   };
-00055 
-<a name="l00059"></a><a class="code" href="classnoise_1_1ExceptionOutOfMemory.html">00059</a>   <span class="keyword">class </span><a class="code" href="classnoise_1_1ExceptionOutOfMemory.html">ExceptionOutOfMemory</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1Exception.html">Exception</a>
-00060   {
-00061   };
-00062 
-<a name="l00066"></a><a class="code" href="classnoise_1_1ExceptionUnknown.html">00066</a>   <span class="keyword">class </span><a class="code" href="classnoise_1_1ExceptionUnknown.html">ExceptionUnknown</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1Exception.html">Exception</a>
-00067   {
-00068   };
-00069 
-00071 
-00072 }
-00073 
-00074 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/exponent_8h-source.html b/libnoise/noise/doc/html/exponent_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/exponent_8h-source.html
+++ /dev/null
@@ -1,198 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>exponent.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// exponent.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_EXPONENT_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_EXPONENT_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__modifiermodules.html#ga2">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_EXPONENT = 1.0;
-00045 
-<a name="l00057"></a><a class="code" href="classnoise_1_1module_1_1Exponent.html">00057</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Exponent.html">Exponent</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00058     {
-00059 
-00060       <span class="keyword">public</span>:
-00061 
-00065         <a class="code" href="classnoise_1_1module_1_1Exponent.html">Exponent</a> ();
-00066 
-<a name="l00076"></a><a class="code" href="classnoise_1_1module_1_1Exponent.html#a1">00076</a>         <span class="keywordtype">double</span> GetExponent ()<span class="keyword"> const</span>
-00077 <span class="keyword">        </span>{
-00078           <span class="keywordflow">return</span> m_exponent;
-00079         }
-00080 
-<a name="l00081"></a><a class="code" href="classnoise_1_1module_1_1Exponent.html#a2">00081</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00082 <span class="keyword">        </span>{
-00083           <span class="keywordflow">return</span> 1;
-00084         }
-00085 
-00086         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00087 
-<a name="l00097"></a><a class="code" href="classnoise_1_1module_1_1Exponent.html#a4">00097</a>         <span class="keywordtype">void</span> SetExponent (<span class="keywordtype">double</span> exponent)
-00098         {
-00099           m_exponent = exponent;
-00100         }
-00101 
-00102       <span class="keyword">protected</span>:
-00103 
-<a name="l00105"></a><a class="code" href="classnoise_1_1module_1_1Exponent.html#p0">00105</a>         <span class="keywordtype">double</span> m_exponent;
-00106 
-00107     };
-00108 
-00110 
-00112 
-00114 
-00115   }
-00116 
-00117 }
-00118 
-00119 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/files.html b/libnoise/noise/doc/html/files.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/files.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindexHL" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>libnoise File List</h1>Here is a list of all documented files with brief descriptions:<table>
-  <tr><td class="indexkey"><b>abs.h</b> <a href="abs_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>add.h</b> <a href="add_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>basictypes.h</b> <a href="basictypes_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>billow.h</b> <a href="billow_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>blend.h</b> <a href="blend_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>cache.h</b> <a href="cache_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>checkerboard.h</b> <a href="checkerboard_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>clamp.h</b> <a href="clamp_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>const.h</b> <a href="const_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>curve.h</b> <a href="curve_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>cylinder.h</b> <a href="cylinder_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>cylinders.h</b> <a href="cylinders_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>displace.h</b> <a href="displace_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>exception.h</b> <a href="exception_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>exponent.h</b> <a href="exponent_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>interp.h</b> <a href="interp_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>invert.h</b> <a href="invert_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>latlon.h</b> <a href="latlon_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>line.h</b> <a href="line_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>mathconsts.h</b> <a href="mathconsts_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>max.h</b> <a href="max_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>min.h</b> <a href="min_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>misc.h</b> <a href="misc_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>model.h</b> <a href="model_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>module.h</b> <a href="module_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>modulebase.h</b> <a href="modulebase_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>multiply.h</b> <a href="multiply_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>noise.h</b> <a href="noise_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>noisegen.h</b> <a href="noisegen_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>perlin.h</b> <a href="perlin_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>plane.h</b> <a href="plane_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>power.h</b> <a href="power_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>resource.h</b> <a href="resource_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>ridgedmulti.h</b> <a href="ridgedmulti_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>rotatepoint.h</b> <a href="rotatepoint_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>scalebias.h</b> <a href="scalebias_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>scalepoint.h</b> <a href="scalepoint_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>select.h</b> <a href="select_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>sphere.h</b> <a href="sphere_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>spheres.h</b> <a href="spheres_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>terrace.h</b> <a href="terrace_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>translatepoint.h</b> <a href="translatepoint_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>turbulence.h</b> <a href="turbulence_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>vectortable.h</b> <a href="vectortable_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><b>voronoi.h</b> <a href="voronoi_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/functions.html b/libnoise/noise/doc/html/functions.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/functions.html
+++ /dev/null
@@ -1,327 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a></div>
-<div class="qindex"><a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
-<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_g">g</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_o">o</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_v">v</a> | <a class="qindex" href="#index_~">~</a></div>
-
-<p>
-
-<p>
-Here is a list of all documented class members with links to the class documentation for each member:<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
-<li>Abs()
-: <a class="el" href="classnoise_1_1module_1_1Abs.html#a0">noise::module::Abs</a><li>Add()
-: <a class="el" href="classnoise_1_1module_1_1Add.html#a0">noise::module::Add</a><li>AddControlPoint()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a2">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a2">noise::module::Curve</a></ul>
-<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
-<li>Billow()
-: <a class="el" href="classnoise_1_1module_1_1Billow.html#a0">noise::module::Billow</a><li>Blend()
-: <a class="el" href="classnoise_1_1module_1_1Blend.html#a0">noise::module::Blend</a></ul>
-<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
-<li>Cache()
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#a0">noise::module::Cache</a><li>CalcSpectralWeights()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#b0">noise::module::RidgedMulti</a><li>Checkerboard()
-: <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a0">noise::module::Checkerboard</a><li>Clamp()
-: <a class="el" href="classnoise_1_1module_1_1Clamp.html#a0">noise::module::Clamp</a><li>ClearAllControlPoints()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a3">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a3">noise::module::Curve</a><li>Const()
-: <a class="el" href="classnoise_1_1module_1_1Const.html#a0">noise::module::Const</a><li>Curve()
-: <a class="el" href="classnoise_1_1module_1_1Curve.html#a0">noise::module::Curve</a><li>Cylinder()
-: <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a1">noise::model::Cylinder</a><li>Cylinders()
-: <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a0">noise::module::Cylinders</a></ul>
-<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
-<li>Displace()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a0">noise::module::Displace</a></ul>
-<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
-<li>EnableDistance()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a1">noise::module::Voronoi</a><li>Exponent()
-: <a class="el" href="classnoise_1_1module_1_1Exponent.html#a0">noise::module::Exponent</a></ul>
-<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
-<li>FindInsertionPos()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#b0">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#b0">noise::module::Curve</a></ul>
-<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
-<li>GetAttenuate()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a2">noise::model::Line</a><li>GetBias()
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a1">noise::module::ScaleBias</a><li>GetConstValue()
-: <a class="el" href="classnoise_1_1module_1_1Const.html#a1">noise::module::Const</a><li>GetControlModule()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a1">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a1">noise::module::Blend</a><li>GetControlPointArray()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a4">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a4">noise::module::Curve</a><li>GetControlPointCount()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a5">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a5">noise::module::Curve</a><li>GetDisplacement()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a2">noise::module::Voronoi</a><li>GetEdgeFalloff()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a2">noise::module::Select</a><li>GetExponent()
-: <a class="el" href="classnoise_1_1module_1_1Exponent.html#a1">noise::module::Exponent</a><li>GetFrequency()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a3">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a1">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a1">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a1">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a1">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a1">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a1">noise::module::Billow</a><li>GetLacunarity()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a2">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a2">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a2">noise::module::Billow</a><li>GetLowerBound()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a3">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a1">noise::module::Clamp</a><li>GetModule()
-: <a class="el" href="classnoise_1_1model_1_1Sphere.html#a2">noise::model::Sphere</a>, <a class="el" href="classnoise_1_1model_1_1Plane.html#a2">noise::model::Plane</a>, <a class="el" href="classnoise_1_1model_1_1Line.html#a3">noise::model::Line</a>, <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a2">noise::model::Cylinder</a><li>GetNoiseQuality()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a3">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a3">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a3">noise::module::Billow</a><li>GetOctaveCount()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a4">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a4">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a4">noise::module::Billow</a><li>GetPersistence()
-: <a class="el" href="classnoise_1_1module_1_1Perlin.html#a5">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a5">noise::module::Billow</a><li>GetPower()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a2">noise::module::Turbulence</a><li>GetRoughnessCount()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a3">noise::module::Turbulence</a><li>GetScale()
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a2">noise::module::ScaleBias</a><li>GetSeed()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a5">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a4">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a5">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a6">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a6">noise::module::Billow</a><li>GetSourceModule()
-: <a class="el" href="classnoise_1_1module_1_1Module.html#a2">noise::module::Module</a><li>GetSourceModuleCount()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a4">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a5">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a1">noise::module::TranslatePoint</a>, <a class="el" href="classnoise_1_1module_1_1Terrace.html#a6">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a2">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1Select.html#a4">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a1">noise::module::ScalePoint</a>, <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a3">noise::module::ScaleBias</a>, <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a1">noise::module::RotatePoint</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a6">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Power.html#a1">noise::module::Power</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a7">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Multiply.html#a1">noise::module::Multiply</a>, <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>, <a class="el" href="classnoise_1_1module_1_1Min.html#a1">noise::module::Min</a>, <a class="el" href="classnoise_1_1module_1_1Max.html#a1">noise::module::Max</a>, <a class="el" href="classnoise_1_1module_1_1Invert.html#a1">noise::module::Invert</a>, <a class="el" href="classnoise_1_1module_1_1Exponent.html#a2">noise::module::Exponent</a>, <a class="el" href="classnoise_1_1module_1_1Displace.html#a1">noise::module::Displace</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a2">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a6">noise::module::Curve</a>, <a class="el" href="classnoise_1_1module_1_1Const.html#a2">noise::module::Const</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a2">noise::module::Clamp</a>, <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a1">noise::module::Checkerboard</a>, <a class="el" href="classnoise_1_1module_1_1Cache.html#a1">noise::module::Cache</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a2">noise::module::Blend</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a7">noise::module::Billow</a>, <a class="el" href="classnoise_1_1module_1_1Add.html#a1">noise::module::Add</a>, <a class="el" href="classnoise_1_1module_1_1Abs.html#a1">noise::module::Abs</a><li>GetUpperBound()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a5">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a3">noise::module::Clamp</a><li>GetValue()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a7">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a6">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">noise::module::TranslatePoint</a>, <a class="el" href="classnoise_1_1module_1_1Terrace.html#a9">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a3">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1Select.html#a6">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">noise::module::ScalePoint</a>, <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">noise::module::ScaleBias</a>, <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">noise::module::RotatePoint</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a7">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Power.html#a2">noise::module::Power</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a8">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Multiply.html#a2">noise::module::Multiply</a>, <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>, <a class="el" href="classnoise_1_1module_1_1Min.html#a2">noise::module::Min</a>, <a class="el" href="classnoise_1_1module_1_1Max.html#a2">noise::module::Max</a>, <a class="el" href="classnoise_1_1module_1_1Invert.html#a2">noise::module::Invert</a>, <a class="el" href="classnoise_1_1module_1_1Exponent.html#a3">noise::module::Exponent</a>, <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">noise::module::Displace</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a3">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a7">noise::module::Curve</a>, <a class="el" href="classnoise_1_1module_1_1Const.html#a3">noise::module::Const</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a4">noise::module::Clamp</a>, <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a2">noise::module::Checkerboard</a>, <a class="el" href="classnoise_1_1module_1_1Cache.html#a2">noise::module::Cache</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a3">noise::module::Blend</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a8">noise::module::Billow</a>, <a class="el" href="classnoise_1_1module_1_1Add.html#a2">noise::module::Add</a>, <a class="el" href="classnoise_1_1module_1_1Abs.html#a2">noise::module::Abs</a>, <a class="el" href="classnoise_1_1model_1_1Sphere.html#a3">noise::model::Sphere</a>, <a class="el" href="classnoise_1_1model_1_1Plane.html#a3">noise::model::Plane</a>, <a class="el" href="classnoise_1_1model_1_1Line.html#a4">noise::model::Line</a>, <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a3">noise::model::Cylinder</a><li>GetXAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a3">noise::module::RotatePoint</a><li>GetXDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a3">noise::module::Displace</a><li>GetXScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a3">noise::module::ScalePoint</a><li>GetXTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a3">noise::module::TranslatePoint</a><li>GetYAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a4">noise::module::RotatePoint</a><li>GetYDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a4">noise::module::Displace</a><li>GetYScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a4">noise::module::ScalePoint</a><li>GetYTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a4">noise::module::TranslatePoint</a><li>GetZAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a5">noise::module::RotatePoint</a><li>GetZDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a5">noise::module::Displace</a><li>GetZScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a5">noise::module::ScalePoint</a><li>GetZTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a5">noise::module::TranslatePoint</a></ul>
-<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
-<li>inputValue
-: <a class="el" href="structnoise_1_1module_1_1ControlPoint.html#o0">noise::module::ControlPoint</a><li>InsertAtPos()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#b1">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#b1">noise::module::Curve</a><li>Invert()
-: <a class="el" href="classnoise_1_1module_1_1Invert.html#a0">noise::module::Invert</a><li>InvertTerraces()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a7">noise::module::Terrace</a><li>IsDistanceEnabled()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a6">noise::module::Voronoi</a><li>IsTerracesInverted()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a8">noise::module::Terrace</a></ul>
-<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
-<li>Line()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a1">noise::model::Line</a></ul>
-<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
-<li>m_bias
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#p0">noise::module::ScaleBias</a><li>m_cachedValue
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p0">noise::module::Cache</a><li>m_constValue
-: <a class="el" href="classnoise_1_1module_1_1Const.html#p0">noise::module::Const</a><li>m_controlPointCount
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#p0">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#p0">noise::module::Curve</a><li>m_displacement
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#p0">noise::module::Voronoi</a><li>m_edgeFalloff
-: <a class="el" href="classnoise_1_1module_1_1Select.html#p0">noise::module::Select</a><li>m_enableDistance
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#p1">noise::module::Voronoi</a><li>m_exponent
-: <a class="el" href="classnoise_1_1module_1_1Exponent.html#p0">noise::module::Exponent</a><li>m_frequency
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#p2">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#p0">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p0">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p0">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#p0">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p0">noise::module::Billow</a><li>m_invertTerraces
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#p1">noise::module::Terrace</a><li>m_isCached
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p1">noise::module::Cache</a><li>m_lacunarity
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p1">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p1">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p1">noise::module::Billow</a><li>m_lowerBound
-: <a class="el" href="classnoise_1_1module_1_1Select.html#p1">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#p0">noise::module::Clamp</a><li>m_noiseQuality
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p2">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p2">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p2">noise::module::Billow</a><li>m_octaveCount
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p3">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p3">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p3">noise::module::Billow</a><li>m_pControlPoints
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#p2">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#p1">noise::module::Curve</a><li>m_persistence
-: <a class="el" href="classnoise_1_1module_1_1Perlin.html#p4">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p4">noise::module::Billow</a><li>m_power
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#p0">noise::module::Turbulence</a><li>m_pSourceModule
-: <a class="el" href="classnoise_1_1module_1_1Module.html#p0">noise::module::Module</a><li>m_pSpectralWeights
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p4">noise::module::RidgedMulti</a><li>m_scale
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#p1">noise::module::ScaleBias</a><li>m_seed
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#p3">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p5">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p5">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p5">noise::module::Billow</a><li>m_upperBound
-: <a class="el" href="classnoise_1_1module_1_1Select.html#p2">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#p1">noise::module::Clamp</a><li>m_x1Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p0">noise::module::RotatePoint</a><li>m_x2Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p1">noise::module::RotatePoint</a><li>m_x3Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p2">noise::module::RotatePoint</a><li>m_xAngle
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p3">noise::module::RotatePoint</a><li>m_xCache
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p2">noise::module::Cache</a><li>m_xDistortModule
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#p1">noise::module::Turbulence</a><li>m_xScale
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p0">noise::module::ScalePoint</a><li>m_xTranslation
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p0">noise::module::TranslatePoint</a><li>m_y1Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p4">noise::module::RotatePoint</a><li>m_y2Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p5">noise::module::RotatePoint</a><li>m_y3Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p6">noise::module::RotatePoint</a><li>m_yAngle
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p7">noise::module::RotatePoint</a><li>m_yCache
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p3">noise::module::Cache</a><li>m_yDistortModule
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#p2">noise::module::Turbulence</a><li>m_yScale
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p1">noise::module::ScalePoint</a><li>m_yTranslation
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p1">noise::module::TranslatePoint</a><li>m_z1Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p8">noise::module::RotatePoint</a><li>m_z2Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p9">noise::module::RotatePoint</a><li>m_z3Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p10">noise::module::RotatePoint</a><li>m_zAngle
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p11">noise::module::RotatePoint</a><li>m_zCache
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p4">noise::module::Cache</a><li>m_zDistortModule
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#p3">noise::module::Turbulence</a><li>m_zScale
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p2">noise::module::ScalePoint</a><li>m_zTranslation
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p2">noise::module::TranslatePoint</a><li>MakeControlPoints()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a10">noise::module::Terrace</a><li>Max()
-: <a class="el" href="classnoise_1_1module_1_1Max.html#a0">noise::module::Max</a><li>Min()
-: <a class="el" href="classnoise_1_1module_1_1Min.html#a0">noise::module::Min</a><li>Module()
-: <a class="el" href="classnoise_1_1module_1_1Module.html#a0">noise::module::Module</a><li>Multiply()
-: <a class="el" href="classnoise_1_1module_1_1Multiply.html#a0">noise::module::Multiply</a></ul>
-<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
-<li>outputValue
-: <a class="el" href="structnoise_1_1module_1_1ControlPoint.html#o1">noise::module::ControlPoint</a></ul>
-<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
-<li>Perlin()
-: <a class="el" href="classnoise_1_1module_1_1Perlin.html#a0">noise::module::Perlin</a><li>Plane()
-: <a class="el" href="classnoise_1_1model_1_1Plane.html#a1">noise::model::Plane</a><li>Power()
-: <a class="el" href="classnoise_1_1module_1_1Power.html#a0">noise::module::Power</a></ul>
-<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
-<li>RidgedMulti()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a0">noise::module::RidgedMulti</a><li>RotatePoint()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a0">noise::module::RotatePoint</a></ul>
-<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
-<li>ScaleBias()
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a0">noise::module::ScaleBias</a><li>ScalePoint()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a0">noise::module::ScalePoint</a><li>Select()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a0">noise::module::Select</a><li>SetAngles()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a6">noise::module::RotatePoint</a><li>SetAttenuate()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a5">noise::model::Line</a><li>SetBias()
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a5">noise::module::ScaleBias</a><li>SetBounds()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a7">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a5">noise::module::Clamp</a><li>SetConstValue()
-: <a class="el" href="classnoise_1_1module_1_1Const.html#a4">noise::module::Const</a><li>SetControlModule()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a8">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a4">noise::module::Blend</a><li>SetDisplacement()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a8">noise::module::Voronoi</a><li>SetDisplaceModules()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a6">noise::module::Displace</a><li>SetEdgeFalloff()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a9">noise::module::Select</a><li>SetEndPoint()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a6">noise::model::Line</a><li>SetExponent()
-: <a class="el" href="classnoise_1_1module_1_1Exponent.html#a4">noise::module::Exponent</a><li>SetFrequency()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a9">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a7">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a4">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a8">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a9">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a4">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a9">noise::module::Billow</a><li>SetLacunarity()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a9">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a10">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a10">noise::module::Billow</a><li>SetModule()
-: <a class="el" href="classnoise_1_1model_1_1Sphere.html#a4">noise::model::Sphere</a>, <a class="el" href="classnoise_1_1model_1_1Plane.html#a4">noise::model::Plane</a>, <a class="el" href="classnoise_1_1model_1_1Line.html#a7">noise::model::Line</a>, <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a4">noise::model::Cylinder</a><li>SetNoiseQuality()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a10">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a11">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a11">noise::module::Billow</a><li>SetOctaveCount()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a11">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a12">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a12">noise::module::Billow</a><li>SetPersistence()
-: <a class="el" href="classnoise_1_1module_1_1Perlin.html#a13">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a13">noise::module::Billow</a><li>SetPower()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a8">noise::module::Turbulence</a><li>SetRoughness()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a9">noise::module::Turbulence</a><li>SetScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a7">noise::module::ScalePoint</a>, <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a6">noise::module::ScaleBias</a><li>SetSeed()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a10">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a10">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a12">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a14">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a14">noise::module::Billow</a><li>SetSourceModule()
-: <a class="el" href="classnoise_1_1module_1_1Module.html#a5">noise::module::Module</a>, <a class="el" href="classnoise_1_1module_1_1Cache.html#a3">noise::module::Cache</a><li>SetStartPoint()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a8">noise::model::Line</a><li>SetTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a7">noise::module::TranslatePoint</a><li>SetXAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a7">noise::module::RotatePoint</a><li>SetXDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a7">noise::module::Displace</a><li>SetXScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a8">noise::module::ScalePoint</a><li>SetXTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a8">noise::module::TranslatePoint</a><li>SetYAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a8">noise::module::RotatePoint</a><li>SetYDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a8">noise::module::Displace</a><li>SetYScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a9">noise::module::ScalePoint</a><li>SetYTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a9">noise::module::TranslatePoint</a><li>SetZAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a9">noise::module::RotatePoint</a><li>SetZDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a9">noise::module::Displace</a><li>SetZScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a10">noise::module::ScalePoint</a><li>SetZTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a10">noise::module::TranslatePoint</a><li>Sphere()
-: <a class="el" href="classnoise_1_1model_1_1Sphere.html#a1">noise::model::Sphere</a><li>Spheres()
-: <a class="el" href="classnoise_1_1module_1_1Spheres.html#a0">noise::module::Spheres</a></ul>
-<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
-<li>Terrace()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a0">noise::module::Terrace</a><li>TranslatePoint()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a0">noise::module::TranslatePoint</a><li>Turbulence()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a0">noise::module::Turbulence</a></ul>
-<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
-<li>Voronoi()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a0">noise::module::Voronoi</a></ul>
-<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul>
-<li>~Curve()
-: <a class="el" href="classnoise_1_1module_1_1Curve.html#a1">noise::module::Curve</a><li>~Module()
-: <a class="el" href="classnoise_1_1module_1_1Module.html#a1">noise::module::Module</a><li>~Terrace()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a1">noise::module::Terrace</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/functions_func.html b/libnoise/noise/doc/html/functions_func.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/functions_func.html
+++ /dev/null
@@ -1,276 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a></div>
-<div class="qindex"><a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
-<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_g">g</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_v">v</a> | <a class="qindex" href="#index_~">~</a></div>
-
-<p>
-
-<p>
-<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
-<li>Abs()
-: <a class="el" href="classnoise_1_1module_1_1Abs.html#a0">noise::module::Abs</a><li>Add()
-: <a class="el" href="classnoise_1_1module_1_1Add.html#a0">noise::module::Add</a><li>AddControlPoint()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a2">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a2">noise::module::Curve</a></ul>
-<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
-<li>Billow()
-: <a class="el" href="classnoise_1_1module_1_1Billow.html#a0">noise::module::Billow</a><li>Blend()
-: <a class="el" href="classnoise_1_1module_1_1Blend.html#a0">noise::module::Blend</a></ul>
-<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
-<li>Cache()
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#a0">noise::module::Cache</a><li>CalcSpectralWeights()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#b0">noise::module::RidgedMulti</a><li>Checkerboard()
-: <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a0">noise::module::Checkerboard</a><li>Clamp()
-: <a class="el" href="classnoise_1_1module_1_1Clamp.html#a0">noise::module::Clamp</a><li>ClearAllControlPoints()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a3">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a3">noise::module::Curve</a><li>Const()
-: <a class="el" href="classnoise_1_1module_1_1Const.html#a0">noise::module::Const</a><li>Curve()
-: <a class="el" href="classnoise_1_1module_1_1Curve.html#a0">noise::module::Curve</a><li>Cylinder()
-: <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a1">noise::model::Cylinder</a><li>Cylinders()
-: <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a0">noise::module::Cylinders</a></ul>
-<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
-<li>Displace()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a0">noise::module::Displace</a></ul>
-<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
-<li>EnableDistance()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a1">noise::module::Voronoi</a><li>Exponent()
-: <a class="el" href="classnoise_1_1module_1_1Exponent.html#a0">noise::module::Exponent</a></ul>
-<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
-<li>FindInsertionPos()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#b0">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#b0">noise::module::Curve</a></ul>
-<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
-<li>GetAttenuate()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a2">noise::model::Line</a><li>GetBias()
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a1">noise::module::ScaleBias</a><li>GetConstValue()
-: <a class="el" href="classnoise_1_1module_1_1Const.html#a1">noise::module::Const</a><li>GetControlModule()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a1">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a1">noise::module::Blend</a><li>GetControlPointArray()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a4">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a4">noise::module::Curve</a><li>GetControlPointCount()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a5">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a5">noise::module::Curve</a><li>GetDisplacement()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a2">noise::module::Voronoi</a><li>GetEdgeFalloff()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a2">noise::module::Select</a><li>GetExponent()
-: <a class="el" href="classnoise_1_1module_1_1Exponent.html#a1">noise::module::Exponent</a><li>GetFrequency()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a3">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a1">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a1">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a1">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a1">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a1">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a1">noise::module::Billow</a><li>GetLacunarity()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a2">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a2">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a2">noise::module::Billow</a><li>GetLowerBound()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a3">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a1">noise::module::Clamp</a><li>GetModule()
-: <a class="el" href="classnoise_1_1model_1_1Sphere.html#a2">noise::model::Sphere</a>, <a class="el" href="classnoise_1_1model_1_1Plane.html#a2">noise::model::Plane</a>, <a class="el" href="classnoise_1_1model_1_1Line.html#a3">noise::model::Line</a>, <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a2">noise::model::Cylinder</a><li>GetNoiseQuality()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a3">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a3">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a3">noise::module::Billow</a><li>GetOctaveCount()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a4">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a4">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a4">noise::module::Billow</a><li>GetPersistence()
-: <a class="el" href="classnoise_1_1module_1_1Perlin.html#a5">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a5">noise::module::Billow</a><li>GetPower()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a2">noise::module::Turbulence</a><li>GetRoughnessCount()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a3">noise::module::Turbulence</a><li>GetScale()
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a2">noise::module::ScaleBias</a><li>GetSeed()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a5">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a4">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a5">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a6">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a6">noise::module::Billow</a><li>GetSourceModule()
-: <a class="el" href="classnoise_1_1module_1_1Module.html#a2">noise::module::Module</a><li>GetSourceModuleCount()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a4">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a5">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a1">noise::module::TranslatePoint</a>, <a class="el" href="classnoise_1_1module_1_1Terrace.html#a6">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a2">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1Select.html#a4">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a1">noise::module::ScalePoint</a>, <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a3">noise::module::ScaleBias</a>, <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a1">noise::module::RotatePoint</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a6">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Power.html#a1">noise::module::Power</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a7">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Multiply.html#a1">noise::module::Multiply</a>, <a class="el" href="classnoise_1_1module_1_1Module.html#a3">noise::module::Module</a>, <a class="el" href="classnoise_1_1module_1_1Min.html#a1">noise::module::Min</a>, <a class="el" href="classnoise_1_1module_1_1Max.html#a1">noise::module::Max</a>, <a class="el" href="classnoise_1_1module_1_1Invert.html#a1">noise::module::Invert</a>, <a class="el" href="classnoise_1_1module_1_1Exponent.html#a2">noise::module::Exponent</a>, <a class="el" href="classnoise_1_1module_1_1Displace.html#a1">noise::module::Displace</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a2">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a6">noise::module::Curve</a>, <a class="el" href="classnoise_1_1module_1_1Const.html#a2">noise::module::Const</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a2">noise::module::Clamp</a>, <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a1">noise::module::Checkerboard</a>, <a class="el" href="classnoise_1_1module_1_1Cache.html#a1">noise::module::Cache</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a2">noise::module::Blend</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a7">noise::module::Billow</a>, <a class="el" href="classnoise_1_1module_1_1Add.html#a1">noise::module::Add</a>, <a class="el" href="classnoise_1_1module_1_1Abs.html#a1">noise::module::Abs</a><li>GetUpperBound()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a5">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a3">noise::module::Clamp</a><li>GetValue()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a7">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a6">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a2">noise::module::TranslatePoint</a>, <a class="el" href="classnoise_1_1module_1_1Terrace.html#a9">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a3">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1Select.html#a6">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a2">noise::module::ScalePoint</a>, <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a4">noise::module::ScaleBias</a>, <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a2">noise::module::RotatePoint</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a7">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Power.html#a2">noise::module::Power</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a8">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Multiply.html#a2">noise::module::Multiply</a>, <a class="el" href="classnoise_1_1module_1_1Module.html#a4">noise::module::Module</a>, <a class="el" href="classnoise_1_1module_1_1Min.html#a2">noise::module::Min</a>, <a class="el" href="classnoise_1_1module_1_1Max.html#a2">noise::module::Max</a>, <a class="el" href="classnoise_1_1module_1_1Invert.html#a2">noise::module::Invert</a>, <a class="el" href="classnoise_1_1module_1_1Exponent.html#a3">noise::module::Exponent</a>, <a class="el" href="classnoise_1_1module_1_1Displace.html#a2">noise::module::Displace</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a3">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#a7">noise::module::Curve</a>, <a class="el" href="classnoise_1_1module_1_1Const.html#a3">noise::module::Const</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a4">noise::module::Clamp</a>, <a class="el" href="classnoise_1_1module_1_1Checkerboard.html#a2">noise::module::Checkerboard</a>, <a class="el" href="classnoise_1_1module_1_1Cache.html#a2">noise::module::Cache</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a3">noise::module::Blend</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a8">noise::module::Billow</a>, <a class="el" href="classnoise_1_1module_1_1Add.html#a2">noise::module::Add</a>, <a class="el" href="classnoise_1_1module_1_1Abs.html#a2">noise::module::Abs</a>, <a class="el" href="classnoise_1_1model_1_1Sphere.html#a3">noise::model::Sphere</a>, <a class="el" href="classnoise_1_1model_1_1Plane.html#a3">noise::model::Plane</a>, <a class="el" href="classnoise_1_1model_1_1Line.html#a4">noise::model::Line</a>, <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a3">noise::model::Cylinder</a><li>GetXAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a3">noise::module::RotatePoint</a><li>GetXDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a3">noise::module::Displace</a><li>GetXScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a3">noise::module::ScalePoint</a><li>GetXTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a3">noise::module::TranslatePoint</a><li>GetYAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a4">noise::module::RotatePoint</a><li>GetYDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a4">noise::module::Displace</a><li>GetYScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a4">noise::module::ScalePoint</a><li>GetYTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a4">noise::module::TranslatePoint</a><li>GetZAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a5">noise::module::RotatePoint</a><li>GetZDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a5">noise::module::Displace</a><li>GetZScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a5">noise::module::ScalePoint</a><li>GetZTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a5">noise::module::TranslatePoint</a></ul>
-<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
-<li>InsertAtPos()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#b1">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#b1">noise::module::Curve</a><li>Invert()
-: <a class="el" href="classnoise_1_1module_1_1Invert.html#a0">noise::module::Invert</a><li>InvertTerraces()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a7">noise::module::Terrace</a><li>IsDistanceEnabled()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a6">noise::module::Voronoi</a><li>IsTerracesInverted()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a8">noise::module::Terrace</a></ul>
-<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
-<li>Line()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a1">noise::model::Line</a></ul>
-<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
-<li>MakeControlPoints()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a10">noise::module::Terrace</a><li>Max()
-: <a class="el" href="classnoise_1_1module_1_1Max.html#a0">noise::module::Max</a><li>Min()
-: <a class="el" href="classnoise_1_1module_1_1Min.html#a0">noise::module::Min</a><li>Module()
-: <a class="el" href="classnoise_1_1module_1_1Module.html#a0">noise::module::Module</a><li>Multiply()
-: <a class="el" href="classnoise_1_1module_1_1Multiply.html#a0">noise::module::Multiply</a></ul>
-<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
-<li>Perlin()
-: <a class="el" href="classnoise_1_1module_1_1Perlin.html#a0">noise::module::Perlin</a><li>Plane()
-: <a class="el" href="classnoise_1_1model_1_1Plane.html#a1">noise::model::Plane</a><li>Power()
-: <a class="el" href="classnoise_1_1module_1_1Power.html#a0">noise::module::Power</a></ul>
-<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
-<li>RidgedMulti()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a0">noise::module::RidgedMulti</a><li>RotatePoint()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a0">noise::module::RotatePoint</a></ul>
-<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
-<li>ScaleBias()
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a0">noise::module::ScaleBias</a><li>ScalePoint()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a0">noise::module::ScalePoint</a><li>Select()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a0">noise::module::Select</a><li>SetAngles()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a6">noise::module::RotatePoint</a><li>SetAttenuate()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a5">noise::model::Line</a><li>SetBias()
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a5">noise::module::ScaleBias</a><li>SetBounds()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a7">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#a5">noise::module::Clamp</a><li>SetConstValue()
-: <a class="el" href="classnoise_1_1module_1_1Const.html#a4">noise::module::Const</a><li>SetControlModule()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a8">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Blend.html#a4">noise::module::Blend</a><li>SetDisplacement()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a8">noise::module::Voronoi</a><li>SetDisplaceModules()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a6">noise::module::Displace</a><li>SetEdgeFalloff()
-: <a class="el" href="classnoise_1_1module_1_1Select.html#a9">noise::module::Select</a><li>SetEndPoint()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a6">noise::model::Line</a><li>SetExponent()
-: <a class="el" href="classnoise_1_1module_1_1Exponent.html#a4">noise::module::Exponent</a><li>SetFrequency()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a9">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a7">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#a4">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a8">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a9">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#a4">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a9">noise::module::Billow</a><li>SetLacunarity()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a9">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a10">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a10">noise::module::Billow</a><li>SetModule()
-: <a class="el" href="classnoise_1_1model_1_1Sphere.html#a4">noise::model::Sphere</a>, <a class="el" href="classnoise_1_1model_1_1Plane.html#a4">noise::model::Plane</a>, <a class="el" href="classnoise_1_1model_1_1Line.html#a7">noise::model::Line</a>, <a class="el" href="classnoise_1_1model_1_1Cylinder.html#a4">noise::model::Cylinder</a><li>SetNoiseQuality()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a10">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a11">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a11">noise::module::Billow</a><li>SetOctaveCount()
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a11">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a12">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a12">noise::module::Billow</a><li>SetPersistence()
-: <a class="el" href="classnoise_1_1module_1_1Perlin.html#a13">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a13">noise::module::Billow</a><li>SetPower()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a8">noise::module::Turbulence</a><li>SetRoughness()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a9">noise::module::Turbulence</a><li>SetScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a7">noise::module::ScalePoint</a>, <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#a6">noise::module::ScaleBias</a><li>SetSeed()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a10">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a10">noise::module::Turbulence</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#a12">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#a14">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#a14">noise::module::Billow</a><li>SetSourceModule()
-: <a class="el" href="classnoise_1_1module_1_1Module.html#a5">noise::module::Module</a>, <a class="el" href="classnoise_1_1module_1_1Cache.html#a3">noise::module::Cache</a><li>SetStartPoint()
-: <a class="el" href="classnoise_1_1model_1_1Line.html#a8">noise::model::Line</a><li>SetTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a7">noise::module::TranslatePoint</a><li>SetXAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a7">noise::module::RotatePoint</a><li>SetXDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a7">noise::module::Displace</a><li>SetXScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a8">noise::module::ScalePoint</a><li>SetXTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a8">noise::module::TranslatePoint</a><li>SetYAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a8">noise::module::RotatePoint</a><li>SetYDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a8">noise::module::Displace</a><li>SetYScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a9">noise::module::ScalePoint</a><li>SetYTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a9">noise::module::TranslatePoint</a><li>SetZAngle()
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#a9">noise::module::RotatePoint</a><li>SetZDisplaceModule()
-: <a class="el" href="classnoise_1_1module_1_1Displace.html#a9">noise::module::Displace</a><li>SetZScale()
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#a10">noise::module::ScalePoint</a><li>SetZTranslation()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a10">noise::module::TranslatePoint</a><li>Sphere()
-: <a class="el" href="classnoise_1_1model_1_1Sphere.html#a1">noise::model::Sphere</a><li>Spheres()
-: <a class="el" href="classnoise_1_1module_1_1Spheres.html#a0">noise::module::Spheres</a></ul>
-<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
-<li>Terrace()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a0">noise::module::Terrace</a><li>TranslatePoint()
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#a0">noise::module::TranslatePoint</a><li>Turbulence()
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#a0">noise::module::Turbulence</a></ul>
-<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
-<li>Voronoi()
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#a0">noise::module::Voronoi</a></ul>
-<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul>
-<li>~Curve()
-: <a class="el" href="classnoise_1_1module_1_1Curve.html#a1">noise::module::Curve</a><li>~Module()
-: <a class="el" href="classnoise_1_1module_1_1Module.html#a1">noise::module::Module</a><li>~Terrace()
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#a1">noise::module::Terrace</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/functions_vars.html b/libnoise/noise/doc/html/functions_vars.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/functions_vars.html
+++ /dev/null
@@ -1,181 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a></div>
-<div class="qindex"><a class="qindex" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindexHL" href="functions_vars.html">Variables</a></div>
-<div class="qindex"><a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_o">o</a></div>
-
-<p>
-
-<p>
-<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
-<li>inputValue
-: <a class="el" href="structnoise_1_1module_1_1ControlPoint.html#o0">noise::module::ControlPoint</a></ul>
-<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
-<li>m_bias
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#p0">noise::module::ScaleBias</a><li>m_cachedValue
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p0">noise::module::Cache</a><li>m_constValue
-: <a class="el" href="classnoise_1_1module_1_1Const.html#p0">noise::module::Const</a><li>m_controlPointCount
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#p0">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#p0">noise::module::Curve</a><li>m_displacement
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#p0">noise::module::Voronoi</a><li>m_edgeFalloff
-: <a class="el" href="classnoise_1_1module_1_1Select.html#p0">noise::module::Select</a><li>m_enableDistance
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#p1">noise::module::Voronoi</a><li>m_exponent
-: <a class="el" href="classnoise_1_1module_1_1Exponent.html#p0">noise::module::Exponent</a><li>m_frequency
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#p2">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1Spheres.html#p0">noise::module::Spheres</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p0">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p0">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Cylinders.html#p0">noise::module::Cylinders</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p0">noise::module::Billow</a><li>m_invertTerraces
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#p1">noise::module::Terrace</a><li>m_isCached
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p1">noise::module::Cache</a><li>m_lacunarity
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p1">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p1">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p1">noise::module::Billow</a><li>m_lowerBound
-: <a class="el" href="classnoise_1_1module_1_1Select.html#p1">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#p0">noise::module::Clamp</a><li>m_noiseQuality
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p2">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p2">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p2">noise::module::Billow</a><li>m_octaveCount
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p3">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p3">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p3">noise::module::Billow</a><li>m_pControlPoints
-: <a class="el" href="classnoise_1_1module_1_1Terrace.html#p2">noise::module::Terrace</a>, <a class="el" href="classnoise_1_1module_1_1Curve.html#p1">noise::module::Curve</a><li>m_persistence
-: <a class="el" href="classnoise_1_1module_1_1Perlin.html#p4">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p4">noise::module::Billow</a><li>m_power
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#p0">noise::module::Turbulence</a><li>m_pSourceModule
-: <a class="el" href="classnoise_1_1module_1_1Module.html#p0">noise::module::Module</a><li>m_pSpectralWeights
-: <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p4">noise::module::RidgedMulti</a><li>m_scale
-: <a class="el" href="classnoise_1_1module_1_1ScaleBias.html#p1">noise::module::ScaleBias</a><li>m_seed
-: <a class="el" href="classnoise_1_1module_1_1Voronoi.html#p3">noise::module::Voronoi</a>, <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html#p5">noise::module::RidgedMulti</a>, <a class="el" href="classnoise_1_1module_1_1Perlin.html#p5">noise::module::Perlin</a>, <a class="el" href="classnoise_1_1module_1_1Billow.html#p5">noise::module::Billow</a><li>m_upperBound
-: <a class="el" href="classnoise_1_1module_1_1Select.html#p2">noise::module::Select</a>, <a class="el" href="classnoise_1_1module_1_1Clamp.html#p1">noise::module::Clamp</a><li>m_x1Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p0">noise::module::RotatePoint</a><li>m_x2Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p1">noise::module::RotatePoint</a><li>m_x3Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p2">noise::module::RotatePoint</a><li>m_xAngle
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p3">noise::module::RotatePoint</a><li>m_xCache
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p2">noise::module::Cache</a><li>m_xDistortModule
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#p1">noise::module::Turbulence</a><li>m_xScale
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p0">noise::module::ScalePoint</a><li>m_xTranslation
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p0">noise::module::TranslatePoint</a><li>m_y1Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p4">noise::module::RotatePoint</a><li>m_y2Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p5">noise::module::RotatePoint</a><li>m_y3Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p6">noise::module::RotatePoint</a><li>m_yAngle
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p7">noise::module::RotatePoint</a><li>m_yCache
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p3">noise::module::Cache</a><li>m_yDistortModule
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#p2">noise::module::Turbulence</a><li>m_yScale
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p1">noise::module::ScalePoint</a><li>m_yTranslation
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p1">noise::module::TranslatePoint</a><li>m_z1Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p8">noise::module::RotatePoint</a><li>m_z2Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p9">noise::module::RotatePoint</a><li>m_z3Matrix
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p10">noise::module::RotatePoint</a><li>m_zAngle
-: <a class="el" href="classnoise_1_1module_1_1RotatePoint.html#p11">noise::module::RotatePoint</a><li>m_zCache
-: <a class="el" href="classnoise_1_1module_1_1Cache.html#p4">noise::module::Cache</a><li>m_zDistortModule
-: <a class="el" href="classnoise_1_1module_1_1Turbulence.html#p3">noise::module::Turbulence</a><li>m_zScale
-: <a class="el" href="classnoise_1_1module_1_1ScalePoint.html#p2">noise::module::ScalePoint</a><li>m_zTranslation
-: <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html#p2">noise::module::TranslatePoint</a></ul>
-<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
-<li>outputValue
-: <a class="el" href="structnoise_1_1module_1_1ControlPoint.html#o1">noise::module::ControlPoint</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__combinermodules.html b/libnoise/noise/doc/html/group__combinermodules.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__combinermodules.html
+++ /dev/null
@@ -1,144 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>Combiner Modules<br>
-<small>
-[<a class="el" href="group__modules.html">Noise Modules</a>]</small>
-</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs the sum of the two output values from two source modules.  <a href="classnoise_1_1module_1_1Add.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Max.html">noise::module::Max</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs the larger of the two output values from two source modules.  <a href="classnoise_1_1module_1_1Max.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Min.html">noise::module::Min</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs the smaller of the two output values from two source modules.  <a href="classnoise_1_1module_1_1Min.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Multiply.html">noise::module::Multiply</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs the product of the two output values from two source modules.  <a href="classnoise_1_1module_1_1Multiply.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Power.html">noise::module::Power</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that raises the output value from a first source module to the power of the output value from a second source module.  <a href="classnoise_1_1module_1_1Power.html#_details">More...</a><br></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__generatormodules.html b/libnoise/noise/doc/html/group__generatormodules.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__generatormodules.html
+++ /dev/null
@@ -1,258 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>Generator Modules<br>
-<small>
-[<a class="el" href="group__modules.html">Noise Modules</a>]</small>
-</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs three-dimensional "billowy" noise.  <a href="classnoise_1_1module_1_1Billow.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Checkerboard.html">noise::module::Checkerboard</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs a checkerboard pattern.  <a href="classnoise_1_1module_1_1Checkerboard.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs a constant value.  <a href="classnoise_1_1module_1_1Const.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs concentric cylinders.  <a href="classnoise_1_1module_1_1Cylinders.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs 3-dimensional <a class="el" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> noise.  <a href="classnoise_1_1module_1_1Perlin.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs 3-dimensional ridged-multifractal noise.  <a href="classnoise_1_1module_1_1RidgedMulti.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs concentric spheres.  <a href="classnoise_1_1module_1_1Spheres.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs <a class="el" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> cells.  <a href="classnoise_1_1module_1_1Voronoi.html#_details">More...</a><br></td></tr>
-<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga0" doxytag="Generatormodules::DEFAULT_BILLOW_FREQUENCY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga0">noise::module::DEFAULT_BILLOW_FREQUENCY</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default frequency for the <a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga1" doxytag="Generatormodules::DEFAULT_BILLOW_LACUNARITY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga1">noise::module::DEFAULT_BILLOW_LACUNARITY</a> = 2.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default lacunarity for the the <a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga2" doxytag="Generatormodules::DEFAULT_BILLOW_OCTAVE_COUNT"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga2">noise::module::DEFAULT_BILLOW_OCTAVE_COUNT</a> = 6</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default number of octaves for the the <a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga3" doxytag="Generatormodules::DEFAULT_BILLOW_PERSISTENCE"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga3">noise::module::DEFAULT_BILLOW_PERSISTENCE</a> = 0.5</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default persistence value for the the <a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga4" doxytag="Generatormodules::DEFAULT_BILLOW_QUALITY"></a>
-const <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga4">noise::module::DEFAULT_BILLOW_QUALITY</a> = QUALITY_STD</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default noise quality for the the <a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga5" doxytag="Generatormodules::DEFAULT_BILLOW_SEED"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga5">noise::module::DEFAULT_BILLOW_SEED</a> = 0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default noise seed for the the <a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga6" doxytag="Generatormodules::BILLOW_MAX_OCTAVE"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga6">noise::module::BILLOW_MAX_OCTAVE</a> = 30</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum number of octaves for the the <a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga7" doxytag="Generatormodules::DEFAULT_CONST_VALUE"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga7">noise::module::DEFAULT_CONST_VALUE</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constant value for the <a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga8" doxytag="Generatormodules::DEFAULT_CYLINDERS_FREQUENCY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga8">noise::module::DEFAULT_CYLINDERS_FREQUENCY</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default frequency value for the <a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga9" doxytag="Generatormodules::DEFAULT_PERLIN_FREQUENCY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga9">noise::module::DEFAULT_PERLIN_FREQUENCY</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default frequency for the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga10" doxytag="Generatormodules::DEFAULT_PERLIN_LACUNARITY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga10">noise::module::DEFAULT_PERLIN_LACUNARITY</a> = 2.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default lacunarity for the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga11" doxytag="Generatormodules::DEFAULT_PERLIN_OCTAVE_COUNT"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga11">noise::module::DEFAULT_PERLIN_OCTAVE_COUNT</a> = 6</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default number of octaves for the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga12" doxytag="Generatormodules::DEFAULT_PERLIN_PERSISTENCE"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga12">noise::module::DEFAULT_PERLIN_PERSISTENCE</a> = 0.5</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default persistence value for the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga13" doxytag="Generatormodules::DEFAULT_PERLIN_QUALITY"></a>
-const <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga13">noise::module::DEFAULT_PERLIN_QUALITY</a> = QUALITY_STD</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default noise quality for the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga14" doxytag="Generatormodules::DEFAULT_PERLIN_SEED"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga14">noise::module::DEFAULT_PERLIN_SEED</a> = 0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default noise seed for the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga15" doxytag="Generatormodules::PERLIN_MAX_OCTAVE"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga15">noise::module::PERLIN_MAX_OCTAVE</a> = 30</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum number of octaves for the <a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga16" doxytag="Generatormodules::DEFAULT_RIDGED_FREQUENCY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga16">noise::module::DEFAULT_RIDGED_FREQUENCY</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default frequency for the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga17" doxytag="Generatormodules::DEFAULT_RIDGED_LACUNARITY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga17">noise::module::DEFAULT_RIDGED_LACUNARITY</a> = 2.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default lacunarity for the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga18" doxytag="Generatormodules::DEFAULT_RIDGED_OCTAVE_COUNT"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga18">noise::module::DEFAULT_RIDGED_OCTAVE_COUNT</a> = 6</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default number of octaves for the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga19" doxytag="Generatormodules::DEFAULT_RIDGED_QUALITY"></a>
-const <a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga19">noise::module::DEFAULT_RIDGED_QUALITY</a> = QUALITY_STD</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default noise quality for the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga20" doxytag="Generatormodules::DEFAULT_RIDGED_SEED"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga20">noise::module::DEFAULT_RIDGED_SEED</a> = 0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default noise seed for the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga21" doxytag="Generatormodules::RIDGED_MAX_OCTAVE"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga21">noise::module::RIDGED_MAX_OCTAVE</a> = 30</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum number of octaves for the <a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga22" doxytag="Generatormodules::DEFAULT_SPHERES_FREQUENCY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga22">noise::module::DEFAULT_SPHERES_FREQUENCY</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default frequency value for the <a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga23" doxytag="Generatormodules::DEFAULT_VORONOI_DISPLACEMENT"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga23">noise::module::DEFAULT_VORONOI_DISPLACEMENT</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default displacement to apply to each cell for the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga24" doxytag="Generatormodules::DEFAULT_VORONOI_FREQUENCY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga24">noise::module::DEFAULT_VORONOI_FREQUENCY</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default frequency of the seed points for the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga25" doxytag="Generatormodules::DEFAULT_VORONOI_SEED"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html#ga25">noise::module::DEFAULT_VORONOI_SEED</a> = 0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default seed of the noise function for the <a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a> noise module. <br></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__libnoise.html b/libnoise/noise/doc/html/group__libnoise.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__libnoise.html
+++ /dev/null
@@ -1,1093 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>libnoise</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Modules</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">group &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__models.html">Models</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">group &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__modules.html">Noise Modules</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1Exception.html">noise::Exception</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Abstract base class for libnoise exceptions.  <a href="classnoise_1_1Exception.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1ExceptionInvalidParam.html">noise::ExceptionInvalidParam</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Invalid parameter exception.  <a href="classnoise_1_1ExceptionInvalidParam.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">No module exception.  <a href="classnoise_1_1ExceptionNoModule.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1ExceptionOutOfMemory.html">noise::ExceptionOutOfMemory</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Out of memory exception.  <a href="classnoise_1_1ExceptionOutOfMemory.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1ExceptionUnknown.html">noise::ExceptionUnknown</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unknown exception.  <a href="classnoise_1_1ExceptionUnknown.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnoise_1_1module_1_1ControlPoint.html">noise::module::ControlPoint</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This structure defines a control point.  <a href="structnoise_1_1module_1_1ControlPoint.html#_details">More...</a><br></td></tr>
-<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga0" doxytag="libnoise::uint"></a>
-typedef unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga0">noise::uint</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unsigned integer type. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga1" doxytag="libnoise::uint32"></a>
-typedef unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga1">noise::uint32</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">32-bit unsigned integer type. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga2" doxytag="libnoise::uint16"></a>
-typedef unsigned short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga2">noise::uint16</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">16-bit unsigned integer type. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga3" doxytag="libnoise::uint8"></a>
-typedef unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga3">noise::uint8</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">8-bit unsigned integer type. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga4" doxytag="libnoise::int32"></a>
-typedef int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga4">noise::int32</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">32-bit signed integer type. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga5" doxytag="libnoise::int16"></a>
-typedef short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga5">noise::int16</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">16-bit signed integer type. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga6" doxytag="libnoise::int8"></a>
-typedef char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga6">noise::int8</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">8-bit signed integer type. <br></td></tr>
-<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga26">noise::NoiseQuality</a> { <a class="el" href="group__libnoise.html#gga26a12">noise::QUALITY_FAST</a> =  0, 
-<a class="el" href="group__libnoise.html#gga26a13">noise::QUALITY_STD</a> =  1, 
-<a class="el" href="group__libnoise.html#gga26a14">noise::QUALITY_BEST</a> =  2
- }</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enumerates the noise quality.  <a href="#ga26">More...</a><br></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga12">noise::CubicInterp</a> (double n0, double n1, double n2, double n3, double a)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Performs cubic interpolation between two values bound between two other values.  <a href="#ga12"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga13">noise::LinearInterp</a> (double n0, double n1, double a)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Performs linear interpolation between two values.  <a href="#ga13"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga14">noise::SCurve3</a> (double a)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maps a value onto a cubic S-curve.  <a href="#ga14"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga15">noise::SCurve5</a> (double a)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maps a value onto a quintic S-curve.  <a href="#ga15"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga16">noise::LatLonToXYZ</a> (double lat, double lon, double &amp;x, double &amp;y, double &amp;z)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Converts latitude/longitude coordinates on a unit sphere into 3D Cartesian coordinates.  <a href="#ga16"></a><br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T&gt; </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga17">noise::GetMax</a> (const T &amp;a, const T &amp;b)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the maximum of two values.  <a href="#ga17"></a><br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T&gt; </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga18">noise::GetMin</a> (const T &amp;a, const T &amp;b)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the minimum of two values.  <a href="#ga18"></a><br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T&gt; </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga19">noise::SwapValues</a> (T &amp;a, T &amp;b)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Swaps two values.  <a href="#ga19"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga20">noise::GradientCoherentNoise3D</a> (double x, double y, double z, int seed=0, <a class="el" href="group__libnoise.html#ga26">NoiseQuality</a> noiseQuality=QUALITY_STD)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates a gradient-coherent-noise value from the coordinates of a three-dimensional input value.  <a href="#ga20"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga21">noise::GradientNoise3D</a> (double fx, double fy, double fz, int ix, int iy, int iz, int seed=0)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates a gradient-noise value from the coordinates of a three-dimensional input value and the integer coordinates of a nearby three-dimensional value.  <a href="#ga21"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga22">noise::IntValueNoise3D</a> (int x, int y, int z, int seed=0)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates an integer-noise value from the coordinates of a three-dimensional input value.  <a href="#ga22"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga23">noise::MakeInt32Range</a> (double n)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Modifies a floating-point value so that it can be stored in a <a class="el" href="group__libnoise.html#ga4">noise::int32</a> variable.  <a href="#ga23"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga24">noise::ValueCoherentNoise3D</a> (double x, double y, double z, int seed=0, <a class="el" href="group__libnoise.html#ga26">NoiseQuality</a> noiseQuality=QUALITY_STD)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates a value-coherent-noise value from the coordinates of a three-dimensional input value.  <a href="#ga24"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga25">noise::ValueNoise3D</a> (int x, int y, int z, int seed=0)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates a value-noise value from the coordinates of a three-dimensional input value.  <a href="#ga25"></a><br></td></tr>
-<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga7" doxytag="libnoise::PI"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga7">noise::PI</a> = 3.1415926535897932385</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pi. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga8" doxytag="libnoise::SQRT_2"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga8">noise::SQRT_2</a> = 1.4142135623730950488</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Square root of 2. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga9" doxytag="libnoise::SQRT_3"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga9">noise::SQRT_3</a> = 1.7320508075688772935</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Square root of 3. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga10" doxytag="libnoise::DEG_TO_RAD"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga10">noise::DEG_TO_RAD</a> = <a class="el" href="group__libnoise.html#ga7">PI</a> / 180.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Converts an angle from degrees to radians. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga11" doxytag="libnoise::RAD_TO_DEG"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libnoise.html#ga11">noise::RAD_TO_DEG</a> = 1.0 / <a class="el" href="group__libnoise.html#ga10">DEG_TO_RAD</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Converts an angle from radians to degrees. <br></td></tr>
-</table>
-<hr><h2>Enumeration Type Documentation</h2>
-<a class="anchor" name="ga26" doxytag="noise::NoiseQuality"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">enum <a class="el" href="group__libnoise.html#ga26">NoiseQuality</a>          </td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Enumerates the noise quality. 
-<p>
-<dl compact><dt><b>Enumeration values: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="gga26a12" doxytag="QUALITY_FAST"></a>QUALITY_FAST</em>&nbsp;</td><td>
-Generates coherent noise quickly. 
-<p>
-When a coherent-noise function with this quality setting is used to generate a bump-map image, there are noticeable "creasing" artifacts in the resulting image. This is because the derivative of that function is discontinuous at integer boundaries. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="gga26a13" doxytag="QUALITY_STD"></a>QUALITY_STD</em>&nbsp;</td><td>
-Generates standard-quality coherent noise. 
-<p>
-When a coherent-noise function with this quality setting is used to generate a bump-map image, there are some minor "creasing" artifacts in the resulting image. This is because the second derivative of that function is discontinuous at integer boundaries. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="gga26a14" doxytag="QUALITY_BEST"></a>QUALITY_BEST</em>&nbsp;</td><td>
-Generates the best-quality coherent noise. 
-<p>
-When a coherent-noise function with this quality setting is used to generate a bump-map image, there are no "creasing" artifacts in the resulting image. This is because the first and second derivatives of that function are continuous at integer boundaries. </td></tr>
-</table>
-</dl>
-    </td>
-  </tr>
-</table>
-<hr><h2>Function Documentation</h2>
-<a class="anchor" name="ga12" doxytag="noise::CubicInterp"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double CubicInterp           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>n0</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>n1</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>n2</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>n3</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>a</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Performs cubic interpolation between two values bound between two other values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>n0</em>&nbsp;</td><td>The value before the first value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>n1</em>&nbsp;</td><td>The first value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>n2</em>&nbsp;</td><td>The second value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>n3</em>&nbsp;</td><td>The value after the second value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>The alpha value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The interpolated value.</dd></dl>
-The alpha value should range from 0.0 to 1.0. If the alpha value is 0.0, this function returns <em>n1</em>. If the alpha value is 1.0, this function returns <em>n2</em>.     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga17" doxytag="noise::GetMax"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" colspan="4">
-template&lt;class T&gt; </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap valign="top">T GetMax           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const T &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>a</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>const T &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>b</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the maximum of two values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>The first value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>b</em>&nbsp;</td><td>The second value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The maximum of the two values. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="ga18" doxytag="noise::GetMin"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" colspan="4">
-template&lt;class T&gt; </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap valign="top">T GetMin           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">const T &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>a</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>const T &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>b</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Returns the minimum of two values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>The first value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>b</em>&nbsp;</td><td>The second value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The minimum of the two values. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="ga20" doxytag="noise::GradientCoherentNoise3D"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::GradientCoherentNoise3D           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>seed</em> = <code>0</code>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap><a class="el" href="group__libnoise.html#ga26">NoiseQuality</a>&nbsp;</td>
-          <td class="mdname" nowrap> <em>noiseQuality</em> = <code>QUALITY_STD</code></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates a gradient-coherent-noise value from the coordinates of a three-dimensional input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>The random number seed. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>noiseQuality</em>&nbsp;</td><td>The quality of the coherent-noise.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The generated gradient-coherent-noise value.</dd></dl>
-The return value ranges from -1.0 to +1.0.<p>
-For an explanation of the difference between <em>gradient</em> noise and <em>value</em> noise, see the comments for the <a class="el" href="group__libnoise.html#ga21">GradientNoise3D()</a> function.     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga21" doxytag="noise::GradientNoise3D"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::GradientNoise3D           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>fx</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>fy</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>fz</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>ix</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>iy</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>iz</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>seed</em> = <code>0</code></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates a gradient-noise value from the coordinates of a three-dimensional input value and the integer coordinates of a nearby three-dimensional value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>fx</em>&nbsp;</td><td>The floating-point <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>fy</em>&nbsp;</td><td>The floating-point <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>fz</em>&nbsp;</td><td>The floating-point <em>z</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>ix</em>&nbsp;</td><td>The integer <em>x</em> coordinate of a nearby value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>iy</em>&nbsp;</td><td>The integer <em>y</em> coordinate of a nearby value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>iz</em>&nbsp;</td><td>The integer <em>z</em> coordinate of a nearby value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>The random number seed.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The generated gradient-noise value.</dd></dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>The difference between <em>fx</em> and <em>ix</em> must be less than or equal to one.<p>
-The difference between <em>fy</em> and <em>iy</em> must be less than or equal to one.<p>
-The difference between <em>fz</em> and <em>iz</em> must be less than or equal to one.</dd></dl>
-A <em>gradient</em>-noise function generates better-quality noise than a <em>value</em>-noise function. Most noise modules use gradient noise for this reason, although it takes much longer to calculate.<p>
-The return value ranges from -1.0 to +1.0.<p>
-This function generates a gradient-noise value by performing the following steps:<ul>
-<li>It first calculates a random normalized vector based on the nearby integer value passed to this function.</li><li>It then calculates a new value by adding this vector to the nearby integer value passed to this function.</li><li>It then calculates the dot product of the above-generated value and the floating-point input value passed to this function.</li></ul>
-<p>
-A noise function differs from a random-number generator because it always returns the same output value if the same input value is passed to it.     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga22" doxytag="noise::IntValueNoise3D"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">int noise::IntValueNoise3D           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>seed</em> = <code>0</code></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates an integer-noise value from the coordinates of a three-dimensional input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The integer <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The integer <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The integer <em>z</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>A random number seed.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The generated integer-noise value.</dd></dl>
-The return value ranges from 0 to 2147483647.<p>
-A noise function differs from a random-number generator because it always returns the same output value if the same input value is passed to it.     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga16" doxytag="noise::LatLonToXYZ"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">void noise::LatLonToXYZ           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>lat</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>lon</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Converts latitude/longitude coordinates on a unit sphere into 3D Cartesian coordinates. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>lat</em>&nbsp;</td><td>The latitude, in degrees. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>lon</em>&nbsp;</td><td>The longitude, in degrees. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>On exit, this parameter contains the <em>x</em> coordinate. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>On exit, this parameter contains the <em>y</em> coordinate. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>On exit, this parameter contains the <em>z</em> coordinate.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Precondition:</b></dt><dd>lat must range from <b>-90</b> to <b>+90</b>. <p>
-lon must range from <b>-180</b> to <b>+180</b>. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="ga13" doxytag="noise::LinearInterp"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double LinearInterp           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>n0</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>n1</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>a</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Performs linear interpolation between two values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>n0</em>&nbsp;</td><td>The first value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>n1</em>&nbsp;</td><td>The second value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>The alpha value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The interpolated value.</dd></dl>
-The alpha value should range from 0.0 to 1.0. If the alpha value is 0.0, this function returns <em>n0</em>. If the alpha value is 1.0, this function returns <em>n1</em>.     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga23" doxytag="noise::MakeInt32Range"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double MakeInt32Range           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>n</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Modifies a floating-point value so that it can be stored in a <a class="el" href="group__libnoise.html#ga4">noise::int32</a> variable. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>A floating-point number.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The modified floating-point number.</dd></dl>
-This function does not modify <em>n</em>.<p>
-In libnoise, the noise-generating algorithms are all integer-based; they use variables of type <a class="el" href="group__libnoise.html#ga4">noise::int32</a>. Before calling a noise function, pass the <em>x</em>, <em>y</em>, and <em>z</em> coordinates to this function to ensure that these coordinates can be cast to a <a class="el" href="group__libnoise.html#ga4">noise::int32</a> value.<p>
-Although you could do a straight cast from double to <a class="el" href="group__libnoise.html#ga4">noise::int32</a>, the resulting value may differ between platforms. By using this function, you ensure that the resulting value is identical between platforms.     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga14" doxytag="noise::SCurve3"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double SCurve3           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>a</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Maps a value onto a cubic S-curve. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>The value to map onto a cubic S-curve.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The mapped value.</dd></dl>
-<em>a</em> should range from 0.0 to 1.0.<p>
-The derivitive of a cubic S-curve is zero at <em>a</em> = 0.0 and <em>a</em> = 1.0     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga15" doxytag="noise::SCurve5"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double SCurve5           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname1" valign="top" nowrap> <em>a</em>          </td>
-          <td class="md" valign="top">&nbsp;)&nbsp;</td>
-          <td class="md" nowrap><code> [inline]</code></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Maps a value onto a quintic S-curve. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>The value to map onto a quintic S-curve.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The mapped value.</dd></dl>
-<em>a</em> should range from 0.0 to 1.0.<p>
-The first derivitive of a quintic S-curve is zero at <em>a</em> = 0.0 and <em>a</em> = 1.0<p>
-The second derivitive of a quintic S-curve is zero at <em>a</em> = 0.0 and <em>a</em> = 1.0     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga19" doxytag="noise::SwapValues"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" colspan="4">
-template&lt;class T&gt; </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap valign="top">void SwapValues           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>a</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>T &amp;&nbsp;</td>
-          <td class="mdname" nowrap> <em>b</em></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Swaps two values. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>A variable containing the first value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>b</em>&nbsp;</td><td>A variable containing the second value.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Postcondition:</b></dt><dd>The values within the the two variables are swapped. </dd></dl>
-    </td>
-  </tr>
-</table>
-<a class="anchor" name="ga24" doxytag="noise::ValueCoherentNoise3D"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::ValueCoherentNoise3D           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">double&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>double&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>seed</em> = <code>0</code>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap><a class="el" href="group__libnoise.html#ga26">NoiseQuality</a>&nbsp;</td>
-          <td class="mdname" nowrap> <em>noiseQuality</em> = <code>QUALITY_STD</code></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates a value-coherent-noise value from the coordinates of a three-dimensional input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>The random number seed. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>noiseQuality</em>&nbsp;</td><td>The quality of the coherent-noise.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The generated value-coherent-noise value.</dd></dl>
-The return value ranges from -1.0 to +1.0.<p>
-For an explanation of the difference between <em>gradient</em> noise and <em>value</em> noise, see the comments for the <a class="el" href="group__libnoise.html#ga21">GradientNoise3D()</a> function.     </td>
-  </tr>
-</table>
-<a class="anchor" name="ga25" doxytag="noise::ValueNoise3D"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
-  <tr>
-    <td class="mdRow">
-      <table cellpadding="0" cellspacing="0" border="0">
-        <tr>
-          <td class="md" nowrap valign="top">double noise::ValueNoise3D           </td>
-          <td class="md" valign="top">(&nbsp;</td>
-          <td class="md" nowrap valign="top">int&nbsp;</td>
-          <td class="mdname" nowrap> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>y</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>z</em>, </td>
-        </tr>
-        <tr>
-          <td class="md" nowrap align="right"></td>
-          <td class="md"></td>
-          <td class="md" nowrap>int&nbsp;</td>
-          <td class="mdname" nowrap> <em>seed</em> = <code>0</code></td>
-        </tr>
-        <tr>
-          <td class="md"></td>
-          <td class="md">)&nbsp;</td>
-          <td class="md" colspan="2"></td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-</table>
-<table cellspacing="5" cellpadding="0" border="0">
-  <tr>
-    <td>
-      &nbsp;
-    </td>
-    <td>
-
-<p>
-Generates a value-noise value from the coordinates of a three-dimensional input value. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>The <em>x</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>The <em>y</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>The <em>z</em> coordinate of the input value. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>seed</em>&nbsp;</td><td>A random number seed.</td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>The generated value-noise value.</dd></dl>
-The return value ranges from -1.0 to +1.0.<p>
-A noise function differs from a random-number generator because it always returns the same output value if the same input value is passed to it.     </td>
-  </tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__miscmodules.html b/libnoise/noise/doc/html/group__miscmodules.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__miscmodules.html
+++ /dev/null
@@ -1,132 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>Miscellaneous Modules<br>
-<small>
-[<a class="el" href="group__modules.html">Noise Modules</a>]</small>
-</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that caches the last output value generated by a source module.  <a href="classnoise_1_1module_1_1Cache.html#_details">More...</a><br></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__models.html b/libnoise/noise/doc/html/group__models.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__models.html
+++ /dev/null
@@ -1,141 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>Models<br>
-<small>
-[<a class="el" href="group__libnoise.html">libnoise</a>]</small>
-</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Model that defines the surface of a cylinder.  <a href="classnoise_1_1model_1_1Cylinder.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Model that defines the displacement of a line segment.  <a href="classnoise_1_1model_1_1Line.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Model that defines the surface of a plane.  <a href="classnoise_1_1model_1_1Plane.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Model that defines the surface of a sphere.  <a href="classnoise_1_1model_1_1Sphere.html#_details">More...</a><br></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__modifiermodules.html b/libnoise/noise/doc/html/group__modifiermodules.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__modifiermodules.html
+++ /dev/null
@@ -1,171 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>Modifier Modules<br>
-<small>
-[<a class="el" href="group__modules.html">Noise Modules</a>]</small>
-</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Abs.html">noise::module::Abs</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs the absolute value of the output value from a source module.  <a href="classnoise_1_1module_1_1Abs.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that clamps the output value from a source module to a range of values.  <a href="classnoise_1_1module_1_1Clamp.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that maps the output value from a source module onto an arbitrary function curve.  <a href="classnoise_1_1module_1_1Curve.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that maps the output value from a source module onto an exponential curve.  <a href="classnoise_1_1module_1_1Exponent.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Invert.html">noise::module::Invert</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that inverts the output value from a source module.  <a href="classnoise_1_1module_1_1Invert.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that applies a scaling factor and a bias to the output value from a source module.  <a href="classnoise_1_1module_1_1ScaleBias.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that maps the output value from a source module onto a terrace-forming curve.  <a href="classnoise_1_1module_1_1Terrace.html#_details">More...</a><br></td></tr>
-<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga0" doxytag="modifiermodules::DEFAULT_CLAMP_LOWER_BOUND"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__modifiermodules.html#ga0">noise::module::DEFAULT_CLAMP_LOWER_BOUND</a> = -1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default lower bound of the clamping range for the <a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga1" doxytag="modifiermodules::DEFAULT_CLAMP_UPPER_BOUND"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__modifiermodules.html#ga1">noise::module::DEFAULT_CLAMP_UPPER_BOUND</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default upper bound of the clamping range for the <a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga2" doxytag="modifiermodules::DEFAULT_EXPONENT"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__modifiermodules.html#ga2">noise::module::DEFAULT_EXPONENT</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default exponent for the <a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga3" doxytag="modifiermodules::DEFAULT_BIAS"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__modifiermodules.html#ga3">noise::module::DEFAULT_BIAS</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default bias for the <a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga4" doxytag="modifiermodules::DEFAULT_SCALE"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__modifiermodules.html#ga4">noise::module::DEFAULT_SCALE</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default scale for the <a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a> noise module. <br></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__modules.html b/libnoise/noise/doc/html/group__modules.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__modules.html
+++ /dev/null
@@ -1,145 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>Noise Modules<br>
-<small>
-[<a class="el" href="group__libnoise.html">libnoise</a>]</small>
-</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Modules</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">group &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__modifiermodules.html">Modifier Modules</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">group &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__combinermodules.html">Combiner Modules</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">group &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__generatormodules.html">Generator Modules</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">group &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__selectormodules.html">Selector Modules</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">group &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__miscmodules.html">Miscellaneous Modules</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">group &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html">Transformer Modules</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Abstract base class for noise modules.  <a href="classnoise_1_1module_1_1Module.html#_details">More...</a><br></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__selectormodules.html b/libnoise/noise/doc/html/group__selectormodules.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__selectormodules.html
+++ /dev/null
@@ -1,148 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>Selector Modules<br>
-<small>
-[<a class="el" href="group__modules.html">Noise Modules</a>]</small>
-</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs a weighted blend of the output values from two source modules given the output value supplied by a control module.  <a href="classnoise_1_1module_1_1Blend.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that outputs the value selected from one of two source modules chosen by the output value from a control module.  <a href="classnoise_1_1module_1_1Select.html#_details">More...</a><br></td></tr>
-<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga0" doxytag="selectormodules::DEFAULT_SELECT_EDGE_FALLOFF"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__selectormodules.html#ga0">noise::module::DEFAULT_SELECT_EDGE_FALLOFF</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default edge-falloff value for the <a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga1" doxytag="selectormodules::DEFAULT_SELECT_LOWER_BOUND"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__selectormodules.html#ga1">noise::module::DEFAULT_SELECT_LOWER_BOUND</a> = -1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default lower bound of the selection range for the <a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga2" doxytag="selectormodules::DEFAULT_SELECT_UPPER_BOUND"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__selectormodules.html#ga2">noise::module::DEFAULT_SELECT_UPPER_BOUND</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default upper bound of the selection range for the <a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a> noise module. <br></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/group__transformermodules.html b/libnoise/noise/doc/html/group__transformermodules.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/group__transformermodules.html
+++ /dev/null
@@ -1,197 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>Transformer Modules<br>
-<small>
-[<a class="el" href="group__modules.html">Noise Modules</a>]</small>
-</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that uses three source modules to displace each coordinate of the input value before returning the output value from a source module.  <a href="classnoise_1_1module_1_1Displace.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that rotates the input value around the origin before returning the output value from a source module.  <a href="classnoise_1_1module_1_1RotatePoint.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that scales the coordinates of the input value before returning the output value from a source module.  <a href="classnoise_1_1module_1_1ScalePoint.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that moves the coordinates of the input value before returning the output value from a source module.  <a href="classnoise_1_1module_1_1TranslatePoint.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Noise module that randomly displaces the input value before returning the output value from a source module.  <a href="classnoise_1_1module_1_1Turbulence.html#_details">More...</a><br></td></tr>
-<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga0" doxytag="transformermodules::DEFAULT_ROTATE_X"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga0">noise::module::DEFAULT_ROTATE_X</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default <em>x</em> rotation angle for the <a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga1" doxytag="transformermodules::DEFAULT_ROTATE_Y"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga1">noise::module::DEFAULT_ROTATE_Y</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default <em>y</em> rotation angle for the <a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga2" doxytag="transformermodules::DEFAULT_ROTATE_Z"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga2">noise::module::DEFAULT_ROTATE_Z</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default <em>z</em> rotation angle for the <a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga3" doxytag="transformermodules::DEFAULT_SCALE_POINT_X"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga3">noise::module::DEFAULT_SCALE_POINT_X</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default scaling factor applied to the <em>x</em> coordinate for the <a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga4" doxytag="transformermodules::DEFAULT_SCALE_POINT_Y"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga4">noise::module::DEFAULT_SCALE_POINT_Y</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default scaling factor applied to the <em>y</em> coordinate for the <a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga5" doxytag="transformermodules::DEFAULT_SCALE_POINT_Z"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga5">noise::module::DEFAULT_SCALE_POINT_Z</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default scaling factor applied to the <em>z</em> coordinate for the <a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga6" doxytag="transformermodules::DEFAULT_TRANSLATE_POINT_X"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga6">noise::module::DEFAULT_TRANSLATE_POINT_X</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default translation factor applied to the <em>x</em> coordinate for the <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga7" doxytag="transformermodules::DEFAULT_TRANSLATE_POINT_Y"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga7">noise::module::DEFAULT_TRANSLATE_POINT_Y</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default translation factor applied to the <em>y</em> coordinate for the <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga8" doxytag="transformermodules::DEFAULT_TRANSLATE_POINT_Z"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga8">noise::module::DEFAULT_TRANSLATE_POINT_Z</a> = 0.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default translation factor applied to the <em>z</em> coordinate for the <a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga9" doxytag="transformermodules::DEFAULT_TURBULENCE_FREQUENCY"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga9">noise::module::DEFAULT_TURBULENCE_FREQUENCY</a> = <a class="el" href="group__generatormodules.html#ga9">DEFAULT_PERLIN_FREQUENCY</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default frequency for the <a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga10" doxytag="transformermodules::DEFAULT_TURBULENCE_POWER"></a>
-const double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga10">noise::module::DEFAULT_TURBULENCE_POWER</a> = 1.0</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default power for the <a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga11" doxytag="transformermodules::DEFAULT_TURBULENCE_ROUGHNESS"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga11">noise::module::DEFAULT_TURBULENCE_ROUGHNESS</a> = 3</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default roughness for the <a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a> noise module. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga12" doxytag="transformermodules::DEFAULT_TURBULENCE_SEED"></a>
-const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__transformermodules.html#ga12">noise::module::DEFAULT_TURBULENCE_SEED</a> = <a class="el" href="group__generatormodules.html#ga14">DEFAULT_PERLIN_SEED</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default noise seed for the <a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a> noise module. <br></td></tr>
-</table>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/hierarchy.html b/libnoise/noise/doc/html/hierarchy.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/hierarchy.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindexHL" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>libnoise Class Hierarchy</h1>This inheritance list is sorted roughly, but not completely, alphabetically:<ul>
-<li><a class="el" href="structnoise_1_1module_1_1ControlPoint.html">noise::module::ControlPoint</a>
-<li><a class="el" href="classnoise_1_1model_1_1Cylinder.html">noise::model::Cylinder</a>
-<li><a class="el" href="classnoise_1_1Exception.html">noise::Exception</a>
-<ul>
-<li><a class="el" href="classnoise_1_1ExceptionInvalidParam.html">noise::ExceptionInvalidParam</a>
-<li><a class="el" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a>
-<li><a class="el" href="classnoise_1_1ExceptionOutOfMemory.html">noise::ExceptionOutOfMemory</a>
-<li><a class="el" href="classnoise_1_1ExceptionUnknown.html">noise::ExceptionUnknown</a>
-</ul>
-<li><a class="el" href="classnoise_1_1model_1_1Line.html">noise::model::Line</a>
-<li><a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a>
-<ul>
-<li><a class="el" href="classnoise_1_1module_1_1Abs.html">noise::module::Abs</a>
-<li><a class="el" href="classnoise_1_1module_1_1Add.html">noise::module::Add</a>
-<li><a class="el" href="classnoise_1_1module_1_1Billow.html">noise::module::Billow</a>
-<li><a class="el" href="classnoise_1_1module_1_1Blend.html">noise::module::Blend</a>
-<li><a class="el" href="classnoise_1_1module_1_1Cache.html">noise::module::Cache</a>
-<li><a class="el" href="classnoise_1_1module_1_1Checkerboard.html">noise::module::Checkerboard</a>
-<li><a class="el" href="classnoise_1_1module_1_1Clamp.html">noise::module::Clamp</a>
-<li><a class="el" href="classnoise_1_1module_1_1Const.html">noise::module::Const</a>
-<li><a class="el" href="classnoise_1_1module_1_1Curve.html">noise::module::Curve</a>
-<li><a class="el" href="classnoise_1_1module_1_1Cylinders.html">noise::module::Cylinders</a>
-<li><a class="el" href="classnoise_1_1module_1_1Displace.html">noise::module::Displace</a>
-<li><a class="el" href="classnoise_1_1module_1_1Exponent.html">noise::module::Exponent</a>
-<li><a class="el" href="classnoise_1_1module_1_1Invert.html">noise::module::Invert</a>
-<li><a class="el" href="classnoise_1_1module_1_1Max.html">noise::module::Max</a>
-<li><a class="el" href="classnoise_1_1module_1_1Min.html">noise::module::Min</a>
-<li><a class="el" href="classnoise_1_1module_1_1Multiply.html">noise::module::Multiply</a>
-<li><a class="el" href="classnoise_1_1module_1_1Perlin.html">noise::module::Perlin</a>
-<li><a class="el" href="classnoise_1_1module_1_1Power.html">noise::module::Power</a>
-<li><a class="el" href="classnoise_1_1module_1_1RidgedMulti.html">noise::module::RidgedMulti</a>
-<li><a class="el" href="classnoise_1_1module_1_1RotatePoint.html">noise::module::RotatePoint</a>
-<li><a class="el" href="classnoise_1_1module_1_1ScaleBias.html">noise::module::ScaleBias</a>
-<li><a class="el" href="classnoise_1_1module_1_1ScalePoint.html">noise::module::ScalePoint</a>
-<li><a class="el" href="classnoise_1_1module_1_1Select.html">noise::module::Select</a>
-<li><a class="el" href="classnoise_1_1module_1_1Spheres.html">noise::module::Spheres</a>
-<li><a class="el" href="classnoise_1_1module_1_1Terrace.html">noise::module::Terrace</a>
-<li><a class="el" href="classnoise_1_1module_1_1TranslatePoint.html">noise::module::TranslatePoint</a>
-<li><a class="el" href="classnoise_1_1module_1_1Turbulence.html">noise::module::Turbulence</a>
-<li><a class="el" href="classnoise_1_1module_1_1Voronoi.html">noise::module::Voronoi</a>
-</ul>
-<li><a class="el" href="classnoise_1_1model_1_1Plane.html">noise::model::Plane</a>
-<li><a class="el" href="classnoise_1_1model_1_1Sphere.html">noise::model::Sphere</a>
-</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/index.html b/libnoise/noise/doc/html/index.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/index.html
+++ /dev/null
@@ -1,136 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindexHL" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>libnoise </h1>
-<p>
-<h3 align="center">0.9.0 </h3><h2><a class="anchor" name="intro">
-Introduction</a></h2>
-libnoise is a portable C++ library that is used to generate <em>coherent noise</em>, a type of smoothly-changing noise. libnoise can generate Perlin noise, ridged multifractal noise, and other types of coherent noise.<p>
-Coherent noise is often used by graphics programmers to generate natural-looking textures, planetary terrain, and other things. It can also be used to move critters in a realistic way.<p>
-libnoise is known to compile using the following compilers on the following platforms:<ul>
-<li>Microsoft Visual C++ 5.0 under Microsoft Windows 2000 Service Pack 4</li><li>gcc 3.3.4 under Gentoo Linux 10.0 (x86)</li></ul>
-<p>
-It is not known if libnoise will compile on 64-bit platforms, although there is a good change that it will.<h2><a class="anchor" name="noise">
-Noise Modules</a></h2>
-In libnoise, coherent-noise generators are encapsulated in classes called <em>noise modules</em>. There are many different types of noise modules. Some noise modules can combine or modify the outputs of other noise modules in various ways; you can join these modules together to generate very complex coherent noise.<p>
-A noise module receives a 3-dimensional input value from the application, computes the noise value given that input value, and returns the resulting value back to the application.<p>
-If the application passes the same input value to a noise module, the noise module returns the same output value.<p>
-All noise modules are derived from the <a class="el" href="classnoise_1_1module_1_1Module.html">noise::module::Module</a> abstract base class.<h2><a class="anchor" name="contact">
-Contact</a></h2>
-Contact jas for questions about libnoise. The spam-resistant email address is <a href="mailto:jlbezigvins@gmzigail.com">jlbezigvins@gmzigail.com</a> (For great email, take off every <a href="http://www.planettribes.com/allyourbase/story.shtml">zig</a>.) <!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/interp_8h-source.html b/libnoise/noise/doc/html/interp_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/interp_8h-source.html
+++ /dev/null
@@ -1,184 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>interp.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// interp.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_INTERP_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_INTERP_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="keyword">namespace </span>noise
-00027 {
-00028 
-00031 
-<a name="l00046"></a><a class="code" href="group__libnoise.html#ga12">00046</a>   <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga12">CubicInterp</a> (<span class="keywordtype">double</span> n0, <span class="keywordtype">double</span> n1, <span class="keywordtype">double</span> n2, <span class="keywordtype">double</span> n3,
-00047     <span class="keywordtype">double</span> a)
-00048   {
-00049     <span class="keywordtype">double</span> p = (n3 - n2) - (n0 - n1);
-00050     <span class="keywordtype">double</span> q = (n0 - n1) - p;
-00051     <span class="keywordtype">double</span> r = n2 - n0;
-00052     <span class="keywordtype">double</span> s = n1;
-00053     <span class="keywordflow">return</span> p * a * a * a + q * a * a + r * a + s;
-00054   }
-00055 
-<a name="l00067"></a><a class="code" href="group__libnoise.html#ga13">00067</a>   <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga13">LinearInterp</a> (<span class="keywordtype">double</span> n0, <span class="keywordtype">double</span> n1, <span class="keywordtype">double</span> a)
-00068   {
-00069     <span class="keywordflow">return</span> ((1.0 - a) * n0) + (a * n1);
-00070   }
-00071 
-<a name="l00082"></a><a class="code" href="group__libnoise.html#ga14">00082</a>   <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga14">SCurve3</a> (<span class="keywordtype">double</span> a)
-00083   {
-00084     <span class="keywordflow">return</span> (a * a * (3.0 - 2.0 * a));
-00085   }
-00086 
-<a name="l00100"></a><a class="code" href="group__libnoise.html#ga15">00100</a>   <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga15">SCurve5</a> (<span class="keywordtype">double</span> a)
-00101   {
-00102     <span class="keywordtype">double</span> a3 = a * a * a;
-00103     <span class="keywordtype">double</span> a4 = a3 * a;
-00104     <span class="keywordtype">double</span> a5 = a4 * a;
-00105     <span class="keywordflow">return</span> (6.0 * a5) - (15.0 * a4) + (10.0 * a3);
-00106   }
-00107 
-00108   <span class="comment">// @}</span>
-00109 
-00110 }
-00111 
-00112 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/invert_8h-source.html b/libnoise/noise/doc/html/invert_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/invert_8h-source.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>invert.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// invert.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_INVERT_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_INVERT_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00048"></a><a class="code" href="classnoise_1_1module_1_1Invert.html">00048</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Invert.html">Invert</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00049     {
-00050 
-00051       <span class="keyword">public</span>:
-00052 
-00054         <a class="code" href="classnoise_1_1module_1_1Invert.html">Invert</a> ();
-00055 
-<a name="l00056"></a><a class="code" href="classnoise_1_1module_1_1Invert.html#a1">00056</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00057 <span class="keyword">        </span>{
-00058           <span class="keywordflow">return</span> 1;
-00059         }
-00060 
-00061         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00062 
-00063     };
-00064 
-00066 
-00068 
-00070 
-00071   }
-00072 
-00073 }
-00074 
-00075 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/latlon_8h-source.html b/libnoise/noise/doc/html/latlon_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/latlon_8h-source.html
+++ /dev/null
@@ -1,160 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>latlon.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// latlon.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_LATLON_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_LATLON_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include &lt;math.h&gt;</span>
-00027 <span class="preprocessor">#include "mathconsts.h"</span>
-00028 
-00029 <span class="keyword">namespace </span>noise
-00030 {
-00031 
-00034 
-00046   <span class="keywordtype">void</span> <a class="code" href="group__libnoise.html#ga16">LatLonToXYZ</a> (<span class="keywordtype">double</span> lat, <span class="keywordtype">double</span> lon, <span class="keywordtype">double</span>&amp; x, <span class="keywordtype">double</span>&amp; y, <span class="keywordtype">double</span>&amp; z);
-00047 
-00049 
-00050 }
-00051 
-00052 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/libnoise.png b/libnoise/noise/doc/html/libnoise.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/libnoise.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/line_8h-source.html b/libnoise/noise/doc/html/line_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/line_8h-source.html
+++ /dev/null
@@ -1,230 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">model</a></div>
-<h1>line.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// line.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2004 Keith Davies</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 
-00020 <span class="preprocessor">#ifndef NOISE_MODEL_LINE_H</span>
-00021 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODEL_LINE_H</span>
-00022 <span class="preprocessor"></span>
-00023 <span class="preprocessor">#include &lt;assert.h&gt;</span>
-00024 <span class="preprocessor">#include &lt;math.h&gt;</span>
-00025 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
-00026 <span class="preprocessor">#include "../module/modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>model
-00032   {
-00033 
-00036 
-00039 
-<a name="l00053"></a><a class="code" href="classnoise_1_1model_1_1Line.html">00053</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1model_1_1Line.html">Line</a>
-00054     {
-00055 
-00056       <span class="keyword">public</span>:
-00057 
-00059         <a class="code" href="classnoise_1_1model_1_1Line.html">Line</a> ();
-00060 
-00065         <a class="code" href="classnoise_1_1model_1_1Line.html">Line</a> (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; module);
-00066 
-<a name="l00074"></a><a class="code" href="classnoise_1_1model_1_1Line.html#a2">00074</a>         <span class="keywordtype">bool</span> GetAttenuate ()<span class="keyword"> const</span>
-00075 <span class="keyword">        </span>{
-00076           <span class="keywordflow">return</span> m_attenuate;
-00077         }
-00078 
-<a name="l00085"></a><a class="code" href="classnoise_1_1model_1_1Line.html#a3">00085</a>         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; GetModule ()<span class="keyword"> const</span>
-00086 <span class="keyword">        </span>{
-00087           assert (m_pModule != NULL);
-00088           <span class="keywordflow">return</span> *m_pModule;
-00089         }
-00090 
-00111         <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> p) <span class="keyword">const</span>;
-00112 
-<a name="l00118"></a><a class="code" href="classnoise_1_1model_1_1Line.html#a5">00118</a>         <span class="keywordtype">void</span> SetAttenuate (<span class="keywordtype">bool</span> att)
-00119         {
-00120           m_attenuate = att;
-00121         }
-00122 
-<a name="l00129"></a><a class="code" href="classnoise_1_1model_1_1Line.html#a6">00129</a>         <span class="keywordtype">void</span> SetEndPoint (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z)
-00130         {
-00131           m_x1 = x;
-00132           m_y1 = y;
-00133           m_z1 = z;
-00134         }
-00135 
-<a name="l00143"></a><a class="code" href="classnoise_1_1model_1_1Line.html#a7">00143</a>         <span class="keywordtype">void</span> SetModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; module)
-00144         {
-00145           m_pModule = &amp;module;
-00146         }
-00147 
-<a name="l00154"></a><a class="code" href="classnoise_1_1model_1_1Line.html#a8">00154</a>         <span class="keywordtype">void</span> SetStartPoint (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z)
-00155         {
-00156           m_x0 = x;
-00157           m_y0 = y;
-00158           m_z0 = z;
-00159         }
-00160 
-00161       <span class="keyword">private</span>:
-00162 
-00165         <span class="keywordtype">bool</span> m_attenuate;
-00166 
-00168         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>* m_pModule;
-00169 
-00171         <span class="keywordtype">double</span> m_x0;
-00172 
-00174         <span class="keywordtype">double</span> m_x1;
-00175 
-00177         <span class="keywordtype">double</span> m_y0;
-00178 
-00180         <span class="keywordtype">double</span> m_y1;
-00181 
-00183         <span class="keywordtype">double</span> m_z0;
-00184 
-00186         <span class="keywordtype">double</span> m_z1;
-00187 
-00188     };
-00189 
-00191 
-00193 
-00194   }
-00195 
-00196 }
-00197 
-00198 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/mathconsts_8h-source.html b/libnoise/noise/doc/html/mathconsts_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/mathconsts_8h-source.html
+++ /dev/null
@@ -1,168 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>mathconsts.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// mathconsts.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MATHCONSTS_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MATHCONSTS_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="comment">// For whatever reason, I can't find the basic math consts in the MSVC version</span>
-00027 <span class="comment">// of math.h.</span>
-00028 
-00029 <span class="keyword">namespace </span>noise
-00030 {
-00031 
-00034 
-<a name="l00036"></a><a class="code" href="group__libnoise.html#ga7">00036</a>   <span class="keyword">const</span> <span class="keywordtype">double</span> PI = 3.1415926535897932385;
-00037 
-<a name="l00039"></a><a class="code" href="group__libnoise.html#ga8">00039</a>   <span class="keyword">const</span> <span class="keywordtype">double</span> SQRT_2 = 1.4142135623730950488;
-00040 
-<a name="l00042"></a><a class="code" href="group__libnoise.html#ga9">00042</a>   <span class="keyword">const</span> <span class="keywordtype">double</span> SQRT_3 = 1.7320508075688772935;
-00043 
-<a name="l00045"></a><a class="code" href="group__libnoise.html#ga10">00045</a>   <span class="keyword">const</span> <span class="keywordtype">double</span> DEG_TO_RAD = PI / 180.0;
-00046 
-<a name="l00048"></a><a class="code" href="group__libnoise.html#ga11">00048</a>   <span class="keyword">const</span> <span class="keywordtype">double</span> RAD_TO_DEG = 1.0 / DEG_TO_RAD;
-00049 
-00051 
-00052 }
-00053 
-00054 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/max_8h-source.html b/libnoise/noise/doc/html/max_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/max_8h-source.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>max.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// max.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_MAX_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_MAX_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00049"></a><a class="code" href="classnoise_1_1module_1_1Max.html">00049</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Max.html">Max</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00050     {
-00051 
-00052       <span class="keyword">public</span>:
-00053 
-00055         <a class="code" href="classnoise_1_1module_1_1Max.html">Max</a> ();
-00056 
-<a name="l00057"></a><a class="code" href="classnoise_1_1module_1_1Max.html#a1">00057</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00058 <span class="keyword">        </span>{
-00059           <span class="keywordflow">return</span> 2;
-00060         }
-00061 
-00062         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00063 
-00064     };
-00065 
-00067 
-00069 
-00071 
-00072   }
-00073 
-00074 }
-00075 
-00076 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/min_8h-source.html b/libnoise/noise/doc/html/min_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/min_8h-source.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>min.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// min.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_MIN_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_MIN_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00049"></a><a class="code" href="classnoise_1_1module_1_1Min.html">00049</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Min.html">Min</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00050     {
-00051 
-00052       <span class="keyword">public</span>:
-00053 
-00055         <a class="code" href="classnoise_1_1module_1_1Min.html">Min</a> ();
-00056 
-<a name="l00057"></a><a class="code" href="classnoise_1_1module_1_1Min.html#a1">00057</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00058 <span class="keyword">        </span>{
-00059           <span class="keywordflow">return</span> 2;
-00060         }
-00061 
-00062         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00063 
-00064     };
-00065 
-00067 
-00069 
-00071 
-00072   }
-00073 
-00074 }
-00075 
-00076 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/misc_8h-source.html b/libnoise/noise/doc/html/misc_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/misc_8h-source.html
+++ /dev/null
@@ -1,186 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>misc.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// misc.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MISC_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MISC_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="keyword">namespace </span>noise
-00027 {
-00028 
-00041   <span class="keyword">inline</span> <span class="keywordtype">int</span> ClampValue (<span class="keywordtype">int</span> value, <span class="keywordtype">int</span> lowerBound, <span class="keywordtype">int</span> upperBound)
-00042   {
-00043     <span class="keywordflow">if</span> (value &lt; lowerBound) {
-00044       <span class="keywordflow">return</span> lowerBound;
-00045     } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (value &gt; upperBound) {
-00046       <span class="keywordflow">return</span> upperBound;
-00047     } <span class="keywordflow">else</span> {
-00048       <span class="keywordflow">return</span> value;
-00049     }
-00050   }
-00051 
-00054 
-00061   <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;
-<a name="l00062"></a><a class="code" href="group__libnoise.html#ga17">00062</a>   T <a class="code" href="group__libnoise.html#ga17">GetMax</a> (<span class="keyword">const</span> T&amp; a, <span class="keyword">const</span> T&amp; b)
-00063   {
-00064     <span class="keywordflow">return</span> (a &gt; b? a: b);
-00065   }
-00066 
-00073   <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;
-<a name="l00074"></a><a class="code" href="group__libnoise.html#ga18">00074</a>   T <a class="code" href="group__libnoise.html#ga18">GetMin</a> (<span class="keyword">const</span> T&amp; a, <span class="keyword">const</span> T&amp; b)
-00075   {
-00076     <span class="keywordflow">return</span> (a &lt; b? a: b);
-00077   }
-00078 
-00085   <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;
-<a name="l00086"></a><a class="code" href="group__libnoise.html#ga19">00086</a>   <span class="keywordtype">void</span> <a class="code" href="group__libnoise.html#ga19">SwapValues</a> (T&amp; a, T&amp; b)
-00087   {
-00088     T c = a;
-00089     a = b;
-00090     b = c;
-00091   }
-00092 
-00094 
-00095 }
-00096 
-00097 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/model_8h-source.html b/libnoise/noise/doc/html/model_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/model_8h-source.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">model</a></div>
-<h1>model.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// model.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODEL_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODEL_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "cylinder.h"</span>
-00027 <span class="preprocessor">#include "line.h"</span>
-00028 <span class="preprocessor">#include "plane.h"</span>
-00029 <span class="preprocessor">#include "sphere.h"</span>
-00030 
-00031 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/modelcylinder.png b/libnoise/noise/doc/html/modelcylinder.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modelcylinder.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modelsphere.png b/libnoise/noise/doc/html/modelsphere.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modelsphere.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/module_8h-source.html b/libnoise/noise/doc/html/module_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/module_8h-source.html
+++ /dev/null
@@ -1,177 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>module.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// module.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "add.h"</span>
-00027 <span class="preprocessor">#include "abs.h"</span>
-00028 <span class="preprocessor">#include "billow.h"</span>
-00029 <span class="preprocessor">#include "blend.h"</span>
-00030 <span class="preprocessor">#include "cache.h"</span>
-00031 <span class="preprocessor">#include "checkerboard.h"</span>
-00032 <span class="preprocessor">#include "clamp.h"</span>
-00033 <span class="preprocessor">#include "const.h"</span>
-00034 <span class="preprocessor">#include "curve.h"</span>
-00035 <span class="preprocessor">#include "cylinders.h"</span>
-00036 <span class="preprocessor">#include "displace.h"</span>
-00037 <span class="preprocessor">#include "exponent.h"</span>
-00038 <span class="preprocessor">#include "invert.h"</span>
-00039 <span class="preprocessor">#include "max.h"</span>
-00040 <span class="preprocessor">#include "min.h"</span>
-00041 <span class="preprocessor">#include "multiply.h"</span>
-00042 <span class="preprocessor">#include "perlin.h"</span>
-00043 <span class="preprocessor">#include "power.h"</span>
-00044 <span class="preprocessor">#include "ridgedmulti.h"</span>
-00045 <span class="preprocessor">#include "rotatepoint.h"</span>
-00046 <span class="preprocessor">#include "scalebias.h"</span>
-00047 <span class="preprocessor">#include "scalepoint.h"</span>
-00048 <span class="preprocessor">#include "select.h"</span>
-00049 <span class="preprocessor">#include "spheres.h"</span>
-00050 <span class="preprocessor">#include "terrace.h"</span>
-00051 <span class="preprocessor">#include "translatepoint.h"</span>
-00052 <span class="preprocessor">#include "turbulence.h"</span>
-00053 <span class="preprocessor">#include "voronoi.h"</span>
-00054 
-00055 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/moduleabs.png b/libnoise/noise/doc/html/moduleabs.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleabs.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleadd.png b/libnoise/noise/doc/html/moduleadd.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleadd.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulebase_8h-source.html b/libnoise/noise/doc/html/modulebase_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/modulebase_8h-source.html
+++ /dev/null
@@ -1,214 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>modulebase.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// modulebase.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULEBASE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULEBASE_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
-00027 <span class="preprocessor">#include &lt;assert.h&gt;</span>
-00028 <span class="preprocessor">#include &lt;math.h&gt;</span>
-00029 <span class="preprocessor">#include "../basictypes.h"</span>
-00030 <span class="preprocessor">#include "../exception.h"</span>
-00031 <span class="preprocessor">#include "../noisegen.h"</span>
-00032 
-00033 <span class="keyword">namespace </span>noise
-00034 {
-00035 
-00036   <span class="keyword">namespace </span>module
-00037   {
-00038 
-00041 
-00045 
-<a name="l00223"></a><a class="code" href="classnoise_1_1module_1_1Module.html">00223</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00224     {
-00225 
-00226       <span class="keyword">public</span>:
-00227 
-00229         <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a> (<span class="keywordtype">int</span> sourceModuleCount);
-00230 
-00232         ~<a class="code" href="classnoise_1_1module_1_1Module.html">Module</a> ();
-00233 
-<a name="l00252"></a><a class="code" href="classnoise_1_1module_1_1Module.html#a2">00252</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; GetSourceModule (<span class="keywordtype">int</span> index)<span class="keyword"> const</span>
-00253 <span class="keyword">        </span>{
-00254           assert (m_pSourceModule != NULL);
-00255           <span class="keywordflow">if</span> (index &gt;= GetSourceModuleCount () || index &lt; 0
-00256             || m_pSourceModule[index] != NULL) {
-00257             <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a> ();
-00258           }
-00259           <span class="keywordflow">return</span> *(m_pSourceModule[index]);
-00260         }
-00261 
-00267         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount () <span class="keyword">const </span>= 0;
-00268 
-00288         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const </span>= 0;
-00289 
-<a name="l00320"></a><a class="code" href="classnoise_1_1module_1_1Module.html#a5">00320</a>         <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetSourceModule (<span class="keywordtype">int</span> index, <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; sourceModule)
-00321         {
-00322           assert (m_pSourceModule != NULL);
-00323           <span class="keywordflow">if</span> (index &gt;= GetSourceModuleCount () || index &lt; 0) {
-00324             <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionInvalidParam.html">noise::ExceptionInvalidParam</a> ();
-00325           }
-00326           m_pSourceModule[index] = &amp;sourceModule;
-00327         }
-00328 
-00329       <span class="keyword">protected</span>:
-00330 
-<a name="l00333"></a><a class="code" href="classnoise_1_1module_1_1Module.html#p0">00333</a>         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>** m_pSourceModule;
-00334 
-00335       <span class="keyword">private</span>:
-00336 
-00343         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; operator= (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; m)
-00344         {
-00345           <span class="keywordflow">return</span> *<span class="keyword">this</span>;
-00346         }
-00347 
-00348     };
-00349 
-00351 
-00353 
-00354   } 
-00355 
-00356 }
-00357 
-00358 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/modulebillow.png b/libnoise/noise/doc/html/modulebillow.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulebillow.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleblend.png b/libnoise/noise/doc/html/moduleblend.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleblend.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulecheckerboard.png b/libnoise/noise/doc/html/modulecheckerboard.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulecheckerboard.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleclamp.png b/libnoise/noise/doc/html/moduleclamp.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleclamp.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleconst.png b/libnoise/noise/doc/html/moduleconst.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleconst.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulecurve.png b/libnoise/noise/doc/html/modulecurve.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulecurve.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulecylinders.png b/libnoise/noise/doc/html/modulecylinders.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulecylinders.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduledisplace.png b/libnoise/noise/doc/html/moduledisplace.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduledisplace.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleexponent.png b/libnoise/noise/doc/html/moduleexponent.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleexponent.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleinvert.png b/libnoise/noise/doc/html/moduleinvert.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleinvert.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulemax.png b/libnoise/noise/doc/html/modulemax.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulemax.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulemin.png b/libnoise/noise/doc/html/modulemin.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulemin.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulemultiply.png b/libnoise/noise/doc/html/modulemultiply.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulemultiply.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleperlin.png b/libnoise/noise/doc/html/moduleperlin.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleperlin.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulepower.png b/libnoise/noise/doc/html/modulepower.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulepower.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleridgedmulti.png b/libnoise/noise/doc/html/moduleridgedmulti.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleridgedmulti.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulerotatepoint.png b/libnoise/noise/doc/html/modulerotatepoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulerotatepoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modules.html b/libnoise/noise/doc/html/modules.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/modules.html
+++ /dev/null
@@ -1,135 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindexHL" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>libnoise Modules</h1>Here is a list of all modules:<ul>
-<li><a class="el" href="group__libnoise.html">libnoise</a>
-<ul>
-<li><a class="el" href="group__models.html">Models</a>
-<li><a class="el" href="group__modules.html">Noise Modules</a>
-<ul>
-<li><a class="el" href="group__modifiermodules.html">Modifier Modules</a>
-<li><a class="el" href="group__combinermodules.html">Combiner Modules</a>
-<li><a class="el" href="group__generatormodules.html">Generator Modules</a>
-<li><a class="el" href="group__selectormodules.html">Selector Modules</a>
-<li><a class="el" href="group__miscmodules.html">Miscellaneous Modules</a>
-<li><a class="el" href="group__transformermodules.html">Transformer Modules</a>
-</ul>
-</ul>
-</ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/modulescalebias.png b/libnoise/noise/doc/html/modulescalebias.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulescalebias.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulescalepoint.png b/libnoise/noise/doc/html/modulescalepoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulescalepoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleselect.png b/libnoise/noise/doc/html/moduleselect.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleselect.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulespheres.png b/libnoise/noise/doc/html/modulespheres.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulespheres.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleterrace.png b/libnoise/noise/doc/html/moduleterrace.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleterrace.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduletranslatepoint.png b/libnoise/noise/doc/html/moduletranslatepoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduletranslatepoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/moduleturbulence.png b/libnoise/noise/doc/html/moduleturbulence.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/moduleturbulence.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/modulevoronoi.png b/libnoise/noise/doc/html/modulevoronoi.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/modulevoronoi.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/multiply_8h-source.html b/libnoise/noise/doc/html/multiply_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/multiply_8h-source.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>multiply.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// multiply.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_MULTIPLY_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_MULTIPLY_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00049"></a><a class="code" href="classnoise_1_1module_1_1Multiply.html">00049</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Multiply.html">Multiply</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00050     {
-00051 
-00052       <span class="keyword">public</span>:
-00053 
-00055         <a class="code" href="classnoise_1_1module_1_1Multiply.html">Multiply</a> ();
-00056 
-<a name="l00057"></a><a class="code" href="classnoise_1_1module_1_1Multiply.html#a1">00057</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00058 <span class="keyword">        </span>{
-00059           <span class="keywordflow">return</span> 2;
-00060         }
-00061 
-00062         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00063 
-00064     };
-00065 
-00067 
-00069 
-00071 
-00072   }
-00073 
-00074 }
-00075 
-00076 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/noise_8h-source.html b/libnoise/noise/doc/html/noise_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/noise_8h-source.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>noise.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// noise.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_H</span>
-00025 <span class="preprocessor"></span>
-00069 
-00070 <span class="preprocessor">#include "module/module.h"</span>
-00071 <span class="preprocessor">#include "model/model.h"</span>
-00072 <span class="preprocessor">#include "misc.h"</span>
-00073 
-00074 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/noisegen_8h-source.html b/libnoise/noise/doc/html/noisegen_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/noisegen_8h-source.html
+++ /dev/null
@@ -1,193 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>noisegen.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// noisegen.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_NOISEGEN_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_NOISEGEN_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include &lt;math.h&gt;</span>
-00027 <span class="preprocessor">#include "basictypes.h"</span>
-00028 
-00029 <span class="keyword">namespace </span>noise
-00030 {
-00031 
-00034 
-<a name="l00036"></a><a class="code" href="group__libnoise.html#ga26">00036</a>   <span class="keyword">enum</span> NoiseQuality
-00037   {
-00038 
-00044     QUALITY_FAST = 0,
-00045 
-00051     QUALITY_STD = 1,
-00052 
-00058     QUALITY_BEST = 2
-00059 
-00060   };
-00061 
-00077   <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga20">GradientCoherentNoise3D</a> (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z, <span class="keywordtype">int</span> seed = 0,
-00078     NoiseQuality noiseQuality = QUALITY_STD);
-00079 
-00121   <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga21">GradientNoise3D</a> (<span class="keywordtype">double</span> fx, <span class="keywordtype">double</span> fy, <span class="keywordtype">double</span> fz, <span class="keywordtype">int</span> ix, <span class="keywordtype">int</span> iy,
-00122     <span class="keywordtype">int</span> iz, <span class="keywordtype">int</span> seed = 0);
-00123 
-00139   <span class="keywordtype">int</span> <a class="code" href="group__libnoise.html#ga22">IntValueNoise3D</a> (<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> z, <span class="keywordtype">int</span> seed = 0);
-00140 
-<a name="l00158"></a><a class="code" href="group__libnoise.html#ga23">00158</a>   <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga23">MakeInt32Range</a> (<span class="keywordtype">double</span> n)
-00159   {
-00160     <span class="keywordflow">if</span> (n &gt;= 1073741824.0) {
-00161       <span class="keywordflow">return</span> (2.0 * fmod (n, 1073741824.0)) - 1073741824.0;
-00162     } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (n &lt;= -1073741824.0) {
-00163       <span class="keywordflow">return</span> (2.0 * fmod (n, 1073741824.0)) + 1073741824.0;
-00164     } <span class="keywordflow">else</span> {
-00165       <span class="keywordflow">return</span> n;
-00166     }
-00167   }
-00168 
-00184   <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga24">ValueCoherentNoise3D</a> (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z, <span class="keywordtype">int</span> seed = 0,
-00185     NoiseQuality noiseQuality = QUALITY_STD);
-00186 
-00202   <span class="keywordtype">double</span> <a class="code" href="group__libnoise.html#ga25">ValueNoise3D</a> (<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> z, <span class="keywordtype">int</span> seed = 0);
-00203 
-00205 
-00206 }
-00207 
-00208 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/perlin_8h-source.html b/libnoise/noise/doc/html/perlin_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/perlin_8h-source.html
+++ /dev/null
@@ -1,273 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>perlin.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// perlin.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_PERLIN_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_PERLIN_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__generatormodules.html#ga9">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_PERLIN_FREQUENCY = 1.0;
-00045 
-<a name="l00047"></a><a class="code" href="group__generatormodules.html#ga10">00047</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_PERLIN_LACUNARITY = 2.0;
-00048 
-<a name="l00050"></a><a class="code" href="group__generatormodules.html#ga11">00050</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_PERLIN_OCTAVE_COUNT = 6;
-00051 
-<a name="l00053"></a><a class="code" href="group__generatormodules.html#ga12">00053</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_PERLIN_PERSISTENCE = 0.5;
-00054 
-<a name="l00056"></a><a class="code" href="group__generatormodules.html#ga13">00056</a>     <span class="keyword">const</span> noise::NoiseQuality DEFAULT_PERLIN_QUALITY = QUALITY_STD;
-00057 
-<a name="l00059"></a><a class="code" href="group__generatormodules.html#ga14">00059</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_PERLIN_SEED = 0;
-00060 
-<a name="l00062"></a><a class="code" href="group__generatormodules.html#ga15">00062</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> PERLIN_MAX_OCTAVE = 30;
-00063 
-<a name="l00160"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html">00160</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Perlin.html">Perlin</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00161     {
-00162 
-00163       <span class="keyword">public</span>:
-00164 
-00181         <a class="code" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> ();
-00182 
-<a name="l00186"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a1">00186</a>         <span class="keywordtype">double</span> GetFrequency ()<span class="keyword"> const</span>
-00187 <span class="keyword">        </span>{
-00188           <span class="keywordflow">return</span> m_frequency;
-00189         }
-00190 
-<a name="l00197"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a2">00197</a>         <span class="keywordtype">double</span> GetLacunarity ()<span class="keyword"> const</span>
-00198 <span class="keyword">        </span>{
-00199           <span class="keywordflow">return</span> m_lacunarity;
-00200         }
-00201 
-<a name="l00208"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a3">00208</a>         noise::NoiseQuality GetNoiseQuality ()<span class="keyword"> const</span>
-00209 <span class="keyword">        </span>{
-00210           <span class="keywordflow">return</span> m_noiseQuality;
-00211         }
-00212 
-<a name="l00219"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a4">00219</a>         <span class="keywordtype">int</span> GetOctaveCount ()<span class="keyword"> const</span>
-00220 <span class="keyword">        </span>{
-00221           <span class="keywordflow">return</span> m_octaveCount;
-00222         }
-00223 
-<a name="l00229"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a5">00229</a>         <span class="keywordtype">double</span> GetPersistence ()<span class="keyword"> const</span>
-00230 <span class="keyword">        </span>{
-00231           <span class="keywordflow">return</span> m_persistence;
-00232         }
-00233 
-<a name="l00237"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a6">00237</a>         <span class="keywordtype">int</span> GetSeed ()<span class="keyword"> const</span>
-00238 <span class="keyword">        </span>{
-00239           <span class="keywordflow">return</span> m_seed;
-00240         }
-00241 
-<a name="l00242"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a7">00242</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00243 <span class="keyword">        </span>{
-00244           <span class="keywordflow">return</span> 0;
-00245         }
-00246 
-00247         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00248 
-<a name="l00252"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a9">00252</a>         <span class="keywordtype">void</span> SetFrequency (<span class="keywordtype">double</span> frequency)
-00253         {
-00254           m_frequency = frequency;
-00255         }
-00256 
-<a name="l00266"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a10">00266</a>         <span class="keywordtype">void</span> SetLacunarity (<span class="keywordtype">double</span> lacunarity)
-00267         {
-00268           m_lacunarity = lacunarity;
-00269         }
-00270 
-<a name="l00277"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a11">00277</a>         <span class="keywordtype">void</span> SetNoiseQuality (noise::NoiseQuality noiseQuality)
-00278         {
-00279           m_noiseQuality = noiseQuality;
-00280         }
-00281 
-<a name="l00298"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a12">00298</a>         <span class="keywordtype">void</span> SetOctaveCount (<span class="keywordtype">int</span> octaveCount)
-00299         {
-00300           <span class="keywordflow">if</span> (octaveCount &lt; 1 || octaveCount &gt; PERLIN_MAX_OCTAVE) {
-00301             <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionInvalidParam.html">noise::ExceptionInvalidParam</a> ();
-00302           }
-00303           m_octaveCount = octaveCount;
-00304         }
-00305 
-<a name="l00314"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a13">00314</a>         <span class="keywordtype">void</span> SetPersistence (<span class="keywordtype">double</span> persistence)
-00315         {
-00316           m_persistence = persistence;
-00317         }
-00318 
-<a name="l00322"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#a14">00322</a>         <span class="keywordtype">void</span> SetSeed (<span class="keywordtype">int</span> seed)
-00323         {
-00324           m_seed = seed;
-00325         }
-00326 
-00327       <span class="keyword">protected</span>:
-00328 
-<a name="l00330"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#p0">00330</a>         <span class="keywordtype">double</span> m_frequency;
-00331 
-<a name="l00333"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#p1">00333</a>         <span class="keywordtype">double</span> m_lacunarity;
-00334 
-<a name="l00336"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#p2">00336</a>         noise::NoiseQuality m_noiseQuality;
-00337 
-<a name="l00339"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#p3">00339</a>         <span class="keywordtype">int</span> m_octaveCount;
-00340 
-<a name="l00342"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#p4">00342</a>         <span class="keywordtype">double</span> m_persistence;
-00343 
-<a name="l00345"></a><a class="code" href="classnoise_1_1module_1_1Perlin.html#p5">00345</a>         <span class="keywordtype">int</span> m_seed;
-00346 
-00347     };
-00348 
-00350 
-00352 
-00354 
-00355   }
-00356 
-00357 }
-00358 
-00359 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/plane_8h-source.html b/libnoise/noise/doc/html/plane_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/plane_8h-source.html
+++ /dev/null
@@ -1,191 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">model</a></div>
-<h1>plane.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// plane.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2004 Owen Jacobson</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is ojacobson@lionsanctuary.net</span>
-00020 <span class="comment">//</span>
-00021 
-00022 <span class="preprocessor">#ifndef NOISE_MODEL_PLANE_H</span>
-00023 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODEL_PLANE_H</span>
-00024 <span class="preprocessor"></span>
-00025 <span class="preprocessor">#include &lt;assert.h&gt;</span>
-00026 <span class="preprocessor">#include "../module/modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>model
-00032   {
-00035 
-00038 
-<a name="l00053"></a><a class="code" href="classnoise_1_1model_1_1Plane.html">00053</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1model_1_1Plane.html">Plane</a>
-00054     {
-00055 
-00056       <span class="keyword">public</span>:
-00057 
-00059         <a class="code" href="classnoise_1_1model_1_1Plane.html">Plane</a> ();
-00060 
-00065         <a class="code" href="classnoise_1_1model_1_1Plane.html">Plane</a> (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; module);
-00066 
-<a name="l00073"></a><a class="code" href="classnoise_1_1model_1_1Plane.html#a2">00073</a>         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; GetModule ()<span class="keyword"> const</span>
-00074 <span class="keyword">        </span>{
-00075           assert (m_pModule != NULL);
-00076           <span class="keywordflow">return</span> *m_pModule;
-00077         }
-00078 
-00092         <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00093 
-<a name="l00101"></a><a class="code" href="classnoise_1_1model_1_1Plane.html#a4">00101</a>         <span class="keywordtype">void</span> SetModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; module)
-00102         {
-00103           m_pModule = &amp;module;
-00104         }
-00105 
-00106       <span class="keyword">private</span>:
-00107 
-00109         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>* m_pModule;
-00110 
-00111     };
-00112 
-00114 
-00116 
-00117   }
-00118 
-00119 }
-00120 
-00121 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/power_8h-source.html b/libnoise/noise/doc/html/power_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/power_8h-source.html
+++ /dev/null
@@ -1,181 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>power.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// power.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2004 Owen Jacobson</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is angstrom@lionsanctuary.net</span>
-00020 <span class="comment">//</span>
-00021 
-00022 <span class="preprocessor">#ifndef NOISE_MODULE_POWER_H</span>
-00023 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_POWER_H</span>
-00024 <span class="preprocessor"></span>
-00025 <span class="preprocessor">#include "modulebase.h"</span>
-00026 
-00027 <span class="keyword">namespace </span>noise
-00028 {
-00029 
-00030   <span class="keyword">namespace </span>module
-00031   {
-00032 
-00035 
-00038 
-00042 
-<a name="l00053"></a><a class="code" href="classnoise_1_1module_1_1Power.html">00053</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Power.html">Power</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00054     {
-00055 
-00056       <span class="keyword">public</span>:
-00057 
-00059         <a class="code" href="classnoise_1_1module_1_1Power.html">Power</a> ();
-00060 
-<a name="l00061"></a><a class="code" href="classnoise_1_1module_1_1Power.html#a1">00061</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00062 <span class="keyword">        </span>{
-00063           <span class="keywordflow">return</span> 2;
-00064         }
-00065 
-00066         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00067 
-00068     };
-00069 
-00071 
-00073 
-00075 
-00076   }
-00077 
-00078 }
-00079 
-00080 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/resource_8h-source.html b/libnoise/noise/doc/html/resource_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/resource_8h-source.html
+++ /dev/null
@@ -1,137 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000003.html">win32</a></div>
-<h1>resource.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">//{{NO_DEPENDENCIES}}</span>
-00002 <span class="comment">// Microsoft Developer Studio generated include file.</span>
-00003 <span class="comment">// Used by noise.rc</span>
-00004 <span class="comment">//</span>
-00005 
-00006 <span class="comment">// Next default values for new objects</span>
-00007 <span class="comment">// </span>
-00008 <span class="preprocessor">#ifdef APSTUDIO_INVOKED</span>
-00009 <span class="preprocessor"></span><span class="preprocessor">#ifndef APSTUDIO_READONLY_SYMBOLS</span>
-00010 <span class="preprocessor"></span><span class="preprocessor">#define _APS_NEXT_RESOURCE_VALUE        101</span>
-00011 <span class="preprocessor"></span><span class="preprocessor">#define _APS_NEXT_COMMAND_VALUE         40001</span>
-00012 <span class="preprocessor"></span><span class="preprocessor">#define _APS_NEXT_CONTROL_VALUE         1000</span>
-00013 <span class="preprocessor"></span><span class="preprocessor">#define _APS_NEXT_SYMED_VALUE           101</span>
-00014 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
-00015 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/ridgedmulti_8h-source.html b/libnoise/noise/doc/html/ridgedmulti_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/ridgedmulti_8h-source.html
+++ /dev/null
@@ -1,264 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>ridgedmulti.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// ridgedmulti.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_RIDGEDMULTI_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_RIDGEDMULTI_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__generatormodules.html#ga16">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_RIDGED_FREQUENCY = 1.0;
-00045 
-<a name="l00047"></a><a class="code" href="group__generatormodules.html#ga17">00047</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_RIDGED_LACUNARITY = 2.0;
-00048 
-<a name="l00051"></a><a class="code" href="group__generatormodules.html#ga18">00051</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_RIDGED_OCTAVE_COUNT = 6;
-00052 
-<a name="l00055"></a><a class="code" href="group__generatormodules.html#ga19">00055</a>     <span class="keyword">const</span> noise::NoiseQuality DEFAULT_RIDGED_QUALITY = QUALITY_STD;
-00056 
-<a name="l00058"></a><a class="code" href="group__generatormodules.html#ga20">00058</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_RIDGED_SEED = 0;
-00059 
-<a name="l00062"></a><a class="code" href="group__generatormodules.html#ga21">00062</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> RIDGED_MAX_OCTAVE = 30;
-00063 
-<a name="l00128"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html">00128</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html">RidgedMulti</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00129     {
-00130 
-00131       <span class="keyword">public</span>:
-00132 
-00146         <a class="code" href="classnoise_1_1module_1_1RidgedMulti.html">RidgedMulti</a> ();
-00147 
-<a name="l00151"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a1">00151</a>         <span class="keywordtype">double</span> GetFrequency ()<span class="keyword"> const</span>
-00152 <span class="keyword">        </span>{
-00153           <span class="keywordflow">return</span> m_frequency;
-00154         }
-00155 
-<a name="l00162"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a2">00162</a>         <span class="keywordtype">double</span> GetLacunarity ()<span class="keyword"> const</span>
-00163 <span class="keyword">        </span>{
-00164           <span class="keywordflow">return</span> m_lacunarity;
-00165         }
-00166 
-<a name="l00173"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a3">00173</a>         noise::NoiseQuality GetNoiseQuality ()<span class="keyword"> const</span>
-00174 <span class="keyword">        </span>{
-00175           <span class="keywordflow">return</span> m_noiseQuality;
-00176         }
-00177 
-<a name="l00186"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a4">00186</a>         <span class="keywordtype">int</span> GetOctaveCount ()<span class="keyword"> const</span>
-00187 <span class="keyword">        </span>{
-00188           <span class="keywordflow">return</span> m_octaveCount;
-00189         }
-00190 
-<a name="l00195"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a5">00195</a>         <span class="keywordtype">int</span> GetSeed ()<span class="keyword"> const</span>
-00196 <span class="keyword">        </span>{
-00197           <span class="keywordflow">return</span> m_seed;
-00198         }
-00199 
-<a name="l00200"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a6">00200</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00201 <span class="keyword">        </span>{
-00202           <span class="keywordflow">return</span> 0;
-00203         }
-00204 
-00205         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00206 
-<a name="l00210"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a8">00210</a>         <span class="keywordtype">void</span> SetFrequency (<span class="keywordtype">double</span> frequency)
-00211         {
-00212           m_frequency = frequency;
-00213         }
-00214 
-<a name="l00224"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a9">00224</a>         <span class="keywordtype">void</span> SetLacunarity (<span class="keywordtype">double</span> lacunarity)
-00225         {
-00226           m_lacunarity = lacunarity;
-00227           CalcSpectralWeights ();
-00228         }
-00229 
-<a name="l00236"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a10">00236</a>         <span class="keywordtype">void</span> SetNoiseQuality (noise::NoiseQuality noiseQuality)
-00237         {
-00238           m_noiseQuality = noiseQuality;
-00239         }
-00240 
-<a name="l00258"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a11">00258</a>         <span class="keywordtype">void</span> SetOctaveCount (<span class="keywordtype">int</span> octaveCount)
-00259         {
-00260           <span class="keywordflow">if</span> (octaveCount &gt; RIDGED_MAX_OCTAVE) {
-00261             <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionInvalidParam.html">noise::ExceptionInvalidParam</a> ();
-00262           }
-00263           m_octaveCount = octaveCount;
-00264         }
-00265 
-<a name="l00270"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#a12">00270</a>         <span class="keywordtype">void</span> SetSeed (<span class="keywordtype">int</span> seed)
-00271         {
-00272           m_seed = seed;
-00273         }
-00274 
-00275       <span class="keyword">protected</span>:
-00276 
-00280         <span class="keywordtype">void</span> CalcSpectralWeights ();
-00281 
-<a name="l00283"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#p0">00283</a>         <span class="keywordtype">double</span> m_frequency;
-00284 
-<a name="l00286"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#p1">00286</a>         <span class="keywordtype">double</span> m_lacunarity;
-00287 
-<a name="l00289"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#p2">00289</a>         noise::NoiseQuality m_noiseQuality;
-00290 
-<a name="l00293"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#p3">00293</a>         <span class="keywordtype">int</span> m_octaveCount;
-00294 
-<a name="l00296"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#p4">00296</a>         <span class="keywordtype">double</span> m_pSpectralWeights[RIDGED_MAX_OCTAVE];
-00297 
-<a name="l00299"></a><a class="code" href="classnoise_1_1module_1_1RidgedMulti.html#p5">00299</a>         <span class="keywordtype">int</span> m_seed;
-00300 
-00301     };
-00302 
-00304 
-00306 
-00308 
-00309   }
-00310 
-00311 }
-00312 
-00313 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/rotatepoint_8h-source.html b/libnoise/noise/doc/html/rotatepoint_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/rotatepoint_8h-source.html
+++ /dev/null
@@ -1,246 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>rotatepoint.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// rotatepoint.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_ROTATEPOINT_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_ROTATEPOINT_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00045"></a><a class="code" href="group__transformermodules.html#ga0">00045</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_ROTATE_X = 0.0;
-00046 
-<a name="l00049"></a><a class="code" href="group__transformermodules.html#ga1">00049</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_ROTATE_Y = 0.0;
-00050 
-<a name="l00053"></a><a class="code" href="group__transformermodules.html#ga2">00053</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_ROTATE_Z = 0.0;
-00054 
-<a name="l00072"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html">00072</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1RotatePoint.html">RotatePoint</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00073     {
-00074 
-00075       <span class="keyword">public</span>:
-00076 
-00087         <a class="code" href="classnoise_1_1module_1_1RotatePoint.html">RotatePoint</a> ();
-00088 
-<a name="l00089"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#a1">00089</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00090 <span class="keyword">        </span>{
-00091           <span class="keywordflow">return</span> 1;
-00092         }
-00093 
-00094         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00095 
-<a name="l00100"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#a3">00100</a>         <span class="keywordtype">double</span> GetXAngle ()<span class="keyword"> const</span>
-00101 <span class="keyword">        </span>{
-00102           <span class="keywordflow">return</span> m_xAngle;
-00103         }
-00104 
-<a name="l00109"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#a4">00109</a>         <span class="keywordtype">double</span> GetYAngle ()<span class="keyword"> const</span>
-00110 <span class="keyword">        </span>{
-00111           <span class="keywordflow">return</span> m_yAngle;
-00112         }
-00113 
-<a name="l00118"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#a5">00118</a>         <span class="keywordtype">double</span> GetZAngle ()<span class="keyword"> const</span>
-00119 <span class="keyword">        </span>{
-00120           <span class="keywordflow">return</span> m_zAngle;
-00121         }
-00122 
-00133         <span class="keywordtype">void</span> SetAngles (<span class="keywordtype">double</span> xAngle, <span class="keywordtype">double</span> yAngle, <span class="keywordtype">double</span> zAngle);
-00134 
-<a name="l00143"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#a7">00143</a>         <span class="keywordtype">void</span> SetXAngle (<span class="keywordtype">double</span> xAngle)
-00144         {
-00145           SetAngles (xAngle, m_yAngle, m_zAngle);
-00146         }
-00147 
-<a name="l00156"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#a8">00156</a>         <span class="keywordtype">void</span> SetYAngle (<span class="keywordtype">double</span> yAngle)
-00157         {
-00158           SetAngles (m_xAngle, yAngle, m_zAngle);
-00159         }
-00160 
-<a name="l00169"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#a9">00169</a>         <span class="keywordtype">void</span> SetZAngle (<span class="keywordtype">double</span> zAngle)
-00170         {
-00171           SetAngles (m_xAngle, m_yAngle, zAngle);
-00172         }
-00173 
-00174       <span class="keyword">protected</span>:
-00175 
-<a name="l00178"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p0">00178</a>         <span class="keywordtype">double</span> m_x1Matrix;
-00179 
-<a name="l00182"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p1">00182</a>         <span class="keywordtype">double</span> m_x2Matrix;
-00183 
-<a name="l00186"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p2">00186</a>         <span class="keywordtype">double</span> m_x3Matrix;
-00187 
-<a name="l00189"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p3">00189</a>         <span class="keywordtype">double</span> m_xAngle;
-00190 
-<a name="l00193"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p4">00193</a>         <span class="keywordtype">double</span> m_y1Matrix;
-00194 
-<a name="l00197"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p5">00197</a>         <span class="keywordtype">double</span> m_y2Matrix;
-00198 
-<a name="l00201"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p6">00201</a>         <span class="keywordtype">double</span> m_y3Matrix;
-00202 
-<a name="l00204"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p7">00204</a>         <span class="keywordtype">double</span> m_yAngle;
-00205 
-<a name="l00208"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p8">00208</a>         <span class="keywordtype">double</span> m_z1Matrix;
-00209 
-<a name="l00212"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p9">00212</a>         <span class="keywordtype">double</span> m_z2Matrix;
-00213 
-<a name="l00216"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p10">00216</a>         <span class="keywordtype">double</span> m_z3Matrix;
-00217 
-<a name="l00219"></a><a class="code" href="classnoise_1_1module_1_1RotatePoint.html#p11">00219</a>         <span class="keywordtype">double</span> m_zAngle;
-00220 
-00221     };
-00222 
-00224 
-00226 
-00228 
-00229   }
-00230 
-00231 }
-00232 
-00233 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/scalebias_8h-source.html b/libnoise/noise/doc/html/scalebias_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/scalebias_8h-source.html
+++ /dev/null
@@ -1,212 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>scalebias.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// scalebias.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_SCALEBIAS_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_SCALEBIAS_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__modifiermodules.html#ga3">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_BIAS = 0.0;
-00045 
-<a name="l00047"></a><a class="code" href="group__modifiermodules.html#ga4">00047</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_SCALE = 1.0;
-00048 
-<a name="l00059"></a><a class="code" href="classnoise_1_1module_1_1ScaleBias.html">00059</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1ScaleBias.html">ScaleBias</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00060     {
-00061 
-00062       <span class="keyword">public</span>:
-00063 
-00069         <a class="code" href="classnoise_1_1module_1_1ScaleBias.html">ScaleBias</a> ();
-00070 
-<a name="l00079"></a><a class="code" href="classnoise_1_1module_1_1ScaleBias.html#a1">00079</a>         <span class="keywordtype">double</span> GetBias ()<span class="keyword"> const</span>
-00080 <span class="keyword">        </span>{
-00081           <span class="keywordflow">return</span> m_bias;
-00082         }
-00083 
-<a name="l00092"></a><a class="code" href="classnoise_1_1module_1_1ScaleBias.html#a2">00092</a>         <span class="keywordtype">double</span> GetScale ()<span class="keyword"> const</span>
-00093 <span class="keyword">        </span>{
-00094           <span class="keywordflow">return</span> m_scale;
-00095         }
-00096 
-<a name="l00097"></a><a class="code" href="classnoise_1_1module_1_1ScaleBias.html#a3">00097</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00098 <span class="keyword">        </span>{
-00099           <span class="keywordflow">return</span> 1;
-00100         }
-00101 
-00102         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00103 
-<a name="l00112"></a><a class="code" href="classnoise_1_1module_1_1ScaleBias.html#a5">00112</a>         <span class="keywordtype">void</span> SetBias (<span class="keywordtype">double</span> bias)
-00113         {
-00114           m_bias = bias;
-00115         }
-00116 
-<a name="l00125"></a><a class="code" href="classnoise_1_1module_1_1ScaleBias.html#a6">00125</a>         <span class="keywordtype">void</span> SetScale (<span class="keywordtype">double</span> scale)
-00126         {
-00127           m_scale = scale;
-00128         }
-00129 
-00130       <span class="keyword">protected</span>:
-00131 
-<a name="l00133"></a><a class="code" href="classnoise_1_1module_1_1ScaleBias.html#p0">00133</a>         <span class="keywordtype">double</span> m_bias;
-00134 
-<a name="l00137"></a><a class="code" href="classnoise_1_1module_1_1ScaleBias.html#p1">00137</a>         <span class="keywordtype">double</span> m_scale;
-00138 
-00139     };
-00140 
-00142 
-00144 
-00146 
-00147   }
-00148 
-00149 }
-00150 
-00151 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/scalepoint_8h-source.html b/libnoise/noise/doc/html/scalepoint_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/scalepoint_8h-source.html
+++ /dev/null
@@ -1,240 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>scalepoint.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// scalepoint.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_SCALEPOINT_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_SCALEPOINT_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00045"></a><a class="code" href="group__transformermodules.html#ga3">00045</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_SCALE_POINT_X = 1.0;
-00046 
-<a name="l00049"></a><a class="code" href="group__transformermodules.html#ga4">00049</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_SCALE_POINT_Y = 1.0;
-00050 
-<a name="l00053"></a><a class="code" href="group__transformermodules.html#ga5">00053</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_SCALE_POINT_Z = 1.0;
-00054 
-<a name="l00068"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html">00068</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1ScalePoint.html">ScalePoint</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00069     {
-00070 
-00071       <span class="keyword">public</span>:
-00072 
-00083         <a class="code" href="classnoise_1_1module_1_1ScalePoint.html">ScalePoint</a> ();
-00084 
-<a name="l00085"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a1">00085</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00086 <span class="keyword">        </span>{
-00087           <span class="keywordflow">return</span> 1;
-00088         }
-00089 
-00090         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00091 
-<a name="l00096"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a3">00096</a>         <span class="keywordtype">double</span> GetXScale ()<span class="keyword"> const</span>
-00097 <span class="keyword">        </span>{
-00098           <span class="keywordflow">return</span> m_xScale;
-00099         }
-00100 
-<a name="l00105"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a4">00105</a>         <span class="keywordtype">double</span> GetYScale ()<span class="keyword"> const</span>
-00106 <span class="keyword">        </span>{
-00107           <span class="keywordflow">return</span> m_yScale;
-00108         }
-00109 
-<a name="l00114"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a5">00114</a>         <span class="keywordtype">double</span> GetZScale ()<span class="keyword"> const</span>
-00115 <span class="keyword">        </span>{
-00116           <span class="keywordflow">return</span> m_zScale;
-00117         }
-00118 
-<a name="l00126"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a6">00126</a>         <span class="keywordtype">void</span> SetScale (<span class="keywordtype">double</span> scale)
-00127         {
-00128           m_xScale = scale;
-00129           m_yScale = scale;
-00130           m_zScale = scale;
-00131         }
-00132 
-<a name="l00143"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a7">00143</a>         <span class="keywordtype">void</span> SetScale (<span class="keywordtype">double</span> xScale, <span class="keywordtype">double</span> yScale, <span class="keywordtype">double</span> zScale)
-00144         {
-00145           m_xScale = xScale;
-00146           m_yScale = yScale;
-00147           m_zScale = zScale;
-00148         }
-00149 
-<a name="l00158"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a8">00158</a>         <span class="keywordtype">void</span> SetXScale (<span class="keywordtype">double</span> xScale)
-00159         {
-00160           m_xScale = xScale;
-00161         }
-00162 
-<a name="l00171"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a9">00171</a>         <span class="keywordtype">void</span> SetYScale (<span class="keywordtype">double</span> yScale)
-00172         {
-00173           m_yScale = yScale;
-00174         }
-00175 
-<a name="l00184"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#a10">00184</a>         <span class="keywordtype">void</span> SetZScale (<span class="keywordtype">double</span> zScale)
-00185         {
-00186           m_zScale = zScale;
-00187         }
-00188 
-00189       <span class="keyword">protected</span>:
-00190 
-<a name="l00192"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#p0">00192</a>         <span class="keywordtype">double</span> m_xScale;
-00193 
-<a name="l00195"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#p1">00195</a>         <span class="keywordtype">double</span> m_yScale;
-00196 
-<a name="l00198"></a><a class="code" href="classnoise_1_1module_1_1ScalePoint.html#p2">00198</a>         <span class="keywordtype">double</span> m_zScale;
-00199 
-00200     };
-00201 
-00203 
-00205 
-00207 
-00208   }
-00209 
-00210 }
-00211 
-00212 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/select_8h-source.html b/libnoise/noise/doc/html/select_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/select_8h-source.html
+++ /dev/null
@@ -1,229 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>select.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// select.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_SELECT_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_SELECT_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__selectormodules.html#ga0">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_SELECT_EDGE_FALLOFF = 0.0;
-00045 
-<a name="l00048"></a><a class="code" href="group__selectormodules.html#ga1">00048</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_SELECT_LOWER_BOUND = -1.0;
-00049 
-<a name="l00052"></a><a class="code" href="group__selectormodules.html#ga2">00052</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_SELECT_UPPER_BOUND = 1.0;
-00053 
-<a name="l00084"></a><a class="code" href="classnoise_1_1module_1_1Select.html">00084</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Select.html">Select</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00085     {
-00086 
-00087       <span class="keyword">public</span>:
-00088 
-00099         <a class="code" href="classnoise_1_1module_1_1Select.html">Select</a> ();
-00100 
-<a name="l00117"></a><a class="code" href="classnoise_1_1module_1_1Select.html#a1">00117</a>         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; GetControlModule ()<span class="keyword"> const</span>
-00118 <span class="keyword">        </span>{
-00119           <span class="keywordflow">if</span> (m_pSourceModule == NULL || m_pSourceModule[2] == NULL) {
-00120             <span class="keywordflow">throw</span> <a class="code" href="classnoise_1_1ExceptionNoModule.html">noise::ExceptionNoModule</a> ();
-00121           }
-00122           <span class="keywordflow">return</span> *(m_pSourceModule[2]);
-00123         }
-00124 
-<a name="l00135"></a><a class="code" href="classnoise_1_1module_1_1Select.html#a2">00135</a>         <span class="keywordtype">double</span> GetEdgeFalloff ()<span class="keyword"> const</span>
-00136 <span class="keyword">        </span>{
-00137           <span class="keywordflow">return</span> m_edgeFalloff;
-00138         }
-00139 
-<a name="l00148"></a><a class="code" href="classnoise_1_1module_1_1Select.html#a3">00148</a>         <span class="keywordtype">double</span> GetLowerBound ()<span class="keyword"> const</span>
-00149 <span class="keyword">        </span>{
-00150           <span class="keywordflow">return</span> m_lowerBound;
-00151         }
-00152 
-<a name="l00153"></a><a class="code" href="classnoise_1_1module_1_1Select.html#a4">00153</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00154 <span class="keyword">        </span>{
-00155           <span class="keywordflow">return</span> 3;
-00156         }
-00157 
-<a name="l00166"></a><a class="code" href="classnoise_1_1module_1_1Select.html#a5">00166</a>         <span class="keywordtype">double</span> GetUpperBound ()<span class="keyword"> const</span>
-00167 <span class="keyword">        </span>{
-00168           <span class="keywordflow">return</span> m_upperBound;
-00169         }
-00170 
-00171         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00172 
-00188         <span class="keywordtype">void</span> SetBounds (<span class="keywordtype">double</span> lowerBound, <span class="keywordtype">double</span> upperBound);
-00189 
-<a name="l00209"></a><a class="code" href="classnoise_1_1module_1_1Select.html#a8">00209</a>         <span class="keywordtype">void</span> SetControlModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>&amp; controlModule)
-00210         {
-00211           assert (m_pSourceModule != NULL);
-00212           m_pSourceModule[2] = &amp;controlModule;
-00213         }
-00214 
-00242         <span class="keywordtype">void</span> SetEdgeFalloff (<span class="keywordtype">double</span> edgeFalloff);
-00243 
-00244       <span class="keyword">protected</span>:
-00245 
-<a name="l00247"></a><a class="code" href="classnoise_1_1module_1_1Select.html#p0">00247</a>         <span class="keywordtype">double</span> m_edgeFalloff;
-00248 
-<a name="l00250"></a><a class="code" href="classnoise_1_1module_1_1Select.html#p1">00250</a>         <span class="keywordtype">double</span> m_lowerBound;
-00251 
-<a name="l00253"></a><a class="code" href="classnoise_1_1module_1_1Select.html#p2">00253</a>         <span class="keywordtype">double</span> m_upperBound;
-00254 
-00255     };
-00256 
-00258 
-00260 
-00262 
-00263   }
-00264 
-00265 }
-00266 
-00267 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/sphere_8h-source.html b/libnoise/noise/doc/html/sphere_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/sphere_8h-source.html
+++ /dev/null
@@ -1,193 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">model</a></div>
-<h1>sphere.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// sphere.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODEL_SPHERE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODEL_SPHERE_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include &lt;assert.h&gt;</span>
-00027 <span class="preprocessor">#include "../module/modulebase.h"</span>
-00028 
-00029 <span class="keyword">namespace </span>noise
-00030 {
-00031 
-00032   <span class="keyword">namespace </span>model
-00033   {
-00034 
-00037 
-00040     
-<a name="l00057"></a><a class="code" href="classnoise_1_1model_1_1Sphere.html">00057</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1model_1_1Sphere.html">Sphere</a>
-00058     {
-00059 
-00060       <span class="keyword">public</span>:
-00061 
-00063         <a class="code" href="classnoise_1_1model_1_1Sphere.html">Sphere</a> ();
-00064 
-00069         <a class="code" href="classnoise_1_1model_1_1Sphere.html">Sphere</a> (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; module);
-00070 
-<a name="l00077"></a><a class="code" href="classnoise_1_1model_1_1Sphere.html#a2">00077</a>         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; GetModule ()<span class="keyword"> const</span>
-00078 <span class="keyword">        </span>{
-00079           assert (m_pModule != NULL);
-00080           <span class="keywordflow">return</span> *m_pModule;
-00081         }
-00082 
-00102         <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> lat, <span class="keywordtype">double</span> lon) <span class="keyword">const</span>;
-00103 
-<a name="l00111"></a><a class="code" href="classnoise_1_1model_1_1Sphere.html#a4">00111</a>         <span class="keywordtype">void</span> SetModule (<span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>&amp; module)
-00112         {
-00113           m_pModule = &amp;module;
-00114         }
-00115 
-00116       <span class="keyword">private</span>:
-00117 
-00119         <span class="keyword">const</span> <a class="code" href="classnoise_1_1module_1_1Module.html">module::Module</a>* m_pModule;
-00120 
-00121     };
-00122 
-00124 
-00126 
-00127   }
-00128 
-00129 }
-00130 
-00131 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/spheres_8h-source.html b/libnoise/noise/doc/html/spheres_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/spheres_8h-source.html
+++ /dev/null
@@ -1,198 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>spheres.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// spheres.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_SPHERES_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_SPHERES_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__generatormodules.html#ga22">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_SPHERES_FREQUENCY = 1.0;
-00045 
-<a name="l00070"></a><a class="code" href="classnoise_1_1module_1_1Spheres.html">00070</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Spheres.html">Spheres</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00071     {
-00072 
-00073       <span class="keyword">public</span>:
-00074 
-00079         <a class="code" href="classnoise_1_1module_1_1Spheres.html">Spheres</a> ();
-00080 
-<a name="l00087"></a><a class="code" href="classnoise_1_1module_1_1Spheres.html#a1">00087</a>         <span class="keywordtype">double</span> GetFrequency ()<span class="keyword"> const</span>
-00088 <span class="keyword">        </span>{
-00089           <span class="keywordflow">return</span> m_frequency;
-00090         }
-00091 
-<a name="l00092"></a><a class="code" href="classnoise_1_1module_1_1Spheres.html#a2">00092</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00093 <span class="keyword">        </span>{
-00094           <span class="keywordflow">return</span> 0;
-00095         }
-00096 
-00097         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00098 
-<a name="l00105"></a><a class="code" href="classnoise_1_1module_1_1Spheres.html#a4">00105</a>         <span class="keywordtype">void</span> SetFrequency (<span class="keywordtype">double</span> frequency)
-00106         {
-00107           m_frequency = frequency;
-00108         }
-00109 
-00110       <span class="keyword">protected</span>:
-00111 
-<a name="l00113"></a><a class="code" href="classnoise_1_1module_1_1Spheres.html#p0">00113</a>         <span class="keywordtype">double</span> m_frequency;
-00114 
-00115     };
-00116 
-00118 
-00120 
-00122 
-00123   }
-00124 
-00125 }
-00126 
-00127 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/structnoise_1_1module_1_1ControlPoint-members.html b/libnoise/noise/doc/html/structnoise_1_1module_1_1ControlPoint-members.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/structnoise_1_1module_1_1ControlPoint-members.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::ControlPoint Member List</h1>This is the complete list of members for <a class="el" href="structnoise_1_1module_1_1ControlPoint.html">noise::module::ControlPoint</a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="structnoise_1_1module_1_1ControlPoint.html#o0">inputValue</a></td><td><a class="el" href="structnoise_1_1module_1_1ControlPoint.html">noise::module::ControlPoint</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="structnoise_1_1module_1_1ControlPoint.html#o1">outputValue</a></td><td><a class="el" href="structnoise_1_1module_1_1ControlPoint.html">noise::module::ControlPoint</a></td><td></td></tr>
-</table><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/structnoise_1_1module_1_1ControlPoint.html b/libnoise/noise/doc/html/structnoise_1_1module_1_1ControlPoint.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/structnoise_1_1module_1_1ControlPoint.html
+++ /dev/null
@@ -1,144 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<h1>noise::module::ControlPoint Struct Reference<br>
-<small>
-[<a class="el" href="group__libnoise.html">libnoise</a>]</small>
-</h1><code>#include &lt;<a class="el" href="curve_8h-source.html">curve.h</a>&gt;</code>
-<p>
-<a href="structnoise_1_1module_1_1ControlPoint-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
-This structure defines a control point. 
-<p>
-Control points are used for defining splines. 
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="o0" doxytag="noise::module::ControlPoint::inputValue"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnoise_1_1module_1_1ControlPoint.html#o0">inputValue</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The input value. <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="o1" doxytag="noise::module::ControlPoint::outputValue"></a>
-double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnoise_1_1module_1_1ControlPoint.html#o1">outputValue</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The output value that is mapped from the input value. <br></td></tr>
-</table>
-<hr>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="curve_8h-source.html">curve.h</a></ul>
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/terrace.png b/libnoise/noise/doc/html/terrace.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/html/terrace.png and /dev/null differ
diff --git a/libnoise/noise/doc/html/terrace_8h-source.html b/libnoise/noise/doc/html/terrace_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/terrace_8h-source.html
+++ /dev/null
@@ -1,222 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>terrace.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// terrace.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_TERRACE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_TERRACE_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00073"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html">00073</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Terrace.html">Terrace</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00074     {
-00075 
-00076       <span class="keyword">public</span>:
-00077 
-00079         <a class="code" href="classnoise_1_1module_1_1Terrace.html">Terrace</a> ();
-00080 
-00082         ~<a class="code" href="classnoise_1_1module_1_1Terrace.html">Terrace</a> ();
-00083 
-00098         <span class="keywordtype">void</span> AddControlPoint (<span class="keywordtype">double</span> value);
-00099 
-00103         <span class="keywordtype">void</span> ClearAllControlPoints ();
-00104 
-<a name="l00121"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html#a4">00121</a>         <span class="keyword">const</span> <span class="keywordtype">double</span>* GetControlPointArray ()<span class="keyword"> const</span>
-00122 <span class="keyword">        </span>{
-00123           <span class="keywordflow">return</span> m_pControlPoints;
-00124         }
-00125 
-<a name="l00130"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html#a5">00130</a>         <span class="keywordtype">int</span> GetControlPointCount ()<span class="keyword"> const</span>
-00131 <span class="keyword">        </span>{
-00132           <span class="keywordflow">return</span> m_controlPointCount;
-00133         }
-00134 
-<a name="l00135"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html#a6">00135</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00136 <span class="keyword">        </span>{
-00137           <span class="keywordflow">return</span> 1;
-00138         }
-00139 
-<a name="l00145"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html#a7">00145</a>         <span class="keywordtype">void</span> InvertTerraces (<span class="keywordtype">bool</span> invert = <span class="keyword">true</span>)
-00146         {
-00147           m_invertTerraces = invert;
-00148         }
-00149 
-<a name="l00157"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html#a8">00157</a>         <span class="keywordtype">bool</span> IsTerracesInverted ()<span class="keyword"> const</span>
-00158 <span class="keyword">        </span>{
-00159           <span class="keywordflow">return</span> m_invertTerraces;
-00160         }
-00161 
-00162         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00163 
-00181         <span class="keywordtype">void</span> MakeControlPoints (<span class="keywordtype">int</span> controlPointCount);
-00182 
-00183       <span class="keyword">protected</span>:
-00184 
-00201         <span class="keywordtype">int</span> FindInsertionPos (<span class="keywordtype">double</span> value);
-00202 
-00218         <span class="keywordtype">void</span> InsertAtPos (<span class="keywordtype">int</span> insertionPos, <span class="keywordtype">double</span> value);
-00219 
-<a name="l00221"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html#p0">00221</a>         <span class="keywordtype">int</span> m_controlPointCount;
-00222 
-<a name="l00225"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html#p1">00225</a>         <span class="keywordtype">bool</span> m_invertTerraces;
-00226 
-<a name="l00228"></a><a class="code" href="classnoise_1_1module_1_1Terrace.html#p2">00228</a>         <span class="keywordtype">double</span>* m_pControlPoints;
-00229 
-00230     };
-00231 
-00233 
-00235 
-00237 
-00238   }
-00239 
-00240 }
-00241 
-00242 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/translatepoint_8h-source.html b/libnoise/noise/doc/html/translatepoint_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/translatepoint_8h-source.html
+++ /dev/null
@@ -1,241 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>translatepoint.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// translatepoint.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_TRANSLATEPOINT_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_TRANSLATEPOINT_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00045"></a><a class="code" href="group__transformermodules.html#ga6">00045</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_TRANSLATE_POINT_X = 0.0;
-00046 
-<a name="l00049"></a><a class="code" href="group__transformermodules.html#ga7">00049</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_TRANSLATE_POINT_Y = 0.0;
-00050 
-<a name="l00053"></a><a class="code" href="group__transformermodules.html#ga8">00053</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_TRANSLATE_POINT_Z = 0.0;
-00054 
-<a name="l00069"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html">00069</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html">TranslatePoint</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00070     {
-00071 
-00072       <span class="keyword">public</span>:
-00073 
-00084         <a class="code" href="classnoise_1_1module_1_1TranslatePoint.html">TranslatePoint</a> ();
-00085 
-<a name="l00086"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a1">00086</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00087 <span class="keyword">        </span>{
-00088           <span class="keywordflow">return</span> 1;
-00089         }
-00090 
-00091         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00092 
-<a name="l00097"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a3">00097</a>         <span class="keywordtype">double</span> GetXTranslation ()<span class="keyword"> const</span>
-00098 <span class="keyword">        </span>{
-00099           <span class="keywordflow">return</span> m_xTranslation;
-00100         }
-00101 
-<a name="l00106"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a4">00106</a>         <span class="keywordtype">double</span> GetYTranslation ()<span class="keyword"> const</span>
-00107 <span class="keyword">        </span>{
-00108           <span class="keywordflow">return</span> m_yTranslation;
-00109         }
-00110 
-<a name="l00115"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a5">00115</a>         <span class="keywordtype">double</span> GetZTranslation ()<span class="keyword"> const</span>
-00116 <span class="keyword">        </span>{
-00117           <span class="keywordflow">return</span> m_zTranslation;
-00118         }
-00119 
-<a name="l00127"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a6">00127</a>         <span class="keywordtype">void</span> SetTranslation (<span class="keywordtype">double</span> translation)
-00128         {
-00129           m_xTranslation = translation;
-00130           m_yTranslation = translation;
-00131           m_zTranslation = translation;
-00132         }
-00133 
-<a name="l00147"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a7">00147</a>         <span class="keywordtype">void</span> SetTranslation (<span class="keywordtype">double</span> xTranslation, <span class="keywordtype">double</span> yTranslation,
-00148           <span class="keywordtype">double</span> zTranslation)
-00149         {
-00150           m_xTranslation = xTranslation;
-00151           m_yTranslation = yTranslation;
-00152           m_zTranslation = zTranslation;
-00153         }
-00154 
-<a name="l00164"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a8">00164</a>         <span class="keywordtype">void</span> SetXTranslation (<span class="keywordtype">double</span> xTranslation)
-00165         {
-00166           m_xTranslation = xTranslation;
-00167         }
-00168 
-<a name="l00178"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a9">00178</a>         <span class="keywordtype">void</span> SetYTranslation (<span class="keywordtype">double</span> yTranslation)
-00179         {
-00180           m_yTranslation = yTranslation;
-00181         }
-00182 
-<a name="l00192"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#a10">00192</a>         <span class="keywordtype">void</span> SetZTranslation (<span class="keywordtype">double</span> zTranslation)
-00193         {
-00194           m_zTranslation = zTranslation;
-00195         }
-00196 
-00197       <span class="keyword">protected</span>:
-00198 
-<a name="l00201"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#p0">00201</a>         <span class="keywordtype">double</span> m_xTranslation;
-00202 
-<a name="l00205"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#p1">00205</a>         <span class="keywordtype">double</span> m_yTranslation;
-00206 
-<a name="l00209"></a><a class="code" href="classnoise_1_1module_1_1TranslatePoint.html#p2">00209</a>         <span class="keywordtype">double</span> m_zTranslation;
-00210 
-00211     };
-00212 
-00214 
-00216 
-00218 
-00219   }
-00220 
-00221 }
-00222 
-00223 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/turbulence_8h-source.html b/libnoise/noise/doc/html/turbulence_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/turbulence_8h-source.html
+++ /dev/null
@@ -1,237 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>turbulence.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// turbulence.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_TURBULENCE_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_TURBULENCE_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "perlin.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module 
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00044"></a><a class="code" href="group__transformermodules.html#ga9">00044</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_TURBULENCE_FREQUENCY = DEFAULT_PERLIN_FREQUENCY;
-00045 
-<a name="l00047"></a><a class="code" href="group__transformermodules.html#ga10">00047</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_TURBULENCE_POWER = 1.0;
-00048 
-<a name="l00050"></a><a class="code" href="group__transformermodules.html#ga11">00050</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_TURBULENCE_ROUGHNESS = 3;
-00051 
-<a name="l00053"></a><a class="code" href="group__transformermodules.html#ga12">00053</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_TURBULENCE_SEED = DEFAULT_PERLIN_SEED;
-00054 
-<a name="l00113"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html">00113</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Turbulence.html">Turbulence</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00114     {
-00115 
-00116       <span class="keyword">public</span>:
-00117 
-00131         <a class="code" href="classnoise_1_1module_1_1Turbulence.html">Turbulence</a> ();
-00132 
-00139         <span class="keywordtype">double</span> GetFrequency () <span class="keyword">const</span>;
-00140 
-<a name="l00147"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#a2">00147</a>         <span class="keywordtype">double</span> GetPower ()<span class="keyword"> const</span>
-00148 <span class="keyword">        </span>{
-00149           <span class="keywordflow">return</span> m_power;
-00150         }
-00151 
-<a name="l00160"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#a3">00160</a>         <span class="keywordtype">int</span> GetRoughnessCount ()<span class="keyword"> const</span>
-00161 <span class="keyword">        </span>{
-00162           <span class="keywordflow">return</span> m_xDistortModule.GetOctaveCount ();
-00163         }
-00164 
-00173         <span class="keywordtype">int</span> GetSeed () <span class="keyword">const</span>;
-00174 
-<a name="l00175"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#a5">00175</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00176 <span class="keyword">        </span>{
-00177           <span class="keywordflow">return</span> 1;
-00178         }
-00179 
-00180         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00181 
-<a name="l00188"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#a7">00188</a>         <span class="keywordtype">void</span> SetFrequency (<span class="keywordtype">double</span> frequency)
-00189         {
-00190           <span class="comment">// Set the frequency of each Perlin-noise module.</span>
-00191           m_xDistortModule.SetFrequency (frequency);
-00192           m_yDistortModule.SetFrequency (frequency);
-00193           m_zDistortModule.SetFrequency (frequency);
-00194         }
-00195 
-<a name="l00202"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#a8">00202</a>         <span class="keywordtype">void</span> SetPower (<span class="keywordtype">double</span> power)
-00203         {
-00204           m_power = power;
-00205         }
-00206 
-<a name="l00221"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#a9">00221</a>         <span class="keywordtype">void</span> SetRoughness (<span class="keywordtype">int</span> roughness)
-00222         {
-00223           <span class="comment">// Set the octave count for each Perlin-noise module.</span>
-00224           m_xDistortModule.SetOctaveCount (roughness);
-00225           m_yDistortModule.SetOctaveCount (roughness);
-00226           m_zDistortModule.SetOctaveCount (roughness);
-00227         }
-00228 
-00241         <span class="keywordtype">void</span> SetSeed (<span class="keywordtype">int</span> seed);
-00242 
-00243       <span class="keyword">protected</span>:
-00244 
-<a name="l00246"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#p0">00246</a>         <span class="keywordtype">double</span> m_power;
-00247 
-<a name="l00249"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#p1">00249</a>         <a class="code" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> m_xDistortModule;
-00250 
-<a name="l00252"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#p2">00252</a>         <a class="code" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> m_yDistortModule;
-00253 
-<a name="l00255"></a><a class="code" href="classnoise_1_1module_1_1Turbulence.html#p3">00255</a>         <a class="code" href="classnoise_1_1module_1_1Perlin.html">Perlin</a> m_zDistortModule;
-00256 
-00257     };
-00258 
-00260 
-00262 
-00264 
-00265   }
-00266 
-00267 }
-00268 
-00269 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/vectortable_8h-source.html b/libnoise/noise/doc/html/vectortable_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/vectortable_8h-source.html
+++ /dev/null
@@ -1,412 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a></div>
-<h1>vectortable.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// vectortable.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Written by Jason Bevins.  Actually it's the output of a program written</span>
-00004 <span class="comment">// by me.  I'm not going to copyright a bunch of random numbers (although</span>
-00005 <span class="comment">// you could probably do so in the States, the way things are going down</span>
-00006 <span class="comment">// there :-)</span>
-00007 <span class="comment">//</span>
-00008 <span class="comment">// This file is in the public domain.</span>
-00009 <span class="comment">//</span>
-00010 
-00011 <span class="preprocessor">#ifndef NOISE_VECTORTABLE_H</span>
-00012 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_VECTORTABLE_H</span>
-00013 <span class="preprocessor"></span>
-00014 <span class="preprocessor">#ifndef DOXYGEN_SHOULD_SKIP_THIS</span>
-00015 <span class="preprocessor"></span>
-00016 <span class="keyword">namespace </span>noise
-00017 {
-00018 
-00019   <span class="comment">// A table of 256 random normalized vectors.  Each row is an (x, y, z, 0)</span>
-00020   <span class="comment">// coordinate.  The 0 is used as padding so we can use bit shifts to index</span>
-00021   <span class="comment">// any row in the table.  These vectors have an even statistical</span>
-00022   <span class="comment">// distribution, which improves the quality of the coherent noise</span>
-00023   <span class="comment">// generated by these vectors.  For more information, see "GPU Gems",</span>
-00024   <span class="comment">// Chapter 5 - Implementing Improved Perlin Noise by Ken Perlin,</span>
-00025   <span class="comment">// specifically page 76.</span>
-00026   <span class="keywordtype">double</span> g_randomVectors[256 * 4] =
-00027   {
-00028     -0.763874, -0.596439, -0.246489, 0.0,
-00029     0.396055, 0.904518, -0.158073, 0.0,
-00030     -0.499004, -0.8665, -0.0131631, 0.0,
-00031     0.468724, -0.824756, 0.316346, 0.0,
-00032     0.829598, 0.43195, 0.353816, 0.0,
-00033     -0.454473, 0.629497, -0.630228, 0.0,
-00034     -0.162349, -0.869962, -0.465628, 0.0,
-00035     0.932805, 0.253451, 0.256198, 0.0,
-00036     -0.345419, 0.927299, -0.144227, 0.0,
-00037     -0.715026, -0.293698, -0.634413, 0.0,
-00038     -0.245997, 0.717467, -0.651711, 0.0,
-00039     -0.967409, -0.250435, -0.037451, 0.0,
-00040     0.901729, 0.397108, -0.170852, 0.0,
-00041     0.892657, -0.0720622, -0.444938, 0.0,
-00042     0.0260084, -0.0361701, 0.999007, 0.0,
-00043     0.949107, -0.19486, 0.247439, 0.0,
-00044     0.471803, -0.807064, -0.355036, 0.0,
-00045     0.879737, 0.141845, 0.453809, 0.0,
-00046     0.570747, 0.696415, 0.435033, 0.0,
-00047     -0.141751, -0.988233, -0.0574584, 0.0,
-00048     -0.58219, -0.0303005, 0.812488, 0.0,
-00049     -0.60922, 0.239482, -0.755975, 0.0,
-00050     0.299394, -0.197066, -0.933557, 0.0,
-00051     -0.851615, -0.220702, -0.47544, 0.0,
-00052     0.848886, 0.341829, -0.403169, 0.0,
-00053     -0.156129, -0.687241, 0.709453, 0.0,
-00054     -0.665651, 0.626724, 0.405124, 0.0,
-00055     0.595914, -0.674582, 0.43569, 0.0,
-00056     0.171025, -0.509292, 0.843428, 0.0,
-00057     0.78605, 0.536414, -0.307222, 0.0,
-00058     0.18905, -0.791613, 0.581042, 0.0,
-00059     -0.294916, 0.844994, 0.446105, 0.0,
-00060     0.342031, -0.58736, -0.7335, 0.0,
-00061     0.57155, 0.7869, 0.232635, 0.0,
-00062     0.885026, -0.408223, 0.223791, 0.0,
-00063     -0.789518, 0.571645, 0.223347, 0.0,
-00064     0.774571, 0.31566, 0.548087, 0.0,
-00065     -0.79695, -0.0433603, -0.602487, 0.0,
-00066     -0.142425, -0.473249, -0.869339, 0.0,
-00067     -0.0698838, 0.170442, 0.982886, 0.0,
-00068     0.687815, -0.484748, 0.540306, 0.0,
-00069     0.543703, -0.534446, -0.647112, 0.0,
-00070     0.97186, 0.184391, -0.146588, 0.0,
-00071     0.707084, 0.485713, -0.513921, 0.0,
-00072     0.942302, 0.331945, 0.043348, 0.0,
-00073     0.499084, 0.599922, 0.625307, 0.0,
-00074     -0.289203, 0.211107, 0.9337, 0.0,
-00075     0.412433, -0.71667, -0.56239, 0.0,
-00076     0.87721, -0.082816, 0.47291, 0.0,
-00077     -0.420685, -0.214278, 0.881538, 0.0,
-00078     0.752558, -0.0391579, 0.657361, 0.0,
-00079     0.0765725, -0.996789, 0.0234082, 0.0,
-00080     -0.544312, -0.309435, -0.779727, 0.0,
-00081     -0.455358, -0.415572, 0.787368, 0.0,
-00082     -0.874586, 0.483746, 0.0330131, 0.0,
-00083     0.245172, -0.0838623, 0.965846, 0.0,
-00084     0.382293, -0.432813, 0.81641, 0.0,
-00085     -0.287735, -0.905514, 0.311853, 0.0,
-00086     -0.667704, 0.704955, -0.239186, 0.0,
-00087     0.717885, -0.464002, -0.518983, 0.0,
-00088     0.976342, -0.214895, 0.0240053, 0.0,
-00089     -0.0733096, -0.921136, 0.382276, 0.0,
-00090     -0.986284, 0.151224, -0.0661379, 0.0,
-00091     -0.899319, -0.429671, 0.0812908, 0.0,
-00092     0.652102, -0.724625, 0.222893, 0.0,
-00093     0.203761, 0.458023, -0.865272, 0.0,
-00094     -0.030396, 0.698724, -0.714745, 0.0,
-00095     -0.460232, 0.839138, 0.289887, 0.0,
-00096     -0.0898602, 0.837894, 0.538386, 0.0,
-00097     -0.731595, 0.0793784, 0.677102, 0.0,
-00098     -0.447236, -0.788397, 0.422386, 0.0,
-00099     0.186481, 0.645855, -0.740335, 0.0,
-00100     -0.259006, 0.935463, 0.240467, 0.0,
-00101     0.445839, 0.819655, -0.359712, 0.0,
-00102     0.349962, 0.755022, -0.554499, 0.0,
-00103     -0.997078, -0.0359577, 0.0673977, 0.0,
-00104     -0.431163, -0.147516, -0.890133, 0.0,
-00105     0.299648, -0.63914, 0.708316, 0.0,
-00106     0.397043, 0.566526, -0.722084, 0.0,
-00107     -0.502489, 0.438308, -0.745246, 0.0,
-00108     0.0687235, 0.354097, 0.93268, 0.0,
-00109     -0.0476651, -0.462597, 0.885286, 0.0,
-00110     -0.221934, 0.900739, -0.373383, 0.0,
-00111     -0.956107, -0.225676, 0.186893, 0.0,
-00112     -0.187627, 0.391487, -0.900852, 0.0,
-00113     -0.224209, -0.315405, 0.92209, 0.0,
-00114     -0.730807, -0.537068, 0.421283, 0.0,
-00115     -0.0353135, -0.816748, 0.575913, 0.0,
-00116     -0.941391, 0.176991, -0.287153, 0.0,
-00117     -0.154174, 0.390458, 0.90762, 0.0,
-00118     -0.283847, 0.533842, 0.796519, 0.0,
-00119     -0.482737, -0.850448, 0.209052, 0.0,
-00120     -0.649175, 0.477748, 0.591886, 0.0,
-00121     0.885373, -0.405387, -0.227543, 0.0,
-00122     -0.147261, 0.181623, -0.972279, 0.0,
-00123     0.0959236, -0.115847, -0.988624, 0.0,
-00124     -0.89724, -0.191348, 0.397928, 0.0,
-00125     0.903553, -0.428461, -0.00350461, 0.0,
-00126     0.849072, -0.295807, -0.437693, 0.0,
-00127     0.65551, 0.741754, -0.141804, 0.0,
-00128     0.61598, -0.178669, 0.767232, 0.0,
-00129     0.0112967, 0.932256, -0.361623, 0.0,
-00130     -0.793031, 0.258012, 0.551845, 0.0,
-00131     0.421933, 0.454311, 0.784585, 0.0,
-00132     -0.319993, 0.0401618, -0.946568, 0.0,
-00133     -0.81571, 0.551307, -0.175151, 0.0,
-00134     -0.377644, 0.00322313, 0.925945, 0.0,
-00135     0.129759, -0.666581, -0.734052, 0.0,
-00136     0.601901, -0.654237, -0.457919, 0.0,
-00137     -0.927463, -0.0343576, -0.372334, 0.0,
-00138     -0.438663, -0.868301, -0.231578, 0.0,
-00139     -0.648845, -0.749138, -0.133387, 0.0,
-00140     0.507393, -0.588294, 0.629653, 0.0,
-00141     0.726958, 0.623665, 0.287358, 0.0,
-00142     0.411159, 0.367614, -0.834151, 0.0,
-00143     0.806333, 0.585117, -0.0864016, 0.0,
-00144     0.263935, -0.880876, 0.392932, 0.0,
-00145     0.421546, -0.201336, 0.884174, 0.0,
-00146     -0.683198, -0.569557, -0.456996, 0.0,
-00147     -0.117116, -0.0406654, -0.992285, 0.0,
-00148     -0.643679, -0.109196, -0.757465, 0.0,
-00149     -0.561559, -0.62989, 0.536554, 0.0,
-00150     0.0628422, 0.104677, -0.992519, 0.0,
-00151     0.480759, -0.2867, -0.828658, 0.0,
-00152     -0.228559, -0.228965, -0.946222, 0.0,
-00153     -0.10194, -0.65706, -0.746914, 0.0,
-00154     0.0689193, -0.678236, 0.731605, 0.0,
-00155     0.401019, -0.754026, 0.52022, 0.0,
-00156     -0.742141, 0.547083, -0.387203, 0.0,
-00157     -0.00210603, -0.796417, -0.604745, 0.0,
-00158     0.296725, -0.409909, -0.862513, 0.0,
-00159     -0.260932, -0.798201, 0.542945, 0.0,
-00160     -0.641628, 0.742379, 0.192838, 0.0,
-00161     -0.186009, -0.101514, 0.97729, 0.0,
-00162     0.106711, -0.962067, 0.251079, 0.0,
-00163     -0.743499, 0.30988, -0.592607, 0.0,
-00164     -0.795853, -0.605066, -0.0226607, 0.0,
-00165     -0.828661, -0.419471, -0.370628, 0.0,
-00166     0.0847218, -0.489815, -0.8677, 0.0,
-00167     -0.381405, 0.788019, -0.483276, 0.0,
-00168     0.282042, -0.953394, 0.107205, 0.0,
-00169     0.530774, 0.847413, 0.0130696, 0.0,
-00170     0.0515397, 0.922524, 0.382484, 0.0,
-00171     -0.631467, -0.709046, 0.313852, 0.0,
-00172     0.688248, 0.517273, 0.508668, 0.0,
-00173     0.646689, -0.333782, -0.685845, 0.0,
-00174     -0.932528, -0.247532, -0.262906, 0.0,
-00175     0.630609, 0.68757, -0.359973, 0.0,
-00176     0.577805, -0.394189, 0.714673, 0.0,
-00177     -0.887833, -0.437301, -0.14325, 0.0,
-00178     0.690982, 0.174003, 0.701617, 0.0,
-00179     -0.866701, 0.0118182, 0.498689, 0.0,
-00180     -0.482876, 0.727143, 0.487949, 0.0,
-00181     -0.577567, 0.682593, -0.447752, 0.0,
-00182     0.373768, 0.0982991, 0.922299, 0.0,
-00183     0.170744, 0.964243, -0.202687, 0.0,
-00184     0.993654, -0.035791, -0.106632, 0.0,
-00185     0.587065, 0.4143, -0.695493, 0.0,
-00186     -0.396509, 0.26509, -0.878924, 0.0,
-00187     -0.0866853, 0.83553, -0.542563, 0.0,
-00188     0.923193, 0.133398, -0.360443, 0.0,
-00189     0.00379108, -0.258618, 0.965972, 0.0,
-00190     0.239144, 0.245154, -0.939526, 0.0,
-00191     0.758731, -0.555871, 0.33961, 0.0,
-00192     0.295355, 0.309513, 0.903862, 0.0,
-00193     0.0531222, -0.91003, -0.411124, 0.0,
-00194     0.270452, 0.0229439, -0.96246, 0.0,
-00195     0.563634, 0.0324352, 0.825387, 0.0,
-00196     0.156326, 0.147392, 0.976646, 0.0,
-00197     -0.0410141, 0.981824, 0.185309, 0.0,
-00198     -0.385562, -0.576343, -0.720535, 0.0,
-00199     0.388281, 0.904441, 0.176702, 0.0,
-00200     0.945561, -0.192859, -0.262146, 0.0,
-00201     0.844504, 0.520193, 0.127325, 0.0,
-00202     0.0330893, 0.999121, -0.0257505, 0.0,
-00203     -0.592616, -0.482475, -0.644999, 0.0,
-00204     0.539471, 0.631024, -0.557476, 0.0,
-00205     0.655851, -0.027319, -0.754396, 0.0,
-00206     0.274465, 0.887659, 0.369772, 0.0,
-00207     -0.123419, 0.975177, -0.183842, 0.0,
-00208     -0.223429, 0.708045, 0.66989, 0.0,
-00209     -0.908654, 0.196302, 0.368528, 0.0,
-00210     -0.95759, -0.00863708, 0.288005, 0.0,
-00211     0.960535, 0.030592, 0.276472, 0.0,
-00212     -0.413146, 0.907537, 0.0754161, 0.0,
-00213     -0.847992, 0.350849, -0.397259, 0.0,
-00214     0.614736, 0.395841, 0.68221, 0.0,
-00215     -0.503504, -0.666128, -0.550234, 0.0,
-00216     -0.268833, -0.738524, -0.618314, 0.0,
-00217     0.792737, -0.60001, -0.107502, 0.0,
-00218     -0.637582, 0.508144, -0.579032, 0.0,
-00219     0.750105, 0.282165, -0.598101, 0.0,
-00220     -0.351199, -0.392294, -0.850155, 0.0,
-00221     0.250126, -0.960993, -0.118025, 0.0,
-00222     -0.732341, 0.680909, -0.0063274, 0.0,
-00223     -0.760674, -0.141009, 0.633634, 0.0,
-00224     0.222823, -0.304012, 0.926243, 0.0,
-00225     0.209178, 0.505671, 0.836984, 0.0,
-00226     0.757914, -0.56629, -0.323857, 0.0,
-00227     -0.782926, -0.339196, 0.52151, 0.0,
-00228     -0.462952, 0.585565, 0.665424, 0.0,
-00229     0.61879, 0.194119, -0.761194, 0.0,
-00230     0.741388, -0.276743, 0.611357, 0.0,
-00231     0.707571, 0.702621, 0.0752872, 0.0,
-00232     0.156562, 0.819977, 0.550569, 0.0,
-00233     -0.793606, 0.440216, 0.42, 0.0,
-00234     0.234547, 0.885309, -0.401517, 0.0,
-00235     0.132598, 0.80115, -0.58359, 0.0,
-00236     -0.377899, -0.639179, 0.669808, 0.0,
-00237     -0.865993, -0.396465, 0.304748, 0.0,
-00238     -0.624815, -0.44283, 0.643046, 0.0,
-00239     -0.485705, 0.825614, -0.287146, 0.0,
-00240     -0.971788, 0.175535, 0.157529, 0.0,
-00241     -0.456027, 0.392629, 0.798675, 0.0,
-00242     -0.0104443, 0.521623, -0.853112, 0.0,
-00243     -0.660575, -0.74519, 0.091282, 0.0,
-00244     -0.0157698, -0.307475, -0.951425, 0.0,
-00245     -0.603467, -0.250192, 0.757121, 0.0,
-00246     0.506876, 0.25006, 0.824952, 0.0,
-00247     0.255404, 0.966794, 0.00884498, 0.0,
-00248     0.466764, -0.874228, -0.133625, 0.0,
-00249     0.475077, -0.0682351, -0.877295, 0.0,
-00250     -0.224967, -0.938972, -0.260233, 0.0,
-00251     -0.377929, -0.814757, -0.439705, 0.0,
-00252     -0.305847, 0.542333, -0.782517, 0.0,
-00253     0.26658, -0.902905, -0.337191, 0.0,
-00254     0.0275773, 0.322158, -0.946284, 0.0,
-00255     0.0185422, 0.716349, 0.697496, 0.0,
-00256     -0.20483, 0.978416, 0.0273371, 0.0,
-00257     -0.898276, 0.373969, 0.230752, 0.0,
-00258     -0.00909378, 0.546594, 0.837349, 0.0,
-00259     0.6602, -0.751089, 0.000959236, 0.0,
-00260     0.855301, -0.303056, 0.420259, 0.0,
-00261     0.797138, 0.0623013, -0.600574, 0.0,
-00262     0.48947, -0.866813, 0.0951509, 0.0,
-00263     0.251142, 0.674531, 0.694216, 0.0,
-00264     -0.578422, -0.737373, -0.348867, 0.0,
-00265     -0.254689, -0.514807, 0.818601, 0.0,
-00266     0.374972, 0.761612, 0.528529, 0.0,
-00267     0.640303, -0.734271, -0.225517, 0.0,
-00268     -0.638076, 0.285527, 0.715075, 0.0,
-00269     0.772956, -0.15984, -0.613995, 0.0,
-00270     0.798217, -0.590628, 0.118356, 0.0,
-00271     -0.986276, -0.0578337, -0.154644, 0.0,
-00272     -0.312988, -0.94549, 0.0899272, 0.0,
-00273     -0.497338, 0.178325, 0.849032, 0.0,
-00274     -0.101136, -0.981014, 0.165477, 0.0,
-00275     -0.521688, 0.0553434, -0.851339, 0.0,
-00276     -0.786182, -0.583814, 0.202678, 0.0,
-00277     -0.565191, 0.821858, -0.0714658, 0.0,
-00278     0.437895, 0.152598, -0.885981, 0.0,
-00279     -0.92394, 0.353436, -0.14635, 0.0,
-00280     0.212189, -0.815162, -0.538969, 0.0,
-00281     -0.859262, 0.143405, -0.491024, 0.0,
-00282     0.991353, 0.112814, 0.0670273, 0.0,
-00283     0.0337884, -0.979891, -0.196654, 0.0
-00284   };
-00285 
-00286 }
-00287 
-00288 <span class="preprocessor">#endif</span>
-00289 <span class="preprocessor"></span>
-00290 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/html/voronoi_8h-source.html b/libnoise/noise/doc/html/voronoi_8h-source.html
deleted file mode 100644
--- a/libnoise/noise/doc/html/voronoi_8h-source.html
+++ /dev/null
@@ -1,238 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
-<!-- Generated by Doxygen 1.3.9.1 -->
-<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
-<div class="nav">
-<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">module</a></div>
-<h1>voronoi.h</h1><div class="fragment"><pre class="fragment">00001 <span class="comment">// voronoi.h</span>
-00002 <span class="comment">//</span>
-00003 <span class="comment">// Copyright (C) 2003, 2004 Jason Bevins</span>
-00004 <span class="comment">//</span>
-00005 <span class="comment">// This library is free software; you can redistribute it and/or modify it</span>
-00006 <span class="comment">// under the terms of the GNU Lesser General Public License as published by</span>
-00007 <span class="comment">// the Free Software Foundation; either version 2.1 of the License, or (at</span>
-00008 <span class="comment">// your option) any later version.</span>
-00009 <span class="comment">//</span>
-00010 <span class="comment">// This library is distributed in the hope that it will be useful, but WITHOUT</span>
-00011 <span class="comment">// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span>
-00012 <span class="comment">// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span>
-00013 <span class="comment">// License (COPYING.txt) for more details.</span>
-00014 <span class="comment">//</span>
-00015 <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span>
-00016 <span class="comment">// along with this library; if not, write to the Free Software Foundation,</span>
-00017 <span class="comment">// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
-00018 <span class="comment">//</span>
-00019 <span class="comment">// The developer's email is jlbezigvins@gmzigail.com (for great email, take</span>
-00020 <span class="comment">// off every 'zig'.)</span>
-00021 <span class="comment">//</span>
-00022 
-00023 <span class="preprocessor">#ifndef NOISE_MODULE_VORONOI_H</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define NOISE_MODULE_VORONOI_H</span>
-00025 <span class="preprocessor"></span>
-00026 <span class="preprocessor">#include "modulebase.h"</span>
-00027 
-00028 <span class="keyword">namespace </span>noise
-00029 {
-00030 
-00031   <span class="keyword">namespace </span>module
-00032   {
-00033 
-00036 
-00039 
-00042 
-<a name="l00045"></a><a class="code" href="group__generatormodules.html#ga23">00045</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_VORONOI_DISPLACEMENT = 1.0;
-00046 
-<a name="l00049"></a><a class="code" href="group__generatormodules.html#ga24">00049</a>     <span class="keyword">const</span> <span class="keywordtype">double</span> DEFAULT_VORONOI_FREQUENCY = 1.0;
-00050 
-<a name="l00053"></a><a class="code" href="group__generatormodules.html#ga25">00053</a>     <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_VORONOI_SEED = 0;
-00054 
-<a name="l00090"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html">00090</a>     <span class="keyword">class </span><a class="code" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a>: <span class="keyword">public</span> <a class="code" href="classnoise_1_1module_1_1Module.html">Module</a>
-00091     {
-00092 
-00093       <span class="keyword">public</span>:
-00094 
-00105         <a class="code" href="classnoise_1_1module_1_1Voronoi.html">Voronoi</a> ();
-00106 
-<a name="l00119"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a1">00119</a>         <span class="keywordtype">void</span> EnableDistance (<span class="keywordtype">bool</span> enable = <span class="keyword">true</span>)
-00120         {
-00121           m_enableDistance = enable;
-00122         }
-00123 
-<a name="l00132"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a2">00132</a>         <span class="keywordtype">double</span> GetDisplacement ()<span class="keyword"> const</span>
-00133 <span class="keyword">        </span>{
-00134           <span class="keywordflow">return</span> m_displacement;
-00135         }
-00136 
-<a name="l00143"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a3">00143</a>         <span class="keywordtype">double</span> GetFrequency ()<span class="keyword"> const</span>
-00144 <span class="keyword">        </span>{
-00145           <span class="keywordflow">return</span> m_frequency;
-00146         }
-00147 
-<a name="l00148"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a4">00148</a>         <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSourceModuleCount ()<span class="keyword"> const</span>
-00149 <span class="keyword">        </span>{
-00150           <span class="keywordflow">return</span> 0;
-00151         }
-00152 
-<a name="l00160"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a5">00160</a>         <span class="keywordtype">int</span> GetSeed ()<span class="keyword"> const</span>
-00161 <span class="keyword">        </span>{
-00162           <span class="keywordflow">return</span> m_seed;
-00163         }
-00164 
-<a name="l00175"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a6">00175</a>         <span class="keywordtype">bool</span> IsDistanceEnabled ()<span class="keyword"> const</span>
-00176 <span class="keyword">        </span>{
-00177           <span class="keywordflow">return</span> m_enableDistance;
-00178         }
-00179 
-00180         <span class="keyword">virtual</span> <span class="keywordtype">double</span> GetValue (<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z) <span class="keyword">const</span>;
-00181 
-<a name="l00190"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a8">00190</a>         <span class="keywordtype">void</span> SetDisplacement (<span class="keywordtype">double</span> displacement)
-00191         {
-00192           m_displacement = displacement;
-00193         }
-00194 
-<a name="l00201"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a9">00201</a>         <span class="keywordtype">void</span> SetFrequency (<span class="keywordtype">double</span> frequency)
-00202         {
-00203           m_frequency = frequency;
-00204         }
-00205 
-<a name="l00213"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#a10">00213</a>         <span class="keywordtype">void</span> SetSeed (<span class="keywordtype">int</span> seed)
-00214         {
-00215           m_seed = seed;
-00216         }
-00217 
-00218       <span class="keyword">protected</span>:
-00219 
-<a name="l00221"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#p0">00221</a>         <span class="keywordtype">double</span> m_displacement;
-00222 
-<a name="l00225"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#p1">00225</a>         <span class="keywordtype">bool</span> m_enableDistance;
-00226 
-<a name="l00228"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#p2">00228</a>         <span class="keywordtype">double</span> m_frequency;
-00229 
-<a name="l00232"></a><a class="code" href="classnoise_1_1module_1_1Voronoi.html#p3">00232</a>         <span class="keywordtype">int</span> m_seed;
-00233 
-00234     };
-00235 
-00237 
-00239 
-00241 
-00242   }
-00243 
-00244 }
-00245 
-00246 <span class="preprocessor">#endif</span>
-</pre></div><!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/htmldata/background.png b/libnoise/noise/doc/htmldata/background.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/htmldata/background.png and /dev/null differ
diff --git a/libnoise/noise/doc/htmldata/doxygen.css b/libnoise/noise/doc/htmldata/doxygen.css
deleted file mode 100644
--- a/libnoise/noise/doc/htmldata/doxygen.css
+++ /dev/null
@@ -1,249 +0,0 @@
-body
-{
- background-color: #99cccc;
- background-image: url(background.png);
- display: block;
- font-family: verdana,helvetica,sans-serif;
- font-size: 10pt;
- margin-left: auto;
- margin-right: auto;
- max-width: 70em;
-}
-
-img
-{
- background-color: white;
- border-style: none;
-}
-
-span.header
-{
- font-weight: bold;
-}
-
-table.layout
-{
- border-collapse: collapse;
- border-style: none;
- border-width: 0px;
- margin: 0px;
- padding: 0px;
- width: 100%;
-}
-
-td.header
-{
- background-color: white;
- background-repeat: no-repeat;
- padding: 6pt;
- vertical-align: top;
-}
-
-td.sidebar
-{
- background-color: #99cccc;
- border-color: #669999;
- border-style: none;
- border-width: 0px;
- padding: 3pt;
- vertical-align: top;
- width: 18em;
- font-size: 8pt;
-}
-
-td.sidebar a:hover
-{
- color: red;
-}
-
-td.content
-{
- background-color: white;
- vertical-align: top;
- padding: 6pt;
-}
-
-td.footer
-{
- background-color: white;
- vertical-align: bottom;
-}
-
-ul.toc
-{
- padding-left: 1em;
-}
-
-td.content img
-{
- padding: 4pt;
-}
-
-div.fragment
-{
- background-color: #ddeeee;
- border-color: #996666;
- border-style: dashed;
- border-width: 1px;
- font-family: monospace;
- padding: 8pt;
- margin: 8pt;
- margin-left: 24pt;
-}
-
-td {
- font-size: 10pt;
-}
-
-
-
-
-
-caption
-{
- font-weight: bold
-}
-
-a.qindex
-{
-}
-
-a.qindexRef
-{
-}
-
-a.el
-{
- text-decoration: none;
- font-weight: bold
-}
-
-a.elRef
-{
- font-weight: bold
-}
-
-a.code
-{
- text-decoration: none;
- font-weight: normal;
- color: #4444ee
-}
-
-a.codeRef
-{
- font-weight: normal;
- color: #4444ee
-}
-
-dl.el
-{
- margin-left: -1cm
-}
-
-div.ah
-{
- background-color: black;
- font-weight: bold;
- color: #ffffff;
- margin-bottom: 3px;
- margin-top: 3px
-}
-
-div.groupHeader
-{
- margin-left: 16px;
- margin-top: 12px;
- margin-bottom: 6px;
- font-weight: bold
-}
-
-div.groupText
-{
- margin-left: 16px;
- font-style: italic;
-}
-
-td.indexkey
-{
- background-color: #ddeeee;
- font-weight: bold;
- padding-right: 10px;
- padding-top: 2px;
- padding-left: 10px;
- padding-bottom: 2px;
- margin-left: 0px;
- margin-right: 0px;
- margin-top: 2px;
- margin-bottom: 2px
-}
-
-td.indexvalue
-{
- background-color: #ddeeee;
- font-style: italic;
- padding-right: 10px;
- padding-top: 2px;
- padding-left: 10px;
- padding-bottom: 2px;
- margin-left: 0px;
- margin-right: 0px;
- margin-top: 2px;
- margin-bottom: 2px
-}
-
-td.md
-{
- background-color: #ddeeee;
- font-weight: bold;
-}
-
-td.mdname1
-{
- background-color: #ddeeee;
- font-weight: bold;
- color: #602020;
-}
-
-td.mdname
-{
- background-color: #ddeeee;
- font-weight: bold;
- color: #602020;
- width: 600px;
-}
-
-span.keyword
-{
- color: #008000
-}
-
-span.keywordtype
-{
- color: #604020
-}
-
-span.keywordflow
-{
- color: #e08000
-}
-
-span.comment
-{
- color: #800000
-}
-
-span.preprocessor
-{
- color: #806020
-}
-
-span.stringliteral
-{
- color: #002080
-}
-
-span.charliteral
-{
- color: #008080
-}
diff --git a/libnoise/noise/doc/htmldata/libnoise.png b/libnoise/noise/doc/htmldata/libnoise.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/htmldata/libnoise.png and /dev/null differ
diff --git a/libnoise/noise/doc/htmldata/templatefooter.html b/libnoise/noise/doc/htmldata/templatefooter.html
deleted file mode 100644
--- a/libnoise/noise/doc/htmldata/templatefooter.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!-- end rich gooey content -->
-
-    </td>
-   </tr>
-   <tr>
-    <td class='footer' colspan='2'>
-     <p>
-      &copy; 2003-2005 Jason Bevins
-     </p>
-     <p>
-      <a href='http://www.doxygen.org/'><img src='doxygen.png' alt='Doxygen logo'></a>
-      <br>
-      The libnoise source documentation was generated by <a href='http://www.doxygen.org/'>doxygen</a> 1.3.9.1
-     </p>
-    </td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/libnoise/noise/doc/htmldata/templateheader.html b/libnoise/noise/doc/htmldata/templateheader.html
deleted file mode 100644
--- a/libnoise/noise/doc/htmldata/templateheader.html
+++ /dev/null
@@ -1,99 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
- <head>
-  <title>libnoise: Documentation</title>
-  <link rel='stylesheet' type='text/css' href='doxygen.css'>
-  <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1'>
- </head>
- <body>
-  <table class='layout'>
-   <tr>
-    <td class='sidebar' rowspan='2'>
-     <p>
-      Navigation menu
-     </p>
-     <ul class='toc'>
-      <li>
-       <a href='http://libnoise.sourceforge.net/index.html'>Main</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/downloads/index.html'>Downloads</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/coherentnoise/index.html'>What is coherent noise?</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/noisegen/index.html'>Generating coherent noise</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/glossary/index.html'>Glossary</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/examples/index.html'>Examples</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/textures/index.html'>Procedural textures</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/complexplanet/index.html'>Complex planetary surface</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/examples/worms/index.html'>Perlin worms</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <strong>Docs</strong>
-      </li>
-      <li>
-       <a href='tutorials/index.html'>Tutorials</a>
-       <ul class='toc'>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial1.html'>Tutorial 1</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial2.html'>Tutorial 2</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial3.html'>Tutorial 3</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial4.html'>Tutorial 4</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial5.html'>Tutorial 5</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial6.html'>Tutorial 6</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial7.html'>Tutorial 7</a>
-        </li>
-        <li>
-         <a href='http://libnoise.sourceforge.net/tutorials/tutorial8.html'>Tutorial 8</a>
-        </li>
-       </ul>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/cvs/index.html'>CVS</a>
-      </li>
-      <li>
-       <a href='http://libnoise.sourceforge.net/links/index.html'>Links</a>
-      </li>
-     </ul>
-    </td>
-    <td class='header'>
-     <p>
-      <img src='libnoise.png' alt='libnoise logo'>
-     </p>   
-     <p>
-      A portable, open-source, coherent noise-generating library for C++
-     </p>
-     <hr>
-    </td>
-   </tr>
-   <tr>
-    <td class='content'>
-
-<!-- start rich gooey content -->
diff --git a/libnoise/noise/doc/img/curve.png b/libnoise/noise/doc/img/curve.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/curve.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/gradientcolor.png b/libnoise/noise/doc/img/gradientcolor.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/gradientcolor.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modelcylinder.png b/libnoise/noise/doc/img/modelcylinder.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modelcylinder.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modelsphere.png b/libnoise/noise/doc/img/modelsphere.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modelsphere.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleabs.png b/libnoise/noise/doc/img/moduleabs.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleabs.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleadd.png b/libnoise/noise/doc/img/moduleadd.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleadd.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulebillow.png b/libnoise/noise/doc/img/modulebillow.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulebillow.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleblend.png b/libnoise/noise/doc/img/moduleblend.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleblend.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulecheckerboard.png b/libnoise/noise/doc/img/modulecheckerboard.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulecheckerboard.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleclamp.png b/libnoise/noise/doc/img/moduleclamp.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleclamp.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleconst.png b/libnoise/noise/doc/img/moduleconst.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleconst.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulecurve.png b/libnoise/noise/doc/img/modulecurve.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulecurve.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulecylinders.png b/libnoise/noise/doc/img/modulecylinders.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulecylinders.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduledisplace.png b/libnoise/noise/doc/img/moduledisplace.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduledisplace.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleexponent.png b/libnoise/noise/doc/img/moduleexponent.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleexponent.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleinvert.png b/libnoise/noise/doc/img/moduleinvert.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleinvert.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulemax.png b/libnoise/noise/doc/img/modulemax.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulemax.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulemin.png b/libnoise/noise/doc/img/modulemin.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulemin.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulemultiply.png b/libnoise/noise/doc/img/modulemultiply.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulemultiply.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleperlin.png b/libnoise/noise/doc/img/moduleperlin.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleperlin.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulepower.png b/libnoise/noise/doc/img/modulepower.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulepower.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleridgedmulti.png b/libnoise/noise/doc/img/moduleridgedmulti.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleridgedmulti.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulerotatepoint.png b/libnoise/noise/doc/img/modulerotatepoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulerotatepoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulescalebias.png b/libnoise/noise/doc/img/modulescalebias.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulescalebias.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulescalepoint.png b/libnoise/noise/doc/img/modulescalepoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulescalepoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleselect.png b/libnoise/noise/doc/img/moduleselect.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleselect.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulespheres.png b/libnoise/noise/doc/img/modulespheres.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulespheres.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleterrace.png b/libnoise/noise/doc/img/moduleterrace.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleterrace.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduletranslatepoint.png b/libnoise/noise/doc/img/moduletranslatepoint.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduletranslatepoint.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/moduleturbulence.png b/libnoise/noise/doc/img/moduleturbulence.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/moduleturbulence.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/modulevoronoi.png b/libnoise/noise/doc/img/modulevoronoi.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/modulevoronoi.png and /dev/null differ
diff --git a/libnoise/noise/doc/img/terrace.png b/libnoise/noise/doc/img/terrace.png
deleted file mode 100644
Binary files a/libnoise/noise/doc/img/terrace.png and /dev/null differ
diff --git a/libnoise/noise/doc/readme.txt b/libnoise/noise/doc/readme.txt
deleted file mode 100644
--- a/libnoise/noise/doc/readme.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-Building doco
--------------
-
-Run doxygen from this directory.
-
-Copy the following files from the htmldata into the html subdirectory:
-- background.png
-- doxygen.css
-- libnoise.png
-
-The HTML documentation contains custom headers and footers that require
-certain image files to exist in the html subdirectory.  I don't know how to
-get doxygen to copy these files automagically.
-
--- jas
diff --git a/libnoise/noise/include/Makefile b/libnoise/noise/include/Makefile
deleted file mode 100644
--- a/libnoise/noise/include/Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-.PHONY: all here clean
-all: here model module
-
-here:
-	cp ../src/*.h .
-model:
-	(mkdir $@ && cp ../src/model/*.h $@)
-module:
-	(mkdir $@ && cp ../src/$@/*.h $@)
-
-clean:
-	-rm *.h
-	-rm -rf model
-	-rm -rf module
diff --git a/libnoise/noise/lib/Makefile b/libnoise/noise/lib/Makefile
deleted file mode 100644
--- a/libnoise/noise/lib/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-VPATH=../src/
-
-.PHONY: all clean
-all: libnoise.a libnoise.la libnoise.so.0.3
-	-cp $? .
-
-clean:
-	-rm libnoise.*
diff --git a/libnoise/noise/libnoise.dsp b/libnoise/noise/libnoise.dsp
deleted file mode 100644
--- a/libnoise/noise/libnoise.dsp
+++ /dev/null
@@ -1,432 +0,0 @@
-# Microsoft Developer Studio Project File - Name="libnoise" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 5.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-CFG=libnoise - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "libnoise.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "libnoise.mak" CFG="libnoise - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "libnoise - Win32 Release" (based on\
- "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "libnoise - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE 
-
-# Begin Project
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "libnoise - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "win32/Release"
-# PROP Intermediate_Dir "win32/Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o NUL /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o NUL /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-# SUBTRACT LINK32 /map
-
-!ELSEIF  "$(CFG)" == "libnoise - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "win32/Debug"
-# PROP Intermediate_Dir "win32/Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o NUL /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o NUL /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /map /debug /machine:I386 /pdbtype:sept
-
-!ENDIF 
-
-# Begin Target
-
-# Name "libnoise - Win32 Release"
-# Name "libnoise - Win32 Debug"
-# Begin Group "modules"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\src\module\abs.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\abs.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\add.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\add.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\billow.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\billow.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\blend.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\blend.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\cache.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\cache.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\checkerboard.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\checkerboard.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\clamp.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\clamp.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\const.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\const.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\curve.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\curve.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\cylinders.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\cylinders.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\displace.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\displace.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\exponent.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\exponent.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\invert.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\invert.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\max.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\max.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\min.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\min.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\module.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\modulebase.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\modulebase.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\multiply.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\multiply.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\perlin.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\perlin.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\power.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\power.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\ridgedmulti.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\ridgedmulti.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\rotatepoint.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\rotatepoint.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\scalebias.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\scalebias.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\scalepoint.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\scalepoint.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\select.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\select.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\spheres.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\spheres.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\terrace.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\terrace.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\translatepoint.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\translatepoint.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\turbulence.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\turbulence.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\voronoi.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\module\voronoi.h
-# End Source File
-# End Group
-# Begin Group "models"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\src\model\cylinder.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\model\cylinder.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\model\line.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\model\line.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\model\model.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\model\plane.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\model\plane.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\model\sphere.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\model\sphere.h
-# End Source File
-# End Group
-# Begin Group "win32"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\src\win32\dllmain.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\win32\libnoise.def
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\win32\noise.rc
-# End Source File
-# End Group
-# Begin Source File
-
-SOURCE=.\src\basictypes.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\exception.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\interp.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\latlon.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\latlon.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\mathconsts.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\misc.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\noise.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\noisegen.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\noisegen.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\src\vectortable.h
-# End Source File
-# End Target
-# End Project
diff --git a/libnoise/noise/libnoise.dsw b/libnoise/noise/libnoise.dsw
deleted file mode 100644
--- a/libnoise/noise/libnoise.dsw
+++ /dev/null
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 5.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "libnoise"=.\libnoise.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/libnoise/noise/libnoise.ncb b/libnoise/noise/libnoise.ncb
deleted file mode 100644
# file too large to diff: libnoise/noise/libnoise.ncb
diff --git a/libnoise/noise/libnoise.opt b/libnoise/noise/libnoise.opt
deleted file mode 100644
Binary files a/libnoise/noise/libnoise.opt and /dev/null differ
diff --git a/libnoise/noise/libnoise.plg b/libnoise/noise/libnoise.plg
deleted file mode 100644
--- a/libnoise/noise/libnoise.plg
+++ /dev/null
@@ -1,136 +0,0 @@
---------------------Configuration: libnoise - Win32 Release--------------------
-Begining build with project "C:\dev\src\noise\libnoise.dsp", at root.
-Active configuration is Win32 (x86) Dynamic-Link Library (based on Win32 (x86) Dynamic-Link Library)
-
-Project's tools are:
-			"32-bit C/C++ Compiler for 80x86" with flags "/nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Fp"win32/Release/libnoise.pch" /YX /Fo"win32/Release/" /Fd"win32/Release/" /FD /c "
-			"OLE Type Library Maker" with flags "/nologo /D "NDEBUG" /mktyplib203 /o NUL /win32 "
-			"Win32 Resource Compiler" with flags "/l 0x409 /fo"win32/Release/noise.res" /d "NDEBUG" "
-			"Browser Database Maker" with flags "/nologo /o"win32/Release/libnoise.bsc" "
-			"COFF Linker for 80x86" with flags "kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:no /pdb:"win32/Release/libnoise.pdb" /machine:I386 /def:".\src\win32\libnoise.def" /out:"win32/Release/libnoise.dll" /implib:"win32/Release/libnoise.lib" "
-			"Custom Build" with flags ""
-			"<Component 0xa>" with flags ""
-
-Creating command line "rc.exe /l 0x409 /fo"win32/Release/noise.res" /i "src\win32" /d "NDEBUG" "C:\dev\src\noise\src\win32\noise.rc"" 
-Creating temp file "C:\DOCUME~1\jas\LOCALS~1\Temp\RSP2AB7.tmp" with contents </nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Fp"win32/Release/libnoise.pch" /YX /Fo"win32/Release/" /Fd"win32/Release/" /FD /c 
-"C:\dev\src\noise\src\module\abs.cpp"
-"C:\dev\src\noise\src\module\add.cpp"
-"C:\dev\src\noise\src\module\billow.cpp"
-"C:\dev\src\noise\src\module\blend.cpp"
-"C:\dev\src\noise\src\module\cache.cpp"
-"C:\dev\src\noise\src\module\checkerboard.cpp"
-"C:\dev\src\noise\src\module\clamp.cpp"
-"C:\dev\src\noise\src\module\const.cpp"
-"C:\dev\src\noise\src\module\curve.cpp"
-"C:\dev\src\noise\src\module\cylinders.cpp"
-"C:\dev\src\noise\src\module\displace.cpp"
-"C:\dev\src\noise\src\module\exponent.cpp"
-"C:\dev\src\noise\src\module\invert.cpp"
-"C:\dev\src\noise\src\module\max.cpp"
-"C:\dev\src\noise\src\module\min.cpp"
-"C:\dev\src\noise\src\module\modulebase.cpp"
-"C:\dev\src\noise\src\module\multiply.cpp"
-"C:\dev\src\noise\src\module\perlin.cpp"
-"C:\dev\src\noise\src\module\power.cpp"
-"C:\dev\src\noise\src\module\ridgedmulti.cpp"
-"C:\dev\src\noise\src\module\rotatepoint.cpp"
-"C:\dev\src\noise\src\module\scalebias.cpp"
-"C:\dev\src\noise\src\module\scalepoint.cpp"
-"C:\dev\src\noise\src\module\select.cpp"
-"C:\dev\src\noise\src\module\spheres.cpp"
-"C:\dev\src\noise\src\module\terrace.cpp"
-"C:\dev\src\noise\src\module\translatepoint.cpp"
-"C:\dev\src\noise\src\module\turbulence.cpp"
-"C:\dev\src\noise\src\module\voronoi.cpp"
-"C:\dev\src\noise\src\model\cylinder.cpp"
-"C:\dev\src\noise\src\model\line.cpp"
-"C:\dev\src\noise\src\model\plane.cpp"
-"C:\dev\src\noise\src\model\sphere.cpp"
-"C:\dev\src\noise\src\win32\dllmain.cpp"
-"C:\dev\src\noise\src\latlon.cpp"
-"C:\dev\src\noise\src\noisegen.cpp"
->
-Creating command line "cl.exe @C:\DOCUME~1\jas\LOCALS~1\Temp\RSP2AB7.tmp" 
-Creating temp file "C:\DOCUME~1\jas\LOCALS~1\Temp\RSP2AB8.tmp" with contents <kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:no /pdb:"win32/Release/libnoise.pdb" /machine:I386 /def:".\src\win32\libnoise.def" /out:"win32/Release/libnoise.dll" /implib:"win32/Release/libnoise.lib" 
-.\win32\Release\abs.obj
-.\win32\Release\add.obj
-.\win32\Release\billow.obj
-.\win32\Release\blend.obj
-.\win32\Release\cache.obj
-.\win32\Release\checkerboard.obj
-.\win32\Release\clamp.obj
-.\win32\Release\const.obj
-.\win32\Release\curve.obj
-.\win32\Release\cylinders.obj
-.\win32\Release\displace.obj
-.\win32\Release\exponent.obj
-.\win32\Release\invert.obj
-.\win32\Release\max.obj
-.\win32\Release\min.obj
-.\win32\Release\modulebase.obj
-.\win32\Release\multiply.obj
-.\win32\Release\perlin.obj
-.\win32\Release\power.obj
-.\win32\Release\ridgedmulti.obj
-.\win32\Release\rotatepoint.obj
-.\win32\Release\scalebias.obj
-.\win32\Release\scalepoint.obj
-.\win32\Release\select.obj
-.\win32\Release\spheres.obj
-.\win32\Release\terrace.obj
-.\win32\Release\translatepoint.obj
-.\win32\Release\turbulence.obj
-.\win32\Release\voronoi.obj
-.\win32\Release\cylinder.obj
-.\win32\Release\line.obj
-.\win32\Release\plane.obj
-.\win32\Release\sphere.obj
-.\win32\Release\dllmain.obj
-.\win32\Release\latlon.obj
-.\win32\Release\noisegen.obj
-.\win32\Release\noise.res>
-Creating command line "link.exe @C:\DOCUME~1\jas\LOCALS~1\Temp\RSP2AB8.tmp" 
-Compiling resources...
-Compiling...
-abs.cpp
-add.cpp
-billow.cpp
-blend.cpp
-cache.cpp
-checkerboard.cpp
-clamp.cpp
-const.cpp
-curve.cpp
-cylinders.cpp
-displace.cpp
-exponent.cpp
-invert.cpp
-max.cpp
-min.cpp
-modulebase.cpp
-multiply.cpp
-perlin.cpp
-power.cpp
-ridgedmulti.cpp
-rotatepoint.cpp
-scalebias.cpp
-scalepoint.cpp
-select.cpp
-spheres.cpp
-terrace.cpp
-translatepoint.cpp
-turbulence.cpp
-voronoi.cpp
-cylinder.cpp
-line.cpp
-plane.cpp
-sphere.cpp
-dllmain.cpp
-latlon.cpp
-noisegen.cpp
-Linking...
-   Creating library win32/Release/libnoise.lib and object win32/Release/libnoise.exp
-
-
-
-libnoise.dll - 0 error(s), 0 warning(s)
diff --git a/libnoise/noise/noise.aps b/libnoise/noise/noise.aps
deleted file mode 100644
Binary files a/libnoise/noise/noise.aps and /dev/null differ
diff --git a/libnoise/noise/src/Makefile b/libnoise/noise/src/Makefile
deleted file mode 100644
--- a/libnoise/noise/src/Makefile
+++ /dev/null
@@ -1,56 +0,0 @@
-LIBTOOL=libtool
-
-# defines source files and vpaths
-include Sources
-
-DEPENDS=$(SOURCES:.cpp=.d)
-
-# What source objects are we building?
-OBJECTS=$(SOURCES:.cpp=.o)
-
-.PHONY: all clean cleandeps cleanobjs cleanlib libnoise libnoise.so libnoise.so.0
-
-# hooks for future makefiles being able to make multiple SOs, or older SOs
-libnoise: libnoise.so libnoise.a libnoise.la
-libnoise.so: libnoise.so.0
-libnoise.so.0: libnoise.so.0.3
-
-# Real build targets
-libnoise.so.0.3: $(OBJECTS)
-	$(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) -shared -Wl,-soname=libnoise.so.0 -o $@ $(OBJECTS:.o=.lo)
-
-libnoise.a: $(OBJECTS)
-	$(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) -o $@ $(OBJECTS)
-libnoise.la: $(OBJECTS)
-	$(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) -o $@ $(OBJECTS:.o=.lo)
-
-clean:	cleandeps cleanobjs cleanlib
-cleandeps:
-	-rm $(DEPENDS)
-cleanobjs:
-	-rm $(OBJECTS)
-	-rm $(OBJECTS:.o=.lo) #clean up after libtool
-	-rm -rf .libs model/.libs module/.libs
-cleanlib:
-	-rm libnoise.so.0.3
-	-rm libnoise.a
-	-rm libnoise.la
-
-# Utility rules
-# Generates dependancy files:
-%.d: %.cpp
-	@set -e; rm -f $@; \
-         $(CXX) -MM $(CPPFLAGS) $< > $@.$$$$; \
-         sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
-         rm -f $@.$$$$
-
-# C and C++ libtool (rather than raw CXX/CC) use
-%.o %.lo: %.cpp
-	$(LIBTOOL) --mode=compile $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $(@:.lo=.o)
-
-%.o %.lo: %.c
-	$(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $(@:.lo=.o)
-
-# If dependancies have never been built this will produce a horde of
-# "file not found" warnings and *then* build the deps.  Very odd.
-include $(DEPENDS)
diff --git a/libnoise/noise/src/Sources b/libnoise/noise/src/Sources
deleted file mode 100644
--- a/libnoise/noise/src/Sources
+++ /dev/null
@@ -1,80 +0,0 @@
-SOURCES=../src/latlon.cpp \
-	../src/noisegen.cpp \
-        ../src/model/cylinder.cpp \
-	../src/model/line.cpp \
-	../src/model/plane.cpp \
-	../src/model/sphere.cpp \
-        ../src/module/abs.cpp \
-	../src/module/add.cpp \
-	../src/module/billow.cpp \
-	../src/module/blend.cpp \
-	../src/module/cache.cpp \
-	../src/module/checkerboard.cpp \
-	../src/module/clamp.cpp \
-	../src/module/const.cpp \
-	../src/module/curve.cpp \
-	../src/module/cylinders.cpp \
-	../src/module/displace.cpp \
-	../src/module/exponent.cpp \
-	../src/module/invert.cpp \
-	../src/module/max.cpp \
-	../src/module/min.cpp \
-	../src/module/modulebase.cpp \
-	../src/module/multiply.cpp \
-	../src/module/perlin.cpp \
-	../src/module/power.cpp \
-	../src/module/ridgedmulti.cpp \
-	../src/module/rotatepoint.cpp \
-	../src/module/scalebias.cpp \
-	../src/module/scalepoint.cpp \
-	../src/module/select.cpp \
-	../src/module/spheres.cpp \
-	../src/module/terrace.cpp \
-	../src/module/translatepoint.cpp \
-	../src/module/turbulence.cpp \
-	../src/module/voronoi.cpp 
-
-HEADERS=../src/basictypes.h \
-	../src/exception.h \
-	../src/interp.h \
-	../src/latlon.h \
-	../src/mathconsts.h \
-	../src/misc.h \
-	../src/noisegen.h \
-	../src/noise.h \
-	../src/vectortable.h \
-        ../src/model/cylinder.h \
-	../src/model/model.h \
-	../src/model/sphere.h \
-	../src/model/line.h \
-	../src/model/plane.h \
-        ../src/module/abs.h \
-	../src/module/add.h \
-	../src/module/billow.h \
-	../src/module/blend.h \
-	../src/module/cache.h \
-	../src/module/checkerboard.h \
-	../src/module/clamp.h \
-	../src/module/const.h \
-	../src/module/curve.h \
-	../src/module/cylinders.h \
-	../src/module/displace.h \
-	../src/module/exponent.h \
-	../src/module/invert.h \
-	../src/module/max.h \
-	../src/module/min.h \
-	../src/module/module.h \
-	../src/module/modulebase.h \
-	../src/module/multiply.h \
-	../src/module/perlin.h \
-	../src/module/power.h \
-	../src/module/ridgedmulti.h \
-	../src/module/rotatepoint.h \
-	../src/module/scalebias.h \
-	../src/module/scalepoint.h \
-	../src/module/select.h \
-	../src/module/spheres.h \
-	../src/module/terrace.h \
-	../src/module/translatepoint.h \
-	../src/module/turbulence.h \
-	../src/module/voronoi.h
diff --git a/libnoise/noise/src/basictypes.h b/libnoise/noise/src/basictypes.h
deleted file mode 100644
--- a/libnoise/noise/src/basictypes.h
+++ /dev/null
@@ -1,60 +0,0 @@
-// basictypes.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_BASICTYPES_H
-#define NOISE_BASICTYPES_H
-
-// You may need to modify these constants for your compiler or platform.
-
-namespace noise
-{
-
-  /// @defgroup libnoise libnoise
-  /// @addtogroup libnoise
-  /// @{
-
-  /// Unsigned integer type.
-  typedef unsigned int uint;
-
-  /// 32-bit unsigned integer type.
-  typedef unsigned int uint32;
-
-  /// 16-bit unsigned integer type.
-  typedef unsigned short uint16;
-
-  /// 8-bit unsigned integer type.
-  typedef unsigned char uint8;
-
-  /// 32-bit signed integer type.
-  typedef int int32;
-
-  /// 16-bit signed integer type.
-  typedef short int16;
-
-  /// 8-bit signed integer type.
-  typedef char int8;
-
-  /// @}
-
-}
-
-#endif
diff --git a/libnoise/noise/src/exception.h b/libnoise/noise/src/exception.h
deleted file mode 100644
--- a/libnoise/noise/src/exception.h
+++ /dev/null
@@ -1,74 +0,0 @@
-// exception.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_EXCEPTION_H
-#define NOISE_EXCEPTION_H
-
-namespace noise
-{
-
-  /// @addtogroup libnoise
-  /// @{
-
-  /// Abstract base class for libnoise exceptions
-  class Exception
-  {
-  };
-
-  /// Invalid parameter exception
-  ///
-  /// An invalid parameter was passed to a libnoise function or method.
-  class ExceptionInvalidParam: public Exception
-  {
-  };
-
-  /// No module exception
-  ///
-  /// Could not retrieve a source module from a noise module.
-  ///
-  /// @note If one or more required source modules were not connected to a
-  /// specific noise module, and its GetValue() method was called, that
-  /// method will raise a debug assertion instead of this exception.  This
-  /// is done for performance reasons.
-  class ExceptionNoModule: public Exception
-  {
-  };
-
-  /// Out of memory exception
-  ///
-  /// There was not enough memory to perform an action.
-  class ExceptionOutOfMemory: public Exception
-  {
-  };
-
-  /// Unknown exception
-  ///
-  /// libnoise raised an unknown exception.
-  class ExceptionUnknown: public Exception
-  {
-  };
-
-  /// @}
-
-}
-
-#endif
diff --git a/libnoise/noise/src/interp.h b/libnoise/noise/src/interp.h
deleted file mode 100644
--- a/libnoise/noise/src/interp.h
+++ /dev/null
@@ -1,112 +0,0 @@
-// interp.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_INTERP_H
-#define NOISE_INTERP_H
-
-namespace noise
-{
-
-  /// @addtogroup libnoise
-  /// @{
-
-  /// Performs cubic interpolation between two values bound between two other
-  /// values.
-  ///
-  /// @param n0 The value before the first value.
-  /// @param n1 The first value.
-  /// @param n2 The second value.
-  /// @param n3 The value after the second value.
-  /// @param a The alpha value.
-  ///
-  /// @returns The interpolated value.
-  ///
-  /// The alpha value should range from 0.0 to 1.0.  If the alpha value is
-  /// 0.0, this function returns @a n1.  If the alpha value is 1.0, this
-  /// function returns @a n2.
-  inline double CubicInterp (double n0, double n1, double n2, double n3,
-    double a)
-  {
-	  double p = (n3 - n2) - (n0 - n1);
-	  double q = (n0 - n1) - p;
-	  double r = n2 - n0;
-	  double s = n1;
-	  return p * a * a * a + q * a * a + r * a + s;
-  }
-
-  /// Performs linear interpolation between two values.
-  ///
-  /// @param n0 The first value.
-  /// @param n1 The second value.
-  /// @param a The alpha value.
-  ///
-  /// @returns The interpolated value.
-  ///
-  /// The alpha value should range from 0.0 to 1.0.  If the alpha value is
-  /// 0.0, this function returns @a n0.  If the alpha value is 1.0, this
-  /// function returns @a n1.
-  inline double LinearInterp (double n0, double n1, double a)
-  {
-    return ((1.0 - a) * n0) + (a * n1);
-  }
-
-  /// Maps a value onto a cubic S-curve.
-  ///
-  /// @param a The value to map onto a cubic S-curve.
-  ///
-  /// @returns The mapped value.
-  ///
-  /// @a a should range from 0.0 to 1.0.
-  ///
-  /// The derivitive of a cubic S-curve is zero at @a a = 0.0 and @a a =
-  /// 1.0
-  inline double SCurve3 (double a)
-  {
-    return (a * a * (3.0 - 2.0 * a));
-  }
-
-  /// Maps a value onto a quintic S-curve.
-  ///
-  /// @param a The value to map onto a quintic S-curve.
-  ///
-  /// @returns The mapped value.
-  ///
-  /// @a a should range from 0.0 to 1.0.
-  ///
-  /// The first derivitive of a quintic S-curve is zero at @a a = 0.0 and
-  /// @a a = 1.0
-  ///
-  /// The second derivitive of a quintic S-curve is zero at @a a = 0.0 and
-  /// @a a = 1.0
-  inline double SCurve5 (double a)
-  {
-    double a3 = a * a * a;
-    double a4 = a3 * a;
-    double a5 = a4 * a;
-    return (6.0 * a5) - (15.0 * a4) + (10.0 * a3);
-  }
-
-  // @}
-
-}
-
-#endif
diff --git a/libnoise/noise/src/latlon.cpp b/libnoise/noise/src/latlon.cpp
deleted file mode 100644
--- a/libnoise/noise/src/latlon.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-// latlon.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "latlon.h"
-
-using namespace noise;
-
-void noise::LatLonToXYZ (double lat, double lon, double& x, double& y,
-  double& z)
-{
-  double r = cos (DEG_TO_RAD * lat);
-  x = r * cos (DEG_TO_RAD * lon);
-  y =     sin (DEG_TO_RAD * lat);
-  z = r * sin (DEG_TO_RAD * lon);
-}
diff --git a/libnoise/noise/src/latlon.h b/libnoise/noise/src/latlon.h
deleted file mode 100644
--- a/libnoise/noise/src/latlon.h
+++ /dev/null
@@ -1,52 +0,0 @@
-// latlon.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_LATLON_H
-#define NOISE_LATLON_H
-
-#include <math.h>
-#include "mathconsts.h"
-
-namespace noise
-{
-
-  /// @addtogroup libnoise
-  /// @{
-
-  /// Converts latitude/longitude coordinates on a unit sphere into 3D
-  /// Cartesian coordinates.
-  ///
-  /// @param lat The latitude, in degrees.
-  /// @param lon The longitude, in degrees.
-  /// @param x On exit, this parameter contains the @a x coordinate.
-  /// @param y On exit, this parameter contains the @a y coordinate.
-  /// @param z On exit, this parameter contains the @a z coordinate.
-  ///
-  /// @pre lat must range from @b -90 to @b +90.
-  /// @pre lon must range from @b -180 to @b +180.
-  void LatLonToXYZ (double lat, double lon, double& x, double& y, double& z);
-
-  /// @}
-
-}
-
-#endif
diff --git a/libnoise/noise/src/mathconsts.h b/libnoise/noise/src/mathconsts.h
deleted file mode 100644
--- a/libnoise/noise/src/mathconsts.h
+++ /dev/null
@@ -1,54 +0,0 @@
-// mathconsts.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MATHCONSTS_H
-#define NOISE_MATHCONSTS_H
-
-// For whatever reason, I can't find the basic math consts in the MSVC version
-// of math.h.
-
-namespace noise
-{
-
-  /// @addtogroup libnoise
-  /// @{
-
-  /// Pi.
-  const double PI = 3.1415926535897932385;
-
-  /// Square root of 2.
-  const double SQRT_2 = 1.4142135623730950488;
-
-  /// Square root of 3.
-  const double SQRT_3 = 1.7320508075688772935;
-
-  /// Converts an angle from degrees to radians.
-  const double DEG_TO_RAD = PI / 180.0;
-
-  /// Converts an angle from radians to degrees.
-  const double RAD_TO_DEG = 1.0 / DEG_TO_RAD;
-
-  /// @}
-
-}
-
-#endif
diff --git a/libnoise/noise/src/misc.h b/libnoise/noise/src/misc.h
deleted file mode 100644
--- a/libnoise/noise/src/misc.h
+++ /dev/null
@@ -1,97 +0,0 @@
-// misc.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MISC_H
-#define NOISE_MISC_H
-
-namespace noise
-{
-
-  /// Clamps a value onto a clamping range.
-  ///
-  /// @param value The value to clamp.
-  /// @param lowerBound The lower bound of the clamping range.
-  /// @param upperBound The upper bound of the clamping range.
-  ///
-  /// @returns
-  /// - @a value if @a value lies between @a lowerBound and @a upperBound.
-  /// - @a lowerBound if @a value is less than @a lowerBound.
-  /// - @a upperBound if @a value is greater than @a upperBound.
-  ///
-  /// This function does not modify any parameters.
-  inline int ClampValue (int value, int lowerBound, int upperBound)
-  {
-    if (value < lowerBound) {
-      return lowerBound;
-    } else if (value > upperBound) {
-      return upperBound;
-    } else {
-      return value;
-    }
-  }
-
-  /// @addtogroup libnoise
-  /// @{
-
-  /// Returns the maximum of two values.
-  ///
-  /// @param a The first value.
-  /// @param b The second value.
-  ///
-  /// @returns The maximum of the two values.
-  template <class T>
-  T GetMax (const T& a, const T& b)
-  {
-    return (a > b? a: b);
-  }
-
-  /// Returns the minimum of two values.
-  ///
-  /// @param a The first value.
-  /// @param b The second value.
-  ///
-  /// @returns The minimum of the two values.
-  template <class T>
-  T GetMin (const T& a, const T& b)
-  {
-    return (a < b? a: b);
-  }
-
-  /// Swaps two values.
-  ///
-  /// @param a A variable containing the first value.
-  /// @param b A variable containing the second value.
-  ///
-  /// @post The values within the the two variables are swapped.
-  template <class T>
-  void SwapValues (T& a, T& b)
-  {
-    T c = a;
-    a = b;
-    b = c;
-  }
-
-  /// @}
-
-}
-
-#endif
diff --git a/libnoise/noise/src/model/cylinder.cpp b/libnoise/noise/src/model/cylinder.cpp
deleted file mode 100644
--- a/libnoise/noise/src/model/cylinder.cpp
+++ /dev/null
@@ -1,47 +0,0 @@
-// cylinder.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../mathconsts.h"
-#include "cylinder.h"
-
-using namespace noise;
-using namespace noise::model;
-
-Cylinder::Cylinder (): m_pModule (NULL)
-{
-}
-
-Cylinder::Cylinder (const module::Module& module):
-  m_pModule (&module)
-{
-}
-
-double Cylinder::GetValue (double angle, double height) const
-{
-  assert (m_pModule != NULL);
-
-  double x, y, z;
-  x = cos (angle * DEG_TO_RAD);
-  y = height;
-  z = sin (angle * DEG_TO_RAD);
-  return m_pModule->GetValue (x, y, z);
-}
diff --git a/libnoise/noise/src/model/cylinder.h b/libnoise/noise/src/model/cylinder.h
deleted file mode 100644
--- a/libnoise/noise/src/model/cylinder.h
+++ /dev/null
@@ -1,131 +0,0 @@
-// cylinder.h
-//
-// Copyright 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODEL_CYLINDER_H
-#define NOISE_MODEL_CYLINDER_H
-
-#include <assert.h>
-#include <math.h>
-#include <stdlib.h>
-#include "../module/modulebase.h"
-
-namespace noise
-{
-
-  namespace model
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @defgroup models Models
-    /// @addtogroup models
-    /// @{
-
-    /// Model that defines the surface of a cylinder.
-    ///
-    /// @image html modelcylinder.png
-    ///
-    /// This model returns an output value from a noise module given the
-    /// coordinates of an input value located on the surface of a cylinder.
-    ///
-    /// To generate an output value, pass the (angle, height) coordinates of
-    /// an input value to the GetValue() method.
-    ///
-    /// This model is useful for creating:
-    /// - seamless textures that can be mapped onto a cylinder
-    ///
-    /// This cylinder has a radius of 1.0 unit and has infinite height.  It is
-    /// oriented along the @a y axis.  Its center is located at the origin.
-    class Cylinder
-    {
-
-      public:
-
-        /// Constructor.
-        Cylinder ();
-
-        /// Constructor
-        ///
-        /// @param module The noise module that is used to generate the output
-        /// values.
-        Cylinder (const module::Module& module);
-
-        /// Returns the noise module that is used to generate the output
-        /// values.
-        ///
-        /// @returns A reference to the noise module.
-        ///
-        /// @pre A noise module was passed to the SetModule() method.
-        const module::Module& GetModule () const
-        {
-          assert (m_pModule != NULL);
-          return *m_pModule;
-        }
-
-        /// Returns the output value from the noise module given the
-        /// (angle, height) coordinates of the specified input value located
-        /// on the surface of the cylinder.
-        ///
-        /// @param angle The angle around the cylinder's center, in degrees.
-        /// @param height The height along the @a y axis.
-        ///
-        /// @returns The output value from the noise module.
-        ///
-        /// @pre A noise module was passed to the SetModule() method.
-        ///
-        /// This output value is generated by the noise module passed to the
-        /// SetModule() method.
-        ///
-        /// This cylinder has a radius of 1.0 unit and has infinite height.
-        /// It is oriented along the @a y axis.  Its center is located at the
-        /// origin.
-        double GetValue (double angle, double height) const;
-
-        /// Sets the noise module that is used to generate the output values.
-        ///
-        /// @param module The noise module that is used to generate the output
-        /// values.
-        ///
-        /// This noise module must exist for the lifetime of this object,
-        /// until you pass a new noise module to this method.
-        void SetModule (const module::Module& module)
-        {
-          m_pModule = &module;
-        }
-
-      private:
-
-        /// A pointer to the noise module used to generate the output values.
-        const module::Module* m_pModule;
-
-    };
-
-  /// @}
-
-  /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/model/line.cpp b/libnoise/noise/src/model/line.cpp
deleted file mode 100644
--- a/libnoise/noise/src/model/line.cpp
+++ /dev/null
@@ -1,65 +0,0 @@
-// line.cpp
-//
-// Copyright (C) 2004 Keith Davies
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-
-#include "line.h"
-
-using namespace noise;
-using namespace noise::model;
-
-Line::Line ():
-
-  m_attenuate (true),
-  m_pModule (NULL),
-  m_x0 (0.0),
-  m_x1 (1.0),
-  m_y0 (0.0),
-  m_y1 (1.0),
-  m_z0 (0.0),
-  m_z1 (1.0)
-{
-}
-
-Line::Line (const module::Module& module):
-
-  m_attenuate (true),
-  m_pModule (&module),
-  m_x0 (0.0),
-  m_x1 (1.0),
-  m_y0 (0.0),
-  m_y1 (1.0),
-  m_z0 (0.0),
-  m_z1 (1.0)
-{
-}
-
-double Line::GetValue (double p) const
-{
-  assert (m_pModule != NULL);
-
-  double x = (m_x1 - m_x0) * p + m_x0;
-  double y = (m_y1 - m_y0) * p + m_y0;
-  double z = (m_z1 - m_z0) * p + m_z0;
-  double value = m_pModule->GetValue (x, y, z);
-
-  if (m_attenuate) {
-    return p * (1.0 - p) * 4 * value;
-  } else {
-    return value;
-  }
-}
diff --git a/libnoise/noise/src/model/line.h b/libnoise/noise/src/model/line.h
deleted file mode 100644
--- a/libnoise/noise/src/model/line.h
+++ /dev/null
@@ -1,198 +0,0 @@
-// line.h
-//
-// Copyright (C) 2004 Keith Davies
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-
-#ifndef NOISE_MODEL_LINE_H
-#define NOISE_MODEL_LINE_H
-
-#include <assert.h>
-#include <math.h>
-#include <stdlib.h>
-#include "../module/modulebase.h"
-
-namespace noise
-{
-
-  namespace model
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup models
-    /// @{
-
-    /// Model that defines the displacement of a line segment.
-    ///
-    /// This model returns an output value from a noise module given the
-    /// one-dimensional coordinate of an input value located on a line
-    /// segment, which can be used as displacements.
-    ///
-    /// This class is useful for creating:
-    ///  - roads and rivers
-    ///  - disaffected college students
-    ///
-    /// To generate an output value, pass an input value between 0.0 and 1.0
-    /// to the GetValue() method.  0.0 represents the start position of the
-    /// line segment and 1.0 represents the end position of the line segment.
-    class Line
-    {
-
-      public:
-
-        /// Constructor.
-        Line ();
-
-        /// Constructor
-        ///
-        /// @param module The noise module that is used to generate the output
-        /// values.
-        Line (const module::Module& module);
-
-        /// Returns a flag indicating whether the output value is to be
-        /// attenuated (moved toward 0.0) as the ends of the line segment are
-        /// approached by the input value.
-        ///
-        /// @returns
-        /// - @a true if the value is to be attenuated
-        /// - @a false if not.
-        bool GetAttenuate () const
-        {
-          return m_attenuate;
-        }
-
-        /// Returns the noise module that is used to generate the output
-        /// values.
-        ///
-        /// @returns A reference to the noise module.
-        ///
-        /// @pre A noise module was passed to the SetModule() method.
-        const module::Module& GetModule () const
-        {
-          assert (m_pModule != NULL);
-          return *m_pModule;
-        }
-
-        /// Returns the output value from the noise module given the
-        /// one-dimensional coordinate of the specified input value located
-        /// on the line segment.
-        ///
-        /// @param p The distance along the line segment (ranges from 0.0
-        /// to 1.0)
-        ///
-        /// @returns The output value from the noise module.
-        ///
-        /// @pre A noise module was passed to the SetModule() method.
-        /// @pre The start and end points of the line segment were specified.
-        ///
-        /// The output value is generated by the noise module passed to the
-        /// SetModule() method.  This value may be attenuated (moved toward
-        /// 0.0) as @a p approaches either end of the line segment; this is
-        /// the default behavior.
-        ///
-        /// If the value is not to be attenuated, @a p can safely range
-        /// outside the 0.0 to 1.0 range; the output value will be
-        /// extrapolated along the line that this segment is part of.
-        double GetValue (double p) const;
-
-        /// Sets a flag indicating that the output value is to be attenuated
-        /// (moved toward 0.0) as the ends of the line segment are approached.
-        ///
-        /// @param att A flag that specifies whether the output value is to be
-        /// attenuated.
-        void SetAttenuate (bool att)
-        {
-          m_attenuate = att;
-        }
-
-        /// Sets the position ( @a x, @a y, @a z ) of the end of the line
-        /// segment to choose values along.
-        ///
-        /// @param x x coordinate of the end position.
-        /// @param y y coordinate of the end position.
-        /// @param z z coordinate of the end position.
-        void SetEndPoint (double x, double y, double z)
-        {
-          m_x1 = x;
-          m_y1 = y;
-          m_z1 = z;
-        }
-
-        /// Sets the noise module that is used to generate the output values.
-        ///
-        /// @param module The noise module that is used to generate the output
-        /// values.
-        ///
-        /// This noise module must exist for the lifetime of this object,
-        /// until you pass a new noise module to this method.
-        void SetModule (const module::Module& module)
-        {
-          m_pModule = &module;
-        }
-
-        /// Sets the position ( @a x, @a y, @a z ) of the start of the line
-        /// segment to choose values along.
-        ///
-        /// @param x x coordinate of the start position.
-        /// @param y y coordinate of the start position.
-        /// @param z z coordinate of the start position.
-        void SetStartPoint (double x, double y, double z)
-        {
-          m_x0 = x;
-          m_y0 = y;
-          m_z0 = z;
-        }
-
-      private:
-
-        /// A flag that specifies whether the value is to be attenuated
-        /// (moved toward 0.0) as the ends of the line segment are approached.
-        bool m_attenuate;
-
-        /// A pointer to the noise module used to generate the output values.
-        const module::Module* m_pModule;
-
-        /// @a x coordinate of the start of the line segment.
-        double m_x0;
-
-        /// @a x coordinate of the end of the line segment.
-        double m_x1;
-
-        /// @a y coordinate of the start of the line segment.
-        double m_y0;
-
-        /// @a y coordinate of the end of the line segment.
-        double m_y1;
-
-        /// @a z coordinate of the start of the line segment.
-        double m_z0;
-
-        /// @a z coordinate of the end of the line segment.
-        double m_z1;
-
-    };
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/model/model.h b/libnoise/noise/src/model/model.h
deleted file mode 100644
--- a/libnoise/noise/src/model/model.h
+++ /dev/null
@@ -1,31 +0,0 @@
-// model.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODEL_H
-#define NOISE_MODEL_H
-
-#include "cylinder.h"
-#include "line.h"
-#include "plane.h"
-#include "sphere.h"
-
-#endif
diff --git a/libnoise/noise/src/model/plane.cpp b/libnoise/noise/src/model/plane.cpp
deleted file mode 100644
--- a/libnoise/noise/src/model/plane.cpp
+++ /dev/null
@@ -1,43 +0,0 @@
-// plane.cpp
-//
-// Copyright (C) 2004 Owen Jacobson
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is ojacobson@lionsanctuary.net
-//
-
-#include "plane.h"
-
-using namespace noise;
-using namespace noise::model;
-
-Plane::Plane ():
-  m_pModule (NULL)
-{
-}
-
-Plane::Plane (const module::Module& module) :
-  m_pModule( &module)
-{
-}
-
-// Told you this was trivial.
-double Plane::GetValue (double x, double z) const
-{
-  assert (m_pModule != NULL);
-  
-  return m_pModule->GetValue (x, 0, z);
-}
diff --git a/libnoise/noise/src/model/plane.h b/libnoise/noise/src/model/plane.h
deleted file mode 100644
--- a/libnoise/noise/src/model/plane.h
+++ /dev/null
@@ -1,121 +0,0 @@
-// plane.h
-//
-// Copyright (C) 2004 Owen Jacobson
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is ojacobson@lionsanctuary.net
-//
-
-#ifndef NOISE_MODEL_PLANE_H
-#define NOISE_MODEL_PLANE_H
-
-#include <assert.h>
-#include "../module/modulebase.h"
-
-namespace noise
-{
-
-  namespace model
-  {
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup models
-    /// @{
-
-    /// Model that defines the surface of a plane.
-    ///
-    /// This model returns an output value from a noise module given the
-    /// coordinates of an input value located on the surface of an ( @a x,
-    /// @a z ) plane.
-    ///
-    /// To generate an output value, pass the ( @a x, @a z ) coordinates of
-    /// an input value to the GetValue() method.
-    ///
-    /// This model is useful for creating:
-    /// - two-dimensional textures
-    /// - terrain height maps for local areas
-    ///
-    /// This plane extends infinitely in both directions.
-    class Plane
-    {
-
-      public:
-
-        /// Constructor.
-        Plane ();
-
-        /// Constructor
-        ///
-        /// @param module The noise module that is used to generate the output
-        /// values.
-        Plane (const module::Module& module);
-
-        /// Returns the noise module that is used to generate the output
-        /// values.
-        ///
-        /// @returns A reference to the noise module.
-        ///
-        /// @pre A noise module was passed to the SetModule() method.
-        const module::Module& GetModule () const
-        {
-          assert (m_pModule != NULL);
-          return *m_pModule;
-        }
-
-        /// Returns the output value from the noise module given the
-        /// ( @a x, @a z ) coordinates of the specified input value located
-        /// on the surface of the plane.
-        ///
-        /// @param x The @a x coordinate of the input value.
-        /// @param z The @a z coordinate of the input value.
-        ///
-        /// @returns The output value from the noise module.
-        ///
-        /// @pre A noise module was passed to the SetModule() method.
-        ///
-        /// This output value is generated by the noise module passed to the
-        /// SetModule() method.
-        double GetValue (double x, double z) const;
-
-        /// Sets the noise module that is used to generate the output values.
-        ///
-        /// @param module The noise module that is used to generate the output
-        /// values.
-        ///
-        /// This noise module must exist for the lifetime of this object,
-        /// until you pass a new noise module to this method.
-        void SetModule (const module::Module& module)
-        {
-          m_pModule = &module;
-        }
-
-      private:
-
-        /// A pointer to the noise module used to generate the output values.
-        const module::Module* m_pModule;
-
-    };
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/model/sphere.cpp b/libnoise/noise/src/model/sphere.cpp
deleted file mode 100644
--- a/libnoise/noise/src/model/sphere.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-// sphere.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../latlon.h"
-#include "sphere.h"
-
-using namespace noise;
-using namespace noise::model;
-
-Sphere::Sphere ():
-  m_pModule (NULL)
-{
-}
-
-Sphere::Sphere (const module::Module& module):
-  m_pModule (&module)
-{
-}
-
-double Sphere::GetValue (double lat, double lon) const
-{
-  assert (m_pModule != NULL);
-
-  double x, y, z;
-  LatLonToXYZ (lat, lon, x, y, z);
-  return m_pModule->GetValue (x, y, z);
-}
diff --git a/libnoise/noise/src/model/sphere.h b/libnoise/noise/src/model/sphere.h
deleted file mode 100644
--- a/libnoise/noise/src/model/sphere.h
+++ /dev/null
@@ -1,131 +0,0 @@
-// sphere.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODEL_SPHERE_H
-#define NOISE_MODEL_SPHERE_H
-
-#include <assert.h>
-#include "../module/modulebase.h"
-
-namespace noise
-{
-
-  namespace model
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup models
-    /// @{
-    
-    /// Model that defines the surface of a sphere.
-    ///
-    /// @image html modelsphere.png
-    ///
-    /// This model returns an output value from a noise module given the
-    /// coordinates of an input value located on the surface of a sphere.
-    ///
-    /// To generate an output value, pass the (latitude, longitude)
-    /// coordinates of an input value to the GetValue() method.
-    ///
-    /// This model is useful for creating:
-    /// - seamless textures that can be mapped onto a sphere
-    /// - terrain height maps for entire planets
-    ///
-    /// This sphere has a radius of 1.0 unit and its center is located at
-    /// the origin.
-    class Sphere
-    {
-
-      public:
-
-        /// Constructor.
-        Sphere ();
-
-        /// Constructor
-        ///
-        /// @param module The noise module that is used to generate the output
-        /// values.
-        Sphere (const module::Module& module);
-
-        /// Returns the noise module that is used to generate the output
-        /// values.
-        ///
-        /// @returns A reference to the noise module.
-        ///
-        /// @pre A noise module was passed to the SetModule() method.
-        const module::Module& GetModule () const
-        {
-          assert (m_pModule != NULL);
-          return *m_pModule;
-        }
-
-        /// Returns the output value from the noise module given the
-        /// (latitude, longitude) coordinates of the specified input value
-        /// located on the surface of the sphere.
-        ///
-        /// @param lat The latitude of the input value, in degrees.
-        /// @param lon The longitude of the input value, in degrees.
-        ///
-        /// @returns The output value from the noise module.
-        ///
-        /// @pre A noise module was passed to the SetModule() method.
-        ///
-        /// This output value is generated by the noise module passed to the
-        /// SetModule() method.
-        ///
-        /// Use a negative latitude if the input value is located on the
-        /// southern hemisphere.
-        ///
-        /// Use a negative longitude if the input value is located on the
-        /// western hemisphere.
-        double GetValue (double lat, double lon) const;
-
-        /// Sets the noise module that is used to generate the output values.
-        ///
-        /// @param module The noise module that is used to generate the output
-        /// values.
-        ///
-        /// This noise module must exist for the lifetime of this object,
-        /// until you pass a new noise module to this method.
-        void SetModule (const module::Module& module)
-        {
-          m_pModule = &module;
-        }
-
-      private:
-
-        /// A pointer to the noise module used to generate the output values.
-        const module::Module* m_pModule;
-
-    };
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/.abs.cpp.swp b/libnoise/noise/src/module/.abs.cpp.swp
deleted file mode 100644
Binary files a/libnoise/noise/src/module/.abs.cpp.swp and /dev/null differ
diff --git a/libnoise/noise/src/module/abs.cpp b/libnoise/noise/src/module/abs.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/abs.cpp
+++ /dev/null
@@ -1,37 +0,0 @@
-// abs.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "abs.h"
-
-using namespace noise::module;
-
-Abs::Abs ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Abs::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  return fabs (m_pSourceModule[0]->GetValue (x, y, z));
-}
diff --git a/libnoise/noise/src/module/abs.h b/libnoise/noise/src/module/abs.h
deleted file mode 100644
--- a/libnoise/noise/src/module/abs.h
+++ /dev/null
@@ -1,76 +0,0 @@
-// abs.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_ABS_H
-#define NOISE_MODULE_ABS_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @defgroup modifiermodules Modifier Modules
-    /// @addtogroup modifiermodules
-    /// @{
-
-    /// Noise module that outputs the absolute value of the output value from
-    /// a source module.
-    ///
-    /// @image html moduleabs.png
-    ///
-    /// This noise module requires one source module.
-    class Abs: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Abs ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/add.cpp b/libnoise/noise/src/module/add.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/add.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-// add.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "add.h"
-
-using namespace noise::module;
-
-Add::Add ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Add::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_pSourceModule[1] != NULL);
-
-  return m_pSourceModule[0]->GetValue (x, y, z)
-       + m_pSourceModule[1]->GetValue (x, y, z);
-}
diff --git a/libnoise/noise/src/module/add.h b/libnoise/noise/src/module/add.h
deleted file mode 100644
--- a/libnoise/noise/src/module/add.h
+++ /dev/null
@@ -1,77 +0,0 @@
-// add.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_ADD_H
-#define NOISE_MODULE_ADD_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-    
-    /// @addtogroup modules
-    /// @{
-    
-    /// @defgroup combinermodules Combiner Modules
-    /// @addtogroup combinermodules
-    /// @{
-    
-    /// Noise module that outputs the sum of the two output values from two
-    /// source modules.
-    ///
-    /// @image html moduleadd.png
-    ///
-    /// This noise module requires two source modules.
-    class Add: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Add ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 2;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/billow.cpp b/libnoise/noise/src/module/billow.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/billow.cpp
+++ /dev/null
@@ -1,74 +0,0 @@
-// billow.cpp
-//
-// Copyright (C) 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "billow.h"
-
-using namespace noise::module;
-
-Billow::Billow ():
-  Module (GetSourceModuleCount ()),
-  m_frequency    (DEFAULT_BILLOW_FREQUENCY   ),
-  m_lacunarity   (DEFAULT_BILLOW_LACUNARITY  ),
-  m_noiseQuality (DEFAULT_BILLOW_QUALITY     ),
-  m_octaveCount  (DEFAULT_BILLOW_OCTAVE_COUNT),
-  m_persistence  (DEFAULT_BILLOW_PERSISTENCE ),
-  m_seed         (DEFAULT_BILLOW_SEED)
-{
-}
-
-double Billow::GetValue (double x, double y, double z) const
-{
-  double value = 0.0;
-  double signal = 0.0;
-  double curPersistence = 1.0;
-  double nx, ny, nz;
-  int seed;
-
-  x *= m_frequency;
-  y *= m_frequency;
-  z *= m_frequency;
-
-  for (int curOctave = 0; curOctave < m_octaveCount; curOctave++) {
-
-    // Make sure that these floating-point values have the same range as a 32-
-    // bit integer so that we can pass them to the coherent-noise functions.
-    nx = MakeInt32Range (x);
-    ny = MakeInt32Range (y);
-    nz = MakeInt32Range (z);
-
-    // Get the coherent-noise value from the input value and add it to the
-    // final result.
-    seed = (m_seed + curOctave) & 0xffffffff;
-    signal = GradientCoherentNoise3D (nx, ny, nz, seed, m_noiseQuality);
-    signal = 2.0 * fabs (signal) - 1.0;
-    value += signal * curPersistence;
-
-    // Prepare the next octave.
-    x *= m_lacunarity;
-    y *= m_lacunarity;
-    z *= m_lacunarity;
-    curPersistence *= m_persistence;
-  }
-  value += 0.5;
-
-  return value;
-}
diff --git a/libnoise/noise/src/module/billow.h b/libnoise/noise/src/module/billow.h
deleted file mode 100644
--- a/libnoise/noise/src/module/billow.h
+++ /dev/null
@@ -1,277 +0,0 @@
-// billow.h
-//
-// Copyright (C) 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_BILLOW_H
-#define NOISE_MODULE_BILLOW_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup generatormodules
-    /// @{
-
-    /// Default frequency for the noise::module::Billow noise module.
-    const double DEFAULT_BILLOW_FREQUENCY = 1.0;
-
-    /// Default lacunarity for the the noise::module::Billow noise module.
-    const double DEFAULT_BILLOW_LACUNARITY = 2.0;
-
-    /// Default number of octaves for the the noise::module::Billow noise
-    /// module.
-    const int DEFAULT_BILLOW_OCTAVE_COUNT = 6;
-
-    /// Default persistence value for the the noise::module::Billow noise
-    /// module.
-    const double DEFAULT_BILLOW_PERSISTENCE = 0.5;
-
-    /// Default noise quality for the the noise::module::Billow noise module.
-    const noise::NoiseQuality DEFAULT_BILLOW_QUALITY = QUALITY_STD;
-
-    /// Default noise seed for the the noise::module::Billow noise module.
-    const int DEFAULT_BILLOW_SEED = 0;
-
-    /// Maximum number of octaves for the the noise::module::Billow noise
-    /// module.
-    const int BILLOW_MAX_OCTAVE = 30;
-
-    /// Noise module that outputs three-dimensional "billowy" noise.
-    ///
-    /// @image html modulebillow.png
-    ///
-    /// This noise module generates "billowy" noise suitable for clouds and
-    /// rocks.
-    ///
-    /// This noise module is nearly identical to noise::module::Perlin except
-    /// this noise module modifies each octave with an absolute-value
-    /// function.  See the documentation of noise::module::Perlin for more
-    /// information.
-    class Billow: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default frequency is set to
-        /// noise::module::DEFAULT_BILLOW_FREQUENCY.
-        ///
-        /// The default lacunarity is set to
-        /// noise::module::DEFAULT_BILLOW_LACUNARITY.
-        ///
-        /// The default number of octaves is set to
-        /// noise::module::DEFAULT_BILLOW_OCTAVE_COUNT.
-        ///
-        /// The default persistence value is set to
-        /// noise::module::DEFAULT_BILLOW_PERSISTENCE.
-        ///
-        /// The default seed value is set to
-        /// noise::module::DEFAULT_BILLOW_SEED.
-        Billow ();
-
-        /// Returns the frequency of the first octave.
-        ///
-        /// @returns The frequency of the first octave.
-        double GetFrequency () const
-        {
-          return m_frequency;
-        }
-
-        /// Returns the lacunarity of the billowy noise.
-        ///
-        /// @returns The lacunarity of the billowy noise.
-        /// 
-        /// The lacunarity is the frequency multiplier between successive
-        /// octaves.
-        double GetLacunarity () const
-        {
-          return m_lacunarity;
-        }
-
-        /// Returns the quality of the billowy noise.
-        ///
-        /// @returns The quality of the billowy noise.
-        ///
-        /// See noise::NoiseQuality for definitions of the various
-        /// coherent-noise qualities.
-        noise::NoiseQuality GetNoiseQuality () const
-        {
-          return m_noiseQuality;
-        }
-
-        /// Returns the number of octaves that generate the billowy noise.
-        ///
-        /// @returns The number of octaves that generate the billowy noise.
-        ///
-        /// The number of octaves controls the amount of detail in the billowy
-        /// noise.
-        int GetOctaveCount () const
-        {
-          return m_octaveCount;
-        }
-
-        /// Returns the persistence value of the billowy noise.
-        ///
-        /// @returns The persistence value of the billowy noise.
-        ///
-        /// The persistence value controls the roughness of the billowy noise.
-        double GetPersistence () const
-        {
-          return m_persistence;
-        }
-
-        /// Returns the seed value used by the billowy-noise function.
-        ///
-        /// @returns The seed value.
-        int GetSeed () const
-        {
-          return m_seed;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 0;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the frequency of the first octave.
-        ///
-        /// @param frequency The frequency of the first octave.
-        void SetFrequency (double frequency)
-        {
-          m_frequency = frequency;
-        }
-
-        /// Sets the lacunarity of the billowy noise.
-        ///
-        /// @param lacunarity The lacunarity of the billowy noise.
-        /// 
-        /// The lacunarity is the frequency multiplier between successive
-        /// octaves.
-        ///
-        /// For best results, set the lacunarity to a number between 1.5 and
-        /// 3.5.
-        void SetLacunarity (double lacunarity)
-        {
-          m_lacunarity = lacunarity;
-        }
-
-        /// Sets the quality of the billowy noise.
-        ///
-        /// @param noiseQuality The quality of the billowy noise.
-        ///
-        /// See noise::NoiseQuality for definitions of the various
-        /// coherent-noise qualities.
-        void SetNoiseQuality (noise::NoiseQuality noiseQuality)
-        {
-          m_noiseQuality = noiseQuality;
-        }
-
-        /// Sets the number of octaves that generate the billowy noise.
-        ///
-        /// @param octaveCount The number of octaves that generate the billowy
-        /// noise.
-        ///
-        /// @pre The number of octaves ranges from 1 to
-        /// noise::module::BILLOW_MAX_OCTAVE.
-        ///
-        /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-        ///
-        /// The number of octaves controls the amount of detail in the billowy
-        /// noise.
-        ///
-        /// The larger the number of octaves, the more time required to
-        /// calculate the billowy-noise value.
-        void SetOctaveCount (int octaveCount)
-        {
-          if (octaveCount < 1 || octaveCount > BILLOW_MAX_OCTAVE) {
-            throw noise::ExceptionInvalidParam ();
-          }
-          m_octaveCount = octaveCount;
-        }
-
-        /// Sets the persistence value of the billowy noise.
-        ///
-        /// @param persistence The persistence value of the billowy noise.
-        ///
-        /// The persistence value controls the roughness of the billowy noise.
-        ///
-        /// For best results, set the persistence value to a number between
-        /// 0.0 and 1.0.
-        void SetPersistence (double persistence)
-        {
-          m_persistence = persistence;
-        }
-
-        /// Sets the seed value used by the billowy-noise function.
-        ///
-        /// @param seed The seed value.
-        void SetSeed (int seed)
-        {
-          m_seed = seed;
-        }
-
-      protected:
-
-        /// Frequency of the first octave.
-        double m_frequency;
-
-        /// Frequency multiplier between successive octaves.
-        double m_lacunarity;
-
-        /// Quality of the billowy noise.
-        noise::NoiseQuality m_noiseQuality;
-
-        /// Total number of octaves that generate the billowy noise.
-        int m_octaveCount;
-
-        /// Persistence value of the billowy noise.
-        double m_persistence;
-
-        /// Seed value used by the billowy-noise function.
-        int m_seed;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/blend.cpp b/libnoise/noise/src/module/blend.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/blend.cpp
+++ /dev/null
@@ -1,43 +0,0 @@
-// blend.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "blend.h"
-#include "../interp.h"
-
-using namespace noise::module;
-
-Blend::Blend ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Blend::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_pSourceModule[1] != NULL);
-  assert (m_pSourceModule[2] != NULL);
-
-  double v0 = m_pSourceModule[0]->GetValue (x, y, z);
-  double v1 = m_pSourceModule[1]->GetValue (x, y, z);
-  double alpha = (m_pSourceModule[2]->GetValue (x, y, z) + 1.0) / 2.0;
-  return LinearInterp (v0, v1, alpha);
-}
diff --git a/libnoise/noise/src/module/blend.h b/libnoise/noise/src/module/blend.h
deleted file mode 100644
--- a/libnoise/noise/src/module/blend.h
+++ /dev/null
@@ -1,144 +0,0 @@
-// blend.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_BLEND_H
-#define NOISE_MODULE_BLEND_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @defgroup selectormodules Selector Modules
-    /// @addtogroup selectormodules
-    /// @{
-
-    /// Noise module that outputs a weighted blend of the output values from
-    /// two source modules given the output value supplied by a control module.
-    ///
-    /// @image html moduleblend.png
-    ///
-    /// Unlike most other noise modules, the index value assigned to a source
-    /// module determines its role in the blending operation:
-    /// - Source module 0 (upper left in the diagram) outputs one of the
-    ///   values to blend.
-    /// - Source module 1 (lower left in the diagram) outputs one of the
-    ///   values to blend.
-    /// - Source module 2 (bottom of the diagram) is known as the <i>control
-    ///   module</i>.  The control module determines the weight of the
-    ///   blending operation.  Negative values weigh the blend towards the
-    ///   output value from the source module with an index value of 0.
-    ///   Positive values weigh the blend towards the output value from the
-    ///   source module with an index value of 1.
-    ///
-    /// An application can pass the control module to the SetControlModule()
-    /// method instead of the SetSourceModule() method.  This may make the
-    /// application code easier to read.
-    ///
-    /// This noise module uses linear interpolation to perform the blending
-    /// operation.
-    ///
-    /// This noise module requires three source modules.
-    class Blend: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Blend ();
-
-        /// Returns the control module.
-        ///
-        /// @returns A reference to the control module.
-        ///
-        /// @pre A control module has been added to this noise module via a
-        /// call to SetSourceModule() or SetControlModule().
-        ///
-        /// @throw noise::ExceptionNoModule See the preconditions for more
-        /// information.
-        ///
-        /// The control module determines the weight of the blending
-        /// operation.  Negative values weigh the blend towards the output
-        /// value from the source module with an index value of 0.  Positive
-        /// values weigh the blend towards the output value from the source
-        /// module with an index value of 1.
-        const Module& GetControlModule () const
-        {
-          if (m_pSourceModule == NULL || m_pSourceModule[2] == NULL) {
-            throw noise::ExceptionNoModule ();
-          }
-          return *(m_pSourceModule[2]);
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 3;
-        }
-
-	      virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the control module.
-        ///
-        /// @param controlModule The control module.
-        ///
-        /// The control module determines the weight of the blending
-        /// operation.  Negative values weigh the blend towards the output
-        /// value from the source module with an index value of 0.  Positive
-        /// values weigh the blend towards the output value from the source
-        /// module with an index value of 1.
-        ///
-        /// This method assigns the control module an index value of 2.
-        /// Passing the control module to this method produces the same
-        /// results as passing the control module to the SetSourceModule()
-        /// method while assigning that noise module an index value of 2.
-        ///
-        /// This control module must exist throughout the lifetime of this
-        /// noise module unless another control module replaces that control
-        /// module.
-        void SetControlModule (const Module& controlModule)
-        {
-          assert (m_pSourceModule != NULL);
-          m_pSourceModule[2] = &controlModule;
-        }
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/cache.cpp b/libnoise/noise/src/module/cache.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/cache.cpp
+++ /dev/null
@@ -1,45 +0,0 @@
-// cache.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "cache.h"
-
-using namespace noise::module;
-
-Cache::Cache ():
-  Module (GetSourceModuleCount ()),
-  m_isCached (false)
-{
-}
-
-double Cache::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  if (!(m_isCached && x == m_xCache && y == m_yCache && z == m_zCache)) {
-    m_cachedValue = m_pSourceModule[0]->GetValue (x, y, z);
-    m_xCache = x;
-    m_yCache = y;
-    m_zCache = z;
-  }
-  m_isCached = true;
-  return m_cachedValue;
-}
diff --git a/libnoise/noise/src/module/cache.h b/libnoise/noise/src/module/cache.h
deleted file mode 100644
--- a/libnoise/noise/src/module/cache.h
+++ /dev/null
@@ -1,118 +0,0 @@
-// cache.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_CACHE_H
-#define NOISE_MODULE_CACHE_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @defgroup miscmodules Miscellaneous Modules
-    /// @addtogroup miscmodules
-    /// @{
-
-    /// Noise module that caches the last output value generated by a source
-    /// module.
-    ///
-    /// If an application passes an input value to the GetValue() method that
-    /// differs from the previously passed-in input value, this noise module
-    /// instructs the source module to calculate the output value.  This
-    /// value, as well as the ( @a x, @a y, @a z ) coordinates of the input
-    /// value, are stored (cached) in this noise module.
-    ///
-    /// If the application passes an input value to the GetValue() method
-    /// that is equal to the previously passed-in input value, this noise
-    /// module returns the cached output value without having the source
-    /// module recalculate the output value.
-    ///
-    /// If an application passes a new source module to the SetSourceModule()
-    /// method, the cache is invalidated.
-    ///
-    /// Caching a noise module is useful if it is used as a source module for
-    /// multiple noise modules.  If a source module is not cached, the source
-    /// module will redundantly calculate the same output value once for each
-    /// noise module in which it is included.
-    ///
-    /// This noise module requires one source module.
-    class Cache: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Cache ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        virtual void SetSourceModule (int index, const Module& sourceModule)
-        {
-          Module::SetSourceModule (index, sourceModule);
-          m_isCached = false;
-        }
-
-      protected:
-
-        /// The cached output value at the cached input value.
-        mutable double m_cachedValue;
-
-        /// Determines if a cached output value is stored in this noise
-        /// module.
-        mutable double m_isCached;
-
-        /// @a x coordinate of the cached input value.
-        mutable double m_xCache;
-
-        /// @a y coordinate of the cached input value.
-        mutable double m_yCache;
-
-        /// @a z coordinate of the cached input value.
-        mutable double m_zCache;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/checkerboard.cpp b/libnoise/noise/src/module/checkerboard.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/checkerboard.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-// checkerboard.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "checkerboard.h"
-
-using namespace noise::module;
-
-Checkerboard::Checkerboard ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Checkerboard::GetValue (double x, double y, double z) const
-{
-  int ix = (int)(floor (MakeInt32Range (x)));
-  int iy = (int)(floor (MakeInt32Range (y)));
-  int iz = (int)(floor (MakeInt32Range (z)));
-  return (ix & 1 ^ iy & 1 ^ iz & 1)? -1.0: 1.0;
-}
diff --git a/libnoise/noise/src/module/checkerboard.h b/libnoise/noise/src/module/checkerboard.h
deleted file mode 100644
--- a/libnoise/noise/src/module/checkerboard.h
+++ /dev/null
@@ -1,81 +0,0 @@
-// checkerboard.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_CHECKERBOARD_H
-#define NOISE_MODULE_CHECKERBOARD_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup generatormodules
-    /// @{
-
-    /// Noise module that outputs a checkerboard pattern.
-    ///
-    /// @image html modulecheckerboard.png
-    ///
-    /// This noise module outputs unit-sized blocks of alternating values.
-    /// The values of these blocks alternate between -1.0 and +1.0.
-    ///
-    /// This noise module is not really useful by itself, but it is often used
-    /// for debugging purposes.
-    ///
-    /// This noise module does not require any source modules.
-    class Checkerboard: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Checkerboard ();
-
-        virtual int GetSourceModuleCount () const
-        {
-        return 0;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/clamp.cpp b/libnoise/noise/src/module/clamp.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/clamp.cpp
+++ /dev/null
@@ -1,54 +0,0 @@
-// clamp.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "clamp.h"
-
-using namespace noise::module;
-
-Clamp::Clamp ():
-  Module (GetSourceModuleCount ()),
-  m_lowerBound (DEFAULT_CLAMP_LOWER_BOUND),
-  m_upperBound (DEFAULT_CLAMP_UPPER_BOUND)
-{
-}
-
-double Clamp::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  double value = m_pSourceModule[0]->GetValue (x, y, z);
-  if (value < m_lowerBound) {
-    return m_lowerBound;
-  } else if (value > m_upperBound) {
-    return m_upperBound;
-  } else {
-    return value;
-  }
-}
-
-void Clamp::SetBounds (double lowerBound, double upperBound)
-{
-  assert (lowerBound < upperBound);
-
-  m_lowerBound = lowerBound;
-  m_upperBound = upperBound;
-}
diff --git a/libnoise/noise/src/module/clamp.h b/libnoise/noise/src/module/clamp.h
deleted file mode 100644
--- a/libnoise/noise/src/module/clamp.h
+++ /dev/null
@@ -1,152 +0,0 @@
-// clamp.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_CLAMP_H
-#define NOISE_MODULE_CLAMP_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup modifiermodules
-    /// @{
-
-    /// Default lower bound of the clamping range for the noise::module::Clamp
-    /// noise module.
-    const double DEFAULT_CLAMP_LOWER_BOUND = -1.0;
-
-    /// Default upper bound of the clamping range for the noise::module::Clamp
-    /// noise module.
-    const double DEFAULT_CLAMP_UPPER_BOUND = 1.0;
-
-    /// Noise module that clamps the output value from a source module to a
-    /// range of values.
-    ///
-    /// @image html moduleclamp.png
-    ///
-    /// The range of values in which to clamp the output value is called the
-    /// <i>clamping range</i>.
-    ///
-    /// If the output value from the source module is less than the lower
-    /// bound of the clamping range, this noise module clamps that value to
-    /// the lower bound.  If the output value from the source module is
-    /// greater than the upper bound of the clamping range, this noise module
-    /// clamps that value to the upper bound.
-    ///
-    /// To specify the upper and lower bounds of the clamping range, call the
-    /// SetBounds() method.
-    ///
-    /// This noise module requires one source module.
-    class Clamp: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default lower bound of the clamping range is set to
-        /// noise::module::DEFAULT_CLAMP_LOWER_BOUND.
-        ///
-        /// The default upper bound of the clamping range is set to
-        /// noise::module::DEFAULT_CLAMP_UPPER_BOUND.
-        Clamp ();
-
-        /// Returns the lower bound of the clamping range.
-        ///
-        /// @returns The lower bound.
-        ///
-        /// If the output value from the source module is less than the lower
-        /// bound of the clamping range, this noise module clamps that value
-        /// to the lower bound.
-        double GetLowerBound () const
-        {
-          return m_lowerBound;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        /// Returns the upper bound of the clamping range.
-        ///
-        /// @returns The upper bound.
-        ///
-        /// If the output value from the source module is greater than the
-        /// upper bound of the clamping range, this noise module clamps that
-        /// value to the upper bound.
-        double GetUpperBound () const
-        {
-          return m_upperBound;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the lower and upper bounds of the clamping range.
-        ///
-        /// @param lowerBound The lower bound.
-        /// @param upperBound The upper bound.
-        ///
-        /// @pre The lower bound must be less than or equal to the
-        /// upper bound.
-        ///
-        /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-        ///
-        /// If the output value from the source module is less than the lower
-        /// bound of the clamping range, this noise module clamps that value
-        /// to the lower bound.  If the output value from the source module
-        /// is greater than the upper bound of the clamping range, this noise
-        /// module clamps that value to the upper bound.
-        void SetBounds (double lowerBound, double upperBound);
-
-      protected:
-
-        /// Lower bound of the clamping range.
-        double m_lowerBound;
-
-        /// Upper bound of the clamping range.
-        double m_upperBound;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/const.cpp b/libnoise/noise/src/module/const.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/const.cpp
+++ /dev/null
@@ -1,31 +0,0 @@
-// const.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "const.h"
-
-using namespace noise::module;
-
-Const::Const ():
-  Module (GetSourceModuleCount ()),
-  m_constValue (DEFAULT_CONST_VALUE)
-{
-}
diff --git a/libnoise/noise/src/module/const.h b/libnoise/noise/src/module/const.h
deleted file mode 100644
--- a/libnoise/noise/src/module/const.h
+++ /dev/null
@@ -1,111 +0,0 @@
-// const.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_CONST_H
-#define NOISE_MODULE_CONST_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @defgroup generatormodules Generator Modules
-    /// @addtogroup generatormodules
-    /// @{
-
-    /// Default constant value for the noise::module::Const noise module.
-    const double DEFAULT_CONST_VALUE = 0.0;
-
-    /// Noise module that outputs a constant value.
-    ///
-    /// @image html moduleconst.png
-    ///
-    /// To specify the constant value, call the SetConstValue() method.
-    ///
-    /// This noise module is not useful by itself, but it is often used as a
-    /// source module for other noise modules.
-    ///
-    /// This noise module does not require any source modules.
-    class Const: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default constant value is set to
-        /// noise::module::DEFAULT_CONST_VALUE.
-        Const ();
-
-        /// Returns the constant output value for this noise module.
-        ///
-        /// @returns The constant output value for this noise module.
-        double GetConstValue () const
-        {
-          return m_constValue;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 0;
-        }
-
-        virtual double GetValue (double x, double y, double z) const
-        {
-          return m_constValue;
-        }
-
-        /// Sets the constant output value for this noise module.
-        ///
-        /// @param constValue The constant output value for this noise module.
-        void SetConstValue (double constValue)
-        {
-          m_constValue = constValue;
-        }
-
-      protected:
-
-        /// Constant value.
-        double m_constValue;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/curve.cpp b/libnoise/noise/src/module/curve.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/curve.cpp
+++ /dev/null
@@ -1,143 +0,0 @@
-// curve.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../interp.h"
-#include "../misc.h"
-#include "curve.h"
-
-using namespace noise::module;
-
-Curve::Curve ():
-  Module (GetSourceModuleCount ()),
-  m_pControlPoints (NULL)
-{
-  m_controlPointCount = 0;
-}
-
-Curve::~Curve ()
-{
-  delete[] m_pControlPoints;
-}
-
-void Curve::AddControlPoint (double inputValue, double outputValue)
-{
-  // Find the insertion point for the new control point and insert the new
-  // point at that position.  The control point array will remain sorted by
-  // input value.
-  int insertionPos = FindInsertionPos (inputValue);
-  InsertAtPos (insertionPos, inputValue, outputValue);
-}
-
-void Curve::ClearAllControlPoints ()
-{
-  delete[] m_pControlPoints;
-  m_pControlPoints = NULL;
-  m_controlPointCount = 0;
-}
-
-int Curve::FindInsertionPos (double inputValue)
-{
-  int insertionPos;
-  for (insertionPos = 0; insertionPos < m_controlPointCount; insertionPos++) {
-    if (inputValue < m_pControlPoints[insertionPos].inputValue) {
-      // We found the array index in which to insert the new control point.
-      // Exit now.
-      break;
-    } else if (inputValue == m_pControlPoints[insertionPos].inputValue) {
-      // Each control point is required to contain a unique input value, so
-      // throw an exception.
-      throw noise::ExceptionInvalidParam ();
-    }
-  }
-  return insertionPos;
-}
-
-double Curve::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_controlPointCount >= 4);
-
-  // Get the output value from the source module.
-  double sourceModuleValue = m_pSourceModule[0]->GetValue (x, y, z);
-
-  // Find the first element in the control point array that has an input value
-  // larger than the output value from the source module.
-  int indexPos;
-  for (indexPos = 0; indexPos < m_controlPointCount; indexPos++) {
-    if (sourceModuleValue < m_pControlPoints[indexPos].inputValue) {
-      break;
-    }
-  }
-
-  // Find the four nearest control points so that we can perform cubic
-  // interpolation.
-  int index0 = ClampValue (indexPos - 2, 0, m_controlPointCount - 1);
-  int index1 = ClampValue (indexPos - 1, 0, m_controlPointCount - 1);
-  int index2 = ClampValue (indexPos    , 0, m_controlPointCount - 1);
-  int index3 = ClampValue (indexPos + 1, 0, m_controlPointCount - 1);
-
-  // If some control points are missing (which occurs if the value from the
-  // source module is greater than the largest input value or less than the
-  // smallest input value of the control point array), get the corresponding
-  // output value of the nearest control point and exit now.
-  if (index1 == index2) {
-    return m_pControlPoints[index1].outputValue;
-  }
-  
-  // Compute the alpha value used for cubic interpolation.
-  double input0 = m_pControlPoints[index1].inputValue;
-  double input1 = m_pControlPoints[index2].inputValue;
-  double alpha = (sourceModuleValue - input0) / (input1 - input0);
-
-  // Now perform the cubic interpolation given the alpha value.
-  return CubicInterp (
-    m_pControlPoints[index0].outputValue,
-    m_pControlPoints[index1].outputValue,
-    m_pControlPoints[index2].outputValue,
-    m_pControlPoints[index3].outputValue,
-    alpha);
-}
-
-void Curve::InsertAtPos (int insertionPos, double inputValue,
-  double outputValue)
-{
-  // Make room for the new control point at the specified position within the
-  // control point array.  The position is determined by the input value of
-  // the control point; the control points must be sorted by input value
-  // within that array.
-  ControlPoint* newControlPoints = new ControlPoint[m_controlPointCount + 1];
-  for (int i = 0; i < m_controlPointCount; i++) {
-    if (i < insertionPos) {
-      newControlPoints[i] = m_pControlPoints[i];
-    } else {
-      newControlPoints[i + 1] = m_pControlPoints[i];
-    }
-  }
-  delete[] m_pControlPoints;
-  m_pControlPoints = newControlPoints;
-  ++m_controlPointCount;
-
-  // Now that we've made room for the new control point within the array, add
-  // the new control point.
-  m_pControlPoints[insertionPos].inputValue  = inputValue ;
-  m_pControlPoints[insertionPos].outputValue = outputValue;
-}
diff --git a/libnoise/noise/src/module/curve.h b/libnoise/noise/src/module/curve.h
deleted file mode 100644
--- a/libnoise/noise/src/module/curve.h
+++ /dev/null
@@ -1,197 +0,0 @@
-// curve.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_CURVE_H
-#define NOISE_MODULE_CURVE_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// This structure defines a control point.
-    ///
-    /// Control points are used for defining splines.
-    struct ControlPoint
-    {
-
-      /// The input value.
-      double inputValue;
-
-      /// The output value that is mapped from the input value.
-      double outputValue;
-
-    };
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup modifiermodules
-    /// @{
-
-    /// Noise module that maps the output value from a source module onto an
-    /// arbitrary function curve.
-    ///
-    /// @image html modulecurve.png
-    ///
-    /// This noise module maps the output value from the source module onto an
-    /// application-defined curve.  This curve is defined by a number of
-    /// <i>control points</i>; each control point has an <i>input value</i>
-    /// that maps to an <i>output value</i>.  Refer to the following
-    /// illustration:
-    ///
-    /// @image html curve.png
-    ///
-    /// To add the control points to this curve, call the AddControlPoint()
-    /// method.
-    ///
-    /// Since this curve is a cubic spline, an application must add a minimum
-    /// of four control points to the curve.  If this is not done, the
-    /// GetValue() method fails.  Each control point can have any input and
-    /// output value, although no two control points can have the same input
-    /// value.  There is no limit to the number of control points that can be
-    /// added to the curve.  
-    ///
-    /// This noise module requires one source module.
-    class Curve: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Curve ();
-
-        /// Destructor.
-        ~Curve ();
-
-        /// Adds a control point to the curve.
-        ///
-        /// @param inputValue The input value stored in the control point.
-        /// @param outputValue The output value stored in the control point.
-        ///
-        /// @pre No two control points have the same input value.
-        ///
-        /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-        ///
-        /// It does not matter which order these points are added.
-        void AddControlPoint (double inputValue, double outputValue);
-
-        /// Deletes all the control points on the curve.
-        ///
-        /// @post All points on the curve are deleted.
-        void ClearAllControlPoints ();
-
-        /// Returns a pointer to the array of control points on the curve.
-        ///
-        /// @returns A pointer to the array of control points.
-        ///
-        /// Before calling this method, call GetControlPointCount() to
-        /// determine the number of control points in this array.
-        ///
-        /// It is recommended that an application does not store this pointer
-        /// for later use since the pointer to the array may change if the
-        /// application calls another method of this object.
-        const ControlPoint* GetControlPointArray () const
-        {
-          return m_pControlPoints;
-        }
-
-        /// Returns the number of control points on the curve.
-        ///
-        /// @returns The number of control points on the curve.
-        int GetControlPointCount () const
-        {
-          return m_controlPointCount;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-      protected:
-
-        /// Determines the array index in which to insert the control point
-        /// into the internal control point array.
-        ///
-        /// @param inputValue The input value of the control point.
-        ///
-        /// @returns The array index in which to insert the control point.
-        ///
-        /// @pre No two control points have the same input value.
-        ///
-        /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-        ///
-        /// By inserting the control point at the returned array index, this
-        /// class ensures that the control point array is sorted by input
-        /// value.  The code that maps a value onto the curve requires a
-        /// sorted control point array.
-        int FindInsertionPos (double inputValue);
-
-        /// Inserts the control point at the specified position in the
-        /// internal control point array.
-        ///
-        /// @param insertionPos The zero-based array position in which to
-        /// insert the control point.
-        /// @param inputValue The input value stored in the control point.
-        /// @param outputValue The output value stored in the control point.
-        ///
-        /// To make room for this new control point, this method reallocates
-        /// the control point array and shifts all control points occurring
-        /// after the insertion position up by one.
-        ///
-        /// Because the curve mapping algorithm used by this noise module
-        /// requires that all control points in the array must be sorted by
-        /// input value, the new control point should be inserted at the
-        /// position in which the order is still preserved.
-        void InsertAtPos (int insertionPos, double inputValue,
-          double outputValue);
-
-        /// Number of control points on the curve.
-        int m_controlPointCount;
-
-        /// Array that stores the control points.
-        ControlPoint* m_pControlPoints;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/cylinders.cpp b/libnoise/noise/src/module/cylinders.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/cylinders.cpp
+++ /dev/null
@@ -1,44 +0,0 @@
-// cylinders.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../misc.h"
-#include "cylinders.h"
-
-using namespace noise::module;
-
-Cylinders::Cylinders ():
-  Module (GetSourceModuleCount ()),
-  m_frequency (DEFAULT_CYLINDERS_FREQUENCY)
-{
-}
-
-double Cylinders::GetValue (double x, double y, double z) const
-{
-  x *= m_frequency;
-  z *= m_frequency;
-
-  double distFromCenter = sqrt (x * x + z * z);
-  double distFromSmallerSphere = distFromCenter - floor (distFromCenter);
-  double distFromLargerSphere = 1.0 - distFromSmallerSphere;
-  double nearestDist = GetMin (distFromSmallerSphere, distFromLargerSphere);
-  return 1.0 - (nearestDist * 4.0); // Puts it in the -1.0 to +1.0 range.
-}
diff --git a/libnoise/noise/src/module/cylinders.h b/libnoise/noise/src/module/cylinders.h
deleted file mode 100644
--- a/libnoise/noise/src/module/cylinders.h
+++ /dev/null
@@ -1,129 +0,0 @@
-// cylinders.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_CYLINDERS_H
-#define NOISE_MODULE_CYLINDERS_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup generatormodules
-    /// @{
-
-    /// Default frequency value for the noise::module::Cylinders noise module.
-    const double DEFAULT_CYLINDERS_FREQUENCY = 1.0;
-
-    /// Noise module that outputs concentric cylinders.
-    ///
-    /// @image html modulecylinders.png
-    ///
-    /// This noise module outputs concentric cylinders centered on the origin.
-    /// These cylinders are oriented along the @a y axis similar to the
-    /// concentric rings of a tree.  Each cylinder extends infinitely along
-    /// the @a y axis.
-    ///
-    /// The first cylinder has a radius of 1.0.  Each subsequent cylinder has
-    /// a radius that is 1.0 unit larger than the previous cylinder.
-    ///
-    /// The output value from this noise module is determined by the distance
-    /// between the input value and the the nearest cylinder surface.  The
-    /// input values that are located on a cylinder surface are given the
-    /// output value 1.0 and the input values that are equidistant from two
-    /// cylinder surfaces are given the output value -1.0.
-    ///
-    /// An application can change the frequency of the concentric cylinders.
-    /// Increasing the frequency reduces the distances between cylinders.  To
-    /// specify the frequency, call the SetFrequency() method.
-    ///
-    /// This noise module, modified with some low-frequency, low-power
-    /// turbulence, is useful for generating wood-like textures.
-    ///
-    /// This noise module does not require any source modules.
-    class Cylinders: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default frequency is set to
-        /// noise::module::DEFAULT_CYLINDERS_FREQUENCY.
-        Cylinders ();
-
-        /// Returns the frequency of the concentric cylinders.
-        ///
-        /// @returns The frequency of the concentric cylinders.
-        ///
-        /// Increasing the frequency increases the density of the concentric
-        /// cylinders, reducing the distances between them.
-        double GetFrequency () const
-        {
-          return m_frequency;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 0;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the frequenct of the concentric cylinders.
-        ///
-        /// @param frequency The frequency of the concentric cylinders.
-        ///
-        /// Increasing the frequency increases the density of the concentric
-        /// cylinders, reducing the distances between them.
-        void SetFrequency (double frequency)
-        {
-          m_frequency = frequency;
-        }
-
-      protected:
-
-        /// Frequency of the concentric cylinders.
-        double m_frequency;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/displace.cpp b/libnoise/noise/src/module/displace.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/displace.cpp
+++ /dev/null
@@ -1,48 +0,0 @@
-// displace.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "displace.h"
-
-using namespace noise::module;
-
-Displace::Displace ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Displace::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_pSourceModule[1] != NULL);
-  assert (m_pSourceModule[2] != NULL);
-  assert (m_pSourceModule[3] != NULL);
-
-  // Get the output values from the three displacement modules.  Add each
-  // value to the corresponding coordinate in the input value.
-  double xDisplace = x + (m_pSourceModule[1]->GetValue (x, y, z));
-  double yDisplace = y + (m_pSourceModule[2]->GetValue (x, y, z));
-  double zDisplace = z + (m_pSourceModule[3]->GetValue (x, y, z));
-
-  // Retrieve the output value using the offsetted input value instead of
-  // the original input value.
-  return m_pSourceModule[0]->GetValue (xDisplace, yDisplace, zDisplace);
-}
diff --git a/libnoise/noise/src/module/displace.h b/libnoise/noise/src/module/displace.h
deleted file mode 100644
--- a/libnoise/noise/src/module/displace.h
+++ /dev/null
@@ -1,259 +0,0 @@
-// displace.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_DISPLACE_H
-#define NOISE_MODULE_DISPLACE_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @defgroup transformermodules Transformer Modules
-    /// @addtogroup transformermodules
-    /// @{
-
-    /// Noise module that uses three source modules to displace each
-    /// coordinate of the input value before returning the output value from
-    /// a source module.
-    ///
-    /// @image html moduledisplace.png
-    ///
-    /// Unlike most other noise modules, the index value assigned to a source
-    /// module determines its role in the displacement operation:
-    /// - Source module 0 (left in the diagram) outputs a value.
-    /// - Source module 1 (lower left in the diagram) specifies the offset to
-    ///   apply to the @a x coordinate of the input value.
-    /// - Source module 2 (lower center in the diagram) specifies the
-    ///   offset to apply to the @a y coordinate of the input value.
-    /// - Source module 3 (lower right in the diagram) specifies the offset
-    ///   to apply to the @a z coordinate of the input value.
-    ///
-    /// The GetValue() method modifies the ( @a x, @a y, @a z ) coordinates of
-    /// the input value using the output values from the three displacement
-    /// modules before retrieving the output value from the source module.
-    ///
-    /// The noise::module::Turbulence noise module is a special case of the
-    /// displacement module; internally, there are three Perlin-noise modules
-    /// that perform the displacement operation.
-    ///
-    /// This noise module requires four source modules.
-    class Displace: public Module
-    {
-
-      public:
-
-      /// Constructor.
-      Displace ();
-
-      virtual int GetSourceModuleCount () const
-      {
-        return 4;
-      }
-
-      virtual double GetValue (double x, double y, double z) const;
-
-      /// Returns the @a x displacement module.
-      ///
-      /// @returns A reference to the @a x displacement module.
-      ///
-      /// @pre This displacement module has been added to this noise module
-      /// via a call to SetSourceModule() or SetXDisplaceModule().
-      ///
-      /// @throw noise::ExceptionNoModule See the preconditions for more
-      /// information.
-      ///
-      /// The GetValue() method displaces the input value by adding the output
-      /// value from this displacement module to the @a x coordinate of the
-      /// input value before returning the output value from the source
-      /// module.
-      const Module& GetXDisplaceModule () const
-      {
-        if (m_pSourceModule == NULL || m_pSourceModule[1] == NULL) {
-          throw noise::ExceptionNoModule ();
-        }
-        return *(m_pSourceModule[1]);
-      }
-
-      /// Returns the @a y displacement module.
-      ///
-      /// @returns A reference to the @a y displacement module.
-      ///
-      /// @pre This displacement module has been added to this noise module
-      /// via a call to SetSourceModule() or SetYDisplaceModule().
-      ///
-      /// @throw noise::ExceptionNoModule See the preconditions for more
-      /// information.
-      ///
-      /// The GetValue() method displaces the input value by adding the output
-      /// value from this displacement module to the @a y coordinate of the
-      /// input value before returning the output value from the source
-      /// module.
-      const Module& GetYDisplaceModule () const
-      {
-        if (m_pSourceModule == NULL || m_pSourceModule[2] == NULL) {
-          throw noise::ExceptionNoModule ();
-        }
-        return *(m_pSourceModule[2]);
-      }
-
-      /// Returns the @a z displacement module.
-      ///
-      /// @returns A reference to the @a z displacement module.
-      ///
-      /// @pre This displacement module has been added to this noise module
-      /// via a call to SetSourceModule() or SetZDisplaceModule().
-      ///
-      /// @throw noise::ExceptionNoModule See the preconditions for more
-      /// information.
-      ///
-      /// The GetValue() method displaces the input value by adding the output
-      /// value from this displacement module to the @a z coordinate of the
-      /// input value before returning the output value from the source
-      /// module.
-      const Module& GetZDisplaceModule () const
-      {
-        if (m_pSourceModule == NULL || m_pSourceModule[3] == NULL) {
-          throw noise::ExceptionNoModule ();
-        }
-        return *(m_pSourceModule[3]);
-      }
-
-      /// Sets the @a x, @a y, and @a z displacement modules.
-      ///
-      /// @param xDisplaceModule Displacement module that displaces the @a x
-      /// coordinate of the input value.
-      /// @param yDisplaceModule Displacement module that displaces the @a y
-      /// coordinate of the input value.
-      /// @param zDisplaceModule Displacement module that displaces the @a z
-      /// coordinate of the input value.
-      ///
-      /// The GetValue() method displaces the input value by adding the output
-      /// value from each of the displacement modules to the corresponding
-      /// coordinates of the input value before returning the output value
-      /// from the source module.
-      ///
-      /// This method assigns an index value of 1 to the @a x displacement
-      /// module, an index value of 2 to the @a y displacement module, and an
-      /// index value of 3 to the @a z displacement module.
-      ///
-      /// These displacement modules must exist throughout the lifetime of
-      /// this noise module unless another displacement module replaces it.
-      void SetDisplaceModules (const Module& xDisplaceModule,
-        const Module& yDisplaceModule, const Module& zDisplaceModule)
-      {
-        SetXDisplaceModule (xDisplaceModule);
-        SetYDisplaceModule (yDisplaceModule);
-        SetZDisplaceModule (zDisplaceModule);
-      }
-
-      /// Sets the @a x displacement module.
-      ///
-      /// @param xDisplaceModule Displacement module that displaces the @a x
-      /// coordinate.
-      ///
-      /// The GetValue() method displaces the input value by adding the output
-      /// value from this displacement module to the @a x coordinate of the
-      /// input value before returning the output value from the source
-      /// module.
-      ///
-      /// This method assigns an index value of 1 to the @a x displacement
-      /// module.  Passing this displacement module to this method produces
-      /// the same results as passing this displacement module to the
-      /// SetSourceModule() method while assigning it an index value of 1.
-      ///
-      /// This displacement module must exist throughout the lifetime of this
-      /// noise module unless another displacement module replaces it.
-      void SetXDisplaceModule (const Module& xDisplaceModule)
-      {
-        assert (m_pSourceModule != NULL);
-        m_pSourceModule[1] = &xDisplaceModule;
-      }
-
-      /// Sets the @a y displacement module.
-      ///
-      /// @param yDisplaceModule Displacement module that displaces the @a y
-      /// coordinate.
-      ///
-      /// The GetValue() method displaces the input value by adding the output
-      /// value from this displacement module to the @a y coordinate of the
-      /// input value before returning the output value from the source
-      /// module.
-      ///
-      /// This method assigns an index value of 2 to the @a y displacement
-      /// module.  Passing this displacement module to this method produces
-      /// the same results as passing this displacement module to the
-      /// SetSourceModule() method while assigning it an index value of 2.
-      ///
-      /// This displacement module must exist throughout the lifetime of this
-      /// noise module unless another displacement module replaces it.
-      void SetYDisplaceModule (const Module& yDisplaceModule)
-      {
-        assert (m_pSourceModule != NULL);
-        m_pSourceModule[2] = &yDisplaceModule;
-      }
-
-      /// Sets the @a z displacement module.
-      ///
-      /// @param zDisplaceModule Displacement module that displaces the @a z
-      /// coordinate.
-      ///
-      /// The GetValue() method displaces the input value by adding the output
-      /// value from this displacement module to the @a z coordinate of the
-      /// input value before returning the output value from the source
-      /// module.
-      ///
-      /// This method assigns an index value of 3 to the @a z displacement
-      /// module.  Passing this displacement module to this method produces
-      /// the same results as passing this displacement module to the
-      /// SetSourceModule() method while assigning it an index value of 3.
-      ///
-      /// This displacement module must exist throughout the lifetime of this
-      /// noise module unless another displacement module replaces it.
-      void SetZDisplaceModule (const Module& zDisplaceModule)
-      {
-        assert (m_pSourceModule != NULL);
-        m_pSourceModule[3] = &zDisplaceModule;
-      }
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/exponent.cpp b/libnoise/noise/src/module/exponent.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/exponent.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-// exponent.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "exponent.h"
-
-using namespace noise::module;
-
-Exponent::Exponent ():
-  Module (GetSourceModuleCount ()),
-  m_exponent (DEFAULT_EXPONENT)
-{
-}
-
-double Exponent::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  double value = m_pSourceModule[0]->GetValue (x, y, z);
-  return (pow (fabs ((value + 1.0) / 2.0), m_exponent) * 2.0 - 1.0);
-}
diff --git a/libnoise/noise/src/module/exponent.h b/libnoise/noise/src/module/exponent.h
deleted file mode 100644
--- a/libnoise/noise/src/module/exponent.h
+++ /dev/null
@@ -1,119 +0,0 @@
-// exponent.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_EXPONENT_H
-#define NOISE_MODULE_EXPONENT_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup modifiermodules
-    /// @{
-
-    /// Default exponent for the noise::module::Exponent noise module.
-    const double DEFAULT_EXPONENT = 1.0;
-
-    /// Noise module that maps the output value from a source module onto an
-    /// exponential curve.
-    ///
-    /// @image html moduleexponent.png
-    ///
-    /// Because most noise modules will output values that range from -1.0 to
-    /// +1.0, this noise module first normalizes this output value (the range
-    /// becomes 0.0 to 1.0), maps that value onto an exponential curve, then
-    /// rescales that value back to the original range.
-    ///
-    /// This noise module requires one source module.
-    class Exponent: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default exponent is set to noise::module::DEFAULT_EXPONENT.
-        Exponent ();
-
-        /// Returns the exponent value to apply to the output value from the
-        /// source module.
-        ///
-        /// @returns The exponent value.
-        ///
-        /// Because most noise modules will output values that range from -1.0
-        /// to +1.0, this noise module first normalizes this output value (the
-        /// range becomes 0.0 to 1.0), maps that value onto an exponential
-        /// curve, then rescales that value back to the original range.
-        double GetExponent () const
-        {
-          return m_exponent;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the exponent value to apply to the output value from the
-        /// source module.
-        ///
-        /// @param exponent The exponent value.
-        ///
-        /// Because most noise modules will output values that range from -1.0
-        /// to +1.0, this noise module first normalizes this output value (the
-        /// range becomes 0.0 to 1.0), maps that value onto an exponential
-        /// curve, then rescales that value back to the original range.
-        void SetExponent (double exponent)
-        {
-          m_exponent = exponent;
-        }
-
-      protected:
-
-        /// Exponent to apply to the output value from the source module.
-        double m_exponent;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/invert.cpp b/libnoise/noise/src/module/invert.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/invert.cpp
+++ /dev/null
@@ -1,37 +0,0 @@
-// invert.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "invert.h"
-
-using namespace noise::module;
-
-Invert::Invert ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Invert::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  return -(m_pSourceModule[0]->GetValue (x, y, z));
-}
diff --git a/libnoise/noise/src/module/invert.h b/libnoise/noise/src/module/invert.h
deleted file mode 100644
--- a/libnoise/noise/src/module/invert.h
+++ /dev/null
@@ -1,75 +0,0 @@
-// invert.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_INVERT_H
-#define NOISE_MODULE_INVERT_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup modifiermodules
-    /// @{
-
-    /// Noise module that inverts the output value from a source module.
-    ///
-    /// @image html moduleinvert.png
-    ///
-    /// This noise module requires one source module.
-    class Invert: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Invert ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/max.cpp b/libnoise/noise/src/module/max.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/max.cpp
+++ /dev/null
@@ -1,41 +0,0 @@
-// max.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../misc.h"
-#include "max.h"
-
-using namespace noise::module;
-
-Max::Max ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Max::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_pSourceModule[1] != NULL);
-
-  double v0 = m_pSourceModule[0]->GetValue (x, y, z);
-  double v1 = m_pSourceModule[1]->GetValue (x, y, z);
-  return GetMax (v0, v1);
-}
diff --git a/libnoise/noise/src/module/max.h b/libnoise/noise/src/module/max.h
deleted file mode 100644
--- a/libnoise/noise/src/module/max.h
+++ /dev/null
@@ -1,76 +0,0 @@
-// max.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_MAX_H
-#define NOISE_MODULE_MAX_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup combinermodules
-    /// @{
-
-    /// Noise module that outputs the larger of the two output values from two
-    /// source modules.
-    ///
-    /// @image html modulemax.png
-    ///
-    /// This noise module requires two source modules.
-    class Max: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Max ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 2;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/min.cpp b/libnoise/noise/src/module/min.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/min.cpp
+++ /dev/null
@@ -1,41 +0,0 @@
-// min.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../misc.h"
-#include "min.h"
-
-using namespace noise::module;
-
-Min::Min ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Min::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_pSourceModule[1] != NULL);
-
-  double v0 = m_pSourceModule[0]->GetValue (x, y, z);
-  double v1 = m_pSourceModule[1]->GetValue (x, y, z);
-  return GetMin (v0, v1);
-}
diff --git a/libnoise/noise/src/module/min.h b/libnoise/noise/src/module/min.h
deleted file mode 100644
--- a/libnoise/noise/src/module/min.h
+++ /dev/null
@@ -1,76 +0,0 @@
-// min.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_MIN_H
-#define NOISE_MODULE_MIN_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup combinermodules
-    /// @{
-
-    /// Noise module that outputs the smaller of the two output values from
-    /// two source modules.
-    ///
-    /// @image html modulemin.png
-    ///
-    /// This noise module requires two source modules.
-    class Min: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Min ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 2;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/module.h b/libnoise/noise/src/module/module.h
deleted file mode 100644
--- a/libnoise/noise/src/module/module.h
+++ /dev/null
@@ -1,55 +0,0 @@
-// module.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_H
-#define NOISE_MODULE_H
-
-#include "add.h"
-#include "abs.h"
-#include "billow.h"
-#include "blend.h"
-#include "cache.h"
-#include "checkerboard.h"
-#include "clamp.h"
-#include "const.h"
-#include "curve.h"
-#include "cylinders.h"
-#include "displace.h"
-#include "exponent.h"
-#include "invert.h"
-#include "max.h"
-#include "min.h"
-#include "multiply.h"
-#include "perlin.h"
-#include "power.h"
-#include "ridgedmulti.h"
-#include "rotatepoint.h"
-#include "scalebias.h"
-#include "scalepoint.h"
-#include "select.h"
-#include "spheres.h"
-#include "terrace.h"
-#include "translatepoint.h"
-#include "turbulence.h"
-#include "voronoi.h"
-
-#endif
diff --git a/libnoise/noise/src/module/modulebase.cpp b/libnoise/noise/src/module/modulebase.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/modulebase.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-// modulebase.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "modulebase.h"
-
-using namespace noise::module;
-
-Module::Module (int sourceModuleCount)
-{
-  m_pSourceModule = NULL;
-
-  // Create an array of pointers to all source modules required by this
-  // noise module.  Set these pointers to NULL.
-  if (sourceModuleCount > 0) {
-    m_pSourceModule = new const Module*[sourceModuleCount];
-    for (int i = 0; i < sourceModuleCount; i++) {
-      m_pSourceModule[i] = NULL;
-    }
-  } else {
-    m_pSourceModule = NULL;
-  }
-}
-
-Module::~Module ()
-{
-  delete[] m_pSourceModule;
-}
diff --git a/libnoise/noise/src/module/modulebase.h b/libnoise/noise/src/module/modulebase.h
deleted file mode 100644
--- a/libnoise/noise/src/module/modulebase.h
+++ /dev/null
@@ -1,366 +0,0 @@
-// modulebase.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULEBASE_H
-#define NOISE_MODULEBASE_H
-
-#include <stdlib.h>
-#include <assert.h>
-#include <math.h>
-#include "../basictypes.h"
-#include "../exception.h"
-#include "../noisegen.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @defgroup modules Noise Modules
-    /// @addtogroup modules
-    /// @{
-
-    /// Abstract base class for noise modules.
-    ///
-    /// A <i>noise module</i> is an object that calculates and outputs a value
-    /// given a three-dimensional input value.
-    ///
-    /// Each type of noise module uses a specific method to calculate an
-    /// output value.  Some of these methods include:
-    ///
-    /// - Calculating a value using a coherent-noise function or some other
-    ///   mathematical function.
-    /// - Mathematically changing the output value from another noise module
-    ///   in various ways.
-    /// - Combining the output values from two noise modules in various ways.
-    ///
-    /// An application can use the output values from these noise modules in
-    /// the following ways:
-    ///
-    /// - It can be used as an elevation value for a terrain height map
-    /// - It can be used as a grayscale (or an RGB-channel) value for a
-    ///   procedural texture
-    /// - It can be used as a position value for controlling the movement of a
-    ///   simulated lifeform.
-    ///
-    /// A noise module defines a near-infinite 3-dimensional texture.  Each
-    /// position in this "texture" has a specific value.
-    ///
-    /// <b>Combining noise modules</b>
-    ///
-    /// Noise modules can be combined with other noise modules to generate
-    /// complex output values.  A noise module that is used as a source of
-    /// output values for another noise module is called a <i>source
-    /// module</i>.  Each of these source modules may be connected to other
-    /// source modules, and so on.
-    ///
-    /// There is no limit to the number of noise modules that can be connected
-    /// together in this way.  However, each connected noise module increases
-    /// the time required to calculate an output value.
-    ///
-    /// <b>Noise-module categories</b>
-    ///
-    /// The noise module classes that are included in libnoise can be roughly
-    /// divided into five categories.
-    ///
-    /// <i>Generator Modules</i>
-    ///
-    /// A generator module outputs a value generated by a coherent-noise
-    /// function or some other mathematical function.
-    ///
-    /// Examples of generator modules include:
-    /// - noise::module::Const: Outputs a constant value.
-    /// - noise::module::Perlin: Outputs a value generated by a Perlin-noise
-    ///   function.
-    /// - noise::module::Voronoi: Outputs a value generated by a Voronoi-cell
-    ///   function.
-    ///
-    /// <i>Modifier Modules</i>
-    ///
-    /// A modifer module mathematically modifies the output value from a
-    /// source module.
-    ///
-    /// Examples of modifier modules include:
-    /// - noise::module::Curve: Maps the output value from the source module
-    ///   onto an arbitrary function curve.
-    /// - noise::module::Invert: Inverts the output value from the source
-    ///   module.
-    ///
-    /// <i>Combiner Modules</i>
-    ///
-    /// A combiner module mathematically combines the output values from two
-    /// or more source modules together.
-    ///
-    /// Examples of combiner modules include:
-    /// - noise::module::Add: Adds the two output values from two source
-    ///   modules.
-    /// - noise::module::Max: Outputs the larger of the two output values from
-    ///   two source modules.
-    ///
-    /// <i>Selector Modules</i>
-    ///
-    /// A selector module uses the output value from a <i>control module</i>
-    /// to specify how to combine the output values from its source modules.
-    ///
-    /// Examples of selector modules include:
-    /// - noise::module::Blend: Outputs a value that is linearly interpolated
-    ///   between the output values from two source modules; the interpolation
-    ///   weight is determined by the output value from the control module.
-    /// - noise::module::Select: Outputs the value selected from one of two
-    ///   source modules chosen by the output value from a control module.
-    ///
-    /// <i>Transformer Modules</i>
-    ///
-    /// A transformer module applies a transformation to the coordinates of
-    /// the input value before retrieving the output value from the source
-    /// module.  A transformer module does not modify the output value.
-    ///
-    /// Examples of transformer modules include:
-    /// - RotatePoint: Rotates the coordinates of the input value around the
-    ///   origin before retrieving the output value from the source module.
-    /// - ScalePoint: Multiplies each coordinate of the input value by a
-    ///   constant value before retrieving the output value from the source
-    ///   module.
-    ///
-    /// <b>Connecting source modules to a noise module</b>
-    ///
-    /// An application connects a source module to a noise module by passing
-    /// the source module to the SetSourceModule() method.
-    ///
-    /// The application must also pass an <i>index value</i> to
-    /// SetSourceModule() as well.  An index value is a numeric identifier for
-    /// that source module.  Index values are consecutively numbered starting
-    /// at zero.
-    ///
-    /// To retrieve a reference to a source module, pass its index value to
-    /// the GetSourceModule() method.
-    ///
-    /// Each noise module requires the attachment of a certain number of
-    /// source modules before it can output a value.  For example, the
-    /// noise::module::Add module requires two source modules, while the
-    /// noise::module::Perlin module requires none.  Call the
-    /// GetSourceModuleCount() method to retrieve the number of source modules
-    /// required by that module.
-    ///
-    /// For non-selector modules, it usually does not matter which index value
-    /// an application assigns to a particular source module, but for selector
-    /// modules, the purpose of a source module is defined by its index value.
-    /// For example, consider the noise::module::Select noise module, which
-    /// requires three source modules.  The control module is the source
-    /// module assigned an index value of 2.  The control module determines
-    /// whether the noise module will output the value from the source module
-    /// assigned an index value of 0 or the output value from the source
-    /// module assigned an index value of 1.
-    ///
-    /// <b>Generating output values with a noise module</b>
-    ///
-    /// Once an application has connected all required source modules to a
-    /// noise module, the application can now begin to generate output values
-    /// with that noise module.
-    ///
-    /// To generate an output value, pass the ( @a x, @a y, @a z ) coordinates
-    /// of an input value to the GetValue() method.
-    ///
-    /// <b>Using a noise module to generate terrain height maps or textures</b>
-    ///
-    /// One way to generate a terrain height map or a texture is to first
-    /// allocate a 2-dimensional array of floating-point values.  For each
-    /// array element, pass the array subscripts as @a x and @a y coordinates
-    /// to the GetValue() method (leaving the @a z coordinate set to zero) and
-    /// place the resulting output value into the array element.
-    ///
-    /// <b>Creating your own noise modules</b>
-    ///
-    /// Create a class that publicly derives from noise::module::Module.
-    ///
-    /// In the constructor, call the base class' constructor while passing the
-    /// return value from GetSourceModuleCount() to it.
-    ///
-    /// Override the GetSourceModuleCount() pure virtual method.  From this
-    /// method, return the number of source modules required by your noise
-    /// module.
-    ///
-    /// Override the GetValue() pure virtual method.  For generator modules,
-    /// calculate and output a value given the coordinates of the input value.
-    /// For other modules, retrieve the output values from each source module
-    /// referenced in the protected @a m_pSourceModule array, mathematically
-    /// combine those values, and return the combined value.
-    ///
-    /// When developing a noise module, you must ensure that your noise module
-    /// does not modify any source module or control module connected to it; a
-    /// noise module can only modify the output value from those source
-    /// modules.  You must also ensure that if an application fails to connect
-    /// all required source modules via the SetSourceModule() method and then
-    /// attempts to call the GetValue() method, your module will raise an
-    /// assertion.
-    ///
-    /// It shouldn't be too difficult to create your own noise module.  If you
-    /// still have some problems, take a look at the source code for
-    /// noise::module::Add, which is a very simple noise module.
-    class Module
-    {
-
-      public:
-
-        /// Constructor.
-        Module (int sourceModuleCount);
-
-        /// Destructor.
-        virtual ~Module ();
-
-        /// Returns a reference to a source module connected to this noise
-        /// module.
-        ///
-        /// @param index The index value assigned to the source module.
-        ///
-        /// @returns A reference to the source module.
-        ///
-        /// @pre The index value ranges from 0 to one less than the number of
-        /// source modules required by this noise module.
-        /// @pre A source module with the specified index value has been added
-        /// to this noise module via a call to SetSourceModule().
-        ///
-        /// @throw noise::ExceptionNoModule See the preconditions for more
-        /// information.
-        ///
-        /// Each noise module requires the attachment of a certain number of
-        /// source modules before an application can call the GetValue()
-        /// method.
-        virtual const Module& GetSourceModule (int index) const
-        {
-          assert (m_pSourceModule != NULL);
-
-          // The following fix was provided by Will Hawkins:
-          //
-          //   m_pSourceModule[index] != NULL
-          //
-          // was incorrect; it should be:
-          //
-          //   m_pSourceModule[index] == NULL
-          if (index >= GetSourceModuleCount () || index < 0
-            || m_pSourceModule[index] == NULL) {
-            throw noise::ExceptionNoModule ();
-          }
-          return *(m_pSourceModule[index]);
-        }
-
-        /// Returns the number of source modules required by this noise
-        /// module.
-        ///
-        /// @returns The number of source modules required by this noise
-        /// module.
-        virtual int GetSourceModuleCount () const = 0;
-
-        /// Generates an output value given the coordinates of the specified
-        /// input value.
-        ///
-        /// @param x The @a x coordinate of the input value.
-        /// @param y The @a y coordinate of the input value.
-        /// @param z The @a z coordinate of the input value.
-        ///
-        /// @returns The output value.
-        ///
-        /// @pre All source modules required by this noise module have been
-        /// passed to the SetSourceModule() method.
-        ///
-        /// Before an application can call this method, it must first connect
-        /// all required source modules via the SetSourceModule() method.  If
-        /// these source modules are not connected to this noise module, this
-        /// method raises a debug assertion.
-        ///
-        /// To determine the number of source modules required by this noise
-        /// module, call the GetSourceModuleCount() method.
-        virtual double GetValue (double x, double y, double z) const = 0;
-
-        /// Connects a source module to this noise module.
-        ///
-        /// @param index An index value to assign to this source module.
-        /// @param sourceModule The source module to attach.
-        ///
-        /// @pre The index value ranges from 0 to one less than the number of
-        /// source modules required by this noise module.
-        ///
-        /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-        ///
-        /// A noise module mathematically combines the output values from the
-        /// source modules to generate the value returned by GetValue().
-        ///
-        /// The index value to assign a source module is a unique identifier
-        /// for that source module.  If an index value has already been
-        /// assigned to a source module, this noise module replaces the old
-        /// source module with the new source module.
-        ///
-        /// Before an application can call the GetValue() method, it must
-        /// first connect all required source modules.  To determine the
-        /// number of source modules required by this noise module, call the
-        /// GetSourceModuleCount() method.
-        ///
-        /// This source module must exist throughout the lifetime of this
-        /// noise module unless another source module replaces that source
-        /// module.
-        ///
-        /// A noise module does not modify a source module; it only modifies
-        /// its output values.
-        virtual void SetSourceModule (int index, const Module& sourceModule)
-        {
-          assert (m_pSourceModule != NULL);
-          if (index >= GetSourceModuleCount () || index < 0) {
-            throw noise::ExceptionInvalidParam ();
-          }
-          m_pSourceModule[index] = &sourceModule;
-        }
-
-      protected:
-
-        /// An array containing the pointers to each source module required by
-        /// this noise module.
-        const Module** m_pSourceModule;
-
-      private:
-
-        /// Assignment operator.
-        ///
-        /// This assignment operator does nothing and cannot be overridden.
-        /// This restriction is necessary because if this object was copied,
-        /// all source modules assigned to this noise module would need to be
-        /// copied as well.
-        const Module& operator= (const Module& m)
-        {
-          return *this;
-        }
-
-    };
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/multiply.cpp b/libnoise/noise/src/module/multiply.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/multiply.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-// multiply.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "multiply.h"
-
-using namespace noise::module;
-
-Multiply::Multiply ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Multiply::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_pSourceModule[1] != NULL);
-
-  return m_pSourceModule[0]->GetValue (x, y, z)
-       * m_pSourceModule[1]->GetValue (x, y, z);
-}
diff --git a/libnoise/noise/src/module/multiply.h b/libnoise/noise/src/module/multiply.h
deleted file mode 100644
--- a/libnoise/noise/src/module/multiply.h
+++ /dev/null
@@ -1,76 +0,0 @@
-// multiply.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_MULTIPLY_H
-#define NOISE_MODULE_MULTIPLY_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup combinermodules
-    /// @{
-
-    /// Noise module that outputs the product of the two output values from
-    /// two source modules.
-    ///
-    /// @image html modulemultiply.png
-    ///
-    /// This noise module requires two source modules.
-    class Multiply: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Multiply ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 2;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/perlin.cpp b/libnoise/noise/src/module/perlin.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/perlin.cpp
+++ /dev/null
@@ -1,72 +0,0 @@
-// perlin.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "perlin.h"
-
-using namespace noise::module;
-
-Perlin::Perlin ():
-  Module (GetSourceModuleCount ()),
-  m_frequency    (DEFAULT_PERLIN_FREQUENCY   ),
-  m_lacunarity   (DEFAULT_PERLIN_LACUNARITY  ),
-  m_noiseQuality (DEFAULT_PERLIN_QUALITY     ),
-  m_octaveCount  (DEFAULT_PERLIN_OCTAVE_COUNT),
-  m_persistence  (DEFAULT_PERLIN_PERSISTENCE ),
-  m_seed         (DEFAULT_PERLIN_SEED)
-{
-}
-
-double Perlin::GetValue (double x, double y, double z) const
-{
-  double value = 0.0;
-  double signal = 0.0;
-  double curPersistence = 1.0;
-  double nx, ny, nz;
-  int seed;
-
-  x *= m_frequency;
-  y *= m_frequency;
-  z *= m_frequency;
-
-  for (int curOctave = 0; curOctave < m_octaveCount; curOctave++) {
-
-    // Make sure that these floating-point values have the same range as a 32-
-    // bit integer so that we can pass them to the coherent-noise functions.
-    nx = MakeInt32Range (x);
-    ny = MakeInt32Range (y);
-    nz = MakeInt32Range (z);
-
-    // Get the coherent-noise value from the input value and add it to the
-    // final result.
-    seed = (m_seed + curOctave) & 0xffffffff;
-    signal = GradientCoherentNoise3D (nx, ny, nz, seed, m_noiseQuality);
-    value += signal * curPersistence;
-
-    // Prepare the next octave.
-    x *= m_lacunarity;
-    y *= m_lacunarity;
-    z *= m_lacunarity;
-    curPersistence *= m_persistence;
-  }
-
-  return value;
-}
diff --git a/libnoise/noise/src/module/perlin.h b/libnoise/noise/src/module/perlin.h
deleted file mode 100644
--- a/libnoise/noise/src/module/perlin.h
+++ /dev/null
@@ -1,359 +0,0 @@
-// perlin.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_PERLIN_H
-#define NOISE_MODULE_PERLIN_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup generatormodules
-    /// @{
-
-    /// Default frequency for the noise::module::Perlin noise module.
-    const double DEFAULT_PERLIN_FREQUENCY = 1.0;
-
-    /// Default lacunarity for the noise::module::Perlin noise module.
-    const double DEFAULT_PERLIN_LACUNARITY = 2.0;
-
-    /// Default number of octaves for the noise::module::Perlin noise module.
-    const int DEFAULT_PERLIN_OCTAVE_COUNT = 6;
-
-    /// Default persistence value for the noise::module::Perlin noise module.
-    const double DEFAULT_PERLIN_PERSISTENCE = 0.5;
-
-    /// Default noise quality for the noise::module::Perlin noise module.
-    const noise::NoiseQuality DEFAULT_PERLIN_QUALITY = QUALITY_STD;
-
-    /// Default noise seed for the noise::module::Perlin noise module.
-    const int DEFAULT_PERLIN_SEED = 0;
-
-    /// Maximum number of octaves for the noise::module::Perlin noise module.
-    const int PERLIN_MAX_OCTAVE = 30;
-
-    /// Noise module that outputs 3-dimensional Perlin noise.
-    ///
-    /// @image html moduleperlin.png
-    ///
-    /// Perlin noise is the sum of several coherent-noise functions of
-    /// ever-increasing frequencies and ever-decreasing amplitudes.
-    ///
-    /// An important property of Perlin noise is that a small change in the
-    /// input value will produce a small change in the output value, while a
-    /// large change in the input value will produce a random change in the
-    /// output value.
-    ///
-    /// This noise module outputs Perlin-noise values that usually range from
-    /// -1.0 to +1.0, but there are no guarantees that all output values will
-    /// exist within that range.
-    ///
-    /// For a better description of Perlin noise, see the links in the
-    /// <i>References and Acknowledgments</i> section.
-    ///
-    /// This noise module does not require any source modules.
-    ///
-    /// <b>Octaves</b>
-    ///
-    /// The number of octaves control the <i>amount of detail</i> of the
-    /// Perlin noise.  Adding more octaves increases the detail of the Perlin
-    /// noise, but with the drawback of increasing the calculation time.
-    ///
-    /// An octave is one of the coherent-noise functions in a series of
-    /// coherent-noise functions that are added together to form Perlin
-    /// noise.
-    ///
-    /// An application may specify the frequency of the first octave by
-    /// calling the SetFrequency() method.
-    ///
-    /// An application may specify the number of octaves that generate Perlin
-    /// noise by calling the SetOctaveCount() method.
-    ///
-    /// These coherent-noise functions are called octaves because each octave
-    /// has, by default, double the frequency of the previous octave.  Musical
-    /// tones have this property as well; a musical C tone that is one octave
-    /// higher than the previous C tone has double its frequency.
-    ///
-    /// <b>Frequency</b>
-    ///
-    /// An application may specify the frequency of the first octave by
-    /// calling the SetFrequency() method.
-    ///
-    /// <b>Persistence</b>
-    ///
-    /// The persistence value controls the <i>roughness</i> of the Perlin
-    /// noise.  Larger values produce rougher noise.
-    ///
-    /// The persistence value determines how quickly the amplitudes diminish
-    /// for successive octaves.  The amplitude of the first octave is 1.0.
-    /// The amplitude of each subsequent octave is equal to the product of the
-    /// previous octave's amplitude and the persistence value.  So a
-    /// persistence value of 0.5 sets the amplitude of the first octave to
-    /// 1.0; the second, 0.5; the third, 0.25; etc.
-    ///
-    /// An application may specify the persistence value by calling the
-    /// SetPersistence() method.
-    ///
-    /// <b>Lacunarity</b>
-    ///
-    /// The lacunarity specifies the frequency multipler between successive
-    /// octaves.
-    ///
-    /// The effect of modifying the lacunarity is subtle; you may need to play
-    /// with the lacunarity value to determine the effects.  For best results,
-    /// set the lacunarity to a number between 1.5 and 3.5.
-    ///
-    /// <b>References &amp; acknowledgments</b>
-    ///
-    /// <a href=http://www.noisemachine.com/talk1/>The Noise Machine</a> -
-    /// From the master, Ken Perlin himself.  This page contains a
-    /// presentation that describes Perlin noise and some of its variants.
-    /// He won an Oscar for creating the Perlin noise algorithm!
-    ///
-    /// <a
-    /// href=http://freespace.virgin.net/hugo.elias/models/m_perlin.htm>
-    /// Perlin Noise</a> - Hugo Elias's webpage contains a very good
-    /// description of Perlin noise and describes its many applications.  This
-    /// page gave me the inspiration to create libnoise in the first place.
-    /// Now that I know how to generate Perlin noise, I will never again use
-    /// cheesy subdivision algorithms to create terrain (unless I absolutely
-    /// need the speed.)
-    ///
-    /// <a
-    /// href=http://www.robo-murito.net/code/perlin-noise-math-faq.html>The
-    /// Perlin noise math FAQ</a> - A good page that describes Perlin noise in
-    /// plain English with only a minor amount of math.  During development of
-    /// libnoise, I noticed that my coherent-noise function generated terrain
-    /// with some "regularity" to the terrain features.  This page describes a
-    /// better coherent-noise function called <i>gradient noise</i>.  This
-    /// version of noise::module::Perlin uses gradient coherent noise to
-    /// generate Perlin noise.
-    class Perlin: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default frequency is set to
-        /// noise::module::DEFAULT_PERLIN_FREQUENCY.
-        ///
-        /// The default lacunarity is set to
-        /// noise::module::DEFAULT_PERLIN_LACUNARITY.
-        ///
-        /// The default number of octaves is set to
-        /// noise::module::DEFAULT_PERLIN_OCTAVE_COUNT.
-        ///
-        /// The default persistence value is set to
-        /// noise::module::DEFAULT_PERLIN_PERSISTENCE.
-        ///
-        /// The default seed value is set to
-        /// noise::module::DEFAULT_PERLIN_SEED.
-        Perlin ();
-
-        /// Returns the frequency of the first octave.
-        ///
-        /// @returns The frequency of the first octave.
-        double GetFrequency () const
-        {
-          return m_frequency;
-        }
-
-        /// Returns the lacunarity of the Perlin noise.
-        ///
-        /// @returns The lacunarity of the Perlin noise.
-        /// 
-        /// The lacunarity is the frequency multiplier between successive
-        /// octaves.
-        double GetLacunarity () const
-        {
-          return m_lacunarity;
-        }
-
-        /// Returns the quality of the Perlin noise.
-        ///
-        /// @returns The quality of the Perlin noise.
-        ///
-        /// See noise::NoiseQuality for definitions of the various
-        /// coherent-noise qualities.
-        noise::NoiseQuality GetNoiseQuality () const
-        {
-          return m_noiseQuality;
-        }
-
-        /// Returns the number of octaves that generate the Perlin noise.
-        ///
-        /// @returns The number of octaves that generate the Perlin noise.
-        ///
-        /// The number of octaves controls the amount of detail in the Perlin
-        /// noise.
-        int GetOctaveCount () const
-        {
-          return m_octaveCount;
-        }
-
-        /// Returns the persistence value of the Perlin noise.
-        ///
-        /// @returns The persistence value of the Perlin noise.
-        ///
-        /// The persistence value controls the roughness of the Perlin noise.
-        double GetPersistence () const
-        {
-          return m_persistence;
-        }
-
-        /// Returns the seed value used by the Perlin-noise function.
-        ///
-        /// @returns The seed value.
-        int GetSeed () const
-        {
-          return m_seed;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 0;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the frequency of the first octave.
-        ///
-        /// @param frequency The frequency of the first octave.
-        void SetFrequency (double frequency)
-        {
-          m_frequency = frequency;
-        }
-
-        /// Sets the lacunarity of the Perlin noise.
-        ///
-        /// @param lacunarity The lacunarity of the Perlin noise.
-        /// 
-        /// The lacunarity is the frequency multiplier between successive
-        /// octaves.
-        ///
-        /// For best results, set the lacunarity to a number between 1.5 and
-        /// 3.5.
-        void SetLacunarity (double lacunarity)
-        {
-          m_lacunarity = lacunarity;
-        }
-
-        /// Sets the quality of the Perlin noise.
-        ///
-        /// @param noiseQuality The quality of the Perlin noise.
-        ///
-        /// See noise::NoiseQuality for definitions of the various
-        /// coherent-noise qualities.
-        void SetNoiseQuality (noise::NoiseQuality noiseQuality)
-        {
-          m_noiseQuality = noiseQuality;
-        }
-
-        /// Sets the number of octaves that generate the Perlin noise.
-        ///
-        /// @param octaveCount The number of octaves that generate the Perlin
-        /// noise.
-        ///
-        /// @pre The number of octaves ranges from 1 to
-        /// noise::module::PERLIN_MAX_OCTAVE.
-        ///
-        /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-        ///
-        /// The number of octaves controls the amount of detail in the Perlin
-        /// noise.
-        ///
-        /// The larger the number of octaves, the more time required to
-        /// calculate the Perlin-noise value.
-        void SetOctaveCount (int octaveCount)
-        {
-          if (octaveCount < 1 || octaveCount > PERLIN_MAX_OCTAVE) {
-            throw noise::ExceptionInvalidParam ();
-          }
-          m_octaveCount = octaveCount;
-        }
-
-        /// Sets the persistence value of the Perlin noise.
-        ///
-        /// @param persistence The persistence value of the Perlin noise.
-        ///
-        /// The persistence value controls the roughness of the Perlin noise.
-        ///
-        /// For best results, set the persistence to a number between 0.0 and
-        /// 1.0.
-        void SetPersistence (double persistence)
-        {
-          m_persistence = persistence;
-        }
-
-        /// Sets the seed value used by the Perlin-noise function.
-        ///
-        /// @param seed The seed value.
-        void SetSeed (int seed)
-        {
-          m_seed = seed;
-        }
-
-      protected:
-
-        /// Frequency of the first octave.
-        double m_frequency;
-
-        /// Frequency multiplier between successive octaves.
-        double m_lacunarity;
-
-        /// Quality of the Perlin noise.
-        noise::NoiseQuality m_noiseQuality;
-
-        /// Total number of octaves that generate the Perlin noise.
-        int m_octaveCount;
-
-        /// Persistence of the Perlin noise.
-        double m_persistence;
-
-        /// Seed value used by the Perlin-noise function.
-        int m_seed;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/power.cpp b/libnoise/noise/src/module/power.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/power.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-// power.cpp
-//
-// Copyright (C) 2004 Owen Jacobson
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is angstrom@lionsanctuary.net
-//
-
-#include "power.h"
-
-using namespace noise::module;
-
-Power::Power ():
-  Module (GetSourceModuleCount ())
-{
-}
-
-double Power::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_pSourceModule[1] != NULL);
-
-  return pow (m_pSourceModule[0]->GetValue (x, y, z),
-    m_pSourceModule[1]->GetValue (x, y, z));
-}
diff --git a/libnoise/noise/src/module/power.h b/libnoise/noise/src/module/power.h
deleted file mode 100644
--- a/libnoise/noise/src/module/power.h
+++ /dev/null
@@ -1,80 +0,0 @@
-// power.h
-//
-// Copyright (C) 2004 Owen Jacobson
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is angstrom@lionsanctuary.net
-//
-
-#ifndef NOISE_MODULE_POWER_H
-#define NOISE_MODULE_POWER_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @defgroup combinermodules Combiner Modules
-    /// @addtogroup combinermodules
-    /// @{
-
-    /// Noise module that raises the output value from a first source module
-    /// to the power of the output value from a second source module.
-    ///
-    /// @image html modulepower.png
-    ///
-    /// The first source module must have an index value of 0.
-    ///
-    /// The second source module must have an index value of 1.
-    ///
-    /// This noise module requires two source modules.
-    class Power: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        Power ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 2;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/ridgedmulti.cpp b/libnoise/noise/src/module/ridgedmulti.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/ridgedmulti.cpp
+++ /dev/null
@@ -1,114 +0,0 @@
-// ridgedmulti.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "ridgedmulti.h"
-
-using namespace noise::module;
-
-RidgedMulti::RidgedMulti ():
-  Module (GetSourceModuleCount ()),
-  m_frequency    (DEFAULT_RIDGED_FREQUENCY   ),
-  m_lacunarity   (DEFAULT_RIDGED_LACUNARITY  ),
-  m_noiseQuality (DEFAULT_RIDGED_QUALITY     ),
-  m_octaveCount  (DEFAULT_RIDGED_OCTAVE_COUNT),
-  m_seed         (DEFAULT_RIDGED_SEED)
-{
-  CalcSpectralWeights ();
-}
-
-// Calculates the spectral weights for each octave.
-void RidgedMulti::CalcSpectralWeights ()
-{
-  // This exponent parameter should be user-defined; it may be exposed in a
-  // future version of libnoise.
-  double h = 1.0;
-
-  double frequency = 1.0;
-  for (int i = 0; i < RIDGED_MAX_OCTAVE; i++) {
-    // Compute weight for each frequency.
-    m_pSpectralWeights[i] = pow (frequency, -h);
-    frequency *= m_lacunarity;
-  }
-}
-
-// Multifractal code originally written by F. Kenton "Doc Mojo" Musgrave,
-// 1998.  Modified by jas for use with libnoise.
-double RidgedMulti::GetValue (double x, double y, double z) const
-{
-  x *= m_frequency;
-  y *= m_frequency;
-  z *= m_frequency;
-
-  double signal = 0.0;
-  double value  = 0.0;
-  double weight = 1.0;
-
-  // These parameters should be user-defined; they may be exposed in a
-  // future version of libnoise.
-  double offset = 1.0;
-  double gain = 2.0;
-
-  for (int curOctave = 0; curOctave < m_octaveCount; curOctave++) {
-
-    // Make sure that these floating-point values have the same range as a 32-
-    // bit integer so that we can pass them to the coherent-noise functions.
-    double nx, ny, nz;
-    nx = MakeInt32Range (x);
-    ny = MakeInt32Range (y);
-    nz = MakeInt32Range (z);
-
-    // Get the coherent-noise value.
-    int seed = (m_seed + curOctave) & 0x7fffffff;
-    signal = GradientCoherentNoise3D (nx, ny, nz, seed, m_noiseQuality);
-
-    // Make the ridges.
-    signal = fabs (signal);
-    signal = offset - signal;
-
-    // Square the signal to increase the sharpness of the ridges.
-    signal *= signal;
-
-    // The weighting from the previous octave is applied to the signal.
-    // Larger values have higher weights, producing sharp points along the
-    // ridges.
-    signal *= weight;
-
-    // Weight successive contributions by the previous signal.
-    weight = signal * gain;
-    if (weight > 1.0) {
-      weight = 1.0;
-    }
-    if (weight < 0.0) {
-      weight = 0.0;
-    }
-
-    // Add the signal to the output value.
-    value += (signal * m_pSpectralWeights[curOctave]);
-
-    // Go to the next octave.
-    x *= m_lacunarity;
-    y *= m_lacunarity;
-    z *= m_lacunarity;
-  }
-
-  return (value * 1.25) - 1.0;
-}
diff --git a/libnoise/noise/src/module/ridgedmulti.h b/libnoise/noise/src/module/ridgedmulti.h
deleted file mode 100644
--- a/libnoise/noise/src/module/ridgedmulti.h
+++ /dev/null
@@ -1,313 +0,0 @@
-// ridgedmulti.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_RIDGEDMULTI_H
-#define NOISE_MODULE_RIDGEDMULTI_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup generatormodules
-    /// @{
-
-    /// Default frequency for the noise::module::RidgedMulti noise module.
-    const double DEFAULT_RIDGED_FREQUENCY = 1.0;
-
-    /// Default lacunarity for the noise::module::RidgedMulti noise module.
-    const double DEFAULT_RIDGED_LACUNARITY = 2.0;
-
-    /// Default number of octaves for the noise::module::RidgedMulti noise
-    /// module.
-    const int DEFAULT_RIDGED_OCTAVE_COUNT = 6;
-
-    /// Default noise quality for the noise::module::RidgedMulti noise
-    /// module.
-    const noise::NoiseQuality DEFAULT_RIDGED_QUALITY = QUALITY_STD;
-
-    /// Default noise seed for the noise::module::RidgedMulti noise module.
-    const int DEFAULT_RIDGED_SEED = 0;
-
-    /// Maximum number of octaves for the noise::module::RidgedMulti noise
-    /// module.
-    const int RIDGED_MAX_OCTAVE = 30;
-
-    /// Noise module that outputs 3-dimensional ridged-multifractal noise.
-    ///
-    /// @image html moduleridgedmulti.png
-    ///
-    /// This noise module, heavily based on the Perlin-noise module, generates
-    /// ridged-multifractal noise.  Ridged-multifractal noise is generated in
-    /// much of the same way as Perlin noise, except the output of each octave
-    /// is modified by an absolute-value function.  Modifying the octave
-    /// values in this way produces ridge-like formations.
-    ///
-    /// Ridged-multifractal noise does not use a persistence value.  This is
-    /// because the persistence values of the octaves are based on the values
-    /// generated from from previous octaves, creating a feedback loop (or
-    /// that's what it looks like after reading the code.)
-    ///
-    /// This noise module outputs ridged-multifractal-noise values that
-    /// usually range from -1.0 to +1.0, but there are no guarantees that all
-    /// output values will exist within that range.
-    ///
-    /// @note For ridged-multifractal noise generated with only one octave,
-    /// the output value ranges from -1.0 to 0.0.
-    ///
-    /// Ridged-multifractal noise is often used to generate craggy mountainous
-    /// terrain or marble-like textures.
-    ///
-    /// This noise module does not require any source modules.
-    ///
-    /// <b>Octaves</b>
-    ///
-    /// The number of octaves control the <i>amount of detail</i> of the
-    /// ridged-multifractal noise.  Adding more octaves increases the detail
-    /// of the ridged-multifractal noise, but with the drawback of increasing
-    /// the calculation time.
-    ///
-    /// An application may specify the number of octaves that generate
-    /// ridged-multifractal noise by calling the SetOctaveCount() method.
-    ///
-    /// <b>Frequency</b>
-    ///
-    /// An application may specify the frequency of the first octave by
-    /// calling the SetFrequency() method.
-    ///
-    /// <b>Lacunarity</b>
-    ///
-    /// The lacunarity specifies the frequency multipler between successive
-    /// octaves.
-    ///
-    /// The effect of modifying the lacunarity is subtle; you may need to play
-    /// with the lacunarity value to determine the effects.  For best results,
-    /// set the lacunarity to a number between 1.5 and 3.5.
-    ///
-    /// <b>References &amp; Acknowledgments</b>
-    ///
-    /// <a href=http://www.texturingandmodeling.com/Musgrave.html>F.
-    /// Kenton "Doc Mojo" Musgrave's texturing page</a> - This page contains
-    /// links to source code that generates ridged-multfractal noise, among
-    /// other types of noise.  The source file <a
-    /// href=http://www.texturingandmodeling.com/CODE/MUSGRAVE/CLOUD/fractal.c>
-    /// fractal.c</a> contains the code I used in my ridged-multifractal class
-    /// (see the @a RidgedMultifractal() function.)  This code was written by F.
-    /// Kenton Musgrave, the person who created
-    /// <a href=http://www.pandromeda.com/>MojoWorld</a>.  He is also one of
-    /// the authors in <i>Texturing and Modeling: A Procedural Approach</i>
-    /// (Morgan Kaufmann, 2002. ISBN 1-55860-848-6.)
-    class RidgedMulti: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default number of octaves is set to
-        /// noise::module::DEFAULT_RIDGED_OCTAVE_COUNT.
-        ///
-        /// The default frequency is set to
-        /// noise::module::DEFAULT_RIDGED_FREQUENCY.
-        ///
-        /// The default lacunarity is set to
-        /// noise::module::DEFAULT_RIDGED_LACUNARITY.
-        ///
-        /// The default seed value is set to
-        /// noise::module::DEFAULT_RIDGED_SEED.
-        RidgedMulti ();
-
-        /// Returns the frequency of the first octave.
-        ///
-        /// @returns The frequency of the first octave.
-        double GetFrequency () const
-        {
-          return m_frequency;
-        }
-
-        /// Returns the lacunarity of the ridged-multifractal noise.
-        ///
-        /// @returns The lacunarity of the ridged-multifractal noise.
-        /// 
-        /// The lacunarity is the frequency multiplier between successive
-        /// octaves.
-        double GetLacunarity () const
-        {
-          return m_lacunarity;
-        }
-
-        /// Returns the quality of the ridged-multifractal noise.
-        ///
-        /// @returns The quality of the ridged-multifractal noise.
-        ///
-        /// See noise::NoiseQuality for definitions of the various
-        /// coherent-noise qualities.
-        noise::NoiseQuality GetNoiseQuality () const
-        {
-          return m_noiseQuality;
-        }
-
-        /// Returns the number of octaves that generate the
-        /// ridged-multifractal noise.
-        ///
-        /// @returns The number of octaves that generate the
-        /// ridged-multifractal noise.
-        ///
-        /// The number of octaves controls the amount of detail in the
-        /// ridged-multifractal noise.
-        int GetOctaveCount () const
-        {
-          return m_octaveCount;
-        }
-
-        /// Returns the seed value used by the ridged-multifractal-noise
-        /// function.
-        ///
-        /// @returns The seed value.
-        int GetSeed () const
-        {
-          return m_seed;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 0;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the frequency of the first octave.
-        ///
-        /// @param frequency The frequency of the first octave.
-        void SetFrequency (double frequency)
-        {
-          m_frequency = frequency;
-        }
-
-        /// Sets the lacunarity of the ridged-multifractal noise.
-        ///
-        /// @param lacunarity The lacunarity of the ridged-multifractal noise.
-        /// 
-        /// The lacunarity is the frequency multiplier between successive
-        /// octaves.
-        ///
-        /// For best results, set the lacunarity to a number between 1.5 and
-        /// 3.5.
-        void SetLacunarity (double lacunarity)
-        {
-          m_lacunarity = lacunarity;
-          CalcSpectralWeights ();
-        }
-
-        /// Sets the quality of the ridged-multifractal noise.
-        ///
-        /// @param noiseQuality The quality of the ridged-multifractal noise.
-        ///
-        /// See noise::NoiseQuality for definitions of the various
-        /// coherent-noise qualities.
-        void SetNoiseQuality (noise::NoiseQuality noiseQuality)
-        {
-          m_noiseQuality = noiseQuality;
-        }
-
-        /// Sets the number of octaves that generate the ridged-multifractal
-        /// noise.
-        ///
-        /// @param octaveCount The number of octaves that generate the
-        /// ridged-multifractal noise.
-        ///
-        /// @pre The number of octaves ranges from 1 to
-        /// noise::module::RIDGED_MAX_OCTAVE.
-        ///
-        /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-        ///
-        /// The number of octaves controls the amount of detail in the
-        /// ridged-multifractal noise.
-        ///
-        /// The larger the number of octaves, the more time required to
-        /// calculate the ridged-multifractal-noise value.
-        void SetOctaveCount (int octaveCount)
-        {
-          if (octaveCount > RIDGED_MAX_OCTAVE) {
-            throw noise::ExceptionInvalidParam ();
-          }
-          m_octaveCount = octaveCount;
-        }
-
-        /// Sets the seed value used by the ridged-multifractal-noise
-        /// function.
-        ///
-        /// @param seed The seed value.
-        void SetSeed (int seed)
-        {
-          m_seed = seed;
-        }
-
-      protected:
-
-        /// Calculates the spectral weights for each octave.
-        ///
-        /// This method is called when the lacunarity changes.
-        void CalcSpectralWeights ();
-
-        /// Frequency of the first octave.
-        double m_frequency;
-
-        /// Frequency multiplier between successive octaves.
-        double m_lacunarity;
-
-        /// Quality of the ridged-multifractal noise.
-        noise::NoiseQuality m_noiseQuality;
-
-        /// Total number of octaves that generate the ridged-multifractal
-        /// noise.
-        int m_octaveCount;
-
-        /// Contains the spectral weights for each octave.
-        double m_pSpectralWeights[RIDGED_MAX_OCTAVE];
-
-        /// Seed value used by the ridged-multfractal-noise function.
-        int m_seed;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/rotatepoint.cpp b/libnoise/noise/src/module/rotatepoint.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/rotatepoint.cpp
+++ /dev/null
@@ -1,68 +0,0 @@
-// rotatepoint.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../mathconsts.h"
-#include "rotatepoint.h"
-
-using namespace noise::module;
-
-RotatePoint::RotatePoint ():
-  Module (GetSourceModuleCount ())
-{
-  SetAngles (DEFAULT_ROTATE_X, DEFAULT_ROTATE_Y, DEFAULT_ROTATE_Z);
-}
-
-double RotatePoint::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  double nx = (m_x1Matrix * x) + (m_y1Matrix * y) + (m_z1Matrix * z);
-  double ny = (m_x2Matrix * x) + (m_y2Matrix * y) + (m_z2Matrix * z);
-  double nz = (m_x3Matrix * x) + (m_y3Matrix * y) + (m_z3Matrix * z);
-  return m_pSourceModule[0]->GetValue (nx, ny, nz);
-}
-
-void RotatePoint::SetAngles (double xAngle, double yAngle,
-  double zAngle)
-{
-  double xCos, yCos, zCos, xSin, ySin, zSin;
-  xCos = cos (xAngle * DEG_TO_RAD);
-  yCos = cos (yAngle * DEG_TO_RAD);
-  zCos = cos (zAngle * DEG_TO_RAD);
-  xSin = sin (xAngle * DEG_TO_RAD);
-  ySin = sin (yAngle * DEG_TO_RAD);
-  zSin = sin (zAngle * DEG_TO_RAD);
-
-  m_x1Matrix = ySin * xSin * zSin + yCos * zCos;
-  m_y1Matrix = xCos * zSin;
-  m_z1Matrix = ySin * zCos - yCos * xSin * zSin;
-  m_x2Matrix = ySin * xSin * zCos - yCos * zSin;
-  m_y2Matrix = xCos * zCos;
-  m_z2Matrix = -yCos * xSin * zCos - ySin * zSin;
-  m_x3Matrix = -ySin * xCos;
-  m_y3Matrix = xSin;
-  m_z3Matrix = yCos * xCos;
-
-  m_xAngle = xAngle;
-  m_yAngle = yAngle;
-  m_zAngle = zAngle;
-}
diff --git a/libnoise/noise/src/module/rotatepoint.h b/libnoise/noise/src/module/rotatepoint.h
deleted file mode 100644
--- a/libnoise/noise/src/module/rotatepoint.h
+++ /dev/null
@@ -1,233 +0,0 @@
-// rotatepoint.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_ROTATEPOINT_H
-#define NOISE_MODULE_ROTATEPOINT_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup transformermodules
-    /// @{
-
-    /// Default @a x rotation angle for the noise::module::RotatePoint noise
-    /// module.
-    const double DEFAULT_ROTATE_X = 0.0;
-
-    /// Default @a y rotation angle for the noise::module::RotatePoint noise
-    /// module.
-    const double DEFAULT_ROTATE_Y = 0.0;
-
-    /// Default @a z rotation angle for the noise::module::RotatePoint noise
-    /// module.
-    const double DEFAULT_ROTATE_Z = 0.0;
-
-    /// Noise module that rotates the input value around the origin before
-    /// returning the output value from a source module.
-    ///
-    /// @image html modulerotatepoint.png
-    ///
-    /// The GetValue() method rotates the coordinates of the input value
-    /// around the origin before returning the output value from the source
-    /// module.  To set the rotation angles, call the SetAngles() method.  To
-    /// set the rotation angle around the individual @a x, @a y, or @a z axes,
-    /// call the SetXAngle(), SetYAngle() or SetZAngle() methods,
-    /// respectively.
-    ///
-    /// The coordinate system of the input value is assumed to be
-    /// "left-handed" (@a x increases to the right, @a y increases upward,
-    /// and @a z increases inward.)
-    ///
-    /// This noise module requires one source module.
-    class RotatePoint: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default rotation angle around the @a x axis, in degrees, is
-        /// set to noise::module::DEFAULT_ROTATE_X.
-        ///
-        /// The default rotation angle around the @a y axis, in degrees, is
-        /// set to noise::module::DEFAULT_ROTATE_Y.
-        ///
-        /// The default rotation angle around the @a z axis, in degrees, is
-        /// set to noise::module::DEFAULT_ROTATE_Z.
-        RotatePoint ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Returns the rotation angle around the @a x axis to apply to the
-        /// input value.
-        ///
-        /// @returns The rotation angle around the @a x axis, in degrees.
-        double GetXAngle () const
-        {
-          return m_xAngle;
-        }
-
-        /// Returns the rotation angle around the @a y axis to apply to the
-        /// input value.
-        ///
-        /// @returns The rotation angle around the @a y axis, in degrees.
-        double GetYAngle () const
-        {
-          return m_yAngle;
-        }
-
-        /// Returns the rotation angle around the @a z axis to apply to the
-        /// input value.
-        ///
-        /// @returns The rotation angle around the @a z axis, in degrees.
-        double GetZAngle () const
-        {
-          return m_zAngle;
-        }
-
-        /// Sets the rotation angles around all three axes to apply to the
-        /// input value.
-        ///
-        /// @param xAngle The rotation angle around the @a x axis, in degrees.
-        /// @param yAngle The rotation angle around the @a y axis, in degrees.
-        /// @param zAngle The rotation angle around the @a z axis, in degrees.
-        ///
-        /// The GetValue() method rotates the coordinates of the input value
-        /// around the origin before returning the output value from the
-        /// source module.
-        void SetAngles (double xAngle, double yAngle, double zAngle);
-
-        /// Sets the rotation angle around the @a x axis to apply to the input
-        /// value.
-        ///
-        /// @param xAngle The rotation angle around the @a x axis, in degrees.
-        ///
-        /// The GetValue() method rotates the coordinates of the input value
-        /// around the origin before returning the output value from the
-        /// source module.
-        void SetXAngle (double xAngle)
-        {
-          SetAngles (xAngle, m_yAngle, m_zAngle);
-        }
-
-        /// Sets the rotation angle around the @a y axis to apply to the input
-        /// value.
-        ///
-        /// @param yAngle The rotation angle around the @a y axis, in degrees.
-        ///
-        /// The GetValue() method rotates the coordinates of the input value
-        /// around the origin before returning the output value from the
-        /// source module.
-        void SetYAngle (double yAngle)
-        {
-          SetAngles (m_xAngle, yAngle, m_zAngle);
-        }
-
-        /// Sets the rotation angle around the @a z axis to apply to the input
-        /// value.
-        ///
-        /// @param zAngle The rotation angle around the @a z axis, in degrees.
-        ///
-        /// The GetValue() method rotates the coordinates of the input value
-        /// around the origin before returning the output value from the
-        /// source module.
-        void SetZAngle (double zAngle)
-        {
-          SetAngles (m_xAngle, m_yAngle, zAngle);
-        }
-
-      protected:
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_x1Matrix;
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_x2Matrix;
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_x3Matrix;
-
-        /// @a x rotation angle applied to the input value, in degrees.
-        double m_xAngle;
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_y1Matrix;
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_y2Matrix;
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_y3Matrix;
-
-        /// @a y rotation angle applied to the input value, in degrees.
-        double m_yAngle;
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_z1Matrix;
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_z2Matrix;
-
-        /// An entry within the 3x3 rotation matrix used for rotating the
-        /// input value.
-        double m_z3Matrix;
-
-        /// @a z rotation angle applied to the input value, in degrees.
-        double m_zAngle;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/scalebias.cpp b/libnoise/noise/src/module/scalebias.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/scalebias.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-// scalebias.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "scalebias.h"
-
-using namespace noise::module;
-
-ScaleBias::ScaleBias ():
-  Module (GetSourceModuleCount ()),
-  m_bias  (DEFAULT_BIAS ),
-  m_scale (DEFAULT_SCALE)
-{
-}
-
-double ScaleBias::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  return m_pSourceModule[0]->GetValue (x, y, z) * m_scale + m_bias;
-}
diff --git a/libnoise/noise/src/module/scalebias.h b/libnoise/noise/src/module/scalebias.h
deleted file mode 100644
--- a/libnoise/noise/src/module/scalebias.h
+++ /dev/null
@@ -1,151 +0,0 @@
-// scalebias.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_SCALEBIAS_H
-#define NOISE_MODULE_SCALEBIAS_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup modifiermodules
-    /// @{
-
-    /// Default bias for the noise::module::ScaleBias noise module.
-    const double DEFAULT_BIAS = 0.0;
-
-    /// Default scale for the noise::module::ScaleBias noise module.
-    const double DEFAULT_SCALE = 1.0;
-
-    /// Noise module that applies a scaling factor and a bias to the output
-    /// value from a source module.
-    ///
-    /// @image html modulescalebias.png
-    ///
-    /// The GetValue() method retrieves the output value from the source
-    /// module, multiplies it with a scaling factor, adds a bias to it, then
-    /// outputs the value.
-    ///
-    /// This noise module requires one source module.
-    class ScaleBias: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default bias is set to noise::module::DEFAULT_BIAS.
-        ///
-        /// The default scaling factor is set to noise::module::DEFAULT_SCALE.
-        ScaleBias ();
-
-        /// Returns the bias to apply to the scaled output value from the
-        /// source module.
-        ///
-        /// @returns The bias to apply.
-        ///
-        /// The GetValue() method retrieves the output value from the source
-        /// module, multiplies it with the scaling factor, adds the bias to
-        /// it, then outputs the value.
-        double GetBias () const
-        {
-          return m_bias;
-        }
-
-        /// Returns the scaling factor to apply to the output value from the
-        /// source module.
-        ///
-        /// @returns The scaling factor to apply.
-        ///
-        /// The GetValue() method retrieves the output value from the source
-        /// module, multiplies it with the scaling factor, adds the bias to
-        /// it, then outputs the value.
-        double GetScale () const
-        {
-          return m_scale;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the bias to apply to the scaled output value from the source
-        /// module.
-        ///
-        /// @param bias The bias to apply.
-        ///
-        /// The GetValue() method retrieves the output value from the source
-        /// module, multiplies it with the scaling factor, adds the bias to
-        /// it, then outputs the value.
-        void SetBias (double bias)
-        {
-          m_bias = bias;
-        }
-
-        /// Sets the scaling factor to apply to the output value from the
-        /// source module.
-        ///
-        /// @param scale The scaling factor to apply.
-        ///
-        /// The GetValue() method retrieves the output value from the source
-        /// module, multiplies it with the scaling factor, adds the bias to
-        /// it, then outputs the value.
-        void SetScale (double scale)
-        {
-          m_scale = scale;
-        }
-
-      protected:
-
-        /// Bias to apply to the scaled output value from the source module.
-        double m_bias;
-
-        /// Scaling factor to apply to the output value from the source
-        /// module.
-        double m_scale;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/scalepoint.cpp b/libnoise/noise/src/module/scalepoint.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/scalepoint.cpp
+++ /dev/null
@@ -1,41 +0,0 @@
-// scalepoint.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "scalepoint.h"
-
-using namespace noise::module;
-
-ScalePoint::ScalePoint ():
-  Module (GetSourceModuleCount ()),
-  m_xScale (DEFAULT_SCALE_POINT_X),
-  m_yScale (DEFAULT_SCALE_POINT_Y),
-  m_zScale (DEFAULT_SCALE_POINT_Z)
-{
-}
-
-double ScalePoint::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  return m_pSourceModule[0]->GetValue (x * m_xScale, y * m_yScale,
-    z * m_zScale);
-}
diff --git a/libnoise/noise/src/module/scalepoint.h b/libnoise/noise/src/module/scalepoint.h
deleted file mode 100644
--- a/libnoise/noise/src/module/scalepoint.h
+++ /dev/null
@@ -1,212 +0,0 @@
-// scalepoint.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_SCALEPOINT_H
-#define NOISE_MODULE_SCALEPOINT_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup transformermodules
-    /// @{
-
-    /// Default scaling factor applied to the @a x coordinate for the
-    /// noise::module::ScalePoint noise module.
-    const double DEFAULT_SCALE_POINT_X = 1.0;
-
-    /// Default scaling factor applied to the @a y coordinate for the
-    /// noise::module::ScalePoint noise module.
-    const double DEFAULT_SCALE_POINT_Y = 1.0;
-
-    /// Default scaling factor applied to the @a z coordinate for the
-    /// noise::module::ScalePoint noise module.
-    const double DEFAULT_SCALE_POINT_Z = 1.0;
-
-    /// Noise module that scales the coordinates of the input value before
-    /// returning the output value from a source module.
-    ///
-    /// @image html modulescalepoint.png
-    ///
-    /// The GetValue() method multiplies the ( @a x, @a y, @a z ) coordinates
-    /// of the input value with a scaling factor before returning the output
-    /// value from the source module.  To set the scaling factor, call the
-    /// SetScale() method.  To set the scaling factor to apply to the
-    /// individual @a x, @a y, or @a z coordinates, call the SetXScale(),
-    /// SetYScale() or SetZScale() methods, respectively.
-    ///
-    /// This noise module requires one source module.
-    class ScalePoint: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default scaling factor applied to the @a x coordinate is set
-        /// to noise::module::DEFAULT_SCALE_POINT_X.
-        ///
-        /// The default scaling factor applied to the @a y coordinate is set
-        /// to noise::module::DEFAULT_SCALE_POINT_Y.
-        ///
-        /// The default scaling factor applied to the @a z coordinate is set
-        /// to noise::module::DEFAULT_SCALE_POINT_Z.
-        ScalePoint ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Returns the scaling factor applied to the @a x coordinate of the
-        /// input value.
-        ///
-        /// @returns The scaling factor applied to the @a x coordinate.
-        double GetXScale () const
-        {
-          return m_xScale;
-        }
-
-        /// Returns the scaling factor applied to the @a y coordinate of the
-        /// input value.
-        ///
-        /// @returns The scaling factor applied to the @a y coordinate.
-        double GetYScale () const
-        {
-          return m_yScale;
-        }
-
-        /// Returns the scaling factor applied to the @a z coordinate of the
-        /// input value.
-        ///
-        /// @returns The scaling factor applied to the @a z coordinate.
-        double GetZScale () const
-        {
-          return m_zScale;
-        }
-
-        /// Sets the scaling factor to apply to the input value.
-        ///
-        /// @param scale The scaling factor to apply.
-        ///
-        /// The GetValue() method multiplies the ( @a x, @a y, @a z )
-        /// coordinates of the input value with a scaling factor before
-        /// returning the output value from the source module.
-        void SetScale (double scale)
-        {
-          m_xScale = scale;
-          m_yScale = scale;
-          m_zScale = scale;
-        }
-
-        /// Sets the scaling factor to apply to the ( @a x, @a y, @a z )
-        /// coordinates of the input value.
-        ///
-        /// @param xScale The scaling factor to apply to the @a x coordinate.
-        /// @param yScale The scaling factor to apply to the @a y coordinate.
-        /// @param zScale The scaling factor to apply to the @a z coordinate.
-        ///
-        /// The GetValue() method multiplies the ( @a x, @a y, @a z )
-        /// coordinates of the input value with a scaling factor before
-        /// returning the output value from the source module.
-        void SetScale (double xScale, double yScale, double zScale)
-        {
-          m_xScale = xScale;
-          m_yScale = yScale;
-          m_zScale = zScale;
-        }
-
-        /// Sets the scaling factor to apply to the @a x coordinate of the
-        /// input value.
-        ///
-        /// @param xScale The scaling factor to apply to the @a x coordinate.
-        ///
-        /// The GetValue() method multiplies the ( @a x, @a y, @a z )
-        /// coordinates of the input value with a scaling factor before
-        /// returning the output value from the source module.
-        void SetXScale (double xScale)
-        {
-          m_xScale = xScale;
-        }
-
-        /// Sets the scaling factor to apply to the @a y coordinate of the
-        /// input value.
-        ///
-        /// @param yScale The scaling factor to apply to the @a y coordinate.
-        ///
-        /// The GetValue() method multiplies the ( @a x, @a y, @a z )
-        /// coordinates of the input value with a scaling factor before
-        /// returning the output value from the source module.
-        void SetYScale (double yScale)
-        {
-          m_yScale = yScale;
-        }
-
-        /// Sets the scaling factor to apply to the @a z coordinate of the
-        /// input value.
-        ///
-        /// @param zScale The scaling factor to apply to the @a z coordinate.
-        ///
-        /// The GetValue() method multiplies the ( @a x, @a y, @a z )
-        /// coordinates of the input value with a scaling factor before
-        /// returning the output value from the source module.
-        void SetZScale (double zScale)
-        {
-          m_zScale = zScale;
-        }
-
-      protected:
-
-        /// Scaling factor applied to the @a x coordinate of the input value.
-        double m_xScale;
-
-        /// Scaling factor applied to the @a y coordinate of the input value.
-        double m_yScale;
-
-        /// Scaling factor applied to the @a z coordinate of the input value.
-        double m_zScale;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/select.cpp b/libnoise/noise/src/module/select.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/select.cpp
+++ /dev/null
@@ -1,109 +0,0 @@
-// select.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../interp.h"
-#include "select.h"
-
-using namespace noise::module;
-
-Select::Select ():
-  Module (GetSourceModuleCount ()),
-  m_edgeFalloff (DEFAULT_SELECT_EDGE_FALLOFF),
-  m_lowerBound (DEFAULT_SELECT_LOWER_BOUND),
-  m_upperBound (DEFAULT_SELECT_UPPER_BOUND)
-{
-}
-
-double Select::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_pSourceModule[1] != NULL);
-  assert (m_pSourceModule[2] != NULL);
-
-  double controlValue = m_pSourceModule[2]->GetValue (x, y, z);
-  double alpha;
-  if (m_edgeFalloff > 0.0) {
-    if (controlValue < (m_lowerBound - m_edgeFalloff)) {
-      // The output value from the control module is below the selector
-      // threshold; return the output value from the first source module.
-      return m_pSourceModule[0]->GetValue (x, y, z);
-
-    } else if (controlValue < (m_lowerBound + m_edgeFalloff)) {
-      // The output value from the control module is near the lower end of the
-      // selector threshold and within the smooth curve. Interpolate between
-      // the output values from the first and second source modules.
-      double lowerCurve = (m_lowerBound - m_edgeFalloff);
-      double upperCurve = (m_lowerBound + m_edgeFalloff);
-      alpha = SCurve3 (
-        (controlValue - lowerCurve) / (upperCurve - lowerCurve));
-      return LinearInterp (m_pSourceModule[0]->GetValue (x, y, z),
-        m_pSourceModule[1]->GetValue (x, y, z),
-        alpha);
-
-    } else if (controlValue < (m_upperBound - m_edgeFalloff)) {
-      // The output value from the control module is within the selector
-      // threshold; return the output value from the second source module.
-      return m_pSourceModule[1]->GetValue (x, y, z);
-
-    } else if (controlValue < (m_upperBound + m_edgeFalloff)) {
-      // The output value from the control module is near the upper end of the
-      // selector threshold and within the smooth curve. Interpolate between
-      // the output values from the first and second source modules.
-      double lowerCurve = (m_upperBound - m_edgeFalloff);
-      double upperCurve = (m_upperBound + m_edgeFalloff);
-      alpha = SCurve3 (
-        (controlValue - lowerCurve) / (upperCurve - lowerCurve));
-      return LinearInterp (m_pSourceModule[1]->GetValue (x, y, z),
-        m_pSourceModule[0]->GetValue (x, y, z),
-        alpha);
-
-    } else {
-      // Output value from the control module is above the selector threshold;
-      // return the output value from the first source module.
-      return m_pSourceModule[0]->GetValue (x, y, z);
-    }
-  } else {
-    if (controlValue < m_lowerBound || controlValue > m_upperBound) {
-      return m_pSourceModule[0]->GetValue (x, y, z);
-    } else {
-      return m_pSourceModule[1]->GetValue (x, y, z);
-    }
-  }
-}
-
-void Select::SetBounds (double lowerBound, double upperBound)
-{
-  assert (lowerBound < upperBound);
-
-  m_lowerBound = lowerBound;
-  m_upperBound = upperBound;
-
-  // Make sure that the edge falloff curves do not overlap.
-  SetEdgeFalloff (m_edgeFalloff);
-}
-
-void Select::SetEdgeFalloff (double edgeFalloff)
-{
-  // Make sure that the edge falloff curves do not overlap.
-  double boundSize = m_upperBound - m_lowerBound;
-  m_edgeFalloff = (edgeFalloff > boundSize / 2)? boundSize / 2: edgeFalloff;
-}
diff --git a/libnoise/noise/src/module/select.h b/libnoise/noise/src/module/select.h
deleted file mode 100644
--- a/libnoise/noise/src/module/select.h
+++ /dev/null
@@ -1,267 +0,0 @@
-// select.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_SELECT_H
-#define NOISE_MODULE_SELECT_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup selectormodules
-    /// @{
-
-    /// Default edge-falloff value for the noise::module::Select noise module.
-    const double DEFAULT_SELECT_EDGE_FALLOFF = 0.0;
-
-    /// Default lower bound of the selection range for the
-    /// noise::module::Select noise module.
-    const double DEFAULT_SELECT_LOWER_BOUND = -1.0;
-
-    /// Default upper bound of the selection range for the
-    /// noise::module::Select noise module.
-    const double DEFAULT_SELECT_UPPER_BOUND = 1.0;
-
-    /// Noise module that outputs the value selected from one of two source
-    /// modules chosen by the output value from a control module.
-    ///
-    /// @image html moduleselect.png
-    ///
-    /// Unlike most other noise modules, the index value assigned to a source
-    /// module determines its role in the selection operation:
-    /// - Source module 0 (upper left in the diagram) outputs a value.
-    /// - Source module 1 (lower left in the diagram) outputs a value.
-    /// - Source module 2 (bottom of the diagram) is known as the <i>control
-    ///   module</i>.  The control module determines the value to select.  If
-    ///   the output value from the control module is within a range of values
-    ///   known as the <i>selection range</i>, this noise module outputs the
-    ///   value from the source module with an index value of 1.  Otherwise,
-    ///   this noise module outputs the value from the source module with an
-    ///   index value of 0.
-    ///
-    /// To specify the bounds of the selection range, call the SetBounds()
-    /// method.
-    ///
-    /// An application can pass the control module to the SetControlModule()
-    /// method instead of the SetSourceModule() method.  This may make the
-    /// application code easier to read.
-    ///
-    /// By default, there is an abrupt transition between the output values
-    /// from the two source modules at the selection-range boundary.  To
-    /// smooth the transition, pass a non-zero value to the SetEdgeFalloff()
-    /// method.  Higher values result in a smoother transition.
-    ///
-    /// This noise module requires three source modules.
-    class Select: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default falloff value at the edge transition is set to
-        /// noise::module::DEFAULT_SELECT_EDGE_FALLOFF.
-        ///
-        /// The default lower bound of the selection range is set to
-        /// noise::module::DEFAULT_SELECT_LOWER_BOUND.
-        ///
-        /// The default upper bound of the selection range is set to
-        /// noise::module::DEFAULT_SELECT_UPPER_BOUND.
-        Select ();
-
-        /// Returns the control module.
-        ///
-        /// @returns A reference to the control module.
-        ///
-        /// @pre A control module has been added to this noise module via a
-        /// call to SetSourceModule() or SetControlModule().
-        ///
-        /// @throw noise::ExceptionNoModule See the preconditions for more
-        /// information.
-        ///
-        /// The control module determines the output value to select.  If the
-        /// output value from the control module is within a range of values
-        /// known as the <i>selection range</i>, the GetValue() method outputs
-        /// the value from the source module with an index value of 1.
-        /// Otherwise, this method outputs the value from the source module
-        /// with an index value of 0.
-        const Module& GetControlModule () const
-        {
-          if (m_pSourceModule == NULL || m_pSourceModule[2] == NULL) {
-            throw noise::ExceptionNoModule ();
-          }
-          return *(m_pSourceModule[2]);
-        }
-
-        /// Returns the falloff value at the edge transition.
-        ///
-        /// @returns The falloff value at the edge transition.
-        ///
-        /// The falloff value is the width of the edge transition at either
-        /// edge of the selection range.
-        ///
-        /// By default, there is an abrupt transition between the output
-        /// values from the two source modules at the selection-range
-        /// boundary.
-        double GetEdgeFalloff () const
-        {
-          return m_edgeFalloff;
-        }
-
-        /// Returns the lower bound of the selection range.
-        ///
-        /// @returns The lower bound of the selection range.
-        ///
-        /// If the output value from the control module is within the
-        /// selection range, the GetValue() method outputs the value from the
-        /// source module with an index value of 1.  Otherwise, this method
-        /// outputs the value from the source module with an index value of 0.
-        double GetLowerBound () const
-        {
-          return m_lowerBound;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 3;
-        }
-
-        /// Returns the upper bound of the selection range.
-        ///
-        /// @returns The upper bound of the selection range.
-        ///
-        /// If the output value from the control module is within the
-        /// selection range, the GetValue() method outputs the value from the
-        /// source module with an index value of 1.  Otherwise, this method
-        /// outputs the value from the source module with an index value of 0.
-        double GetUpperBound () const
-        {
-          return m_upperBound;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the lower and upper bounds of the selection range.
-        ///
-        /// @param lowerBound The lower bound.
-        /// @param upperBound The upper bound.
-        ///
-        /// @pre The lower bound must be less than or equal to the upper
-        /// bound.
-        ///
-        /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-        ///
-        /// If the output value from the control module is within the
-        /// selection range, the GetValue() method outputs the value from the
-        /// source module with an index value of 1.  Otherwise, this method
-        /// outputs the value from the source module with an index value of 0.
-        void SetBounds (double lowerBound, double upperBound);
-
-        /// Sets the control module.
-        ///
-        /// @param controlModule The control module.
-        ///
-        /// The control module determines the output value to select.  If the
-        /// output value from the control module is within a range of values
-        /// known as the <i>selection range</i>, the GetValue() method outputs
-        /// the value from the source module with an index value of 1.
-        /// Otherwise, this method outputs the value from the source module
-        /// with an index value of 0.
-        ///
-        /// This method assigns the control module an index value of 2.
-        /// Passing the control module to this method produces the same
-        /// results as passing the control module to the SetSourceModule()
-        /// method while assigning that noise module an index value of 2.
-        ///
-        /// This control module must exist throughout the lifetime of this
-        /// noise module unless another control module replaces that control
-        /// module.
-        void SetControlModule (const Module& controlModule)
-        {
-          assert (m_pSourceModule != NULL);
-          m_pSourceModule[2] = &controlModule;
-        }
-
-        /// Sets the falloff value at the edge transition.
-        ///
-        /// @param edgeFalloff The falloff value at the edge transition.
-        ///
-        /// The falloff value is the width of the edge transition at either
-        /// edge of the selection range.
-        ///
-        /// By default, there is an abrupt transition between the values from
-        /// the two source modules at the boundaries of the selection range.
-        ///
-        /// For example, if the selection range is 0.5 to 0.8, and the edge
-        /// falloff value is 0.1, then the GetValue() method outputs:
-        /// - the output value from the source module with an index value of 0
-        ///   if the output value from the control module is less than 0.4
-        ///   ( = 0.5 - 0.1).
-        /// - a linear blend between the two output values from the two source
-        ///   modules if the output value from the control module is between
-        ///   0.4 ( = 0.5 - 0.1) and 0.6 ( = 0.5 + 0.1).
-        /// - the output value from the source module with an index value of 1
-        ///   if the output value from the control module is between 0.6
-        ///   ( = 0.5 + 0.1) and 0.7 ( = 0.8 - 0.1).
-        /// - a linear blend between the output values from the two source
-        ///   modules if the output value from the control module is between
-        ///   0.7 ( = 0.8 - 0.1 ) and 0.9 ( = 0.8 + 0.1).
-        /// - the output value from the source module with an index value of 0
-        ///   if the output value from the control module is greater than 0.9
-        ///   ( = 0.8 + 0.1).
-        void SetEdgeFalloff (double edgeFalloff);
-
-      protected:
-
-        /// Edge-falloff value.
-        double m_edgeFalloff;
-
-        /// Lower bound of the selection range.
-        double m_lowerBound;
-
-        /// Upper bound of the selection range.
-        double m_upperBound;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/spheres.cpp b/libnoise/noise/src/module/spheres.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/spheres.cpp
+++ /dev/null
@@ -1,45 +0,0 @@
-// spheres.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../misc.h"
-#include "spheres.h"
-
-using namespace noise::module;
-
-Spheres::Spheres ():
-  Module (GetSourceModuleCount ()),
-  m_frequency (DEFAULT_SPHERES_FREQUENCY)
-{
-}
-
-double Spheres::GetValue (double x, double y, double z) const
-{
-  x *= m_frequency;
-  y *= m_frequency;
-  z *= m_frequency;
-
-  double distFromCenter = sqrt (x * x + y * y + z * z);
-  double distFromSmallerSphere = distFromCenter - floor (distFromCenter);
-  double distFromLargerSphere = 1.0 - distFromSmallerSphere;
-  double nearestDist = GetMin (distFromSmallerSphere, distFromLargerSphere);
-  return 1.0 - (nearestDist * 4.0); // Puts it in the -1.0 to +1.0 range.
-}
diff --git a/libnoise/noise/src/module/spheres.h b/libnoise/noise/src/module/spheres.h
deleted file mode 100644
--- a/libnoise/noise/src/module/spheres.h
+++ /dev/null
@@ -1,127 +0,0 @@
-// spheres.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_SPHERES_H
-#define NOISE_MODULE_SPHERES_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup generatormodules
-    /// @{
-
-    /// Default frequency value for the noise::module::Spheres noise module.
-    const double DEFAULT_SPHERES_FREQUENCY = 1.0;
-
-    /// Noise module that outputs concentric spheres.
-    ///
-    /// @image html modulespheres.png
-    ///
-    /// This noise module outputs concentric spheres centered on the origin
-    /// like the concentric rings of an onion.
-    ///
-    /// The first sphere has a radius of 1.0.  Each subsequent sphere has a
-    /// radius that is 1.0 unit larger than the previous sphere.
-    ///
-    /// The output value from this noise module is determined by the distance
-    /// between the input value and the the nearest spherical surface.  The
-    /// input values that are located on a spherical surface are given the
-    /// output value 1.0 and the input values that are equidistant from two
-    /// spherical surfaces are given the output value -1.0.
-    ///
-    /// An application can change the frequency of the concentric spheres.
-    /// Increasing the frequency reduces the distances between spheres.  To
-    /// specify the frequency, call the SetFrequency() method.
-    ///
-    /// This noise module, modified with some low-frequency, low-power
-    /// turbulence, is useful for generating agate-like textures.
-    ///
-    /// This noise module does not require any source modules.    
-    class Spheres: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default frequency is set to
-        /// noise::module::DEFAULT_SPHERES_FREQUENCY.
-        Spheres ();
-
-        /// Returns the frequency of the concentric spheres.
-        ///
-        /// @returns The frequency of the concentric spheres.
-        ///
-        /// Increasing the frequency increases the density of the concentric
-        /// spheres, reducing the distances between them.
-        double GetFrequency () const
-        {
-          return m_frequency;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 0;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the frequenct of the concentric spheres.
-        ///
-        /// @param frequency The frequency of the concentric spheres.
-        ///
-        /// Increasing the frequency increases the density of the concentric
-        /// spheres, reducing the distances between them.
-        void SetFrequency (double frequency)
-        {
-          m_frequency = frequency;
-        }
-
-      protected:
-
-        /// Frequency of the concentric spheres.
-        double m_frequency;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/terrace.cpp b/libnoise/noise/src/module/terrace.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/terrace.cpp
+++ /dev/null
@@ -1,160 +0,0 @@
-// terrace.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../interp.h"
-#include "../misc.h"
-#include "terrace.h"
-
-using namespace noise::module;
-
-using namespace noise;
-
-Terrace::Terrace ():
-  Module (GetSourceModuleCount ()),
-  m_controlPointCount (0),
-  m_invertTerraces (false),
-  m_pControlPoints (NULL)
-{
-}
-
-Terrace::~Terrace ()
-{
-  delete[] m_pControlPoints;
-}
-
-void Terrace::AddControlPoint (double value)
-{
-  // Find the insertion point for the new control point and insert the new
-  // point at that position.  The control point array will remain sorted by
-  // value.
-  int insertionPos = FindInsertionPos (value);
-  InsertAtPos (insertionPos, value);
-}
-
-void Terrace::ClearAllControlPoints ()
-{
-  delete[] m_pControlPoints;
-  m_pControlPoints = NULL;
-  m_controlPointCount = 0;
-}
-
-int Terrace::FindInsertionPos (double value)
-{
-  int insertionPos;
-  for (insertionPos = 0; insertionPos < m_controlPointCount; insertionPos++) {
-    if (value < m_pControlPoints[insertionPos]) {
-      // We found the array index in which to insert the new control point.
-      // Exit now.
-      break;
-    } else if (value == m_pControlPoints[insertionPos]) {
-      // Each control point is required to contain a unique value, so throw
-      // an exception.
-      throw noise::ExceptionInvalidParam ();
-    }
-  }
-  return insertionPos;
-}
-
-double Terrace::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-  assert (m_controlPointCount >= 2);
-
-  // Get the output value from the source module.
-  double sourceModuleValue = m_pSourceModule[0]->GetValue (x, y, z);
-
-  // Find the first element in the control point array that has a value
-  // larger than the output value from the source module.
-  int indexPos;
-  for (indexPos = 0; indexPos < m_controlPointCount; indexPos++) {
-    if (sourceModuleValue < m_pControlPoints[indexPos]) {
-      break;
-    }
-  }
-
-  // Find the two nearest control points so that we can map their values
-  // onto a quadratic curve.
-  int index0 = ClampValue (indexPos - 1, 0, m_controlPointCount - 1);
-  int index1 = ClampValue (indexPos    , 0, m_controlPointCount - 1);
-
-  // If some control points are missing (which occurs if the output value from
-  // the source module is greater than the largest value or less than the
-  // smallest value of the control point array), get the value of the nearest
-  // control point and exit now.
-  if (index0 == index1) {
-    return m_pControlPoints[index1];
-  }
-
-  // Compute the alpha value used for linear interpolation.
-  double value0 = m_pControlPoints[index0];
-  double value1 = m_pControlPoints[index1];
-  double alpha = (sourceModuleValue - value0) / (value1 - value0);
-  if (m_invertTerraces) {
-    alpha = 1.0 - alpha;
-    SwapValues (value0, value1);
-  }
-
-  // Squaring the alpha produces the terrace effect.
-  alpha *= alpha;
-
-  // Now perform the linear interpolation given the alpha value.
-  return LinearInterp (value0, value1, alpha);
-}
-
-void Terrace::InsertAtPos (int insertionPos, double value)
-{
-  // Make room for the new control point at the specified position within
-  // the control point array.  The position is determined by the value of
-  // the control point; the control points must be sorted by value within
-  // that array.
-  double* newControlPoints = new double[m_controlPointCount + 1];
-  for (int i = 0; i < m_controlPointCount; i++) {
-    if (i < insertionPos) {
-      newControlPoints[i] = m_pControlPoints[i];
-    } else {
-      newControlPoints[i + 1] = m_pControlPoints[i];
-    }
-  }
-  delete[] m_pControlPoints;
-  m_pControlPoints = newControlPoints;
-  ++m_controlPointCount;
-
-  // Now that we've made room for the new control point within the array,
-  // add the new control point.
-  m_pControlPoints[insertionPos] = value;
-}
-
-void Terrace::MakeControlPoints (int controlPointCount)
-{
-  if (controlPointCount < 2) {
-    throw noise::ExceptionInvalidParam ();
-  }
-
-  ClearAllControlPoints ();
-
-  double terraceStep = 2.0 / ((double)controlPointCount - 1.0);
-  double curValue = -1.0;
-  for (int i = 0; i < (int)controlPointCount; i++) {
-    AddControlPoint (curValue);
-    curValue += terraceStep;
-  }
-}
diff --git a/libnoise/noise/src/module/terrace.h b/libnoise/noise/src/module/terrace.h
deleted file mode 100644
--- a/libnoise/noise/src/module/terrace.h
+++ /dev/null
@@ -1,242 +0,0 @@
-// terrace.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_TERRACE_H
-#define NOISE_MODULE_TERRACE_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup modifiermodules
-    /// @{
-
-    /// Noise module that maps the output value from a source module onto a
-    /// terrace-forming curve.
-    ///
-    /// @image html moduleterrace.png
-    ///
-    /// This noise module maps the output value from the source module onto a
-    /// terrace-forming curve.  The start of this curve has a slope of zero;
-    /// its slope then smoothly increases.  This curve also contains
-    /// <i>control points</i> which resets the slope to zero at that point,
-    /// producing a "terracing" effect.  Refer to the following illustration:
-    ///
-    /// @image html terrace.png
-    ///
-    /// To add a control point to this noise module, call the
-    /// AddControlPoint() method.
-    ///
-    /// An application must add a minimum of two control points to the curve.
-    /// If this is not done, the GetValue() method fails.  The control points
-    /// can have any value, although no two control points can have the same
-    /// value.  There is no limit to the number of control points that can be
-    /// added to the curve.
-    ///
-    /// This noise module clamps the output value from the source module if
-    /// that value is less than the value of the lowest control point or
-    /// greater than the value of the highest control point.
-    ///
-    /// This noise module is often used to generate terrain features such as
-    /// your stereotypical desert canyon.
-    ///
-    /// This noise module requires one source module.
-    class Terrace: public Module
-    {
-
-	    public:
-
-	      /// Constructor.
-	      Terrace ();
-
-	      /// Destructor.
-	      ~Terrace ();
-
-	      /// Adds a control point to the terrace-forming curve.
-	      ///
-	      /// @param value The value of the control point to add.
-	      ///
-	      /// @pre No two control points have the same value.
-	      ///
-	      /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-	      ///
-	      /// Two or more control points define the terrace-forming curve.  The
-        /// start of this curve has a slope of zero; its slope then smoothly
-        /// increases.  At the control points, its slope resets to zero.
-	      ///
-	      /// It does not matter which order these points are added.
-	      void AddControlPoint (double value);
-
-	      /// Deletes all the control points on the terrace-forming curve.
-	      ///
-	      /// @post All control points on the terrace-forming curve are deleted.
-	      void ClearAllControlPoints ();
-
-	      /// Returns a pointer to the array of control points on the
-	      /// terrace-forming curve.
-	      ///
-	      /// @returns A pointer to the array of control points in this noise
-	      /// module.
-	      ///
-	      /// Two or more control points define the terrace-forming curve.  The
-        /// start of this curve has a slope of zero; its slope then smoothly
-        /// increases.  At the control points, its slope resets to zero.
-	      ///
-        /// Before calling this method, call GetControlPointCount() to
-        /// determine the number of control points in this array.
-	      ///
-	      /// It is recommended that an application does not store this pointer
-        /// for later use since the pointer to the array may change if the
-        /// application calls another method of this object.
-	      const double* GetControlPointArray () const
-	      {
-	        return m_pControlPoints;
-	      }
-
-	      /// Returns the number of control points on the terrace-forming curve.
-	      ///
-	      /// @returns The number of control points on the terrace-forming
-        /// curve.
-	      int GetControlPointCount () const
-	      {
-	        return m_controlPointCount;
-	      }
-
-    	  virtual int GetSourceModuleCount () const
-	      {
-	        return 1;
-	      }
-
-        /// Enables or disables the inversion of the terrace-forming curve
-        /// between the control points.
-        ///
-	      /// @param invert Specifies whether to invert the curve between the
-        /// control points.
-	      void InvertTerraces (bool invert = true)
-	      {
-	        m_invertTerraces = invert;
-	      }
-
-	      /// Determines if the terrace-forming curve between the control
-        /// points is inverted.
-        ///
-        /// @returns
-        /// - @a true if the curve between the control points is inverted.
-        /// - @a false if the curve between the control points is not
-        ///   inverted.
-        bool IsTerracesInverted () const
-        {
-	        return m_invertTerraces;
-        }
-
-    	  virtual double GetValue (double x, double y, double z) const;
-
-	      /// Creates a number of equally-spaced control points that range from
-        /// -1 to +1.
-	      ///
-	      /// @param controlPointCount The number of control points to generate.
-	      ///
-	      /// @pre The number of control points must be greater than or equal to
-	      /// 2.
-	      ///
-	      /// @post The previous control points on the terrace-forming curve are
-        /// deleted.
-	      ///
-	      /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-	      ///
-	      /// Two or more control points define the terrace-forming curve.  The
-        /// start of this curve has a slope of zero; its slope then smoothly
-        /// increases.  At the control points, its slope resets to zero.
-        void MakeControlPoints (int controlPointCount);
-
-    	protected:
-
-	      /// Determines the array index in which to insert the control point
-	      /// into the internal control point array.
-	      ///
-	      /// @param value The value of the control point.
-	      ///
-	      /// @returns The array index in which to insert the control point.
-	      ///
-	      /// @pre No two control points have the same value.
-	      ///
-	      /// @throw noise::ExceptionInvalidParam An invalid parameter was
-        /// specified; see the preconditions for more information.
-	      ///
-	      /// By inserting the control point at the returned array index, this
-        /// class ensures that the control point array is sorted by value.
-        /// The code that maps a value onto the curve requires a sorted
-        /// control point array.
-	      int FindInsertionPos (double value);
-
-	      /// Inserts the control point at the specified position in the
-	      /// internal control point array.
-	      ///
-	      /// @param insertionPos The zero-based array position in which to
-        /// insert the control point.
-	      /// @param value The value of the control point.
-	      ///
-	      /// To make room for this new control point, this method reallocates
-        /// the control point array and shifts all control points occurring
-        /// after the insertion position up by one.
-	      ///
-	      /// Because the curve mapping algorithm in this noise module requires
-        /// that all control points in the array be sorted by value, the new
-        /// control point should be inserted at the position in which the
-        /// order is still preserved.
-	      void InsertAtPos (int insertionPos, double value);
-
-	      /// Number of control points stored in this noise module.
-	      int m_controlPointCount;
-
-        /// Determines if the terrace-forming curve between all control points
-        /// is inverted.
-	      bool m_invertTerraces;
-
-	      /// Array that stores the control points.
-	      double* m_pControlPoints;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/translatepoint.cpp b/libnoise/noise/src/module/translatepoint.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/translatepoint.cpp
+++ /dev/null
@@ -1,41 +0,0 @@
-// translatepoint.cpp
-//
-// Copyright (C) 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "translatepoint.h"
-
-using namespace noise::module;
-
-TranslatePoint::TranslatePoint ():
-  Module (GetSourceModuleCount ()),
-  m_xTranslation (DEFAULT_TRANSLATE_POINT_X),
-  m_yTranslation (DEFAULT_TRANSLATE_POINT_Y),
-  m_zTranslation (DEFAULT_TRANSLATE_POINT_Z)
-{
-}
-
-double TranslatePoint::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  return m_pSourceModule[0]->GetValue (x + m_xTranslation, y + m_yTranslation,
-    z + m_zTranslation);
-}
diff --git a/libnoise/noise/src/module/translatepoint.h b/libnoise/noise/src/module/translatepoint.h
deleted file mode 100644
--- a/libnoise/noise/src/module/translatepoint.h
+++ /dev/null
@@ -1,223 +0,0 @@
-// translatepoint.h
-//
-// Copyright (C) 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_TRANSLATEPOINT_H
-#define NOISE_MODULE_TRANSLATEPOINT_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup transformermodules
-    /// @{
-
-    /// Default translation factor applied to the @a x coordinate for the
-    /// noise::module::TranslatePoint noise module.
-    const double DEFAULT_TRANSLATE_POINT_X = 0.0;
-
-    /// Default translation factor applied to the @a y coordinate for the
-    /// noise::module::TranslatePoint noise module.
-    const double DEFAULT_TRANSLATE_POINT_Y = 0.0;
-
-    /// Default translation factor applied to the @a z coordinate for the
-    /// noise::module::TranslatePoint noise module.
-    const double DEFAULT_TRANSLATE_POINT_Z = 0.0;
-
-    /// Noise module that moves the coordinates of the input value before
-    /// returning the output value from a source module.
-    ///
-    /// @image html moduletranslatepoint.png
-    ///
-    /// The GetValue() method moves the ( @a x, @a y, @a z ) coordinates of
-    /// the input value by a translation amount before returning the output
-    /// value from the source module.  To set the translation amount, call
-    /// the SetTranslation() method.  To set the translation amount to
-    /// apply to the individual @a x, @a y, or @a z coordinates, call the
-    /// SetXTranslation(), SetYTranslation() or SetZTranslation() methods,
-    /// respectively.
-    ///
-    /// This noise module requires one source module.
-    class TranslatePoint: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default translation amount to apply to the @a x coordinate is
-        /// set to noise::module::DEFAULT_TRANSLATE_POINT_X.
-        ///
-        /// The default translation amount to apply to the @a y coordinate is
-        /// set to noise::module::DEFAULT_TRANSLATE_POINT_Y.
-        ///
-        /// The default translation amount to apply to the @a z coordinate is
-        /// set to noise::module::DEFAULT_TRANSLATE_POINT_Z.
-        TranslatePoint ();
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Returns the translation amount to apply to the @a x coordinate of
-        /// the input value.
-        ///
-        /// @returns The translation amount to apply to the @a x coordinate.
-        double GetXTranslation () const
-        {
-          return m_xTranslation;
-        }
-
-        /// Returns the translation amount to apply to the @a y coordinate of
-        /// the input value.
-        ///
-        /// @returns The translation amount to apply to the @a y coordinate.
-        double GetYTranslation () const
-        {
-          return m_yTranslation;
-        }
-
-        /// Returns the translation amount to apply to the @a z coordinate of
-        /// the input value.
-        ///
-        /// @returns The translation amount to apply to the @a z coordinate.
-        double GetZTranslation () const
-        {
-          return m_zTranslation;
-        }
-
-        /// Sets the translation amount to apply to the input value.
-        ///
-        /// @param translation The translation amount to apply.
-        ///
-        /// The GetValue() method moves the ( @a x, @a y, @a z ) coordinates
-        /// of the input value by a translation amount before returning the
-        /// output value from the source module
-        void SetTranslation (double translation)
-        {
-          m_xTranslation = translation;
-          m_yTranslation = translation;
-          m_zTranslation = translation;
-        }
-
-        /// Sets the translation amounts to apply to the ( @a x, @a y, @a z )
-        /// coordinates of the input value.
-        ///
-        /// @param xTranslation The translation amount to apply to the @a x
-        /// coordinate.
-        /// @param yTranslation The translation amount to apply to the @a y
-        /// coordinate.
-        /// @param zTranslation The translation amount to apply to the @a z
-        /// coordinate.
-        ///
-        /// The GetValue() method moves the ( @a x, @a y, @a z ) coordinates
-        /// of the input value by a translation amount before returning the
-        /// output value from the source module
-        void SetTranslation (double xTranslation, double yTranslation,
-          double zTranslation)
-        {
-          m_xTranslation = xTranslation;
-          m_yTranslation = yTranslation;
-          m_zTranslation = zTranslation;
-        }
-
-        /// Sets the translation amount to apply to the @a x coordinate of the
-        /// input value.
-        ///
-        /// @param xTranslation The translation amount to apply to the @a x
-        /// coordinate.
-        ///
-        /// The GetValue() method moves the ( @a x, @a y, @a z ) coordinates
-        /// of the input value by a translation amount before returning the
-        /// output value from the source module
-        void SetXTranslation (double xTranslation)
-        {
-          m_xTranslation = xTranslation;
-        }
-
-        /// Sets the translation amount to apply to the @a y coordinate of the
-        /// input value.
-        ///
-        /// @param yTranslation The translation amount to apply to the @a y
-        /// coordinate.
-        ///
-        /// The GetValue() method moves the ( @a x, @a y, @a z ) coordinates
-        /// of the input value by a translation amount before returning the
-        /// output value from the source module
-        void SetYTranslation (double yTranslation)
-        {
-          m_yTranslation = yTranslation;
-        }
-
-        /// Sets the translation amount to apply to the @a z coordinate of the
-        /// input value.
-        ///
-        /// @param zTranslation The translation amount to apply to the @a z
-        /// coordinate.
-        ///
-        /// The GetValue() method moves the ( @a x, @a y, @a z ) coordinates
-        /// of the input value by a translation amount before returning the
-        /// output value from the source module
-        void SetZTranslation (double zTranslation)
-        {
-          m_zTranslation = zTranslation;
-        }
-
-      protected:
-
-        /// Translation amount applied to the @a x coordinate of the input
-        /// value.
-        double m_xTranslation;
-
-        /// Translation amount applied to the @a y coordinate of the input
-        /// value.
-        double m_yTranslation;
-
-        /// Translation amount applied to the @a z coordinate of the input
-        /// value.
-        double m_zTranslation;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/turbulence.cpp b/libnoise/noise/src/module/turbulence.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/turbulence.cpp
+++ /dev/null
@@ -1,91 +0,0 @@
-// turbulence.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "turbulence.h"
-
-using namespace noise::module;
-
-Turbulence::Turbulence ():
-  Module (GetSourceModuleCount ()),
-  m_power (DEFAULT_TURBULENCE_POWER)
-{
-  SetSeed (DEFAULT_TURBULENCE_SEED);
-  SetFrequency (DEFAULT_TURBULENCE_FREQUENCY);
-  SetRoughness (DEFAULT_TURBULENCE_ROUGHNESS);
-}
-
-double Turbulence::GetFrequency () const
-{
-  // Since each noise::module::Perlin noise module has the same frequency, it
-  // does not matter which module we use to retrieve the frequency.
-  return m_xDistortModule.GetFrequency ();
-}
-
-int Turbulence::GetSeed () const
-{
-  return m_xDistortModule.GetSeed ();
-}
-
-double Turbulence::GetValue (double x, double y, double z) const
-{
-  assert (m_pSourceModule[0] != NULL);
-
-  // Get the values from the three noise::module::Perlin noise modules and
-  // add each value to each coordinate of the input value.  There are also
-  // some offsets added to the coordinates of the input values.  This prevents
-  // the distortion modules from returning zero if the (x, y, z) coordinates,
-  // when multiplied by the frequency, are near an integer boundary.  This is
-  // due to a property of gradient coherent noise, which returns zero at
-  // integer boundaries.
-  double x0, y0, z0;
-  double x1, y1, z1;
-  double x2, y2, z2;
-  x0 = x + (12414.0 / 65536.0);
-  y0 = y + (65124.0 / 65536.0);
-  z0 = z + (31337.0 / 65536.0);
-  x1 = x + (26519.0 / 65536.0);
-  y1 = y + (18128.0 / 65536.0);
-  z1 = z + (60493.0 / 65536.0);
-  x2 = x + (53820.0 / 65536.0);
-  y2 = y + (11213.0 / 65536.0);
-  z2 = z + (44845.0 / 65536.0);
-  double xDistort = x + (m_xDistortModule.GetValue (x0, y0, z0)
-    * m_power);
-  double yDistort = y + (m_yDistortModule.GetValue (x1, y1, z1)
-    * m_power);
-  double zDistort = z + (m_zDistortModule.GetValue (x2, y2, z2)
-    * m_power);
-
-  // Retrieve the output value at the offsetted input value instead of the
-  // original input value.
-  return m_pSourceModule[0]->GetValue (xDistort, yDistort, zDistort);
-}
-
-void Turbulence::SetSeed (int seed)
-{
-  // Set the seed of each noise::module::Perlin noise modules.  To prevent any
-  // sort of weird artifacting, use a slightly different seed for each noise
-  // module.
-  m_xDistortModule.SetSeed (seed    );
-  m_yDistortModule.SetSeed (seed + 1);
-  m_zDistortModule.SetSeed (seed + 2);
-}
diff --git a/libnoise/noise/src/module/turbulence.h b/libnoise/noise/src/module/turbulence.h
deleted file mode 100644
--- a/libnoise/noise/src/module/turbulence.h
+++ /dev/null
@@ -1,269 +0,0 @@
-// turbulence.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_TURBULENCE_H
-#define NOISE_MODULE_TURBULENCE_H
-
-#include "perlin.h"
-
-namespace noise
-{
-
-  namespace module 
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup transformermodules
-    /// @{
-
-    /// Default frequency for the noise::module::Turbulence noise module.
-    const double DEFAULT_TURBULENCE_FREQUENCY = DEFAULT_PERLIN_FREQUENCY;
-
-    /// Default power for the noise::module::Turbulence noise module.
-    const double DEFAULT_TURBULENCE_POWER = 1.0;
-
-    /// Default roughness for the noise::module::Turbulence noise module.
-    const int DEFAULT_TURBULENCE_ROUGHNESS = 3;
-
-    /// Default noise seed for the noise::module::Turbulence noise module.
-    const int DEFAULT_TURBULENCE_SEED = DEFAULT_PERLIN_SEED;
-
-    /// Noise module that randomly displaces the input value before
-    /// returning the output value from a source module.
-    ///
-    /// @image html moduleturbulence.png
-    ///
-    /// @a Turbulence is the pseudo-random displacement of the input value.
-    /// The GetValue() method randomly displaces the ( @a x, @a y, @a z )
-    /// coordinates of the input value before retrieving the output value from
-    /// the source module.  To control the turbulence, an application can
-    /// modify its frequency, its power, and its roughness.
-    ///
-    /// The frequency of the turbulence determines how rapidly the
-    /// displacement amount changes.  To specify the frequency, call the
-    /// SetFrequency() method.
-    ///
-    /// The power of the turbulence determines the scaling factor that is
-    /// applied to the displacement amount.  To specify the power, call the
-    /// SetPower() method.
-    ///
-    /// The roughness of the turbulence determines the roughness of the
-    /// changes to the displacement amount.  Low values smoothly change the
-    /// displacement amount.  High values roughly change the displacement
-    /// amount, which produces more "kinky" changes.  To specify the
-    /// roughness, call the SetRoughness() method.
-    ///
-    /// Use of this noise module may require some trial and error.  Assuming
-    /// that you are using a generator module as the source module, you
-    /// should first:
-    /// - Set the frequency to the same frequency as the source module.
-    /// - Set the power to the reciprocal of the frequency.
-    ///
-    /// From these initial frequency and power values, modify these values
-    /// until this noise module produce the desired changes in your terrain or
-    /// texture.  For example:
-    /// - Low frequency (1/8 initial frequency) and low power (1/8 initial
-    ///   power) produces very minor, almost unnoticeable changes.
-    /// - Low frequency (1/8 initial frequency) and high power (8 times
-    ///   initial power) produces "ropey" lava-like terrain or marble-like
-    ///   textures.
-    /// - High frequency (8 times initial frequency) and low power (1/8
-    ///   initial power) produces a noisy version of the initial terrain or
-    ///   texture.
-    /// - High frequency (8 times initial frequency) and high power (8 times
-    ///   initial power) produces nearly pure noise, which isn't entirely
-    ///   useful.
-    ///
-    /// Displacing the input values result in more realistic terrain and
-    /// textures.  If you are generating elevations for terrain height maps,
-    /// you can use this noise module to produce more realistic mountain
-    /// ranges or terrain features that look like flowing lava rock.  If you
-    /// are generating values for textures, you can use this noise module to
-    /// produce realistic marble-like or "oily" textures.
-    ///
-    /// Internally, there are three noise::module::Perlin noise modules
-    /// that displace the input value; one for the @a x, one for the @a y,
-    /// and one for the @a z coordinate.
-    ///
-    /// This noise module requires one source module.
-    class Turbulence: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default frequency is set to
-        /// noise::module::DEFAULT_TURBULENCE_FREQUENCY.
-        ///    
-        /// The default power is set to
-        /// noise::module::DEFAULT_TURBULENCE_POWER.
-        ///
-        /// The default roughness is set to
-        /// noise::module::DEFAULT_TURBULENCE_ROUGHNESS.
-        ///
-        /// The default seed value is set to
-        /// noise::module::DEFAULT_TURBULENCE_SEED.
-        Turbulence ();
-
-        /// Returns the frequency of the turbulence.
-        ///
-        /// @returns The frequency of the turbulence.
-        ///
-        /// The frequency of the turbulence determines how rapidly the
-        /// displacement amount changes.
-        double GetFrequency () const;
-
-        /// Returns the power of the turbulence.
-        ///
-        /// @returns The power of the turbulence.
-        ///
-        /// The power of the turbulence determines the scaling factor that is
-        /// applied to the displacement amount.
-        double GetPower () const
-        {
-          return m_power;
-        }
-
-        /// Returns the roughness of the turbulence.
-        ///
-        /// @returns The roughness of the turbulence.
-        ///
-        /// The roughness of the turbulence determines the roughness of the
-        /// changes to the displacement amount.  Low values smoothly change
-        /// the displacement amount.  High values roughly change the
-        /// displacement amount, which produces more "kinky" changes.
-        int GetRoughnessCount () const
-        {
-          return m_xDistortModule.GetOctaveCount ();
-        }
-
-        /// Returns the seed value of the internal Perlin-noise modules that
-        /// are used to displace the input values.
-        ///
-        /// @returns The seed value.
-        ///
-        /// Internally, there are three noise::module::Perlin noise modules
-        /// that displace the input value; one for the @a x, one for the @a y,
-        /// and one for the @a z coordinate.  
-        int GetSeed () const;
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 1;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the frequency of the turbulence.
-        ///
-        /// @param frequency The frequency of the turbulence.
-        ///
-        /// The frequency of the turbulence determines how rapidly the
-        /// displacement amount changes.
-        void SetFrequency (double frequency)
-        {
-          // Set the frequency of each Perlin-noise module.
-          m_xDistortModule.SetFrequency (frequency);
-          m_yDistortModule.SetFrequency (frequency);
-          m_zDistortModule.SetFrequency (frequency);
-        }
-
-        /// Sets the power of the turbulence.
-        ///
-        /// @param power The power of the turbulence.
-        ///
-        /// The power of the turbulence determines the scaling factor that is
-        /// applied to the displacement amount.
-        void SetPower (double power)
-        {
-          m_power = power;
-        }
-
-        /// Sets the roughness of the turbulence.
-        ///
-        /// @param roughness The roughness of the turbulence.
-        ///
-        /// The roughness of the turbulence determines the roughness of the
-        /// changes to the displacement amount.  Low values smoothly change
-        /// the displacement amount.  High values roughly change the
-        /// displacement amount, which produces more "kinky" changes.
-        ///
-        /// Internally, there are three noise::module::Perlin noise modules
-        /// that displace the input value; one for the @a x, one for the @a y,
-        /// and one for the @a z coordinate.  The roughness value is equal to
-        /// the number of octaves used by the noise::module::Perlin noise
-        /// modules.
-        void SetRoughness (int roughness)
-        {
-          // Set the octave count for each Perlin-noise module.
-          m_xDistortModule.SetOctaveCount (roughness);
-          m_yDistortModule.SetOctaveCount (roughness);
-          m_zDistortModule.SetOctaveCount (roughness);
-        }
-
-        /// Sets the seed value of the internal noise modules that are used to
-        /// displace the input values.
-        ///
-        /// @param seed The seed value.
-        ///
-        /// Internally, there are three noise::module::Perlin noise modules
-        /// that displace the input value; one for the @a x, one for the @a y,
-        /// and one for the @a z coordinate.  This noise module assigns the
-        /// following seed values to the noise::module::Perlin noise modules:
-        /// - It assigns the seed value (@a seed + 0) to the @a x noise module.
-        /// - It assigns the seed value (@a seed + 1) to the @a y noise module.
-        /// - It assigns the seed value (@a seed + 2) to the @a z noise module.
-        void SetSeed (int seed);
-
-      protected:
-
-        /// The power (scale) of the displacement.
-        double m_power;
-
-        /// Noise module that displaces the @a x coordinate.
-        Perlin m_xDistortModule;
-
-        /// Noise module that displaces the @a y coordinate.
-        Perlin m_yDistortModule;
-
-        /// Noise module that displaces the @a z coordinate.
-        Perlin m_zDistortModule;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/module/voronoi.cpp b/libnoise/noise/src/module/voronoi.cpp
deleted file mode 100644
--- a/libnoise/noise/src/module/voronoi.cpp
+++ /dev/null
@@ -1,101 +0,0 @@
-// voronoi.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "../mathconsts.h"
-#include "voronoi.h"
-
-using namespace noise::module;
-
-Voronoi::Voronoi ():
-  Module (GetSourceModuleCount ()),
-  m_displacement   (DEFAULT_VORONOI_DISPLACEMENT),
-  m_enableDistance (false                       ),
-  m_frequency      (DEFAULT_VORONOI_FREQUENCY   ),
-  m_seed           (DEFAULT_VORONOI_SEED        )
-{
-}
-
-double Voronoi::GetValue (double x, double y, double z) const
-{
-  // This method could be more efficient by caching the seed values.  Fix
-  // later.
-
-  x *= m_frequency;
-  y *= m_frequency;
-  z *= m_frequency;
-
-  int xInt = (x > 0.0? (int)x: (int)x - 1);
-  int yInt = (y > 0.0? (int)y: (int)y - 1);
-  int zInt = (z > 0.0? (int)z: (int)z - 1);
-
-  double minDist = 2147483647.0;
-  double xCandidate = 0;
-  double yCandidate = 0;
-  double zCandidate = 0;
-
-  // Inside each unit cube, there is a seed point at a random position.  Go
-  // through each of the nearby cubes until we find a cube with a seed point
-  // that is closest to the specified position.
-  for (int zCur = zInt - 2; zCur <= zInt + 2; zCur++) {
-    for (int yCur = yInt - 2; yCur <= yInt + 2; yCur++) {
-      for (int xCur = xInt - 2; xCur <= xInt + 2; xCur++) {
-
-        // Calculate the position and distance to the seed point inside of
-        // this unit cube.
-        double xPos = xCur + ValueNoise3D (xCur, yCur, zCur, m_seed    );
-        double yPos = yCur + ValueNoise3D (xCur, yCur, zCur, m_seed + 1);
-        double zPos = zCur + ValueNoise3D (xCur, yCur, zCur, m_seed + 2);
-        double xDist = xPos - x;
-        double yDist = yPos - y;
-        double zDist = zPos - z;
-        double dist = xDist * xDist + yDist * yDist + zDist * zDist;
-
-        if (dist < minDist) {
-          // This seed point is closer to any others found so far, so record
-          // this seed point.
-          minDist = dist;
-          xCandidate = xPos;
-          yCandidate = yPos;
-          zCandidate = zPos;
-        }
-      }
-    }
-  }
-
-  double value;
-  if (m_enableDistance) {
-    // Determine the distance to the nearest seed point.
-    double xDist = xCandidate - x;
-    double yDist = yCandidate - y;
-    double zDist = zCandidate - z;
-    value = (sqrt (xDist * xDist + yDist * yDist + zDist * zDist)
-      ) * SQRT_3 - 1.0;
-  } else {
-    value = 0.0;
-  }
-
-  // Return the calculated distance with the displacement value applied.
-  return value + (m_displacement * (double)ValueNoise3D (
-    (int)(floor (xCandidate)),
-    (int)(floor (yCandidate)),
-    (int)(floor (zCandidate))));
-}
diff --git a/libnoise/noise/src/module/voronoi.h b/libnoise/noise/src/module/voronoi.h
deleted file mode 100644
--- a/libnoise/noise/src/module/voronoi.h
+++ /dev/null
@@ -1,246 +0,0 @@
-// voronoi.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_MODULE_VORONOI_H
-#define NOISE_MODULE_VORONOI_H
-
-#include "modulebase.h"
-
-namespace noise
-{
-
-  namespace module
-  {
-
-    /// @addtogroup libnoise
-    /// @{
-
-    /// @addtogroup modules
-    /// @{
-
-    /// @addtogroup generatormodules
-    /// @{
-
-    /// Default displacement to apply to each cell for the
-    /// noise::module::Voronoi noise module.
-    const double DEFAULT_VORONOI_DISPLACEMENT = 1.0;
-
-    /// Default frequency of the seed points for the noise::module::Voronoi
-    /// noise module.
-    const double DEFAULT_VORONOI_FREQUENCY = 1.0;
-
-    /// Default seed of the noise function for the noise::module::Voronoi
-    /// noise module.
-    const int DEFAULT_VORONOI_SEED = 0;
-
-    /// Noise module that outputs Voronoi cells.
-    ///
-    /// @image html modulevoronoi.png
-    ///
-    /// In mathematics, a <i>Voronoi cell</i> is a region containing all the
-    /// points that are closer to a specific <i>seed point</i> than to any
-    /// other seed point.  These cells mesh with one another, producing
-    /// polygon-like formations.
-    ///
-    /// By default, this noise module randomly places a seed point within
-    /// each unit cube.  By modifying the <i>frequency</i> of the seed points,
-    /// an application can change the distance between seed points.  The
-    /// higher the frequency, the closer together this noise module places
-    /// the seed points, which reduces the size of the cells.  To specify the
-    /// frequency of the cells, call the SetFrequency() method.
-    ///
-    /// This noise module assigns each Voronoi cell with a random constant
-    /// value from a coherent-noise function.  The <i>displacement value</i>
-    /// controls the range of random values to assign to each cell.  The
-    /// range of random values is +/- the displacement value.  Call the
-    /// SetDisplacement() method to specify the displacement value.
-    ///
-    /// To modify the random positions of the seed points, call the SetSeed()
-    /// method.
-    ///
-    /// This noise module can optionally add the distance from the nearest
-    /// seed to the output value.  To enable this feature, call the
-    /// EnableDistance() method.  This causes the points in the Voronoi cells
-    /// to increase in value the further away that point is from the nearest
-    /// seed point.
-    ///
-    /// Voronoi cells are often used to generate cracked-mud terrain
-    /// formations or crystal-like textures
-    ///
-    /// This noise module requires no source modules.
-    class Voronoi: public Module
-    {
-
-      public:
-
-        /// Constructor.
-        ///
-        /// The default displacement value is set to
-        /// noise::module::DEFAULT_VORONOI_DISPLACEMENT.
-        ///
-        /// The default frequency is set to
-        /// noise::module::DEFAULT_VORONOI_FREQUENCY.
-        ///
-        /// The default seed value is set to
-        /// noise::module::DEFAULT_VORONOI_SEED.
-        Voronoi ();
-
-        /// Enables or disables applying the distance from the nearest seed
-        /// point to the output value.
-        ///
-        /// @param enable Specifies whether to apply the distance to the
-        /// output value or not.
-        ///
-        /// Applying the distance from the nearest seed point to the output
-        /// value causes the points in the Voronoi cells to increase in value
-        /// the further away that point is from the nearest seed point.
-        /// Setting this value to @a true (and setting the displacement to a
-        /// near-zero value) causes this noise module to generate cracked mud
-        /// formations.
-        void EnableDistance (bool enable = true)
-        {
-          m_enableDistance = enable;
-        }
-
-        /// Returns the displacement value of the Voronoi cells.
-        ///
-        /// @returns The displacement value of the Voronoi cells.
-        ///
-        /// This noise module assigns each Voronoi cell with a random constant
-        /// value from a coherent-noise function.  The <i>displacement
-        /// value</i> controls the range of random values to assign to each
-        /// cell.  The range of random values is +/- the displacement value.
-        double GetDisplacement () const
-        {
-          return m_displacement;
-        }
-
-        /// Returns the frequency of the seed points.
-        ///
-        /// @returns The frequency of the seed points.
-        ///
-        /// The frequency determines the size of the Voronoi cells and the
-        /// distance between these cells.
-        double GetFrequency () const
-        {
-          return m_frequency;
-        }
-
-        virtual int GetSourceModuleCount () const
-        {
-          return 0;
-        }
-
-        /// Returns the seed value used by the Voronoi cells
-        ///
-        /// @returns The seed value.
-        ///
-        /// The positions of the seed values are calculated by a
-        /// coherent-noise function.  By modifying the seed value, the output
-        /// of that function changes.
-        int GetSeed () const
-        {
-          return m_seed;
-        }
-
-        /// Determines if the distance from the nearest seed point is applied
-        /// to the output value.
-        ///
-        /// @returns
-        /// - @a true if the distance is applied to the output value.
-        /// - @a false if not.
-        ///
-        /// Applying the distance from the nearest seed point to the output
-        /// value causes the points in the Voronoi cells to increase in value
-        /// the further away that point is from the nearest seed point.
-        bool IsDistanceEnabled () const
-        {
-          return m_enableDistance;
-        }
-
-        virtual double GetValue (double x, double y, double z) const;
-
-        /// Sets the displacement value of the Voronoi cells.
-        ///
-        /// @param displacement The displacement value of the Voronoi cells.
-        ///
-        /// This noise module assigns each Voronoi cell with a random constant
-        /// value from a coherent-noise function.  The <i>displacement
-        /// value</i> controls the range of random values to assign to each
-        /// cell.  The range of random values is +/- the displacement value.
-        void SetDisplacement (double displacement)
-        {
-          m_displacement = displacement;
-        }
-
-        /// Sets the frequency of the seed points.
-        ///
-        /// @param frequency The frequency of the seed points.
-        ///
-        /// The frequency determines the size of the Voronoi cells and the
-        /// distance between these cells.
-        void SetFrequency (double frequency)
-        {
-          m_frequency = frequency;
-        }
-
-        /// Sets the seed value used by the Voronoi cells
-        ///
-        /// @param seed The seed value.
-        ///
-        /// The positions of the seed values are calculated by a
-        /// coherent-noise function.  By modifying the seed value, the output
-        /// of that function changes.
-        void SetSeed (int seed)
-        {
-          m_seed = seed;
-        }
-
-      protected:
-
-        /// Scale of the random displacement to apply to each Voronoi cell.
-        double m_displacement;
-
-        /// Determines if the distance from the nearest seed point is applied to
-        /// the output value.
-        bool m_enableDistance;
-
-        /// Frequency of the seed points.
-        double m_frequency;
-
-        /// Seed value used by the coherent-noise function to determine the
-        /// positions of the seed points.
-        int m_seed;
-
-    };
-
-    /// @}
-
-    /// @}
-
-    /// @}
-
-  }
-
-}
-
-#endif
diff --git a/libnoise/noise/src/noise.h b/libnoise/noise/src/noise.h
deleted file mode 100644
--- a/libnoise/noise/src/noise.h
+++ /dev/null
@@ -1,74 +0,0 @@
-// noise.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_H
-#define NOISE_H
-
-/// @mainpage libnoise
-///
-/// @section intro Introduction
-///
-/// libnoise is a portable C++ library that is used to generate <i>coherent
-/// noise</i>, a type of smoothly-changing noise. libnoise can generate Perlin
-/// noise, ridged multifractal noise, and other types of coherent noise.
-///
-/// Coherent noise is often used by graphics programmers to generate
-/// natural-looking textures, planetary terrain, and other things. It can
-/// also be used to move critters in a realistic way.
-///
-/// libnoise is known to compile using the following compilers on the
-/// following platforms:
-/// - Microsoft Visual C++ 5.0 under Microsoft Windows 2000 Service Pack 4
-/// - gcc 3.3.4 under Gentoo Linux 10.0 (x86)
-///
-/// It is not known if libnoise will compile on 64-bit platforms, although
-/// there is a good change that it will.
-///
-/// @section noise Noise Modules
-///
-/// In libnoise, coherent-noise generators are encapsulated in classes called
-/// <i>noise modules</i>. There are many different types of noise modules.
-/// Some noise modules can combine or modify the outputs of other noise
-/// modules in various ways; you can join these modules together to generate
-/// very complex coherent noise.
-///
-/// A noise module receives a 3-dimensional input value from the application,
-/// computes the noise value given that input value, and returns the resulting
-/// value back to the application.
-///
-/// If the application passes the same input value to a noise module, the
-/// noise module returns the same output value.
-///
-/// All noise modules are derived from the noise::module::Module abstract
-/// base class.
-///
-/// @section contact Contact
-///
-/// Contact jas for questions about libnoise.  The spam-resistant email
-/// address is jlbezigvins@gmzigail.com (For great email, take off every
-/// <a href=http://www.planettribes.com/allyourbase/story.shtml>zig</a>.)
-
-#include "module/module.h"
-#include "model/model.h"
-#include "misc.h"
-
-#endif
diff --git a/libnoise/noise/src/noisegen.cpp b/libnoise/noise/src/noisegen.cpp
deleted file mode 100644
--- a/libnoise/noise/src/noisegen.cpp
+++ /dev/null
@@ -1,220 +0,0 @@
-// noisegen.cpp
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include "noisegen.h"
-#include "interp.h"
-#include "vectortable.h"
-
-using namespace noise;
-
-// Specifies the version of the coherent-noise functions to use.
-// - Set to 2 to use the current version.
-// - Set to 1 to use the flawed version from the original version of libnoise.
-// If your application requires coherent-noise values that were generated by
-// an earlier version of libnoise, change this constant to the appropriate
-// value and recompile libnoise.
-#define NOISE_VERSION 2
-
-// These constants control certain parameters that all coherent-noise
-// functions require.
-#if (NOISE_VERSION == 1)
-// Constants used by the original version of libnoise.
-// Because X_NOISE_GEN is not relatively prime to the other values, and
-// Z_NOISE_GEN is close to 256 (the number of random gradient vectors),
-// patterns show up in high-frequency coherent noise.
-const int X_NOISE_GEN = 1;
-const int Y_NOISE_GEN = 31337;
-const int Z_NOISE_GEN = 263;
-const int SEED_NOISE_GEN = 1013;
-const int SHIFT_NOISE_GEN = 13;
-#else
-// Constants used by the current version of libnoise.
-const int X_NOISE_GEN = 1619;
-const int Y_NOISE_GEN = 31337;
-const int Z_NOISE_GEN = 6971;
-const int SEED_NOISE_GEN = 1013;
-const int SHIFT_NOISE_GEN = 8;
-#endif
-
-double noise::GradientCoherentNoise3D (double x, double y, double z, int seed,
-  NoiseQuality noiseQuality)
-{
-  // Create a unit-length cube aligned along an integer boundary.  This cube
-  // surrounds the input point.
-  int x0 = (x > 0.0? (int)x: (int)x - 1);
-  int x1 = x0 + 1;
-  int y0 = (y > 0.0? (int)y: (int)y - 1);
-  int y1 = y0 + 1;
-  int z0 = (z > 0.0? (int)z: (int)z - 1);
-  int z1 = z0 + 1;
-
-  // Map the difference between the coordinates of the input value and the
-  // coordinates of the cube's outer-lower-left vertex onto an S-curve.
-  double xs = 0, ys = 0, zs = 0;
-  switch (noiseQuality) {
-    case QUALITY_FAST:
-      xs = (x - (double)x0);
-      ys = (y - (double)y0);
-      zs = (z - (double)z0);
-      break;
-    case QUALITY_STD:
-      xs = SCurve3 (x - (double)x0);
-      ys = SCurve3 (y - (double)y0);
-      zs = SCurve3 (z - (double)z0);
-      break;
-    case QUALITY_BEST:
-      xs = SCurve5 (x - (double)x0);
-      ys = SCurve5 (y - (double)y0);
-      zs = SCurve5 (z - (double)z0);
-      break;
-  }
-
-  // Now calculate the noise values at each vertex of the cube.  To generate
-  // the coherent-noise value at the input point, interpolate these eight
-  // noise values using the S-curve value as the interpolant (trilinear
-  // interpolation.)
-  double n0, n1, ix0, ix1, iy0, iy1;
-  n0   = GradientNoise3D (x, y, z, x0, y0, z0, seed);
-  n1   = GradientNoise3D (x, y, z, x1, y0, z0, seed);
-  ix0  = LinearInterp (n0, n1, xs);
-  n0   = GradientNoise3D (x, y, z, x0, y1, z0, seed);
-  n1   = GradientNoise3D (x, y, z, x1, y1, z0, seed);
-  ix1  = LinearInterp (n0, n1, xs);
-  iy0  = LinearInterp (ix0, ix1, ys);
-  n0   = GradientNoise3D (x, y, z, x0, y0, z1, seed);
-  n1   = GradientNoise3D (x, y, z, x1, y0, z1, seed);
-  ix0  = LinearInterp (n0, n1, xs);
-  n0   = GradientNoise3D (x, y, z, x0, y1, z1, seed);
-  n1   = GradientNoise3D (x, y, z, x1, y1, z1, seed);
-  ix1  = LinearInterp (n0, n1, xs);
-  iy1  = LinearInterp (ix0, ix1, ys);
-
-  return LinearInterp (iy0, iy1, zs);
-}
-
-double noise::GradientNoise3D (double fx, double fy, double fz, int ix,
-  int iy, int iz, int seed)
-{
-  // Randomly generate a gradient vector given the integer coordinates of the
-  // input value.  This implementation generates a random number and uses it
-  // as an index into a normalized-vector lookup table.
-  int vectorIndex = (
-      X_NOISE_GEN    * ix
-    + Y_NOISE_GEN    * iy
-    + Z_NOISE_GEN    * iz
-    + SEED_NOISE_GEN * seed)
-    & 0xffffffff;
-  vectorIndex ^= (vectorIndex >> SHIFT_NOISE_GEN);
-  vectorIndex &= 0xff;
-
-  double xvGradient = g_randomVectors[(vectorIndex << 2)    ];
-  double yvGradient = g_randomVectors[(vectorIndex << 2) + 1];
-  double zvGradient = g_randomVectors[(vectorIndex << 2) + 2];
-
-  // Set up us another vector equal to the distance between the two vectors
-  // passed to this function.
-  double xvPoint = (fx - (double)ix);
-  double yvPoint = (fy - (double)iy);
-  double zvPoint = (fz - (double)iz);
-
-  // Now compute the dot product of the gradient vector with the distance
-  // vector.  The resulting value is gradient noise.  Apply a scaling value
-  // so that this noise value ranges from -1.0 to 1.0.
-  return ((xvGradient * xvPoint)
-    + (yvGradient * yvPoint)
-    + (zvGradient * zvPoint)) * 2.12;
-}
-
-int noise::IntValueNoise3D (int x, int y, int z, int seed)
-{
-  // All constants are primes and must remain prime in order for this noise
-  // function to work correctly.
-  int n = (
-      X_NOISE_GEN    * x
-    + Y_NOISE_GEN    * y
-    + Z_NOISE_GEN    * z
-    + SEED_NOISE_GEN * seed)
-    & 0x7fffffff;
-  n = (n >> 13) ^ n;
-  return (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff;
-}
-
-double noise::ValueCoherentNoise3D (double x, double y, double z, int seed,
-  NoiseQuality noiseQuality)
-{
-  // Create a unit-length cube aligned along an integer boundary.  This cube
-  // surrounds the input point.
-  int x0 = (x > 0.0? (int)x: (int)x - 1);
-  int x1 = x0 + 1;
-  int y0 = (y > 0.0? (int)y: (int)y - 1);
-  int y1 = y0 + 1;
-  int z0 = (z > 0.0? (int)z: (int)z - 1);
-  int z1 = z0 + 1;
-
-  // Map the difference between the coordinates of the input value and the
-  // coordinates of the cube's outer-lower-left vertex onto an S-curve.
-  double xs = 0, ys = 0, zs = 0;
-  switch (noiseQuality) {
-    case QUALITY_FAST:
-      xs = (x - (double)x0);
-      ys = (y - (double)y0);
-      zs = (z - (double)z0);
-      break;
-    case QUALITY_STD:
-      xs = SCurve3 (x - (double)x0);
-      ys = SCurve3 (y - (double)y0);
-      zs = SCurve3 (z - (double)z0);
-      break;
-    case QUALITY_BEST:
-      xs = SCurve5 (x - (double)x0);
-      ys = SCurve5 (y - (double)y0);
-      zs = SCurve5 (z - (double)z0);
-      break;
-  }
-
-  // Now calculate the noise values at each vertex of the cube.  To generate
-  // the coherent-noise value at the input point, interpolate these eight
-  // noise values using the S-curve value as the interpolant (trilinear
-  // interpolation.)
-  double n0, n1, ix0, ix1, iy0, iy1;
-  n0   = ValueNoise3D (x0, y0, z0, seed);
-  n1   = ValueNoise3D (x1, y0, z0, seed);
-  ix0  = LinearInterp (n0, n1, xs);
-  n0   = ValueNoise3D (x0, y1, z0, seed);
-  n1   = ValueNoise3D (x1, y1, z0, seed);
-  ix1  = LinearInterp (n0, n1, xs);
-  iy0  = LinearInterp (ix0, ix1, ys);
-  n0   = ValueNoise3D (x0, y0, z1, seed);
-  n1   = ValueNoise3D (x1, y0, z1, seed);
-  ix0  = LinearInterp (n0, n1, xs);
-  n0   = ValueNoise3D (x0, y1, z1, seed);
-  n1   = ValueNoise3D (x1, y1, z1, seed);
-  ix1  = LinearInterp (n0, n1, xs);
-  iy1  = LinearInterp (ix0, ix1, ys);
-  return LinearInterp (iy0, iy1, zs);
-}
-
-double noise::ValueNoise3D (int x, int y, int z, int seed)
-{
-  return 1.0 - ((double)IntValueNoise3D (x, y, z, seed) / 1073741824.0);
-}
-
diff --git a/libnoise/noise/src/noisegen.h b/libnoise/noise/src/noisegen.h
deleted file mode 100644
--- a/libnoise/noise/src/noisegen.h
+++ /dev/null
@@ -1,208 +0,0 @@
-// noisegen.h
-//
-// Copyright (C) 2003, 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#ifndef NOISE_NOISEGEN_H
-#define NOISE_NOISEGEN_H
-
-#include <math.h>
-#include "basictypes.h"
-
-namespace noise
-{
-
-  /// @addtogroup libnoise
-  /// @{
-
-  /// Enumerates the noise quality.
-  enum NoiseQuality
-  {
-
-    /// Generates coherent noise quickly.  When a coherent-noise function with
-    /// this quality setting is used to generate a bump-map image, there are
-    /// noticeable "creasing" artifacts in the resulting image.  This is
-    /// because the derivative of that function is discontinuous at integer
-    /// boundaries.
-    QUALITY_FAST = 0,
-
-    /// Generates standard-quality coherent noise.  When a coherent-noise
-    /// function with this quality setting is used to generate a bump-map
-    /// image, there are some minor "creasing" artifacts in the resulting
-    /// image.  This is because the second derivative of that function is
-    /// discontinuous at integer boundaries.
-    QUALITY_STD = 1,
-
-    /// Generates the best-quality coherent noise.  When a coherent-noise
-    /// function with this quality setting is used to generate a bump-map
-    /// image, there are no "creasing" artifacts in the resulting image.  This
-    /// is because the first and second derivatives of that function are
-    /// continuous at integer boundaries.
-    QUALITY_BEST = 2
-
-  };
-
-  /// Generates a gradient-coherent-noise value from the coordinates of a
-  /// three-dimensional input value.
-  ///
-  /// @param x The @a x coordinate of the input value.
-  /// @param y The @a y coordinate of the input value.
-  /// @param z The @a z coordinate of the input value.
-  /// @param seed The random number seed.
-  /// @param noiseQuality The quality of the coherent-noise.
-  ///
-  /// @returns The generated gradient-coherent-noise value.
-  ///
-  /// The return value ranges from -1.0 to +1.0.
-  ///
-  /// For an explanation of the difference between <i>gradient</i> noise and
-  /// <i>value</i> noise, see the comments for the GradientNoise3D() function.
-  double GradientCoherentNoise3D (double x, double y, double z, int seed = 0,
-    NoiseQuality noiseQuality = QUALITY_STD);
-
-  /// Generates a gradient-noise value from the coordinates of a
-  /// three-dimensional input value and the integer coordinates of a
-  /// nearby three-dimensional value.
-  ///
-  /// @param fx The floating-point @a x coordinate of the input value.
-  /// @param fy The floating-point @a y coordinate of the input value.
-  /// @param fz The floating-point @a z coordinate of the input value.
-  /// @param ix The integer @a x coordinate of a nearby value.
-  /// @param iy The integer @a y coordinate of a nearby value.
-  /// @param iz The integer @a z coordinate of a nearby value.
-  /// @param seed The random number seed.
-  ///
-  /// @returns The generated gradient-noise value.
-  ///
-  /// @pre The difference between @a fx and @a ix must be less than or equal
-  /// to one.
-  ///
-  /// @pre The difference between @a fy and @a iy must be less than or equal
-  /// to one.
-  ///
-  /// @pre The difference between @a fz and @a iz must be less than or equal
-  /// to one.
-  ///
-  /// A <i>gradient</i>-noise function generates better-quality noise than a
-  /// <i>value</i>-noise function.  Most noise modules use gradient noise for
-  /// this reason, although it takes much longer to calculate.
-  ///
-  /// The return value ranges from -1.0 to +1.0.
-  ///
-  /// This function generates a gradient-noise value by performing the
-  /// following steps:
-  /// - It first calculates a random normalized vector based on the
-  ///   nearby integer value passed to this function.
-  /// - It then calculates a new value by adding this vector to the
-  ///   nearby integer value passed to this function.
-  /// - It then calculates the dot product of the above-generated value
-  ///   and the floating-point input value passed to this function.
-  ///
-  /// A noise function differs from a random-number generator because it
-  /// always returns the same output value if the same input value is passed
-  /// to it.
-  double GradientNoise3D (double fx, double fy, double fz, int ix, int iy,
-    int iz, int seed = 0);
-
-  /// Generates an integer-noise value from the coordinates of a
-  /// three-dimensional input value.
-  ///
-  /// @param x The integer @a x coordinate of the input value.
-  /// @param y The integer @a y coordinate of the input value.
-  /// @param z The integer @a z coordinate of the input value.
-  /// @param seed A random number seed.
-  ///
-  /// @returns The generated integer-noise value.
-  ///
-  /// The return value ranges from 0 to 2147483647.
-  ///
-  /// A noise function differs from a random-number generator because it
-  /// always returns the same output value if the same input value is passed
-  /// to it.
-  int IntValueNoise3D (int x, int y, int z, int seed = 0);
-
-  /// Modifies a floating-point value so that it can be stored in a
-  /// noise::int32 variable.
-  ///
-  /// @param n A floating-point number.
-  ///
-  /// @returns The modified floating-point number.
-  ///
-  /// This function does not modify @a n.
-  ///
-  /// In libnoise, the noise-generating algorithms are all integer-based;
-  /// they use variables of type noise::int32.  Before calling a noise
-  /// function, pass the @a x, @a y, and @a z coordinates to this function to
-  /// ensure that these coordinates can be cast to a noise::int32 value.
-  ///
-  /// Although you could do a straight cast from double to noise::int32, the
-  /// resulting value may differ between platforms.  By using this function,
-  /// you ensure that the resulting value is identical between platforms.
-  inline double MakeInt32Range (double n)
-  {
-    if (n >= 1073741824.0) {
-      return (2.0 * fmod (n, 1073741824.0)) - 1073741824.0;
-    } else if (n <= -1073741824.0) {
-      return (2.0 * fmod (n, 1073741824.0)) + 1073741824.0;
-    } else {
-      return n;
-    }
-  }
-
-  /// Generates a value-coherent-noise value from the coordinates of a
-  /// three-dimensional input value.
-  ///
-  /// @param x The @a x coordinate of the input value.
-  /// @param y The @a y coordinate of the input value.
-  /// @param z The @a z coordinate of the input value.
-  /// @param seed The random number seed.
-  /// @param noiseQuality The quality of the coherent-noise.
-  ///
-  /// @returns The generated value-coherent-noise value.
-  ///
-  /// The return value ranges from -1.0 to +1.0.
-  ///
-  /// For an explanation of the difference between <i>gradient</i> noise and
-  /// <i>value</i> noise, see the comments for the GradientNoise3D() function.
-  double ValueCoherentNoise3D (double x, double y, double z, int seed = 0,
-    NoiseQuality noiseQuality = QUALITY_STD);
-
-  /// Generates a value-noise value from the coordinates of a
-  /// three-dimensional input value.
-  ///
-  /// @param x The @a x coordinate of the input value.
-  /// @param y The @a y coordinate of the input value.
-  /// @param z The @a z coordinate of the input value.
-  /// @param seed A random number seed.
-  ///
-  /// @returns The generated value-noise value.
-  ///
-  /// The return value ranges from -1.0 to +1.0.
-  ///
-  /// A noise function differs from a random-number generator because it
-  /// always returns the same output value if the same input value is passed
-  /// to it.
-  double ValueNoise3D (int x, int y, int z, int seed = 0);
-
-  /// @}
-
-}
-
-#endif
diff --git a/libnoise/noise/src/vectortable.h b/libnoise/noise/src/vectortable.h
deleted file mode 100644
--- a/libnoise/noise/src/vectortable.h
+++ /dev/null
@@ -1,290 +0,0 @@
-// vectortable.h
-//
-// Written by Jason Bevins.  Actually it's the output of a program written
-// by me.  I'm not going to copyright a bunch of random numbers (although
-// you could probably do so in the States, the way things are going down
-// there :-)
-//
-// This file is in the public domain.
-//
-
-#ifndef NOISE_VECTORTABLE_H
-#define NOISE_VECTORTABLE_H
-
-#ifndef DOXYGEN_SHOULD_SKIP_THIS
-
-namespace noise
-{
-
-  // A table of 256 random normalized vectors.  Each row is an (x, y, z, 0)
-  // coordinate.  The 0 is used as padding so we can use bit shifts to index
-  // any row in the table.  These vectors have an even statistical
-  // distribution, which improves the quality of the coherent noise
-  // generated by these vectors.  For more information, see "GPU Gems",
-  // Chapter 5 - Implementing Improved Perlin Noise by Ken Perlin,
-  // specifically page 76.
-  double g_randomVectors[256 * 4] =
-  {
-    -0.763874, -0.596439, -0.246489, 0.0,
-    0.396055, 0.904518, -0.158073, 0.0,
-    -0.499004, -0.8665, -0.0131631, 0.0,
-    0.468724, -0.824756, 0.316346, 0.0,
-    0.829598, 0.43195, 0.353816, 0.0,
-    -0.454473, 0.629497, -0.630228, 0.0,
-    -0.162349, -0.869962, -0.465628, 0.0,
-    0.932805, 0.253451, 0.256198, 0.0,
-    -0.345419, 0.927299, -0.144227, 0.0,
-    -0.715026, -0.293698, -0.634413, 0.0,
-    -0.245997, 0.717467, -0.651711, 0.0,
-    -0.967409, -0.250435, -0.037451, 0.0,
-    0.901729, 0.397108, -0.170852, 0.0,
-    0.892657, -0.0720622, -0.444938, 0.0,
-    0.0260084, -0.0361701, 0.999007, 0.0,
-    0.949107, -0.19486, 0.247439, 0.0,
-    0.471803, -0.807064, -0.355036, 0.0,
-    0.879737, 0.141845, 0.453809, 0.0,
-    0.570747, 0.696415, 0.435033, 0.0,
-    -0.141751, -0.988233, -0.0574584, 0.0,
-    -0.58219, -0.0303005, 0.812488, 0.0,
-    -0.60922, 0.239482, -0.755975, 0.0,
-    0.299394, -0.197066, -0.933557, 0.0,
-    -0.851615, -0.220702, -0.47544, 0.0,
-    0.848886, 0.341829, -0.403169, 0.0,
-    -0.156129, -0.687241, 0.709453, 0.0,
-    -0.665651, 0.626724, 0.405124, 0.0,
-    0.595914, -0.674582, 0.43569, 0.0,
-    0.171025, -0.509292, 0.843428, 0.0,
-    0.78605, 0.536414, -0.307222, 0.0,
-    0.18905, -0.791613, 0.581042, 0.0,
-    -0.294916, 0.844994, 0.446105, 0.0,
-    0.342031, -0.58736, -0.7335, 0.0,
-    0.57155, 0.7869, 0.232635, 0.0,
-    0.885026, -0.408223, 0.223791, 0.0,
-    -0.789518, 0.571645, 0.223347, 0.0,
-    0.774571, 0.31566, 0.548087, 0.0,
-    -0.79695, -0.0433603, -0.602487, 0.0,
-    -0.142425, -0.473249, -0.869339, 0.0,
-    -0.0698838, 0.170442, 0.982886, 0.0,
-    0.687815, -0.484748, 0.540306, 0.0,
-    0.543703, -0.534446, -0.647112, 0.0,
-    0.97186, 0.184391, -0.146588, 0.0,
-    0.707084, 0.485713, -0.513921, 0.0,
-    0.942302, 0.331945, 0.043348, 0.0,
-    0.499084, 0.599922, 0.625307, 0.0,
-    -0.289203, 0.211107, 0.9337, 0.0,
-    0.412433, -0.71667, -0.56239, 0.0,
-    0.87721, -0.082816, 0.47291, 0.0,
-    -0.420685, -0.214278, 0.881538, 0.0,
-    0.752558, -0.0391579, 0.657361, 0.0,
-    0.0765725, -0.996789, 0.0234082, 0.0,
-    -0.544312, -0.309435, -0.779727, 0.0,
-    -0.455358, -0.415572, 0.787368, 0.0,
-    -0.874586, 0.483746, 0.0330131, 0.0,
-    0.245172, -0.0838623, 0.965846, 0.0,
-    0.382293, -0.432813, 0.81641, 0.0,
-    -0.287735, -0.905514, 0.311853, 0.0,
-    -0.667704, 0.704955, -0.239186, 0.0,
-    0.717885, -0.464002, -0.518983, 0.0,
-    0.976342, -0.214895, 0.0240053, 0.0,
-    -0.0733096, -0.921136, 0.382276, 0.0,
-    -0.986284, 0.151224, -0.0661379, 0.0,
-    -0.899319, -0.429671, 0.0812908, 0.0,
-    0.652102, -0.724625, 0.222893, 0.0,
-    0.203761, 0.458023, -0.865272, 0.0,
-    -0.030396, 0.698724, -0.714745, 0.0,
-    -0.460232, 0.839138, 0.289887, 0.0,
-    -0.0898602, 0.837894, 0.538386, 0.0,
-    -0.731595, 0.0793784, 0.677102, 0.0,
-    -0.447236, -0.788397, 0.422386, 0.0,
-    0.186481, 0.645855, -0.740335, 0.0,
-    -0.259006, 0.935463, 0.240467, 0.0,
-    0.445839, 0.819655, -0.359712, 0.0,
-    0.349962, 0.755022, -0.554499, 0.0,
-    -0.997078, -0.0359577, 0.0673977, 0.0,
-    -0.431163, -0.147516, -0.890133, 0.0,
-    0.299648, -0.63914, 0.708316, 0.0,
-    0.397043, 0.566526, -0.722084, 0.0,
-    -0.502489, 0.438308, -0.745246, 0.0,
-    0.0687235, 0.354097, 0.93268, 0.0,
-    -0.0476651, -0.462597, 0.885286, 0.0,
-    -0.221934, 0.900739, -0.373383, 0.0,
-    -0.956107, -0.225676, 0.186893, 0.0,
-    -0.187627, 0.391487, -0.900852, 0.0,
-    -0.224209, -0.315405, 0.92209, 0.0,
-    -0.730807, -0.537068, 0.421283, 0.0,
-    -0.0353135, -0.816748, 0.575913, 0.0,
-    -0.941391, 0.176991, -0.287153, 0.0,
-    -0.154174, 0.390458, 0.90762, 0.0,
-    -0.283847, 0.533842, 0.796519, 0.0,
-    -0.482737, -0.850448, 0.209052, 0.0,
-    -0.649175, 0.477748, 0.591886, 0.0,
-    0.885373, -0.405387, -0.227543, 0.0,
-    -0.147261, 0.181623, -0.972279, 0.0,
-    0.0959236, -0.115847, -0.988624, 0.0,
-    -0.89724, -0.191348, 0.397928, 0.0,
-    0.903553, -0.428461, -0.00350461, 0.0,
-    0.849072, -0.295807, -0.437693, 0.0,
-    0.65551, 0.741754, -0.141804, 0.0,
-    0.61598, -0.178669, 0.767232, 0.0,
-    0.0112967, 0.932256, -0.361623, 0.0,
-    -0.793031, 0.258012, 0.551845, 0.0,
-    0.421933, 0.454311, 0.784585, 0.0,
-    -0.319993, 0.0401618, -0.946568, 0.0,
-    -0.81571, 0.551307, -0.175151, 0.0,
-    -0.377644, 0.00322313, 0.925945, 0.0,
-    0.129759, -0.666581, -0.734052, 0.0,
-    0.601901, -0.654237, -0.457919, 0.0,
-    -0.927463, -0.0343576, -0.372334, 0.0,
-    -0.438663, -0.868301, -0.231578, 0.0,
-    -0.648845, -0.749138, -0.133387, 0.0,
-    0.507393, -0.588294, 0.629653, 0.0,
-    0.726958, 0.623665, 0.287358, 0.0,
-    0.411159, 0.367614, -0.834151, 0.0,
-    0.806333, 0.585117, -0.0864016, 0.0,
-    0.263935, -0.880876, 0.392932, 0.0,
-    0.421546, -0.201336, 0.884174, 0.0,
-    -0.683198, -0.569557, -0.456996, 0.0,
-    -0.117116, -0.0406654, -0.992285, 0.0,
-    -0.643679, -0.109196, -0.757465, 0.0,
-    -0.561559, -0.62989, 0.536554, 0.0,
-    0.0628422, 0.104677, -0.992519, 0.0,
-    0.480759, -0.2867, -0.828658, 0.0,
-    -0.228559, -0.228965, -0.946222, 0.0,
-    -0.10194, -0.65706, -0.746914, 0.0,
-    0.0689193, -0.678236, 0.731605, 0.0,
-    0.401019, -0.754026, 0.52022, 0.0,
-    -0.742141, 0.547083, -0.387203, 0.0,
-    -0.00210603, -0.796417, -0.604745, 0.0,
-    0.296725, -0.409909, -0.862513, 0.0,
-    -0.260932, -0.798201, 0.542945, 0.0,
-    -0.641628, 0.742379, 0.192838, 0.0,
-    -0.186009, -0.101514, 0.97729, 0.0,
-    0.106711, -0.962067, 0.251079, 0.0,
-    -0.743499, 0.30988, -0.592607, 0.0,
-    -0.795853, -0.605066, -0.0226607, 0.0,
-    -0.828661, -0.419471, -0.370628, 0.0,
-    0.0847218, -0.489815, -0.8677, 0.0,
-    -0.381405, 0.788019, -0.483276, 0.0,
-    0.282042, -0.953394, 0.107205, 0.0,
-    0.530774, 0.847413, 0.0130696, 0.0,
-    0.0515397, 0.922524, 0.382484, 0.0,
-    -0.631467, -0.709046, 0.313852, 0.0,
-    0.688248, 0.517273, 0.508668, 0.0,
-    0.646689, -0.333782, -0.685845, 0.0,
-    -0.932528, -0.247532, -0.262906, 0.0,
-    0.630609, 0.68757, -0.359973, 0.0,
-    0.577805, -0.394189, 0.714673, 0.0,
-    -0.887833, -0.437301, -0.14325, 0.0,
-    0.690982, 0.174003, 0.701617, 0.0,
-    -0.866701, 0.0118182, 0.498689, 0.0,
-    -0.482876, 0.727143, 0.487949, 0.0,
-    -0.577567, 0.682593, -0.447752, 0.0,
-    0.373768, 0.0982991, 0.922299, 0.0,
-    0.170744, 0.964243, -0.202687, 0.0,
-    0.993654, -0.035791, -0.106632, 0.0,
-    0.587065, 0.4143, -0.695493, 0.0,
-    -0.396509, 0.26509, -0.878924, 0.0,
-    -0.0866853, 0.83553, -0.542563, 0.0,
-    0.923193, 0.133398, -0.360443, 0.0,
-    0.00379108, -0.258618, 0.965972, 0.0,
-    0.239144, 0.245154, -0.939526, 0.0,
-    0.758731, -0.555871, 0.33961, 0.0,
-    0.295355, 0.309513, 0.903862, 0.0,
-    0.0531222, -0.91003, -0.411124, 0.0,
-    0.270452, 0.0229439, -0.96246, 0.0,
-    0.563634, 0.0324352, 0.825387, 0.0,
-    0.156326, 0.147392, 0.976646, 0.0,
-    -0.0410141, 0.981824, 0.185309, 0.0,
-    -0.385562, -0.576343, -0.720535, 0.0,
-    0.388281, 0.904441, 0.176702, 0.0,
-    0.945561, -0.192859, -0.262146, 0.0,
-    0.844504, 0.520193, 0.127325, 0.0,
-    0.0330893, 0.999121, -0.0257505, 0.0,
-    -0.592616, -0.482475, -0.644999, 0.0,
-    0.539471, 0.631024, -0.557476, 0.0,
-    0.655851, -0.027319, -0.754396, 0.0,
-    0.274465, 0.887659, 0.369772, 0.0,
-    -0.123419, 0.975177, -0.183842, 0.0,
-    -0.223429, 0.708045, 0.66989, 0.0,
-    -0.908654, 0.196302, 0.368528, 0.0,
-    -0.95759, -0.00863708, 0.288005, 0.0,
-    0.960535, 0.030592, 0.276472, 0.0,
-    -0.413146, 0.907537, 0.0754161, 0.0,
-    -0.847992, 0.350849, -0.397259, 0.0,
-    0.614736, 0.395841, 0.68221, 0.0,
-    -0.503504, -0.666128, -0.550234, 0.0,
-    -0.268833, -0.738524, -0.618314, 0.0,
-    0.792737, -0.60001, -0.107502, 0.0,
-    -0.637582, 0.508144, -0.579032, 0.0,
-    0.750105, 0.282165, -0.598101, 0.0,
-    -0.351199, -0.392294, -0.850155, 0.0,
-    0.250126, -0.960993, -0.118025, 0.0,
-    -0.732341, 0.680909, -0.0063274, 0.0,
-    -0.760674, -0.141009, 0.633634, 0.0,
-    0.222823, -0.304012, 0.926243, 0.0,
-    0.209178, 0.505671, 0.836984, 0.0,
-    0.757914, -0.56629, -0.323857, 0.0,
-    -0.782926, -0.339196, 0.52151, 0.0,
-    -0.462952, 0.585565, 0.665424, 0.0,
-    0.61879, 0.194119, -0.761194, 0.0,
-    0.741388, -0.276743, 0.611357, 0.0,
-    0.707571, 0.702621, 0.0752872, 0.0,
-    0.156562, 0.819977, 0.550569, 0.0,
-    -0.793606, 0.440216, 0.42, 0.0,
-    0.234547, 0.885309, -0.401517, 0.0,
-    0.132598, 0.80115, -0.58359, 0.0,
-    -0.377899, -0.639179, 0.669808, 0.0,
-    -0.865993, -0.396465, 0.304748, 0.0,
-    -0.624815, -0.44283, 0.643046, 0.0,
-    -0.485705, 0.825614, -0.287146, 0.0,
-    -0.971788, 0.175535, 0.157529, 0.0,
-    -0.456027, 0.392629, 0.798675, 0.0,
-    -0.0104443, 0.521623, -0.853112, 0.0,
-    -0.660575, -0.74519, 0.091282, 0.0,
-    -0.0157698, -0.307475, -0.951425, 0.0,
-    -0.603467, -0.250192, 0.757121, 0.0,
-    0.506876, 0.25006, 0.824952, 0.0,
-    0.255404, 0.966794, 0.00884498, 0.0,
-    0.466764, -0.874228, -0.133625, 0.0,
-    0.475077, -0.0682351, -0.877295, 0.0,
-    -0.224967, -0.938972, -0.260233, 0.0,
-    -0.377929, -0.814757, -0.439705, 0.0,
-    -0.305847, 0.542333, -0.782517, 0.0,
-    0.26658, -0.902905, -0.337191, 0.0,
-    0.0275773, 0.322158, -0.946284, 0.0,
-    0.0185422, 0.716349, 0.697496, 0.0,
-    -0.20483, 0.978416, 0.0273371, 0.0,
-    -0.898276, 0.373969, 0.230752, 0.0,
-    -0.00909378, 0.546594, 0.837349, 0.0,
-    0.6602, -0.751089, 0.000959236, 0.0,
-    0.855301, -0.303056, 0.420259, 0.0,
-    0.797138, 0.0623013, -0.600574, 0.0,
-    0.48947, -0.866813, 0.0951509, 0.0,
-    0.251142, 0.674531, 0.694216, 0.0,
-    -0.578422, -0.737373, -0.348867, 0.0,
-    -0.254689, -0.514807, 0.818601, 0.0,
-    0.374972, 0.761612, 0.528529, 0.0,
-    0.640303, -0.734271, -0.225517, 0.0,
-    -0.638076, 0.285527, 0.715075, 0.0,
-    0.772956, -0.15984, -0.613995, 0.0,
-    0.798217, -0.590628, 0.118356, 0.0,
-    -0.986276, -0.0578337, -0.154644, 0.0,
-    -0.312988, -0.94549, 0.0899272, 0.0,
-    -0.497338, 0.178325, 0.849032, 0.0,
-    -0.101136, -0.981014, 0.165477, 0.0,
-    -0.521688, 0.0553434, -0.851339, 0.0,
-    -0.786182, -0.583814, 0.202678, 0.0,
-    -0.565191, 0.821858, -0.0714658, 0.0,
-    0.437895, 0.152598, -0.885981, 0.0,
-    -0.92394, 0.353436, -0.14635, 0.0,
-    0.212189, -0.815162, -0.538969, 0.0,
-    -0.859262, 0.143405, -0.491024, 0.0,
-    0.991353, 0.112814, 0.0670273, 0.0,
-    0.0337884, -0.979891, -0.196654, 0.0
-  };
-
-}
-
-#endif
-
-#endif
diff --git a/libnoise/noise/src/win32/dllmain.cpp b/libnoise/noise/src/win32/dllmain.cpp
deleted file mode 100644
--- a/libnoise/noise/src/win32/dllmain.cpp
+++ /dev/null
@@ -1,28 +0,0 @@
-// dllmain.cpp
-//
-// Copyright (C) 2004 Jason Bevins
-//
-// This library is free software; you can redistribute it and/or modify it
-// under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation; either version 2.1 of the License, or (at
-// your option) any later version.
-//
-// This library is distributed in the hope that 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 (COPYING.txt) for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this library; if not, write to the Free Software Foundation,
-// Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-// The developer's email is jlbezigvins@gmzigail.com (for great email, take
-// off every 'zig'.)
-//
-
-#include <windows.h>
-
-BOOL WINAPI DllMain (HINSTANCE hInst, ULONG reason, LPVOID lpReserved)
-{
-  return TRUE;
-}
diff --git a/libnoise/noise/src/win32/libnoise.def b/libnoise/noise/src/win32/libnoise.def
deleted file mode 100644
--- a/libnoise/noise/src/win32/libnoise.def
+++ /dev/null
@@ -1,154 +0,0 @@
-LIBRARY libnoise
-
-EXPORTS
-  ?LatLonToXYZ@noise@@YAXNNAAN00@Z @ 1
-  ?GradientNoise3D@noise@@YANNNNHHHH@Z @ 2
-  ?IntValueNoise3D@noise@@YAHHHHH@Z @ 3
-  ?ValueNoise3D@noise@@YANHHHH@Z @ 6
-  ??0Add@module@noise@@QAE@XZ @ 9
-  ?GetValue@Add@module@noise@@UBENNNN@Z @ 10
-  ?GetSourceModule@Module@module@noise@@UBEABV123@H@Z @ 11
-  ?SetSourceModule@Module@module@noise@@UAEXHABV123@@Z @ 12
-  ?GetSourceModuleCount@Add@module@noise@@UBEHXZ @ 13
-  ??0Blend@module@noise@@QAE@XZ @ 14
-  ?GetValue@Blend@module@noise@@UBENNNN@Z @ 15
-  ?GetSourceModuleCount@Blend@module@noise@@UBEHXZ @ 16
-  ??0Cache@module@noise@@QAE@XZ @ 17
-  ?GetValue@Cache@module@noise@@UBENNNN@Z @ 18
-  ?GetSourceModuleCount@Cache@module@noise@@UBEHXZ @ 19
-  ?SetSourceModule@Cache@module@noise@@UAEXHABVModule@23@@Z @ 20
-  ??0Checkerboard@module@noise@@QAE@XZ @ 21
-  ?GetValue@Checkerboard@module@noise@@UBENNNN@Z @ 22
-  ?GetSourceModuleCount@Checkerboard@module@noise@@UBEHXZ @ 24
-  ??0Clamp@module@noise@@QAE@XZ @ 25
-  ?GetValue@Clamp@module@noise@@UBENNNN@Z @ 26
-  ?SetBounds@Clamp@module@noise@@QAEXNN@Z @ 27
-  ?GetSourceModuleCount@Clamp@module@noise@@UBEHXZ @ 28
-  ??0Const@module@noise@@QAE@XZ @ 29
-  ?GetSourceModuleCount@Const@module@noise@@UBEHXZ @ 30
-  ?GetValue@Const@module@noise@@UBENNNN@Z @ 31
-  ??0Curve@module@noise@@QAE@XZ @ 32
-  ?AddControlPoint@Curve@module@noise@@QAEXNN@Z @ 34
-  ?ClearAllControlPoints@Curve@module@noise@@QAEXXZ @ 35
-  ?FindInsertionPos@Curve@module@noise@@IAEHN@Z @ 36
-  ?GetValue@Curve@module@noise@@UBENNNN@Z @ 37
-  ?InsertAtPos@Curve@module@noise@@IAEXHNN@Z @ 38
-  ?GetSourceModuleCount@Curve@module@noise@@UBEHXZ @ 42
-  ??0Cylinders@module@noise@@QAE@XZ @ 43
-  ?GetValue@Cylinders@module@noise@@UBENNNN@Z @ 44
-  ?GetSourceModuleCount@Cylinders@module@noise@@UBEHXZ @ 46
-  ??0Displace@module@noise@@QAE@XZ @ 47
-  ?GetValue@Displace@module@noise@@UBENNNN@Z @ 48
-  ?GetSourceModuleCount@Displace@module@noise@@UBEHXZ @ 49
-  ??0Exponent@module@noise@@QAE@XZ @ 50
-  ?GetValue@Exponent@module@noise@@UBENNNN@Z @ 51
-  ?GetSourceModuleCount@Exponent@module@noise@@UBEHXZ @ 52
-  ??0Invert@module@noise@@QAE@XZ @ 53
-  ?GetValue@Invert@module@noise@@UBENNNN@Z @ 54
-  ?GetSourceModuleCount@Invert@module@noise@@UBEHXZ @ 55
-  ??0Max@module@noise@@QAE@XZ @ 56
-  ?GetValue@Max@module@noise@@UBENNNN@Z @ 57
-  ?GetSourceModuleCount@Max@module@noise@@UBEHXZ @ 59
-  ??0Min@module@noise@@QAE@XZ @ 60
-  ?GetValue@Min@module@noise@@UBENNNN@Z @ 61
-  ?GetSourceModuleCount@Min@module@noise@@UBEHXZ @ 62
-  ??0Module@module@noise@@QAE@H@Z @ 63
-  ??0Multiply@module@noise@@QAE@XZ @ 64
-  ?GetValue@Multiply@module@noise@@UBENNNN@Z @ 65
-  ?GetSourceModuleCount@Multiply@module@noise@@UBEHXZ @ 66
-  ??0Perlin@module@noise@@QAE@XZ @ 67
-  ?GetValue@Perlin@module@noise@@UBENNNN@Z @ 68
-  ?GetSourceModuleCount@Perlin@module@noise@@UBEHXZ @ 69
-  ??0Power@module@noise@@QAE@XZ @ 70
-  ?GetValue@Power@module@noise@@UBENNNN@Z @ 71
-  ?GetSourceModuleCount@Power@module@noise@@UBEHXZ @ 72
-  ??0RidgedMulti@module@noise@@QAE@XZ @ 73
-  ?GetValue@RidgedMulti@module@noise@@UBENNNN@Z @ 74
-  ?GetSourceModuleCount@RidgedMulti@module@noise@@UBEHXZ @ 75
-  ??0RotatePoint@module@noise@@QAE@XZ @ 76
-  ?GetValue@RotatePoint@module@noise@@UBENNNN@Z @ 77
-  ?SetAngles@RotatePoint@module@noise@@QAEXNNN@Z @ 78
-  ?GetSourceModuleCount@RotatePoint@module@noise@@UBEHXZ @ 79
-  ??0ScaleBias@module@noise@@QAE@XZ @ 80
-  ?GetValue@ScaleBias@module@noise@@UBENNNN@Z @ 81
-  ?GetSourceModuleCount@ScaleBias@module@noise@@UBEHXZ @ 82
-  ??0ScalePoint@module@noise@@QAE@XZ @ 83
-  ?GetValue@ScalePoint@module@noise@@UBENNNN@Z @ 84
-  ?GetSourceModuleCount@ScalePoint@module@noise@@UBEHXZ @ 85
-  ??0Select@module@noise@@QAE@XZ @ 86
-  ?GetValue@Select@module@noise@@UBENNNN@Z @ 87
-  ?SetBounds@Select@module@noise@@QAEXNN@Z @ 88
-  ?SetEdgeFalloff@Select@module@noise@@QAEXN@Z @ 89
-  ?GetSourceModuleCount@Select@module@noise@@UBEHXZ @ 90
-  ??0Spheres@module@noise@@QAE@XZ @ 91
-  ?GetValue@Spheres@module@noise@@UBENNNN@Z @ 92
-  ?GetSourceModuleCount@Spheres@module@noise@@UBEHXZ @ 93
-  ??0Terrace@module@noise@@QAE@XZ @ 94
-  ?FindInsertionPos@Terrace@module@noise@@IAEHN@Z @ 98
-  ?GetValue@Terrace@module@noise@@UBENNNN@Z @ 99
-  ?InsertAtPos@Terrace@module@noise@@IAEXHN@Z @ 100
-  ?GetSourceModuleCount@Terrace@module@noise@@UBEHXZ @ 103
-  ??0Turbulence@module@noise@@QAE@XZ @ 104
-  ?GetFrequency@Turbulence@module@noise@@QBENXZ @ 105
-  ?GetSeed@Turbulence@module@noise@@QBEHXZ @ 106
-  ?GetValue@Turbulence@module@noise@@UBENNNN@Z @ 107
-  ?SetSeed@Turbulence@module@noise@@QAEXH@Z @ 109
-  ?GetSourceModuleCount@Turbulence@module@noise@@UBEHXZ @ 115
-  ??0Voronoi@module@noise@@QAE@XZ @ 116
-  ?GetValue@Voronoi@module@noise@@UBENNNN@Z @ 117
-  ?GetSourceModuleCount@Voronoi@module@noise@@UBEHXZ @ 118
-  ??0Abs@module@noise@@QAE@XZ @ 119
-  ?GetValue@Abs@module@noise@@UBENNNN@Z @ 120
-  ?GetSourceModuleCount@Abs@module@noise@@UBEHXZ @ 121
-  ??0Line@model@noise@@QAE@XZ @ 122
-  ?GetValue@Line@model@noise@@QBENN@Z @ 123
-  ??0Plane@model@noise@@QAE@XZ @ 124
-  ?GetValue@Plane@model@noise@@QBENNN@Z @ 125
-  ??0Sphere@model@noise@@QAE@XZ @ 126
-  ?GetValue@Sphere@model@noise@@QBENNN@Z @ 127
-  ??0Cylinder@model@noise@@QAE@XZ @ 128
-  ?GetValue@Cylinder@model@noise@@QBENNN@Z @ 129
-  ??_7Add@module@noise@@6B@ @ 130
-  ??_7Blend@module@noise@@6B@ @ 131
-  ??_7Cache@module@noise@@6B@ @ 132
-  ??_7Checkerboard@module@noise@@6B@ @ 133
-  ??_7Clamp@module@noise@@6B@ @ 134
-  ??_7Const@module@noise@@6B@ @ 135
-  ??_7Curve@module@noise@@6B@ @ 136
-  ??_7Module@module@noise@@6B@ @ 137
-  ??_7Cylinders@module@noise@@6B@ @ 138
-  ??_7Displace@module@noise@@6B@ @ 139
-  ??_7Exponent@module@noise@@6B@ @ 140
-  ??_7Invert@module@noise@@6B@ @ 141
-  ??_7Max@module@noise@@6B@ @ 142
-  ??_7Min@module@noise@@6B@ @ 143
-  ??_7Multiply@module@noise@@6B@ @ 144
-  ??_7Perlin@module@noise@@6B@ @ 145
-  ??_7Power@module@noise@@6B@ @ 146
-  ??_7RidgedMulti@module@noise@@6B@ @ 147
-  ??_7RotatePoint@module@noise@@6B@ @ 148
-  ??_7ScaleBias@module@noise@@6B@ @ 149
-  ??_7ScalePoint@module@noise@@6B@ @ 150
-  ??_7Select@module@noise@@6B@ @ 151
-  ??_7Spheres@module@noise@@6B@ @ 152
-  ??_7Terrace@module@noise@@6B@ @ 153
-  ??_7Turbulence@module@noise@@6B@ @ 154
-  ??_7Voronoi@module@noise@@6B@ @ 155
-  ??_7Abs@module@noise@@6B@ @ 156
-  ??0Billow@module@noise@@QAE@XZ @ 159
-  ?GetValue@Billow@module@noise@@UBENNNN@Z @ 160
-  ?GetSourceModuleCount@Billow@module@noise@@UBEHXZ @ 161
-  ??_7Billow@module@noise@@6B@ @ 163
-  ?CalcSpectralWeights@RidgedMulti@module@noise@@IAEXXZ @ 164
-  ??0TranslatePoint@module@noise@@QAE@XZ @ 166
-  ?GetValue@TranslatePoint@module@noise@@UBENNNN@Z @ 167
-  ?GetSourceModuleCount@TranslatePoint@module@noise@@UBEHXZ @ 168
-  ??_7TranslatePoint@module@noise@@6B@ @ 169
-  ?AddControlPoint@Terrace@module@noise@@QAEXN@Z @ 170
-  ?ClearAllControlPoints@Terrace@module@noise@@QAEXXZ @ 171
-  ?MakeControlPoints@Terrace@module@noise@@QAEXH@Z @ 172
-  ?GradientCoherentNoise3D@noise@@YANNNNHW4NoiseQuality@1@@Z @ 173
-  ?ValueCoherentNoise3D@noise@@YANNNNHW4NoiseQuality@1@@Z @ 174
-  ??1Terrace@module@noise@@UAE@XZ @ 175
-  ??1Curve@module@noise@@UAE@XZ @ 176
-  ??1Module@module@noise@@UAE@XZ @ 177
diff --git a/libnoise/noise/src/win32/noise.aps b/libnoise/noise/src/win32/noise.aps
deleted file mode 100644
Binary files a/libnoise/noise/src/win32/noise.aps and /dev/null differ
diff --git a/libnoise/noise/src/win32/noise.rc b/libnoise/noise/src/win32/noise.rc
deleted file mode 100644
--- a/libnoise/noise/src/win32/noise.rc
+++ /dev/null
@@ -1,106 +0,0 @@
-//Microsoft Developer Studio generated resource script.
-//
-#include "resource.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 2 resource.
-//
-#include "afxres.h"
-
-/////////////////////////////////////////////////////////////////////////////
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// English (U.S.) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
-#ifdef _WIN32
-LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
-#pragma code_page(1252)
-#endif //_WIN32
-
-#ifdef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// TEXTINCLUDE
-//
-
-1 TEXTINCLUDE DISCARDABLE 
-BEGIN
-    "resource.h\0"
-END
-
-2 TEXTINCLUDE DISCARDABLE 
-BEGIN
-    "#include ""afxres.h""\r\n"
-    "\0"
-END
-
-3 TEXTINCLUDE DISCARDABLE 
-BEGIN
-    "\r\n"
-    "\0"
-END
-
-#endif    // APSTUDIO_INVOKED
-
-
-#ifndef _MAC
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION 1,0,0,0
- PRODUCTVERSION 1,0,0,0
- FILEFLAGSMASK 0x3fL
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x40004L
- FILETYPE 0x2L
- FILESUBTYPE 0x0L
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "Comments", "Licensed under the GNU LGPL\0"
-            VALUE "CompanyName", "\0"
-            VALUE "FileDescription", "Library for generating coherent noise\0"
-            VALUE "FileVersion", "1.0.0\0"
-            VALUE "InternalName", "libnoise\0"
-            VALUE "LegalCopyright", "Copyright © 2004, 2007 Jason Bevins\0"
-            VALUE "OriginalFilename", "libnoise.dll\0"
-            VALUE "ProductName", "libnoise\0"
-            VALUE "ProductVersion", "1.0.0\0"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x409, 1200
-    END
-END
-
-#endif    // !_MAC
-
-#endif    // English (U.S.) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-
-#ifndef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 3 resource.
-//
-
-
-/////////////////////////////////////////////////////////////////////////////
-#endif    // not APSTUDIO_INVOKED
-
diff --git a/libnoise/noise/src/win32/resource.h b/libnoise/noise/src/win32/resource.h
deleted file mode 100644
--- a/libnoise/noise/src/win32/resource.h
+++ /dev/null
@@ -1,15 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Developer Studio generated include file.
-// Used by noise.rc
-//
-
-// Next default values for new objects
-// 
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE        101
-#define _APS_NEXT_COMMAND_VALUE         40001
-#define _APS_NEXT_CONTROL_VALUE         1000
-#define _APS_NEXT_SYMED_VALUE           101
-#endif
-#endif
diff --git a/profiling/Main.hs b/profiling/Main.hs
deleted file mode 100644
--- a/profiling/Main.hs
+++ /dev/null
@@ -1,65 +0,0 @@
-import Control.Monad ( when )
-import Data.Bits ( (.&.) )
-import Foreign ( withArray )
-import System.Exit ( exitFailure, exitWith, ExitCode(ExitSuccess) )
-import Graphics.UI.GLUT
-import Maybe
-
--- Noisy stuff
-import Math.Noise.Modules.Perlin
-{-
-import Math.Noise.Modules.ScaleBias
-import Math.Noise.Modules.Abs
-import Math.Noise.Modules.Billow
-import Math.Noise.Modules.Select
--}
-import Math.Noise.NoiseModule
--- import Gradient
-
--- Vector stuff
-import Data.Vector.Storable
-import Foreign.ForeignPtr
-
-import TexNoiseVect
-import Criterion.Main
-
-
-main2 :: IO()
-main2 = defaultMain [
-             bench "perlin 512x512" $ benchmark 512
-           , bench "perlin 1024x1024" $ benchmark 1024
-           , bench "perlin 2048x2048" $ benchmark 2048
-           ]
-
-main :: IO ()
-main = do
-   (progName, _args) <- getArgsAndInitialize
-   case _args of
-     ["show"] -> showTex 
-     ["256"] -> defaultMain [ bench "perlin 256x256" $ benchmark 256 ]
-     ["512"] -> defaultMain [ bench "perlin 512x512" $ benchmark 512 ]
-     ["1024"] -> defaultMain [ bench "perlin 1024x1024" $ benchmark 1024 ]
-     _ -> defaultMain [ bench "perlin 256x256" $ benchmarkAndProfile 256 
-                      , bench "perlin 512x512" $ benchmarkAndProfile 512
-                      , bench "perlin 1024x1024" $ benchmarkAndProfile 1024
-                      -- , bench "perlin 2048x2048" $ benchmarkAndProfile 2048
-                      ]
-
-showTex = do 
-   initialDisplayMode $= [ SingleBuffered, RGBMode, WithDepthBuffer ]
-   initialWindowSize $= Size 250 250
-   initialWindowPosition $= Position 100 100
-   createWindow ""
-   -- we have to do this *after* createWindow, otherwise we have no OpenGL context
-   version <- get (majorMinor glVersion)
-   when (version == (1,0)) $ do
-      putStrLn "This program demonstrates a feature which is not in OpenGL Version 1.0."
-      putStrLn "If your implementation of OpenGL Version 1.0 has the right extensions,"
-      putStrLn "you may be able to modify this program to make it run."
-      exitFailure
-   texNames <- myInit
-   reshapeCallback $= Just reshape
-   displayCallback $= display texNames
-   keyboardMouseCallback $= Just keyboard
-   mainLoop
-
diff --git a/profiling/TexNoiseVect.hs b/profiling/TexNoiseVect.hs
deleted file mode 100644
--- a/profiling/TexNoiseVect.hs
+++ /dev/null
@@ -1,222 +0,0 @@
-{-# LANGUAGE BangPatterns #-}
-module TexNoiseVect where 
-import Control.Monad ( when )
-import Data.Bits ( (.&.) )
-import Foreign ( withArray )
-import System.Exit ( exitFailure, exitWith, ExitCode(ExitSuccess) )
-import Graphics.UI.GLUT
-import Maybe
-
--- Noisy stuff
-import Math.Noise.Modules.Perlin
-{-
-import Noise.Modules.ScaleBias
-import Noise.Modules.Abs
-import Noise.Modules.Billow
-import Noise.Modules.Select
--}
-import Math.Noise.NoiseModule
-import Math.Noise.NoiseGen
--- import Gradient
-
--- Vector stuff
-import qualified Data.Vector.Storable as V
-import Foreign.ForeignPtr
-
--- Parallel stuff
-import Control.Parallel
---import Control.Monad.Parallel
-
--- Create checkerboard image
-checkImageSize :: TextureSize2D
-checkImageSize = TextureSize2D 1024 1024
-
-defColor = const Color4 0 0 0 0
-
-noiseParGen :: GLsizei -> GLsizei -> (GLubyte -> Color4 (GLubyte) ) -> Int -> Int -> V.Vector (Color4 GLubyte)
-
-noiseParGen w h f total !tnum | tnum == total = genFunc total 
-                              -- | otherwise = (V.++) gen1 $ par gen1 gen2 
-                              | otherwise = par gen1 (seq gen2 (gen1 V.++ gen2))
-    where 
-          !ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral total)
-          genFunc !num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-          gen1 = genFunc tnum 
-          gen2 = noiseParGen w h f total (tnum + 1)
-
-noiseParGen4 :: GLsizei -> GLsizei -> (GLubyte -> Color4 (GLubyte) ) -> Int -> Int -> Int -> IO (V.Vector (Color4 GLubyte))
-noiseParGen4 w h f numt proc1 proc2 = do  
-    -- v1 <- forkExec $ genFunc proc1
-    -- let v2 = genFunc proc2
-    --return $ v1 V.++ v2
-    return $ (genFunc 1) V.++ (genFunc 2) V.++ (genFunc 3) V.++ (genFunc 4)
-    where 
-          ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral numt)
-          genFunc num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-
-noiseParGenAll w h f numt = return $ 
-  foldr (V.++) V.empty lst
-  where 
-        ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral numt)
-        genFunc num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-        lst = map genFunc [1..numt]
-
-noiseGen2 w h f = V.generate ((fromIntegral w) * (fromIntegral h)) (vecFunc w h f 0)
-
-vecFunc w h f baseIndx indx = f c 
- where c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-       realIndx = (fromIntegral baseIndx) + (fromIntegral indx)
-       (i,j) = (realIndx `mod` w, floor $ (/) (fromIntegral realIndx) (fromIntegral w) )
-       boundBottomX :: Double
-       boundBottomX = 0.0
-       boundBottomY :: Double
-       boundBottomY = 0.0
-       boundUpperX :: Double
-       boundUpperX = 10.0
-       boundUpperY :: Double
-       boundUpperY = 10.0
-       xsize = w
-       ysize = h
-       xIncrement :: Double
-       xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-       yIncrement :: Double
-       yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-       xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-       yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-       noiseF :: NoiseModule
-       noiseF = gen perlin{ perlinFrequency = 0.6, perlinOctaveCount = 8}
-
-       -- Actual noise computation, getValue returns Maybe Double
-       noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-       noiseClampedVal = min 1.0 . max (-1.0) $ noiseValue      
-
-withParNoiseVec :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withParNoiseVec (TextureSize2D w h) n f act =    
-  V.unsafeWith (noiseParGen (fromIntegral w) (fromIntegral h) f 4 1) (act . PixelData RGBA UnsignedByte)
-
-withNoiseVec :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withNoiseVec (TextureSize2D w h) n f act =
-   V.unsafeWith (noiseGen2 (fromIntegral w) (fromIntegral h) f) (act . PixelData RGBA UnsignedByte)
-
-{-
-withNoiseImage :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withNoiseImage (TextureSize2D w h) n f act =
-   withArray [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-                   boundBottomX :: Double
-                   boundBottomX = 0.0
-                   boundBottomY :: Double
-                   boundBottomY = 0.0
-                   boundUpperX :: Double
-                   boundUpperX = 10.0
-                   boundUpperY :: Double
-                   boundUpperY = 10.0
-                   xsize = w
-                   ysize = h
-                   xIncrement :: Double
-                   xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-                   yIncrement :: Double
-                   yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-                   xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-                   yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-                   noiseF :: NoiseModule
-                   -- noiseF = gen perlin { perlinFrequency = 0.6, perlinOctaveCount = 5 }
-                   noiseF = gen billow { billowFrequency = 0.6, billowOctaves = 5 }
-
-                   -- Actual noise computation, getValue returns Maybe Double
-                   noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-                   -- Make sure the noiseValue is in the [-1.0, 1.0] range
-                   noiseClampedVal = if noiseValue > 1.0 
-                                        then 1.0
-                                        else if noiseValue < (-1.0) then (-1.0)
-                                                                    else noiseValue
-               ] $
-   act . PixelData RGBA UnsignedByte
-   -}
-
-withCheckImage :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withCheckImage (TextureSize2D w h) n f act =
-   withArray [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c | (i .&. n) == (j .&. n) = 0
-                     | otherwise              = 255 ] $
-   act . PixelData RGBA UnsignedByte
-
-benchmark :: Int -> IO()
-benchmark n = withNoiseVec (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0x18 (\c -> Color4 c c c 255) $
-                texImage2D Nothing NoProxy 0  RGBA' (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0
-
-benchmarkAndProfile :: Int -> IO()
-benchmarkAndProfile n = withNoiseVec (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0x18 (\c -> Color4 c c c 255) $
-                texImage2D Nothing NoProxy 0  RGBA' (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0
-
-myInit :: IO (TextureObject, TextureObject)
-myInit = do
-   clearColor $= Color4 0 0 0 0
-   shadeModel $= Flat
-   depthFunc $= Just Less
-   rowAlignment Unpack $= 1
-
-   [texName0, texName1] <- genObjectNames 2
-   textureBinding Texture2D $= Just texName0
-   textureWrapMode Texture2D S $= (Repeated, Clamp)
-   textureWrapMode Texture2D T $= (Repeated, Clamp)
-   textureFilter Texture2D $= ((Nearest, Nothing), Nearest)
-   withParNoiseVec checkImageSize 0x18 (\c -> Color4 c c c 255) $
-      texImage2D Nothing NoProxy 0  RGBA' checkImageSize 0
-
-{-
-   textureBinding Texture2D $= Just texName1
-   textureWrapMode Texture2D S $= (Repeated, Clamp)
-   textureWrapMode Texture2D T $= (Repeated, Clamp)
-   textureFilter Texture2D $= ((Nearest, Nothing), Nearest)
-   textureFunction $= Decal
-   withParNoiseVec checkImageSize 0x10 (\c -> Color4 c 0 0 255) $
-      texImage2D Nothing NoProxy 0  RGBA' checkImageSize 0
--}
-   texture Texture2D $= Enabled
-   return (texName0, texName1)
-
-display ::  (TextureObject, TextureObject) -> DisplayCallback
-display (texName0, texName1) = do
-   clear [ ColorBuffer, DepthBuffer ]
-   -- resolve overloading, not needed in "real" programs
-   let texCoord2f = texCoord :: TexCoord2 GLfloat -> IO ()
-       vertex3f = vertex :: Vertex3 GLfloat -> IO ()
-   textureBinding Texture2D $= Just texName0
-   renderPrimitive Quads $ do
-      texCoord2f (TexCoord2 0 0); vertex3f (Vertex3 (-2.0)    (-1.0)   0.0     )
-      texCoord2f (TexCoord2 0 1); vertex3f (Vertex3 (-2.0)      1.0    0.0     )
-      texCoord2f (TexCoord2 1 1); vertex3f (Vertex3   0.0       1.0    0.0     )
-      texCoord2f (TexCoord2 1 0); vertex3f (Vertex3   0.0     (-1.0)   0.0     )
-   textureBinding Texture2D $= Just texName0
-   renderPrimitive Quads $ do
-      texCoord2f (TexCoord2 0 0); vertex3f (Vertex3   1.0     (-1.0)   0.0     )
-      texCoord2f (TexCoord2 0 1); vertex3f (Vertex3   1.0       1.0    0.0     )
-      texCoord2f (TexCoord2 1 1); vertex3f (Vertex3   2.41421   1.0  (-1.41421))
-      texCoord2f (TexCoord2 1 0); vertex3f (Vertex3   2.41421 (-1.0) (-1.41421))
-   flush
-   -- exitWith ExitSuccess
-
-reshape :: ReshapeCallback
-reshape size@(Size w h) = do
-   viewport $= (Position 0 0, size)
-   matrixMode $= Projection
-   loadIdentity
-   perspective 60 (fromIntegral w / fromIntegral h) 1 30
-   matrixMode $= Modelview 0
-   loadIdentity
-   translate (Vector3 0 0 (-3.6 :: GLfloat))
-
-keyboard :: KeyboardMouseCallback
-keyboard (Char '\27') Down _ _ = exitWith ExitSuccess
-keyboard _            _    _ _ = return ()
diff --git a/profiling/TexNoiseVectBackup.hs b/profiling/TexNoiseVectBackup.hs
deleted file mode 100644
--- a/profiling/TexNoiseVectBackup.hs
+++ /dev/null
@@ -1,254 +0,0 @@
-{-# LANGUAGE BangPatterns #-}
-module TexNoiseVect where 
-import Control.Monad ( when )
-import Data.Bits ( (.&.) )
-import Foreign ( withArray )
-import System.Exit ( exitFailure, exitWith, ExitCode(ExitSuccess) )
-import Graphics.UI.GLUT
-import Maybe
-
--- Noisy stuff
-import Math.Noise.Modules.Perlin
-{-
-import Noise.Modules.ScaleBias
-import Noise.Modules.Abs
-import Noise.Modules.Billow
-import Noise.Modules.Select
--}
-import Math.Noise.NoiseModule
-import Math.Noise.NoiseGen
--- import Gradient
-
--- Vector stuff
-import qualified Data.Vector.Storable as V
-import Foreign.ForeignPtr
-
--- Parallel stuff
-import Control.Parallel
---import Control.Monad.Parallel
-
--- Create checkerboard image
-checkImageSize :: TextureSize2D
-checkImageSize = TextureSize2D 1024 1024
-
-defColor = const Color4 0 0 0 0
-
-noiseParGen :: GLsizei -> GLsizei -> (GLubyte -> Color4 (GLubyte) ) -> Int -> Int -> V.Vector (Color4 GLubyte)
-
-noiseParGen w h f total !tnum | tnum == total = genFunc total 
-                              -- | otherwise = (V.++) gen1 $ par gen1 gen2 
-                              | otherwise = par gen1 (seq gen2 (gen1 V.++ gen2))
-    where 
-          !ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral total)
-          genFunc !num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-          gen1 = genFunc tnum 
-          gen2 = noiseParGen w h f total (tnum + 1)
-
-noiseParGen4 :: GLsizei -> GLsizei -> (GLubyte -> Color4 (GLubyte) ) -> Int -> Int -> Int -> IO (V.Vector (Color4 GLubyte))
-noiseParGen4 w h f numt proc1 proc2 = do  
-    -- v1 <- forkExec $ genFunc proc1
-    -- let v2 = genFunc proc2
-    --return $ v1 V.++ v2
-    return $ (genFunc 1) V.++ (genFunc 2) V.++ (genFunc 3) V.++ (genFunc 4)
-    where 
-          ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral numt)
-          genFunc num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-
-noiseParGenAll w h f numt = return $ 
-  foldr (V.++) V.empty lst
-  where 
-        ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral numt)
-        genFunc num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-        lst = map genFunc [1..numt]
-
-noiseGen2 w h f = V.generate ((fromIntegral w) * (fromIntegral h)) (vecFunc w h f 0)
-
-vecFunc w h f baseIndx indx = f c 
- where c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-       realIndx = (fromIntegral baseIndx) + (fromIntegral indx)
-       (i,j) = (realIndx `mod` w, floor $ (/) (fromIntegral realIndx) (fromIntegral w) )
-       boundBottomX :: Double
-       boundBottomX = 0.0
-       boundBottomY :: Double
-       boundBottomY = 0.0
-       boundUpperX :: Double
-       boundUpperX = 10.0
-       boundUpperY :: Double
-       boundUpperY = 10.0
-       xsize = w
-       ysize = h
-       xIncrement :: Double
-       xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-       yIncrement :: Double
-       yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-       xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-       yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-       noiseF :: NoiseModule
-       noiseF = gen perlin{ perlinFrequency = 0.6, perlinOctaveCount = 8}
-
-       -- Actual noise computation, getValue returns Maybe Double
-       noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-       noiseClampedVal = min 1.0 . max (-1.0) $ noiseValue      
-
-noiseGen1 w h f = (V.fromList [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-                   boundBottomX :: Double
-                   boundBottomX = 0.0
-                   boundBottomY :: Double
-                   boundBottomY = 0.0
-                   boundUpperX :: Double
-                   boundUpperX = 10.0
-                   boundUpperY :: Double
-                   boundUpperY = 10.0
-                   xsize = w
-                   ysize = h
-                   xIncrement :: Double
-                   xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-                   yIncrement :: Double
-                   yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-                   xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-                   yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-                   noiseF :: NoiseModule
-                   -- noiseF = gen perlin { perlinFrequency = 0.6, perlinOctaveCount = 5 }
-                   noiseF = gen billow { billowFrequency = 0.6, billowOctaves = 5 }
-
-                   -- Actual noise computation, getValue returns Maybe Double
-                   noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-                   -- Make sure the noiseValue is in the [-1.0, 1.0] range
-                   noiseClampedVal = if noiseValue > 1.0 
-                                        then 1.0
-                                        else if noiseValue < (-1.0) then (-1.0)
-                                                                    else noiseValue
-            ])
-
-withParNoiseVec :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withParNoiseVec (TextureSize2D w h) n f act =    
-  V.unsafeWith (noiseParGen (fromIntegral w) (fromIntegral h) f 4 1) (act . PixelData RGBA UnsignedByte)
-
-withNoiseVec :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withNoiseVec (TextureSize2D w h) n f act =
-   V.unsafeWith (noiseGen2 (fromIntegral w) (fromIntegral h) f) (act . PixelData RGBA UnsignedByte)
-
-withNoiseImage :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withNoiseImage (TextureSize2D w h) n f act =
-   withArray [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-                   boundBottomX :: Double
-                   boundBottomX = 0.0
-                   boundBottomY :: Double
-                   boundBottomY = 0.0
-                   boundUpperX :: Double
-                   boundUpperX = 10.0
-                   boundUpperY :: Double
-                   boundUpperY = 10.0
-                   xsize = w
-                   ysize = h
-                   xIncrement :: Double
-                   xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-                   yIncrement :: Double
-                   yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-                   xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-                   yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-                   noiseF :: NoiseModule
-                   -- noiseF = gen perlin { perlinFrequency = 0.6, perlinOctaveCount = 5 }
-                   noiseF = gen billow { billowFrequency = 0.6, billowOctaves = 5 }
-
-                   -- Actual noise computation, getValue returns Maybe Double
-                   noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-                   -- Make sure the noiseValue is in the [-1.0, 1.0] range
-                   noiseClampedVal = if noiseValue > 1.0 
-                                        then 1.0
-                                        else if noiseValue < (-1.0) then (-1.0)
-                                                                    else noiseValue
-               ] $
-   act . PixelData RGBA UnsignedByte
-
-withCheckImage :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withCheckImage (TextureSize2D w h) n f act =
-   withArray [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c | (i .&. n) == (j .&. n) = 0
-                     | otherwise              = 255 ] $
-   act . PixelData RGBA UnsignedByte
-
-benchmark :: Int -> IO()
-benchmark n = withNoiseVec (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0x18 (\c -> Color4 c c c 255) $
-                texImage2D Nothing NoProxy 0  RGBA' (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0
-
-benchmarkAndProfile :: Int -> IO()
-benchmarkAndProfile n = withNoiseVec (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0x18 (\c -> Color4 c c c 255) $
-                texImage2D Nothing NoProxy 0  RGBA' (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0
-
-myInit :: IO (TextureObject, TextureObject)
-myInit = do
-   clearColor $= Color4 0 0 0 0
-   shadeModel $= Flat
-   depthFunc $= Just Less
-   rowAlignment Unpack $= 1
-
-   [texName0, texName1] <- genObjectNames 2
-   textureBinding Texture2D $= Just texName0
-   textureWrapMode Texture2D S $= (Repeated, Clamp)
-   textureWrapMode Texture2D T $= (Repeated, Clamp)
-   textureFilter Texture2D $= ((Nearest, Nothing), Nearest)
-   withParNoiseVec checkImageSize 0x18 (\c -> Color4 c c c 255) $
-      texImage2D Nothing NoProxy 0  RGBA' checkImageSize 0
-
-{-
-   textureBinding Texture2D $= Just texName1
-   textureWrapMode Texture2D S $= (Repeated, Clamp)
-   textureWrapMode Texture2D T $= (Repeated, Clamp)
-   textureFilter Texture2D $= ((Nearest, Nothing), Nearest)
-   textureFunction $= Decal
-   withParNoiseVec checkImageSize 0x10 (\c -> Color4 c 0 0 255) $
-      texImage2D Nothing NoProxy 0  RGBA' checkImageSize 0
--}
-   texture Texture2D $= Enabled
-   return (texName0, texName1)
-
-display ::  (TextureObject, TextureObject) -> DisplayCallback
-display (texName0, texName1) = do
-   clear [ ColorBuffer, DepthBuffer ]
-   -- resolve overloading, not needed in "real" programs
-   let texCoord2f = texCoord :: TexCoord2 GLfloat -> IO ()
-       vertex3f = vertex :: Vertex3 GLfloat -> IO ()
-   textureBinding Texture2D $= Just texName0
-   renderPrimitive Quads $ do
-      texCoord2f (TexCoord2 0 0); vertex3f (Vertex3 (-2.0)    (-1.0)   0.0     )
-      texCoord2f (TexCoord2 0 1); vertex3f (Vertex3 (-2.0)      1.0    0.0     )
-      texCoord2f (TexCoord2 1 1); vertex3f (Vertex3   0.0       1.0    0.0     )
-      texCoord2f (TexCoord2 1 0); vertex3f (Vertex3   0.0     (-1.0)   0.0     )
-   textureBinding Texture2D $= Just texName0
-   renderPrimitive Quads $ do
-      texCoord2f (TexCoord2 0 0); vertex3f (Vertex3   1.0     (-1.0)   0.0     )
-      texCoord2f (TexCoord2 0 1); vertex3f (Vertex3   1.0       1.0    0.0     )
-      texCoord2f (TexCoord2 1 1); vertex3f (Vertex3   2.41421   1.0  (-1.41421))
-      texCoord2f (TexCoord2 1 0); vertex3f (Vertex3   2.41421 (-1.0) (-1.41421))
-   flush
-   -- exitWith ExitSuccess
-
-reshape :: ReshapeCallback
-reshape size@(Size w h) = do
-   viewport $= (Position 0 0, size)
-   matrixMode $= Projection
-   loadIdentity
-   perspective 60 (fromIntegral w / fromIntegral h) 1 30
-   matrixMode $= Modelview 0
-   loadIdentity
-   translate (Vector3 0 0 (-3.6 :: GLfloat))
-
-keyboard :: KeyboardMouseCallback
-keyboard (Char '\27') Down _ _ = exitWith ExitSuccess
-keyboard _            _    _ _ = return ()
diff --git a/test/Billow.hs b/test/Billow.hs
deleted file mode 100644
--- a/test/Billow.hs
+++ /dev/null
@@ -1,56 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Billow where
-import Math.Noise.NoiseGen
-import Math.Noise.NoiseModule
-import Foreign
-import Foreign.C.Types
-
-{-
-foreign import ccall "billow.h billowGen"
-  c_billow :: CDouble -> CDouble -> CDouble 
-           -> CDouble -> CDouble -> CInt 
-           -> CDouble -> CInt 
-           -> CDouble
--}
-
-data Billow = Billow { billowFrequency
-                     , billowLacunarity
-                     , billowPersistence :: Double
-                     , billowOctaves
-                     , billowSeed 
-                     , billowMaxOctave :: Int
-                     }
-
-billow :: Billow
-billow = Billow { billowFrequency = 1.0
-		, billowLacunarity = 2.0
-		, billowPersistence = 0.5
-		, billowOctaves = 6
-		, billowSeed = 125
-                , billowMaxOctave = 30
-		}
-
-instance NoiseClass Billow where
-  getNoiseValue (Billow { billowFrequency = freq 
-                        , billowLacunarity = lac
-                        , billowOctaves = octaveCount
-                        , billowPersistence = pers
-                        , billowSeed = seed
-                        , billowMaxOctave = maxoctv
-                        } ) _ (x,y,z) =
-    Just . (+) 0.5 . value $ 
-      foldr octaveFunc (0.0, 1.0, ix, iy, iz) [0..octaveCount]
-    where ix = x * freq
-          iy = y * freq
-          iz = z * freq
-          fromDouble = fromInteger . floor
-          value (v,_,_,_,_) = v
-          signal sx sy sz octv = 2.0 * (abs $ gradientCoherentNoise3D sx sy sz (octaveSeed octv)) - 1.0
-          octaveSeed octv = seed + octv
-          octaveFunc curOctave (value, curPersistence, ox, oy, oz) =
-                ( value + ( (signal ox oy oz curOctave) * curPersistence)
-                , curPersistence * pers
-                , ox * lac
-                , oy * lac
-                , oz * lac
-                )
diff --git a/test/Main.hs b/test/Main.hs
deleted file mode 100644
--- a/test/Main.hs
+++ /dev/null
@@ -1,63 +0,0 @@
-import Control.Monad ( when )
-import Data.Bits ( (.&.) )
-import Foreign ( withArray )
-import System.Exit ( exitFailure, exitWith, ExitCode(ExitSuccess) )
-import Graphics.UI.GLUT
-import Maybe
-
--- Noisy stuff
-import Math.Noise.Modules.Perlin
--- import Math.Noise.Modules.ScaleBias
--- import Math.Noise.Modules.Abs
--- import Math.Noise.Modules.Billow
--- import Math.Noise.Modules.Select
-import Math.Noise.NoiseModule
--- import Gradient
--- import Noise.Test
-
--- Vector stuff
-import Data.Vector.Storable
-import Foreign.ForeignPtr
-
-import TexNoiseVect
-import Criterion.Main
-
-
-main2 :: IO()
-main2 = defaultMain [
-             bench "perlin 512x512" $ benchmark 512
-           , bench "perlin 1024x1024" $ benchmark 1024
-           , bench "perlin 2048x2048" $ benchmark 2048
-           ]
-
-main :: IO ()
-main = do
-   (progName, _args) <- getArgsAndInitialize
-   case _args of
-     ["show"] -> showTex 
-     ["512"] -> defaultMain [ bench "perlin 512x512" $ benchmark 1024 ]
-     ["1024"] -> defaultMain [ bench "perlin 1024x1024" $ benchmark 1024 ]
-     _ -> defaultMain [ bench "perlin 256x256" $ benchmarkAndProfile 256 
-                      , bench "perlin 512x512" $ benchmarkAndProfile 512
-                      , bench "perlin 1024x1024" $ benchmarkAndProfile 1024
-                      -- , bench "perlin 2048x2048" $ benchmarkAndProfile 2048
-                      ]
-
-showTex = do 
-   initialDisplayMode $= [ SingleBuffered, RGBMode, WithDepthBuffer ]
-   initialWindowSize $= Size 250 250
-   initialWindowPosition $= Position 100 100
-   createWindow ""
-   -- we have to do this *after* createWindow, otherwise we have no OpenGL context
-   version <- get (majorMinor glVersion)
-   when (version == (1,0)) $ do
-      putStrLn "This program demonstrates a feature which is not in OpenGL Version 1.0."
-      putStrLn "If your implementation of OpenGL Version 1.0 has the right extensions,"
-      putStrLn "you may be able to modify this program to make it run."
-      exitFailure
-   texNames <- myInit
-   reshapeCallback $= Just reshape
-   displayCallback $= display texNames
-   keyboardMouseCallback $= Just keyboard
-   mainLoop
-
diff --git a/test/TexNoise.hs b/test/TexNoise.hs
deleted file mode 100644
--- a/test/TexNoise.hs
+++ /dev/null
@@ -1,156 +0,0 @@
-import Control.Monad ( when )
-import Data.Bits ( (.&.) )
-import Foreign ( withArray )
-import System.Exit ( exitFailure, exitWith, ExitCode(ExitSuccess) )
-import Graphics.UI.GLUT
-import Maybe
-
--- Noisy stuff
-import Noise.Modules.Perlin
-import Noise.Modules.ScaleBias
-import Noise.Modules.Abs
-import Noise.Modules.Billow
-import Noise.Modules.Select
-import Noise.NoiseModule
-import Gradient
-import Noise.Test
-
--- Vector stuff
-import Data.Vector.Storable
-import Foreign.ForeignPtr
-
--- Create checkerboard image
-checkImageSize :: TextureSize2D
-checkImageSize = TextureSize2D 512 512
-
-withNoiseImage :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withNoiseImage (TextureSize2D w h) n f act =
-   withArray [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-                   boundBottomX :: Double
-                   boundBottomX = 0.0
-                   boundBottomY :: Double
-                   boundBottomY = 0.0
-                   boundUpperX :: Double
-                   boundUpperX = 10.0
-                   boundUpperY :: Double
-                   boundUpperY = 10.0
-                   xsize = w
-                   ysize = h
-                   xIncrement :: Double
-                   xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-                   yIncrement :: Double
-                   yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-                   xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-                   yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-                   noiseF :: NoiseModule
-                   -- noiseF = gen perlin { perlinFrequency = 0.6, perlinOctaveCount = 5 }
-                   noiseF = gen billow { billowFrequency = 0.6, billowOctaves = 5 }
-
-                   -- Actual noise computation, getValue returns Maybe Double
-                   noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-                   -- Make sure the noiseValue is in the [-1.0, 1.0] range
-                   noiseClampedVal = if noiseValue > 1.0 
-                                        then 1.0
-                                        else if noiseValue < (-1.0) then (-1.0)
-                                                                    else noiseValue
-                                        
-                                                         
-               ] $
-   act . PixelData RGBA UnsignedByte
-
-
-withCheckImage :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withCheckImage (TextureSize2D w h) n f act =
-   withArray [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c | (i .&. n) == (j .&. n) = 0
-                     | otherwise              = 255 ] $
-   act . PixelData RGBA UnsignedByte
-
-myInit :: IO (TextureObject, TextureObject)
-myInit = do
-   clearColor $= Color4 0 0 0 0
-   shadeModel $= Flat
-   depthFunc $= Just Less
-   rowAlignment Unpack $= 1
-
-   [texName0, texName1] <- genObjectNames 2
-   textureBinding Texture2D $= Just texName0
-   textureWrapMode Texture2D S $= (Repeated, Clamp)
-   textureWrapMode Texture2D T $= (Repeated, Clamp)
-   textureFilter Texture2D $= ((Nearest, Nothing), Nearest)
-   withNoiseImage checkImageSize 0x18 (\c -> Color4 c c c 255) $
-      texImage2D Nothing NoProxy 0  RGBA' checkImageSize 0
-
-   textureBinding Texture2D $= Just texName1
-   textureWrapMode Texture2D S $= (Repeated, Clamp)
-   textureWrapMode Texture2D T $= (Repeated, Clamp)
-   textureFilter Texture2D $= ((Nearest, Nothing), Nearest)
-   textureFunction $= Decal
-   withNoiseImage checkImageSize 0x10 (\c -> Color4 c 0 0 255) $
-      texImage2D Nothing NoProxy 0  RGBA' checkImageSize 0
-   texture Texture2D $= Enabled
-   return (texName0, texName1)
-
-display ::  (TextureObject, TextureObject) -> DisplayCallback
-display (texName0, texName1) = do
-   clear [ ColorBuffer, DepthBuffer ]
-   -- resolve overloading, not needed in "real" programs
-   let texCoord2f = texCoord :: TexCoord2 GLfloat -> IO ()
-       vertex3f = vertex :: Vertex3 GLfloat -> IO ()
-   textureBinding Texture2D $= Just texName0
-   renderPrimitive Quads $ do
-      texCoord2f (TexCoord2 0 0); vertex3f (Vertex3 (-2.0)    (-1.0)   0.0     )
-      texCoord2f (TexCoord2 0 1); vertex3f (Vertex3 (-2.0)      1.0    0.0     )
-      texCoord2f (TexCoord2 1 1); vertex3f (Vertex3   0.0       1.0    0.0     )
-      texCoord2f (TexCoord2 1 0); vertex3f (Vertex3   0.0     (-1.0)   0.0     )
-   textureBinding Texture2D $= Just texName1
-   renderPrimitive Quads $ do
-      texCoord2f (TexCoord2 0 0); vertex3f (Vertex3   1.0     (-1.0)   0.0     )
-      texCoord2f (TexCoord2 0 1); vertex3f (Vertex3   1.0       1.0    0.0     )
-      texCoord2f (TexCoord2 1 1); vertex3f (Vertex3   2.41421   1.0  (-1.41421))
-      texCoord2f (TexCoord2 1 0); vertex3f (Vertex3   2.41421 (-1.0) (-1.41421))
-   flush
-   exitWith ExitSuccess
-
-reshape :: ReshapeCallback
-reshape size@(Size w h) = do
-   viewport $= (Position 0 0, size)
-   matrixMode $= Projection
-   loadIdentity
-   perspective 60 (fromIntegral w / fromIntegral h) 1 30
-   matrixMode $= Modelview 0
-   loadIdentity
-   translate (Vector3 0 0 (-3.6 :: GLfloat))
-
-keyboard :: KeyboardMouseCallback
-keyboard (Char '\27') Down _ _ = exitWith ExitSuccess
-keyboard _            _    _ _ = return ()
-
-main :: IO ()
-main = do
-   (progName, _args) <- getArgsAndInitialize
-   initialDisplayMode $= [ SingleBuffered, RGBMode, WithDepthBuffer ]
-   initialWindowSize $= Size 250 250
-   initialWindowPosition $= Position 100 100
-   createWindow progName
-   -- we have to do this *after* createWindow, otherwise we have no OpenGL context
-   version <- get (majorMinor glVersion)
-   when (version == (1,0)) $ do
-      putStrLn "This program demonstrates a feature which is not in OpenGL Version 1.0."
-      putStrLn "If your implementation of OpenGL Version 1.0 has the right extensions,"
-      putStrLn "you may be able to modify this program to make it run."
-      exitFailure
-   texNames <- myInit
-   reshapeCallback $= Just reshape
-   displayCallback $= display texNames
-   keyboardMouseCallback $= Just keyboard
-   mainLoop
-
diff --git a/test/TexNoiseVect.hs b/test/TexNoiseVect.hs
deleted file mode 100644
--- a/test/TexNoiseVect.hs
+++ /dev/null
@@ -1,258 +0,0 @@
-{-# LANGUAGE BangPatterns #-}
-module TexNoiseVect where 
-import Control.Monad ( when )
-import Data.Bits ( (.&.) )
-import Foreign ( withArray )
-import System.Exit ( exitFailure, exitWith, ExitCode(ExitSuccess) )
-import Graphics.UI.GLUT
-import Maybe
-
--- Noisy stuff
-import Math.Noise.Modules.Perlin
-import Billow
--- import Math.Noise.Modules.ScaleBias
--- import Math.Noise.Modules.Abs
--- import Math.Noise.Modules.Billow
--- import Math.Noise.Modules.Select
-import Math.Noise.NoiseModule
-import Math.Noise.NoiseGen
--- import Gradient
--- import Noise.Test
-
--- Vector stuff
-import qualified Data.Vector.Storable as V
-import Foreign.ForeignPtr
-
--- Parallel stuff
-import Control.Parallel
---import Control.Monad.Parallel
-
--- Create checkerboard image
-checkImageSize :: TextureSize2D
-checkImageSize = TextureSize2D 1024 1024
-
-defColor = const Color4 0 0 0 0
-
-noiseParGen :: GLsizei -> GLsizei -> (GLubyte -> Color4 (GLubyte) ) -> Int -> Int -> V.Vector (Color4 GLubyte)
-noiseParGen w h f total !tnum | tnum == total = genFunc total 
-                              -- | otherwise = (V.++) gen1 $ par gen1 gen2 
-                              | otherwise = par gen1 (seq gen2 (gen1 V.++ gen2))
-    where 
-          !ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral total)
-          genFunc !num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-          gen1 = genFunc tnum 
-          gen2 = noiseParGen w h f total (tnum + 1)
-
-noiseParGen4 :: GLsizei -> GLsizei -> (GLubyte -> Color4 (GLubyte) ) -> Int -> Int -> Int -> IO (V.Vector (Color4 GLubyte))
-noiseParGen4 w h f numt proc1 proc2 = do  
-    -- v1 <- forkExec $ genFunc proc1
-    -- let v2 = genFunc proc2
-    --return $ v1 V.++ v2
-    return $ (genFunc 1) V.++ (genFunc 2) V.++ (genFunc 3) V.++ (genFunc 4)
-    where 
-          ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral numt)
-          genFunc num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-
-noiseParGenAll w h f numt = return $ 
-  foldr (V.++) V.empty lst
-  where 
-        ammount = floor $ ((fromIntegral w) * (fromIntegral h)) / (fromIntegral numt)
-        genFunc num = V.generate ammount (vecFunc w h f  ((num - 1) *ammount) )
-        lst = map genFunc [1..numt]
-
-noiseGen2 w h f = V.generate ((fromIntegral w) * (fromIntegral h)) (vecFunc w h f 0)
-
-vecFunc w h f baseIndx indx = f c 
- where c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-       realIndx = (fromIntegral baseIndx) + (fromIntegral indx)
-       (i,j) = (realIndx `mod` w, floor $ (/) (fromIntegral realIndx) (fromIntegral w) )
-       boundBottomX :: Double
-       boundBottomX = 0.0
-       boundBottomY :: Double
-       boundBottomY = 0.0
-       boundUpperX :: Double
-       boundUpperX = 10.0
-       boundUpperY :: Double
-       boundUpperY = 10.0
-       xsize = w
-       ysize = h
-       xIncrement :: Double
-       xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-       yIncrement :: Double
-       yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-       xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-       yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-       noiseF :: NoiseModule
-       -- noiseF = gen perlin{ perlinFrequency = 0.6, perlinOctaveCount = 8}
-       noiseF = gen billow{ billowFrequency=0.18 }
-
-       -- Actual noise computation, getValue returns Maybe Double
-       noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-       noiseClampedVal = min 1.0 . max (-1.0) $ noiseValue      
-
-{-
-noiseGen1 w h f = (V.fromList [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-                   boundBottomX :: Double
-                   boundBottomX = 0.0
-                   boundBottomY :: Double
-                   boundBottomY = 0.0
-                   boundUpperX :: Double
-                   boundUpperX = 10.0
-                   boundUpperY :: Double
-                   boundUpperY = 10.0
-                   xsize = w
-                   ysize = h
-                   xIncrement :: Double
-                   xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-                   yIncrement :: Double
-                   yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-                   xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-                   yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-                   noiseF :: NoiseModule
-                   -- noiseF = gen perlin { perlinFrequency = 0.6, perlinOctaveCount = 5 }
-                   noiseF = gen billow { billowFrequency = 0.6, billowOctaves = 5 }
-
-                   -- Actual noise computation, getValue returns Maybe Double
-                   noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-                   -- Make sure the noiseValue is in the [-1.0, 1.0] range
-                   noiseClampedVal = if noiseValue > 1.0 
-                                        then 1.0
-                                        else if noiseValue < (-1.0) then (-1.0)
-                                                                    else noiseValue
-            ])
--}
-
-withParNoiseVec :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withParNoiseVec (TextureSize2D w h) n f act =    
-  V.unsafeWith (noiseParGen (fromIntegral w) (fromIntegral h) f 4 1) (act . PixelData RGBA UnsignedByte)
-
-withNoiseVec :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withNoiseVec (TextureSize2D w h) n f act =
-   V.unsafeWith (noiseGen2 (fromIntegral w) (fromIntegral h) f) (act . PixelData RGBA UnsignedByte)
-
-{-
-withNoiseImage :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withNoiseImage (TextureSize2D w h) n f act =
-   withArray [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c = floor $ (\v ->  (v + 1.0) * 127.5 ) $ noiseClampedVal
-                   boundBottomX :: Double
-                   boundBottomX = 0.0
-                   boundBottomY :: Double
-                   boundBottomY = 0.0
-                   boundUpperX :: Double
-                   boundUpperX = 10.0
-                   boundUpperY :: Double
-                   boundUpperY = 10.0
-                   xsize = w
-                   ysize = h
-                   xIncrement :: Double
-                   xIncrement = (boundUpperX - boundBottomX) / (fromIntegral xsize)
-                   yIncrement :: Double
-                   yIncrement = (boundUpperY - boundBottomY) / (fromIntegral ysize)
-                   xPos x = ((fromIntegral x) * xIncrement)  +  boundBottomX
-                   yPos y = ((fromIntegral y) * yIncrement)  +  boundBottomY
-
-                   noiseF :: NoiseModule
-                   -- noiseF = gen perlin { perlinFrequency = 0.6, perlinOctaveCount = 5 }
-                   noiseF = gen billow { billowFrequency = 0.6, billowOctaves = 5 }
-
-                   -- Actual noise computation, getValue returns Maybe Double
-                   noiseValue = fromMaybe (-1.0) $ getValue noiseF (xPos i, yPos j, 2.123)
-                   -- Make sure the noiseValue is in the [-1.0, 1.0] range
-                   noiseClampedVal = if noiseValue > 1.0 
-                                        then 1.0
-                                        else if noiseValue < (-1.0) then (-1.0)
-                                                                    else noiseValue
-               ] $
-   act . PixelData RGBA UnsignedByte
-   -}
-
-withCheckImage :: TextureSize2D -> GLsizei -> (GLubyte -> (Color4 GLubyte))
-               -> (PixelData (Color4 GLubyte) -> IO ()) -> IO ()
-withCheckImage (TextureSize2D w h) n f act =
-   withArray [ f c |
-               i <- [ 0 .. w - 1 ],
-               j <- [ 0 .. h - 1 ],
-               let c | (i .&. n) == (j .&. n) = 0
-                     | otherwise              = 255 ] $
-   act . PixelData RGBA UnsignedByte
-
-benchmark :: Int -> IO()
-benchmark n = withNoiseVec (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0x18 (\c -> Color4 c c c 255) $
-                texImage2D Nothing NoProxy 0  RGBA' (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0
-
-benchmarkAndProfile :: Int -> IO()
-benchmarkAndProfile n = withNoiseVec (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0x18 (\c -> Color4 c c c 255) $
-                texImage2D Nothing NoProxy 0  RGBA' (TextureSize2D (fromIntegral n) (fromIntegral n) ) 0
-
-myInit :: IO (TextureObject, TextureObject)
-myInit = do
-   clearColor $= Color4 0 0 0 0
-   shadeModel $= Flat
-   depthFunc $= Just Less
-   rowAlignment Unpack $= 1
-
-   [texName0, texName1] <- genObjectNames 2
-   textureBinding Texture2D $= Just texName0
-   textureWrapMode Texture2D S $= (Repeated, Clamp)
-   textureWrapMode Texture2D T $= (Repeated, Clamp)
-   textureFilter Texture2D $= ((Nearest, Nothing), Nearest)
-   withParNoiseVec checkImageSize 0x18 (\c -> Color4 c c c 255) $
-      texImage2D Nothing NoProxy 0  RGBA' checkImageSize 0
-
-{-
-   textureBinding Texture2D $= Just texName1
-   textureWrapMode Texture2D S $= (Repeated, Clamp)
-   textureWrapMode Texture2D T $= (Repeated, Clamp)
-   textureFilter Texture2D $= ((Nearest, Nothing), Nearest)
-   textureFunction $= Decal
-   withParNoiseVec checkImageSize 0x10 (\c -> Color4 c 0 0 255) $
-      texImage2D Nothing NoProxy 0  RGBA' checkImageSize 0
--}
-   texture Texture2D $= Enabled
-   return (texName0, texName1)
-
-display ::  (TextureObject, TextureObject) -> DisplayCallback
-display (texName0, texName1) = do
-   clear [ ColorBuffer, DepthBuffer ]
-   -- resolve overloading, not needed in "real" programs
-   let texCoord2f = texCoord :: TexCoord2 GLfloat -> IO ()
-       vertex3f = vertex :: Vertex3 GLfloat -> IO ()
-   textureBinding Texture2D $= Just texName0
-   renderPrimitive Quads $ do
-      texCoord2f (TexCoord2 0 0); vertex3f (Vertex3 (-2.0)    (-1.0)   0.0     )
-      texCoord2f (TexCoord2 0 1); vertex3f (Vertex3 (-2.0)      1.0    0.0     )
-      texCoord2f (TexCoord2 1 1); vertex3f (Vertex3   0.0       1.0    0.0     )
-      texCoord2f (TexCoord2 1 0); vertex3f (Vertex3   0.0     (-1.0)   0.0     )
-   textureBinding Texture2D $= Just texName0
-   renderPrimitive Quads $ do
-      texCoord2f (TexCoord2 0 0); vertex3f (Vertex3   1.0     (-1.0)   0.0     )
-      texCoord2f (TexCoord2 0 1); vertex3f (Vertex3   1.0       1.0    0.0     )
-      texCoord2f (TexCoord2 1 1); vertex3f (Vertex3   2.41421   1.0  (-1.41421))
-      texCoord2f (TexCoord2 1 0); vertex3f (Vertex3   2.41421 (-1.0) (-1.41421))
-   flush
-   -- exitWith ExitSuccess
-
-reshape :: ReshapeCallback
-reshape size@(Size w h) = do
-   viewport $= (Position 0 0, size)
-   matrixMode $= Projection
-   loadIdentity
-   perspective 60 (fromIntegral w / fromIntegral h) 1 30
-   matrixMode $= Modelview 0
-   loadIdentity
-   translate (Vector3 0 0 (-3.6 :: GLfloat))
-
-keyboard :: KeyboardMouseCallback
-keyboard (Char '\27') Down _ _ = exitWith ExitSuccess
-keyboard _            _    _ _ = return ()
