diff --git a/.cvsignore b/.cvsignore
deleted file mode 100644
index 76a225de69d943069fe246a4ebf83a88d9800434..0000000000000000000000000000000000000000
--- a/.cvsignore
+++ /dev/null
@@ -1,18 +0,0 @@
-aclocal.m4
-config.h.in
-Makefile.in
-Makefile
-config.status
-libtool
-ltmain.sh
-config.cache
-config.log
-config.sub
-config.guess
-configure
-*.gz
-*.zip
-.libs
-.deps
-*.ogg
-vorbis-config
diff --git a/AUTHORS b/AUTHORS
deleted file mode 100644
index 171072e9c9e063f560c32da4e69a661d29eeaff7..0000000000000000000000000000000000000000
--- a/AUTHORS
+++ /dev/null
@@ -1,3 +0,0 @@
-Monty
-
-and the rest of the Xiphophorus Company.
diff --git a/COPYING b/COPYING
deleted file mode 100644
index 69bbac0e3adf3505a12f1792fd08dc5d8fac86cf..0000000000000000000000000000000000000000
--- a/COPYING
+++ /dev/null
@@ -1,28 +0,0 @@
-Copyright (c) 2001, Xiphophorus
-
-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 Xiphophorus 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 THE REGENTS OR
-CONTRIBUTORS 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/Makefile.am b/Makefile.am
deleted file mode 100644
index ea9c2356b39e6fe7933ca62158b83d91fff47566..0000000000000000000000000000000000000000
--- a/Makefile.am
+++ /dev/null
@@ -1,17 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign dist-zip
-
-SUBDIRS = lib include doc examples win32 debian vq
-
-m4datadir = $(datadir)/aclocal
-m4data_DATA = vorbis.m4
-
-EXTRA_DIST = README AUTHORS COPYING libvorbis.spec vorbis.m4 acinclude.m4\
- todo.txt
-
-debug:
- $(MAKE) all CFLAGS="@DEBUG@"
-
-profile:
- $(MAKE) all CFLAGS="@PROFILE@"
diff --git a/README b/README
deleted file mode 100644
index 0cb82680f3fb6962a6063af55b0cc5b88e73a4f9..0000000000000000000000000000000000000000
--- a/README
+++ /dev/null
@@ -1,142 +0,0 @@
-********************************************************************
-* *
-* THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
-* USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
-* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
-* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
-* *
-* THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
-* by the XIPHOPHORUS Company http://www.xiph.org/ *
-* *
-********************************************************************
-
-NEW AND IMPORTANT:
-
-If you're used to the source distribution from the first two beta
-releases, things are now rearranged a bit. Specifically, the
-'vorbis' CVS module contains only the libvorbis, libvorbisfile, and
-libvorbisenc libraries. Because Ogg bitstreams are to be used by other
-Ogg codecs, Ogg framing and streaming functionality is now in libogg
-(the 'ogg' CVS module). Vorbis utilities are in 'vorbis-tools' and various
-player plugins are in 'vorbis-plugins'. For now, you'll need to check
-out these other modules seperately. (Note: the xmms plugin is in the xmms
-CVS tree in xmms/Input/vorbis.)
-
-Secondly, the Ogg/Vorbis build systems now use automake. Instead of
-'./configure; make', the proper build sequence (in each module) is
-'./autogen.sh; make'.
-
-You will also need the newest versions of autoconf, automake, and libtool
-in order to compile vorbis from CVS. configure scripts are provided for you
-in tarball distributions.
-
-WHAT'S HERE:
-
-This source distribution includes libvorbis and an example
-encoder/player to demonstrate use of libvorbis and documentation on
-the Ogg Vorbis audio coding format.
-
-Directory:
-
-./lib The source for the libraries, a BSD-license implementation
- of the public domain Ogg Vorbis audio encoding format.
-
-./include Library API headers
-
-./debian Rules/spec files for building Debian .deb packages
-
-./doc Vorbis documentation
-
-./examples Example code illustrating programmatic use of libvorbis,
- libvorbisfile and libvorbisenc
-
-./mac Codewarrior project files and build tweaks for MacOS.
-
-./win32 Win32 projects files and build automation
-
-./vq Internal utilities for training/building new LSP/residue
- and auxiliary codebooks.
-
-WHAT IS VORBIS:
-
-Vorbis is a general purpose audio and music encoding format
-contemporary to MPEG-4's AAC and TwinVQ, the next generation beyond
-MPEG audio layer 3. Unlike the MPEG sponsored formats (and other
-proprietary formats such as RealAudio G2 and Windows' flavor of the
-month), the Vorbis CODEC specification belongs to the public domain.
-All the technical details are published and documented, and any
-software entity may make full use of the format without royalty or
-patent concerns.
-
-This package contains:
-
-.) libvorbis, a BSD-license software implementation of
-the Vorbis specification by the Xiphophorus company
-(http://www.xiph.org/)
-
-.) libvorbisfile, a BSD-license convenience library
-built on Vorbis designed to simplify common uses and a number of GPL
-example programs
-
-.) libvorbisenc, a BSD-license library that provides a simple, programmatic
-encoding setup interface
-
-.) example code making use of libogg, libvorbis, libvorbisfile and
-libvorbisenc
-
-CONTACT:
-
-The Ogg homepage is located at 'http://www.xiph.org/ogg/'.
-Vorbis's homepage is located at 'http://www.xiph.org/ogg/vorbis/'.
-Up to date technical documents, contact information, source code and
-pre-built utilities may be found there.
-
-BUILDING FROM CVS:
-
-./autogen.sh
-make
-
-and as root if desired:
-
-make install
-
-This will install the vorbis libraries (static and shared) into
-/usr/local/lib, includes into /usr/local/include and API manpages
-(once we write some) into /usr/local/man.
-
-BUILDING FROM TARBALL DISTRIBUTIONS:
-
-./configure
-make
-
-and optionally (as root):
-make install
-
-BUILDING RPMS:
-
-after normal configuring:
-
-make dist
-rpm -ta libvorbis-.tar.gz
-
-BUILDING ON MACOS 9:
-
-Vorbis on MacOS 9 is built using CodeWarrior 5.3. To build it, first
-verify that the Ogg libraries are already built following the
-instructions in the Ogg module README. Open vorbis/mac/libvorbis.mcp,
-switch to the "Targets" pane, select everything, and make the project.
-Do the same thing to build libvorbisenc.mcp, and libvorbisfile.mcp (in
-that order). In vorbis/mac/Output you will now have both debug and final
-versions of Vorbis shared libraries to link your projects against.
-
-To build a project using Ogg Vorbis, add access paths to your
-CodeWarrior project for the ogg/include, ogg/mac/Output,
-vorbis/include, and vorbis/mac/Output folders. Be sure that
-"interpret DOS and Unix paths" is turned on in your project; it can
-be found in the "access paths" pane in your project settings. Now
-simply add the shared libraries you need to your project (OggLib and
-VorbisLib at least) and #include "ogg/ogg.h" and "vorbis/codec.h"
-wherever you need to access Ogg and Vorbis functionality.
-
-
-$Id: README,v 1.11 2001/03/22 01:33:20 segher Exp $
diff --git a/acinclude.m4 b/acinclude.m4
deleted file mode 100644
index 73e41bd7201bb94749c6f6d897c4e086a2ee0bd6..0000000000000000000000000000000000000000
--- a/acinclude.m4
+++ /dev/null
@@ -1,99 +0,0 @@
-# acinclude.m4
-# all .m4 files needed that might not be installed go here
-
-# ogg.m4
-# Configure paths for libogg
-# Jack Moffitt 10-21-2000
-# Shamelessly stolen from Owen Taylor and Manish Singh
-
-dnl AM_PATH_OGG([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
-dnl Test for libogg, and define OGG_CFLAGS and OGG_LIBS
-dnl
-AC_DEFUN(AM_PATH_OGG,
-[dnl
-dnl Get the cflags and libraries
-dnl
-AC_ARG_WITH(ogg-prefix,[ --with-ogg-prefix=PFX Prefix where libogg is installed (optional)], ogg_prefix="$withval", ogg_prefix="")
-AC_ARG_ENABLE(oggtest, [ --disable-oggtest Do not try to compile and run a test Ogg program],, enable_oggtest=yes)
-
- if test "x$ogg_prefix" != "xNONE" ; then
- ogg_args="$ogg_args --prefix=$ogg_prefix"
- OGG_CFLAGS="-I$ogg_prefix/include"
- OGG_LIBS="-L$ogg_prefix/lib"
- elif test "$prefix" != ""; then
- ogg_args="$ogg_args --prefix=$prefix"
- OGG_CFLAGS="-I$prefix/include"
- OGG_LIBS="-L$prefix/lib"
- fi
-
- OGG_LIBS="$OGG_LIBS -logg"
-
- AC_MSG_CHECKING(for Ogg)
- no_ogg=""
-
-
- if test "x$enable_oggtest" = "xyes" ; then
- ac_save_CFLAGS="$CFLAGS"
- ac_save_LIBS="$LIBS"
- CFLAGS="$CFLAGS $OGG_CFLAGS"
- LIBS="$LIBS $OGG_LIBS"
-dnl
-dnl Now check if the installed Ogg is sufficiently new.
-dnl
- rm -f conf.oggtest
- AC_TRY_RUN([
-#include
-#include
-#include
-#include
-
-int main ()
-{
- system("touch conf.oggtest");
- return 0;
-}
-
-],, no_ogg=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
- CFLAGS="$ac_save_CFLAGS"
- LIBS="$ac_save_LIBS"
- fi
-
- if test "x$no_ogg" = "x" ; then
- AC_MSG_RESULT(yes)
- ifelse([$1], , :, [$1])
- else
- AC_MSG_RESULT(no)
- if test -f conf.oggtest ; then
- :
- else
- echo "*** Could not run Ogg test program, checking why..."
- CFLAGS="$CFLAGS $OGG_CFLAGS"
- LIBS="$LIBS $OGG_LIBS"
- AC_TRY_LINK([
-#include
-#include
-], [ return 0; ],
- [ echo "*** The test program compiled, but did not run. This usually means"
- echo "*** that the run-time linker is not finding Ogg or finding the wrong"
- echo "*** version of Ogg. If it is not finding Ogg, you'll need to set your"
- echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
- echo "*** to the installed location Also, make sure you have run ldconfig if that"
- echo "*** is required on your system"
- echo "***"
- echo "*** If you have an old version installed, it is best to remove it, although"
- echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
- [ echo "*** The test program failed to compile or link. See the file config.log for the"
- echo "*** exact error that occured. This usually means Ogg was incorrectly installed"
- echo "*** or that you have moved Ogg since it was installed. In the latter case, you"
- echo "*** may want to edit the ogg-config script: $OGG_CONFIG" ])
- CFLAGS="$ac_save_CFLAGS"
- LIBS="$ac_save_LIBS"
- fi
- OGG_CFLAGS=""
- OGG_LIBS=""
- ifelse([$2], , :, [$2])
- fi
- AC_SUBST(OGG_CFLAGS)
- AC_SUBST(OGG_LIBS)
- rm -f conf.oggtest
-])
diff --git a/autogen.sh b/autogen.sh
deleted file mode 100755
index 5d6b972f4edade34807cf43a451411e35efb7143..0000000000000000000000000000000000000000
--- a/autogen.sh
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/bin/sh
-# Run this to set up the build system: configure, makefiles, etc.
-# (based on the version in enlightenment's cvs)
-
-package="vorbis"
-
-srcdir=`dirname $0`
-test -z "$srcdir" && srcdir=.
-
-cd "$srcdir"
-DIE=0
-
-(autoconf --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "You must have autoconf installed to compile $package."
- echo "Download the appropriate package for your distribution,"
- echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
- DIE=1
-}
-
-(automake --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "You must have automake installed to compile $package."
- echo "Download the appropriate package for your system,
- echo "or get the source from one of the GNU ftp sites"
- echo "listed in http://www.gnu.org/order/ftp.html"
- DIE=1
-}
-
-(libtool --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "You must have libtool installed to compile $package."
- echo "Download the appropriate package for your system,
- echo "or get the source from one of the GNU ftp sites"
- echo "listed in http://www.gnu.org/order/ftp.html"
- DIE=1
-}
-
-if test "$DIE" -eq 1; then
- exit 1
-fi
-
-if test -z "$*"; then
- echo "I am going to run ./configure with no arguments - if you wish "
- echo "to pass any to it, please specify them on the $0 command line."
-fi
-
-echo "Generating configuration files for $package, please wait...."
-
-echo " aclocal $ACLOCAL_FLAGS"
-aclocal $ACLOCAL_FLAGS
-#echo " autoheader"
-#autoheader
-echo " libtoolize --automake"
-libtoolize --automake
-echo " automake --add-missing"
-automake --add-missing
-echo " autoconf"
-autoconf
-
-$srcdir/configure "$@" && echo
diff --git a/debian/.cvsignore b/debian/.cvsignore
deleted file mode 100644
index 282522db0342d8750454b3dc162493b5fc709cc8..0000000000000000000000000000000000000000
--- a/debian/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/debian/Makefile.am b/debian/Makefile.am
deleted file mode 100644
index 5a0f3998325052e4adb5f79320e90094ae9eb503..0000000000000000000000000000000000000000
--- a/debian/Makefile.am
+++ /dev/null
@@ -1,10 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-EXTRA_DIST = README.Debian changelog control copyright libvorbis-dev.dirs\
- libvorbis-dev.docs libvorbis-dev.examples libvorbis-dev.files\
- libvorbis-dev.postinst libvorbis-dev.postrm libvorbis-dev.preinst\
- libvorbis-dev.prerm libvorbis0.dirs libvorbis0.docs libvorbis0.files\
- libvorbis0.postinst libvorbis0.postrm libvorbis0.preinst\
- libvorbis0.prerm rules
diff --git a/debian/README.Debian b/debian/README.Debian
deleted file mode 100644
index d049ad981205f64e8c527ff70fbe51a1c47390f3..0000000000000000000000000000000000000000
--- a/debian/README.Debian
+++ /dev/null
@@ -1,6 +0,0 @@
-libvorbis for Debian
---------------------
-
-Nothing important to mention at this time.
-
- -- Christopher L Cheney , Tue, 31 Oct 2000 15:08:22 -0600
diff --git a/debian/changelog b/debian/changelog
deleted file mode 100644
index 2ad2bb87485c738edd560af5267024b10d30cb2a..0000000000000000000000000000000000000000
--- a/debian/changelog
+++ /dev/null
@@ -1,66 +0,0 @@
-libvorbis (1.0rc1-1) unstable; urgency=low
-
- * New upstream. (Closes: #84977, #95330)
- * Upstream says lame at fault. See bug details. (Closes: #98010)
- * Fixed versioned depends.
- * Changed clean method to distclean.
-
- -- Christopher L Cheney Sun, 17 Jun 2001 20:00:00 -0500
-
-libvorbis (1.0beta4-1) unstable; urgency=low
-
- * New upstream.
- * Appears to be fixed, can't reproduce bug (closes: #78848)
-
- -- Christopher L Cheney Mon, 26 Feb 2001 08:00:00 -0600
-
-libvorbis (1.0beta3-3) unstable; urgency=low
-
- * Fixed Build-Depends libogg-dev version dependency.
- * Fixed Sections.
- * Updated to Standards-Version to 3.5.1.0
-
- -- Christopher L Cheney Sat, 17 Feb 2001 18:14:53 -0600
-
-libvorbis (1.0beta3-2) unstable; urgency=low
-
- * Added dependency for libogg-dev (closes: #78262)
- * Added dependency for libogg-dev (closes: #81432)
- * Corrected development library package name (closes: #82464)
-
- -- Christopher L Cheney Sat, 3 Feb 2001 13:29:30 -0600
-
-libvorbis (1.0beta3-1) unstable; urgency=low
-
- * New Maintainer.
- * Upstream source was reorganized.
- * Package split according to the upstream reorganization.
-
- -- Christopher L Cheney Tue, 31 Oct 2000 15:08:22 -0600
-
-vorbis (1.0beta2-1) unstable; urgency=low
-
- * New upstream version. Closes: #67326, #68416
- * Changed xmms-vorbis to Architechture: any. Closes: #67395
- * Added Build-deps. Closes: #66628
- * Moved vorbize to vorbis-tools along with oggenc and vorbiscomment
-
- -- Michael Beattie Wed, 9 Aug 2000 00:30:15 +1200
-
-vorbis (1.0beta1-1) unstable; urgency=low
-
- * First Beta, Ready for debian release.
-
- -- Michael Beattie Fri, 30 Jun 2000 19:26:59 +1200
-
-vorbis (0.0-1) unstable; urgency=low
-
- * Initial Release.
- * Initial package, not placed in archive.
-
- -- Michael Beattie Mon, 26 Jun 2000 18:59:56 +1200
-
-Local variables:
-mode: debian-changelog
-add-log-mailing-address "ccheney@debian.org"
-End:
diff --git a/debian/control b/debian/control
deleted file mode 100644
index 9b49f7ab4832d6056e0a37a575850a9f160dea3d..0000000000000000000000000000000000000000
--- a/debian/control
+++ /dev/null
@@ -1,30 +0,0 @@
-Source: libvorbis
-Section: libs
-Priority: optional
-Maintainer: Christopher L Cheney
-Build-Depends: debhelper (>> 3.0.0), libogg-dev (>> 1.0rc1)
-Standards-Version: 3.5.5.0
-
-Package: libvorbis-dev
-Architecture: any
-Section: devel
-Depends: libvorbis0 (= ${Source-Version}), libogg-dev, libc6-dev
-Description: Development library for OGG Vorbis
- Ogg Vorbis is a fully Open, non-proprietary, patent-and-royalty-free,
- general-purpose compressed audio format for high quality (44.1-48.0kHz,
- 16+ bit, polyphonic) audio and music at fixed and variable bitrates
- from 16 to 128 kbps/channel. This places Vorbis in the same class as
- audio representations including MPEG-1 audio layer 3, MPEG-4
- audio (AAC and TwinVQ), and PAC.
-
-Package: libvorbis0
-Architecture: any
-Section: libs
-Depends: ${shlibs:Depends}
-Description: The OGG Vorbis lossy audio compression codec.
- Ogg Vorbis is a fully Open, non-proprietary, patent-and-royalty-free,
- general-purpose compressed audio format for high quality (44.1-48.0kHz,
- 16+ bit, polyphonic) audio and music at fixed and variable bitrates
- from 16 to 128 kbps/channel. This places Vorbis in the same class as
- audio representations including MPEG-1 audio layer 3, MPEG-4
- audio (AAC and TwinVQ), and PAC.
diff --git a/debian/copyright b/debian/copyright
deleted file mode 100644
index cadd6a9b818e7e6eb50353841738dbc7b39f9615..0000000000000000000000000000000000000000
--- a/debian/copyright
+++ /dev/null
@@ -1,38 +0,0 @@
-This package was debianized by Christopher L Cheney on
-Tue, 31 Oct 2000 15:08:22 -0600.
-
-It was downloaded from http://www.xiph.org/ogg/vorbis/download/
-
-Upstream Author(s): Monty
-
-Copyright:
-
-Copyright (c) 2001, Xiphophorus
-
-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 Xiphophorus 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 THE REGENTS OR
-CONTRIBUTORS 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/debian/libvorbis-dev.dirs b/debian/libvorbis-dev.dirs
deleted file mode 100644
index 44188162ec7a56a977fa0c1b431a015576f8b3b6..0000000000000000000000000000000000000000
--- a/debian/libvorbis-dev.dirs
+++ /dev/null
@@ -1,2 +0,0 @@
-usr/lib
-usr/include
diff --git a/debian/libvorbis-dev.docs b/debian/libvorbis-dev.docs
deleted file mode 100644
index e845566c06f9bf557d35e8292c37cf05d97a9769..0000000000000000000000000000000000000000
--- a/debian/libvorbis-dev.docs
+++ /dev/null
@@ -1 +0,0 @@
-README
diff --git a/debian/libvorbis-dev.examples b/debian/libvorbis-dev.examples
deleted file mode 100644
index 2ebd4e754379db3159c049700389a2c72294f643..0000000000000000000000000000000000000000
--- a/debian/libvorbis-dev.examples
+++ /dev/null
@@ -1,5 +0,0 @@
-examples/chaining_example.c
-examples/decoder_example.c
-examples/encoder_example.c
-examples/seeking_example.c
-examples/vorbisfile_example.c
diff --git a/debian/libvorbis-dev.files b/debian/libvorbis-dev.files
deleted file mode 100644
index dbbf15c82be7edaed7cf0f5ec52c9475ffcee274..0000000000000000000000000000000000000000
--- a/debian/libvorbis-dev.files
+++ /dev/null
@@ -1,6 +0,0 @@
-usr/include/vorbis/*.h
-usr/include/vorbis/book/*.vqh
-usr/lib/*.a
-usr/lib/*.la
-usr/lib/*.so
-usr/share/aclocal/vorbis.m4
diff --git a/debian/libvorbis-dev.postinst b/debian/libvorbis-dev.postinst
deleted file mode 100644
index 917a439da2560778e1f12b3a630433eea5fdac48..0000000000000000000000000000000000000000
--- a/debian/libvorbis-dev.postinst
+++ /dev/null
@@ -1,47 +0,0 @@
-#! /bin/sh
-# postinst script for vorbis
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * `configure'
-# * `abort-upgrade'
-# * `abort-remove' `in-favour'
-#
-# * `abort-deconfigure' `in-favour'
-# `removing'
-#
-# for details, see /usr/share/doc/packaging-manual/
-#
-# quoting from the policy:
-# Any necessary prompting should almost always be confined to the
-# post-installation script, and should be protected with a conditional
-# so that unnecessary prompting doesn't happen if a package's
-# installation fails and the `postinst' is called with `abort-upgrade',
-# `abort-remove' or `abort-deconfigure'.
-
-case "$1" in
- configure)
-
- ;;
-
- abort-upgrade|abort-remove|abort-deconfigure)
-
- ;;
-
- *)
- echo "postinst called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/libvorbis-dev.postrm b/debian/libvorbis-dev.postrm
deleted file mode 100644
index 39ffcaf0cb9025c99806fbbd14cf827e884128ea..0000000000000000000000000000000000000000
--- a/debian/libvorbis-dev.postrm
+++ /dev/null
@@ -1,36 +0,0 @@
-#! /bin/sh
-# postrm script for vorbis
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * `remove'
-# * `purge'
-# * `upgrade'
-# * `failed-upgrade'
-# * `abort-install'
-# * `abort-install'
-# * `abort-upgrade'
-# * `disappear' overwrit>r>
-# for details, see /usr/share/doc/packaging-manual/
-
-case "$1" in
- purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
-
-
- ;;
-
- *)
- echo "postrm called with unknown argument \`$1'" >&2
- exit 0
-
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-
diff --git a/debian/libvorbis-dev.preinst b/debian/libvorbis-dev.preinst
deleted file mode 100644
index 0f118a0ea5e20aab3d40df6bc35bc8205c1945ef..0000000000000000000000000000000000000000
--- a/debian/libvorbis-dev.preinst
+++ /dev/null
@@ -1,42 +0,0 @@
-#! /bin/sh
-# preinst script for vorbis
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * `install'
-# * `install'
-# * `upgrade'
-# * `abort-upgrade'
-#
-# For details see /usr/share/doc/packaging-manual/
-
-case "$1" in
- install|upgrade)
-# if [ "$1" = "upgrade" ]
-# then
-# start-stop-daemon --stop --quiet --oknodo \
-# --pidfile /var/run/vorbis.pid \
-# --exec /usr/sbin/vorbis 2>/dev/null || true
-# fi
- ;;
-
- abort-upgrade)
- ;;
-
- *)
- echo "preinst called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/libvorbis-dev.prerm b/debian/libvorbis-dev.prerm
deleted file mode 100644
index 5983c0b5a56316d207242f982a7c46e213908954..0000000000000000000000000000000000000000
--- a/debian/libvorbis-dev.prerm
+++ /dev/null
@@ -1,37 +0,0 @@
-#! /bin/sh
-# prerm script for vorbis
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * `remove'
-# * `upgrade'
-# * `failed-upgrade'
-# * `remove' `in-favour'
-# * `deconfigure' `in-favour'
-# `removing'
-#
-# for details, see /usr/share/doc/packaging-manual/
-
-case "$1" in
- remove|upgrade|deconfigure)
-# install-info --quiet --remove /usr/info/vorbis.info.gz
- ;;
- failed-upgrade)
- ;;
- *)
- echo "prerm called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/libvorbis0.dirs b/debian/libvorbis0.dirs
deleted file mode 100644
index 68457717bd8efb8ba6291fca9d862dd5eb0d3b1e..0000000000000000000000000000000000000000
--- a/debian/libvorbis0.dirs
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib
diff --git a/debian/libvorbis0.docs b/debian/libvorbis0.docs
deleted file mode 100644
index e845566c06f9bf557d35e8292c37cf05d97a9769..0000000000000000000000000000000000000000
--- a/debian/libvorbis0.docs
+++ /dev/null
@@ -1 +0,0 @@
-README
diff --git a/debian/libvorbis0.files b/debian/libvorbis0.files
deleted file mode 100644
index 093956b17518f1129cbb4956eee3e4d422a5a5a9..0000000000000000000000000000000000000000
--- a/debian/libvorbis0.files
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/*.so.*
diff --git a/debian/libvorbis0.postinst b/debian/libvorbis0.postinst
deleted file mode 100644
index f4ac57611b8660e56627913a39f3e66527110e74..0000000000000000000000000000000000000000
--- a/debian/libvorbis0.postinst
+++ /dev/null
@@ -1,47 +0,0 @@
-#! /bin/sh
-# postinst script for vorbis
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * `configure'
-# * `abort-upgrade'
-# * `abort-remove' `in-favour'
-#
-# * `abort-deconfigure' `in-favour'
-# `removing'
-#
-# for details, see /usr/share/doc/packaging-manual/
-#
-# quoting from the policy:
-# Any necessary prompting should almost always be confined to the
-# post-installation script, and should be protected with a conditional
-# so that unnecessary prompting doesn't happen if a package's
-# installation fails and the `postinst' is called with `abort-upgrade',
-# `abort-remove' or `abort-deconfigure'.
-
-case "$1" in
- configure)
- ldconfig
- ;;
-
- abort-upgrade|abort-remove|abort-deconfigure)
-
- ;;
-
- *)
- echo "postinst called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/libvorbis0.postrm b/debian/libvorbis0.postrm
deleted file mode 100644
index 39ffcaf0cb9025c99806fbbd14cf827e884128ea..0000000000000000000000000000000000000000
--- a/debian/libvorbis0.postrm
+++ /dev/null
@@ -1,36 +0,0 @@
-#! /bin/sh
-# postrm script for vorbis
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * `remove'
-# * `purge'
-# * `upgrade'
-# * `failed-upgrade'
-# * `abort-install'
-# * `abort-install'
-# * `abort-upgrade'
-# * `disappear' overwrit>r>
-# for details, see /usr/share/doc/packaging-manual/
-
-case "$1" in
- purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
-
-
- ;;
-
- *)
- echo "postrm called with unknown argument \`$1'" >&2
- exit 0
-
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-
diff --git a/debian/libvorbis0.preinst b/debian/libvorbis0.preinst
deleted file mode 100644
index 0f118a0ea5e20aab3d40df6bc35bc8205c1945ef..0000000000000000000000000000000000000000
--- a/debian/libvorbis0.preinst
+++ /dev/null
@@ -1,42 +0,0 @@
-#! /bin/sh
-# preinst script for vorbis
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * `install'
-# * `install'
-# * `upgrade'
-# * `abort-upgrade'
-#
-# For details see /usr/share/doc/packaging-manual/
-
-case "$1" in
- install|upgrade)
-# if [ "$1" = "upgrade" ]
-# then
-# start-stop-daemon --stop --quiet --oknodo \
-# --pidfile /var/run/vorbis.pid \
-# --exec /usr/sbin/vorbis 2>/dev/null || true
-# fi
- ;;
-
- abort-upgrade)
- ;;
-
- *)
- echo "preinst called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/libvorbis0.prerm b/debian/libvorbis0.prerm
deleted file mode 100644
index 5983c0b5a56316d207242f982a7c46e213908954..0000000000000000000000000000000000000000
--- a/debian/libvorbis0.prerm
+++ /dev/null
@@ -1,37 +0,0 @@
-#! /bin/sh
-# prerm script for vorbis
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * `remove'
-# * `upgrade'
-# * `failed-upgrade'
-# * `remove' `in-favour'
-# * `deconfigure' `in-favour'
-# `removing'
-#
-# for details, see /usr/share/doc/packaging-manual/
-
-case "$1" in
- remove|upgrade|deconfigure)
-# install-info --quiet --remove /usr/info/vorbis.info.gz
- ;;
- failed-upgrade)
- ;;
- *)
- echo "prerm called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/rules b/debian/rules
deleted file mode 100755
index 536470339337988a8ecd48d539410794ac8b51ae..0000000000000000000000000000000000000000
--- a/debian/rules
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/bin/make -f
-# Sample debian/rules that uses debhelper.
-# GNU copyright 1997 to 1999 by Joey Hess.
-
-# Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
-
-# This is the debhelper compatability version to use.
-export DH_COMPAT=3
-
-configure: configure-stamp
-configure-stamp:
- dh_testdir
- # Add here commands to configure the package.
-
- # If compiling cvs version change to ./autogen.sh --prefix=/usr
- ./configure --prefix=/usr
-
- touch configure-stamp
-
-build: configure-stamp build-stamp
-build-stamp:
- dh_testdir
-
- # Add here commands to compile the package.
- $(MAKE)
-
- touch build-stamp
-
-clean:
- dh_testdir
- dh_testroot
- rm -f build-stamp configure-stamp
-
- # Add here commands to clean up after the build process.
- -$(MAKE) distclean
-
- dh_clean
-
-install: build
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs
-
- # Add here commands to install the package into debian/tmp.
- $(MAKE) install DESTDIR=`pwd`/debian/tmp
-
-
-# Build architecture-independent files here.
-binary-indep: build install
-# We have nothing to do by default.
-
-# Build architecture-dependent files here.
-binary-arch: build install
- dh_testdir
- dh_testroot
-
- dh_movefiles
-
- dh_installdocs debian/tmp/usr/share/doc/libvorbis-1.0rc1/*
- dh_installexamples
- dh_installmanpages
- dh_installchangelogs
- dh_link
- dh_strip
- dh_compress
- dh_fixperms
- dh_makeshlibs -V
- dh_installdeb
- dh_shlibdeps
- dh_gencontrol
- dh_md5sums
- dh_builddeb
-
-binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install configure
diff --git a/doc/.cvsignore b/doc/.cvsignore
deleted file mode 100644
index 282522db0342d8750454b3dc162493b5fc709cc8..0000000000000000000000000000000000000000
--- a/doc/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/doc/Makefile.am b/doc/Makefile.am
deleted file mode 100644
index 251e997324b0c4b1ea5fabf5798d6cb5fa47a7da..0000000000000000000000000000000000000000
--- a/doc/Makefile.am
+++ /dev/null
@@ -1,13 +0,0 @@
-## Process this with automake to create Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-SUBDIRS = vorbisfile vorbisenc
-
-docdir = $(datadir)/doc/$(PACKAGE)-$(VERSION)
-
-doc_DATA = v-comment.html vorbisword2.png white-ogg.png programming.html\
- vorbis.html wait.png white-xifish.png vorbis-clip.txt\
- vorbis-errors.txt
-
-EXTRA_DIST = $(doc_DATA)
diff --git a/doc/eightphase.png b/doc/eightphase.png
deleted file mode 100644
index c5c4bc256134ec46a93709863c3d48a902e96066..0000000000000000000000000000000000000000
Binary files a/doc/eightphase.png and /dev/null differ
diff --git a/doc/fourphase.png b/doc/fourphase.png
deleted file mode 100644
index a7c12ce51125eb01c04eae66d695a166c036bc38..0000000000000000000000000000000000000000
Binary files a/doc/fourphase.png and /dev/null differ
diff --git a/doc/programming.html b/doc/programming.html
deleted file mode 100644
index 7f6e62fe7e59804ee02dd772d54871adb6e75b99..0000000000000000000000000000000000000000
--- a/doc/programming.html
+++ /dev/null
@@ -1,507 +0,0 @@
-xiph.org: Ogg Vorbis documentation
-
-
-
-
-
-Programming with Xiphophorus libvorbis
-
-
-Last update to this document: July 22, 1999
-
-Description
-
-Libvorbis is Xiphophorus's portable Ogg Vorbis CODEC implemented as a
-programmatic library. Libvorbis provides primitives to handle framing
-and manipulation of Ogg bitstreams (used by the Vorbis for
-streaming), a full analysis (encoding) interface as well as packet
-decoding and synthesis for playback.
-
-The libvorbis library does not provide any system interface; a
-full-featured demonstration player included with the library
-distribtion provides example code for a variety of system interfaces
-as well as a working example of using libvorbis in production code.
-
-
Encoding Overview
-
-
-
-Decoding Overview
-
-Decoding a bitstream with libvorbis follows roughly the following
-steps:
-
-
-Frame the incoming bitstream into pages
- Sort the pages by logical bitstream and buffer then into logical streams
- Decompose the logical streams into raw packets
- Reconstruct segments of the original data from each packet
- Glue the reconstructed segments back into a decoded stream
-
-
-Framing
-
-An Ogg bitstream is logically arranged into pages, but to decode
-the pages, we have to find them first. The raw bitstream is first fed
-into an ogg_sync_state buffer using ogg_sync_buffer()
-and ogg_sync_wrote() . After each block we submit to the sync
-buffer, we should check to see if we can frame and extract a complete
-page or pages using ogg_sync_pageout() . Extra pages are
-buffered; allowing them to build up in the ogg_sync_state
-buffer will eventually exhaust memory.
-
-The Ogg pages returned from ogg_sync_pageout need not be
-decoded further to be used as landmarks in seeking; seeking can be
-either a rough process of simply jumping to approximately intuited
-portions of the bitstream, or it can be a precise bisection process
-that captures pages and inspects data position. When seeking,
-however, sequential multiplexing (chaining) must be accounted for;
-beginning play in a new logical bitstream requires initializing a
-synthesis engine with the headers from that bitstream. Vorbis
-bitstreams do not make use of concurent multiplexing (grouping).
-
-
Sorting
-
-The pages produced by ogg_sync_pageout are then sorted by
-serial number to seperate logical bitstreams. Initialize logical
-bitstream buffers (og_stream_state ) using
-ogg_stream_init() . Pages are submitted to the matching
-logical bitstream buffer using ogg_stream_pagein ; the serial
-number of the page and the stream buffer must match, or the page will
-be rejected. A page submitted out of sequence will simply be noted,
-and in the course of outputting packets, the hole will be flagged
-(ogg_sync_pageout and ogg_stream_packetout will
-return a negative value at positions where they had to recapture the
-stream).
-
-Extracting packets
-
-After submitting page[s] to a logical stream, read available packets
-using ogg_stream_packetout .
-
-Decoding packets
-
-Reassembling data segments
-
-
-Ogg Bitstream Manipulation Structures
-
-Two of the Ogg bitstream data structures are intended to be
-transparent to the developer; the fields should be used directly.
-
-
ogg_packet
-
-
-typedef struct {
- unsigned char *packet;
- long bytes;
- long b_o_s;
- long e_o_s;
-
- size64 frameno;
-
-} ogg_packet;
-
-
-
-packet: a pointer to the byte data of the raw packet
- bytes: the size of the packet' raw data
- b_o_s: beginning of stream; nonzero if this is the first packet of
- the logical bitstream
- e_o_s: end of stream; nonzero if this is the last packet of the
- logical bitstream
- frameno: the absolute position of this packet in the original
- uncompressed data stream.
-
-
-encoding notes The encoder is responsible for setting all of
-the fields of the packet to appropriate values before submission to
-ogg_stream_packetin() ; however, it is noted that the value in
-b_o_s is ignored; the first page produced from a given
-ogg_stream_state structure will be stamped as the initial
-page. e_o_s , however, must be set; this is the means by
-which the stream encoding primitives handle end of stream and cleanup.
-
-decoding notes ogg_stream_packetout() sets the fields
-to appropriate values. Note that frameno will be >= 0 only in the
-case that the given packet actually represents that position (ie, only
-the last packet completed on any page will have a meaningful
-frameno ). Intervening frames will see frameno set
-to -1.
-
-ogg_page
-
-
-typedef struct {
- unsigned char *header;
- long header_len;
- unsigned char *body;
- long body_len;
-} ogg_page;
-
-
-
-header: pointer to the page header data
- header_len: length of the page header in bytes
- body: pointer to the page body
- body_len: length of the page body
-
-
-Note that although the header and body pointers do
-not necessarily point into a single contiguous page vector, the page
-body must immediately follow the header in the bitstream.
-
-
Ogg Bitstream Manipulation Functions
-
-
-int ogg_page_bos(ogg_page *og);
-
-
-Returns the 'beginning of stream' flag for the given Ogg page. The
-beginning of stream flag is set on the initial page of a logical
-bitstream.
-
-Zero indicates the flag is cleared (this is not the initial page of a
-logical bitstream). Nonzero indicates the flag is set (this is the
-initial page of a logical bitstream).
-
-
-int ogg_page_continued(ogg_page *og);
-
-
-Returns the 'packet continued' flag for the given Ogg page. The packet
-continued flag indicates whether or not the body data of this page
-begins with packet continued from a preceeding page.
-Zero (unset) indicates that the body data begins with a new packet.
-Nonzero (set) indicates that the first packet data on the page is a
-continuation from the preceeding page.
-
-
-int ogg_page_eos(ogg_page *og);
-
-
-Returns the 'end of stream' flag for a give Ogg page. The end of page
-flag is set on the last (terminal) page of a logical bitstream.
-
-Zero (unset) indicates that this is not the last page of a logical
-bitstream. Nonzero (set) indicates that this is the last page of a
-logical bitstream and that no addiitonal pages belonging to this
-bitstream may follow.
-
-
-size64 ogg_page_frameno(ogg_page *og);
-
-
-Returns the position of this page as an absolute position within the
-original uncompressed data. The position, as returned, is 'frames
-encoded to date up to and including the last whole packet on this
-page'. Partial packets begun on this page but continued to the
-following page are not included. If no packet ends on this page, the
-frame position value will be equal to the frame position value of the
-preceeding page. If none of the original uncompressed data is yet
-represented in the logical bitstream (for example, the first page of a
-bitstream consists only of a header packet; this packet encodes only
-metadata), the value shall be zero.
-
-The units of the framenumber are determined by media mapping. A
-vorbis audio bitstream, for example, defines one frame to be the
-channel values from a single sampling period (eg, a 16 bit stereo
-bitstream consists of two samples of two bytes for a total of four
-bytes, thus a frame would be four bytes). A video stream defines one
-frame to be a single frame of video.
-
-
-int ogg_page_pageno(ogg_page *og);
-
-
-Returns the sequential page number of the given Ogg page. The first
-page in a logical bitstream is numbered zero; following pages are
-numbered in increasing monotonic order.
-
-
-int ogg_page_serialno(ogg_page *og);
-
-
-Returns the serial number of the given Ogg page. The serial number is
-used as a handle to distinguish various logical bitstreams in a
-physical Ogg bitstresm. Every logical bitstream within a
-physical bitstream must use a unique (within the scope of the physical
-bitstream) serial number, which is stamped on all bitstream pages.
-
-
-int ogg_page_version(ogg_page *og);
-
-
-Returns the revision of the Ogg bitstream structure of the given page.
-Currently, the only permitted number is zero. Later revisions of the
-bitstream spec will increment this version should any changes be
-incompatable.
-
-
-int ogg_stream_clear(ogg_stream_state *os);
-
-
-Clears and deallocates the internal storage of the given Ogg stream.
-After clearing, the stream structure is not initialized for use;
-ogg_stream_init must be called to reinitialize for use.
-Use ogg_stream_reset to reset the stream state
-to a fresh, intiialized state.
-
-ogg_stream_clear does not call free() on the pointer
-os , allowing use of this call on stream structures in static
-or automatic storage. ogg_stream_destroy is a complimentary
-function that frees the pointer as well.
-
-Returns zero on success and non-zero on failure. This function always
-succeeds.
-
-
-int ogg_stream_destroy(ogg_stream_state *os);
-
-
-Clears and deallocates the internal storage of the given Ogg stream,
-then frees the storage associated with the pointer os .
-
-ogg_stream_clear does not call free() on the pointer
-os , allowing use of that call on stream structures in static
-or automatic storage.
-
-Returns zero on success and non-zero on failure. This function always
-succeeds.
-
-
-int ogg_stream_init(ogg_stream_state *os,int serialno);
-
-
-Initialize the storage associated with os for use as an Ogg
-stream. This call is used to initialize a stream for both encode and
-decode. The given serial number is the serial number that will be
-stamped on pages of the produced bitstream (during encode), or used as
-a check that pages match (during decode).
-
-Returns zero on success, nonzero on failure.
-
-
-int ogg_stream_packetin(ogg_stream_state *os, ogg_packet *op);
-
-
-Used during encoding to add the given raw packet to the given Ogg
-bitstream. The contents of op are copied;
-ogg_stream_packetin does not retain any pointers into
-op 's storage. The encoding proccess buffers incoming packets
-until enough packets have been assembled to form an entire page;
-ogg_stream_pageout is used to read complete pages.
-
-Returns zero on success, nonzero on failure.
-
-
-int ogg_stream_packetout(ogg_stream_state *os,ogg_packet *op);
-
-
-Used during decoding to read raw packets from the given logical
-bitstream. ogg_stream_packetout will only return complete
-packets for which checksumming indicates no corruption. The size and
-contents of the packet exactly match those given in the encoding
-process.
-
-Returns zero if the next packet is not ready to be read (not buffered
-or incomplete), positive if it returned a complete packet in
-op and negative if there is a gap, extra bytes or corruption
-at this position in the bitstream (essentially that the bitstream had
-to be recaptured). A negative value is not necessarily an error. It
-would be a common occurence when seeking, for example, which requires
-recapture of the bitstream at the position decoding continued.
-
-Iff the return value is positive, ogg_stream_packetout placed
-a packet in op . The data in op points to static
-storage that is valid until the next call to
-ogg_stream_pagein , ogg_stream_clear ,
-ogg_stream_reset , or ogg_stream_destroy . The
-pointers are not invalidated by more calls to
-ogg_stream_packetout .
-
-
-int ogg_stream_pagein(ogg_stream_state *os, ogg_page *og);
-
-
-Used during decoding to buffer the given complete, pre-verified page
-for decoding into raw Ogg packets. The given page must be framed,
-normally produced by ogg_sync_pageout , and from the logical
-bitstream associated with os (the serial numbers must match).
-The contents of the given page are copied; ogg_stream_pagein
-retains no pointers into og storage.
-
-Returns zero on success and non-zero on failure.
-
-
-int ogg_stream_pageout(ogg_stream_state *os, ogg_page *og);
-
-
-Used during encode to read complete pages from the stream buffer. The
-returned page is ready for sending out to the real world.
-
-Returns zero if there is no complete page ready for reading. Returns
-nonzero when it has placed data for a complete page into
-og . Note that the storage returned in og points into internal
-storage; the pointers in og are valid until the next call to
-ogg_stream_pageout , ogg_stream_packetin ,
-ogg_stream_reset , ogg_stream_clear or
-ogg_stream_destroy .
-
-
-int ogg_stream_reset(ogg_stream_state *os);
-
-
-Resets the given stream's state to that of a blank, unused stream;
-this may be used during encode or decode.
-
-Note that if used during encode, it does not alter the stream's serial
-number. In addition, the next page produced during encoding will be
-marked as the 'initial' page of the logical bitstream.
-
-When used during decode, this simply clears the data buffer of any
-pending pages. Beginning and end of stream cues are read from the
-bitstream and are unaffected by reset.
-
-Returns zero on success and non-zero on failure. This function always
-succeeds.
-
-
-char *ogg_sync_buffer(ogg_sync_state *oy, long size);
-
-
-This call is used to buffer a raw bitstream for framing and
-verification. ogg_sync_buffer handles stream capture and
-recapture, checksumming, and division into Ogg pages (as required by
-ogg_stream_pagein ).
-
-ogg_sync_buffer exposes a buffer area into which the decoder
-copies the next (up to) size bytes. We expose the buffer
-(rather than taking a buffer) in order to avoid an extra copy many
-uses; this way, for example, read() can transfer data
-directly into the stream buffer without first needing to place it in
-temporary storage.
-
-Returns a pointer into oy 's internal bitstream sync buffer;
-the remaining space in the sync buffer is at least size
-bytes. The decoder need not write all of size bytes;
-ogg_sync_wrote is used to inform the engine how many bytes
-were actually written. Use of ogg_sync_wrote after writing
-into the exposed buffer is mandantory.
-
-
-int ogg_sync_clear(ogg_sync_state *oy);
-
-
-ogg_sync_clear
-
-Clears and deallocates the internal storage of the given Ogg sync
-buffer. After clearing, the sync structure is not initialized for
-use; ogg_sync_init must be called to reinitialize for use.
-Use ogg_sync_reset to reset the sync state and buffer to a
-fresh, intiialized state.
-
-ogg_sync_clear does not call free() on the pointer
-oy , allowing use of this call on sync structures in static
-or automatic storage. ogg_sync_destroy is a complimentary
-function that frees the pointer as well.
-
-Returns zero on success and non-zero on failure. This function always
-succeeds.
-
-
-int ogg_sync_destroy(ogg_sync_state *oy);
-
-
-Clears and deallocates the internal storage of the given Ogg sync
-buffer, then frees the storage associated with the pointer
-oy .
-
-ogg_sync_clear does not call free() on the pointer
-oy , allowing use of that call on stream structures in static
-or automatic storage.
-
-Returns zero on success and non-zero on failure. This function always
-succeeds.
-
-
-int ogg_sync_init(ogg_sync_state *oy);
-
-
-Initializes the sync buffer oy for use.
-Returns zero on success and non-zero on failure. This function always
-succeeds.
-
-
-int ogg_sync_pageout(ogg_sync_state *oy, ogg_page *og);
-
-
-Reads complete, framed, verified Ogg pages from the sync buffer,
-placing the page data in og .
-
-Returns zero when there's no complete pages buffered for
-retrieval. Returns negative when a loss of sync or recapture occurred
-(this is not necessarily an error; recapture would be required after
-seeking, for example). Returns positive when a page is returned in
-og . Note that the data in og points into the sync
-buffer storage; the pointers are valid until the next call to
-ogg_sync_buffer , ogg_sync_clear ,
-ogg_sync_destroy or ogg_sync_reset .
-
-
-
-int ogg_sync_reset(ogg_sync_state *oy);
-
-
-ogg_sync_reset resets the sync state in oy to a
-clean, empty state. This is useful, for example, when seeking to a
-new location in a bitstream.
-
-Returns zero on success, nonzero on failure.
-
-
-int ogg_sync_wrote(ogg_sync_state *oy, long bytes);
-
-
-Used to inform the sync state as to how many bytes were actually
-written into the exposed sync buffer. It must be equal to or less
-than the size of the buffer requested.
-
-Returns zero on success and non-zero on failure; failure occurs only
-when the number of bytes written were larger than the buffer.
-
-
-
-
-
-
-
-Ogg is a Xiphophorus effort to
-protect essential tenets of Internet multimedia from corporate
-hostage-taking; Open Source is the net's greatest tool to keep
-everyone honest. See About
-Xiphophorus for details.
-
-
-Ogg Vorbis is the first Ogg audio CODEC. Anyone may
-freely use and distribute the Ogg and Vorbis specification,
-whether in a private, public or corporate capacity. However,
-Xiphophorus and the Ogg project (xiph.org) reserve the right to set
-the Ogg/Vorbis specification and certify specification compliance.
-
-Xiphophorus's Vorbis software CODEC implementation is distributed
-under the Lesser/Library GNU Public License. This does not restrict
-third parties from distributing independent implementations of Vorbis
-software under other licenses.
-
-OggSquish, Vorbis, Xiphophorus and their logos are trademarks (tm) of
-Xiphophorus . These pages are
-copyright (C) 1994-2000 Xiphophorus. All rights reserved.
-
-
-
-
-
-
-
-
diff --git a/doc/squarepolar.png b/doc/squarepolar.png
deleted file mode 100644
index 179a53ca83fe224c3ed1c6920f079411f8798ee4..0000000000000000000000000000000000000000
Binary files a/doc/squarepolar.png and /dev/null differ
diff --git a/doc/stereo.html b/doc/stereo.html
deleted file mode 100644
index 78ee74c4deb7145fce26808192fc6a64a69feb38..0000000000000000000000000000000000000000
--- a/doc/stereo.html
+++ /dev/null
@@ -1,494 +0,0 @@
-
xiph.org: Ogg Vorbis documentation
-
-
-
-
-
-Stereo Channel Coupling in the Vorbis CODEC
-
-
-Last update to this document: June 27, 2001
-
-Abstract The Vorbis audio CODEC provides a channel coupling
-mechanisms designed to reduce effective bitrate by both eliminating
-interchannel redundancy and eliminating stereo image information
-labelled inaudible or undesireable according to spatial psychoacoustic
-models. This document describes both the mechanical coupling
-mechanisms available within the Vorbis specification, as well as the
-specific stereo coupling models used by the reference
-libvorbis CODEC provided by xiph.org.
-
-Terminology Terminology as used in this document is based on
-common terminology associated with contemporary CODECs such as MPEG I
-audio layer 3 (mp3). However, some differences in terminology are
-useful in the context of Vorbis as Vorbis functions somewhat
-differently than most current formats. For clarity, a few terms are
-defined beforehand here, and others will be defined where they first
-appear in context.
-
-
Subjective and Objective
-
-Objective fidelity is a measure, based on a computable,
-mechanical metric, of how carefully an output matches an input. For
-example, a stereo amplifier may claim to introduce less that .01%
-total harmonic distortion when amplifying an input signal; this claim
-is easy to verify given proper equiment, and any number of testers are
-likely to arrive at the same, exact results. One need not listen to
-the equipment to make this measurement.
-
-However, given two amplifiers with identical, verifiable objective
-specifications, listeners may strongly prefer the sound quality of one
-over the other. This is actually the case in the decades old debate
-[some would say jihad] among audiophiles involving vacuum tube versus
-solid state amplifiers. There are people who can tell the difference,
-and strongly prefer one over the other despite seemingly identical,
-measurable quality. This preference is subjective and
-difficult to measure but nonetheless real.
-
-Individual elements of subjective differences often can be qualified,
-but overall subjective quality generally is not measurable. Different
-observers are likely to disagree on the exact results of a subjective
-test as each observer's perspective differs. When measuring
-subjective qualities, the best one can hope for is average, empirical
-results that show statistical significance across a group.
-
-Perceptual codecs are most concerned with subjective, not objective,
-quality. This is why evaluating a perceptual codec via distortion
-measures and sonograms alone is useless; these objective measures may
-provide insight into the quality or functioning of a codec, but cannot
-answer the much squishier subjective question, "Does it sound
-good?". The tube amplifier example is perhaps not the best as very few
-people can hear, or care to hear, the minute differences between tubes
-and transistors, whereas the subjective differences in perceptual
-codecs tend to be quite large even when objective differences are
-not.
-
-
Fidelity, Artifacts and Differences Audio artifacts
-and loss of fidelity or more simply put, audio differences
-are not the same thing.
-
-A loss of fidelity implies differences between the perceived input and
-output signal; it does not necessarily imply that the differences in
-output are displeasing or that the output sounds poor (although this
-is often the case). Tube amplifiers are not higher fidelity
-than modern solid state and digital systems. They simply produce a
-form of distortion and coloring that is either unnoticable or actually
-pleasing to many ears.
-
-As compared to an original signal using hard metrics, all perceptual
-codecs [ASPEC, ATRAC, MP3, WMA, AAC, TwinVQ, AC3 and Vorbis included]
-lose objective fidelity in order to reduce bitrate. This is fact. The
-idea is to lose fidelity in ways that cannot be perceived. However,
-most current streaming applications demand bitrates lower than what
-can be acheived by sacrificing only objective fidelity; this is also
-fact, despite whatever various company press releases might claim.
-Subjective fidelity eventually must suffer in one way or another.
-
-The goal is to choose the best possible tradeoff such that the
-fidelity loss is graceful and not obviously noticable. Most listeners
-of FM radio do not realize how much lower fidelity that medium is as
-compared to compact discs or DAT. However, when compared directly to
-source material, the difference is obvious. A cassette tape is lower
-fidelity still, and yet the degredation, relatively speaking, is
-graceful and generally easy not to notice. Compare this graceful loss
-of quality to an average 44.1kHz stereo mp3 encoded at 80 or 96kbps.
-The mp3 might actually be higher objective fidelity but subjectively
-sounds much worse.
-
-Thus, when a CODEC must sacrifice subjective quality in order
-to satisfy a user's requirements, the result should be a
-difference that is generally either difficult to notice
-without comparison, or easy to ignore. An artifact , on the
-other hand, is an element introduced into the output that is
-immediately noticable, obviously foreign, and undesired. The famous
-'underwater' or 'twinkling' effect synonymous with low bitrate (or
-poorly encoded) mp3 is an example of an artifact . This
-working definition differs slightly from common usage, but the coined
-distinction between differences and artifacts is useful for our
-discussion.
-
-The goal, when it is absolutely necessary to sacrifice subjective
-fidelity, is obviously to strive for differences and not artifacts.
-The vast majority of CODECs today fail at this task miserably,
-predictably, and regularly in one way or another. Avoiding such
-failures when it is necessary to sacrifice subjective quality is a
-fundamental design objective of Vorbis and that objective is reflected
-in Vorbis's channel coupling design.
-
-
Mechanisms
-
-In encoder release beta 4 and earlier, Vorbis supported multiple
-channel encoding, but the channels were encoded entirely seperately
-with no cross-analysis or redundancy elimination between channels.
-This multichannel strategy is very similar to the mp3's dual
-stereo mode and Vorbis uses the same name for it's analagous
-uncoupled multichannel modes.
-
-However, the Vorbis spec provides for, and Vorbis release 1.0 rc1 and
-later implement a coupled channel strategy. Vorbis has two specific
-mechanisms that may be used alone or in conjunction to implement
-channel coupling. The first is channel interleaving via
-residue backend #2, and the second is square polar mapping .
-These two general mechanisms are particularly well suited to coupling
-due to the structure of Vorbis encoding, as we'll explore below, and
-using both we can implement both totally lossless stereo image
-coupling , as well as various lossy models that seek to eliminate
-inaudible or unimportant aspects of the stereo image in order to
-enhance bitrate. The exact coupling implementation is generalized to
-allow the encoder a great deal of flexibility in implementation of a
-stereo model without requiring any significant complexity increase
-over the combinatorically simpler mid/side joint stereo of mp3 and
-other current audio codecs.
-
-Channel interleaving may be applied directly to more than a single
-channel and polar mapping is hierarchical such that polar coupling may be
-extrapolated to an arbitrary number of channels and is not restricted
-to only stereo, quadriphonics, ambisonics or 5.1 surround. However,
-the scope of this document restricts itself to the stereo coupling
-case.
-
-
Square Polar Mapping
-
-maximal correlation
-
-Recall that the basic structure of a a Vorbis I stream first generates
-from input audio a spectral 'floor' function that serves as an
-MDCT-domain whitening filter. This floor is meant to represent the
-rough envelope of the frequency spectrum, using whatever metric the
-encoder cares to define. This floor is subtracted from the log
-frequency spectrum, effectively normalizing the spectrum by frequency.
-Each input channel is associated with a unique floor function.
-
-The basic idea behind any stereo coupling is that the left and right
-channels usually correlate. This correlation is even stronger if one
-first accounts for energy differences in any given frequency band
-across left and right; think for example of individual instruments
-mixed into different portions of the stereo image, or a stereo
-recording with a dominant feature not perfectly in the center. The
-floor functions, each specific to a channel, provide the perfect means
-of normaizing left and right energies across the spectrum to maximize
-correlation before coupling. This feature of the Vorbis format is not
-a convenient accident.
-
-Because we strive to maximally correlate the left and right channels
-and generally succeed in doing so, left and right residue is typically
-nearly identical. We could use channel interleaving (discussed below)
-alone to efficiently remove the redundancy between the left and right
-channels as a side effect of entropy encoding, but a polar
-representation gives benefits when left/right correlation is
-strong.
-
-
point and diffuse imaging
-
-The first advantage of a polar representation is that it effectively
-seperates the spatial audio information into a 'point image'
-(magnitude) at a given frequency and located somewhere in the sound
-field, and a 'diffuse image' (angle) that fills a large amount of
-space silmultaneously. Even if we preserve only the magnitude (point)
-data, a detailed and carefully chosen floor function in each channel
-provides us with a free, fine-grained, frequency relative intensity
-stereo*. Angle information represents diffuse sound fields, such as
-reverberation that fills the entre space silmultaneously.
-
-*Because the Vorbis model supports a number of different possible
-stereo models and these models may be mixed, we do not use the term
-'intensity stereo' talking about Vorbis; instead we use the terms
-'point stereo', 'phase stereo' and subcategories of each.
-
-The majority of a stereo image is representable by polar magnitude
-alone, as strong sounds tend to be produced at near-point sources;
-even non-diffuse, fast, sharp echoes track very accurately using
-magnitude representation almost alone (for those experimenting with
-Vorbis tuning, this strategy works much better with the precise,
-piecewise control of floor 1; the continuous approximation of floor 0
-results in unstable imaging). Reverberation and diffuse sounds tend
-to contain less energy and be psychoacoustically dominated by the
-point sources embedded in them. Thus, we again tend to concentrate
-more represented energy into a predictably smaller number of numbers.
-Seperating representation of point and diffuse imaging also allows us
-to model and manipulate point and diffuse qualities seperately.
-
-
controlling bit leakage and symbol crosstalk Because polar
-representation concentrates represented energy into fewer large
-values, we reduce bit 'leakage' during cascading (multistage VQ
-encoding) as a secondary benefit. A single large, monolithic VQ
-codebook is more efficient than a cascaded book due to entropy
-'crosstalk' among symbols between different stages of a multistage cascade.
-Polar representation is a way of further concentrating entropy into
-predictable locations so that codebook design can take steps to
-improve multistage codebook efficiency. It also allows us to cascade
-various elements of the stereo image independently.
-
-
eliminating trigonometry and rounding
-
-Rounding and computational complexity are potential problems with a
-polar representation. As our encoding process involves quantization,
-mixing a polar representation and quantization makes it potentially
-impossible, depending on implementation, to construct a coupled stereo
-mechanism that results in bit-identical decompressed output compared
-to an uncoupled encoding should the encoder desire it.
-
-Vorbis uses a mapping that preserves the most useful qualities of
-polar representation, relies only on addition/subtraction, and makes
-it trivial before or after quantization to represent an
-angle/magnitude through a one-to-one mapping from possible left/right
-value permutations. We do this by basing our polar representation on
-the unit square rather than the unit-circle.
-
-Given a magnitude and angle, we recover left and right using the
-following function (note that A/B may be left/right or right/left
-depending on the coupling definition used by the encoder):
-
-
- if(magnitude>0)
- if(angle>0){
- A=magnitude;
- B=magnitude-angle;
- }else{
- B=magnitude;
- A=magnitude+angle;
- }
- else
- if(angle>0){
- A=magnitude;
- B=magnitude+angle;
- }else{
- B=magnitude;
- A=magnitude-angle;
- }
- }
-
-
-The function is antisymmetric for positive and negative magnitudes in
-order to eliminate a redundant value when quantizing. For example, if
-we're quantizing to integer values, we can visualize a magnitude of 5
-and an angle of -2 as follows:
-
-
-
-
-This representation loses or replicates no values; if the range of A
-and B are integral -5 through 5, the number of possible Cartesian
-permutations is 121. Represented in square polar notation, the
-possible values are:
-
-
- 0, 0
-
--1,-2 -1,-1 -1, 0 -1, 1
-
- 1,-2 1,-1 1, 0 1, 1
-
--2,-4 -2,-3 -2,-2 -2,-1 -2, 0 -2, 1 -2, 2 -2, 3
-
- 2,-4 2,-3 ... following the pattern ...
-
- ... 5, 1 5, 2 5, 3 5, 4 5, 5 5, 6 5, 7 5, 8 5, 9
-
-
-
-...for a grand total of 121 possible values, the same number as in
-Cartesian representation (note that, for example, 5,-10 is
-the same as -5,10 , so there's no reason to represent
-both. 2,10 cannot happen, and there's no reason to account for it.)
-It's also obvious that this mapping is exactly reversable.
-
-
Channel interleaving
-
-We can remap and A/B vector using polar mapping into a magnitude/angle
-vector, and it's clear that, in general, this concentrates energy in
-the magnitude vector and reduces the amount of information to encode
-in the angle vector. Encoding these vectors independently with
-residue backend #0 or residue backend #1 will result in substantial
-bitrate savings. However, there are still implicit correlations
-between the magnitude and angle vectors. The most obvious is that the
-amplitude of the angle is bounded by its corresponding magnitude
-value.
-
-Entropy coding the results, then, further benefits from the entropy
-model being able to compress magnitude and angle silmultaneously. For
-this reason, Vorbis implements residuebackend #2 which preinterleaves
-a number of input vectors (in the stereo case, two, A and B) into a
-single output vector (with the elements in the order of
-A_0, B_0, A_1, B_1, A_2 ... A_n-1, B_n-1) before entropy encoding. Thus
-each vector to be coded by the vector quantization backend consists of
-matching magnitude and angle values.
-
-The astute reader, at this point, will notice that in the theoretical
-case in which we can use monolithic codebooks of arbitrarily large
-size, we can directly interleave and encode left and right without
-polar mapping; in fact, the polar mapping does not appear to lend any
-benefit whatsoever to the efficiency of the entropy coding. In fact,
-it is perfectly possible and reasonable to build a Vorbis encoder that
-dispenses with polar mapping entirely and merely interleaves the
-channel. Libvorbis based encoders may configure such an encoding and
-it will work as intended.
-
-However, when we leave the ideal/theoretical domain, we notice that
-polar mapping does give additional practical benefits, as discussed in
-the above section on polar mapping and summarised again here:
-
-Polar mapping aids in controlling entropy 'leakage' between stages
-of a cascaded codebook. Polar mapping seperates the stereo image
-into point and diffuse components which may be analyzed and handled
-differently.
-
-
-Stereo Models
-
-Dual Stereo
-
-Dual stereo referrs to stereo encoding where the channels are entirely
-seperate; they are analyzed and encoded as entirely distinct entities.
-This terminology is familiar from mp3.
-
-
Lossless Stereo
-
-Using polar mapping and/or channel interleaving, it's possible to
-couple Vorbis channels losslessly, that is, construct a stereo
-coupling encoding that both saves space but also decodes
-bit-identically to dual stereo. OggEnc 1.0 and later offers this
-mode.
-
-Overall, this stereo mode is overkill; however, it offers a safe
-alternative to users concerned about the slightest possible
-degredation to the stereo image or archival quality audio.
-
-
Phase Stereo
-
-Phase stereo is the least aggressive means of gracefully dropping
-resolution from the stereo image; it affects only diffuse imaging.
-
-It's often quoted that the human ear is nearly entirely deaf to signal
-phase above about 4kHz; this is nearly true and a passable rule of
-thumb, but it can be demonstrated that even an average user can tell
-the difference between high frequency in-phase and out-of-phase noise.
-Obviously then, the statement is not entirely true. However, it's
-also the case that one must resort to nearly such an extreme
-demostration before finding the counterexample.
-
-'Phase stereo' is simply a more aggressive quantization of the polar
-angle vector; above 4kHz it's generally quite safe to quantize noise
-and noisy elements to only a handful of allowed phases. The phases of
-high ampliude pure tones may or may not be preserved more carefully
-(they are relatively rare and L/R tend to be in phase, so there is
-generally little reason not to spend a few more bits on them)
-
-
eight phase stereo
-
-Vorbis implements phase stereo coupling by preserving the entirety of the magnitude vector (essential to fine amlitdude and energy resolution overall) and quantizing the angle vector to one of only four possible values. Given that the magnitude vector may be positive or negative, this results in left and right phase having eight possible permutation, thus 'eight phase stereo':
-
-
-
-Left and right may be in phase (positive or negative), the most common
-case by far, or out of phase by 90 or 180 degrees.
-
-
four phase stereo
-
-Four phase stereo takes the quantization one step further; it allows
-only in-phase and 180 degree out-out-phase signals:
-
-
-
-
Point Stereo
-
-Point stero eliminates the possibility of out-of-phase signal
-entirely. Any diffuse quality to a sound source tends to collapse
-inward to a point somewhere within the stereo image. A practical
-example would be balanced reverberations within a large, live space;
-normally the sound is diffuse and soft, giving a sonic impression of
-volume. In point-stereo, the reverberations would still exist, but
-sound fairly firmly centered within the image (assuming the
-reverberation was centered overall; if the reverberation is stronger
-to the left, then the point of localization in point stereo would be
-to the left). This effect is most noticable at low and mid
-frequencies and using headphones (which grant perfect stereo
-seperation). Point stereo is is a graceful but generally easy to
-detect degrdation to the sound quality and is thus used in frequency
-ranges where it is least noticable.
-
-
Mixed Stereo
-
-Mixed stereo is the silmultaneous use of more than one of the above
-stereo encoding models, generally using more aggressive modes in
-higher frequencies, lower amplitudes or 'nearly' in-phase sound.
-
-It is also the case that near-DC frequencies should be encoded using
-lossless coupling to avoid frame blocking artifacts.
-
-
Vorbis Stereo Modes
-
-Vorbis, for the most part, uses lossless stereo and a number of mixed
-modes constructed out of the above models. As of the current pre-1.0
-testing version of the encoder, oggenc supports the following modes.
-Oggenc's default choice varies by bitrate and each mode is selectable
-by the user:
-
-
-dual stereo
- uncoupled stereo encoding
-
-
lossless stereo
- lossless stereo coupling; produces exactly equivalent output to dual stereo
-
-
eight phase stereo
- a mixed mode combining lossless stereo for frequencies to approximately 4 kHz (and all strong pure tones) and eight phase stereo above
-
-
aggressive eight phase stereo
- a mixed mode combining lossless stereo for frequencies to approximately 2 kHz (and for all strong pure tones) and eight phase stereo above
-
-
eight/four phase stero A mixed mode combining lossless stereo
-for bass, eight phase stereo for noisy content and lossless stereo for
-tones to approximately 4kHz and four phase stereo above 4kHz.
-
-
eight phase/point stero A mixed mode combining lossless stereo
-for bass, eight phase stereo for noisy content and lossless stereo for
-tones to approximately 4kHz and point stereo above 4kHz.
-
-
aggressive eight phase/point stero
- A mixed mode combining lossless stereo
-for bass, eight phase stereo to approximately 2kHz and point stereo above 2kHz.
-
-
point stereo
- A mixed mode combining lossless stereo to approximately 4kHz and point stereo above 4kHz.
-
-
aggressive point stereo
- A mixed mode combining lossless stereo to approximately 1-2kHz and point stereo above.
-
-
-
-
-
-
-
-
-
-Ogg is a Xiphophorus effort to
-protect essential tenets of Internet multimedia from corporate
-hostage-taking; Open Source is the net's greatest tool to keep
-everyone honest. See About
-Xiphophorus for details.
-
-
-Ogg Vorbis is the first Ogg audio CODEC. Anyone may
-freely use and distribute the Ogg and Vorbis specification,
-whether in a private, public or corporate capacity. However,
-Xiphophorus and the Ogg project (xiph.org) reserve the right to set
-the Ogg/Vorbis specification and certify specification compliance.
-
-Xiphophorus's Vorbis software CODEC implementation is distributed
-under a BSD-like License. This does not restrict third parties from
-distributing independent implementations of Vorbis software under
-other licenses.
-
-OggSquish, Vorbis, Xiphophorus and their logos are trademarks (tm) of
-Xiphophorus . These pages are
-copyright (C) 1994-2001 Xiphophorus. All rights reserved.
-
-
-
-
-
-
-
-
diff --git a/doc/v-comment.html b/doc/v-comment.html
deleted file mode 100644
index 99876df2291a972f6cfce94875f30dde2b3fcf91..0000000000000000000000000000000000000000
--- a/doc/v-comment.html
+++ /dev/null
@@ -1,194 +0,0 @@
-
xiph.org: Ogg Vorbis documentation
-
-
-
-
-
-Ogg Vorbis comment field specification
-
-
-Last update to this document: February 9, 2001
-
-The text comment header is the second (of three) header packets that
-begin a Vorbis bitstream. It is meant for short, text comments,
-not arbitrary metadata; arbitrary metadata belongs in a
-metadata stream (usually an XML stream type).
-
-
Comment use rationale
-
-The comment field is meant to be used much like someone jotting a
-quick note on the bottom of a CDR. It should be a little information to
-remember the disc by and explain it to others; a short, to-the-point
-text note that need not only be a couple words, but isn't going to be
-more than a short paragraph. The essentials, in other words, whatever
-they turn out to be, eg:
-
-
-"Honest Bob and the Factory-to-Dealer-Incentives, _I'm Still Around_,
-opening for Moxy Fruvous, 1997"
-
-
-Structure
-
-The comment header logically is a list of eight-bit-clean vectors; the
-number of vectors is bounded to 2^32-1 and the length of each vector
-is limited to 2^32-1 bytes. The vector length is encoded; the vector
-is not null terminated. In addition to the vector list, there is a
-single vector for vendor name (also 8 bit clean, length encoded in 32
-bits). Libvorbis currently sets the vendor string to "Xiphophorus
-libVorbis I 20010119".
-
-The comment vectors are structured similarly to a UNIX environment.
-That is, comment fields consist of a field name and a field value and
-look like:
-
-
-comment[0]="ARTIST=me";
-comment[1]="TITLE=the sound of vorbis";
-
-
-Content vector format
-
-
-A case-insensitive field name that may consist of ASCII 0x20 through
-0x7D, 0x3D ('=') excluded. ASCII 0x41 through 0x5A inclusive (A-Z) is
-to be considered equivalent to ASCII 0x61 through 0x7A inclusive
-(a-z).
-
- The field name is immediately followed by ASCII 0x3D ('='); this
-equals sign is used to terminate the field name.
-
- 0x3D is followed by 8 bit clean UTF-8 field contents to the end of
-the field.
-
-
-Field names
-
-Below is a proposed, minimal list of standard filed names with a
-description of intended use. No single or group of field names is
-mandatory; a comment header may contain one, all or none of the names
-in this list.
-
-TITLE Track name
-
- VERSION The version field may be used to differentiate multiple
-version of the same track title in a single collection. (e.g. remix info)
-
- ALBUM The collection name to which this track belongs
-
- TRACKNUMBER The track number of this piece if part of a specific larger collection or album
-
- ARTIST Track performer
-
- ORGANIZATION Name of the organization producing the track (i.e.
-the 'record label')
-
- DESCRIPTION A short text description of the contents
-
- GENRE A short text indication of music genre
-
- DATE Date the track was recorded
-
- LOCATION Location where track was recorded
-
- COPYRIGHT Copyright information
-
- ISRC ISRC number for the track; see the ISRC intro page for more information on ISRC numbers.
-
-
-
-Implications
-
-
-Encoding
-
-The comment header comprises the entirety of the second bitstream
-header packet. Unlike the first bitstream header packet, it is not
-generally the only packet on the second page and may not be restricted
-to within the second bitstream page. The length of the comment header
-packet is [practically] unbounded. The comment header packet is not
-optional; it must be present in the bitstream even if it is
-effectively empty.
-
-The comment header is encoded as follows (as per Ogg's standard
-bitstream mapping which renders least-significant-bit of the word to be
-coded into the least significant available bit of the current
-bitstream octet first):
-
-
-
-Vendor string length (32 bit unsigned quantity specifying number of octets)
-
-
-Vendor string ([vendor string length] octets coded from beginning of string to end of string, not null terminated)
-
- Number of comment fields (32 bit unsigned quantity specifying number of fields)
-
- Comment field 0 length (if [Number of comment fields]>0; 32 bit unsigned quantity specifying number of octets)
-
-
-Comment field 0 ([Comment field 0 length] octets coded from beginning of string to end of string, not null terminated)
-
- Comment field 1 length (if [Number of comment fields]>1...)...
-
-
-This is actually somewhat easier to describe in code; implementation of the above can be found in vorbis/lib/info.c:_vorbis_pack_comment(),_vorbis_unpack_comment()
-
-
-
-
-
-
-
-Ogg is a Xiphophorus effort to
-protect essential tenets of Internet multimedia from corporate
-hostage-taking; Open Source is the net's greatest tool to keep
-everyone honest. See About
-Xiphophorus for details.
-
-
-Ogg Vorbis is the first Ogg audio CODEC. Anyone may
-freely use and distribute the Ogg and Vorbis specification,
-whether in a private, public or corporate capacity. However,
-Xiphophorus and the Ogg project (xiph.org) reserve the right to set
-the Ogg/Vorbis specification and certify specification compliance.
-
-Xiphophorus's Vorbis software CODEC implementation is distributed
-under the Lesser/Library GNU Public License. This does not restrict
-third parties from distributing independent implementations of Vorbis
-software under other licenses.
-
-OggSquish, Vorbis, Xiphophorus and their logos are trademarks (tm) of
-Xiphophorus . These pages are
-copyright (C) 1994-2001 Xiphophorus. All rights reserved.
-
-
-
diff --git a/doc/vorbis-clip.txt b/doc/vorbis-clip.txt
deleted file mode 100644
index 2e6703445da1c9813168847b72dfd5f0ea11e067..0000000000000000000000000000000000000000
--- a/doc/vorbis-clip.txt
+++ /dev/null
@@ -1,139 +0,0 @@
-Topic:
-
-Sample granularity editing of a Vorbis file; inferred arbitrary sample
-length starting offsets / PCM stream lengths
-
-Overview:
-
-Vorbis, like mp3, is a frame-based* audio compression where audio is
-broken up into discrete short time segments. These segments are
-'atomic' that is, one must recover the entire short time segment from
-the frame packet; there's no way to recover only a part of the PCM time
-segment from part of the coded packet without expanding the entire
-packet and then discarding a portion of the resulting PCM audio.
-
-* In mp3, the data segment representing a given time period is called
- a 'frame'; the roughly equivalent Vorbis construct is a 'packet'.
-
-Thus, when we edit a Vorbis stream, the finest physical editing
-granularity is on these packet boundaries (the mp3 case is
-actually somewhat more complex and mp3 editing is more complicated
-than just snipping on a frame boundary because time data can be spread
-backward or forward over frames. In Vorbis, packets are all
-stand-alone). Thus, at the physical packet level, Vorbis is still
-limited to streams that contain an integral number of packets.
-
-However, Vorbis streams may still exactly represent and be edited to a
-PCM stream of arbitrary length and starting offset without padding the
-beginning or end of the decoded stream or requiring that the desired
-edit points be packet aligned. Vorbis makes use of Ogg stream
-framing, and this framing provides time-stamping data, called a
-'granule position'; our starting offset and finished stream length may
-be inferred from correct usage of the granule position data.
-
-Time stamping mechanism:
-
-Vorbis packets are bundled into into Ogg pages (note that pages do not
-necessarily contain integral numbers of packets, but that isn't
-inportant in this discussion. More about Ogg framing can be found in
-ogg/doc/framing.html). Each page that contains a packet boundary is
-stamped with the absolute sample-granularity offset of the data, that
-is, 'complete samples-to-date' up to the last completed packet of that
-page. (The same mechanism is used for eg, video, where the number
-represents complete 2-D frames, and so on).
-
-(It's possible but rare for a packet to span more than two pages such
-that page[s] in the middle have no packet boundary; these packets have
-a granule position of '-1'.)
-
-This granule position mechaism in Ogg is used by Vorbis to indicate when the
-PCM data intended to be represented in a Vorbis segment begins a
-number of samples into the data represented by the first packet[s]
-and/or ends before the physical PCM data represented in the last
-packet[s].
-
-File length a non-integral number of frames:
-
-A file to be encoded in Vorbis will probably not encode into an
-integral number of packets; such a file is encoded with the last
-packet containing 'extra'* samples. These samples are not padding; they
-will be discarded in decode.
-
-*(For best results, the encoder should use extra samples that preserve
-the character of the last frame. Simply setting them to zero will
-introduce a 'cliff' that's hard to encode, resulting in spread-frame
-noise. Libvorbis extrapolates the last frame past the end of data to
-produce the extra samples. Even simply duplicating the last value is
-better than clamping the signal to zero).
-
-The encoder indicates to the decoder that the file is actually shorter
-than all of the samples ('original' + 'extra') by setting the granule
-position in the last page to a short value, that is, the last
-timestamp is the original length of the file discarding extra samples.
-The decoder will see that the number of samples it has decoded in the
-last page is too many; it is 'original' + 'extra', where the
-granulepos says that through the last packet we only have 'original'
-number of samples. The decoder then ignores the 'extra' samples.
-This behavior is to occur only when the end-of-stream bit is set in
-the page (indicating last page of the logical stream).
-
-Note that it not legal for the granule position of the last page to
-indicate that there are more samples in the file than actually exist,
-however, implementations should handle such an illegal file gracefully
-in the interests of robust programming.
-
-Beginning point not on integral packet boundary:
-
-It is possible that we will the PCM data represented by a Vorbis
-stream to begin at a position later than where the decoded PCM data
-really begins after an integral packet boundary, a situation analagous
-to the above description where the PCM data does not end at an
-integral packet boundary. The easiest example is taking a clip out of
-a larger Vorbis stream, and choosing a beginning point of the clip
-that is not on a packet boundary; we need to ignore a few samples to
-get the desired beginning point.
-
-The process of marking the desired beginning point is similar to
-marking an arbitrary ending point. If the encoder wishes sample zero
-to be some location past the actual beginning of data, it associates a
-'short' granule position value with the completion of the second*
-audio packet. The granule position is associated with the second
-packet simply by making sure the second packet completes its page.
-
-*(We associate the short value with the second packet for two reasons.
- a) The first packet only primes the overlap/add buffer. No data is
- returned before decoding the second packet; this places the decision
- information at the point of decision. b) Placing the short value on
- the first packet would make the value negative (as the first packet
- normally represents position zero); a negative value would break the
- requirement that granule positions increase; the headers have
- position values of zero)
-
-The decoder sees that on the first page that will return
-data from the overlap/add queue, we have more samples than the granule
-position accounts for, and discards the 'surplus' from the beginning
-of the queue.
-
-Note that short granule values (indicating less than the actually
-returned about of data) are not legal in the Vorbis spec outside of
-indicating beginning and ending sample positions. However, decoders
-should, at minimum, tolerate inadvertant short values elsewhere in the
-stream (just as they should tolerate out-of-order/non-increasing
-granulepos values, although this too is illegal).
-
-Beginning point at arbitrary positive timestamp (no 'zero' sample):
-
-It's also possible that the granule position of the first page of an
-audio stream is a 'long value', that is, a value larger than the
-amount of PCM audio decoded. This implies only that we are starting
-playback at some point into the logical stream, a potentially common
-occurence in streaming applications where the decoder may be
-connecting into a live stream. The decoder should not treat the long
-value specially.
-
-A long value elsewhere in the stream would normally occur only when a
-page is lost or out of sequence, as indicated by the page's sequence
-number. A long value under any other situation is not legal, however
-a decoder should tolerate both possibilities.
-
-
diff --git a/doc/vorbis-errors.txt b/doc/vorbis-errors.txt
deleted file mode 100644
index e873d8ab076627624cb9d49faa6fc96249aed5b4..0000000000000000000000000000000000000000
--- a/doc/vorbis-errors.txt
+++ /dev/null
@@ -1,103 +0,0 @@
-Error return codes possible from libvorbis and libvorbisfile:
-
-All 'failure' style returns are <0; this either indicates a generic
-'false' value (eg, ready? T or F) or an error condition. Code can
-safely just test for < 0, or look at the specific return code for more
-detail.
-
-*** Return codes:
-
-OV_FALSE The call returned a 'false' status (eg, ov_bitrate_instant
- can return OV_FALSE if playback is not in progress, and thus
- there is no instantaneous bitrate information to report.
-
-OV_HOLE libvorbis/libvorbisfile is alerting the application that
- there was an interruption in the data (one of: garbage
- between pages, loss of sync followed by recapture, or a
- corrupt page)
-
-OV_EREAD A read from media returned an error.
-
-OV_EFAULT Internal logic fault; indicates a bug or heap/stack
- corruption.
-
-OV_EIMPL The bitstream makes use of a feature not implemented in this
- library version.
-
-OV_EINVAL Invalid argument value.
-
-OV_ENOTVORBIS Bitstream/page/packet is not Vorbis data.
-
-OV_EBADHEADER Invalid Vorbis bitstream header.
-
-OV_EVERSION Vorbis version mismatch.
-
-OV_ENOTAUDIO Packet data submitted to vorbis_synthesis is not audio data.
-
-OV_EBADPACKET Invalid packet submitted to vorbis_synthesis.
-
-OV_EBADLINK Invalid stream section supplied to libvorbis/libvorbisfile,
- or the requested link is corrupt.
-
-OV_ENOSEEK Bitstream is not seekable.
-
-
-****************************************************************
-*** Libvorbis functions that can return failure/error codes:
-
-int vorbis_analysis_headerout()
- OV_EIMPL
-
-int vorbis_analysis_wrote()
- OV_EINVAL
-
-int vorbis_synthesis_headerin()
- OV_ENOTVORBIS, OV_EVERSION, OV_EBADHEADER
-
-int vorbis_synthesis()
- OV_ENOTAUDIO, OV_EBADPACKET
-
-int vorbis_synthesis_read()
- OV_EINVAL
-
-****************************************************************
-*** Libvorbisfile functions that can return failure/error codes:
-
-int ov_open_callbacks()
- OV_EREAD, OV_ENOTVORBIS, OV_EVERSION, OV_EBADHEADER, OV_FAULT
-
-int ov_open()
- OV_EREAD, OV_ENOTVORBIS, OV_EVERSION, OV_EBADHEADER, OV_FAULT
-
-long ov_bitrate()
- OV_EINVAL, OV_FALSE
-
-long ov_bitrate_instant()
- OV_FALSE
-
-ogg_int64_t ov_raw_total()
- OV_EINVAL
-
-ogg_int64_t ov_pcm_total()
- OV_EINVAL
-
-double ov_time_total()
- OV_EINVAL
-
-int ov_raw_seek()
- OV_ENOSEEK, OV_EINVAL, OV_BADLINK
-
-int ov_pcm_seek_page()
- OV_ENOSEEK, OV_EINVAL, OV_EREAD, OV_BADLINK, OV_FAULT
-
-int ov_pcm_seek()
- OV_ENOSEEK, OV_EINVAL, OV_EREAD, OV_BADLINK, OV_FAULT
-
-int ov_time_seek()
- OV_ENOSEEK, OV_EINVAL, OV_EREAD, OV_BADLINK, OV_FAULT
-
-int ov_time_seek_page()
- OV_ENOSEEK, OV_EINVAL, OV_EREAD, OV_BADLINK, OV_FAULT
-
-long ov_read()
- OV_HOLE, OV_EBADLINK
diff --git a/doc/vorbis.html b/doc/vorbis.html
deleted file mode 100644
index 27e3a5b0c1c05abbf894ac42acecbe448d2632b0..0000000000000000000000000000000000000000
--- a/doc/vorbis.html
+++ /dev/null
@@ -1,196 +0,0 @@
-
xiph.org: Ogg Vorbis documentation
-
-
-
-
-
-Ogg Vorbis encoding format documentation
-
-
-Last update to this document: July 15, 1999
-Last update to Vorbis documentation: July 21, 1999
-
-
-
-
-As of writing, not all the below document
-links are live. They will be populated as we complete the
-documents.
-
-
-
-
Documents
-
-
-Description
-Ogg Vorbis is a general purpose compressed audio format
-for high quality (44.1-48.0kHz, 16+ bit, polyphonic) audio and music
-at moderate fixed and variable bitrates (40-80 kb/s/channel). This
-places Vorbis in the same class as audio representations including
-MPEG-1 audio layer 3, MPEG-4 audio (AAC and TwinVQ), and PAC.
-
-Vorbis is the first of a planned family of Ogg multimedia coding
-formats being developed as part of Xiphophorus's Ogg multimedia
-project. See http://www.xiph.org/
-for more information.
-
-
Vorbis technical documents
-
-A Vorbis encoder takes in overlapping (but contiguous) short-time
-segments of audio data. The encoder analyzes the content of the audio
-to determine an optimal compact representation; this phase of encoding
-is known as analysis . For each short-time block of sound,
-the encoder then packs an efficient representation of the signal, as
-determined by analysis, into a raw packet much smaller than the size
-required by the original signal; this phase is coding .
-Lastly, in a streaming environment, the raw packets are then
-structured into a continuous stream of octets; this last phase is
-streaming . Note that the stream of octets is referred to both
-as a 'byte-' and 'bit-'stream; the latter usage is acceptible as the
-stream of octets is a physical representation of a true logical
-bit-by-bit stream.
-
-A Vorbis decoder performs a mirror image process of extracting the
-original sequence of raw packets from an Ogg stream (stream
-decomposition ), reconstructing the signal representation from the
-raw data in the packet (decoding ) and them reconstituting an
-audio signal from the decoded representation (synthesis ).
-
-The Programming with libvorbis
-documents discuss use of the reference Vorbis codec library
-(libvorbis) produced by Xiphophorus.
-
-The data representations and algorithms necessary at each step to
-encode and decode Ogg Vorbis bitstreams are described by the below
-documents in sufficient detail to construct a complete Vorbis codec.
-Note that at the time of writing, Vorbis is still in a 'Request For
-Comments' stage of development; despite being in advanced stages of
-development, input from the multimedia community is welcome.
-
-
Vorbis analysis and synthesis
-
-Analysis begins by seperating an input audio stream into individual,
-overlapping short-time segments of audio data. These segments are
-then transformed into an alternate representation, seeking to
-represent the original signal in a more efficient form that codes into
-a smaller number of bytes. The analysis and transformation stage is
-the most complex element of producing a Vorbis bitstream.
-
-The corresponding synthesis step in the decoder is simpler; there is
-no analysis to perform, merely a mechanical, deterministic
-reconstruction of the original audio data from the transform-domain
-representation.
-
-
-Vorbis packet structure : Describes the basic analysis components necessary to produce Vorbis packets and the structure of the packet itself.
-Temporal envelope shaping and blocksize : Use of temporal envelope shaping and variable blocksize to minimize time-domain energy leakage during wide dynamic range and spectral energy swings. Also discusses time-related principles of psychoacoustics.
-Time domain segmentation and MDCT transform : Division of time domain data into individual overlapped, windowed short-time vectors and transformation using the MDCT
-The resolution floor : Use of frequency doamin psychoacoustics, and the MDCT-domain noise, masking and resolution floors
-MDCT-domain fine structure : Production, quantization and massaging of MDCT-spectrum fine structure
-
-
-Vorbis coding and decoding
-
-Coding and decoding converts the transform-domain representation of
-the original audio produced by analysis to and from a bitwise packed
-raw data packet. Coding and decoding consist of two logically
-orthogonal concepts, back-end coding and bitpacking .
-
-Back-end coding uses a probability model to represent the raw numbers
-of the audio representation in as few physical bits as possible;
-familiar examples of back-end coding include Huffman coding and Vector
-Quantization.
-
-Bitpacking arranges the variable sized words of the back-end
-coding into a vector of octets without wasting space. The octets
-produced by coding a single short-time audio segment is one raw Vorbis
-packet.
-
-
-
-Vorbis streaming and stream decomposition
-
-Vorbis packets contain the raw, bitwise-compressed representation of a
-snippet of audio. These packets contain no structure and cannot be
-strung together directly into a stream; for streamed transmission and
-storage, Vorbis packets are encoded into an Ogg bitstream.
-
-
-
-Ogg bitstream overview : High-level
-description of Ogg logical bitstreams, how logical bitstreams
-(of mixed media types) can be combined into physical bitstreams, and
-restrictions on logical-to-physical mapping. Note that this document is
-not specific only to Ogg Vorbis.
-
-Ogg logical bitstream and framing
-spec : Low level, complete specification of Ogg logical
-bitstream pages. Note that this document is not specific only to Ogg
-Vorbis.
-
-Vorbis bitstream mapping :
-Specifically describes mapping Vorbis data into an
-Ogg physical bitstream.
-
-
-
-
-
-
-
-
-
-
-Ogg is a Xiphophorus effort to
-protect essential tenets of Internet multimedia from corporate
-hostage-taking; Open Source is the net's greatest tool to keep
-everyone honest. See About
-Xiphophorus for details.
-
-
-Ogg Vorbis is the first Ogg audio CODEC. Anyone may
-freely use and distribute the Ogg and Vorbis specification,
-whether in a private, public or corporate capacity. However,
-Xiphophorus and the Ogg project (xiph.org) reserve the right to set
-the Ogg/Vorbis specification and certify specification compliance.
-
-Xiphophorus's Vorbis software CODEC implementation is distributed
-under the Lesser/Library GNU Public License. This does not restrict
-third parties from distributing independent implementations of Vorbis
-software under other licenses.
-
-OggSquish, Vorbis, Xiphophorus and their logos are trademarks (tm) of
-Xiphophorus . These pages are
-copyright (C) 1994-2000 Xiphophorus. All rights reserved.
-
-
-
-
-
-
-
-
diff --git a/doc/vorbisenc/.cvsignore b/doc/vorbisenc/.cvsignore
deleted file mode 100644
index 282522db0342d8750454b3dc162493b5fc709cc8..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/doc/vorbisenc/Makefile.am b/doc/vorbisenc/Makefile.am
deleted file mode 100644
index 3eca0bbb3f280ce86ea90136e67ce115e296f164..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/Makefile.am
+++ /dev/null
@@ -1,10 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-docdir = $(datadir)/doc/$(PACKAGE)-$(VERSION)/vorbisenc
-
-doc_DATA = index.html overview.html reference.html style.css\
- vorbis_encode_ctl.html vorbis_encode_init.html vorbis_info.html
-
-EXTRA_DIST = $(doc_DATA)
diff --git a/doc/vorbisenc/index.html b/doc/vorbisenc/index.html
deleted file mode 100644
index 57903d66c977ddcd07082b1a770dd8048dc9872d..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/index.html
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-libvorbisenc - Documentation
-
-
-
-
-
-
-libvorbisenc documentation
-libvorbisenc version 1.1.2.2 - 20001104
-
-
-
-Libvorbisenc Documentation
-
-
-Libvorbisenc is a convenient API for setting up an encoding environment using libvorbis. Libvorbisenc encapsulates the actions needed to set up the encoder properly.
-
-libvorbisenc api overview
-libvorbisenc api reference
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisenc/overview.html b/doc/vorbisenc/overview.html
deleted file mode 100644
index 1be1ea2691f0867f63a1963000d5c0472f4bcd1e..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/overview.html
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
-
-libvorbisenc - API Overview
-
-
-
-
-
-
-libvorbisenc documentation
-libvorbisenc version 1.1.2.2 - 20001104
-
-
-
-Libvorbisenc API Overview
-
-The current version of libvorbisenc is very simple. It contains an initialization function to set up the encoding engine properly.
-It also contains a control function to be used in the future to tweak encoder settings.
-
-All the libvorbisenc routines are declared in "vorbis/vorbisenc.h".
-
-
-
-
- function
- purpose
-
-
- vorbis_encode_init
- This function takes a vorbis_info struct and encoding parameters and sets up a proper encoding environment..
-
-
- vorbis_encode_ctl
- Function in progress, to be used in future versions of this API.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisenc/reference.html b/doc/vorbisenc/reference.html
deleted file mode 100644
index 0649e22f226c1702bfe8edfc39a22ecdb5aa8226..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/reference.html
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
-Vorbisfile API Reference
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Vorbisfile API Reference
-
-
-Data Structures
-OggVorbis_File
-vorbis_comment
-vorbis_info
-ov_callbacks
-
-Setup/Teardown
-ov_open()
-ov_open_callbacks()
-ov_clear()
-
-Decoding
-ov_read()
-
-Seeking
-ov_raw_seek()
-ov_pcm_seek()
-ov_time_seek()
-
-File Information
-ov_bitrate()
-ov_bitrate_instant()
-ov_streams()
-ov_seekable()
-ov_serialnumber()
-ov_raw_total()
-ov_pcm_total()
-ov_time_total()
-ov_raw_tell()
-ov_pcm_tell()
-ov_time_tell()
-ov_info()
-ov_comment()
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisenc/style.css b/doc/vorbisenc/style.css
deleted file mode 100644
index 332f809ea371a8aa6e49da4768bf23e534c7d67b..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/style.css
+++ /dev/null
@@ -1,7 +0,0 @@
-BODY { font-family: helvetica, sans-serif }
-TD { font-family: helvetica, sans-serif }
-P { font-family: helvetica, sans-serif }
-H1 { font-family: helvetica, sans-serif }
-H2 { font-family: helvetica, sans-serif }
-H4 { font-family: helvetica, sans-serif }
-P.tiny { font-size: 8pt }
diff --git a/doc/vorbisenc/vorbis_encode_ctl.html b/doc/vorbisenc/vorbis_encode_ctl.html
deleted file mode 100644
index 1ad98f4916f96c6ec7e98844e9758cb65d27afee..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/vorbis_encode_ctl.html
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
-libvorbisenc - function - vorbis_encode_ctl
-
-
-
-
-
-
-libvorbisenc documentation
-libvorbisenc version 1.1.2.2 - 20001104
-
-
-
-vorbis_encode_ctl
-
-declared in "vorbis/libvorbisenc.h";
-
-This function is part of the libvorbisenc API, but has not yet been implemented.
-
However, the API call is set and will not change.
-
-
-
-
-
-
-extern int vorbis_encode_ctl(vorbis_info *vi,int number,void *arg);
-
-
-
-
-
-
-Parameters
-
-vi
-File pointer to an initialized vorbis_info struct.
-number
-Not yet implemented.
-arg
-Not yet implemented.
-
-
-Return Values
-
-
- OV_EIMPL is always returned, as this function has not yet been implemented.
-
-
-
-
-
-
-
-copyright © 2000 xiph.org
-Ogg Vorbis team@vorbis.org
-
-libvorbisenc documentation
-libvorbisenc version 1.1.2.2 - 20001106
-
-
-
-
-
-
-
diff --git a/doc/vorbisenc/vorbis_encode_init.html b/doc/vorbisenc/vorbis_encode_init.html
deleted file mode 100644
index 4cd5e5cbbdaf84281f3dd98e910d2d514f18ade3..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/vorbis_encode_init.html
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
-libvorbisenc - function - vorbis_encode_init
-
-
-
-
-
-
-libvorbisenc documentation
-libvorbisenc version 1.1.2.2 - 20001104
-
-
-
-vorbis_encode_init
-
-declared in "vorbis/libvorbisenc.h";
-
-This is the primary function within libvorbisenc. This is used to properly set up an encoding environment using libvorbisenc.
-
Before this function is called, the vorbis_info struct should be initialized by using vorbis_info_init() from the libvorbis API. After encoding, vorbis_info_clear should be called.
-
The max_bitrate, nominal_bitrate, and min_bitrate settings are used to set constraints for the encoded file. This function uses these settings to select the appropriate encoding mode and set it up.
-
-
-
-
-
-
-extern int vorbis_encode_init(vorbis_info *vi,
- long channels,
- long rate,
-
- long max_bitrate,
- long nominal_bitrate,
- long min_bitrate);
-
-
-
-
-
-
-Parameters
-
-vi
-File pointer to an initialized vorbis_info struct.
-channels
-The number of channels to be encoded.
-rate
-The sampling rate of the source audio.
-max_bitrate
-Desired maximum bitrate (limit).
-nominal_bitrate
-Desired average, or central, bitrate.
-min_bitrate
-Desired minimum bitrate.
-
-
-
-Return Values
-
-
-0 for success
-
-less than zero for failure:
-
-OV_EFAULT - Internal logic fault; indicates a bug or heap/stack corruption.
-
-
-
-
-
-
-
-
-copyright © 2000 xiph.org
-Ogg Vorbis team@vorbis.org
-
-libvorbisenc documentation
-libvorbisenc version 1.1.2.2 - 20001106
-
-
-
-
-
-
-
diff --git a/doc/vorbisenc/vorbis_info.html b/doc/vorbisenc/vorbis_info.html
deleted file mode 100644
index 2e824099ecea2dfa97b0826c07f48261fad42f0d..0000000000000000000000000000000000000000
--- a/doc/vorbisenc/vorbis_info.html
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
-
-vorbis - datatype - vorbis_info
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-vorbis_info
-
-declared in "vorbis/codec.h"
-
-
-The vorbis_info structure contains information about a vorbis bitstream. Most of the information in this struct is more complex and in-depth than we need when using basic API calls.
-
-
-
-
-
-
-typedef struct vorbis_info{
- int version;
- int channels;
- long rate;
-
- long bitrate_upper;
- long bitrate_nominal;
- long bitrate_lower;
-
- long blocksizes[2];
-
- int modes;
- int maps;
- int times;
- int floors;
- int residues;
- int books;
- int psys; /* encode only */
-
- vorbis_info_mode *mode_param[64];
- int map_type[64];
- vorbis_info_mapping *map_param[64];
- int time_type[64];
- vorbis_info_time *time_param[64];
- int floor_type[64];
- vorbis_info_floor *floor_param[64];
- int residue_type[64];
- vorbis_info_residue *residue_param[64];
- static_codebook *book_param[256];
- vorbis_info_psy *psy_param[64]; /* encode only */
-
- /* for block long/sort tuning; encode only */
- int envelopesa;
- double preecho_thresh;
- double preecho_clamp;
-
-} vorbis_info;
-
-
-
-
-Relevant Struct Members
-
-version
-Vorbis encoder version used to create this bitstream.
-channels
-Int signifying number of channels in bitstream.
-rate
-Sampling rate of the bitstream.
-bitrate_upper
-Specifies the upper limit in a VBR bitstream. If the value matches the bitrate_nominal and bitrate_lower parameters, the stream is fixed bitrate. May be unset if no limit exists.
-bitrate_nominal
-Specifies the average bitrate for a VBR bitstream. May be unset. If the bitrate_upper and bitrate_lower parameters match, the stream is fixed bitrate.
-bitrate_lower
-Specifies the lower limit in a VBR bitstream. If the value matches the bitrate_nominal and bitrate_upper parameters, the stream is fixed bitrate. May be unset if no limit exists.
-blocksizes[2]
-Contains the sizes of the long and short blocks for this particular bitstream. These are variable and can be set by the encoder. Vorbis only supports two sizes, long and short.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/.cvsignore b/doc/vorbisfile/.cvsignore
deleted file mode 100644
index 282522db0342d8750454b3dc162493b5fc709cc8..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/doc/vorbisfile/Makefile.am b/doc/vorbisfile/Makefile.am
deleted file mode 100644
index 702543a8c790c080d7dcc6322af7d574b35919d7..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/Makefile.am
+++ /dev/null
@@ -1,19 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-docdir = $(datadir)/doc/$(PACKAGE)-$(VERSION)/vorbisfile
-
-doc_DATA = OggVorbis_File.html chaining_example_c.html chainingexample.html\
- datastructures.html decoding.html example.html exampleindex.html\
- fileinfo.html index.html initialization.html ov_bitrate.html\
- ov_bitrate_instant.html ov_callbacks.html ov_clear.html\
- ov_comment.html ov_info.html ov_open.html ov_open_callbacks.html\
- ov_pcm_seek.html ov_pcm_tell.html ov_pcm_total.html ov_raw_seek.html\
- ov_raw_tell.html ov_raw_total.html ov_read.html ov_seekable.html\
- ov_serialnumber.html ov_streams.html ov_time_seek.html\
- ov_time_tell.html ov_time_total.html overview.html reference.html\
- seekexample.html seeking.html seeking_test_c.html seekingexample.html\
- style.css vorbis_comment.html vorbis_info.html vorbisfile_example_c.html
-
-EXTRA_DIST = $(doc_DATA)
diff --git a/doc/vorbisfile/OggVorbis_File.html b/doc/vorbisfile/OggVorbis_File.html
deleted file mode 100644
index 6748deef7242e206c0b8c1094d7703df0378b606..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/OggVorbis_File.html
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
-vorbisfile - datatype - OggVorbis_File
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-OggVorbis_File
-
-declared in "vorbis/vorbisfile.h"
-
-
-The OggVorbis_File structure defines an Ogg Vorbis file.
-
-This structure is used in all vorbisfile routines. Before it can be used, it must be initialized by ov_open or ov_open_callbacks .
-
-After use, the OggVorbis_File structure must be deallocated with a call to ov_clear() .
-
Once a file or data source is passed to libvorbisfile, it is owned by vorbisfile. The file should not be used by any other applications or functions outside the Vorbisfile API.
-
-
-
-
-typedef struct {
- void *datasource; /* Pointer to a FILE *, etc. */
- int seekable;
- int64_t offset;
- int64_t end;
- ogg_sync_state oy;
-
- /* If the FILE handle isn't seekable (eg, a pipe), only the current
- stream appears */
- int links;
- int64_t *offsets;
- int64_t *dataoffsets;
- long *serialnos;
- int64_t *pcmlengths;
- vorbis_info *vi;
- vorbis_comment *vc;
-
- /* Decoding working state local storage */
- int64_t pcm_offset;
- int decode_ready;
- long current_serialno;
- int current_link;
-
- double bittrack;
- double samptrack;
-
- ogg_stream_state os; /* take physical pages, weld into a logical
- stream of packets */
- vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
- vorbis_block vb; /* local working space for packet->PCM decode */
-
- ov_callbacks callbacks;
-
-} OggVorbis_File;
-
-
-
-
-Relevant Struct Members
-
-datasource
-Pointer to file or other ogg source.
-seekable
-Read-only int indicating whether file is seekable, i.e., physical file is seekable, a pipe isn't.
-links
-Read-only int indicating the number of logical bitstreams within the physical bitstream.
-ov_callbacks
-Collection of file manipulation routines to be used on this data source.
-
-
-Notes
-
-If your system's <sys/types.h> does not
-define int64_t, you will need to define this as a 64-bit type
-inside your system's project file/Makefile, etc. On win32, for example,
-this should be defined as __int64 . On the Unix platform, these
-are usually defined properly in the system header files.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/chaining_example_c.html b/doc/vorbisfile/chaining_example_c.html
deleted file mode 100644
index 6131693ab0ac14c40f80d35173c99e42850b2c80..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/chaining_example_c.html
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
-vorbisfile - chaining_example.c
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-chaining_example.c
-
-
-The example program source:
-
-
-
-
-
-
-
-#include
-#include
-
-int main(){
- OggVorbis_File ov;
- int i;
-
- /* open the file/pipe on stdin */
- if(ov_open(stdin,&ov,NULL,-1)<0){
- printf("Could not open input as an OggVorbis file.\n\n");
- exit(1);
- }
-
- /* print details about each logical bitstream in the input */
- if(ov_seekable(&ov)){
- printf("Input bitstream contained %ld logical bitstream section(s).\n",
- ov_streams(&ov));
- printf("Total bitstream playing time: %ld seconds\n\n",
- (long)ov_time_total(&ov,-1));
-
- }else{
- printf("Standard input was not seekable.\n"
- "First logical bitstream information:\n\n");
- }
-
- for(i=0;irate,vi->channels,ov_bitrate(&ov,i)/1000,
- ov_serialnumber(&ov,i));
- printf("\t\tcompressed length: %ld bytes ",(long)(ov_raw_total(&ov,i)));
- printf(" play time: %lds\n",(long)ov_time_total(&ov,i));
- }
-
- ov_clear(&ov);
- return 0;
-}
-
-
-
-
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/chainingexample.html b/doc/vorbisfile/chainingexample.html
deleted file mode 100644
index f7c251b5c09320233f5d4d3a6679f5260f024088..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/chainingexample.html
+++ /dev/null
@@ -1,158 +0,0 @@
-
-
-
-vorbisfile - Example Code
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Chaining Example Code
-
-
-The following is a run-through of the chaining example program supplied
-with vorbisfile - chaining_example.c .
-This program demonstrates how to work with a chained bitstream.
-
-
-First, relevant headers, including vorbis-specific "codec.h" and "vorbisfile.h" have to be included.
-
-
-
-
-
-
-#include "vorbis/codec.h"
-#include "vorbis/vorbisfile.h"
-#include "../lib/misc.h"
-
-
-
-
-
-Inside main(), we declare our primary OggVorbis_File structure. We also declare a other helpful variables to track our progress within the file.
-
-
-
-
-
-int main(){
- OggVorbis_File ov;
- int i;
-
-
-
-
-
-ov_open() must be
-called to initialize the OggVorbis_File structure with default values.
-ov_open() also checks to ensure that we're reading Vorbis format and not something else.
-
-
-
-
-
-
- if(ov_open(stdin,&ov,NULL,-1)<0){
- printf("Could not open input as an OggVorbis file.\n\n");
- exit(1);
- }
-
-
-
-
-
-
-
-First we check to make sure the stream is seekable using ov_seekable .
-
-
Then we're going to find the number of logical bitstreams in the physical bitstream using ov_streams .
-
-
We use ov_time_total to determine the total length of the physical bitstream. We specify that we want the entire bitstream by using the argument -1 .
-
-
-
-
-
-
- if(ov_seekable(&ov)){
- printf("Input bitstream contained %ld logical bitstream section(s).\n",
- ov_streams(&ov));
- printf("Total bitstream playing time: %ld seconds\n\n",
- (long)ov_time_total(&ov,-1));
-
- }else{
- printf("Standard input was not seekable.\n"
- "First logical bitstream information:\n\n");
- }
-
-
-
-
-
-
-Now we're going to iterate through each logical bitstream and print information about that bitstream.
-
-
We use ov_info to pull out the vorbis_info struct for each logical bitstream. This struct contains bitstream-specific info.
-
-
ov_serialnumber retrieves the unique serial number for the logical bistream. ov_raw_total gives the total compressed bytes for the logical bitstream, and ov_time_total gives the total time in the logical bitstream.
-
-
-
-
-
-
- for(i=0;irate,vi->channels,ov_bitrate(&ov,i)/1000,
- ov_serialnumber(&ov,i));
- printf("\t\tcompressed length: %ld bytes ",(long)(ov_raw_total(&ov,i)));
- printf(" play time: %lds\n",(long)ov_time_total(&ov,i));
- }
-
-
-
-
-
-When we're done with the entire physical bitstream, we need to call ov_clear() to release the bitstream.
-
-
-
-
-
-
- ov_clear(&ov);
- return 0;
-}
-
-
-
-
-
-
-The full source for chaining_example.c can be found with the vorbis
-distribution in chaining_example.c .
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/datastructures.html b/doc/vorbisfile/datastructures.html
deleted file mode 100644
index 955b9c7f27fd1b826b49f17f4c8efe974baef71f..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/datastructures.html
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
-
-vorbisfile - Base Data Structures
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Base Data Structures
-There are several data structures used to hold file and bitstream information during vorbisfile decoding.
-
-All the vorbisfile specific data structures are declared in "vorbis/vorbisfile.h" or "vorbis/codec.h".
-
-
When using vorbisfile, we usually won't need to know about most of the contents of these data structures, but it may be helpful to understand what they contain.
-
-
-
-
- datatype
- purpose
-
-
- OggVorbis_File
- This structure represents the basic file information. It contains
- a pointer to the physical file or bitstream and various information about that bitstream.
-
-
-vorbis_comment
- This structure contains the file comments. It contains
- a pointer to unlimited user comments, information about the number of comments, and a vendor description.
-
-
-vorbis_info
- This structure contains encoder-related information about the bitstream. It includes encoder info, channel info, and bitrate limits.
-
-
-ov_callbacks
- This structure contains pointers to file manipulation routines. Can be user-specified for use with ov_open_callbacks() .
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/decoding.html b/doc/vorbisfile/decoding.html
deleted file mode 100644
index bc35fd77f04e96caac4dbd94c6d77de4209dc233..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/decoding.html
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-
-vorbisfile - Decoding
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Decoding
-
-
-All the vorbisfile decoding routines are declared in "vorbis/vorbisfile.h".
-
-
-
-
- function
- purpose
-
-
- ov_read
- This function makes up the main chunk of a decode loop. It takes an
-OggVorbis_File structure, which must have been initialized by a previous
-call to ov_open() .
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/example.html b/doc/vorbisfile/example.html
deleted file mode 100644
index d057484953f12035477135111a9c3f71289d410c..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/example.html
+++ /dev/null
@@ -1,205 +0,0 @@
-
-
-
-vorbisfile - Example Code
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Example Code
-
-
-The following is a run-through of the decoding example program supplied
-with vorbisfile - vorbisfile_example.c .
-This program takes a vorbis bitstream from stdin and writes raw pcm to stdout.
-
-
-First, relevant headers, including vorbis-specific "codec.h" and "vorbisfile.h" have to be included.
-
-
-
-
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-#include "vorbis/codec.h"
-#include "vorbis/vorbisfile.h"
-
-
-
-
-
-We also have to make a concession to Windows users here. If we are using windows for decoding, we must declare these libraries so that we can set stdin/stdout to binary.
-
-
-
-
-
-#ifdef _WIN32
-#include <io.h>
-#include <fcntl.h>
-#endif
-
-
-
-
-
-Next, a buffer for the pcm audio output is declared.
-
-
-
-
-
-
-char pcmout[4096];
-
-
-
-
-
-Inside main(), we declare our primary OggVorbis_File structure. We also declare a few other helpful variables to track out progress within the file.
-Also, we make our final concession to Windows users by setting the stdin and stdout to binary mode.
-
-
-
-
-
-int main(int argc, char **argv){
- OggVorbis_File vf;
- int eof=0;
- int current_section;
-
-#ifdef _WIN32
- _setmode( _fileno( stdin ), _O_BINARY );
- _setmode( _fileno( stdout ), _O_BINARY );
-#endif
-
-
-
-
-
-ov_open() must be
-called to initialize the OggVorbis_File structure with default values.
-ov_open() also checks to ensure that we're reading Vorbis format and not something else.
-
-
-
-
-
-
- if(ov_open(stdin, &vf, NULL, 0) < 0) {
- fprintf(stderr,"Input does not appear to be an Ogg bitstream.\n");
- exit(1);
- }
-
-
-
-
-
-
-
-We're going to pull the channel and bitrate info from the file using ov_info() and show them to the user.
-We also want to pull out and show the user a comment attached to the file using ov_comment() .
-
-
-
-
-
-
- {
- char **ptr=ov_comment(&vf,-1)->user_comments;
- vorbis_info *vi=ov_info(&vf,-1);
- while(*ptr){
- fprintf(stderr,"%s\n",*ptr);
- ++ptr;
- }
- fprintf(stderr,"\nBitstream is %d channel, %ldHz\n",vi->channels,vi->rate);
- fprintf(stderr,"Encoded by: %s\n\n",ov_comment(&vf,-1)->vendor);
- }
-
-
-
-
-
-
-
-Here's the read loop:
-
-
-
-
-
-
-
- while(!eof){
- long ret=ov_read(&vf,pcmout,sizeof(pcmout),0,2,1,¤t_section);
- if (ret == 0) {
- /* EOF */
- eof=1;
- } else if (ret < 0) {
- /* error in the stream. Not a problem, just reporting it in
- case we (the app) cares. In this case, we don't. */
- } else {
- /* we don't bother dealing with sample rate changes, etc, but
- you'll have to*/
- fwrite(pcmout,1,ret,stdout);
- }
- }
-
-
-
-
-
-
-
-
-The code is reading blocks of data using ov_read() .
-Based on the value returned, we know if we're at the end of the file or have invalid data. If we have valid data, we write it to the pcm output.
-
-
-Now that we've finished playing, we can pack up and go home. It's important to call ov_clear() when we're finished.
-
-
-
-
-
-
-
- ov_clear(&vf);
-
- fprintf(stderr,"Done.\n");
- return(0);
-}
-
-
-
-
-
-
-The full source for vorbisfile_example.c can be found with the vorbis
-distribution in vorbisfile_example.c .
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/exampleindex.html b/doc/vorbisfile/exampleindex.html
deleted file mode 100644
index 1575e2738e2b23bfe9486e95e6a67b955e0c230a..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/exampleindex.html
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-vorbisfile - Documentation
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-VorbisFile Example Code
-
-
-Three sample programs are included with the vorbisfile distribution.
-
-vorbisfile decoding
-vorbisfile seeking
-vorbisfile bitstream chaining
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/fileinfo.html b/doc/vorbisfile/fileinfo.html
deleted file mode 100644
index 27f6370e7363ab6a6fbe1eb3cebc05af46416f22..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/fileinfo.html
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-
-vorbisfile - File Information
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-File Information
-Vorbisfile contains many functions to get information about bitstream attributes and decoding status.
-
-All the vorbisfile file information routines are declared in "vorbis/vorbisfile.h".
-
-
-
-
- function
- purpose
-
-
- ov_bitrate
- Returns the average bitrate of the current logical bitstream.
-
-
- ov_bitrate_instant
- Returns the exact bitrate since the last call of this function, or -1 if beginning of the bitream or no new info is available.
-
-
- ov_streams
- Gives the number of logical bitstreams within the current physical bitstream.
-
-
- ov_seekable
- Indicates whether the bitstream is seekable.
-
-
- ov_serialnumber
- Returns the unique serial number of the specified logical bitstream.
-
-
- ov_raw_total
- Returns the total (compressed) bytes in a physical or logical seekable bitstream.
-
-
- ov_pcm_total
- Returns the total number of samples in a physical or logical seekable bitstream.
-
-
- ov_time_total
- Returns the total time length in seconds of a physical or logical seekable bitstream.
-
-
- ov_raw_tell
- Returns the byte location of the next sample to be read, giving the approximate location in the stream that the decoding engine has reached.
-
-
- ov_pcm_tell
- Returns the sample location of the next sample to be read, giving the approximate location in the stream that the decoding engine has reached.
-
-
- ov_time_tell
- Returns the time location of the next sample to be read, giving the approximate location in the stream that the decoding engine has reached.
-
-
- ov_info
- Returns the vorbis_info struct for a specific bitstream section.
-
-
- ov_comment
- Returns attached comments for the current bitstream.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/index.html b/doc/vorbisfile/index.html
deleted file mode 100644
index 102636a477e5fd93e695f38d15e8bdb7c37dbb24..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/index.html
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-vorbisfile - Documentation
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-VorbisFile Documentation
-
-
-VorbisFile is a stdio-based convenience library for decoding vorbis bitstreams.
-It is the simplest and quickest way to go from file to raw PCM audio samples--if
-your decoder doesn't need to read from anything other than a file, use
-this. This document explains how to use the vorbisfile API in detail.
-
-vorbisfile api overview
-vorbisfile example code
-vorbisfile api reference
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/initialization.html b/doc/vorbisfile/initialization.html
deleted file mode 100644
index be09f6512f2a0f5f9cc4a3ecb219bbcf94270f6d..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/initialization.html
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-libvorbisfile - Setup/Teardown
-
-
-
-
-
-
-libvorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Setup/Teardown
-In order to decode audio using libvorbisfile, a bitstream containing vorbis audio must be properly initialized and cleared when decoding is finished.
-
-All the vorbisfile initialization and deallocation routines are declared in "vorbis/vorbisfile.h".
-
-
-
-
- function
- purpose
-
-
- ov_open
- Initializes the Ogg Vorbis bitstream with a pointer to a bitstream and default values. This must be called before other functions in the library may be
- used.
-
-
- ov_open_callbacks
- Initializes the Ogg Vorbis bitstream with a pointer to a bitstream, default values, and custom file/bitstream manipulation routines. Used instead of ov_open when working with a data source other than a file.
-
-
- ov_clear
- Closes the bitstream and cleans up loose ends. Must be called when we're done with the bitstream.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_bitrate.html b/doc/vorbisfile/ov_bitrate.html
deleted file mode 100644
index ad4026156394fe55f20a4cc2b5618c399f214cda..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_bitrate.html
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
-
-vorbisfile - function - ov_bitrate
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_bitrate
-
-declared in "vorbis/vorbisfile.h";
-
-This function returns the average bitrate for the specified logical bitstream. This may be different from the ov_info->nominal_bitrate value, as it is based on the actual average for this bitstream if the file is seekable.
-
Nonseekable files will return the nominal bitrate setting or the average of the upper and lower bounds, if any of these values are set.
-
-
-
-
-
-
-
-long ov_bitrate(OggVorbis_File *vf,int i);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-i
-Link to the desired logical bitstream. For nonseekable files, this argument is ignored. To retrieve the bitrate for the entire bitstream, this parameter should be set to -1.
-
-
-
-Return Values
-
-OV_EINVAL indicates that an invalid argument value was submitted.
-OV_FALSE means the call returned a 'false' status, which in this case most likely indicates that the file is nonseekable and the upper, lower, and nominal bitrates were unset.
- n indicates the bitrate for the given logical bitstream or the entire
- physical bitstream. If the file is open for random (seekable) access, it will
- find the *actual* average bitrate. If the file is streaming (nonseekable), it
- returns the nominal bitrate (if set) or else the average of the
- upper/lower bounds (if set).
-
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_bitrate_instant.html b/doc/vorbisfile/ov_bitrate_instant.html
deleted file mode 100644
index 7f53b70142ceb5a78e8b31f727871fcd868b6927..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_bitrate_instant.html
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-vorbisfile - function - ov_bitrate
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_bitrate_instant
-
-declared in "vorbis/vorbisfile.h";
-
-Used to find the most recent bitrate played back within the file. Will return 0 if the bitrate has not changed or it is the beginning of the file.
-
-
-
-
-
-
-long ov_bitrate_instant(OggVorbis_File *vf);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-
-
-
-Return Values
-
-
-0 indicates the beginning of the file or unchanged bitrate info.
-n indicates the actual bitrate since the last call.
-OV_FALSE indicates that the call returned a 'false' status. In this case, this error code is returned if playback is not in progress, and thus there is no instantaneous bitrate information to report.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_callbacks.html b/doc/vorbisfile/ov_callbacks.html
deleted file mode 100644
index 9d73c68ed4949c28c598023b916e94dac34f007d..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_callbacks.html
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
-vorbisfile - datatype - ov_callbacks
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_callbacks
-
-declared in "vorbis/codec.h"
-
-
-The ov_callbacks structure contains file manipulation function prototypes necessary for opening, closing, seeking, and location.
-
-The ov_callbacks structure does not need to be user-defined if you are working with a standard file. The typical ov_open() call will fill ov_callbacks for you. However, ov_callbacks should be defined if you are using other data sources. In this situation, use ov_open_callbacks() instead of ov_open() .
-
-
-
-
-
-typedef struct {
- size_t (*read_func) (void *ptr, size_t size, size_t nmemb, void *datasource);
- int (*seek_func) (void *datasource, int64_t offset, int whence);
- int (*close_func) (void *datasource);
- long (*tell_func) (void *datasource);
-} ov_callbacks;
-
-
-
-
-Relevant Struct Members
-
-read_func
-Pointer to custom data reading function.
-seek_func
-Pointer to custom data seeking function.
-close_func
-Pointer to custom data source closure function.
-tell_func
-Pointer to custom data location function.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_clear.html b/doc/vorbisfile/ov_clear.html
deleted file mode 100644
index 81eb0ea0dce96a40307b3b839dc9006d16ee75a5..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_clear.html
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
-
-vorbisfile - function - ov_clear
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_clear
-
-declared in "vorbis/vorbisfile.h";
-
- After a bitstream has been opened using ov_open and decoding is complete, you must call ov_clear() to clear
-the decoder's buffers and close the file for you.
-
-
-
-
-
-int ov_clear(OggVorbis_File *vf);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. After ov_clear has been called, the structure is deallocated and can no longer be used.
-
-
-
-Return Values
-
-
-0 for success
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_comment.html b/doc/vorbisfile/ov_comment.html
deleted file mode 100644
index 654fa98116d5f5bb629405a700e30f2c51b0f7dc..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_comment.html
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-vorbisfile - function - ov_bitrate
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_comment
-
-declared in "vorbis/vorbisfile.h";
-
-Returns a pointer to the vorbis_comment struct for the specified bitstream. For nonseekable streams, returns the struct for the current bitstream.
-
-
-
-
-
-
-
-vorbis_comment *ov_comment(OggVorbis_File *vf,int link);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-i
-Link to the desired logical bitstream. For nonseekable files, this argument is ignored. To retrieve the vorbis_comment struct for the current bitstream, this parameter should be set to -1.
-
-
-
-Return Values
-
-Returns the vorbis_comment struct for the specified bitstream.
-NULL if the specified bitstream does not exist or the file has been initialized improperly.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_info.html b/doc/vorbisfile/ov_info.html
deleted file mode 100644
index e410274aebdf5cba10ca477d942e3adc01e7a100..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_info.html
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-vorbisfile - function - ov_info
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_info
-
-declared in "vorbis/vorbisfile.h";
-
-Returns the vorbis_info struct for the specified bitstream. For nonseekable files, always returns the current vorbis_info struct.
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-i
-Link to the desired logical bitstream. For nonseekable files, this argument is ignored. To retrieve the vorbis_info struct for the current bitstream, this parameter should be set to -1.
-
-
-
-Return Values
-
-Returns the vorbis_info struct for the specified bitstream. Returns vorbis_info for current bitstream if the file is nonseekable or i=-1.
-NULL if the specified bitstream does not exist or the file has been initialized improperly.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_open.html b/doc/vorbisfile/ov_open.html
deleted file mode 100644
index 1a55527c2841f45205b462dc6a697144bf2b2bac..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_open.html
+++ /dev/null
@@ -1,112 +0,0 @@
-
-
-
-vorbisfile - function - ov_open
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_open
-
-declared in "vorbis/vorbisfile.h";
-
-This is the main function used to open and initialize an OggVorbis_File
-structure. It sets up all the related decoding structure.
-
The first argument must be a file pointer to an already opened file
-or pipe (it need not be seekable--though this obviously restricts what
-can be done with the bitstream). vf should be a pointer to the
-OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-
Also, you should be aware that ov_open(), once successful, takes complete possession of the file resource. After you have opened a file using ov_open(), you MUST close it using ov_clear() , not fclose() or any other function.
-
-It is often useful to call ov_open()
-simply to determine whether a given file is a vorbis bitstream. If the
-ov_open()
-call fails, then the file is not recognizable as such. When you use ov_open()
- for
-this, you should fclose() the file pointer if, and only if, the
-ov_open()
-call fails. If it succeeds, you must call ov_clear() to clear
-the decoder's buffers and close the file for you.
-
-
-
-
-
-int ov_open(FILE *f,OggVorbis_File *vf,char *initial,long ibytes);
-
-
-
-
-
-Parameters
-
-f
-File pointer to an already opened file
-or pipe (it need not be seekable--though this obviously restricts what
-can be done with the bitstream).
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-initial
-Typically set to NULL. This parameter is useful if some data has already been
-read from the file and the stream is not seekable. It is used in conjunction with ibytes . In this case, initial
-should be a pointer to a buffer containing the data read.
-ibytes
-Typically set to 0. This parameter is useful if some data has already been
-read from the file and the stream is not seekable. In this case, ibytes
-should contain the length (in bytes) of the buffer. Used together with initial
-
-
-
-Return Values
-
-
-0 for success
-
-less than zero for failure:
-
-OV_EREAD - A read from media returned an error.
-OV_ENOTVORBIS - Bitstream is not Vorbis data.
-OV_EVERSION - Vorbis version mismatch.
-OV_EBADHEADER - Invalid Vorbis bitstream header.
-OV_EFAULT - Internal logic fault; indicates a bug or heap/stack corruption.
-
-
-
-
-
Notes
-If your decoder is threaded, it is recommended that you NOT call
-ov_open()
-in the main control thread--instead, call ov_open() IN your decode/playback
-thread. This is important because ov_open() may be a fairly time-consuming
-call, given that the full structure of the file is determined at this point,
-which may require reading large parts of the file under certain circumstances
-(determining all the logical bitstreams in one physical bitstream, for
-example).
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_open_callbacks.html b/doc/vorbisfile/ov_open_callbacks.html
deleted file mode 100644
index 9ac61bda8e69d024aeaa1588f064cdc8f054fb3e..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_open_callbacks.html
+++ /dev/null
@@ -1,108 +0,0 @@
-
-
-
-vorbisfile - function - ov_open_callbacks
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_open_callbacks
-
-declared in "vorbis/vorbisfile.h";
-
-This is an alternative function used to open and initialize an OggVorbis_File
-structure when using a data source other than a file. It allows you to specify custom file manipulation routines and sets up all the related decoding structure.
-
Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-
-It is often useful to call ov_open_callbacks()
-simply to determine whether a given file is a vorbis bitstream. If the
-ov_open_callbacks()
-call fails, then the file is not recognizable as such. When you use ov_open_callbacks()
- for
-this, you should fclose() the file pointer if, and only if, the
-ov_open_callbacks()
-call fails. If it succeeds, you must call ov_clear() to clear
-the decoder's buffers and close the file for you.
-
-
-
-Parameters
-
-f
-File pointer to an already opened file
-or pipe (it need not be seekable--though this obviously restricts what
-can be done with the bitstream).
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-initial
-Typically set to NULL. This parameter is useful if some data has already been
-read from the file and the stream is not seekable. It is used in conjunction with ibytes . In this case, initial
-should be a pointer to a buffer containing the data read.
-ibytes
-Typically set to 0. This parameter is useful if some data has already been
-read from the file and the stream is not seekable. In this case, ibytes
-should contain the length (in bytes) of the buffer. Used together with initial .
-callbacks
-Pointer to a completed ov_callbacks struct which indicates desired custom file manipulation routines.
-
-
-
-Return Values
-
-
-0 for success
-less than zero for failure:
-
-OV_EREAD - A read from media returned an error.
-OV_ENOTVORBIS - Bitstream is not Vorbis data.
-OV_EVERSION - Vorbis version mismatch.
-OV_EBADHEADER - Invalid Vorbis bitstream header.
-OV_EFAULT - Internal logic fault; indicates a bug or heap/stack corruption.
-
-
-
-
-
Notes
-If your decoder is threaded, it is recommended that you NOT call
-ov_open_callbacks()
-in the main control thread--instead, call ov_open_callbacks() IN your decode/playback
-thread. This is important because ov_open_callbacks() may be a fairly time-consuming
-call, given that the full structure of the file is determined at this point,
-which may require reading large parts of the file under certain circumstances
-(determining all the logical bitstreams in one physical bitstream, for
-example).
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_pcm_seek.html b/doc/vorbisfile/ov_pcm_seek.html
deleted file mode 100644
index 43e50157239e9365b09e1d11f835b2386b54c068..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_pcm_seek.html
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
-vorbisfile - function - ov_bitrate
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_pcm_seek
-
-declared in "vorbis/vorbisfile.h";
-
-Seeks to the offset specified (in pcm samples) within the physical bitstream. This function only works for seekable streams.
-
This also updates everything needed within the
-decoder, so you can immediately call ov_read() and get data from
-the newly seeked to position.
-
-
-
-
-
-
-
-int ov_pcm_seek(OggVorbis_File *vf,int64_t pos);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-pos
-Position in pcm samples to seek to in the bitstream.
-
-
-
-Return Values
-
-
-0 for success
-
-
-nonzero indicates failure, described by several error codes:
-
-OV_ENOSEEK - Bitstream is not seekable.
-
-OV_EINVAL - Invalid argument value.
-
-OV_EREAD - A read from media returned an error.
-
-OV_EFAULT - Internal logic fault; indicates a bug or heap/stack
- corruption.
-
-OV_EBADLINK - Invalid stream section supplied to libvorbis/libvorbisfile, or the requested link is corrupt.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_pcm_seek_page.html b/doc/vorbisfile/ov_pcm_seek_page.html
deleted file mode 100644
index 1f97db8629d2dc3776ce73b8be0a9958f1e565d8..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_pcm_seek_page.html
+++ /dev/null
@@ -1,83 +0,0 @@
-
-
-
-vorbisfile - function - ov_pcm_seek_page
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_pcm_seek_page
-
-declared in "vorbis/vorbisfile.h";
-
-Seeks to the closest page preceding the specified location (in pcm samples) within the physical bitstream. This function only works for seekable streams.
-
This function is faster than ov_pcm_seek because the function can begin decoding at a page boundary rather than seeking through any remaining samples before the specified location. However, it is less accurate.
-
This also updates everything needed within the
-decoder, so you can immediately call ov_read() and get data from
-the newly seeked to position.
-
-
-
-
-
-
-
-int ov_pcm_seek(OggVorbis_File *vf,int64_t pos);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-pos
-Position in pcm samples to seek to in the bitstream.
-
-
-
-Return Values
-
-
-0 for success
-
-
-nonzero indicates failure, described by several error codes:
-
-OV_ENOSEEK - Bitstream is not seekable.
-
-OV_EINVAL - Invalid argument value.
-
-OV_EREAD - A read from media returned an error.
-
-OV_EFAULT - Internal logic fault; indicates a bug or heap/stack
- corruption.
-
-OV_EBADLINK - Invalid stream section supplied to libvorbis/libvorbisfile, or the requested link is corrupt.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_pcm_tell.html b/doc/vorbisfile/ov_pcm_tell.html
deleted file mode 100644
index f277a416bb32ad1ab20deb9b56cea5d77e1cb892..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_pcm_tell.html
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-vorbisfile - function - ov_pcm_tell
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_pcm_tell
-
-declared in "vorbis/vorbisfile.h";
-
-Returns the current offset in samples.
-
-
-
-
-
-
-int64_t ov_pcm_tell(OggVorbis_File *vf);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-
-
-
-Return Values
-
-n indicates the current offset in samples.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_pcm_total.html b/doc/vorbisfile/ov_pcm_total.html
deleted file mode 100644
index bb205c21eec7ceaa5055c1ebda485e544ff78e83..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_pcm_total.html
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
-vorbisfile - function - ov_pcm_total
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_pcm_total
-
-declared in "vorbis/vorbisfile.h";
-
-Returns the total pcm samples of the physical bitstream or a specified logical bitstream.
-
-
-
-
-
-
-int64_t ov_pcm_total(OggVorbis_File *vf,int i);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-i
-Link to the desired logical bitstream. To retrieve the total pcm samples for the entire physical bitstream, this parameter should be set to -1.
-
-
-
-Return Values
-
-OV_EINVAL means that the argument was invalid. In this case, the requested bitstream did not exist or the bitstream is unseekable.
-
-total length in pcm samples of content if i=-1.
-length in pcm samples of logical bitstream if i=1 to n.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_raw_seek.html b/doc/vorbisfile/ov_raw_seek.html
deleted file mode 100644
index dba16b4e83b475ada1d162a12f318c0df5c8fb17..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_raw_seek.html
+++ /dev/null
@@ -1,77 +0,0 @@
-
-
-
-vorbisfile - function - ov_raw_seek
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_raw_seek
-
-declared in "vorbis/vorbisfile.h";
-
-Seeks to the offset specified (in compressed raw bytes) within the physical bitstream. This function only works for seekable streams.
-
This also updates everything needed within the
-decoder, so you can immediately call ov_read() and get data from
-the newly seeked to position.
-
When seek speed is a priority, this is the best vorbisfile seek funtion to use.
-
-
-
-
-
-int ov_raw_seek(OggVorbis_File *vf,long pos);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-pos
-Position in compressed bytes to seek to in the bitstream.
-
-
-
-Return Values
-
-
-0 indicates success
-nonzero indicates failure, described by several error codes:
-
-OV_ENOSEEK - Bitstream is not seekable.
-
-OV_EINVAL - Invalid argument value.
-
-OV_EBADLINK - Invalid stream section supplied to libvorbis/libvorbisfile, or the requested link is corrupt.
-
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_raw_tell.html b/doc/vorbisfile/ov_raw_tell.html
deleted file mode 100644
index d2b649d3faddcc34df8be96508da2d792f79f5c1..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_raw_tell.html
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-vorbisfile - function - ov_raw_tell
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_raw_tell
-
-declared in "vorbis/vorbisfile.h";
-
-Returns the current offset in raw compressed bytes.
-
-
-
-
-
-
-int64_t ov_raw_tell(OggVorbis_File *vf);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-
-
-
-Return Values
-
-n indicates the current offset in bytes.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_raw_total.html b/doc/vorbisfile/ov_raw_total.html
deleted file mode 100644
index 9732a0dce79ac7f36167e19ed9cefc7b9bd641a4..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_raw_total.html
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
-vorbisfile - function - ov_raw_total
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_raw_total
-
-declared in "vorbis/vorbisfile.h";
-
-Returns the total (compressed) bytes of the physical bitstream or a specified logical bitstream.
-
-
-
-
-
-
-int64_t ov_raw_total(OggVorbis_File *vf,int i);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-i
-Link to the desired logical bitstream. To retrieve the total bytes for the entire physical bitstream, this parameter should be set to -1.
-
-
-
-Return Values
-
-OV_EINVAL means that the argument was invalid. In this case, the requested bitstream did not exist or the bitstream is nonseekable
-
-total length in compressed bytes of content if i=-1.
-length in compressed bytes of logical bitstream if i=1 to n.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_read.html b/doc/vorbisfile/ov_read.html
deleted file mode 100644
index 090526844940aa2301aa78bfc7048d2bd8cb74ef..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_read.html
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-vorbisfile - function - ov_read
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_read()
-
-declared in "vorbis/vorbisfile.h";
-
-
- This is the main function used to decode a Vorbis file within a loop.
-
- This function deals with more complicated bitstream chaining issues.
- Up to this point, everything could more or less hide the multiple
- logical bitstream nature of chaining from the toplevel application
- if the toplevel application didn't particularly care. However, when we actually read audio back, we must be aware that multiple bitstream sections do not necessarily
- have to have the same number of channels or sampling rate.
-
- ov_read() passes back the index of the sequential logical
- bitstream currently being decoded along with the PCM data in order
- that the toplevel application can take action on channel/sample rate
- changes. This number will be incremented at chaining boundaries even
- for non-seekable streams. For seekable streams, it represents the
- actual chaining index within the physical bitstream.
-ov_read() passes back the logical bitstream number currently
- being decoded along with the PCM data in order that the toplevel
- application can take action on channel/sample rate changes.
-
-
-
-
-
-
-
-long ov_read(OggVorbis_File *vf, char *buffer, int length, int bigendianp, int word, int sgned, int *bitstream);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions.
-buffer
-A pointer to an output buffer. The decoded output is inserted into this buffer.
-length
-Number of bytes to be read into the buffer. Should be the same size as the buffer. A typical value is 4096.
-bigendianp
-Specifies big or little endian byte packing. 0 for little endian, 1 for big endian. Typical value is 0.
-word
-Specifies word size. Possible arguments are 1 for 8-bit samples, or 2 or 16-bit samples. Typical value is 2.
-sgned
-Signed or unsigned data. 0 for unsigned, 1 for signed. Typically 1.
-bitstream
-A pointer to the number of the current logical bitstream.
-
-
-
-Return Values
-
-
-OV_HOLE
- indicates there was an interruption in the data.
- (one of: garbage between pages, loss of sync followed by
- recapture, or a corrupt page)
-OV_EBADLINK
- indicates that an invalid stream section was supplied to
- libvorbisfile, or the requested link is corrupt.
-0
- indicates EOF
-n
- indicates actual number of bytes read. ov_read() will
- decode at most one vorbis packet per invocation, so the value
- returned will generally be less than length .
-
-
-
-Notes
-Typical usage:
-
-bytes_read = ov_read(&vf,
-buffer, 4096,0,2,1,¤t_section)
-
-
-This reads up to 4096 bytes into a buffer, with signed 16-bit
-little-endian samples.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_seekable.html b/doc/vorbisfile/ov_seekable.html
deleted file mode 100644
index e369ee9cef97a9bad0761f62e41295e5da5c0295..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_seekable.html
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-vorbisfile - function - ov_seekable
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_seekable
-
-declared in "vorbis/vorbisfile.h";
-
-This indicates whether or not the bitstream is seekable.
-
-
-
-
-
-
-
-long ov_seekable(OggVorbis_File *vf);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-
-
-
-Return Values
-
-
-0 indicates that the file is not seekable.
-1 indicates that the file is seekable.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_serialnumber.html b/doc/vorbisfile/ov_serialnumber.html
deleted file mode 100644
index 0c2a733d3d79c46dc6dfa880dfbb2062083a3f17..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_serialnumber.html
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
-vorbisfile - function - ov_serialnumber
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_serialnumber
-
-declared in "vorbis/vorbisfile.h";
-
-Returns the serialnumber of the specified logical bitstream.
-
-
-
-
-
-
-long ov_serialnumber(OggVorbis_File *vf,int i);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-i
-Link to the desired logical bitstream. For nonseekable files, this argument is ignored. To retrieve the vorbis_info struct for the current bitstream, this parameter should be set to -1.
-
-
-
-Return Values
-
-
--1 if the specified logical bitstream i does not exist.
-
-Returns the serial number of the logical bitstream i or the serial number of the current bitstream if the file is nonseekable.
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_streams.html b/doc/vorbisfile/ov_streams.html
deleted file mode 100644
index ba4b31effab0182349d7c639b0f52f379134d504..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_streams.html
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-vorbisfile - function - ov_streams
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_streams
-
-declared in "vorbis/vorbisfile.h";
-
-Returns the number of logical bitstreams within our physical bitstream.
-
-
-
-
-
-
-long ov_streams(OggVorbis_File *vf);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-
-
-
-Return Values
-
-
-1 indicates a single logical bitstream or an unseekable file.
-n indicates the number of logical bitstreams.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_time_seek.html b/doc/vorbisfile/ov_time_seek.html
deleted file mode 100644
index 8e88e9c8b0795eb2045f4b21d6e29348623b9297..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_time_seek.html
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-vorbisfile - function - ov_time_seek
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_time_seek
-
-declared in "vorbis/vorbisfile.h";
-
-For seekable
-streams, this seeks to the given time. For implementing seeking in a player,
-this is the only function generally needed. This also updates everything needed within the
-decoder, so you can immediately call ov_read() and get data from
-the newly seeked to position. For obvious reasons, this doesn't work for unseekable streams.
-
-
-
-
-Parameters
-
-vf
-Pointer to our already opened and initialized OggVorbis_File structure.
-seconds
-Location to seek to within the file, specified in seconds.
-
-
-
-Return Values
-
-
-0 for success
-
-
-Nonzero for failure
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_time_seek_page.html b/doc/vorbisfile/ov_time_seek_page.html
deleted file mode 100644
index b3b96160dee4b9dba496db70fc3d6e960500a8ef..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_time_seek_page.html
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-vorbisfile - function - ov_time_seek_page
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_time_seek_page
-
-declared in "vorbis/vorbisfile.h";
-
-For seekable
-streams, this seeks to closest full page preceding the given time. This function is faster than ov_time_seek because it doesn't seek through the last few samples to reach an exact time, but it is also less accurate. This should be used when speed is important.
-
This function also updates everything needed within the
-decoder, so you can immediately call ov_read() and get data from
-the newly seeked to position.
-
For obvious reasons, this doesn't work for unseekable streams.
-
-
-
-
-
-
-int ov_time_seek_page(OggVorbis_File *vf, double seconds);
-
-
-
-
-
-Parameters
-
-vf
-Pointer to our already opened and initialized OggVorbis_File structure.
-seconds
-Location to seek to within the file, specified in seconds.
-
-
-
-Return Values
-
-
-0 for success
-
-
-nonzero indicates failure, described by several error codes:
-
-OV_ENOSEEK - Bitstream is not seekable.
-
-OV_EINVAL - Invalid argument value.
-
-OV_EREAD - A read from media returned an error.
-
-OV_EFAULT - Internal logic fault; indicates a bug or heap/stack
- corruption.
-
-OV_EBADLINK - Invalid stream section supplied to libvorbis/libvorbisfile, or the requested link is corrupt.
-
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_time_tell.html b/doc/vorbisfile/ov_time_tell.html
deleted file mode 100644
index 1377926c66c347b722a8ecb8810af1b3b39bf40e..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_time_tell.html
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
-
-vorbisfile - function - ov_bitrate
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_time_tell
-
-declared in "vorbis/vorbisfile.h";
-
-Returns the current offset in seconds.
-
-
-
-
-
-
-double ov_time_tell(OggVorbis_File *vf);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-
-
-
-Return Values
-
-n indicates the current offset in bytes.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/ov_time_total.html b/doc/vorbisfile/ov_time_total.html
deleted file mode 100644
index 1fa81a57d0eed69b0c4d69f08faada44e42f8794..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/ov_time_total.html
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-
-vorbisfile - function - ov_time_total
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-ov_time_total
-
-declared in "vorbis/vorbisfile.h";
-
-
-Returns the total time in seconds of the physical bitstream or a specified logical bitstream.
-
-
-
-
-
-
-
-double ov_time_total(OggVorbis_File *vf,int i);
-
-
-
-
-
-Parameters
-
-vf
-A pointer to the OggVorbis_File structure--this is used for ALL the externally visible vorbisfile
-functions. Once this has been called, the same OggVorbis_File
-struct should be passed to all the vorbisfile functions.
-i
-Link to the desired logical bitstream. To retrieve the vorbis_info struct for the current bitstream, this parameter should be set to -1.
-
-
-
-Return Values
-
-OV_EINVAL means that the argument was invalid. In this case, the requested bitstream did not exist or the bitstream is nonseekable.
-
-total length in seconds of content if i=-1.
-length in seconds of logical bitstream if i=1 to n.
-
-
-
Notes
-Typical usage: bytes_read = ov_read(&vf, buffer, 4096,0,2,1,¤t_section)
- This reads up to 4096 bytes into a buffer, with signed 16-bit little-endian
-samples.
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/overview.html b/doc/vorbisfile/overview.html
deleted file mode 100644
index 99b384d25e43676564f20af614dfb2c1b19fc28d..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/overview.html
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
-libvorbisfile - API Overview
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-VorbisFile API Overview
-
-The makeup of the vorbisfile API is relatively simple. It revolves around a single file resource. This resource is passed to the Vorbisfile API, where it is opened, manipulated, and closed, in the form of an OggVorbis_File struct.
-
-The vorbisfile API consists of the following functional categories:
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/reference.html b/doc/vorbisfile/reference.html
deleted file mode 100644
index 0649e22f226c1702bfe8edfc39a22ecdb5aa8226..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/reference.html
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
-Vorbisfile API Reference
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Vorbisfile API Reference
-
-
-Data Structures
-OggVorbis_File
-vorbis_comment
-vorbis_info
-ov_callbacks
-
-Setup/Teardown
-ov_open()
-ov_open_callbacks()
-ov_clear()
-
-Decoding
-ov_read()
-
-Seeking
-ov_raw_seek()
-ov_pcm_seek()
-ov_time_seek()
-
-File Information
-ov_bitrate()
-ov_bitrate_instant()
-ov_streams()
-ov_seekable()
-ov_serialnumber()
-ov_raw_total()
-ov_pcm_total()
-ov_time_total()
-ov_raw_tell()
-ov_pcm_tell()
-ov_time_tell()
-ov_info()
-ov_comment()
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/seekexample.html b/doc/vorbisfile/seekexample.html
deleted file mode 100644
index 1c5e36b3bd51559cc96798dc01658e219a3d8a18..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/seekexample.html
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
-vorbisfile - Example Code
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Example Code
-
-
-The following is a run-through of the seeking example program supplied
-with vorbisfile - seeking_test.c .
-This program tests the vorbisfile ov_time_seek function by seeking to random points within the file.
-
-
-First, relevant headers, including vorbis-specific "codec.h" and "vorbisfile.h" have to be included.
-
-
-
-
-
-
-#include <stdlib.h>
-#include <stdio.h>
-#include "vorbis/codec.h"
-#include "vorbis/vorbisfile.h"
-#include "../lib/misc.h"
-
-
-
-
-
-Inside main(), we declare our primary OggVorbis_File structure. We also declare a other helpful variables to track our progress within the file.
-
-
-
-
-
-int main(){
- OggVorbis_File ov;
- int i;
-
-
-
-
-
-ov_open() must be
-called to initialize the OggVorbis_File structure with default values.
-ov_open() also checks to ensure that we're reading Vorbis format and not something else.
-
-
-
-
-
-
- if(ov_open(stdin,&ov,NULL,-1)<0){
- printf("Could not open input as an OggVorbis file.\n\n");
- exit(1);
- }
-
-
-
-
-
-
-
-First we check to make sure the stream is seekable using ov_seekable .
-
-
Then we seek to 100 random spots in the bitstream using ov_time_seek with randomly generated values.
-
-
-
-
-
-
-
- /* print details about each logical bitstream in the input */
- if(ov_seekable(&ov)){
- double length=ov_time_total(&ov,-1);
- printf("testing seeking to random places in %g seconds....\n",length);
- for(i=0;i<100;i++){
- double val=(double)rand()/RAND_MAX*length;
- ov_time_seek(&ov,val);
- printf("\r\t%d [%gs]... ",i,val);
- fflush(stdout);
- }
-
- printf("\r \nOK.\n\n");
- }else{
- printf("Standard input was not seekable.\n");
- }
-
-
-
-
-
-
-When we're done seeking, we need to call ov_clear() to release the bitstream.
-
-
-
-
-
-
- ov_clear(&ov);
- return 0;
-}
-
-
-
-
-
-
-The full source for seeking_test.c can be found with the vorbis
-distribution in seeking_test.c .
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/seeking.html b/doc/vorbisfile/seeking.html
deleted file mode 100644
index 6b5ac18b3b4c222b7a8a19dc44adbb03f39af44f..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/seeking.html
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
-vorbisfile - Seeking
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Seeking
-Seeking functions allow you to specify a specific point in the stream to begin or continue decoding.
-
-All the vorbisfile seeking routines are declared in "vorbis/vorbisfile.h".
-
-
Certain seeking functions are best suited to different situations. When speed is important, page-level seeking should be used.
-
-
-
-
-
- function
- purpose
-
-
- ov_raw_seek
- This function seeks to a specific byte in the bitstream, specified in bytes.
-
-
- ov_pcm_seek
- This function seeks to a specific point in the bitstream, specified in pcm samples.
-
-
- ov_pcm_seek_page
- This function seeks to the closest page preceding a point in the bitstream, specified in pcm samples.
-
-
- ov_time_seek
- This function seeks to a time in the bitstream, specified in seconds. The easiest and simplest seeking method.
-
-
- ov_time_seek_page
- This function seeks to the closest page preceding a time in the bitstream, specified in seconds.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
-
diff --git a/doc/vorbisfile/seeking_example_c.html b/doc/vorbisfile/seeking_example_c.html
deleted file mode 100644
index 0ffcf821a4bd475cc6866af30fb4490d958ddc1d..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/seeking_example_c.html
+++ /dev/null
@@ -1,83 +0,0 @@
-
-
-
-vorbisfile - seeking_test.c
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-seeking_test.c
-
-
-The example program source:
-
-
-
-
-
-
-
-#include
-#include
-#include "vorbis/codec.h"
-#include "vorbis/vorbisfile.h"
-#include "../lib/misc.h"
-
-int main(){
- OggVorbis_File ov;
- int i;
-
- /* open the file/pipe on stdin */
- if(ov_open(stdin,&ov,NULL,-1)==-1){
- printf("Could not open input as an OggVorbis file.\n\n");
- exit(1);
- }
-
- /* print details about each logical bitstream in the input */
- if(ov_seekable(&ov)){
- double length=ov_time_total(&ov,-1);
- printf("testing seeking to random places in %g seconds....\n",length);
- for(i=0;i<100;i++){
- double val=(double)rand()/RAND_MAX*length;
- ov_time_seek(&ov,val);
- printf("\r\t%d [%gs]... ",i,val);
- fflush(stdout);
- }
-
- printf("\r \nOK.\n\n");
- }else{
- printf("Standard input was not seekable.\n");
- }
-
- ov_clear(&ov);
- return 0;
-}
-
-
-
-
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/seeking_test_c.html b/doc/vorbisfile/seeking_test_c.html
deleted file mode 100644
index 0ffcf821a4bd475cc6866af30fb4490d958ddc1d..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/seeking_test_c.html
+++ /dev/null
@@ -1,83 +0,0 @@
-
-
-
-vorbisfile - seeking_test.c
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-seeking_test.c
-
-
-The example program source:
-
-
-
-
-
-
-
-#include
-#include
-#include "vorbis/codec.h"
-#include "vorbis/vorbisfile.h"
-#include "../lib/misc.h"
-
-int main(){
- OggVorbis_File ov;
- int i;
-
- /* open the file/pipe on stdin */
- if(ov_open(stdin,&ov,NULL,-1)==-1){
- printf("Could not open input as an OggVorbis file.\n\n");
- exit(1);
- }
-
- /* print details about each logical bitstream in the input */
- if(ov_seekable(&ov)){
- double length=ov_time_total(&ov,-1);
- printf("testing seeking to random places in %g seconds....\n",length);
- for(i=0;i<100;i++){
- double val=(double)rand()/RAND_MAX*length;
- ov_time_seek(&ov,val);
- printf("\r\t%d [%gs]... ",i,val);
- fflush(stdout);
- }
-
- printf("\r \nOK.\n\n");
- }else{
- printf("Standard input was not seekable.\n");
- }
-
- ov_clear(&ov);
- return 0;
-}
-
-
-
-
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/seekingexample.html b/doc/vorbisfile/seekingexample.html
deleted file mode 100644
index a137786b889da55d81e90ed77ec2e8f69f33755c..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/seekingexample.html
+++ /dev/null
@@ -1,204 +0,0 @@
-
-
-
-vorbisfile - Example Code
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-Example Code
-
-
-The following is a run-through of the decoding example program supplied
-with vorbisfile - vorbisfile_example.c .
-This program takes a vorbis bitstream from stdin and writes raw pcm to stdout.
-
-
-First, relevant headers, including vorbis-specific "codec.h" and "vorbisfile.h" have to be included.
-
-
-
-
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-#include "vorbis/codec.h"
-#include "vorbis/vorbisfile.h"
-
-
-
-
-
-We also have to make a concession to Windows users here. If we are using windows for decoding, we must declare these libraries so that we can set stdin/stdout to binary.
-
-
-
-
-
-#ifdef _WIN32
-#include <io.h>
-#include <fcntl.h>
-#endif
-
-
-
-
-
-Next, a buffer for the pcm audio output is declared.
-
-
-
-
-
-
-char pcmout[4096];
-
-
-
-
-
-Inside main(), we declare our primary OggVorbis_File structure. We also declare a few other helpful variables to track out progress within the file.
-Also, we make our final concession to Windows users by setting the stdin and stdout to binary mode.
-
-
-
-
-
-int main(int argc, char **argv){
- OggVorbis_File vf;
- int eof=0;
- int current_section;
-
-#ifdef _WIN32
- _setmode( _fileno( stdin ), _O_BINARY );
- _setmode( _fileno( stdout ), _O_BINARY );
-#endif
-
-
-
-
-
-ov_open() must be
-called to initialize the OggVorbis_File structure with default values.
-ov_open() also checks to ensure that we're reading Vorbis format and not something else.
-
-
-
-
-
-
- if(ov_open(stdin, &vf, NULL, 0) < 0) {
- fprintf(stderr,"Input does not appear to be an Ogg bitstream.\n");
- exit(1);
- }
-
-
-
-
-
-
-
-We're going to pull the channel and bitrate info from the file using ov_info() and show them to the user.
-We also want to pull out and show the user a comment attached to the file using ov_comment() .
-
-
-
-
-
-
- {
- char **ptr=ov_comment(&vf,-1)->user_comments;
- vorbis_info *vi=ov_info(&vf,-1);
- while(*ptr){
- fprintf(stderr,"%s\n",*ptr);
- ++ptr;
- }
- fprintf(stderr,"\nBitstream is %d channel, %ldHz\n",vi->channels,vi->rate);
- fprintf(stderr,"Encoded by: %s\n\n",ov_comment(&vf,-1)->vendor);
- }
-
-
-
-
-
-
-
-Here's the read loop:
-
-
-
-
-
-
-
- while(!eof){
- long ret=ov_read(&vf,pcmout,sizeof(pcmout),0,2,1,¤t_section);
- switch(ret){
- case 0:
- /* EOF */
- eof=1;
- break;
- case -1:
- break;
- default:
- fwrite(pcmout,1,ret,stdout);
- break;
- }
- }
-
-
-
-
-
-
-
-The code is reading blocks of data using ov_read() .
-Based on the value returned, we know if we're at the end of the file or have invalid data. If we have valid data, we write it to the pcm output.
-
-
-Now that we've finished playing, we can pack up and go home. It's important to call ov_clear() when we're finished.
-
-
-
-
-
-
-
- ov_clear(&vf);
-
- fprintf(stderr,"Done.\n");
- return(0);
-}
-
-
-
-
-
-
-The full source for vorbisfile_example.c can be found with the vorbis
-distribution in vorbisfile_example.c .
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/style.css b/doc/vorbisfile/style.css
deleted file mode 100644
index 332f809ea371a8aa6e49da4768bf23e534c7d67b..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/style.css
+++ /dev/null
@@ -1,7 +0,0 @@
-BODY { font-family: helvetica, sans-serif }
-TD { font-family: helvetica, sans-serif }
-P { font-family: helvetica, sans-serif }
-H1 { font-family: helvetica, sans-serif }
-H2 { font-family: helvetica, sans-serif }
-H4 { font-family: helvetica, sans-serif }
-P.tiny { font-size: 8pt }
diff --git a/doc/vorbisfile/vorbis_comment.html b/doc/vorbisfile/vorbis_comment.html
deleted file mode 100644
index 53f5b744acafd79277a08cac8b40c0c42dace5cd..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/vorbis_comment.html
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
-vorbisfile - datatype - vorbis_comment
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-vorbis_comment
-
-declared in "vorbis/codec.h"
-
-
-The vorbis_comment structure defines an Ogg Vorbis comment.
-
-Only the fields the program needs must be defined. If a field isn't
-defined by the application, it will either be blank (if it's a string value)
-or set to some reasonable default (usually 0).
-
-
-
-
-
-typedef struct vorbis_comment{
- /* unlimited user comment fields. */
- char **user_comments;
- int comments;
- char *vendor;
-
-} vorbis_comment;
-
-
-
-
-Parameters
-
-user_comments
-Unlimited user comment array. Comments stored in normal C 0-terminated strings.
-comments
-Int signifying number of user comments in user_comments field.
-vendor
-Information about the creator of the file. Stored in a standard C 0-terminated string.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/vorbis_info.html b/doc/vorbisfile/vorbis_info.html
deleted file mode 100644
index b9ae7de55413254a86b5ae312aef141be6b4d1af..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/vorbis_info.html
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
-
-vorbisfile - datatype - vorbis_info
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-vorbis_info
-
-declared in "vorbis/codec.h"
-
-
-The vorbis_info structure contains information about a vorbis bitstream. Most of the information in this struct is more complex and in-depth than we need for vorbisfile decoding. However, the info's there if we need or want it.
-
-
-
-
-
-
-typedef struct vorbis_info{
- int version;
- int channels;
- long rate;
-
- long bitrate_upper;
- long bitrate_nominal;
- long bitrate_lower;
-
- long blocksizes[2];
-
- int modes;
- int maps;
- int times;
- int floors;
- int residues;
- int books;
- int psys; /* encode only */
-
- vorbis_info_mode *mode_param[64];
- int map_type[64];
- vorbis_info_mapping *map_param[64];
- int time_type[64];
- vorbis_info_time *time_param[64];
- int floor_type[64];
- vorbis_info_floor *floor_param[64];
- int residue_type[64];
- vorbis_info_residue *residue_param[64];
- static_codebook *book_param[256];
- vorbis_info_psy *psy_param[64]; /* encode only */
-
- /* for block long/sort tuning; encode only */
- int envelopesa;
- double preecho_thresh;
- double preecho_clamp;
-
-} vorbis_info;
-
-
-
-
-Relevant Struct Members
-
-version
-Vorbis encoder version used to create this bitstream.
-channels
-Int signifying number of channels in bitstream.
-rate
-Sampling rate of the bitstream.
-bitrate_upper
-Specifies the upper limit in a VBR bitstream. If the value matches the bitrate_nominal and bitrate_lower parameters, the stream is fixed bitrate. May be unset if no limit exists.
-bitrate_nominal
-Specifies the average bitrate for a VBR bitstream. May be unset. If the bitrate_upper and bitrate_lower parameters match, the stream is fixed bitrate.
-bitrate_lower
-Specifies the lower limit in a VBR bitstream. If the value matches the bitrate_nominal and bitrate_upper parameters, the stream is fixed bitrate. May be unset if no limit exists.
-blocksizes[2]
-Contains the sizes of the long and short blocks for this particular bitstream. These are variable and can be set by the encoder. Vorbis only supports two sizes, long and short.
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisfile/vorbisfile_example_c.html b/doc/vorbisfile/vorbisfile_example_c.html
deleted file mode 100644
index 38068db02f7989ff3db23847e8cb3ff01ab0ec1e..0000000000000000000000000000000000000000
--- a/doc/vorbisfile/vorbisfile_example_c.html
+++ /dev/null
@@ -1,106 +0,0 @@
-
-
-
-vorbisfile - vorbisfile_example.c
-
-
-
-
-
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-vorbisfile_example.c
-
-
-The example program source:
-
-
-
-
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-#include "vorbis/codec.h"
-#include "vorbis/vorbisfile.h"
-
-#ifdef _WIN32
-#include <io.h>
-#include <fcntl.h>
-#endif
-
-char pcmout[4096];
-
-int main(int argc, char **argv){
- OggVorbis_File vf;
- int eof=0;
- int current_section;
-
-#ifdef _WIN32
- _setmode( _fileno( stdin ), _O_BINARY );
- _setmode( _fileno( stdout ), _O_BINARY );
-#endif
-
- if(ov_open(stdin, &vf, NULL, 0) < 0) {
- fprintf(stderr,"Input does not appear to be an Ogg bitstream.\n");
- exit(1);
- }
-
- {
- char **ptr=ov_comment(&vf,-1)->user_comments;
- vorbis_info *vi=ov_info(&vf,-1);
- while(*ptr){
- fprintf(stderr,"%s\n",*ptr);
- ++ptr;
- }
- fprintf(stderr,"\nBitstream is %d channel, %ldHz\n",vi->channels,vi->rate);
- fprintf(stderr,"Encoded by: %s\n\n",ov_comment(&vf,-1)->vendor);
- }
-
- while(!eof){
- long ret=ov_read(&vf,pcmout,sizeof(pcmout),0,2,1,¤t_section);
- if (ret == 0) {
- /* EOF */
- eof=1;
- } else if (ret < 0) {
- /* error in the stream. Not a problem, just reporting it in
- case we (the app) cares. In this case, we don't. */
- } else {
- /* we don't bother dealing with sample rate changes, etc, but
- you'll have to*/
- fwrite(pcmout,1,ret,stdout);
- }
- }
-
- ov_clear(&vf);
-
- fprintf(stderr,"Done.\n");
- return(0);
-}
-
-
-
-
-
-
-
-
-
-
-
-copyright © 2000 vorbis team
-Ogg Vorbis team@vorbis.org
-
-vorbisfile documentation
-vorbisfile version 1.25 - 20000615
-
-
-
-
-
-
diff --git a/doc/vorbisword2.png b/doc/vorbisword2.png
deleted file mode 100644
index 12e3d316219ec45f71dd4163cfb9ae1df2d0d585..0000000000000000000000000000000000000000
Binary files a/doc/vorbisword2.png and /dev/null differ
diff --git a/doc/wait.png b/doc/wait.png
deleted file mode 100644
index 2d10af6070b0401309adec1eab93299555cb45c3..0000000000000000000000000000000000000000
Binary files a/doc/wait.png and /dev/null differ
diff --git a/doc/white-ogg.png b/doc/white-ogg.png
deleted file mode 100644
index 2694296b2c1abd924f5c1f8a60d26e0d9771afce..0000000000000000000000000000000000000000
Binary files a/doc/white-ogg.png and /dev/null differ
diff --git a/doc/white-xifish.png b/doc/white-xifish.png
deleted file mode 100644
index ab25cc8f94358cddab1990722c655c92ecfbd930..0000000000000000000000000000000000000000
Binary files a/doc/white-xifish.png and /dev/null differ
diff --git a/examples/.cvsignore b/examples/.cvsignore
deleted file mode 100644
index 1eb3972da622ad7d2bd6e0009f86e345f4487f3f..0000000000000000000000000000000000000000
--- a/examples/.cvsignore
+++ /dev/null
@@ -1,9 +0,0 @@
-Makefile
-Makefile.in
-.libs
-.deps
-encoder_example
-decoder_example
-chaining_example
-vorbisfile_example
-seeking_example
diff --git a/examples/Makefile.am b/examples/Makefile.am
deleted file mode 100644
index 18063f7c00dd8593d54c69c91321c6ef7b14100d..0000000000000000000000000000000000000000
--- a/examples/Makefile.am
+++ /dev/null
@@ -1,27 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-INCLUDES = -I$(top_srcdir)/include @OGG_CFLAGS@
-
-noinst_PROGRAMS = decoder_example encoder_example chaining_example\
- vorbisfile_example seeking_example
-
-LDFLAGS = -static
-LDADD = ../lib/libvorbis.la
-
-decoder_example_SOURCES = decoder_example.c
-encoder_example_SOURCES = encoder_example.c
-encoder_example_LDADD = ../lib/libvorbisenc.la ../lib/libvorbis.la
-chaining_example_SOURCES = chaining_example.c
-chaining_example_LDADD = ../lib/libvorbisfile.la ../lib/libvorbis.la
-vorbisfile_example_SOURCES = vorbisfile_example.c
-vorbisfile_example_LDADD = ../lib/libvorbisfile.la ../lib/libvorbis.la
-seeking_example_SOURCES = seeking_example.c
-seeking_example_LDADD = ../lib/libvorbisfile.la ../lib/libvorbis.la
-
-debug:
- $(MAKE) all CFLAGS="@DEBUG@"
-
-profile:
- $(MAKE) all CFLAGS="@PROFILE@"
diff --git a/examples/chaining_example.c b/examples/chaining_example.c
deleted file mode 100644
index 874f363ea03ddd2d5179fa47020f8bf13c5cc009..0000000000000000000000000000000000000000
--- a/examples/chaining_example.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: illustrate simple use of chained bitstream and vorbisfile.a
- last mod: $Id: chaining_example.c,v 1.10 2001/08/13 01:36:55 xiphmont Exp $
-
- ********************************************************************/
-
-#include
-#include
-
-int main(){
- OggVorbis_File ov;
- int i;
-
- /* open the file/pipe on stdin */
- if(ov_open(stdin,&ov,NULL,-1)<0){
- printf("Could not open input as an OggVorbis file.\n\n");
- exit(1);
- }
-
- /* print details about each logical bitstream in the input */
- if(ov_seekable(&ov)){
- printf("Input bitstream contained %ld logical bitstream section(s).\n",
- ov_streams(&ov));
- printf("Total bitstream playing time: %ld seconds\n\n",
- (long)ov_time_total(&ov,-1));
-
- }else{
- printf("Standard input was not seekable.\n"
- "First logical bitstream information:\n\n");
- }
-
- for(i=0;irate,vi->channels,ov_bitrate(&ov,i)/1000,
- ov_serialnumber(&ov,i));
- printf("\t\theader length: %ld bytes\n",(long)
- (ov.dataoffsets[i]-ov.offsets[i]));
- printf("\t\tcompressed length: %ld bytes ",(long)(ov_raw_total(&ov,i)));
- printf(" play time: %lds\n",(long)ov_time_total(&ov,i));
- }
-
- ov_clear(&ov);
- return 0;
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/examples/decoder_example.c b/examples/decoder_example.c
deleted file mode 100644
index 2eba00376b9782fd0d1976b12f6bc92f4165e62f..0000000000000000000000000000000000000000
--- a/examples/decoder_example.c
+++ /dev/null
@@ -1,303 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: simple example decoder
- last mod: $Id: decoder_example.c,v 1.20 2001/05/27 20:33:18 xiphmont Exp $
-
- ********************************************************************/
-
-/* Takes a vorbis bitstream from stdin and writes raw stereo PCM to
- stdout. Decodes simple and chained OggVorbis files from beginning
- to end. Vorbisfile.a is somewhat more complex than the code below. */
-
-/* Note that this is POSIX, not ANSI code */
-
-#include
-#include
-#include
-#include
-
-#ifdef _WIN32 /* We need the following two to set stdin/stdout to binary */
-#include
-#include
-#endif
-
-#if defined(macintosh) && defined(__MWERKS__)
-#include /* CodeWarrior's Mac "command-line" support */
-#endif
-
-ogg_int16_t convbuffer[4096]; /* take 8k out of the data segment, not the stack */
-int convsize=4096;
-
-int main(int argc, char **argv){
- ogg_sync_state oy; /* sync and verify incoming physical bitstream */
- ogg_stream_state os; /* take physical pages, weld into a logical
- stream of packets */
- ogg_page og; /* one Ogg bitstream page. Vorbis packets are inside */
- ogg_packet op; /* one raw packet of data for decode */
-
- vorbis_info vi; /* struct that stores all the static vorbis bitstream
- settings */
- vorbis_comment vc; /* struct that stores all the bitstream user comments */
- vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
- vorbis_block vb; /* local working space for packet->PCM decode */
-
- char *buffer;
- int bytes;
-
-#ifdef _WIN32 /* We need to set stdin/stdout to binary mode. Damn windows. */
- /* Beware the evil ifdef. We avoid these where we can, but this one we
- cannot. Don't add any more, you'll probably go to hell if you do. */
- _setmode( _fileno( stdin ), _O_BINARY );
- _setmode( _fileno( stdout ), _O_BINARY );
-#endif
-
-#if defined(macintosh) && defined(__MWERKS__)
-
- argc = ccommand(&argv); /* get a "command line" from the Mac user */
- /* this also lets the user set stdin and stdout */
-#endif
-
- /********** Decode setup ************/
-
- ogg_sync_init(&oy); /* Now we can read pages */
-
- while(1){ /* we repeat if the bitstream is chained */
- int eos=0;
- int i;
-
- /* grab some data at the head of the stream. We want the first page
- (which is guaranteed to be small and only contain the Vorbis
- stream initial header) We need the first page to get the stream
- serialno. */
-
- /* submit a 4k block to libvorbis' Ogg layer */
- buffer=ogg_sync_buffer(&oy,4096);
- bytes=fread(buffer,1,4096,stdin);
- ogg_sync_wrote(&oy,bytes);
-
- /* Get the first page. */
- if(ogg_sync_pageout(&oy,&og)!=1){
- /* have we simply run out of data? If so, we're done. */
- if(bytes<4096)break;
-
- /* error case. Must not be Vorbis data */
- fprintf(stderr,"Input does not appear to be an Ogg bitstream.\n");
- exit(1);
- }
-
- /* Get the serial number and set up the rest of decode. */
- /* serialno first; use it to set up a logical stream */
- ogg_stream_init(&os,ogg_page_serialno(&og));
-
- /* extract the initial header from the first page and verify that the
- Ogg bitstream is in fact Vorbis data */
-
- /* I handle the initial header first instead of just having the code
- read all three Vorbis headers at once because reading the initial
- header is an easy way to identify a Vorbis bitstream and it's
- useful to see that functionality seperated out. */
-
- vorbis_info_init(&vi);
- vorbis_comment_init(&vc);
- if(ogg_stream_pagein(&os,&og)<0){
- /* error; stream version mismatch perhaps */
- fprintf(stderr,"Error reading first page of Ogg bitstream data.\n");
- exit(1);
- }
-
- if(ogg_stream_packetout(&os,&op)!=1){
- /* no page? must not be vorbis */
- fprintf(stderr,"Error reading initial header packet.\n");
- exit(1);
- }
-
- if(vorbis_synthesis_headerin(&vi,&vc,&op)<0){
- /* error case; not a vorbis header */
- fprintf(stderr,"This Ogg bitstream does not contain Vorbis "
- "audio data.\n");
- exit(1);
- }
-
- /* At this point, we're sure we're Vorbis. We've set up the logical
- (Ogg) bitstream decoder. Get the comment and codebook headers and
- set up the Vorbis decoder */
-
- /* The next two packets in order are the comment and codebook headers.
- They're likely large and may span multiple pages. Thus we reead
- and submit data until we get our two pacakets, watching that no
- pages are missing. If a page is missing, error out; losing a
- header page is the only place where missing data is fatal. */
-
- i=0;
- while(i<2){
- while(i<2){
- int result=ogg_sync_pageout(&oy,&og);
- if(result==0)break; /* Need more data */
- /* Don't complain about missing or corrupt data yet. We'll
- catch it at the packet output phase */
- if(result==1){
- ogg_stream_pagein(&os,&og); /* we can ignore any errors here
- as they'll also become apparent
- at packetout */
- while(i<2){
- result=ogg_stream_packetout(&os,&op);
- if(result==0)break;
- if(result<0){
- /* Uh oh; data at some point was corrupted or missing!
- We can't tolerate that in a header. Die. */
- fprintf(stderr,"Corrupt secondary header. Exiting.\n");
- exit(1);
- }
- vorbis_synthesis_headerin(&vi,&vc,&op);
- i++;
- }
- }
- }
- /* no harm in not checking before adding more */
- buffer=ogg_sync_buffer(&oy,4096);
- bytes=fread(buffer,1,4096,stdin);
- if(bytes==0 && i<2){
- fprintf(stderr,"End of file before finding all Vorbis headers!\n");
- exit(1);
- }
- ogg_sync_wrote(&oy,bytes);
- }
-
- /* Throw the comments plus a few lines about the bitstream we're
- decoding */
- {
- char **ptr=vc.user_comments;
- while(*ptr){
- fprintf(stderr,"%s\n",*ptr);
- ++ptr;
- }
- fprintf(stderr,"\nBitstream is %d channel, %ldHz\n",vi.channels,vi.rate);
- fprintf(stderr,"Encoded by: %s\n\n",vc.vendor);
- }
-
- convsize=4096/vi.channels;
-
- /* OK, got and parsed all three headers. Initialize the Vorbis
- packet->PCM decoder. */
- vorbis_synthesis_init(&vd,&vi); /* central decode state */
- vorbis_block_init(&vd,&vb); /* local state for most of the decode
- so multiple block decodes can
- proceed in parallel. We could init
- multiple vorbis_block structures
- for vd here */
-
- /* The rest is just a straight decode loop until end of stream */
- while(!eos){
- while(!eos){
- int result=ogg_sync_pageout(&oy,&og);
- if(result==0)break; /* need more data */
- if(result<0){ /* missing or corrupt data at this page position */
- fprintf(stderr,"Corrupt or missing data in bitstream; "
- "continuing...\n");
- }else{
- ogg_stream_pagein(&os,&og); /* can safely ignore errors at
- this point */
- while(1){
- result=ogg_stream_packetout(&os,&op);
-
- if(result==0)break; /* need more data */
- if(result<0){ /* missing or corrupt data at this page position */
- /* no reason to complain; already complained above */
- }else{
- /* we have a packet. Decode it */
- float **pcm;
- int samples;
-
- if(vorbis_synthesis(&vb,&op)==0) /* test for success! */
- vorbis_synthesis_blockin(&vd,&vb);
- /*
-
- **pcm is a multichannel float vector. In stereo, for
- example, pcm[0] is left, and pcm[1] is right. samples is
- the size of each channel. Convert the float values
- (-1.<=range<=1.) to whatever PCM format and write it out */
-
- while((samples=vorbis_synthesis_pcmout(&vd,&pcm))>0){
- int j;
- int clipflag=0;
- int bout=(samples32767){
- val=32767;
- clipflag=1;
- }
- if(val<-32768){
- val=-32768;
- clipflag=1;
- }
- *ptr=val;
- ptr+=vi.channels;
- }
- }
-
- if(clipflag)
- fprintf(stderr,"Clipping in frame %ld\n",(long)(vd.sequence));
-
-
- fwrite(convbuffer,2*vi.channels,bout,stdout);
-
- vorbis_synthesis_read(&vd,bout); /* tell libvorbis how
- many samples we
- actually consumed */
- }
- }
- }
- if(ogg_page_eos(&og))eos=1;
- }
- }
- if(!eos){
- buffer=ogg_sync_buffer(&oy,4096);
- bytes=fread(buffer,1,4096,stdin);
- ogg_sync_wrote(&oy,bytes);
- if(bytes==0)eos=1;
- }
- }
-
- /* clean up this logical bitstream; before exit we see if we're
- followed by another [chained] */
-
- ogg_stream_clear(&os);
-
- /* ogg_page and ogg_packet structs always point to storage in
- libvorbis. They're never freed or manipulated directly */
-
- vorbis_block_clear(&vb);
- vorbis_dsp_clear(&vd);
- vorbis_comment_clear(&vc);
- vorbis_info_clear(&vi); /* must be called last */
- }
-
- /* OK, clean up the framer */
- ogg_sync_clear(&oy);
-
- fprintf(stderr,"Done.\n");
- return(0);
-}
-
diff --git a/examples/encoder_example.c b/examples/encoder_example.c
deleted file mode 100644
index d252c1aaf01f2351c8409df8d5c32b563289c21d..0000000000000000000000000000000000000000
--- a/examples/encoder_example.c
+++ /dev/null
@@ -1,199 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: simple example encoder
- last mod: $Id: encoder_example.c,v 1.21 2001/02/26 03:50:38 xiphmont Exp $
-
- ********************************************************************/
-
-/* takes a stereo 16bit 44.1kHz WAV file from stdin and encodes it into
- a Vorbis bitstream */
-
-/* Note that this is POSIX, not ANSI, code */
-
-#include
-#include
-#include
-#include
-#include
-
-#ifdef _WIN32 /* We need the following two to set stdin/stdout to binary */
-#include
-#include
-#endif
-
-#if defined(macintosh) && defined(__MWERKS__)
-#include /* CodeWarrior's Mac "command-line" support */
-#endif
-
-#define READ 1024
-signed char readbuffer[READ*4+44]; /* out of the data segment, not the stack */
-
-int main(){
- ogg_stream_state os; /* take physical pages, weld into a logical
- stream of packets */
- ogg_page og; /* one Ogg bitstream page. Vorbis packets are inside */
- ogg_packet op; /* one raw packet of data for decode */
-
- vorbis_info vi; /* struct that stores all the static vorbis bitstream
- settings */
- vorbis_comment vc; /* struct that stores all the user comments */
-
- vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
- vorbis_block vb; /* local working space for packet->PCM decode */
-
- int eos=0;
-
-#if defined(macintosh) && defined(__MWERKS__)
- int argc = 0;
- char **argv = NULL;
- argc = ccommand(&argv); /* get a "command line" from the Mac user */
- /* this also lets the user set stdin and stdout */
-#endif
-
- /* we cheat on the WAV header; we just bypass 44 bytes and never
- verify that it matches 16bit/stereo/44.1kHz. This is just an
- example, after all. */
-
-#ifdef _WIN32 /* We need to set stdin/stdout to binary mode. Damn windows. */
- /* Beware the evil ifdef. We avoid these where we can, but this one we
- cannot. Don't add any more, you'll probably go to hell if you do. */
- _setmode( _fileno( stdin ), _O_BINARY );
- _setmode( _fileno( stdout ), _O_BINARY );
-#endif
-
-
- fread(readbuffer,1,44,stdin);
-
- /********** Encode setup ************/
-
- /* choose an encoding mode */
- /* (mode 0: 44kHz stereo uncoupled, roughly 128kbps VBR) */
- vorbis_info_init(&vi);
- vorbis_encode_init(&vi,2,44100, -1, 128000, -1);
-
- /* add a comment */
- vorbis_comment_init(&vc);
- vorbis_comment_add(&vc,"Track encoded by encoder_example.c");
-
- /* set up the analysis state and auxiliary encoding storage */
- vorbis_analysis_init(&vd,&vi);
- vorbis_block_init(&vd,&vb);
-
- /* set up our packet->stream encoder */
- /* pick a random serial number; that way we can more likely build
- chained streams just by concatenation */
- srand(time(NULL));
- ogg_stream_init(&os,rand());
-
- /* Vorbis streams begin with three headers; the initial header (with
- most of the codec setup parameters) which is mandated by the Ogg
- bitstream spec. The second header holds any comment fields. The
- third header holds the bitstream codebook. We merely need to
- make the headers, then pass them to libvorbis one at a time;
- libvorbis handles the additional Ogg bitstream constraints */
-
- {
- ogg_packet header;
- ogg_packet header_comm;
- ogg_packet header_code;
-
- vorbis_analysis_headerout(&vd,&vc,&header,&header_comm,&header_code);
- ogg_stream_packetin(&os,&header); /* automatically placed in its own
- page */
- ogg_stream_packetin(&os,&header_comm);
- ogg_stream_packetin(&os,&header_code);
-
- /* We don't have to write out here, but doing so makes streaming
- * much easier, so we do, flushing ALL pages. This ensures the actual
- * audio data will start on a new page
- */
- while(!eos){
- int result=ogg_stream_flush(&os,&og);
- if(result==0)break;
- fwrite(og.header,1,og.header_len,stdout);
- fwrite(og.body,1,og.body_len,stdout);
- }
-
- }
-
- while(!eos){
- long i;
- long bytes=fread(readbuffer,1,READ*4,stdin); /* stereo hardwired here */
-
- if(bytes==0){
- /* end of file. this can be done implicitly in the mainline,
- but it's easier to see here in non-clever fashion.
- Tell the library we're at end of stream so that it can handle
- the last frame and mark end of stream in the output properly */
- vorbis_analysis_wrote(&vd,0);
-
- }else{
- /* data to encode */
-
- /* expose the buffer to submit data */
- float **buffer=vorbis_analysis_buffer(&vd,READ);
-
- /* uninterleave samples */
- for(i=0;i
-#include
-#include "vorbis/codec.h"
-#include "vorbis/vorbisfile.h"
-#include "../lib/misc.h"
-
-
-void _verify(OggVorbis_File *ov,ogg_int64_t pos,
- ogg_int64_t val,ogg_int64_t pcmval,
- ogg_int64_t pcmlength,
- char *bigassbuffer){
- int j;
- long bread;
- char buffer[4096];
- int dummy;
-
- /* verify the raw position, the pcm position and position decode */
- if(val!=-1 && ov_raw_tell(ov)pcmval){
- printf("pcm position out of tolerance: requested %ld, got %ld\n",
- (long)pcmval,(long)ov_pcm_tell(ov));
- exit(1);
- }
- pos=ov_pcm_tell(ov);
- if(pos<0 || pos>pcmlength){
- printf("pcm position out of bounds: got %ld\n",(long)pos);
- exit(1);
- }
- bread=ov_read(ov,buffer,4096,1,1,1,&dummy);
- for(j=0;jchannels!=2){
- printf("Sorry; right now seeking_test can only use Vorbis files\n"
- "that are entirely stereo.\n\n");
- exit(1);
- }
- }
-
- /* because we want to do sample-level verification that the seek
- does what it claimed, decode the entire file into memory */
- printf("loading....\n");
- fflush(stdout);
- pcmlength=ov_pcm_total(&ov,-1);
- bigassbuffer=malloc(pcmlength*2); /* w00t */
- i=0;
- while(i
-#include
-#include
-#include
-#include
-
-#ifdef _WIN32 /* We need the following two to set stdin/stdout to binary */
-#include
-#include
-#endif
-
-char pcmout[4096]; /* take 4k out of the data segment, not the stack */
-
-int main(int argc, char **argv){
- OggVorbis_File vf;
- int eof=0;
- int current_section;
-
-#ifdef _WIN32 /* We need to set stdin/stdout to binary mode. Damn windows. */
- /* Beware the evil ifdef. We avoid these where we can, but this one we
- cannot. Don't add any more, you'll probably go to hell if you do. */
- _setmode( _fileno( stdin ), _O_BINARY );
- _setmode( _fileno( stdout ), _O_BINARY );
-#endif
-
- if(ov_open(stdin, &vf, NULL, 0) < 0) {
- fprintf(stderr,"Input does not appear to be an Ogg bitstream.\n");
- exit(1);
- }
-
- /* Throw the comments plus a few lines about the bitstream we're
- decoding */
- {
- char **ptr=ov_comment(&vf,-1)->user_comments;
- vorbis_info *vi=ov_info(&vf,-1);
- while(*ptr){
- fprintf(stderr,"%s\n",*ptr);
- ++ptr;
- }
- fprintf(stderr,"\nBitstream is %d channel, %ldHz\n",vi->channels,vi->rate);
- fprintf(stderr,"\nDecoded length: %ld samples\n",
- (long)ov_pcm_total(&vf,-1));
- fprintf(stderr,"Encoded by: %s\n\n",ov_comment(&vf,-1)->vendor);
- }
-
- while(!eof){
- long ret=ov_read(&vf,pcmout,sizeof(pcmout),0,2,1,¤t_section);
- if (ret == 0) {
- /* EOF */
- eof=1;
- } else if (ret < 0) {
- /* error in the stream. Not a problem, just reporting it in
- case we (the app) cares. In this case, we don't. */
- } else {
- /* we don't bother dealing with sample rate changes, etc, but
- you'll have to*/
- fwrite(pcmout,1,ret,stdout);
- }
- }
-
- /* cleanup */
- ov_clear(&vf);
-
- fprintf(stderr,"Done.\n");
- return(0);
-}
-
diff --git a/include/.cvsignore b/include/.cvsignore
deleted file mode 100644
index 282522db0342d8750454b3dc162493b5fc709cc8..0000000000000000000000000000000000000000
--- a/include/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/include/Makefile.am b/include/Makefile.am
deleted file mode 100644
index 756b65f7f2f90f4abb5c7ab20ac6b6dc9c92d873..0000000000000000000000000000000000000000
--- a/include/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-SUBDIRS = vorbis
diff --git a/include/vorbis/.cvsignore b/include/vorbis/.cvsignore
deleted file mode 100644
index 282522db0342d8750454b3dc162493b5fc709cc8..0000000000000000000000000000000000000000
--- a/include/vorbis/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/include/vorbis/Makefile.am b/include/vorbis/Makefile.am
deleted file mode 100644
index 794e8cdb2e8f6f875287825e13f97685173cd98d..0000000000000000000000000000000000000000
--- a/include/vorbis/Makefile.am
+++ /dev/null
@@ -1,9 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-includedir = $(prefix)/include/vorbis
-
-include_HEADERS = codec.h vorbisfile.h vorbisenc.h
-
-
diff --git a/include/vorbis/codec.h b/include/vorbis/codec.h
deleted file mode 100644
index 205cebc825d38b0e8658bfc372dfad45e93cb5ba..0000000000000000000000000000000000000000
--- a/include/vorbis/codec.h
+++ /dev/null
@@ -1,227 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: libvorbis codec headers
- last mod: $Id: codec.h,v 1.38 2001/05/27 06:43:59 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _vorbis_codec_h_
-#define _vorbis_codec_h_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#include
-
-typedef struct vorbis_info{
- int version;
- int channels;
- long rate;
-
- /* The below bitrate declarations are *hints*.
- Combinations of the three values carry the following implications:
-
- all three set to the same value:
- implies a fixed rate bitstream
- only nominal set:
- implies a VBR stream that averages the nominal bitrate. No hard
- upper/lower limit
- upper and or lower set:
- implies a VBR bitstream that obeys the bitrate limits. nominal
- may also be set to give a nominal rate.
- none set:
- the coder does not care to speculate.
- */
-
- long bitrate_upper;
- long bitrate_nominal;
- long bitrate_lower;
- long bitrate_window;
-
- void *codec_setup;
-} vorbis_info;
-
-/* vorbis_dsp_state buffers the current vorbis audio
- analysis/synthesis state. The DSP state belongs to a specific
- logical bitstream ****************************************************/
-typedef struct vorbis_dsp_state{
- int analysisp;
- vorbis_info *vi;
-
- float **pcm;
- float **pcmret;
- int pcm_storage;
- int pcm_current;
- int pcm_returned;
-
- int preextrapolate;
- int eofflag;
-
- long lW;
- long W;
- long nW;
- long centerW;
-
- ogg_int64_t granulepos;
- ogg_int64_t sequence;
-
- ogg_int64_t glue_bits;
- ogg_int64_t time_bits;
- ogg_int64_t floor_bits;
- ogg_int64_t res_bits;
-
- void *backend_state;
-} vorbis_dsp_state;
-
-typedef struct vorbis_block{
- /* necessary stream state for linking to the framing abstraction */
- float **pcm; /* this is a pointer into local storage */
- oggpack_buffer opb;
-
- long lW;
- long W;
- long nW;
- int pcmend;
- int mode;
-
- int eofflag;
- ogg_int64_t granulepos;
- ogg_int64_t sequence;
- vorbis_dsp_state *vd; /* For read-only access of configuration */
-
- /* local storage to avoid remallocing; it's up to the mapping to
- structure it */
- void *localstore;
- long localtop;
- long localalloc;
- long totaluse;
- struct alloc_chain *reap;
-
- /* bitmetrics for the frame */
- long glue_bits;
- long time_bits;
- long floor_bits;
- long res_bits;
-
- void *internal;
-
-} vorbis_block;
-
-/* vorbis_block is a single block of data to be processed as part of
-the analysis/synthesis stream; it belongs to a specific logical
-bitstream, but is independant from other vorbis_blocks belonging to
-that logical bitstream. *************************************************/
-
-struct alloc_chain{
- void *ptr;
- struct alloc_chain *next;
-};
-
-/* vorbis_info contains all the setup information specific to the
- specific compression/decompression mode in progress (eg,
- psychoacoustic settings, channel setup, options, codebook
- etc). vorbis_info and substructures are in backends.h.
-*********************************************************************/
-
-/* the comments are not part of vorbis_info so that vorbis_info can be
- static storage */
-typedef struct vorbis_comment{
- /* unlimited user comment fields. libvorbis writes 'libvorbis'
- whatever vendor is set to in encode */
- char **user_comments;
- int *comment_lengths;
- int comments;
- char *vendor;
-
-} vorbis_comment;
-
-
-/* libvorbis encodes in two abstraction layers; first we perform DSP
- and produce a packet (see docs/analysis.txt). The packet is then
- coded into a framed OggSquish bitstream by the second layer (see
- docs/framing.txt). Decode is the reverse process; we sync/frame
- the bitstream and extract individual packets, then decode the
- packet back into PCM audio.
-
- The extra framing/packetizing is used in streaming formats, such as
- files. Over the net (such as with UDP), the framing and
- packetization aren't necessary as they're provided by the transport
- and the streaming layer is not used */
-
-/* Vorbis PRIMITIVES: general ***************************************/
-
-extern void vorbis_info_init(vorbis_info *vi);
-extern void vorbis_info_clear(vorbis_info *vi);
-extern void vorbis_comment_init(vorbis_comment *vc);
-extern void vorbis_comment_add(vorbis_comment *vc, char *comment);
-extern void vorbis_comment_add_tag(vorbis_comment *vc,
- char *tag, char *contents);
-extern char *vorbis_comment_query(vorbis_comment *vc, char *tag, int count);
-extern int vorbis_comment_query_count(vorbis_comment *vc, char *tag);
-extern void vorbis_comment_clear(vorbis_comment *vc);
-
-extern int vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb);
-extern int vorbis_block_clear(vorbis_block *vb);
-extern void vorbis_dsp_clear(vorbis_dsp_state *v);
-
-/* Vorbis PRIMITIVES: analysis/DSP layer ****************************/
-
-extern int vorbis_analysis_init(vorbis_dsp_state *v,vorbis_info *vi);
-extern int vorbis_commentheader_out(vorbis_comment *vc, ogg_packet *op);
-extern int vorbis_analysis_headerout(vorbis_dsp_state *v,
- vorbis_comment *vc,
- ogg_packet *op,
- ogg_packet *op_comm,
- ogg_packet *op_code);
-extern float **vorbis_analysis_buffer(vorbis_dsp_state *v,int vals);
-extern int vorbis_analysis_wrote(vorbis_dsp_state *v,int vals);
-extern int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb);
-extern int vorbis_analysis(vorbis_block *vb,ogg_packet *op);
-
-/* Vorbis PRIMITIVES: synthesis layer *******************************/
-extern int vorbis_synthesis_headerin(vorbis_info *vi,vorbis_comment *vc,
- ogg_packet *op);
-
-extern int vorbis_synthesis_init(vorbis_dsp_state *v,vorbis_info *vi);
-extern int vorbis_synthesis(vorbis_block *vb,ogg_packet *op);
-extern int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb);
-extern int vorbis_synthesis_pcmout(vorbis_dsp_state *v,float ***pcm);
-extern int vorbis_synthesis_read(vorbis_dsp_state *v,int samples);
-extern long vorbis_packet_blocksize(vorbis_info *vi,ogg_packet *op);
-
-/* Vorbis ERRORS and return codes ***********************************/
-
-#define OV_FALSE -1
-#define OV_EOF -2
-#define OV_HOLE -3
-
-#define OV_EREAD -128
-#define OV_EFAULT -129
-#define OV_EIMPL -130
-#define OV_EINVAL -131
-#define OV_ENOTVORBIS -132
-#define OV_EBADHEADER -133
-#define OV_EVERSION -134
-#define OV_ENOTAUDIO -135
-#define OV_EBADPACKET -136
-#define OV_EBADLINK -137
-#define OV_ENOSEEK -138
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif
-
diff --git a/include/vorbis/vorbisenc.h b/include/vorbis/vorbisenc.h
deleted file mode 100644
index 90a6d3b97ebecc7bfe1f1bd403236ff687fbc35b..0000000000000000000000000000000000000000
--- a/include/vorbis/vorbisenc.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: vorbis encode-engine setup
- last mod: $Id: vorbisenc.h,v 1.5 2001/08/13 01:36:56 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _OV_ENC_H_
-#define _OV_ENC_H_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#include "codec.h"
-
-extern int vorbis_encode_init(vorbis_info *vi,
- long channels,
- long rate,
-
- long max_bitrate,
- long nominal_bitrate,
- long min_bitrate);
-
-extern int vorbis_encode_init_vbr(vorbis_info *vi,
- long channels,
- long rate,
-
- float /* quality level from 0. (lo) to 1. (hi) */
- );
-
-extern int vorbis_encode_ctl(vorbis_info *vi,int number,void *arg);
-
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif
-
-
diff --git a/include/vorbis/vorbisfile.h b/include/vorbis/vorbisfile.h
deleted file mode 100644
index ac07fd3fd6af51a60942ecbd149e9176d08d8d5c..0000000000000000000000000000000000000000
--- a/include/vorbis/vorbisfile.h
+++ /dev/null
@@ -1,129 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: stdio-based convenience library for opening/seeking/decoding
- last mod: $Id: vorbisfile.h,v 1.14 2001/05/27 06:43:59 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _OV_FILE_H_
-#define _OV_FILE_H_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#include
-#include "codec.h"
-
-/* The function prototypes for the callbacks are basically the same as for
- * the stdio functions fread, fseek, fclose, ftell.
- * The one difference is that the FILE * arguments have been replaced with
- * a void * - this is to be used as a pointer to whatever internal data these
- * functions might need. In the stdio case, it's just a FILE * cast to a void *
- *
- * If you use other functions, check the docs for these functions and return
- * the right values. For seek_func(), you *MUST* return -1 if the stream is
- * unseekable
- */
-typedef struct {
- size_t (*read_func) (void *ptr, size_t size, size_t nmemb, void *datasource);
- int (*seek_func) (void *datasource, ogg_int64_t offset, int whence);
- int (*close_func) (void *datasource);
- long (*tell_func) (void *datasource);
-} ov_callbacks;
-
-#define NOTOPEN 0
-#define PARTOPEN 1
-#define OPENED 2
-#define STREAMSET 3
-#define INITSET 4
-
-typedef struct OggVorbis_File {
- void *datasource; /* Pointer to a FILE *, etc. */
- int seekable;
- ogg_int64_t offset;
- ogg_int64_t end;
- ogg_sync_state oy;
-
- /* If the FILE handle isn't seekable (eg, a pipe), only the current
- stream appears */
- int links;
- ogg_int64_t *offsets;
- ogg_int64_t *dataoffsets;
- long *serialnos;
- ogg_int64_t *pcmlengths;
- vorbis_info *vi;
- vorbis_comment *vc;
-
- /* Decoding working state local storage */
- ogg_int64_t pcm_offset;
- int ready_state;
- long current_serialno;
- int current_link;
-
- double bittrack;
- double samptrack;
-
- ogg_stream_state os; /* take physical pages, weld into a logical
- stream of packets */
- vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
- vorbis_block vb; /* local working space for packet->PCM decode */
-
- ov_callbacks callbacks;
-
-} OggVorbis_File;
-
-extern int ov_clear(OggVorbis_File *vf);
-extern int ov_open(FILE *f,OggVorbis_File *vf,char *initial,long ibytes);
-extern int ov_open_callbacks(void *datasource, OggVorbis_File *vf,
- char *initial, long ibytes, ov_callbacks callbacks);
-
-extern int ov_test(FILE *f,OggVorbis_File *vf,char *initial,long ibytes);
-extern int ov_test_callbacks(void *datasource, OggVorbis_File *vf,
- char *initial, long ibytes, ov_callbacks callbacks);
-extern int ov_test_open(OggVorbis_File *vf);
-
-extern long ov_bitrate(OggVorbis_File *vf,int i);
-extern long ov_bitrate_instant(OggVorbis_File *vf);
-extern long ov_streams(OggVorbis_File *vf);
-extern long ov_seekable(OggVorbis_File *vf);
-extern long ov_serialnumber(OggVorbis_File *vf,int i);
-
-extern ogg_int64_t ov_raw_total(OggVorbis_File *vf,int i);
-extern ogg_int64_t ov_pcm_total(OggVorbis_File *vf,int i);
-extern double ov_time_total(OggVorbis_File *vf,int i);
-
-extern int ov_raw_seek(OggVorbis_File *vf,long pos);
-extern int ov_pcm_seek(OggVorbis_File *vf,ogg_int64_t pos);
-extern int ov_pcm_seek_page(OggVorbis_File *vf,ogg_int64_t pos);
-extern int ov_time_seek(OggVorbis_File *vf,double pos);
-extern int ov_time_seek_page(OggVorbis_File *vf,double pos);
-
-extern ogg_int64_t ov_raw_tell(OggVorbis_File *vf);
-extern ogg_int64_t ov_pcm_tell(OggVorbis_File *vf);
-extern double ov_time_tell(OggVorbis_File *vf);
-
-extern vorbis_info *ov_info(OggVorbis_File *vf,int link);
-extern vorbis_comment *ov_comment(OggVorbis_File *vf,int link);
-
-extern long ov_read(OggVorbis_File *vf,char *buffer,int length,
- int bigendianp,int word,int sgned,int *bitstream);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif
-
-
diff --git a/lib/.cvsignore b/lib/.cvsignore
deleted file mode 100644
index 0839b71df7aa44769f64a4c6192e563bdc5ae1cb..0000000000000000000000000000000000000000
--- a/lib/.cvsignore
+++ /dev/null
@@ -1,6 +0,0 @@
-*.la
-*.lo
-.libs
-.deps
-Makefile
-Makefile.in
diff --git a/lib/Makefile.am b/lib/Makefile.am
deleted file mode 100644
index 8751b1514d7ff491944c927cd481ee1077c6342a..0000000000000000000000000000000000000000
--- a/lib/Makefile.am
+++ /dev/null
@@ -1,43 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-SUBDIRS = modes books
-
-INCLUDES = -I$(top_srcdir)/include @OGG_CFLAGS@
-
-lib_LTLIBRARIES = libvorbis.la libvorbisfile.la libvorbisenc.la
-
-libvorbis_la_SOURCES = mdct.c smallft.c block.c envelope.c window.c lsp.c \
- lpc.c analysis.c synthesis.c psy.c info.c time0.c \
- floor1.c floor0.c\
- res0.c mapping0.c registry.c codebook.c sharedbook.c\
- lookup.c bitbuffer.c\
- envelope.h lpc.h lsp.h codebook.h misc.h psy.h\
- masking.h iir.h os.h mdct.h smallft.h\
- registry.h scales.h window.h lookup.h lookup_data.h\
- codec_internal.h backends.h bitbuffer.h
-libvorbis_la_LDFLAGS = -version-info @V_LIB_CURRENT@:@V_LIB_REVISION@:@V_LIB_AGE@
-
-libvorbisfile_la_SOURCES = vorbisfile.c
-libvorbisfile_la_LDFLAGS = -version-info @VF_LIB_CURRENT@:@VF_LIB_REVISION@:@VF_LIB_AGE@
-
-libvorbisenc_la_SOURCES = vorbisenc.c
-libvorbisenc_la_LDFLAGS = -version-info @VE_LIB_CURRENT@:@VE_LIB_REVISION@:@VE_LIB_AGE@
-
-EXTRA_PROGRAMS = barkmel tone psytune
-CLEANFILES = $(EXTRA_PROGRAMS)
-
-barkmel_SOURCES = barkmel.c
-tone_SOURCES = tone.c
-psytune_SOURCES = psytune.c
-psytune_LDFLAGS = -static
-psytune_LDADD = libvorbis.la
-
-EXTRA_DIST = lookups.pl iir.c
-
-debug:
- $(MAKE) all CFLAGS="@DEBUG@"
-
-profile:
- $(MAKE) all CFLAGS="@PROFILE@"
diff --git a/lib/analysis.c b/lib/analysis.c
deleted file mode 100644
index 700bc3bdb251a15fc5730090c4287388253de856..0000000000000000000000000000000000000000
--- a/lib/analysis.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: single-block PCM analysis mode dispatch
- last mod: $Id: analysis.c,v 1.46 2001/08/13 01:36:56 xiphmont Exp $
-
- ********************************************************************/
-
-#include
-#include
-#include
-#include
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-#include "registry.h"
-#include "scales.h"
-#include "os.h"
-
-int analysis_noisy=1;
-
-/* decides between modes, dispatches to the appropriate mapping. */
-int vorbis_analysis(vorbis_block *vb,ogg_packet *op){
- vorbis_dsp_state *vd=vb->vd;
- backend_lookup_state *b=vd->backend_state;
- vorbis_info *vi=vd->vi;
- codec_setup_info *ci=vi->codec_setup;
- int type,ret;
- int mode=0;
-
- vb->glue_bits=0;
- vb->time_bits=0;
- vb->floor_bits=0;
- vb->res_bits=0;
-
- /* first things first. Make sure encode is ready */
- oggpack_reset(&vb->opb);
- /* Encode the packet type */
- oggpack_write(&vb->opb,0,1);
-
- /* currently lazy. Short block dispatches to 0, long to 1. */
-
- if(vb->W &&ci->modes>1)mode=1;
- type=ci->map_type[ci->mode_param[mode]->mapping];
- vb->mode=mode;
-
- /* Encode frame mode, pre,post windowsize, then dispatch */
- oggpack_write(&vb->opb,mode,b->modebits);
- if(vb->W){
- oggpack_write(&vb->opb,vb->lW,1);
- oggpack_write(&vb->opb,vb->nW,1);
- /*fprintf(stderr,"*");
- }else{
- fprintf(stderr,".");*/
- }
-
- if((ret=_mapping_P[type]->forward(vb,b->mode[mode])))
- return(ret);
-
- /* set up the packet wrapper */
-
- op->packet=oggpack_get_buffer(&vb->opb);
- op->bytes=oggpack_bytes(&vb->opb);
- op->b_o_s=0;
- op->e_o_s=vb->eofflag;
- op->granulepos=vb->granulepos;
- op->packetno=vb->sequence; /* for sake of completeness */
-
- return(0);
-}
-
-/* there was no great place to put this.... */
-void _analysis_output_always(char *base,int i,float *v,int n,int bark,int dB){
- int j;
- FILE *of;
- char buffer[80];
-
- /* if(i==5870){*/
- sprintf(buffer,"%s_%d.m",base,i);
- of=fopen(buffer,"w");
-
- if(!of)perror("failed to open data dump file");
-
- for(j=0;j
-#include "scales.h"
-int main(){
- int i;
- double rate;
- for(i=64;i<32000;i*=2){
- rate=48000.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=44100.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=32000.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=22050.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=16000.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=11025.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=8000.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
-
- }
- {
- float i;
- int j;
- for(i=0.,j=0;i<28;i+=1,j++){
- fprintf(stderr,"(%d) bark=%f %gHz (%d of 128)\n",
- j,i,fromBARK(i),(int)(fromBARK(i)/22050.*128.));
- }
- }
- return(0);
-}
-
diff --git a/lib/bitbuffer.c b/lib/bitbuffer.c
deleted file mode 100644
index 605804432111345a16a0baa904bf769c2ce764e4..0000000000000000000000000000000000000000
--- a/lib/bitbuffer.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: flexible, delayed bitpacking abstraction
- last mod: $Id: bitbuffer.c,v 1.5 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-#include
-#include
-#include
-#include "misc.h"
-#include "bitbuffer.h"
-
-/* done carefully to do two things:
- 1) no realloc
- 2) draws from our exact-size vorbis_block pool
-*/
-
-void bitbuf_init(vorbis_bitbuffer *vbb,vorbis_block *vb){
- memset(vbb,0,sizeof(vorbis_bitbuffer));
- vbb->vb=vb;
- vbb->first=vbb->last=_vorbis_block_alloc(vb,sizeof(vorbis_bitbuffer_chain));
- vbb->first->next=0; /* overengineering */
-}
-
-void bitbuf_write(vorbis_bitbuffer *vbb,unsigned long word,int length){
- vorbis_block *vb=vbb->vb;
- if(vbb->ptr>=_VBB_ALLOCSIZE){
- vbb->last->next=_vorbis_block_alloc(vb,sizeof(vorbis_bitbuffer_chain));
- vbb->last=vbb->last->next;
- vbb->last->next=0; /* overengineering */
- vbb->ptr=0;
- }
- vbb->last->words[vbb->ptr]=word;
- vbb->last->bits[vbb->ptr++]=length;
-}
-
-void bitbuf_pack(oggpack_buffer *dest,vorbis_bitbuffer *vbb){
- vorbis_bitbuffer_chain *vbc=vbb->first;
- int i;
-
- while(vbc->next){
- for(i=0;i<_VBB_ALLOCSIZE;i++)
- oggpack_write(dest,vbc->words[i],vbc->bits[i]);
- vbc=vbc->next;
- }
- for(i=0;iptr;i++)
- oggpack_write(dest,vbc->words[i],vbc->bits[i]);
-}
-
-/* codebook variants for encoding to the bitbuffer */
-
-int vorbis_book_bufencode(codebook *book, int a, vorbis_bitbuffer *b){
- bitbuf_write(b,book->codelist[a],book->c->lengthlist[a]);
- return(book->c->lengthlist[a]);
-}
-
diff --git a/lib/bitbuffer.h b/lib/bitbuffer.h
deleted file mode 100644
index 3d21baa417dd31d0471ee5fa854ba5c7e78f51ab..0000000000000000000000000000000000000000
--- a/lib/bitbuffer.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: flexible, delayed bitpacking abstraction
- last mod: $Id: bitbuffer.h,v 1.3 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_BITBUF_
-#define _V_BITBUF_
-
-#include "codebook.h"
-
-#define _VBB_ALLOCSIZE 128
-typedef struct vorbis_bitbuffer_chain{
- ogg_uint32_t words[_VBB_ALLOCSIZE];
- int bits[_VBB_ALLOCSIZE];
- struct vorbis_bitbuffer_chain *next;
-} vorbis_bitbuffer_chain;
-
-typedef struct vorbis_bitbuffer{
- long ptr;
- vorbis_bitbuffer_chain *first;
- vorbis_bitbuffer_chain *last;
- vorbis_block *vb;
-} vorbis_bitbuffer;
-
-void bitbuf_init(vorbis_bitbuffer *vbb,vorbis_block *vb);
-extern void bitbuf_write(vorbis_bitbuffer *vbb,unsigned long word,int length);
-extern void bitbuf_pack(oggpack_buffer *dest,vorbis_bitbuffer *source);
-
-
-extern int vorbis_book_bufencode(codebook *book, int a, vorbis_bitbuffer *b);
-
-#endif
diff --git a/lib/block.c b/lib/block.c
deleted file mode 100644
index a5b8bfe5cb6a8b1668e0db17abae8e43f1524bd5..0000000000000000000000000000000000000000
--- a/lib/block.c
+++ /dev/null
@@ -1,810 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: PCM data vector blocking, windowing and dis/reassembly
- last mod: $Id: block.c,v 1.49 2001/08/13 01:36:56 xiphmont Exp $
-
- Handle windowing, overlap-add, etc of the PCM vectors. This is made
- more amusing by Vorbis' current two allowed block sizes.
-
- ********************************************************************/
-
-#include
-#include
-#include
-#include
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-
-#include "window.h"
-#include "envelope.h"
-#include "mdct.h"
-#include "lpc.h"
-#include "registry.h"
-#include "codebook.h"
-#include "misc.h"
-#include "os.h"
-#include "psy.h"
-
-static int ilog2(unsigned int v){
- int ret=0;
- while(v>1){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-/* pcm accumulator examples (not exhaustive):
-
- <-------------- lW ---------------->
- <--------------- W ---------------->
-: .....|..... _______________ |
-: .''' | '''_--- | |\ |
-:.....''' |_____--- '''......| | \_______|
-:.................|__________________|_______|__|______|
- |<------ Sl ------>| > Sr < |endW
- |beginSl |endSl | |endSr
- |beginW |endlW |beginSr
-
-
- |< lW >|
- <--------------- W ---------------->
- | | .. ______________ |
- | | ' `/ | ---_ |
- |___.'___/`. | ---_____|
- |_______|__|_______|_________________|
- | >|Sl|< |<------ Sr ----->|endW
- | | |endSl |beginSr |endSr
- |beginW | |endlW
- mult[0] |beginSl mult[n]
-
- <-------------- lW ----------------->
- |<--W-->|
-: .............. ___ | |
-: .''' |`/ \ | |
-:.....''' |/`....\|...|
-:.........................|___|___|___|
- |Sl |Sr |endW
- | | |endSr
- | |beginSr
- | |endSl
- |beginSl
- |beginW
-*/
-
-/* block abstraction setup *********************************************/
-
-#ifndef WORD_ALIGN
-#define WORD_ALIGN 8
-#endif
-
-int vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb){
- memset(vb,0,sizeof(vorbis_block));
- vb->vd=v;
- vb->localalloc=0;
- vb->localstore=NULL;
- if(v->analysisp){
- oggpack_writeinit(&vb->opb);
- vb->internal=_ogg_calloc(1,sizeof(vorbis_block_internal));
- ((vorbis_block_internal *)vb->internal)->ampmax=-9999;
- }
-
- return(0);
-}
-
-void *_vorbis_block_alloc(vorbis_block *vb,long bytes){
- bytes=(bytes+(WORD_ALIGN-1)) & ~(WORD_ALIGN-1);
- if(bytes+vb->localtop>vb->localalloc){
- /* can't just _ogg_realloc... there are outstanding pointers */
- if(vb->localstore){
- struct alloc_chain *link=_ogg_malloc(sizeof(struct alloc_chain));
- vb->totaluse+=vb->localtop;
- link->next=vb->reap;
- link->ptr=vb->localstore;
- vb->reap=link;
- }
- /* highly conservative */
- vb->localalloc=bytes;
- vb->localstore=_ogg_malloc(vb->localalloc);
- vb->localtop=0;
- }
- {
- void *ret=(void *)(((char *)vb->localstore)+vb->localtop);
- vb->localtop+=bytes;
- return ret;
- }
-}
-
-/* reap the chain, pull the ripcord */
-void _vorbis_block_ripcord(vorbis_block *vb){
- /* reap the chain */
- struct alloc_chain *reap=vb->reap;
- while(reap){
- struct alloc_chain *next=reap->next;
- _ogg_free(reap->ptr);
- memset(reap,0,sizeof(struct alloc_chain));
- _ogg_free(reap);
- reap=next;
- }
- /* consolidate storage */
- if(vb->totaluse){
- vb->localstore=_ogg_realloc(vb->localstore,vb->totaluse+vb->localalloc);
- vb->localalloc+=vb->totaluse;
- vb->totaluse=0;
- }
-
- /* pull the ripcord */
- vb->localtop=0;
- vb->reap=NULL;
-}
-
-int vorbis_block_clear(vorbis_block *vb){
- if(vb->vd)
- if(vb->vd->analysisp)
- oggpack_writeclear(&vb->opb);
- _vorbis_block_ripcord(vb);
- if(vb->localstore)_ogg_free(vb->localstore);
- if(vb->internal)_ogg_free(vb->internal);
-
- memset(vb,0,sizeof(vorbis_block));
- return(0);
-}
-
-/* Analysis side code, but directly related to blocking. Thus it's
- here and not in analysis.c (which is for analysis transforms only).
- The init is here because some of it is shared */
-
-static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
- int i;
- codec_setup_info *ci=vi->codec_setup;
- backend_lookup_state *b=NULL;
-
- memset(v,0,sizeof(vorbis_dsp_state));
- b=v->backend_state=_ogg_calloc(1,sizeof(backend_lookup_state));
-
- v->vi=vi;
- b->modebits=ilog2(ci->modes);
-
- b->transform[0]=_ogg_calloc(VI_TRANSFORMB,sizeof(vorbis_look_transform *));
- b->transform[1]=_ogg_calloc(VI_TRANSFORMB,sizeof(vorbis_look_transform *));
-
- /* MDCT is tranform 0 */
-
- b->transform[0][0]=_ogg_calloc(1,sizeof(mdct_lookup));
- b->transform[1][0]=_ogg_calloc(1,sizeof(mdct_lookup));
- mdct_init(b->transform[0][0],ci->blocksizes[0]);
- mdct_init(b->transform[1][0],ci->blocksizes[1]);
-
- b->window[0][0][0]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
- b->window[0][0][1]=b->window[0][0][0];
- b->window[0][1][0]=b->window[0][0][0];
- b->window[0][1][1]=b->window[0][0][0];
- b->window[1][0][0]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
- b->window[1][0][1]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
- b->window[1][1][0]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
- b->window[1][1][1]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
-
- for(i=0;iwindow[0][0][0][i]=
- _vorbis_window(i,ci->blocksizes[0],ci->blocksizes[0]/2,ci->blocksizes[0]/2);
- b->window[1][0][0][i]=
- _vorbis_window(i,ci->blocksizes[1],ci->blocksizes[0]/2,ci->blocksizes[0]/2);
- b->window[1][0][1][i]=
- _vorbis_window(i,ci->blocksizes[1],ci->blocksizes[0]/2,ci->blocksizes[1]/2);
- b->window[1][1][0][i]=
- _vorbis_window(i,ci->blocksizes[1],ci->blocksizes[1]/2,ci->blocksizes[0]/2);
- b->window[1][1][1][i]=
- _vorbis_window(i,ci->blocksizes[1],ci->blocksizes[1]/2,ci->blocksizes[1]/2);
- }
-
- if(encp){ /* encode/decode differ here */
- /* finish the codebooks */
- b->fullbooks=_ogg_calloc(ci->books,sizeof(codebook));
- for(i=0;ibooks;i++)
- vorbis_book_init_encode(b->fullbooks+i,ci->book_param[i]);
- v->analysisp=1;
- }else{
- /* finish the codebooks */
- b->fullbooks=_ogg_calloc(ci->books,sizeof(codebook));
- for(i=0;ibooks;i++)
- vorbis_book_init_decode(b->fullbooks+i,ci->book_param[i]);
- }
-
- /* initialize the storage vectors to a decent size greater than the
- minimum */
-
- v->pcm_storage=8192; /* we'll assume later that we have
- a minimum of twice the blocksize of
- accumulated samples in analysis */
- v->pcm=_ogg_malloc(vi->channels*sizeof(float *));
- v->pcmret=_ogg_malloc(vi->channels*sizeof(float *));
- {
- int i;
- for(i=0;ichannels;i++)
- v->pcm[i]=_ogg_calloc(v->pcm_storage,sizeof(float));
- }
-
- /* all 1 (large block) or 0 (small block) */
- /* explicitly set for the sake of clarity */
- v->lW=0; /* previous window size */
- v->W=0; /* current window size */
-
- /* all vector indexes */
- v->centerW=ci->blocksizes[1]/2;
-
- v->pcm_current=v->centerW;
-
- /* initialize all the mapping/backend lookups */
- b->mode=_ogg_calloc(ci->modes,sizeof(vorbis_look_mapping *));
- for(i=0;imodes;i++){
- int mapnum=ci->mode_param[i]->mapping;
- int maptype=ci->map_type[mapnum];
- b->mode[i]=_mapping_P[maptype]->look(v,ci->mode_param[i],
- ci->map_param[mapnum]);
- }
-
- return(0);
-}
-
-/* arbitrary settings and spec-mandated numbers get filled in here */
-int vorbis_analysis_init(vorbis_dsp_state *v,vorbis_info *vi){
- backend_lookup_state *b=NULL;
-
- _vds_shared_init(v,vi,1);
- b=v->backend_state;
- b->psy_g_look=_vp_global_look(vi);
-
- /* Initialize the envelope state storage */
- b->ve=_ogg_calloc(1,sizeof(envelope_lookup));
- _ve_envelope_init(b->ve,vi);
- return(0);
-}
-
-void vorbis_dsp_clear(vorbis_dsp_state *v){
- int i,j,k;
- if(v){
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=(vi?vi->codec_setup:NULL);
- backend_lookup_state *b=v->backend_state;
-
- if(b){
- if(b->window[0][0][0]){
- for(i=0;iwindow[0][0][0][i])_ogg_free(b->window[0][0][0][i]);
- _ogg_free(b->window[0][0][0]);
-
- for(j=0;j<2;j++)
- for(k=0;k<2;k++){
- for(i=0;iwindow[1][j][k][i])_ogg_free(b->window[1][j][k][i]);
- _ogg_free(b->window[1][j][k]);
- }
- }
-
- if(b->ve){
- _ve_envelope_clear(b->ve);
- _ogg_free(b->ve);
- }
-
- if(b->transform[0]){
- mdct_clear(b->transform[0][0]);
- _ogg_free(b->transform[0][0]);
- _ogg_free(b->transform[0]);
- }
- if(b->transform[1]){
- mdct_clear(b->transform[1][0]);
- _ogg_free(b->transform[1][0]);
- _ogg_free(b->transform[1]);
- }
- if(b->psy_g_look)_vp_global_free(b->psy_g_look);
-
- }
-
- if(v->pcm){
- for(i=0;ichannels;i++)
- if(v->pcm[i])_ogg_free(v->pcm[i]);
- _ogg_free(v->pcm);
- if(v->pcmret)_ogg_free(v->pcmret);
- }
-
- /* free mode lookups; these are actually vorbis_look_mapping structs */
- if(ci){
- for(i=0;imodes;i++){
- int mapnum=ci->mode_param[i]->mapping;
- int maptype=ci->map_type[mapnum];
- if(b && b->mode)_mapping_P[maptype]->free_look(b->mode[i]);
- }
- /* free codebooks */
- for(i=0;ibooks;i++)
- if(b && b->fullbooks)vorbis_book_clear(b->fullbooks+i);
- }
-
- if(b){
- if(b->mode)_ogg_free(b->mode);
- if(b->fullbooks)_ogg_free(b->fullbooks);
-
- /* free header, header1, header2 */
- if(b->header)_ogg_free(b->header);
- if(b->header1)_ogg_free(b->header1);
- if(b->header2)_ogg_free(b->header2);
- _ogg_free(b);
- }
-
- memset(v,0,sizeof(vorbis_dsp_state));
- }
-}
-
-float **vorbis_analysis_buffer(vorbis_dsp_state *v, int vals){
- int i;
- vorbis_info *vi=v->vi;
- backend_lookup_state *b=v->backend_state;
-
- /* free header, header1, header2 */
- if(b->header)_ogg_free(b->header);b->header=NULL;
- if(b->header1)_ogg_free(b->header1);b->header1=NULL;
- if(b->header2)_ogg_free(b->header2);b->header2=NULL;
-
- /* Do we have enough storage space for the requested buffer? If not,
- expand the PCM (and envelope) storage */
-
- if(v->pcm_current+vals>=v->pcm_storage){
- v->pcm_storage=v->pcm_current+vals*2;
-
- for(i=0;ichannels;i++){
- v->pcm[i]=_ogg_realloc(v->pcm[i],v->pcm_storage*sizeof(float));
- }
- }
-
- for(i=0;ichannels;i++)
- v->pcmret[i]=v->pcm[i]+v->pcm_current;
-
- return(v->pcmret);
-}
-
-static void _preextrapolate_helper(vorbis_dsp_state *v){
- int i;
- int order=32;
- float *lpc=alloca(order*sizeof(float));
- float *work=alloca(v->pcm_current*sizeof(float));
- long j;
- v->preextrapolate=1;
-
- if(v->pcm_current-v->centerW>order*2){ /* safety */
- for(i=0;ivi->channels;i++){
-
- /* need to run the extrapolation in reverse! */
- for(j=0;jpcm_current;j++)
- work[j]=v->pcm[i][v->pcm_current-j-1];
-
- /* prime as above */
- vorbis_lpc_from_data(work,lpc,v->pcm_current-v->centerW,order);
-
- /* run the predictor filter */
- vorbis_lpc_predict(lpc,work+v->pcm_current-v->centerW-order,
- order,
- work+v->pcm_current-v->centerW,
- v->centerW);
- for(j=0;jpcm_current;j++)
- v->pcm[i][v->pcm_current-j-1]=work[j];
- }
- }
-}
-
-
-/* call with val<=0 to set eof */
-
-int vorbis_analysis_wrote(vorbis_dsp_state *v, int vals){
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=vi->codec_setup;
- /*backend_lookup_state *b=v->backend_state;*/
-
- if(vals<=0){
- int order=32;
- int i;
- float *lpc=alloca(order*sizeof(float));
-
- /* if it wasn't done earlier (very short sample) */
- if(!v->preextrapolate)
- _preextrapolate_helper(v);
-
- /* We're encoding the end of the stream. Just make sure we have
- [at least] a full block of zeroes at the end. */
- /* actually, we don't want zeroes; that could drop a large
- amplitude off a cliff, creating spread spectrum noise that will
- suck to encode. Extrapolate for the sake of cleanliness. */
-
- vorbis_analysis_buffer(v,ci->blocksizes[1]*2);
- v->eofflag=v->pcm_current;
- v->pcm_current+=ci->blocksizes[1]*2;
-
- for(i=0;ichannels;i++){
- if(v->eofflag>order*2){
- /* extrapolate with LPC to fill in */
- long n;
-
- /* make a predictor filter */
- n=v->eofflag;
- if(n>ci->blocksizes[1])n=ci->blocksizes[1];
- vorbis_lpc_from_data(v->pcm[i]+v->eofflag-n,lpc,n,order);
-
- /* run the predictor filter */
- vorbis_lpc_predict(lpc,v->pcm[i]+v->eofflag-order,order,
- v->pcm[i]+v->eofflag,v->pcm_current-v->eofflag);
- }else{
- /* not enough data to extrapolate (unlikely to happen due to
- guarding the overlap, but bulletproof in case that
- assumtion goes away). zeroes will do. */
- memset(v->pcm[i]+v->eofflag,0,
- (v->pcm_current-v->eofflag)*sizeof(float));
-
- }
- }
- }else{
-
- if(v->pcm_current+vals>v->pcm_storage)
- return(OV_EINVAL);
-
- v->pcm_current+=vals;
-
- /* we may want to reverse extrapolate the beginning of a stream
- too... in case we're beginning on a cliff! */
- /* clumsy, but simple. It only runs once, so simple is good. */
- if(!v->preextrapolate && v->pcm_current-v->centerW>ci->blocksizes[1])
- _preextrapolate_helper(v);
-
- }
- return(0);
-}
-
-/* do the deltas, envelope shaping, pre-echo and determine the size of
- the next block on which to continue analysis */
-int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb){
- int i;
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=vi->codec_setup;
- backend_lookup_state *b=v->backend_state;
- vorbis_look_psy_global *g=b->psy_g_look;
- vorbis_info_psy_global *gi=ci->psy_g_param;
- long beginW=v->centerW-ci->blocksizes[v->W]/2,centerNext;
-
- /* check to see if we're started... */
- if(!v->preextrapolate)return(0);
-
- /* check to see if we're done... */
- if(v->eofflag==-1)return(0);
-
- /* By our invariant, we have lW, W and centerW set. Search for
- the next boundary so we can determine nW (the next window size)
- which lets us compute the shape of the current block's window */
-
- if(ci->blocksizes[0]blocksizes[1]){
- long largebound;
- long bp;
-
- if(v->W)
- /* min boundary; nW large, next small */
- largebound=v->centerW+ci->blocksizes[1]*3/4+ci->blocksizes[0]/4;
- else
- /* min boundary; nW large, next small */
- largebound=v->centerW+ci->blocksizes[1]/2+ci->blocksizes[0]/2;
-
- bp=_ve_envelope_search(v,largebound);
- if(bp==-1)return(0); /* not enough data currently to search for a
- full long block */
- v->nW=bp;
-
- }else
- v->nW=0;
-
- centerNext=v->centerW+ci->blocksizes[v->W]/4+ci->blocksizes[v->nW]/4;
-
- {
- /* center of next block + next block maximum right side. */
-
- long blockbound=centerNext+ci->blocksizes[v->nW]/2;
- if(v->pcm_currentW){
- vb->lW=v->lW;
- vb->W=v->W;
- vb->nW=v->nW;
- }else{
- vb->lW=0;
- vb->W=v->W;
- vb->nW=0;
- }
- vb->vd=v;
- vb->sequence=v->sequence;
- vb->granulepos=v->granulepos;
- vb->pcmend=ci->blocksizes[v->W];
-
-
- /* copy the vectors; this uses the local storage in vb */
- {
- vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal;
-
- /* this tracks 'strongest peak' for later psychoacoustics */
- /* moved to the global psy state; clean this mess up */
- if(vbi->ampmax>g->ampmax)g->ampmax=vbi->ampmax;
- g->ampmax=_vp_ampmax_decay(g->ampmax,v);
- vbi->ampmax=g->ampmax;
-
- vb->pcm=_vorbis_block_alloc(vb,sizeof(float *)*vi->channels);
- vbi->pcmdelay=_vorbis_block_alloc(vb,sizeof(float *)*vi->channels);
- for(i=0;ichannels;i++){
- vbi->pcmdelay[i]=
- _vorbis_block_alloc(vb,(vb->pcmend+beginW)*sizeof(float));
- memcpy(vbi->pcmdelay[i],v->pcm[i],(vb->pcmend+beginW)*sizeof(float));
- vb->pcm[i]=vbi->pcmdelay[i]+beginW;
-
- /* before we added the delay
- vb->pcm[i]=_vorbis_block_alloc(vb,vb->pcmend*sizeof(float));
- memcpy(vb->pcm[i],v->pcm[i]+beginW,ci->blocksizes[v->W]*sizeof(float));
- */
-
- }
- }
-
- /* handle eof detection: eof==0 means that we've not yet received EOF
- eof>0 marks the last 'real' sample in pcm[]
- eof<0 'no more to do'; doesn't get here */
-
- if(v->eofflag){
- if(v->centerW>=v->eofflag){
- v->eofflag=-1;
- vb->eofflag=1;
- return(1);
- }
- }
-
- /* advance storage vectors and clean up */
- {
- int new_centerNext=ci->blocksizes[1]/2+gi->delaycache;
- int movementW=centerNext-new_centerNext;
-
- if(movementW>0){
-
- _ve_envelope_shift(b->ve,movementW);
- v->pcm_current-=movementW;
-
- for(i=0;ichannels;i++)
- memmove(v->pcm[i],v->pcm[i]+movementW,
- v->pcm_current*sizeof(float));
-
-
- v->lW=v->W;
- v->W=v->nW;
- v->centerW=new_centerNext;
-
- v->sequence++;
-
- if(v->eofflag){
- v->eofflag-=movementW;
- /* do not add padding to end of stream! */
- if(v->centerW>=v->eofflag){
- v->granulepos+=movementW-(v->centerW-v->eofflag);
- }else{
- v->granulepos+=movementW;
- }
- }else{
- v->granulepos+=movementW;
- }
- }
- }
-
- /* done */
- return(1);
-}
-
-int vorbis_synthesis_init(vorbis_dsp_state *v,vorbis_info *vi){
- _vds_shared_init(v,vi,0);
-
- v->pcm_returned=-1;
- v->granulepos=-1;
- v->sequence=-1;
-
- return(0);
-}
-
-/* Unlike in analysis, the window is only partially applied for each
- block. The time domain envelope is not yet handled at the point of
- calling (as it relies on the previous block). */
-
-int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb){
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=vi->codec_setup;
-
- /* Shift out any PCM that we returned previously */
- /* centerW is currently the center of the last block added */
-
- if(v->centerW>ci->blocksizes[1]/2 &&
- /* Quick additional hack; to avoid *alot* of shifts, use an
- oversized buffer. This increases memory usage, but doesn't make
- much difference wrt L1/L2 cache pressure. */
- v->pcm_returned>8192){
-
- /* don't shift too much; we need to have a minimum PCM buffer of
- 1/2 long block */
-
- int shiftPCM=v->centerW-ci->blocksizes[1]/2;
- shiftPCM=(v->pcm_returnedpcm_returned:shiftPCM);
-
- v->pcm_current-=shiftPCM;
- v->centerW-=shiftPCM;
- v->pcm_returned-=shiftPCM;
-
- if(shiftPCM){
- int i;
- for(i=0;ichannels;i++)
- memmove(v->pcm[i],v->pcm[i]+shiftPCM,
- v->pcm_current*sizeof(float));
- }
- }
-
- v->lW=v->W;
- v->W=vb->W;
- v->nW=-1;
-
- v->glue_bits+=vb->glue_bits;
- v->time_bits+=vb->time_bits;
- v->floor_bits+=vb->floor_bits;
- v->res_bits+=vb->res_bits;
-
- if(v->sequence+1 != vb->sequence)v->granulepos=-1; /* out of sequence;
- lose count */
-
- v->sequence=vb->sequence;
-
- {
- int sizeW=ci->blocksizes[v->W];
- int centerW=v->centerW+ci->blocksizes[v->lW]/4+sizeW/4;
- int beginW=centerW-sizeW/2;
- int endW=beginW+sizeW;
- int beginSl;
- int endSl;
- int i,j;
-
- /* Do we have enough PCM/mult storage for the block? */
- if(endW>v->pcm_storage){
- /* expand the storage */
- v->pcm_storage=endW+ci->blocksizes[1];
-
- for(i=0;ichannels;i++)
- v->pcm[i]=_ogg_realloc(v->pcm[i],v->pcm_storage*sizeof(float));
- }
-
- /* overlap/add PCM */
-
- switch(v->W){
- case 0:
- beginSl=0;
- endSl=ci->blocksizes[0]/2;
- break;
- case 1:
- beginSl=ci->blocksizes[1]/4-ci->blocksizes[v->lW]/4;
- endSl=beginSl+ci->blocksizes[v->lW]/2;
- break;
- default:
- return(-1);
- }
-
- for(j=0;jchannels;j++){
- static int seq=0;
- float *pcm=v->pcm[j]+beginW;
- float *p=vb->pcm[j];
-
- /* the overlap/add section */
- for(i=beginSl;ipcm[j],sizeW+beginW,0,0);
-
- }
-
- /* deal with initial packet state; we do this using the explicit
- pcm_returned==-1 flag otherwise we're sensitive to first block
- being short or long */
-
- if(v->pcm_returned==-1)
- v->pcm_returned=centerW;
-
- /* track the frame number... This is for convenience, but also
- making sure our last packet doesn't end with added padding. If
- the last packet is partial, the number of samples we'll have to
- return will be past the vb->granulepos.
-
- This is not foolproof! It will be confused if we begin
- decoding at the last page after a seek or hole. In that case,
- we don't have a starting point to judge where the last frame
- is. For this reason, vorbisfile will always try to make sure
- it reads the last two marked pages in proper sequence */
-
- if(v->granulepos==-1)
- if(vb->granulepos==-1){
- v->granulepos=0;
- }else{
- v->granulepos=vb->granulepos;
- }
- else{
- v->granulepos+=(centerW-v->centerW);
- if(vb->granulepos!=-1 && v->granulepos!=vb->granulepos){
-
- if(v->granulepos>vb->granulepos){
- long extra=v->granulepos-vb->granulepos;
-
- if(vb->eofflag){
- /* partial last frame. Strip the extra samples off */
- centerW-=extra;
- }else if(vb->sequence == 1){
- /* ^^^ argh, this can be 1 from seeking! */
-
-
- /* partial first frame. Discard extra leading samples */
- v->pcm_returned+=extra;
- if(v->pcm_returned>centerW)v->pcm_returned=centerW;
-
- }
-
- }/* else{ Shouldn't happen *unless* the bitstream is out of
- spec. Either way, believe the bitstream } */
- v->granulepos=vb->granulepos;
- }
- }
-
- /* Update, cleanup */
-
- v->centerW=centerW;
- v->pcm_current=endW;
-
- if(vb->eofflag)v->eofflag=1;
- }
-
- return(0);
-}
-
-/* pcm==NULL indicates we just want the pending samples, no more */
-int vorbis_synthesis_pcmout(vorbis_dsp_state *v,float ***pcm){
- vorbis_info *vi=v->vi;
- if(v->pcm_returned>-1 && v->pcm_returnedcenterW){
- if(pcm){
- int i;
- for(i=0;ichannels;i++)
- v->pcmret[i]=v->pcm[i]+v->pcm_returned;
- *pcm=v->pcmret;
- }
- return(v->centerW-v->pcm_returned);
- }
- return(0);
-}
-
-int vorbis_synthesis_read(vorbis_dsp_state *v,int bytes){
- if(bytes && v->pcm_returned+bytes>v->centerW)return(OV_EINVAL);
- v->pcm_returned+=bytes;
- return(0);
-}
-
diff --git a/lib/books/.cvsignore b/lib/books/.cvsignore
deleted file mode 100644
index 282522db0342d8750454b3dc162493b5fc709cc8..0000000000000000000000000000000000000000
--- a/lib/books/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/lib/books/Makefile b/lib/books/Makefile
deleted file mode 100644
index 3d2440383fc361ffa217b497fc70bec1f755a883..0000000000000000000000000000000000000000
--- a/lib/books/Makefile
+++ /dev/null
@@ -1,202 +0,0 @@
-# Generated automatically from Makefile.in by configure.
-# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am
-
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-
-SHELL = /bin/sh
-
-srcdir = .
-top_srcdir = ../..
-prefix = /usr/local
-exec_prefix = ${prefix}
-
-bindir = ${exec_prefix}/bin
-sbindir = ${exec_prefix}/sbin
-libexecdir = ${exec_prefix}/libexec
-datadir = ${prefix}/share
-sysconfdir = ${prefix}/etc
-sharedstatedir = ${prefix}/com
-localstatedir = ${prefix}/var
-libdir = ${exec_prefix}/lib
-infodir = ${prefix}/info
-mandir = ${prefix}/man
-includedir = ${prefix}/include
-oldincludedir = /usr/include
-
-DESTDIR =
-
-pkgdatadir = $(datadir)/libvorbis
-pkglibdir = $(libdir)/libvorbis
-pkgincludedir = $(includedir)/libvorbis
-
-top_builddir = ../..
-
-ACLOCAL = aclocal
-AUTOCONF = autoconf
-AUTOMAKE = automake
-AUTOHEADER = autoheader
-
-INSTALL = /usr/bin/install -c
-INSTALL_PROGRAM = ${INSTALL} $(AM_INSTALL_PROGRAM_FLAGS)
-INSTALL_DATA = ${INSTALL} -m 644
-INSTALL_SCRIPT = ${INSTALL_PROGRAM}
-transform = s,x,x,
-
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-host_alias = powerpc-unknown-linux-gnu
-host_triplet = powerpc-unknown-linux-gnu
-AS = @AS@
-CC = gcc
-CPP = gcc -E
-DEBUG = -g -Wall -D_REENTRANT -D__NO_MATH_INLINES -fsigned-char
-DLLTOOL = @DLLTOOL@
-ECHO = echo
-EXEEXT =
-LIBTOOL = $(SHELL) $(top_builddir)/libtool
-LN_S = ln -s
-MAKEINFO = makeinfo
-OBJDUMP = @OBJDUMP@
-OBJEXT = o
-OGG_CFLAGS = -I/include
-OGG_LIBS = -L/lib -logg
-PACKAGE = libvorbis
-PROFILE = -pg -g -O20 -ffast-math -D_REENTRANT -fsigned-char
-RANLIB = ranlib
-STRIP = strip
-VERSION = 1.0beta4
-VE_LIB_AGE = 0
-VE_LIB_CURRENT = 0
-VE_LIB_REVISION = 1
-VF_LIB_AGE = 0
-VF_LIB_CURRENT = 0
-VF_LIB_REVISION = 1
-V_LIB_AGE = 0
-V_LIB_CURRENT = 0
-V_LIB_REVISION = 1
-pthread_lib = -lpthread
-
-AUTOMAKE_OPTIONS = foreign
-
-EXTRA_DIST = lsp12_0.vqh lsp12_1.vqh lsp30_0.vqh lsp30_1.vqh lsp9_0.vqh lsp9_1.vqh res0_128_1024_1.vqh res0_128_1024_2.vqh res0_128_1024_3.vqh res0_128_1024_4.vqh res0_128_1024_5.vqh res0_128_1024_6.vqh res0_128_1024_7.vqh res0_128_1024_8.vqh res0_128_1024_9.vqh res0_128_1024aux.vqh res0_128_128_1.vqh res0_128_128_2.vqh res0_128_128_3.vqh res0_128_128_4.vqh res0_128_128_5.vqh res0_128_128aux.vqh res0_160_1024_1.vqh res0_160_1024_2.vqh res0_160_1024_3.vqh res0_160_1024_4.vqh res0_160_1024_5.vqh res0_160_1024_6.vqh res0_160_1024_7.vqh res0_160_1024_8.vqh res0_160_1024_9.vqh res0_160_1024aux.vqh res0_160_128_1.vqh res0_160_128_2.vqh res0_160_128_3.vqh res0_160_128_4.vqh res0_160_128_5.vqh res0_160_128aux.vqh res0_192_1024_1.vqh res0_192_1024_2.vqh res0_192_1024_3.vqh res0_192_1024_4.vqh res0_192_1024_5.vqh res0_192_1024_6.vqh res0_192_1024_7.vqh res0_192_1024_8.vqh res0_192_1024_9.vqh res0_192_1024aux.vqh res0_192_128_1.vqh res0_192_128_2.vqh res0_192_128_3.vqh res0_192_128_4.vqh res0_192_128_5.vqh res0_192_128aux.vqh res0_256_1024_1.vqh res0_256_1024_2.vqh res0_256_1024_3.vqh res0_256_1024_4.vqh res0_256_1024_5.vqh res0_256_1024_6.vqh res0_256_1024_7.vqh res0_256_1024aux.vqh res0_256_128_1.vqh res0_256_128_2.vqh res0_256_128_3.vqh res0_256_128_4.vqh res0_256_128_5.vqh res0_256_128aux.vqh res0_96_1024_1.vqh res0_96_1024_2.vqh res0_96_1024_3.vqh res0_96_1024_4.vqh res0_96_1024_5.vqh res0_96_1024_6.vqh res0_96_1024_7.vqh res0_96_1024_8.vqh res0_96_1024_9.vqh res0_96_1024aux.vqh res0_96_128_1.vqh res0_96_128_2.vqh res0_96_128_3.vqh res0_96_128_4.vqh res0_96_128_5.vqh res0_96_128aux.vqh res0_350_1024_7.vqh
-
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_CLEAN_FILES =
-DIST_COMMON = Makefile.am Makefile.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = tar
-GZIP_ENV = --best
-all: all-redirect
-.SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --foreign lib/books/Makefile
-
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-tags: TAGS
-TAGS:
-
-
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
-
-subdir = lib/books
-
-distdir: $(DISTFILES)
- here=`cd $(top_builddir) && pwd`; \
- top_distdir=`cd $(top_distdir) && pwd`; \
- distdir=`cd $(distdir) && pwd`; \
- cd $(top_srcdir) \
- && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign lib/books/Makefile
- @for file in $(DISTFILES); do \
- d=$(srcdir); \
- if test -d $$d/$$file; then \
- cp -pr $$d/$$file $(distdir)/$$file; \
- else \
- test -f $(distdir)/$$file \
- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
-check-am: all-am
-check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am:
-install-exec: install-exec-am
-
-install-data-am:
-install-data: install-data-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-am
-uninstall-am:
-uninstall: uninstall-am
-all-am: Makefile
-all-redirect: all-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
-installdirs:
-
-
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -rm -f Makefile $(CONFIG_CLEAN_FILES)
- -rm -f config.cache config.log stamp-h stamp-h[0-9]*
-
-maintainer-clean-generic:
-mostlyclean-am: mostlyclean-generic
-
-mostlyclean: mostlyclean-am
-
-clean-am: clean-generic mostlyclean-am
-
-clean: clean-am
-
-distclean-am: distclean-generic clean-am
- -rm -f libtool
-
-distclean: distclean-am
-
-maintainer-clean-am: maintainer-clean-generic distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-maintainer-clean: maintainer-clean-am
-
-.PHONY: tags distdir info-am info dvi-am dvi check check-am \
-installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/lib/books/Makefile.in b/lib/books/Makefile.in
deleted file mode 100644
index 7d2b905ddba94a1cecb0bbaba3e651d5c2b4caf8..0000000000000000000000000000000000000000
--- a/lib/books/Makefile.in
+++ /dev/null
@@ -1,202 +0,0 @@
-# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am
-
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-
-SHELL = @SHELL@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-bindir = @bindir@
-sbindir = @sbindir@
-libexecdir = @libexecdir@
-datadir = @datadir@
-sysconfdir = @sysconfdir@
-sharedstatedir = @sharedstatedir@
-localstatedir = @localstatedir@
-libdir = @libdir@
-infodir = @infodir@
-mandir = @mandir@
-includedir = @includedir@
-oldincludedir = /usr/include
-
-DESTDIR =
-
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-
-top_builddir = ../..
-
-ACLOCAL = @ACLOCAL@
-AUTOCONF = @AUTOCONF@
-AUTOMAKE = @AUTOMAKE@
-AUTOHEADER = @AUTOHEADER@
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-transform = @program_transform_name@
-
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-host_alias = @host_alias@
-host_triplet = @host@
-AS = @AS@
-CC = @CC@
-CPP = @CPP@
-DEBUG = @DEBUG@
-DLLTOOL = @DLLTOOL@
-ECHO = @ECHO@
-EXEEXT = @EXEEXT@
-LIBTOOL = @LIBTOOL@
-LN_S = @LN_S@
-MAKEINFO = @MAKEINFO@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OGG_CFLAGS = @OGG_CFLAGS@
-OGG_LIBS = @OGG_LIBS@
-PACKAGE = @PACKAGE@
-PROFILE = @PROFILE@
-RANLIB = @RANLIB@
-STRIP = @STRIP@
-VERSION = @VERSION@
-VE_LIB_AGE = @VE_LIB_AGE@
-VE_LIB_CURRENT = @VE_LIB_CURRENT@
-VE_LIB_REVISION = @VE_LIB_REVISION@
-VF_LIB_AGE = @VF_LIB_AGE@
-VF_LIB_CURRENT = @VF_LIB_CURRENT@
-VF_LIB_REVISION = @VF_LIB_REVISION@
-V_LIB_AGE = @V_LIB_AGE@
-V_LIB_CURRENT = @V_LIB_CURRENT@
-V_LIB_REVISION = @V_LIB_REVISION@
-pthread_lib = @pthread_lib@
-
-AUTOMAKE_OPTIONS = foreign
-
-EXTRA_DIST = lsp12_0.vqh lsp12_1.vqh lsp30_0.vqh lsp30_1.vqh lsp9_0.vqh lsp9_1.vqh res0_128_1024_1.vqh res0_128_1024_2.vqh res0_128_1024_3.vqh res0_128_1024_4.vqh res0_128_1024_5.vqh res0_128_1024_6.vqh res0_128_1024_7.vqh res0_128_1024_8.vqh res0_128_1024_9.vqh res0_128_1024aux.vqh res0_128_128_1.vqh res0_128_128_2.vqh res0_128_128_3.vqh res0_128_128_4.vqh res0_128_128_5.vqh res0_128_128aux.vqh res0_160_1024_1.vqh res0_160_1024_2.vqh res0_160_1024_3.vqh res0_160_1024_4.vqh res0_160_1024_5.vqh res0_160_1024_6.vqh res0_160_1024_7.vqh res0_160_1024_8.vqh res0_160_1024_9.vqh res0_160_1024aux.vqh res0_160_128_1.vqh res0_160_128_2.vqh res0_160_128_3.vqh res0_160_128_4.vqh res0_160_128_5.vqh res0_160_128aux.vqh res0_192_1024_1.vqh res0_192_1024_2.vqh res0_192_1024_3.vqh res0_192_1024_4.vqh res0_192_1024_5.vqh res0_192_1024_6.vqh res0_192_1024_7.vqh res0_192_1024_8.vqh res0_192_1024_9.vqh res0_192_1024aux.vqh res0_192_128_1.vqh res0_192_128_2.vqh res0_192_128_3.vqh res0_192_128_4.vqh res0_192_128_5.vqh res0_192_128aux.vqh res0_256_1024_1.vqh res0_256_1024_2.vqh res0_256_1024_3.vqh res0_256_1024_4.vqh res0_256_1024_5.vqh res0_256_1024_6.vqh res0_256_1024_7.vqh res0_256_1024aux.vqh res0_256_128_1.vqh res0_256_128_2.vqh res0_256_128_3.vqh res0_256_128_4.vqh res0_256_128_5.vqh res0_256_128aux.vqh res0_96_1024_1.vqh res0_96_1024_2.vqh res0_96_1024_3.vqh res0_96_1024_4.vqh res0_96_1024_5.vqh res0_96_1024_6.vqh res0_96_1024_7.vqh res0_96_1024_8.vqh res0_96_1024_9.vqh res0_96_1024aux.vqh res0_96_128_1.vqh res0_96_128_2.vqh res0_96_128_3.vqh res0_96_128_4.vqh res0_96_128_5.vqh res0_96_128aux.vqh res0_350_1024_7.vqh
-
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_CLEAN_FILES =
-DIST_COMMON = Makefile.am Makefile.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = tar
-GZIP_ENV = --best
-all: all-redirect
-.SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --foreign lib/books/Makefile
-
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-tags: TAGS
-TAGS:
-
-
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
-
-subdir = lib/books
-
-distdir: $(DISTFILES)
- here=`cd $(top_builddir) && pwd`; \
- top_distdir=`cd $(top_distdir) && pwd`; \
- distdir=`cd $(distdir) && pwd`; \
- cd $(top_srcdir) \
- && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign lib/books/Makefile
- @for file in $(DISTFILES); do \
- d=$(srcdir); \
- if test -d $$d/$$file; then \
- cp -pr $$d/$$file $(distdir)/$$file; \
- else \
- test -f $(distdir)/$$file \
- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
-check-am: all-am
-check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am:
-install-exec: install-exec-am
-
-install-data-am:
-install-data: install-data-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-am
-uninstall-am:
-uninstall: uninstall-am
-all-am: Makefile
-all-redirect: all-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
-installdirs:
-
-
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -rm -f Makefile $(CONFIG_CLEAN_FILES)
- -rm -f config.cache config.log stamp-h stamp-h[0-9]*
-
-maintainer-clean-generic:
-mostlyclean-am: mostlyclean-generic
-
-mostlyclean: mostlyclean-am
-
-clean-am: clean-generic mostlyclean-am
-
-clean: clean-am
-
-distclean-am: distclean-generic clean-am
- -rm -f libtool
-
-distclean: distclean-am
-
-maintainer-clean-am: maintainer-clean-generic distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-maintainer-clean: maintainer-clean-am
-
-.PHONY: tags distdir info-am info dvi-am dvi check check-am \
-installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/lib/books/line_1024x31_0sub0.vqh b/lib/books/line_1024x31_0sub0.vqh
deleted file mode 100644
index 07595fc785c2965a7f97e7741f51c9420e503773..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_0sub0.vqh
+++ /dev/null
@@ -1,37 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_0sub0_VQH_
-#define _V_line_1024x31_0sub0_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_0sub0[] = {
- 4, 3, 4, 4, 3, 4, 4, 4, 4, 4, 4, 5, 4, 5, 5, 5,
-};
-
-static static_codebook _huff_book_line_1024x31_0sub0 = {
- 1, 16,
- _huff_lengthlist_line_1024x31_0sub0,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_1sub0.vqh b/lib/books/line_1024x31_1sub0.vqh
deleted file mode 100644
index bcbe5a11b8f6a733b5c121614e5f2068e5e56a38..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_1sub0.vqh
+++ /dev/null
@@ -1,37 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_1sub0_VQH_
-#define _V_line_1024x31_1sub0_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_1sub0[] = {
- 2, 4, 4, 4, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6,
-};
-
-static static_codebook _huff_book_line_1024x31_1sub0 = {
- 1, 16,
- _huff_lengthlist_line_1024x31_1sub0,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_1sub1.vqh b/lib/books/line_1024x31_1sub1.vqh
deleted file mode 100644
index 8a91cfbd6194336f3d35fd1ab7047ecccb617543..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_1sub1.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_1sub1_VQH_
-#define _V_line_1024x31_1sub1_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_1sub1[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 7, 8,
- 11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,
-};
-
-static static_codebook _huff_book_line_1024x31_1sub1 = {
- 1, 64,
- _huff_lengthlist_line_1024x31_1sub1,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_2sub1.vqh b/lib/books/line_1024x31_2sub1.vqh
deleted file mode 100644
index c89989ca7e21658cfa39b05d7053f7906d84396e..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_2sub1.vqh
+++ /dev/null
@@ -1,37 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_2sub1_VQH_
-#define _V_line_1024x31_2sub1_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_2sub1[] = {
- 0, 3, 4, 2, 3, 3, 3, 3, 4,
-};
-
-static static_codebook _huff_book_line_1024x31_2sub1 = {
- 1, 9,
- _huff_lengthlist_line_1024x31_2sub1,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_2sub2.vqh b/lib/books/line_1024x31_2sub2.vqh
deleted file mode 100644
index 96755592090a493440f2e74823851806caef927b..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_2sub2.vqh
+++ /dev/null
@@ -1,38 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_2sub2_VQH_
-#define _V_line_1024x31_2sub2_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_2sub2[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 3, 3, 5, 4, 6,
- 4, 7, 4, 8, 4, 9, 5, 9, 5,
-};
-
-static static_codebook _huff_book_line_1024x31_2sub2 = {
- 1, 25,
- _huff_lengthlist_line_1024x31_2sub2,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_2sub3.vqh b/lib/books/line_1024x31_2sub3.vqh
deleted file mode 100644
index aa8341a0214fde9c2cde5aec02f55b79873292aa..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_2sub3.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_2sub3_VQH_
-#define _V_line_1024x31_2sub3_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_2sub3[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 1, 8, 3, 8, 3, 8,
- 4, 8, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
-};
-
-static static_codebook _huff_book_line_1024x31_2sub3 = {
- 1, 64,
- _huff_lengthlist_line_1024x31_2sub3,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_3sub1.vqh b/lib/books/line_1024x31_3sub1.vqh
deleted file mode 100644
index 0e474fbee9071830497bb11957e4b7aaf05102c8..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_3sub1.vqh
+++ /dev/null
@@ -1,37 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_3sub1_VQH_
-#define _V_line_1024x31_3sub1_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_3sub1[] = {
- 0, 2, 3, 3, 3, 3, 4, 3, 4,
-};
-
-static static_codebook _huff_book_line_1024x31_3sub1 = {
- 1, 9,
- _huff_lengthlist_line_1024x31_3sub1,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_3sub2.vqh b/lib/books/line_1024x31_3sub2.vqh
deleted file mode 100644
index a28e561a840b3ed6e70e8e4500d9f68c562eae90..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_3sub2.vqh
+++ /dev/null
@@ -1,38 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_3sub2_VQH_
-#define _V_line_1024x31_3sub2_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_3sub2[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 2, 4, 3, 5, 4,
- 6, 6, 7, 6, 8, 6, 9, 6, 9,
-};
-
-static static_codebook _huff_book_line_1024x31_3sub2 = {
- 1, 25,
- _huff_lengthlist_line_1024x31_3sub2,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_3sub3.vqh b/lib/books/line_1024x31_3sub3.vqh
deleted file mode 100644
index 5a7c26f90ec59625ec0d9b07eb9f49fbba8d1050..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_3sub3.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_3sub3_VQH_
-#define _V_line_1024x31_3sub3_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_3sub3[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 6, 2, 5, 3, 5, 4,
- 5, 5, 6, 8, 5, 9, 5, 9, 4, 8, 4, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
-};
-
-static static_codebook _huff_book_line_1024x31_3sub3 = {
- 1, 64,
- _huff_lengthlist_line_1024x31_3sub3,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_class0.vqh b/lib/books/line_1024x31_class0.vqh
deleted file mode 100644
index d416d60ef428d06f6820c48067570a1ab7db6447..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_class0.vqh
+++ /dev/null
@@ -1,37 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_class0_VQH_
-#define _V_line_1024x31_class0_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_class0[] = {
- 1, 3, 3, 4, 3, 5, 6, 6,
-};
-
-static static_codebook _huff_book_line_1024x31_class0 = {
- 1, 8,
- _huff_lengthlist_line_1024x31_class0,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_class1.vqh b/lib/books/line_1024x31_class1.vqh
deleted file mode 100644
index f2ca4a894152a366106fc0ea943cc2f9d63a7e8a..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_class1.vqh
+++ /dev/null
@@ -1,37 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_class1_VQH_
-#define _V_line_1024x31_class1_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_class1[] = {
- 1, 2, 4, 4, 7, 7,10,12, 4, 5, 7, 8,10,10,12,11,
-};
-
-static static_codebook _huff_book_line_1024x31_class1 = {
- 1, 16,
- _huff_lengthlist_line_1024x31_class1,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_class2.vqh b/lib/books/line_1024x31_class2.vqh
deleted file mode 100644
index 521aaf1ed8e299fc4e76701dd85bc3e1c42f7f02..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_class2.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_class2_VQH_
-#define _V_line_1024x31_class2_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_class2[] = {
- 1, 2, 4,10, 8, 5, 6,10,11, 8, 7,15,16,16,13,16,
- 7, 4, 6,12, 8, 6, 7,11,13,10,12,16,16,16,16,16,
- 12, 9,10,14,11, 9,11,15,16,12,13,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,15,
-};
-
-static static_codebook _huff_book_line_1024x31_class2 = {
- 1, 64,
- _huff_lengthlist_line_1024x31_class2,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_1024x31_class3.vqh b/lib/books/line_1024x31_class3.vqh
deleted file mode 100644
index daa06835f1962a5bae673b32d466bdc886438de0..0000000000000000000000000000000000000000
--- a/lib/books/line_1024x31_class3.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_1024x31_class3_VQH_
-#define _V_line_1024x31_class3_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_1024x31_class3[] = {
- 1, 3, 5,11, 6, 4, 5,14, 9, 6, 9,14,14,14,14,14,
- 6, 4, 6, 8, 7, 5, 6,10, 8, 6, 8,11,14,14,14,14,
- 11, 8, 8, 9,10, 7, 7,10,12, 9,10,14,14,14,14,14,
- 14,14,12, 8,14,14,14,12,14,14,14,14,14,14,14,14,
-};
-
-static static_codebook _huff_book_line_1024x31_class3 = {
- 1, 64,
- _huff_lengthlist_line_1024x31_class3,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_0sub0.vqh b/lib/books/line_128x7_0sub0.vqh
deleted file mode 100644
index 2f41d0674597f047177551ba661af229ba3f1bd4..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_0sub0.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_0sub0_VQH_
-#define _V_line_128x7_0sub0_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_0sub0[] = {
- 4, 4, 4, 5, 4, 5, 4, 5, 4, 5, 5, 6, 4, 6, 5, 6,
- 5, 6, 5, 7, 5, 7, 5, 8, 5, 9, 5,10, 5,11, 6,11,
- 6,13, 7,13, 7,13, 7,13, 8,13, 8,13, 9,13, 9,12,
- 13,13,11,13,11,12,13,13,13,13,13,13,13,13,13,13,
-};
-
-static static_codebook _huff_book_line_128x7_0sub0 = {
- 1, 64,
- _huff_lengthlist_line_128x7_0sub0,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_1sub1.vqh b/lib/books/line_128x7_1sub1.vqh
deleted file mode 100644
index 52e0e72e62ec44801e659c0172e5477825c5f866..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_1sub1.vqh
+++ /dev/null
@@ -1,37 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_1sub1_VQH_
-#define _V_line_128x7_1sub1_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_1sub1[] = {
- 0, 3, 3, 3, 3, 3, 3, 3, 3,
-};
-
-static static_codebook _huff_book_line_128x7_1sub1 = {
- 1, 9,
- _huff_lengthlist_line_128x7_1sub1,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_1sub2.vqh b/lib/books/line_128x7_1sub2.vqh
deleted file mode 100644
index 6c5793f3efc1aa82f7d2cb66060086d3b312c391..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_1sub2.vqh
+++ /dev/null
@@ -1,38 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_1sub2_VQH_
-#define _V_line_128x7_1sub2_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_1sub2[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 4, 4, 4,
- 4, 5, 4, 5, 5, 5, 5, 6, 6,
-};
-
-static static_codebook _huff_book_line_128x7_1sub2 = {
- 1, 25,
- _huff_lengthlist_line_128x7_1sub2,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_1sub3.vqh b/lib/books/line_128x7_1sub3.vqh
deleted file mode 100644
index 457cd754fd220bcdeddc01360cd1f42a8e9d63e3..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_1sub3.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_1sub3_VQH_
-#define _V_line_128x7_1sub3_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_1sub3[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 5, 3, 5, 3, 8,
- 4, 8, 5, 8, 6, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
-};
-
-static static_codebook _huff_book_line_128x7_1sub3 = {
- 1, 64,
- _huff_lengthlist_line_128x7_1sub3,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_2sub1.vqh b/lib/books/line_128x7_2sub1.vqh
deleted file mode 100644
index 461c78d8ddc8a4a893215fcdac0b65b327676b71..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_2sub1.vqh
+++ /dev/null
@@ -1,37 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_2sub1_VQH_
-#define _V_line_128x7_2sub1_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_2sub1[] = {
- 0, 3, 3, 2, 3, 3, 4, 3, 4,
-};
-
-static static_codebook _huff_book_line_128x7_2sub1 = {
- 1, 9,
- _huff_lengthlist_line_128x7_2sub1,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_2sub2.vqh b/lib/books/line_128x7_2sub2.vqh
deleted file mode 100644
index 8fe3039fc70ee89b24843a4b6d29d6f89e68d8d5..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_2sub2.vqh
+++ /dev/null
@@ -1,38 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_2sub2_VQH_
-#define _V_line_128x7_2sub2_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_2sub2[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 3, 5, 3, 5, 3,
- 6, 4, 7, 4, 8, 4, 9, 5, 9,
-};
-
-static static_codebook _huff_book_line_128x7_2sub2 = {
- 1, 25,
- _huff_lengthlist_line_128x7_2sub2,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_2sub3.vqh b/lib/books/line_128x7_2sub3.vqh
deleted file mode 100644
index 132a8caa2ef07542b2a075f226ce3d1556fc330e..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_2sub3.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_2sub3_VQH_
-#define _V_line_128x7_2sub3_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_2sub3[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 7, 2, 8, 3, 7, 3,
- 7, 4, 8, 4, 9, 5, 8, 7, 8, 9, 9, 9, 9, 9, 9, 9,
- 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
-};
-
-static static_codebook _huff_book_line_128x7_2sub3 = {
- 1, 64,
- _huff_lengthlist_line_128x7_2sub3,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_class1.vqh b/lib/books/line_128x7_class1.vqh
deleted file mode 100644
index af52b62a4386cb711a16fcce60d829e36ebfcc68..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_class1.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_class1_VQH_
-#define _V_line_128x7_class1_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_class1[] = {
- 2, 4, 3,10, 9, 6, 6,13,13,13,10,13,13,13,13,13,
- 6, 3, 3, 7, 9, 7, 6,13,13,13,11,13,13,13,13,13,
- 7, 4, 4, 8, 8, 6, 4,12,13,13,11,13,13,13,13,13,
- 13,12, 9,12,13,11,10,12,13,13,13,13,13,12,12,12,
-};
-
-static static_codebook _huff_book_line_128x7_class1 = {
- 1, 64,
- _huff_lengthlist_line_128x7_class1,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/line_128x7_class2.vqh b/lib/books/line_128x7_class2.vqh
deleted file mode 100644
index b0f1029800632f44f078475fc0842ad6ff2bb2f9..0000000000000000000000000000000000000000
--- a/lib/books/line_128x7_class2.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_line_128x7_class2_VQH_
-#define _V_line_128x7_class2_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_line_128x7_class2[] = {
- 7, 6, 6,10, 7, 4, 5, 7, 9, 6, 6, 9,13,13,13,13,
- 7, 5, 5, 8, 5, 3, 3, 6, 7, 4, 5, 8,13,13,10,12,
- 10, 7, 6, 8, 7, 4, 3, 5, 8, 5, 5, 8,13,11,10,13,
- 13,11,11,13,11, 8,10,13,12, 9,11,13,13,13,13,13,
-};
-
-static static_codebook _huff_book_line_128x7_class2 = {
- 1, 64,
- _huff_lengthlist_line_128x7_class2,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp12_0.vqh b/lib/books/lsp12_0.vqh
deleted file mode 100644
index ad1a00812ced6e1fdbd48cd438d5117a29d5e493..0000000000000000000000000000000000000000
--- a/lib/books/lsp12_0.vqh
+++ /dev/null
@@ -1,168 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_lsp12_0_VQH_
-#define _V_lsp12_0_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp12_0[] = {
- 0,
- 5,
- 10,
- 15,
- 20,
- 25,
- 30,
- 35,
- 40,
- 45,
- 50,
- 55,
- 60,
- 65,
- 68,
- 71,
- 74,
- 77,
- 80,
- 83,
- 86,
- 89,
- 92,
- 95,
- 98,
- 101,
- 104,
- 107,
- 110,
- 115,
- 120,
- 125,
- 130,
- 135,
- 145,
- 160,
- 180,
- 205,
- 235,
- 270,
- 310,
- 355,
- 405,
-};
-
-static long _vq_lengthlist_lsp12_0[] = {
- 16,16,16,14,15,14,15,15,12,11,10, 9, 9, 8, 7, 7,
- 7, 5, 4, 3, 3, 2, 3, 4, 4, 5, 6, 7, 6, 5, 6, 8,
- 10,11,13,14,14,14,16,14,16,16,14,
-};
-
-static long _vq_pigeonmap_lsp12_0[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 6,
- 6, 6, 6, 6, 6, 6, 6, 6,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 9, 9, 9, 9, 9, 9,
- 9, 9, 9, 9, 9, 9, 10, 10,
- 10, 10, 10, 10, 10, 10, 10, 10,
- 10, 10, 10, 10, 10, 11, 11, 11,
- 11, 11, 11, 11, 11, 11, 11, 11,
- 11, 11, 11, 11, 11, 11, 11, 11,
- 11, 11, 11, 11, 11, 11, 11, 11,
- 11, 11, 11, 11, 11, 11, 11, 11,
- 11, 11, 11, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 14, 14, 14,
- 14, 14, 14, 14, 14, 14, 14, 14,
- 14, 14, 14, 14, 14, 14, 14, 14,
- 14, 14, 14, 14, 14,
-};
-
-static long _vq_fitlist_lsp12_0[] = {
- 0, 1, 2, 3, 3, 4, 5, 6,
- 6, 7, 8, 9, 9, 10, 11, 12,
- 12, 13, 14, 15, 15, 16, 17, 18,
- 18, 19, 20, 21, 21, 22, 23, 24,
- 24, 25, 26, 27, 27, 28, 29, 30,
- 30, 31, 32, 33, 33, 34, 35, 36,
- 36, 37, 38, 39, 39, 40, 41, 42,
-};
-
-static long _vq_fitmap_lsp12_0[] = {
- 0, 4, 8, 12, 16, 20, 24, 28,
- 32, 36, 40, 44, 48, 52, 52,
-};
-
-static long _vq_fitlength_lsp12_0[] = {
- 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp12_0 = {
- 0.06, 0.002, 405, 15,
- _vq_pigeonmap_lsp12_0,
- 56,
- _vq_fitlist_lsp12_0,
- _vq_fitmap_lsp12_0,
- _vq_fitlength_lsp12_0
-};
-
-static static_codebook _vq_book_lsp12_0 = {
- 1, 43,
- _vq_lengthlist_lsp12_0,
- 1, 1602140242, 1592812110, 9, 1,
- _vq_quantlist_lsp12_0,
- NULL,
- NULL,
- &_vq_auxp_lsp12_0,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp12_1.vqh b/lib/books/lsp12_1.vqh
deleted file mode 100644
index b5e90672e12964928d0b4d7922807dd95ee4bafc..0000000000000000000000000000000000000000
--- a/lib/books/lsp12_1.vqh
+++ /dev/null
@@ -1,2979 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_lsp12_1_VQH_
-#define _V_lsp12_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp12_1[] = {
- 0,
- 1,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11,
- 12,
- 13,
-};
-
-static long _vq_lengthlist_lsp12_1[] = {
- 17,15,17,17,16,16,17,17,17,17,17,16,17,17,17,17,
- 16,16,16,16,17,17,14,17,17,17,17,17,16,16,17,16,
- 15,17,15,15,15,15,17,16,17,17,17,15,14,15,15,15,
- 15,16,15,15,16,17,17,17,15,15,15,14,15,15,15,14,
- 15,16,16,17,17,17,17,16,16,17,16,16,15,15,17,16,
- 16,16,17,17,17,16,17,17,17,15,15,15,17,16,16,17,
- 17,17,17,17,17,15,14,14,14,15,16,16,17,15,15,17,
- 17,17,17,17,17,17,14,13,16,14,15,17,17,17,17,17,
- 17,17,15,14,16,15,15,16,17,17,16,17,17,17,17,16,
- 15,16,14,17,16,15,15,17,17,17,17,17,17,17,17,17,
- 16,17,15,17,15,17,17,16,17,17,17,17,17,17,17,16,
- 17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,16,
- 17,16,17,17,17,17,15,15,17,16,17,17,16,17,17,17,
- 17,17,17,17,15,15,15,16,17,17,17,17,17,17,17,17,
- 17,16,16,15,15,14,15,15,15,15,16,16,17,17,16,16,
- 15,16,14,15,14,14,15,14,16,17,16,17,17,17,15,15,
- 14,14,13,14,14,14,17,17,16,15,16,17,15,15,14,14,
- 14,14,15,15,16,17,16,16,17,17,17,15,13,13,14,13,
- 14,15,15,16,16,17,17,17,17,15,14,14,13,13,14,14,
- 15,17,16,16,17,17,17,17,14,14,13,12,13,14,15,15,
- 15,17,17,17,17,17,15,14,13,12,14,14,16,15,15,16,
- 17,17,17,15,15,15,14,14,15,14,14,15,17,16,17,17,
- 17,17,17,16,14,15,14,16,16,17,17,17,16,17,17,17,
- 17,17,15,14,16,15,17,17,17,17,17,17,17,15,17,17,
- 17,16,15,15,14,16,16,17,17,16,15,16,15,16,15,15,
- 16,17,17,17,17,17,17,17,16,14,15,15,15,15,16,17,
- 17,17,17,17,17,15,15,15,14,14,14,15,15,15,17,17,
- 17,17,17,17,15,14,13,14,13,14,14,15,15,16,17,16,
- 17,17,15,15,12,13,13,12,13,14,15,16,16,17,17,17,
- 16,14,13,13,12,12,13,13,15,16,15,15,17,17,17,14,
- 12,12,11,11,13,13,14,15,16,15,17,17,17,14,13,11,
- 11,11,13,13,14,15,15,17,17,17,17,14,14,12,11,11,
- 13,13,13,14,16,15,17,17,17,15,14,14,12,12,13,13,
- 14,14,15,15,17,17,17,17,15,14,14,13,13,13,14,15,
- 15,16,15,17,17,17,15,14,16,14,13,14,14,14,15,16,
- 17,16,17,17,15,16,15,14,15,16,15,17,17,17,17,17,
- 17,17,15,15,16,15,15,15,15,15,15,17,17,16,15,14,
- 16,17,17,15,17,17,17,16,17,17,17,17,16,14,14,14,
- 15,15,16,17,16,15,17,17,15,17,15,15,14,14,14,14,
- 15,15,15,16,15,15,17,16,15,14,13,13,13,13,13,15,
- 15,16,15,17,17,16,15,13,11,12,12,12,12,13,14,14,
- 16,15,17,17,16,13,11,10,10,11,12,12,13,14,14,17,
- 17,17,17,14,11,10,10,10,11,12,14,14,15,14,17,17,
- 14,16,13,10,10,10,11,12,13,15,15,15,16,17,17,15,
- 13,11,10,10,11,12,13,14,15,17,17,17,17,15,13,12,
- 11,11,11,12,13,14,14,15,17,17,16,15,15,13,12,12,
- 12,12,13,15,14,15,17,16,15,16,16,13,13,13,13,13,
- 14,15,16,16,16,17,17,16,16,14,15,14,14,15,15,15,
- 16,17,16,16,17,15,16,17,15,15,15,16,14,15,16,17,
- 16,16,17,15,15,15,15,17,15,17,16,17,16,17,17,17,
- 16,15,14,13,14,14,16,15,16,15,15,15,17,16,15,13,
- 13,12,12,13,14,13,14,13,13,13,17,17,15,13,11,11,
- 12,12,11,12,12,12,13,14,17,17,15,13,10,10,10,10,
- 10,11,11,12,13,14,17,17,14,13,10, 9, 9,10,10,10,
- 10,12,12,14,17,16,15,13,11, 9, 9, 9, 9,10,11,13,
- 15,14,16,15,15,13,11, 9, 8, 9, 9,10,12,13,14,14,
- 16,15,15,15,12,10, 9, 9, 9,11,12,13,14,15,17,16,
- 16,15,13,11,10,10,10,11,12,13,15,15,15,17,15,15,
- 14,13,11,11,12,12,13,13,14,14,17,16,15,17,14,14,
- 13,12,12,13,13,13,15,15,17,16,15,15,14,14,14,13,
- 14,14,13,14,15,16,17,17,16,17,15,17,15,14,15,15,
- 15,15,17,16,17,17,16,15,16,14,17,15,15,15,16,16,
- 15,16,17,17,16,15,13,13,12,13,14,14,13,14,14,13,
- 17,17,15,12,11,11,10,11,12,12,12,12,12,11,17,15,
- 15,12,10,10,10,10,10,10,11,11,11,12,17,16,13,12,
- 9, 8, 9, 9, 9, 8, 9,10,11,12,16,16,14,12, 9, 7,
- 7, 8, 7, 8, 9,10,12,13,17,15,13,12, 9, 7, 7, 7,
- 7, 9,10,11,12,12,15,15,14,13,10, 8, 7, 7, 8, 9,
- 11,13,13,14,15,15,15,13,11,10, 8, 8, 9,10,11,13,
- 13,13,15,17,15,14,12,11,10, 9,10,11,12,13,13,14,
- 15,17,17,14,14,12,11,11,11,11,13,13,14,15,17,15,
- 16,14,13,13,12,12,12,12,13,15,15,17,17,15,15,14,
- 13,14,13,13,13,13,15,15,17,17,17,16,16,15,15,15,
- 15,14,14,15,15,15,16,17,17,16,17,16,16,14,13,13,
- 13,15,15,16,16,15,17,17,17,15,13,12,12,12,13,14,
- 13,14,14,14,17,16,15,13,11,10,10,11,12,12,12,12,
- 11,12,15,15,13,11, 9, 9, 9,10,10, 9,10,10,11,11,
- 17,15,13,11, 9, 8, 8, 9, 8, 7, 8, 9,11,12,14,14,
- 12,11, 8, 7, 6, 7, 7, 7, 9,10,11,12,14,14,13,10,
- 9, 6, 6, 6, 7, 9,10,11,12,13,15,14,14,12,10, 8,
- 6, 7, 8, 9,10,12,13,15,15,15,14,13,11, 9, 8, 8,
- 9,10,11,12,13,15,15,15,14,13,11,10, 9, 9,10,11,
- 11,13,13,14,15,16,14,14,13,11,10,11,11,11,12,13,
- 14,15,16,17,14,14,12,13,12,11,11,13,13,15,17,15,
- 17,15,17,14,13,14,12,13,14,14,15,15,16,17,17,17,
- 14,14,15,15,14,15,14,15,14,16,15,17,17,17,17,17,
- 15,14,13,14,14,14,15,15,15,14,16,17,17,13,12,12,
- 11,12,13,13,14,14,13,13,17,15,15,12,10,10,11,11,
- 12,12,12,13,12,13,17,14,13,11, 9, 9,10,10,11,10,
- 10,11,12,12,15,14,12,10, 9, 8, 8, 9, 9, 9, 9,10,
- 12,12,17,14,11, 9, 8, 7, 6, 7, 8, 9,10,11,12,13,
- 15,14,11,10, 8, 6, 6, 7, 8, 9,10,11,13,13,16,15,
- 12,11, 9, 8, 7, 7, 8, 9,11,12,13,14,16,14,12,12,
- 10, 9, 8, 8, 9,10,11,13,13,14,15,15,14,13,12,10,
- 10, 9,10,10,11,12,13,14,16,15,14,13,12,11,11,11,
- 11,12,12,14,14,16,17,16,15,14,13,12,12,12,12,13,
- 13,14,15,17,16,17,16,14,15,13,13,13,12,14,15,15,
- 16,16,17,17,15,15,15,14,14,14,14,15,14,15,17,16,
- 17,17,17,17,14,13,14,14,15,13,14,16,14,16,17,17,
- 16,14,12,13,12,13,13,13,14,15,15,15,16,15,15,13,
- 11,11,11,12,13,13,13,14,15,14,17,14,13,12,10, 9,
- 10,11,11,11,12,13,13,13,15,13,12,10, 9, 8, 9, 9,
- 10,10,11,12,12,13,15,13,11,10, 8, 8, 8, 8, 9,10,
- 10,11,13,13,16,12,11,10, 9, 8, 8, 8, 9, 9,11,13,
- 13,14,15,14,12,11, 9, 8, 8, 8, 9,10,11,13,14,14,
- 16,14,13,12,11, 9, 9, 9, 9,10,11,13,14,14,15,15,
- 14,14,11,10,10,10,10,11,12,12,14,14,17,15,14,14,
- 12,11,11,11,11,12,13,13,15,15,17,15,15,14,12,12,
- 12,12,12,12,14,15,15,15,17,16,15,14,13,14,13,13,
- 13,15,15,16,15,17,16,17,15,15,15,15,13,13,14,15,
- 15,15,15,17,17,17,17,17,14,14,16,15,15,16,15,14,
- 17,16,17,17,16,14,13,13,14,14,15,14,15,17,15,15,
- 15,15,14,13,12,12,12,12,13,13,13,14,15,15,16,13,
- 12,12,11,10,11,11,11,11,12,13,13,14,17,13,12,11,
- 10, 9,10,10,10,10,11,12,13,14,15,13,12,11, 9, 9,
- 9, 9, 9,10,11,13,13,14,15,13,11,11,10, 9, 9, 9,
- 9,10,11,13,14,15,15,14,13,11,10,10, 9, 9, 9,10,
- 12,12,14,15,15,15,13,12,11,10,10, 9,10,11,12,13,
- 14,16,15,15,14,13,12,11,10,10,11,11,12,13,14,16,
- 16,16,14,13,12,11,11,11,12,12,13,14,14,15,15,15,
- 14,13,13,12,12,12,13,13,14,14,14,17,16,16,14,15,
- 13,13,13,13,13,13,14,14,15,16,17,16,16,15,15,14,
- 13,13,14,13,14,15,16,16,17,17,17,15,14,15,15,15,
- 15,15,15,16,17,15,16,16,16,15,14,15,15,15,15,14,
- 15,16,16,17,17,14,14,13,12,13,13,13,13,13,14,14,
- 15,17,16,13,13,13,12,11,12,12,12,12,12,13,15,14,
- 15,13,13,12,11,11,10,11,11,11,11,13,15,14,15,13,
- 12,11,10,10,10,10,10,11,11,13,13,15,14,13,12,12,
- 11,10,10, 9,10,11,13,13,14,14,15,13,13,12,11,10,
- 10,10,10,11,12,12,13,14,16,14,14,13,12,11,10,10,
- 10,12,12,13,14,15,16,15,14,13,12,11,10,11,11,11,
- 13,12,14,14,16,15,14,12,12,12,11,11,11,12,12,13,
- 14,15,16,15,14,14,13,12,12,12,12,12,13,13,15,17,
- 17,16,15,14,14,13,12,13,12,12,13,15,15,17,15,16,
- 15,15,14,13,13,13,12,13,14,15,16,17,17,16,15,15,
- 15,15,15,15,15,16,14,15,17,16,17,17,15,14,14,14,
- 15,14,15,14,15,14,17,14,17,14,14,13,14,13,13,14,
- 13,13,13,14,14,15,15,14,14,13,12,12,12,12,12,12,
- 12,13,14,15,15,14,13,12,12,11,11,11,11,11,13,13,
- 14,14,17,14,13,12,11,10,10,10,11,11,12,13,13,14,
- 15,14,13,13,11,10,10,10,10,11,12,12,13,14,16,16,
- 13,12,11,11,11,10,11,11,12,13,14,14,17,15,14,13,
- 11,11,10,11,10,11,12,12,13,14,17,15,14,13,12,12,
- 11,11,11,12,12,13,13,14,15,15,13,14,13,12,11,11,
- 12,12,13,13,15,16,16,16,15,14,13,13,12,12,12,12,
- 13,14,16,16,17,16,15,14,15,13,13,13,13,13,14,15,
- 17,17,16,16,14,14,14,14,13,14,13,14,16,17,17,17,
- 16,17,16,16,17,15,14,17,16,16,15,16,17,17,17,17,
- 14,15,15,14,16,16,15,15,15,15,16,17,17,15,14,15,
- 14,14,13,14,13,13,14,14,15,17,17,14,13,14,14,13,
- 12,12,12,12,13,13,15,15,16,14,13,13,13,12,11,11,
- 11,11,12,13,14,14,17,14,13,13,12,11,11,11,11,12,
- 12,13,13,14,17,16,14,13,12,11,11,11,11,11,12,13,
- 13,14,16,15,13,13,12,11,11,11,11,11,12,13,14,14,
- 16,14,15,13,13,12,11,11,11,12,12,12,14,14,16,15,
- 15,14,13,12,12,11,11,11,12,13,14,14,17,15,15,14,
- 13,12,11,12,11,12,14,15,14,15,15,16,15,15,13,12,
- 12,13,14,14,15,17,16,15,17,16,16,15,15,14,12,14,
- 14,14,15,16,17,17,15,15,14,16,14,14,15,15,16,17,
- 17,16,16,16,17,17,17,16,15,15,16,15,16,16,17,16,
- 17,17,17,17,15,17,14,15,14,14,14,15,15,16,17,16,
- 17,15,15,15,14,14,13,14,13,13,14,16,16,15,16,14,
- 14,14,15,13,12,12,12,12,13,14,14,17,15,14,13,13,
- 14,12,12,11,11,12,13,14,15,15,15,14,14,14,13,12,
- 11,11,11,12,12,13,13,15,16,16,14,14,13,11,11,11,
- 11,11,12,12,13,14,17,16,14,13,12,12,11,11,11,11,
- 11,12,14,14,17,15,14,13,12,11,11,10,11,11,12,12,
- 15,15,17,14,13,13,13,12,11,11,11,11,12,14,15,16,
- 15,16,15,14,12,12,12,12,12,12,14,14,17,15,16,15,
- 14,14,14,13,13,13,13,14,14,17,16,16,14,15,14,14,
- 14,14,14,15,14,15,16,17,17,17,15,16,14,14,14,17,
- 15,15,15,17,17,17,17,17,
-};
-
-static long _vq_pigeonmap_lsp12_1[] = {
- 0, 0, 0, 1, 1, 1, 2, 2,
- 2, 3, 3, 3, 4,
-};
-
-static long _vq_fitlist_lsp12_1[] = {
- 0, 1, 14, 15, 28, 196, 197, 210,
- 392, 2, 16, 29, 198, 211, 224, 393,
- 406, 3, 4, 17, 30, 43, 199, 212,
- 225, 394, 407, 589, 42, 588, 56, 238,
- 420, 602, 31, 44, 200, 213, 226, 239,
- 395, 408, 421, 590, 57, 252, 434, 603,
- 18, 45, 58, 214, 227, 240, 253, 396,
- 409, 422, 435, 591, 604, 617, 785, 784,
- 616, 786, 798, 70, 448, 630, 799, 32,
- 71, 241, 254, 410, 423, 436, 449, 592,
- 605, 618, 631, 787, 800, 813, 981, 980,
- 812, 994, 982, 266, 644, 826, 995, 228,
- 267, 437, 450, 606, 619, 632, 645, 788,
- 801, 814, 827, 983, 996, 3, 4, 16,
- 17, 18, 30, 31, 198, 199, 200, 212,
- 213, 226, 394, 395, 408, 5, 19, 32,
- 201, 214, 227, 396, 409, 591, 6, 7,
- 20, 33, 46, 202, 215, 228, 397, 410,
- 592, 44, 45, 240, 422, 59, 241, 423,
- 605, 34, 47, 203, 216, 229, 242, 398,
- 411, 424, 593, 58, 72, 254, 436, 60,
- 255, 437, 606, 21, 48, 61, 217, 230,
- 243, 256, 399, 412, 425, 438, 594, 607,
- 590, 604, 787, 788, 618, 619, 620, 789,
- 268, 450, 632, 801, 73, 451, 633, 802,
- 35, 74, 244, 257, 413, 426, 439, 452,
- 595, 608, 621, 634, 790, 803, 816, 786,
- 800, 814, 983, 815, 984, 985, 646, 828,
- 997, 269, 647, 829, 998, 231, 270, 440,
- 453, 609, 622, 635, 648, 791, 804, 817,
- 830, 986, 999, 6, 7, 19, 20, 21,
- 33, 34, 201, 202, 203, 215, 216, 229,
- 397, 398, 411, 8, 22, 35, 204, 217,
- 230, 399, 412, 9, 10, 23, 36, 49,
- 205, 218, 231, 400, 413, 595, 47, 48,
- 243, 425, 594, 62, 244, 426, 608, 24,
- 37, 50, 206, 219, 232, 245, 401, 414,
- 427, 596, 61, 75, 257, 439, 621, 63,
- 258, 440, 609, 51, 64, 220, 233, 246,
- 259, 402, 415, 428, 441, 597, 610, 593,
- 607, 790, 791, 622, 623, 792, 271, 453,
- 635, 804, 76, 454, 636, 805, 38, 77,
- 234, 247, 260, 416, 429, 442, 455, 598,
- 611, 624, 637, 793, 806, 819, 789, 803,
- 817, 986, 818, 987, 988, 649, 831, 1000,
- 272, 650, 832, 1001, 273, 430, 443, 456,
- 612, 625, 638, 651, 794, 807, 820, 833,
- 989, 1002, 9, 10, 22, 23, 24, 36,
- 37, 204, 205, 206, 218, 219, 232, 400,
- 401, 414, 11, 25, 38, 207, 220, 233,
- 402, 415, 597, 12, 13, 26, 39, 52,
- 208, 221, 234, 403, 416, 598, 50, 51,
- 246, 428, 65, 247, 429, 611, 27, 40,
- 53, 66, 209, 222, 235, 248, 404, 417,
- 430, 599, 64, 78, 260, 442, 624, 79,
- 261, 443, 612, 625, 54, 67, 223, 236,
- 249, 262, 405, 418, 431, 444, 600, 613,
- 596, 610, 793, 794, 626, 795, 456, 638,
- 807, 457, 639, 808, 41, 80, 237, 250,
- 263, 276, 419, 432, 445, 458, 601, 614,
- 627, 640, 796, 809, 792, 806, 989, 820,
- 821, 990, 822, 991, 274, 652, 834, 1003,
- 275, 471, 653, 835, 1004, 1017, 433, 446,
- 459, 472, 615, 628, 641, 654, 797, 810,
- 823, 836, 992, 1005, 12, 13, 25, 26,
- 27, 39, 40, 207, 208, 209, 221, 222,
- 235, 403, 404, 417, 41, 53, 54, 223,
- 236, 249, 405, 418, 431, 600, 55, 67,
- 68, 81, 237, 250, 263, 419, 432, 445,
- 601, 614, 627, 599, 613, 796, 251, 264,
- 433, 446, 459, 615, 628, 641, 797, 810,
- 795, 809, 823, 992, 277, 447, 460, 629,
- 642, 655, 811, 824, 837, 993, 1006, 15,
- 16, 28, 29, 30, 42, 43, 56, 57,
- 70, 198, 211, 212, 224, 225, 226, 238,
- 239, 252, 394, 407, 408, 420, 421, 434,
- 603, 616, 3, 17, 31, 44, 58, 71,
- 199, 213, 227, 240, 253, 266, 395, 409,
- 422, 435, 448, 591, 604, 617, 630, 18,
- 32, 45, 46, 59, 72, 85, 200, 214,
- 228, 241, 254, 267, 396, 410, 423, 436,
- 449, 592, 605, 618, 631, 84, 98, 280,
- 462, 73, 86, 242, 255, 268, 281, 424,
- 437, 450, 463, 619, 632, 644, 99, 294,
- 476, 645, 60, 87, 100, 256, 269, 282,
- 295, 438, 451, 464, 477, 633, 646, 590,
- 799, 812, 787, 800, 813, 826, 606, 788,
- 801, 814, 827, 658, 620, 659, 815, 828,
- 840, 112, 490, 672, 841, 74, 113, 270,
- 283, 296, 309, 452, 465, 478, 491, 634,
- 647, 660, 673, 816, 829, 842, 855, 786,
- 995, 1008, 996, 1009, 802, 997, 1010, 1022,
- 854, 1023, 1011, 1024, 1036, 308, 686, 868,
- 1037, 479, 492, 648, 661, 674, 687, 830,
- 843, 856, 869, 1025, 1038, 18, 19, 31,
- 32, 33, 45, 46, 58, 59, 60, 72,
- 73, 201, 214, 215, 227, 228, 229, 240,
- 241, 242, 254, 255, 268, 397, 410, 411,
- 423, 424, 436, 437, 450, 606, 619, 6,
- 20, 34, 47, 61, 74, 202, 216, 230,
- 243, 256, 269, 398, 412, 425, 438, 451,
- 607, 620, 7, 21, 35, 48, 49, 62,
- 75, 88, 203, 217, 231, 244, 257, 270,
- 399, 413, 426, 439, 452, 595, 608, 621,
- 634, 86, 87, 282, 464, 633, 101, 283,
- 465, 647, 76, 89, 245, 258, 271, 284,
- 427, 440, 453, 466, 622, 635, 100, 114,
- 296, 478, 660, 102, 297, 479, 648, 63,
- 90, 103, 259, 272, 285, 298, 441, 454,
- 467, 480, 636, 649, 593, 632, 646, 802,
- 815, 594, 790, 803, 816, 829, 609, 791,
- 804, 817, 830, 842, 661, 623, 662, 818,
- 831, 310, 492, 674, 843, 115, 493, 675,
- 844, 77, 116, 273, 286, 299, 312, 455,
- 468, 481, 494, 637, 650, 663, 676, 819,
- 832, 845, 858, 789, 828, 998, 1011, 999,
- 1012, 805, 1000, 1013, 856, 1025, 857, 1026,
- 1014, 1027, 688, 870, 1039, 311, 689, 871,
- 1040, 482, 495, 651, 664, 677, 690, 833,
- 846, 859, 872, 1028, 1041, 21, 22, 34,
- 35, 36, 48, 49, 61, 62, 63, 75,
- 76, 204, 217, 218, 230, 231, 232, 243,
- 244, 245, 257, 258, 271, 400, 413, 414,
- 426, 427, 439, 440, 453, 609, 622, 9,
- 23, 37, 50, 64, 77, 205, 219, 233,
- 246, 259, 272, 401, 415, 428, 441, 454,
- 610, 623, 10, 24, 38, 51, 52, 65,
- 78, 91, 206, 220, 234, 247, 260, 273,
- 402, 416, 429, 442, 455, 598, 611, 624,
- 637, 89, 90, 285, 467, 636, 104, 286,
- 468, 650, 66, 79, 92, 248, 261, 274,
- 287, 430, 443, 456, 469, 612, 625, 638,
- 103, 117, 299, 481, 663, 105, 300, 482,
- 651, 80, 93, 106, 262, 275, 288, 301,
- 444, 457, 470, 483, 626, 639, 652, 596,
- 635, 649, 805, 818, 597, 793, 806, 819,
- 832, 794, 807, 820, 833, 845, 664, 665,
- 821, 834, 313, 495, 677, 846, 118, 496,
- 678, 847, 119, 276, 289, 302, 315, 458,
- 471, 484, 497, 640, 653, 666, 679, 822,
- 835, 848, 861, 792, 831, 1001, 1014, 1002,
- 1015, 808, 1003, 1016, 859, 1028, 860, 1029,
- 1004, 1017, 1030, 691, 873, 1042, 314, 692,
- 874, 1043, 472, 485, 498, 654, 667, 680,
- 693, 836, 849, 862, 875, 1018, 1031, 1044,
- 24, 25, 37, 38, 39, 51, 52, 64,
- 65, 66, 78, 79, 207, 220, 221, 233,
- 234, 235, 246, 247, 248, 260, 261, 274,
- 403, 416, 417, 429, 430, 442, 443, 456,
- 612, 625, 12, 26, 40, 53, 67, 80,
- 208, 222, 236, 249, 262, 275, 404, 418,
- 431, 444, 457, 613, 626, 13, 27, 41,
- 54, 55, 68, 81, 94, 209, 223, 237,
- 250, 263, 276, 405, 419, 432, 445, 458,
- 601, 614, 627, 640, 92, 93, 288, 470,
- 639, 107, 289, 471, 653, 69, 82, 95,
- 108, 251, 264, 277, 290, 433, 446, 459,
- 472, 615, 628, 641, 106, 302, 484, 121,
- 303, 485, 654, 667, 96, 109, 265, 278,
- 291, 304, 447, 460, 473, 486, 629, 642,
- 655, 599, 638, 652, 808, 821, 600, 796,
- 809, 822, 835, 797, 810, 823, 666, 836,
- 849, 668, 824, 837, 120, 498, 680, 317,
- 499, 681, 850, 83, 122, 292, 305, 461,
- 474, 487, 500, 643, 656, 669, 682, 825,
- 838, 851, 795, 834, 848, 1004, 1017, 1005,
- 1018, 811, 1006, 1019, 862, 1031, 863, 1032,
- 864, 1007, 1020, 1033, 316, 694, 876, 1045,
- 513, 695, 877, 1046, 1059, 279, 318, 488,
- 501, 657, 670, 683, 696, 839, 852, 865,
- 878, 1021, 1034, 1047, 27, 40, 41, 54,
- 55, 67, 68, 69, 81, 82, 223, 236,
- 237, 249, 250, 251, 263, 264, 277, 419,
- 432, 433, 445, 446, 459, 615, 628, 83,
- 95, 96, 265, 278, 291, 447, 460, 473,
- 629, 642, 97, 109, 110, 279, 292, 305,
- 461, 474, 487, 643, 656, 641, 655, 811,
- 824, 669, 825, 838, 123, 293, 306, 475,
- 488, 501, 657, 670, 683, 839, 852, 837,
- 851, 1007, 1020, 865, 1021, 1034, 319, 489,
- 502, 671, 684, 697, 853, 866, 879, 1035,
- 1048, 57, 58, 70, 71, 72, 84, 85,
- 98, 99, 112, 240, 253, 254, 266, 267,
- 268, 280, 281, 294, 436, 449, 450, 462,
- 463, 476, 645, 658, 45, 59, 73, 86,
- 100, 113, 241, 255, 269, 282, 295, 308,
- 437, 451, 464, 477, 490, 646, 659, 46,
- 60, 74, 87, 88, 101, 114, 127, 242,
- 256, 270, 283, 296, 309, 438, 452, 465,
- 478, 491, 634, 647, 660, 673, 126, 672,
- 140, 322, 504, 686, 115, 128, 284, 297,
- 310, 323, 466, 479, 492, 505, 661, 674,
- 141, 336, 518, 687, 102, 129, 142, 298,
- 311, 324, 337, 480, 493, 506, 519, 675,
- 688, 632, 841, 854, 633, 829, 842, 855,
- 868, 648, 843, 856, 700, 869, 662, 701,
- 857, 870, 882, 154, 532, 714, 883, 116,
- 155, 312, 325, 338, 351, 494, 507, 520,
- 533, 676, 689, 702, 715, 858, 871, 884,
- 897, 828, 1037, 1050, 1038, 1051, 830, 844,
- 1039, 1052, 1064, 896, 1065, 1053, 1066, 1078,
- 350, 728, 910, 1079, 521, 534, 547, 690,
- 703, 716, 729, 872, 885, 898, 911, 1067,
- 1080, 60, 61, 73, 74, 75, 87, 88,
- 100, 101, 102, 114, 115, 243, 256, 257,
- 269, 270, 271, 282, 283, 284, 296, 297,
- 310, 439, 452, 453, 465, 466, 478, 479,
- 492, 648, 661, 48, 62, 76, 89, 103,
- 116, 244, 258, 272, 285, 298, 311, 440,
- 454, 467, 480, 493, 649, 662, 49, 63,
- 77, 90, 91, 104, 117, 130, 245, 259,
- 273, 286, 299, 312, 441, 455, 468, 481,
- 494, 637, 650, 663, 676, 128, 129, 324,
- 506, 675, 143, 325, 507, 689, 118, 131,
- 287, 300, 313, 326, 469, 482, 495, 508,
- 664, 677, 142, 156, 338, 520, 702, 144,
- 339, 521, 690, 105, 132, 145, 301, 314,
- 327, 340, 483, 496, 509, 522, 678, 691,
- 635, 674, 688, 844, 857, 636, 832, 845,
- 858, 871, 651, 846, 859, 884, 703, 872,
- 665, 704, 860, 873, 352, 534, 716, 885,
- 157, 535, 717, 886, 119, 158, 315, 328,
- 341, 354, 497, 510, 523, 536, 679, 692,
- 705, 718, 861, 874, 887, 900, 831, 870,
- 1040, 1053, 1041, 1054, 833, 847, 1042, 1055,
- 898, 1067, 899, 1068, 1056, 1069, 730, 912,
- 1081, 353, 731, 913, 1082, 524, 537, 550,
- 693, 706, 719, 732, 875, 888, 901, 914,
- 1070, 1083, 63, 64, 76, 77, 78, 90,
- 91, 103, 104, 105, 117, 118, 246, 259,
- 260, 272, 273, 274, 285, 286, 287, 299,
- 300, 313, 442, 455, 456, 468, 469, 481,
- 482, 495, 651, 664, 51, 65, 79, 92,
- 106, 119, 247, 261, 275, 288, 301, 314,
- 443, 457, 470, 483, 496, 652, 665, 52,
- 66, 80, 93, 94, 107, 120, 133, 248,
- 262, 276, 289, 302, 315, 444, 458, 471,
- 484, 497, 640, 653, 666, 679, 131, 132,
- 327, 509, 678, 146, 328, 510, 692, 108,
- 121, 134, 147, 290, 303, 316, 329, 472,
- 485, 498, 511, 654, 667, 680, 693, 145,
- 159, 341, 523, 705, 342, 524, 135, 148,
- 304, 317, 330, 343, 486, 499, 512, 525,
- 668, 681, 694, 638, 677, 691, 847, 860,
- 639, 835, 848, 861, 874, 836, 849, 862,
- 887, 706, 875, 707, 850, 863, 876, 537,
- 719, 888, 160, 538, 720, 889, 122, 161,
- 331, 344, 500, 513, 526, 539, 682, 695,
- 708, 721, 864, 877, 890, 903, 834, 873,
- 1043, 1056, 1044, 1057, 1045, 1058, 901, 1070,
- 902, 1071, 1046, 1059, 1072, 1085, 355, 733,
- 915, 1084, 356, 734, 916, 318, 357, 527,
- 540, 696, 709, 722, 735, 878, 891, 904,
- 917, 1060, 1073, 1086, 66, 67, 79, 80,
- 81, 93, 94, 106, 107, 108, 120, 121,
- 249, 262, 263, 275, 276, 277, 288, 289,
- 290, 302, 303, 316, 445, 458, 459, 471,
- 472, 484, 485, 498, 654, 667, 54, 68,
- 82, 95, 109, 122, 250, 264, 278, 291,
- 304, 317, 446, 460, 473, 486, 499, 655,
- 668, 55, 69, 83, 96, 97, 110, 123,
- 136, 251, 265, 279, 292, 305, 318, 447,
- 461, 474, 487, 500, 643, 656, 669, 682,
- 134, 135, 330, 512, 681, 149, 331, 513,
- 695, 111, 124, 137, 150, 293, 306, 319,
- 332, 475, 488, 501, 514, 670, 683, 148,
- 162, 344, 526, 708, 163, 345, 527, 696,
- 138, 151, 164, 307, 320, 333, 346, 489,
- 502, 515, 528, 684, 697, 641, 680, 694,
- 850, 863, 642, 838, 851, 864, 877, 657,
- 839, 852, 865, 878, 709, 891, 671, 710,
- 866, 879, 358, 540, 722, 904, 359, 541,
- 723, 892, 125, 334, 347, 360, 503, 516,
- 529, 542, 685, 698, 711, 724, 867, 880,
- 893, 906, 837, 876, 890, 1046, 1059, 1047,
- 1060, 853, 1048, 1061, 1073, 905, 1074, 1087,
- 1062, 1075, 736, 918, 555, 737, 919, 1088,
- 321, 530, 543, 556, 699, 712, 725, 738,
- 881, 894, 907, 920, 1076, 1089, 69, 82,
- 83, 96, 97, 109, 110, 111, 123, 124,
- 265, 278, 279, 291, 292, 293, 305, 306,
- 319, 461, 474, 475, 487, 488, 501, 657,
- 670, 125, 137, 138, 307, 320, 333, 489,
- 502, 515, 671, 684, 139, 151, 152, 165,
- 321, 334, 347, 503, 516, 529, 685, 698,
- 711, 683, 697, 853, 866, 867, 880, 335,
- 348, 361, 517, 530, 543, 699, 712, 725,
- 881, 894, 907, 879, 893, 1049, 1062, 1063,
- 1076, 531, 544, 713, 726, 739, 895, 908,
- 921, 1077, 1090, 99, 100, 112, 113, 114,
- 126, 127, 140, 141, 154, 282, 295, 296,
- 308, 309, 310, 322, 323, 336, 478, 491,
- 492, 504, 505, 518, 687, 700, 87, 101,
- 115, 128, 142, 155, 283, 297, 311, 324,
- 337, 350, 479, 493, 506, 519, 532, 688,
- 701, 88, 102, 116, 129, 130, 143, 156,
- 169, 284, 298, 312, 325, 338, 351, 480,
- 494, 507, 520, 533, 676, 689, 702, 715,
- 168, 714, 182, 364, 546, 728, 157, 170,
- 326, 339, 352, 365, 508, 521, 534, 547,
- 703, 716, 183, 378, 560, 729, 144, 171,
- 184, 340, 353, 366, 379, 522, 535, 548,
- 561, 717, 730, 674, 883, 896, 675, 871,
- 884, 897, 910, 690, 885, 898, 742, 911,
- 704, 743, 899, 912, 924, 574, 756, 925,
- 158, 354, 367, 380, 536, 549, 562, 575,
- 718, 731, 744, 757, 900, 913, 926, 870,
- 1079, 1092, 1080, 1093, 872, 886, 1081, 1094,
- 1106, 938, 1107, 939, 1095, 1108, 1120, 770,
- 952, 1121, 550, 563, 576, 732, 745, 758,
- 771, 914, 927, 940, 953, 1109, 1122, 102,
- 103, 115, 116, 117, 129, 130, 142, 143,
- 144, 156, 157, 285, 298, 299, 311, 312,
- 313, 324, 325, 326, 338, 339, 352, 481,
- 494, 495, 507, 508, 520, 521, 534, 690,
- 703, 90, 104, 118, 131, 145, 158, 286,
- 300, 314, 327, 340, 353, 482, 496, 509,
- 522, 535, 691, 704, 91, 105, 119, 132,
- 133, 146, 159, 172, 287, 301, 315, 328,
- 341, 354, 483, 497, 510, 523, 536, 679,
- 692, 705, 718, 170, 171, 366, 548, 717,
- 185, 367, 549, 731, 147, 160, 173, 186,
- 329, 342, 355, 368, 511, 524, 537, 550,
- 693, 706, 719, 732, 184, 380, 562, 744,
- 381, 563, 745, 174, 187, 343, 356, 369,
- 382, 525, 538, 551, 564, 720, 733, 677,
- 716, 730, 886, 899, 678, 874, 887, 900,
- 913, 888, 901, 926, 914, 707, 746, 902,
- 915, 576, 758, 927, 577, 759, 928, 161,
- 370, 383, 539, 552, 565, 578, 721, 734,
- 747, 760, 903, 916, 929, 873, 912, 1082,
- 1095, 1083, 1096, 875, 889, 1084, 1097, 940,
- 1109, 941, 1110, 942, 1085, 1098, 1111, 1124,
- 772, 954, 1123, 773, 955, 1137, 357, 566,
- 579, 735, 748, 761, 774, 917, 930, 943,
- 956, 1112, 1125, 105, 106, 118, 119, 120,
- 132, 133, 145, 146, 147, 159, 160, 288,
- 301, 302, 314, 315, 316, 327, 328, 329,
- 341, 342, 355, 484, 497, 498, 510, 511,
- 523, 524, 537, 693, 706, 107, 121, 134,
- 148, 161, 289, 303, 317, 330, 343, 356,
- 485, 499, 512, 525, 538, 694, 707, 94,
- 108, 122, 135, 136, 149, 162, 175, 290,
- 304, 318, 331, 344, 357, 486, 500, 513,
- 526, 539, 682, 695, 708, 721, 173, 174,
- 369, 551, 720, 188, 370, 552, 734, 150,
- 163, 176, 189, 332, 345, 358, 371, 514,
- 527, 540, 553, 709, 722, 187, 383, 565,
- 747, 384, 566, 735, 164, 177, 190, 346,
- 359, 372, 385, 528, 541, 554, 567, 723,
- 736, 680, 719, 733, 889, 902, 681, 890,
- 903, 696, 878, 891, 904, 917, 916, 748,
- 930, 710, 749, 905, 918, 579, 761, 943,
- 580, 762, 931, 360, 373, 386, 542, 555,
- 568, 581, 724, 737, 750, 763, 906, 919,
- 932, 945, 876, 915, 929, 1085, 1098, 877,
- 1086, 1099, 892, 1074, 1087, 1100, 1113, 1112,
- 944, 1126, 1101, 1114, 775, 957, 776, 958,
- 1127, 556, 569, 582, 738, 751, 764, 777,
- 920, 933, 946, 959, 1115, 1128, 108, 109,
- 121, 122, 123, 135, 136, 148, 149, 150,
- 162, 163, 291, 304, 305, 317, 318, 319,
- 330, 331, 332, 344, 345, 358, 487, 500,
- 501, 513, 514, 526, 527, 540, 696, 709,
- 96, 110, 124, 137, 151, 164, 292, 306,
- 320, 333, 346, 359, 488, 502, 515, 528,
- 541, 697, 710, 97, 111, 125, 138, 139,
- 152, 165, 178, 293, 307, 321, 334, 347,
- 360, 489, 503, 516, 529, 542, 685, 698,
- 711, 724, 176, 177, 372, 554, 723, 191,
- 373, 555, 737, 153, 166, 179, 192, 335,
- 348, 361, 374, 517, 530, 543, 556, 712,
- 725, 190, 386, 568, 387, 569, 738, 167,
- 180, 193, 349, 362, 375, 388, 531, 544,
- 557, 570, 726, 739, 683, 722, 736, 892,
- 905, 684, 880, 893, 906, 919, 699, 881,
- 894, 907, 920, 750, 751, 713, 752, 908,
- 921, 582, 764, 933, 583, 765, 934, 363,
- 376, 389, 545, 558, 571, 584, 727, 740,
- 753, 766, 909, 922, 935, 948, 879, 918,
- 932, 1088, 1101, 1089, 1102, 895, 1077, 1090,
- 1103, 946, 1115, 947, 1116, 1104, 1117, 778,
- 960, 1129, 779, 961, 1130, 559, 572, 585,
- 741, 754, 767, 780, 923, 936, 949, 962,
- 1118, 1131, 111, 124, 125, 138, 139, 151,
- 152, 153, 165, 166, 307, 320, 321, 333,
- 334, 335, 347, 348, 361, 503, 516, 517,
- 529, 530, 543, 699, 712, 167, 179, 180,
- 349, 362, 375, 531, 544, 557, 713, 726,
- 181, 193, 194, 363, 376, 389, 545, 558,
- 571, 727, 740, 725, 739, 895, 908, 753,
- 909, 922, 377, 390, 559, 572, 585, 741,
- 754, 767, 923, 936, 921, 935, 1091, 1104,
- 949, 1105, 1118, 573, 586, 755, 768, 781,
- 937, 950, 963, 1119, 1132, 141, 142, 154,
- 155, 156, 168, 169, 182, 183, 324, 337,
- 338, 350, 351, 352, 364, 365, 378, 520,
- 533, 534, 546, 547, 560, 729, 742, 143,
- 157, 170, 184, 325, 339, 353, 366, 379,
- 521, 535, 548, 561, 574, 730, 743, 130,
- 144, 158, 171, 172, 185, 326, 340, 354,
- 367, 380, 522, 536, 549, 562, 575, 718,
- 731, 744, 757, 716, 756, 925, 938, 717,
- 770, 926, 939, 381, 550, 563, 576, 732,
- 745, 758, 771, 927, 940, 912, 952, 1121,
- 1134, 913, 953, 966, 1122, 1135, 368, 577,
- 746, 759, 772, 914, 928, 941, 954, 967,
- 1123, 1136, 144, 145, 157, 158, 159, 171,
- 172, 184, 185, 186, 327, 340, 341, 353,
- 354, 355, 366, 367, 368, 380, 381, 523,
- 536, 537, 549, 550, 562, 563, 576, 732,
- 745, 146, 160, 173, 187, 328, 342, 356,
- 369, 382, 524, 538, 551, 564, 577, 733,
- 746, 133, 147, 161, 174, 175, 188, 329,
- 343, 357, 370, 383, 525, 539, 552, 565,
- 578, 721, 734, 747, 760, 719, 758, 759,
- 772, 928, 941, 720, 773, 929, 942, 371,
- 384, 553, 566, 579, 735, 748, 761, 774,
- 917, 930, 943, 956, 915, 954, 955, 968,
- 1124, 1137, 916, 969, 1125, 1138, 567, 580,
- 749, 762, 775, 931, 944, 957, 970, 1113,
- 1126, 1139, 1152, 147, 148, 160, 161, 162,
- 174, 175, 187, 188, 189, 330, 343, 344,
- 356, 357, 358, 369, 370, 371, 383, 384,
- 526, 539, 540, 552, 553, 565, 566, 579,
- 735, 748, 149, 163, 176, 190, 331, 345,
- 359, 372, 385, 527, 541, 554, 567, 580,
- 736, 749, 136, 150, 164, 177, 178, 191,
- 332, 346, 360, 373, 386, 528, 542, 555,
- 568, 581, 724, 737, 750, 763, 722, 761,
- 762, 775, 931, 944, 723, 776, 932, 945,
- 374, 387, 556, 569, 582, 738, 751, 764,
- 777, 920, 933, 946, 959, 918, 957, 958,
- 971, 1127, 1140, 919, 972, 1128, 1141, 570,
- 583, 752, 765, 778, 934, 947, 960, 973,
- 1116, 1129, 1142, 1155, 150, 151, 163, 164,
- 165, 177, 178, 190, 191, 192, 333, 346,
- 347, 359, 360, 361, 372, 373, 374, 386,
- 387, 529, 542, 543, 555, 556, 568, 569,
- 582, 738, 751, 138, 152, 166, 179, 193,
- 334, 348, 362, 375, 388, 530, 544, 557,
- 570, 583, 739, 752, 139, 153, 167, 180,
- 181, 194, 335, 349, 363, 376, 389, 531,
- 545, 558, 571, 584, 727, 740, 753, 766,
- 725, 764, 765, 778, 934, 947, 726, 779,
- 922, 935, 948, 961, 377, 390, 559, 572,
- 585, 741, 754, 767, 780, 923, 936, 949,
- 962, 921, 960, 974, 1130, 1143, 975, 1131,
- 1144, 573, 586, 755, 768, 781, 937, 950,
- 963, 976, 1119, 1132, 1145, 153, 166, 167,
- 180, 181, 193, 194, 195, 349, 362, 363,
- 375, 376, 377, 389, 390, 545, 558, 559,
- 571, 572, 585, 741, 754, 391, 573, 586,
- 755, 767, 768, 781, 937, 950, 587, 769,
- 782, 951, 963, 964, 977, 1133, 1146, 15,
- 28, 197, 198, 210, 211, 224, 392, 393,
- 394, 406, 407, 420, 588, 589, 602, 603,
- 616, 784, 785, 798, 980, 16, 29, 199,
- 212, 225, 238, 395, 408, 421, 434, 590,
- 604, 617, 786, 799, 812, 981, 994, 17,
- 30, 200, 213, 226, 239, 396, 409, 422,
- 435, 591, 592, 605, 618, 631, 787, 800,
- 813, 982, 995, 1177, 42, 630, 1176, 43,
- 252, 448, 644, 826, 1008, 1190, 31, 44,
- 214, 227, 240, 253, 410, 423, 436, 449,
- 619, 632, 788, 801, 814, 827, 983, 996,
- 1009, 1178, 56, 57, 266, 462, 645, 840,
- 1022, 1191, 45, 58, 228, 241, 254, 267,
- 424, 437, 450, 463, 606, 633, 646, 802,
- 815, 828, 841, 984, 997, 1010, 1023, 1179,
- 1192, 1373, 1372, 1204, 1205, 1374, 1386, 658,
- 1036, 1218, 1387, 620, 659, 829, 842, 998,
- 1011, 1024, 1037, 1180, 1193, 1206, 1219, 1375,
- 1388, 1401, 1568, 1400, 1569, 1570, 1582, 854,
- 1232, 1414, 1583, 816, 855, 1025, 1038, 1194,
- 1207, 1220, 1233, 1376, 1389, 1402, 1415, 1571,
- 1584, 1597, 18, 31, 200, 201, 213, 214,
- 226, 227, 240, 395, 396, 397, 408, 409,
- 410, 422, 423, 436, 591, 592, 604, 605,
- 606, 618, 619, 786, 787, 788, 800, 801,
- 814, 982, 983, 996, 19, 32, 202, 215,
- 228, 241, 398, 411, 424, 437, 593, 607,
- 620, 789, 802, 815, 984, 997, 7, 20,
- 33, 46, 203, 216, 229, 242, 399, 412,
- 425, 438, 594, 595, 608, 621, 634, 790,
- 803, 816, 985, 998, 1180, 45, 254, 450,
- 632, 633, 828, 1010, 1179, 59, 255, 451,
- 647, 829, 1011, 1193, 34, 47, 217, 230,
- 243, 256, 413, 426, 439, 452, 622, 635,
- 791, 804, 817, 830, 986, 999, 1012, 1181,
- 72, 268, 464, 646, 660, 842, 1024, 60,
- 269, 465, 648, 843, 1025, 1194, 48, 61,
- 231, 244, 257, 270, 427, 440, 453, 466,
- 609, 636, 649, 805, 818, 831, 844, 987,
- 1000, 1013, 1026, 1182, 1195, 1178, 1192, 1375,
- 1376, 1206, 1207, 1208, 1377, 856, 1038, 1220,
- 1389, 661, 1039, 1221, 1390, 623, 662, 832,
- 845, 1001, 1014, 1027, 1040, 1183, 1196, 1209,
- 1222, 1378, 1391, 1404, 1374, 1388, 1571, 1402,
- 1403, 1572, 1573, 1234, 1416, 1585, 857, 1235,
- 1417, 1586, 819, 858, 1028, 1041, 1197, 1210,
- 1223, 1236, 1379, 1392, 1405, 1418, 1574, 1587,
- 1600, 21, 34, 203, 204, 216, 217, 229,
- 230, 243, 398, 399, 400, 411, 412, 413,
- 425, 426, 439, 594, 595, 607, 608, 609,
- 621, 622, 789, 790, 791, 803, 804, 817,
- 985, 986, 999, 22, 35, 205, 218, 231,
- 244, 401, 414, 427, 440, 596, 610, 623,
- 792, 805, 818, 987, 1000, 10, 23, 36,
- 49, 206, 219, 232, 245, 402, 415, 428,
- 441, 597, 598, 611, 624, 637, 793, 806,
- 819, 988, 1001, 1183, 48, 257, 453, 635,
- 636, 831, 1013, 1182, 62, 258, 454, 650,
- 832, 1014, 1196, 37, 50, 220, 233, 246,
- 259, 416, 429, 442, 455, 612, 625, 638,
- 794, 807, 820, 833, 989, 1002, 1015, 1184,
- 75, 271, 467, 649, 663, 845, 1027, 63,
- 272, 468, 651, 846, 1028, 1197, 38, 51,
- 64, 234, 247, 260, 273, 430, 443, 456,
- 469, 626, 639, 652, 808, 821, 834, 847,
- 990, 1003, 1016, 1029, 1185, 1198, 1181, 1195,
- 1378, 1379, 1209, 1210, 1211, 1380, 859, 1041,
- 1223, 1392, 664, 1042, 1224, 1393, 665, 822,
- 835, 848, 1004, 1017, 1030, 1043, 1186, 1199,
- 1212, 1225, 1381, 1394, 1407, 1377, 1391, 1574,
- 1405, 1406, 1575, 1576, 1237, 1419, 1588, 860,
- 1238, 1420, 1589, 861, 1018, 1031, 1044, 1200,
- 1213, 1226, 1239, 1382, 1395, 1408, 1421, 1577,
- 1590, 1603, 24, 37, 206, 207, 219, 220,
- 232, 233, 246, 401, 402, 403, 414, 415,
- 416, 428, 429, 442, 597, 598, 610, 611,
- 612, 624, 625, 792, 793, 794, 806, 807,
- 820, 988, 989, 1002, 12, 25, 38, 51,
- 208, 221, 234, 247, 404, 417, 430, 443,
- 599, 613, 626, 795, 808, 821, 990, 1003,
- 1185, 13, 26, 39, 52, 209, 222, 235,
- 248, 405, 418, 431, 444, 600, 601, 614,
- 627, 640, 796, 809, 822, 991, 1004, 1186,
- 260, 456, 638, 639, 834, 1016, 65, 261,
- 457, 653, 835, 1017, 1199, 40, 53, 223,
- 236, 249, 262, 419, 432, 445, 458, 615,
- 628, 641, 654, 797, 810, 823, 836, 992,
- 1005, 1018, 1187, 274, 470, 652, 848, 1030,
- 66, 275, 471, 667, 849, 1031, 1200, 1213,
- 41, 54, 67, 80, 237, 250, 263, 276,
- 433, 446, 459, 472, 629, 642, 655, 668,
- 811, 824, 837, 850, 993, 1006, 1019, 1032,
- 1188, 1201, 1184, 1198, 1381, 1382, 1212, 1214,
- 1383, 666, 1044, 1226, 1395, 1045, 1227, 1396,
- 825, 838, 851, 864, 1007, 1020, 1033, 1046,
- 1189, 1202, 1215, 1228, 1384, 1397, 1380, 1394,
- 1577, 1408, 1409, 1578, 1410, 1579, 862, 1240,
- 1422, 1591, 863, 1059, 1241, 1423, 1592, 1605,
- 1021, 1034, 1047, 1060, 1203, 1216, 1229, 1242,
- 1385, 1398, 1411, 1424, 1580, 1593, 27, 40,
- 209, 222, 223, 235, 236, 249, 404, 405,
- 417, 418, 419, 431, 432, 445, 600, 601,
- 613, 614, 615, 627, 628, 795, 796, 797,
- 809, 810, 823, 991, 992, 1005, 41, 54,
- 237, 250, 263, 433, 446, 459, 629, 641,
- 642, 811, 824, 837, 993, 1006, 1019, 1188,
- 55, 68, 251, 264, 277, 447, 460, 473,
- 643, 655, 656, 825, 838, 851, 1007, 1020,
- 1033, 1189, 1202, 1187, 1201, 1215, 1384, 669,
- 839, 852, 1021, 1034, 1047, 1203, 1216, 1229,
- 1385, 1398, 1383, 1397, 1411, 1580, 865, 1035,
- 1048, 1217, 1230, 1243, 1399, 1412, 1425, 1581,
- 1594, 57, 70, 226, 239, 240, 252, 253,
- 266, 408, 421, 422, 434, 435, 436, 448,
- 449, 462, 603, 604, 616, 617, 618, 630,
- 631, 644, 645, 658, 786, 799, 800, 812,
- 813, 814, 826, 827, 840, 982, 995, 996,
- 1008, 1009, 1022, 1191, 1204, 58, 71, 227,
- 241, 254, 267, 280, 409, 423, 437, 450,
- 463, 476, 591, 605, 619, 632, 646, 659,
- 787, 801, 815, 828, 841, 854, 983, 997,
- 1010, 1023, 1036, 1192, 1205, 46, 59, 72,
- 85, 228, 242, 255, 268, 281, 410, 424,
- 438, 451, 464, 477, 592, 606, 620, 633,
- 634, 647, 660, 673, 788, 802, 816, 829,
- 842, 855, 984, 998, 1011, 1024, 1037, 1180,
- 1193, 1206, 1219, 84, 672, 1218, 98, 294,
- 490, 686, 868, 1050, 73, 86, 256, 269,
- 282, 295, 452, 465, 478, 491, 661, 674,
- 830, 843, 856, 869, 1012, 1025, 1038, 1051,
- 1207, 1220, 1232, 99, 308, 504, 687, 882,
- 1064, 1233, 74, 87, 100, 113, 270, 283,
- 296, 309, 466, 479, 492, 505, 648, 675,
- 688, 844, 857, 870, 883, 1026, 1039, 1052,
- 1065, 1221, 1234, 1178, 1387, 1400, 1179, 1375,
- 1388, 1401, 1414, 1194, 1376, 1389, 1402, 1415,
- 1246, 1208, 1247, 1403, 1416, 1428, 700, 1078,
- 1260, 1429, 662, 701, 858, 871, 884, 897,
- 1040, 1053, 1066, 1079, 1222, 1235, 1248, 1261,
- 1404, 1417, 1430, 1443, 1374, 1583, 1596, 1571,
- 1584, 1597, 1610, 1390, 1585, 1598, 1442, 1611,
- 1599, 1612, 1624, 896, 1274, 1456, 1625, 1067,
- 1080, 1236, 1249, 1262, 1275, 1418, 1431, 1444,
- 1457, 1600, 1613, 1626, 1639, 60, 73, 229,
- 242, 243, 255, 256, 268, 269, 282, 411,
- 424, 425, 437, 438, 439, 450, 451, 452,
- 464, 465, 478, 606, 607, 619, 620, 621,
- 633, 634, 646, 647, 648, 660, 661, 789,
- 802, 803, 815, 816, 817, 828, 829, 830,
- 842, 843, 856, 985, 998, 999, 1011, 1012,
- 1024, 1025, 1038, 1194, 1207, 61, 74, 230,
- 244, 257, 270, 283, 412, 426, 440, 453,
- 466, 479, 594, 608, 622, 635, 649, 662,
- 790, 804, 818, 831, 844, 857, 986, 1000,
- 1013, 1026, 1039, 1195, 1208, 49, 62, 75,
- 88, 231, 245, 258, 271, 284, 413, 427,
- 441, 454, 467, 480, 595, 609, 623, 636,
- 637, 650, 663, 676, 791, 805, 819, 832,
- 845, 858, 987, 1001, 1014, 1027, 1040, 1183,
- 1196, 1209, 1222, 87, 100, 296, 492, 674,
- 675, 688, 870, 1052, 1221, 101, 297, 493,
- 689, 871, 1053, 76, 89, 259, 272, 285,
- 298, 455, 468, 481, 494, 664, 677, 833,
- 846, 859, 872, 1015, 1028, 1041, 1054, 1210,
- 1223, 114, 310, 506, 702, 884, 1066, 1235,
- 102, 311, 507, 690, 885, 1067, 1236, 77,
- 90, 103, 116, 273, 286, 299, 312, 469,
- 482, 495, 508, 651, 678, 691, 847, 860,
- 873, 886, 1029, 1042, 1055, 1068, 1224, 1237,
- 1181, 1220, 1234, 1390, 1403, 1182, 1378, 1391,
- 1404, 1417, 1197, 1379, 1392, 1405, 1418, 1248,
- 1430, 1249, 1211, 1250, 1406, 1419, 898, 1080,
- 1262, 1431, 703, 1081, 1263, 1432, 665, 704,
- 861, 874, 887, 900, 1043, 1056, 1069, 1082,
- 1225, 1238, 1251, 1264, 1407, 1420, 1433, 1446,
- 1377, 1416, 1586, 1599, 1574, 1587, 1600, 1613,
- 1393, 1588, 1601, 1444, 1626, 1445, 1614, 1602,
- 1615, 1276, 1458, 1627, 899, 1277, 1459, 1628,
- 1070, 1083, 1239, 1252, 1265, 1278, 1421, 1434,
- 1447, 1460, 1603, 1616, 1629, 1642, 63, 76,
- 232, 245, 246, 258, 259, 271, 272, 285,
- 414, 427, 428, 440, 441, 442, 453, 454,
- 455, 467, 468, 481, 609, 610, 622, 623,
- 624, 636, 637, 649, 650, 651, 663, 664,
- 792, 805, 806, 818, 819, 820, 831, 832,
- 833, 845, 846, 859, 988, 1001, 1002, 1014,
- 1015, 1027, 1028, 1041, 1197, 1210, 64, 77,
- 233, 247, 260, 273, 286, 415, 429, 443,
- 456, 469, 482, 597, 611, 625, 638, 652,
- 665, 793, 807, 821, 834, 847, 860, 989,
- 1003, 1016, 1029, 1042, 1198, 1211, 52, 65,
- 78, 91, 234, 248, 261, 274, 287, 416,
- 430, 444, 457, 470, 483, 598, 612, 626,
- 639, 640, 653, 666, 679, 794, 808, 822,
- 835, 848, 861, 990, 1004, 1017, 1030, 1043,
- 1186, 1199, 1212, 1225, 90, 103, 299, 495,
- 677, 678, 691, 873, 1055, 1224, 104, 300,
- 496, 692, 874, 1056, 79, 92, 262, 275,
- 288, 301, 458, 471, 484, 497, 654, 667,
- 680, 836, 849, 862, 875, 1018, 1031, 1044,
- 1057, 1200, 1213, 1226, 117, 313, 509, 705,
- 887, 1069, 1238, 105, 314, 510, 693, 888,
- 1070, 1239, 80, 93, 106, 119, 276, 289,
- 302, 315, 472, 485, 498, 511, 668, 681,
- 694, 850, 863, 876, 889, 1032, 1045, 1058,
- 1071, 1214, 1227, 1240, 1184, 1223, 1237, 1393,
- 1406, 1185, 1381, 1394, 1407, 1420, 1382, 1395,
- 1408, 1421, 1251, 1433, 1252, 1253, 1409, 1422,
- 901, 1083, 1265, 1434, 706, 1084, 1266, 1435,
- 707, 864, 877, 890, 903, 1046, 1059, 1072,
- 1085, 1228, 1241, 1254, 1267, 1410, 1423, 1436,
- 1449, 1380, 1419, 1589, 1602, 1577, 1590, 1603,
- 1616, 1396, 1591, 1604, 1447, 1629, 1448, 1617,
- 1592, 1605, 1618, 1279, 1461, 1630, 902, 1280,
- 1462, 1631, 1060, 1073, 1086, 1242, 1255, 1268,
- 1281, 1424, 1437, 1450, 1463, 1606, 1619, 1632,
- 1645, 66, 79, 235, 248, 249, 261, 262,
- 274, 275, 288, 417, 430, 431, 443, 444,
- 445, 456, 457, 458, 470, 471, 484, 612,
- 613, 625, 626, 627, 639, 640, 652, 653,
- 654, 666, 667, 795, 808, 809, 821, 822,
- 823, 834, 835, 836, 848, 849, 862, 991,
- 1004, 1005, 1017, 1018, 1030, 1031, 1044, 1200,
- 1213, 67, 80, 93, 236, 250, 263, 276,
- 289, 418, 432, 446, 459, 472, 485, 600,
- 614, 628, 641, 655, 668, 796, 810, 824,
- 837, 850, 863, 992, 1006, 1019, 1032, 1045,
- 1201, 1214, 55, 68, 81, 94, 237, 251,
- 264, 277, 290, 419, 433, 447, 460, 473,
- 486, 601, 615, 629, 642, 643, 656, 669,
- 682, 797, 811, 825, 838, 851, 864, 993,
- 1007, 1020, 1033, 1046, 1189, 1202, 1215, 1228,
- 302, 498, 680, 681, 876, 1058, 1227, 107,
- 303, 499, 695, 877, 1059, 1241, 82, 95,
- 265, 278, 291, 304, 461, 474, 487, 500,
- 657, 670, 683, 696, 839, 852, 865, 878,
- 1021, 1034, 1047, 1060, 1203, 1216, 1229, 316,
- 512, 694, 890, 1072, 108, 317, 513, 709,
- 891, 1073, 1242, 1255, 96, 109, 279, 292,
- 305, 318, 475, 488, 501, 514, 684, 697,
- 853, 866, 879, 892, 1035, 1048, 1061, 1074,
- 1217, 1230, 1243, 1187, 1226, 1240, 1396, 1409,
- 1188, 1384, 1397, 1410, 1423, 1385, 1398, 1411,
- 1254, 1424, 1437, 1256, 1412, 1425, 708, 1086,
- 1268, 905, 1087, 1269, 1438, 671, 710, 880,
- 893, 1049, 1062, 1075, 1088, 1231, 1244, 1257,
- 1270, 1413, 1426, 1439, 1383, 1422, 1436, 1592,
- 1605, 1580, 1593, 1606, 1619, 1399, 1594, 1607,
- 1450, 1451, 1620, 1452, 1595, 1608, 1621, 1634,
- 904, 1282, 1464, 1633, 1101, 1283, 1465, 1647,
- 867, 906, 1076, 1089, 1245, 1258, 1271, 1284,
- 1427, 1440, 1453, 1466, 1609, 1622, 1635, 69,
- 82, 251, 264, 265, 277, 278, 291, 433,
- 446, 447, 459, 460, 461, 473, 474, 487,
- 615, 628, 629, 642, 643, 655, 656, 657,
- 669, 670, 811, 824, 825, 837, 838, 839,
- 851, 852, 865, 1007, 1020, 1021, 1033, 1034,
- 1047, 1203, 1216, 83, 96, 279, 292, 305,
- 475, 488, 501, 671, 683, 684, 853, 866,
- 879, 1035, 1048, 1061, 1217, 1230, 97, 110,
- 293, 306, 319, 489, 502, 515, 685, 697,
- 698, 867, 880, 893, 1049, 1062, 1075, 1231,
- 1244, 1229, 1243, 1399, 1412, 1257, 1413, 1426,
- 711, 881, 894, 1063, 1076, 1089, 1245, 1258,
- 1271, 1427, 1440, 1425, 1439, 1595, 1608, 1453,
- 1609, 1622, 907, 1077, 1090, 1259, 1272, 1285,
- 1441, 1454, 1467, 1623, 1636, 99, 112, 268,
- 281, 282, 294, 295, 308, 450, 463, 464,
- 476, 477, 478, 490, 491, 504, 645, 646,
- 658, 659, 660, 672, 673, 686, 687, 700,
- 828, 841, 842, 854, 855, 856, 868, 869,
- 882, 1024, 1037, 1038, 1050, 1051, 1064, 1233,
- 1246, 100, 113, 269, 283, 296, 309, 322,
- 451, 465, 479, 492, 505, 518, 633, 647,
- 661, 674, 688, 701, 829, 843, 857, 870,
- 883, 896, 1025, 1039, 1052, 1065, 1078, 1234,
- 1247, 88, 101, 114, 127, 270, 284, 297,
- 310, 323, 452, 466, 480, 493, 506, 519,
- 648, 662, 675, 676, 689, 702, 715, 830,
- 844, 858, 871, 884, 897, 1026, 1040, 1053,
- 1066, 1079, 1235, 1248, 126, 714, 1260, 336,
- 532, 910, 1092, 1261, 115, 128, 298, 311,
- 324, 337, 494, 507, 520, 533, 703, 716,
- 872, 885, 898, 911, 1054, 1067, 1080, 1093,
- 1249, 1262, 140, 728, 1274, 141, 350, 546,
- 729, 924, 1106, 1275, 116, 129, 142, 155,
- 312, 325, 338, 351, 508, 521, 534, 547,
- 690, 717, 730, 743, 886, 899, 912, 925,
- 1068, 1081, 1094, 1107, 1263, 1276, 1220, 1429,
- 1442, 1221, 1417, 1430, 1443, 1456, 1222, 1236,
- 1431, 1444, 1288, 1457, 1250, 1289, 1445, 1458,
- 1470, 742, 1120, 1302, 1471, 704, 900, 913,
- 926, 939, 1082, 1095, 1108, 1121, 1264, 1277,
- 1290, 1303, 1446, 1459, 1472, 1485, 1416, 1625,
- 1638, 1613, 1626, 1639, 1652, 1418, 1432, 1627,
- 1640, 1484, 1653, 1641, 1654, 1666, 938, 1316,
- 1498, 1667, 1109, 1122, 1135, 1278, 1291, 1304,
- 1317, 1460, 1473, 1486, 1499, 1642, 1655, 1668,
- 1681, 102, 115, 271, 284, 285, 297, 298,
- 310, 311, 324, 453, 466, 467, 479, 480,
- 481, 492, 493, 494, 506, 507, 520, 648,
- 649, 661, 662, 663, 675, 676, 688, 689,
- 690, 702, 703, 831, 844, 845, 857, 858,
- 859, 870, 871, 872, 884, 885, 898, 1027,
- 1040, 1041, 1053, 1054, 1066, 1067, 1080, 1236,
- 1249, 103, 116, 272, 286, 299, 312, 325,
- 454, 468, 482, 495, 508, 521, 636, 650,
- 664, 677, 691, 704, 832, 846, 860, 873,
- 886, 899, 1028, 1042, 1055, 1068, 1081, 1237,
- 1250, 91, 104, 117, 130, 273, 287, 300,
- 313, 326, 455, 469, 483, 496, 509, 522,
- 651, 665, 678, 679, 692, 705, 718, 833,
- 847, 861, 874, 887, 900, 1029, 1043, 1056,
- 1069, 1082, 1238, 1251, 129, 142, 338, 534,
- 716, 717, 730, 912, 1094, 1263, 339, 535,
- 913, 1095, 1264, 118, 131, 301, 314, 327,
- 340, 497, 510, 523, 536, 706, 719, 875,
- 888, 901, 914, 1057, 1070, 1083, 1096, 1252,
- 1265, 143, 156, 352, 548, 731, 744, 926,
- 1108, 1277, 144, 353, 549, 732, 927, 1109,
- 1278, 119, 132, 145, 158, 315, 328, 341,
- 354, 511, 524, 537, 550, 693, 720, 733,
- 746, 889, 902, 915, 928, 1071, 1084, 1097,
- 1110, 1266, 1279, 1223, 1262, 1276, 1432, 1445,
- 1224, 1420, 1433, 1446, 1459, 1225, 1239, 1434,
- 1447, 1290, 1472, 1291, 1460, 1253, 1292, 1448,
- 1461, 940, 1122, 1304, 1473, 745, 1123, 1305,
- 1474, 707, 903, 916, 929, 942, 1085, 1098,
- 1111, 1124, 1267, 1280, 1293, 1306, 1449, 1462,
- 1475, 1488, 1419, 1458, 1628, 1641, 1616, 1629,
- 1642, 1655, 1421, 1435, 1630, 1643, 1486, 1487,
- 1656, 1644, 1657, 1318, 1500, 1669, 941, 1319,
- 1501, 1670, 1112, 1125, 1138, 1281, 1294, 1307,
- 1320, 1463, 1476, 1489, 1502, 1645, 1658, 1671,
- 1684, 105, 118, 274, 287, 288, 300, 301,
- 313, 314, 327, 456, 469, 470, 482, 483,
- 484, 495, 496, 497, 509, 510, 523, 651,
- 652, 664, 665, 666, 678, 679, 691, 692,
- 693, 705, 706, 834, 847, 848, 860, 861,
- 862, 873, 874, 875, 887, 888, 901, 1030,
- 1043, 1044, 1056, 1057, 1069, 1070, 1083, 1239,
- 1252, 106, 119, 275, 289, 302, 315, 328,
- 457, 471, 485, 498, 511, 524, 639, 653,
- 667, 680, 694, 707, 835, 849, 863, 876,
- 889, 902, 1031, 1045, 1058, 1071, 1084, 1240,
- 1253, 94, 107, 120, 276, 290, 303, 316,
- 329, 458, 472, 486, 499, 512, 525, 640,
- 654, 668, 681, 682, 695, 708, 836, 850,
- 864, 877, 890, 903, 1032, 1046, 1059, 1072,
- 1085, 1228, 1241, 1254, 132, 145, 341, 537,
- 719, 720, 733, 915, 1097, 1266, 133, 342,
- 538, 721, 916, 1098, 1267, 121, 134, 304,
- 317, 330, 343, 500, 513, 526, 539, 696,
- 709, 722, 735, 878, 891, 904, 917, 1060,
- 1073, 1086, 1099, 1242, 1255, 1268, 1281, 146,
- 355, 551, 734, 929, 1111, 1280, 147, 356,
- 552, 930, 1112, 135, 148, 318, 331, 344,
- 357, 514, 527, 540, 553, 723, 736, 892,
- 905, 918, 931, 1074, 1087, 1100, 1113, 1256,
- 1269, 1282, 1226, 1265, 1279, 1435, 1448, 1227,
- 1423, 1436, 1449, 1462, 1424, 1437, 1450, 1293,
- 1475, 1294, 1463, 1295, 1438, 1451, 1464, 747,
- 1125, 1307, 1476, 748, 1126, 1308, 1477, 710,
- 749, 919, 932, 1088, 1101, 1114, 1127, 1270,
- 1283, 1296, 1309, 1452, 1465, 1478, 1491, 1422,
- 1461, 1631, 1644, 1619, 1632, 1645, 1658, 1633,
- 1646, 1489, 1490, 1659, 1634, 1647, 1660, 1673,
- 943, 1321, 1503, 1672, 944, 1322, 1504, 906,
- 945, 1115, 1128, 1284, 1297, 1310, 1323, 1466,
- 1479, 1492, 1505, 1648, 1661, 1674, 1687, 108,
- 121, 277, 290, 291, 303, 304, 316, 317,
- 330, 459, 472, 473, 485, 486, 487, 498,
- 499, 500, 512, 513, 526, 654, 655, 667,
- 668, 669, 681, 682, 694, 695, 696, 708,
- 709, 837, 850, 851, 863, 864, 865, 876,
- 877, 878, 890, 891, 904, 1033, 1046, 1047,
- 1059, 1060, 1072, 1073, 1086, 1242, 1255, 109,
- 122, 278, 292, 305, 318, 331, 460, 474,
- 488, 501, 514, 527, 642, 656, 670, 683,
- 697, 710, 838, 852, 866, 879, 892, 905,
- 1034, 1048, 1061, 1074, 1087, 1243, 1256, 97,
- 110, 123, 136, 279, 293, 306, 319, 332,
- 461, 475, 489, 502, 515, 528, 643, 657,
- 671, 684, 685, 698, 711, 724, 839, 853,
- 867, 880, 893, 906, 1035, 1049, 1062, 1075,
- 1088, 1231, 1244, 1257, 1270, 135, 344, 540,
- 722, 723, 918, 1100, 1269, 149, 345, 541,
- 737, 919, 1101, 1283, 124, 137, 307, 320,
- 333, 346, 503, 516, 529, 542, 699, 712,
- 725, 738, 881, 894, 907, 920, 1063, 1076,
- 1089, 1102, 1258, 1271, 162, 358, 554, 736,
- 750, 932, 1114, 1296, 150, 359, 555, 751,
- 933, 1115, 1284, 138, 151, 321, 334, 347,
- 360, 517, 530, 543, 556, 726, 739, 752,
- 895, 908, 921, 934, 1077, 1090, 1103, 1116,
- 1272, 1285, 1229, 1268, 1282, 1438, 1451, 1230,
- 1426, 1439, 1452, 1465, 1245, 1427, 1440, 1453,
- 1466, 1297, 1479, 1259, 1298, 1454, 1467, 946,
- 1128, 1310, 1492, 947, 1129, 1311, 1480, 713,
- 922, 935, 948, 1091, 1104, 1117, 1130, 1273,
- 1286, 1299, 1312, 1455, 1468, 1481, 1494, 1425,
- 1464, 1478, 1634, 1647, 1622, 1635, 1648, 1661,
- 1441, 1636, 1649, 1493, 1662, 1675, 1637, 1650,
- 1663, 1676, 1324, 1506, 1143, 1325, 1507, 1689,
- 909, 1118, 1131, 1144, 1287, 1300, 1313, 1326,
- 1469, 1482, 1495, 1508, 1651, 1664, 1677, 1690,
- 111, 124, 293, 306, 307, 319, 320, 333,
- 475, 488, 489, 501, 502, 503, 515, 516,
- 529, 657, 670, 671, 684, 685, 697, 698,
- 699, 711, 712, 853, 866, 867, 879, 880,
- 881, 893, 894, 907, 1049, 1062, 1063, 1075,
- 1076, 1089, 1245, 1258, 125, 138, 321, 334,
- 347, 517, 530, 543, 713, 725, 726, 895,
- 908, 921, 1077, 1090, 1103, 1259, 1272, 139,
- 152, 165, 335, 348, 361, 531, 544, 557,
- 727, 739, 740, 753, 909, 922, 935, 1091,
- 1104, 1117, 1273, 1286, 1299, 1271, 1285, 1441,
- 1454, 1455, 1468, 923, 936, 949, 1105, 1118,
- 1131, 1287, 1300, 1313, 1469, 1482, 1495, 1467,
- 1481, 1637, 1650, 1651, 1664, 1119, 1132, 1301,
- 1314, 1327, 1483, 1496, 1509, 1665, 1678, 141,
- 154, 310, 323, 324, 336, 337, 350, 492,
- 505, 506, 518, 519, 520, 532, 533, 546,
- 687, 688, 700, 701, 702, 714, 715, 728,
- 729, 742, 870, 883, 884, 896, 897, 898,
- 910, 911, 924, 1066, 1079, 1080, 1092, 1093,
- 1106, 1275, 1288, 142, 155, 311, 325, 338,
- 351, 364, 493, 507, 521, 534, 547, 560,
- 675, 689, 703, 716, 730, 743, 871, 885,
- 899, 912, 925, 938, 1067, 1081, 1094, 1107,
- 1120, 1276, 1289, 130, 143, 156, 169, 312,
- 326, 339, 352, 365, 494, 508, 522, 535,
- 548, 561, 690, 704, 717, 718, 731, 744,
- 757, 872, 886, 900, 913, 926, 939, 1068,
- 1082, 1095, 1108, 1121, 1277, 1290, 168, 756,
- 1302, 378, 574, 952, 1134, 1303, 157, 170,
- 340, 353, 366, 379, 536, 549, 562, 575,
- 745, 758, 914, 927, 940, 953, 1096, 1109,
- 1122, 1135, 1291, 1304, 182, 770, 1316, 183,
- 771, 966, 1148, 1317, 158, 171, 184, 354,
- 367, 380, 550, 563, 576, 732, 746, 759,
- 772, 928, 941, 954, 967, 1110, 1123, 1136,
- 1149, 1305, 1318, 1262, 1471, 1484, 1263, 1459,
- 1472, 1485, 1498, 1264, 1278, 1473, 1486, 1330,
- 1499, 1292, 1331, 1487, 1500, 1512, 1162, 1344,
- 1513, 942, 955, 968, 1124, 1137, 1150, 1163,
- 1306, 1319, 1332, 1345, 1488, 1501, 1514, 1458,
- 1667, 1680, 1655, 1668, 1681, 1694, 1460, 1474,
- 1669, 1682, 1526, 1695, 1527, 1683, 1696, 1708,
- 1358, 1540, 1709, 1138, 1151, 1164, 1320, 1333,
- 1346, 1359, 1502, 1515, 1528, 1541, 1684, 1697,
- 1710, 144, 157, 313, 326, 327, 339, 340,
- 352, 353, 366, 495, 508, 509, 521, 522,
- 523, 534, 535, 536, 548, 549, 562, 690,
- 691, 703, 704, 705, 717, 718, 730, 731,
- 732, 744, 745, 873, 886, 887, 899, 900,
- 901, 912, 913, 914, 926, 927, 940, 1069,
- 1082, 1083, 1095, 1096, 1108, 1109, 1122, 1278,
- 1291, 145, 158, 314, 328, 341, 354, 367,
- 496, 510, 524, 537, 550, 563, 678, 692,
- 706, 719, 733, 746, 874, 888, 902, 915,
- 928, 941, 1070, 1084, 1097, 1110, 1123, 1279,
- 1292, 146, 159, 315, 329, 342, 355, 368,
- 497, 511, 525, 538, 551, 564, 693, 707,
- 720, 734, 747, 875, 889, 903, 916, 929,
- 942, 1071, 1085, 1098, 1111, 1124, 1280, 1293,
- 171, 184, 380, 576, 758, 759, 772, 954,
- 1136, 1305, 172, 381, 577, 760, 955, 1137,
- 1306, 160, 173, 343, 356, 369, 382, 539,
- 552, 565, 578, 721, 735, 748, 761, 774,
- 917, 930, 943, 956, 1099, 1112, 1125, 1138,
- 1281, 1294, 1307, 1320, 185, 773, 968, 1150,
- 1319, 186, 969, 1151, 1333, 174, 187, 357,
- 370, 383, 553, 566, 579, 762, 775, 931,
- 944, 957, 970, 1113, 1126, 1139, 1152, 1308,
- 1321, 1265, 1304, 1318, 1474, 1487, 1266, 1462,
- 1475, 1488, 1501, 1267, 1476, 1489, 1332, 1514,
- 1502, 1295, 1334, 1490, 1503, 1164, 1346, 1515,
- 1165, 1347, 1516, 749, 958, 971, 1127, 1140,
- 1153, 1166, 1309, 1322, 1335, 1348, 1491, 1504,
- 1517, 1461, 1500, 1670, 1683, 1658, 1671, 1684,
- 1697, 1463, 1477, 1672, 1685, 1528, 1529, 1698,
- 1530, 1673, 1686, 1699, 1712, 1360, 1542, 1711,
- 1361, 1543, 1725, 945, 1154, 1167, 1323, 1336,
- 1349, 1362, 1505, 1518, 1531, 1544, 1687, 1700,
- 1713, 147, 160, 316, 329, 330, 342, 343,
- 355, 356, 369, 498, 511, 512, 524, 525,
- 526, 537, 538, 539, 551, 552, 565, 693,
- 694, 706, 707, 708, 720, 721, 733, 734,
- 735, 747, 748, 876, 889, 890, 902, 903,
- 904, 915, 916, 917, 929, 930, 943, 1072,
- 1085, 1086, 1098, 1099, 1111, 1112, 1125, 1281,
- 1294, 148, 161, 317, 331, 344, 357, 370,
- 499, 513, 527, 540, 553, 566, 695, 709,
- 722, 736, 749, 877, 891, 905, 918, 931,
- 944, 1073, 1087, 1100, 1113, 1126, 1282, 1295,
- 136, 149, 162, 175, 318, 332, 345, 358,
- 371, 500, 514, 528, 541, 554, 567, 682,
- 696, 710, 723, 724, 737, 750, 763, 878,
- 892, 906, 919, 932, 945, 1074, 1088, 1101,
- 1114, 1127, 1270, 1283, 1296, 1309, 174, 383,
- 579, 761, 762, 957, 1139, 1308, 188, 384,
- 580, 776, 958, 1140, 1322, 163, 176, 346,
- 359, 372, 385, 542, 555, 568, 581, 738,
- 751, 764, 777, 920, 933, 946, 959, 1102,
- 1115, 1128, 1141, 1297, 1310, 775, 971, 1153,
- 1335, 189, 972, 1154, 1323, 177, 190, 360,
- 373, 386, 556, 569, 582, 752, 765, 778,
- 934, 947, 960, 973, 1116, 1129, 1142, 1155,
- 1311, 1324, 1268, 1307, 1321, 1477, 1490, 1269,
- 1478, 1491, 1284, 1466, 1479, 1492, 1505, 1504,
- 1336, 1518, 1298, 1337, 1493, 1506, 1167, 1349,
- 1531, 1168, 1350, 1519, 948, 961, 974, 1130,
- 1143, 1156, 1169, 1312, 1325, 1338, 1351, 1494,
- 1507, 1520, 1533, 1464, 1503, 1517, 1673, 1686,
- 1465, 1674, 1687, 1480, 1662, 1675, 1688, 1701,
- 1700, 1532, 1714, 1676, 1689, 1702, 1715, 1363,
- 1545, 1364, 1546, 1144, 1157, 1170, 1326, 1339,
- 1352, 1365, 1508, 1521, 1534, 1547, 1690, 1703,
- 1716, 1729, 150, 163, 319, 332, 333, 345,
- 346, 358, 359, 372, 501, 514, 515, 527,
- 528, 529, 540, 541, 542, 554, 555, 568,
- 696, 697, 709, 710, 711, 723, 724, 736,
- 737, 738, 750, 751, 879, 892, 893, 905,
- 906, 907, 918, 919, 920, 932, 933, 946,
- 1075, 1088, 1089, 1101, 1102, 1114, 1115, 1128,
- 1284, 1297, 151, 164, 320, 334, 347, 360,
- 373, 502, 516, 530, 543, 556, 569, 684,
- 698, 712, 725, 739, 752, 880, 894, 908,
- 921, 934, 947, 1076, 1090, 1103, 1116, 1129,
- 1285, 1298, 139, 152, 165, 178, 321, 335,
- 348, 361, 374, 503, 517, 531, 544, 557,
- 570, 685, 699, 713, 726, 727, 740, 753,
- 766, 881, 895, 909, 922, 935, 948, 1077,
- 1091, 1104, 1117, 1130, 1273, 1286, 1299, 1312,
- 177, 386, 582, 764, 765, 960, 1142, 1311,
- 191, 387, 583, 779, 961, 1143, 1325, 166,
- 179, 349, 362, 375, 388, 545, 558, 571,
- 584, 741, 754, 767, 780, 923, 936, 949,
- 962, 1105, 1118, 1131, 1144, 1300, 1313, 778,
- 974, 1156, 192, 975, 1157, 1326, 180, 193,
- 363, 376, 389, 559, 572, 585, 755, 768,
- 781, 937, 950, 963, 976, 1119, 1132, 1145,
- 1158, 1314, 1327, 1271, 1310, 1324, 1480, 1493,
- 1272, 1468, 1481, 1494, 1507, 1287, 1469, 1482,
- 1495, 1508, 1338, 1339, 1301, 1340, 1496, 1509,
- 1170, 1352, 1521, 1171, 1353, 1522, 951, 964,
- 977, 1133, 1146, 1159, 1172, 1315, 1328, 1341,
- 1354, 1510, 1523, 1467, 1506, 1520, 1676, 1689,
- 1664, 1677, 1690, 1703, 1483, 1665, 1678, 1691,
- 1534, 1535, 1704, 1497, 1536, 1692, 1705, 1366,
- 1548, 1717, 1367, 1549, 1718, 1147, 1160, 1173,
- 1329, 1342, 1355, 1368, 1511, 1524, 1537, 1550,
- 1693, 1706, 1719, 153, 166, 335, 348, 349,
- 361, 362, 375, 517, 530, 531, 543, 544,
- 545, 557, 558, 571, 699, 712, 713, 726,
- 727, 739, 740, 741, 753, 754, 895, 908,
- 909, 921, 922, 923, 935, 936, 949, 1091,
- 1104, 1105, 1117, 1118, 1131, 1287, 1300, 167,
- 180, 363, 376, 389, 559, 572, 585, 755,
- 767, 768, 937, 950, 963, 1119, 1132, 1145,
- 1301, 1314, 181, 194, 377, 390, 573, 586,
- 769, 781, 782, 951, 964, 977, 1133, 1146,
- 1159, 1315, 1328, 1313, 1327, 1483, 1496, 1341,
- 1497, 1510, 965, 978, 1147, 1160, 1173, 1329,
- 1342, 1355, 1511, 1524, 1509, 1523, 1679, 1692,
- 1537, 1693, 1706, 1161, 1174, 1343, 1356, 1369,
- 1525, 1538, 1551, 1707, 1720, 183, 352, 365,
- 366, 378, 379, 534, 547, 548, 560, 561,
- 562, 574, 575, 729, 730, 742, 743, 744,
- 756, 757, 770, 771, 912, 925, 926, 938,
- 939, 940, 952, 953, 966, 1108, 1121, 1122,
- 1134, 1135, 1148, 1317, 1330, 184, 353, 367,
- 380, 535, 549, 563, 576, 731, 745, 758,
- 772, 913, 927, 941, 954, 967, 1109, 1123,
- 1136, 1149, 1162, 1318, 1331, 185, 354, 368,
- 381, 536, 550, 564, 577, 732, 746, 759,
- 773, 914, 928, 942, 955, 968, 1110, 1124,
- 1137, 1150, 1163, 1319, 1332, 1304, 1344, 1513,
- 1526, 1305, 1345, 1358, 1514, 1527, 760, 969,
- 1138, 1151, 1164, 1306, 1320, 1333, 1346, 1359,
- 1515, 1528, 1500, 1540, 1709, 1722, 1501, 1541,
- 1554, 1710, 1723, 956, 1165, 1334, 1347, 1360,
- 1502, 1516, 1529, 1542, 1555, 1711, 1724, 186,
- 355, 368, 369, 381, 382, 537, 550, 551,
- 563, 564, 565, 576, 577, 578, 732, 733,
- 745, 746, 747, 759, 760, 772, 773, 774,
- 915, 928, 929, 941, 942, 943, 954, 955,
- 956, 968, 969, 1111, 1124, 1125, 1137, 1138,
- 1150, 1151, 1164, 1320, 1333, 187, 356, 370,
- 383, 538, 552, 566, 579, 734, 748, 761,
- 775, 916, 930, 944, 957, 970, 1112, 1126,
- 1139, 1152, 1165, 1321, 1334, 175, 188, 357,
- 371, 384, 539, 553, 567, 580, 721, 735,
- 749, 762, 763, 776, 917, 931, 945, 958,
- 971, 1113, 1127, 1140, 1153, 1166, 1309, 1322,
- 1335, 1348, 1307, 1346, 1347, 1360, 1516, 1529,
- 1308, 1361, 1517, 1530, 959, 972, 1141, 1154,
- 1167, 1323, 1336, 1349, 1362, 1505, 1518, 1531,
- 1544, 1503, 1542, 1543, 1556, 1712, 1725, 1738,
- 1504, 1557, 1713, 1726, 1155, 1168, 1337, 1350,
- 1363, 1519, 1532, 1545, 1558, 1701, 1714, 1727,
- 1740, 189, 358, 371, 372, 384, 385, 540,
- 553, 554, 566, 567, 568, 579, 580, 581,
- 735, 736, 748, 749, 750, 762, 763, 775,
- 776, 777, 918, 931, 932, 944, 945, 946,
- 957, 958, 959, 971, 972, 1114, 1127, 1128,
- 1140, 1141, 1153, 1154, 1167, 1323, 1336, 190,
- 359, 373, 386, 541, 555, 569, 582, 737,
- 751, 764, 778, 919, 933, 947, 960, 973,
- 1115, 1129, 1142, 1155, 1168, 1324, 1337, 178,
- 191, 360, 374, 387, 542, 556, 570, 583,
- 724, 738, 752, 765, 766, 779, 920, 934,
- 948, 961, 974, 1116, 1130, 1143, 1156, 1169,
- 1312, 1325, 1338, 1351, 1310, 1349, 1350, 1363,
- 1519, 1532, 1311, 1364, 1520, 1533, 962, 975,
- 1144, 1157, 1170, 1326, 1339, 1352, 1365, 1508,
- 1521, 1534, 1547, 1506, 1545, 1546, 1559, 1715,
- 1728, 1507, 1560, 1716, 1729, 1158, 1171, 1340,
- 1353, 1366, 1522, 1535, 1548, 1561, 1704, 1717,
- 1730, 1743, 192, 361, 374, 375, 387, 388,
- 543, 556, 557, 569, 570, 571, 582, 583,
- 584, 738, 739, 751, 752, 753, 765, 766,
- 778, 779, 780, 921, 934, 935, 947, 948,
- 949, 960, 961, 962, 974, 975, 1117, 1130,
- 1131, 1143, 1144, 1156, 1157, 1170, 1326, 1339,
- 193, 362, 376, 389, 544, 558, 572, 585,
- 726, 740, 754, 767, 781, 922, 936, 950,
- 963, 976, 1118, 1132, 1145, 1158, 1171, 1327,
- 1340, 181, 194, 363, 377, 390, 545, 559,
- 573, 586, 727, 741, 755, 768, 782, 923,
- 937, 951, 964, 977, 1119, 1133, 1146, 1159,
- 1172, 1328, 1341, 1313, 1352, 1353, 1366, 1522,
- 1535, 1314, 1354, 1367, 1523, 1536, 769, 965,
- 978, 1147, 1160, 1173, 1315, 1329, 1342, 1355,
- 1368, 1511, 1524, 1537, 1550, 1509, 1548, 1549,
- 1562, 1718, 1731, 1510, 1563, 1706, 1719, 1732,
- 1745, 1161, 1174, 1343, 1356, 1369, 1525, 1538,
- 1551, 1564, 1707, 1720, 1733, 195, 377, 390,
- 391, 559, 572, 573, 585, 586, 587, 741,
- 754, 755, 768, 769, 781, 782, 783, 937,
- 950, 951, 963, 964, 965, 977, 978, 1133,
- 1146, 1147, 1159, 1160, 1173, 1329, 1342, 979,
- 1161, 1174, 1343, 1355, 1356, 1369, 1525, 1538,
- 1175, 1357, 1370, 1539, 1551, 1552, 1565, 1721,
- 1734, 603, 616, 785, 786, 798, 799, 812,
- 980, 981, 982, 994, 995, 1008, 1176, 1177,
- 1190, 1191, 1204, 1372, 1373, 1386, 1568, 604,
- 617, 787, 800, 813, 826, 983, 996, 1009,
- 1022, 1178, 1192, 1205, 1374, 1387, 1400, 1569,
- 1582, 592, 605, 618, 631, 788, 801, 814,
- 827, 984, 997, 1010, 1023, 1179, 1180, 1193,
- 1206, 1219, 1375, 1388, 1401, 1570, 1583, 1765,
- 630, 1218, 1764, 644, 840, 1036, 1232, 1414,
- 1596, 1778, 619, 632, 802, 815, 828, 841,
- 998, 1011, 1024, 1037, 1207, 1220, 1376, 1389,
- 1402, 1415, 1571, 1584, 1597, 1766, 645, 854,
- 1050, 1233, 1428, 1610, 1779, 633, 646, 816,
- 829, 842, 855, 1012, 1025, 1038, 1051, 1194,
- 1221, 1234, 1390, 1403, 1416, 1429, 1572, 1585,
- 1598, 1611, 1767, 1780, 1960, 1961, 1792, 1793,
- 1962, 1974, 1246, 1624, 1806, 1975, 1208, 1247,
- 1417, 1430, 1586, 1599, 1612, 1625, 1768, 1781,
- 1794, 1807, 1963, 1976, 1989, 2157, 2156, 1988,
- 2158, 2171, 2170, 1442, 1638, 1820, 2002, 2184,
- 1404, 1443, 1613, 1626, 1782, 1795, 1808, 1821,
- 1964, 1977, 1990, 2003, 2159, 2172, 2185, 606,
- 619, 788, 789, 801, 802, 814, 815, 828,
- 983, 984, 985, 996, 997, 998, 1010, 1011,
- 1024, 1179, 1180, 1192, 1193, 1194, 1206, 1207,
- 1374, 1375, 1376, 1388, 1389, 1402, 1570, 1571,
- 1584, 607, 620, 790, 803, 816, 829, 986,
- 999, 1012, 1025, 1181, 1195, 1208, 1377, 1390,
- 1403, 1572, 1585, 595, 608, 621, 634, 791,
- 804, 817, 830, 987, 1000, 1013, 1026, 1182,
- 1183, 1196, 1209, 1222, 1378, 1391, 1404, 1573,
- 1586, 1768, 633, 842, 1038, 1220, 1221, 1416,
- 1598, 1767, 647, 843, 1039, 1235, 1417, 1599,
- 1781, 622, 635, 805, 818, 831, 844, 1001,
- 1014, 1027, 1040, 1210, 1223, 1379, 1392, 1405,
- 1418, 1574, 1587, 1600, 1769, 660, 856, 1052,
- 1234, 1248, 1430, 1612, 648, 857, 1053, 1236,
- 1431, 1613, 1782, 636, 649, 819, 832, 845,
- 858, 1015, 1028, 1041, 1054, 1197, 1224, 1237,
- 1393, 1406, 1419, 1432, 1575, 1588, 1601, 1614,
- 1770, 1783, 1766, 1780, 1963, 1964, 1794, 1795,
- 1796, 1965, 1444, 1626, 1808, 1977, 1249, 1627,
- 1809, 1978, 1211, 1250, 1420, 1433, 1589, 1602,
- 1615, 1628, 1771, 1784, 1797, 1810, 1966, 1979,
- 1992, 1962, 1976, 2159, 2160, 1990, 1991, 2161,
- 2174, 1822, 2004, 2173, 1445, 1641, 1823, 2005,
- 2187, 1407, 1446, 1616, 1629, 1785, 1798, 1811,
- 1824, 1967, 1980, 1993, 2006, 2162, 2175, 2188,
- 609, 622, 791, 792, 804, 805, 817, 818,
- 831, 986, 987, 988, 999, 1000, 1001, 1013,
- 1014, 1027, 1182, 1183, 1195, 1196, 1197, 1209,
- 1210, 1377, 1378, 1379, 1391, 1392, 1405, 1573,
- 1574, 1587, 610, 623, 793, 806, 819, 832,
- 989, 1002, 1015, 1028, 1184, 1198, 1211, 1380,
- 1393, 1406, 1575, 1588, 598, 611, 624, 637,
- 794, 807, 820, 833, 990, 1003, 1016, 1029,
- 1185, 1186, 1199, 1212, 1225, 1381, 1394, 1407,
- 1576, 1589, 1771, 636, 845, 1041, 1223, 1224,
- 1419, 1601, 1770, 650, 846, 1042, 1238, 1420,
- 1602, 1784, 625, 638, 808, 821, 834, 847,
- 1004, 1017, 1030, 1043, 1200, 1213, 1226, 1382,
- 1395, 1408, 1421, 1577, 1590, 1603, 1772, 663,
- 859, 1055, 1237, 1251, 1433, 1615, 651, 860,
- 1056, 1239, 1434, 1616, 1785, 639, 652, 822,
- 835, 848, 861, 1018, 1031, 1044, 1057, 1214,
- 1227, 1240, 1396, 1409, 1422, 1435, 1578, 1591,
- 1604, 1617, 1773, 1786, 1769, 1783, 1966, 1967,
- 1797, 1798, 1799, 1968, 1447, 1629, 1811, 1980,
- 1252, 1630, 1812, 1981, 1253, 1410, 1423, 1436,
- 1592, 1605, 1618, 1631, 1774, 1787, 1800, 1813,
- 1969, 1982, 1995, 1965, 1979, 2162, 2163, 1993,
- 1994, 2164, 2177, 1825, 2007, 2176, 1448, 1644,
- 1826, 2008, 2190, 1449, 1606, 1619, 1632, 1788,
- 1801, 1814, 1827, 1970, 1983, 1996, 2009, 2165,
- 2178, 2191, 612, 625, 794, 795, 807, 808,
- 820, 821, 834, 989, 990, 991, 1002, 1003,
- 1004, 1016, 1017, 1030, 1185, 1186, 1198, 1199,
- 1200, 1212, 1213, 1380, 1381, 1382, 1394, 1395,
- 1408, 1576, 1577, 1590, 600, 613, 626, 639,
- 796, 809, 822, 835, 992, 1005, 1018, 1031,
- 1187, 1201, 1214, 1383, 1396, 1409, 1578, 1591,
- 1773, 601, 614, 627, 640, 797, 810, 823,
- 836, 993, 1006, 1019, 1032, 1188, 1189, 1202,
- 1215, 1228, 1384, 1397, 1410, 1579, 1592, 1774,
- 848, 1044, 1226, 1227, 1422, 1604, 653, 849,
- 1045, 1241, 1423, 1605, 1787, 628, 641, 811,
- 824, 837, 850, 1007, 1020, 1033, 1046, 1203,
- 1216, 1229, 1242, 1385, 1398, 1411, 1424, 1580,
- 1593, 1606, 1775, 862, 1058, 1240, 1436, 1618,
- 654, 863, 1059, 1255, 1437, 1619, 1788, 1801,
- 642, 655, 825, 838, 851, 864, 1021, 1034,
- 1047, 1060, 1217, 1230, 1243, 1256, 1399, 1412,
- 1425, 1438, 1581, 1594, 1607, 1620, 1776, 1789,
- 1772, 1786, 1969, 1970, 1800, 1802, 1971, 1254,
- 1632, 1814, 1983, 1633, 1815, 1984, 1413, 1426,
- 1439, 1452, 1595, 1608, 1621, 1634, 1777, 1790,
- 1803, 1816, 1972, 1985, 1968, 1982, 2165, 2166,
- 1996, 1997, 1998, 2167, 2180, 1450, 1828, 2010,
- 2179, 1451, 1647, 1829, 2011, 2193, 1609, 1622,
- 1635, 1648, 1791, 1804, 1817, 1830, 1973, 1986,
- 1999, 2012, 2168, 2181, 615, 628, 797, 810,
- 811, 823, 824, 837, 992, 993, 1005, 1006,
- 1007, 1019, 1020, 1033, 1188, 1189, 1201, 1202,
- 1203, 1215, 1216, 1383, 1384, 1385, 1397, 1398,
- 1411, 1579, 1580, 1593, 629, 642, 825, 838,
- 851, 1021, 1034, 1047, 1217, 1229, 1230, 1399,
- 1412, 1425, 1581, 1594, 1607, 1776, 643, 656,
- 839, 852, 865, 1035, 1048, 1061, 1231, 1243,
- 1244, 1413, 1426, 1439, 1595, 1608, 1621, 1777,
- 1790, 1775, 1789, 1803, 1972, 1257, 1427, 1440,
- 1609, 1622, 1635, 1791, 1804, 1817, 1973, 1986,
- 1971, 1985, 1999, 2168, 1453, 1623, 1636, 1805,
- 1818, 1831, 1987, 2000, 2013, 2169, 2182, 645,
- 658, 814, 827, 828, 840, 841, 854, 996,
- 1009, 1010, 1022, 1023, 1024, 1036, 1037, 1050,
- 1191, 1192, 1204, 1205, 1206, 1218, 1219, 1232,
- 1233, 1246, 1374, 1387, 1388, 1400, 1401, 1402,
- 1414, 1415, 1428, 1570, 1583, 1584, 1596, 1597,
- 1610, 1779, 1792, 646, 659, 815, 829, 842,
- 855, 868, 997, 1011, 1025, 1038, 1051, 1064,
- 1179, 1193, 1207, 1220, 1234, 1247, 1375, 1389,
- 1403, 1416, 1429, 1442, 1571, 1585, 1598, 1611,
- 1624, 1780, 1793, 634, 647, 660, 673, 816,
- 830, 843, 856, 869, 998, 1012, 1026, 1039,
- 1052, 1065, 1180, 1194, 1208, 1221, 1222, 1235,
- 1248, 1261, 1376, 1390, 1404, 1417, 1430, 1443,
- 1572, 1586, 1599, 1612, 1625, 1768, 1781, 1794,
- 1807, 672, 1260, 1806, 686, 882, 1078, 1274,
- 1456, 1638, 661, 674, 844, 857, 870, 883,
- 1040, 1053, 1066, 1079, 1249, 1262, 1418, 1431,
- 1444, 1457, 1600, 1613, 1626, 1639, 1795, 1808,
- 1820, 687, 896, 1092, 1275, 1470, 1652, 1821,
- 662, 675, 688, 701, 858, 871, 884, 897,
- 1054, 1067, 1080, 1093, 1236, 1263, 1276, 1432,
- 1445, 1458, 1471, 1614, 1627, 1640, 1653, 1809,
- 1822, 1766, 1975, 1988, 1767, 1963, 1976, 1989,
- 2002, 1782, 1964, 1977, 1990, 2003, 1834, 1796,
- 1835, 1991, 2004, 2016, 1288, 1666, 1848, 2017,
- 1250, 1289, 1446, 1459, 1472, 1485, 1628, 1641,
- 1654, 1667, 1810, 1823, 1836, 1849, 1992, 2005,
- 2018, 2031, 1962, 2158, 2171, 2184, 2159, 2172,
- 2185, 2198, 1978, 2160, 2173, 2186, 2199, 2030,
- 2174, 2187, 2200, 2213, 2212, 1484, 1680, 1862,
- 2044, 2226, 1642, 1655, 1668, 1681, 1824, 1837,
- 1850, 1863, 2006, 2019, 2032, 2045, 2188, 2201,
- 2214, 2227, 648, 661, 817, 830, 831, 843,
- 844, 856, 857, 870, 999, 1012, 1013, 1025,
- 1026, 1027, 1038, 1039, 1040, 1052, 1053, 1066,
- 1194, 1195, 1207, 1208, 1209, 1221, 1222, 1234,
- 1235, 1236, 1248, 1249, 1377, 1390, 1391, 1403,
- 1404, 1405, 1416, 1417, 1418, 1430, 1431, 1444,
- 1573, 1586, 1587, 1599, 1600, 1612, 1613, 1626,
- 1782, 1795, 649, 662, 818, 832, 845, 858,
- 871, 1000, 1014, 1028, 1041, 1054, 1067, 1182,
- 1196, 1210, 1223, 1237, 1250, 1378, 1392, 1406,
- 1419, 1432, 1445, 1574, 1588, 1601, 1614, 1627,
- 1783, 1796, 637, 650, 663, 676, 819, 833,
- 846, 859, 872, 1001, 1015, 1029, 1042, 1055,
- 1068, 1183, 1197, 1211, 1224, 1225, 1238, 1251,
- 1264, 1379, 1393, 1407, 1420, 1433, 1446, 1575,
- 1589, 1602, 1615, 1628, 1771, 1784, 1797, 1810,
- 675, 884, 1080, 1262, 1263, 1276, 1458, 1640,
- 1809, 689, 885, 1081, 1277, 1459, 1641, 664,
- 677, 847, 860, 873, 886, 1043, 1056, 1069,
- 1082, 1252, 1265, 1421, 1434, 1447, 1460, 1603,
- 1616, 1629, 1642, 1798, 1811, 702, 898, 1094,
- 1290, 1472, 1654, 1823, 690, 899, 1095, 1278,
- 1473, 1655, 1824, 665, 678, 691, 704, 861,
- 874, 887, 900, 1057, 1070, 1083, 1096, 1239,
- 1266, 1279, 1435, 1448, 1461, 1474, 1617, 1630,
- 1643, 1656, 1812, 1825, 1769, 1808, 1822, 1978,
- 1991, 1770, 1966, 1979, 1992, 2005, 1785, 1967,
- 1980, 1993, 2006, 1836, 2018, 1837, 1799, 1838,
- 1994, 2007, 1486, 1668, 1850, 2019, 1291, 1669,
- 1851, 2020, 1253, 1292, 1449, 1462, 1475, 1488,
- 1631, 1644, 1657, 1670, 1813, 1826, 1839, 1852,
- 1995, 2008, 2021, 2034, 1965, 2004, 2161, 2174,
- 2187, 2200, 2162, 2175, 2188, 2201, 1981, 2163,
- 2176, 2189, 2202, 2032, 2214, 2033, 2177, 2190,
- 2203, 2216, 1864, 2046, 2215, 1487, 1683, 1865,
- 2047, 2229, 1645, 1658, 1671, 1684, 1827, 1840,
- 1853, 1866, 2009, 2022, 2035, 2048, 2191, 2204,
- 2217, 2230, 651, 664, 820, 833, 834, 846,
- 847, 859, 860, 873, 1002, 1015, 1016, 1028,
- 1029, 1030, 1041, 1042, 1043, 1055, 1056, 1069,
- 1197, 1198, 1210, 1211, 1212, 1224, 1225, 1237,
- 1238, 1239, 1251, 1252, 1380, 1393, 1394, 1406,
- 1407, 1408, 1419, 1420, 1421, 1433, 1434, 1447,
- 1576, 1589, 1590, 1602, 1603, 1615, 1616, 1629,
- 1785, 1798, 652, 665, 821, 835, 848, 861,
- 874, 1003, 1017, 1031, 1044, 1057, 1070, 1185,
- 1199, 1213, 1226, 1240, 1253, 1381, 1395, 1409,
- 1422, 1435, 1448, 1577, 1591, 1604, 1617, 1630,
- 1786, 1799, 640, 653, 666, 679, 822, 836,
- 849, 862, 875, 1004, 1018, 1032, 1045, 1058,
- 1071, 1186, 1200, 1214, 1227, 1228, 1241, 1254,
- 1267, 1382, 1396, 1410, 1423, 1436, 1449, 1578,
- 1592, 1605, 1618, 1631, 1774, 1787, 1800, 1813,
- 678, 887, 1083, 1265, 1266, 1279, 1461, 1643,
- 1812, 692, 888, 1084, 1280, 1462, 1644, 667,
- 680, 850, 863, 876, 889, 1046, 1059, 1072,
- 1085, 1242, 1255, 1268, 1424, 1437, 1450, 1463,
- 1606, 1619, 1632, 1645, 1788, 1801, 1814, 705,
- 901, 1097, 1293, 1475, 1657, 1826, 693, 902,
- 1098, 1281, 1476, 1658, 1827, 668, 681, 694,
- 707, 864, 877, 890, 903, 1060, 1073, 1086,
- 1099, 1256, 1269, 1282, 1438, 1451, 1464, 1477,
- 1620, 1633, 1646, 1659, 1802, 1815, 1828, 1772,
- 1811, 1825, 1981, 1994, 1773, 1969, 1982, 1995,
- 2008, 1970, 1983, 1996, 2009, 1839, 2021, 1840,
- 1841, 1997, 2010, 1489, 1671, 1853, 2022, 1294,
- 1672, 1854, 2023, 1295, 1452, 1465, 1478, 1491,
- 1634, 1647, 1660, 1673, 1816, 1829, 1842, 1855,
- 1998, 2011, 2024, 2037, 1968, 2007, 2164, 2177,
- 2190, 2203, 2165, 2178, 2191, 2204, 1984, 2166,
- 2179, 2192, 2205, 2035, 2217, 2036, 2180, 2193,
- 2206, 2219, 1867, 2049, 2218, 1490, 1686, 1868,
- 2050, 2232, 1648, 1661, 1674, 1687, 1830, 1843,
- 1856, 1869, 2012, 2025, 2038, 2051, 2194, 2207,
- 2220, 2233, 654, 667, 823, 836, 837, 849,
- 850, 862, 863, 876, 1005, 1018, 1019, 1031,
- 1032, 1033, 1044, 1045, 1046, 1058, 1059, 1072,
- 1200, 1201, 1213, 1214, 1215, 1227, 1228, 1240,
- 1241, 1242, 1254, 1255, 1383, 1396, 1397, 1409,
- 1410, 1411, 1422, 1423, 1424, 1436, 1437, 1450,
- 1579, 1592, 1593, 1605, 1606, 1618, 1619, 1632,
- 1788, 1801, 655, 668, 681, 824, 838, 851,
- 864, 877, 1006, 1020, 1034, 1047, 1060, 1073,
- 1188, 1202, 1216, 1229, 1243, 1256, 1384, 1398,
- 1412, 1425, 1438, 1451, 1580, 1594, 1607, 1620,
- 1633, 1789, 1802, 643, 656, 669, 682, 825,
- 839, 852, 865, 878, 1007, 1021, 1035, 1048,
- 1061, 1074, 1189, 1203, 1217, 1230, 1231, 1244,
- 1257, 1270, 1385, 1399, 1413, 1426, 1439, 1452,
- 1581, 1595, 1608, 1621, 1634, 1777, 1790, 1803,
- 1816, 890, 1086, 1268, 1269, 1464, 1646, 1815,
- 695, 891, 1087, 1283, 1465, 1647, 1829, 670,
- 683, 853, 866, 879, 892, 1049, 1062, 1075,
- 1088, 1245, 1258, 1271, 1284, 1427, 1440, 1453,
- 1466, 1609, 1622, 1635, 1648, 1791, 1804, 1817,
- 904, 1100, 1282, 1478, 1660, 696, 905, 1101,
- 1297, 1479, 1661, 1830, 1843, 684, 697, 867,
- 880, 893, 906, 1063, 1076, 1089, 1102, 1272,
- 1285, 1441, 1454, 1467, 1480, 1623, 1636, 1649,
- 1662, 1805, 1818, 1831, 1775, 1814, 1828, 1984,
- 1997, 1776, 1972, 1985, 1998, 2011, 1973, 1986,
- 1999, 1842, 2012, 1844, 2000, 2013, 1296, 1674,
- 1856, 2025, 1493, 1675, 1857, 2026, 1259, 1298,
- 1468, 1481, 1637, 1650, 1663, 1676, 1819, 1832,
- 1845, 1858, 2001, 2014, 2027, 1971, 2010, 2024,
- 2180, 2193, 2181, 2194, 1987, 2169, 2182, 2195,
- 2038, 2207, 2039, 2208, 2221, 2040, 2183, 2196,
- 2209, 2222, 1492, 1870, 2052, 1689, 1871, 2053,
- 2235, 1455, 1494, 1664, 1677, 1833, 1846, 1859,
- 1872, 2015, 2028, 2041, 2054, 2210, 2223, 657,
- 670, 839, 852, 853, 865, 866, 879, 1021,
- 1034, 1035, 1047, 1048, 1049, 1061, 1062, 1075,
- 1203, 1216, 1217, 1230, 1231, 1243, 1244, 1245,
- 1257, 1258, 1399, 1412, 1413, 1425, 1426, 1427,
- 1439, 1440, 1453, 1595, 1608, 1609, 1621, 1622,
- 1635, 1791, 1804, 671, 684, 867, 880, 893,
- 1063, 1076, 1089, 1259, 1271, 1272, 1441, 1454,
- 1467, 1623, 1636, 1649, 1805, 1818, 685, 698,
- 881, 894, 907, 1077, 1090, 1103, 1273, 1285,
- 1286, 1455, 1468, 1481, 1637, 1650, 1663, 1819,
- 1832, 1817, 1831, 1987, 2000, 1845, 2001, 2014,
- 1299, 1469, 1482, 1651, 1664, 1677, 1833, 1846,
- 1859, 2015, 2028, 2013, 2027, 2183, 2196, 2209,
- 2041, 2197, 2210, 1495, 1665, 1678, 1847, 1860,
- 1873, 2029, 2042, 2055, 2211, 2224, 687, 700,
- 856, 869, 870, 882, 883, 896, 1038, 1051,
- 1052, 1064, 1065, 1066, 1078, 1079, 1092, 1233,
- 1234, 1246, 1247, 1248, 1260, 1261, 1274, 1275,
- 1288, 1416, 1429, 1430, 1442, 1443, 1444, 1456,
- 1457, 1470, 1612, 1625, 1626, 1638, 1639, 1652,
- 1821, 1834, 688, 701, 857, 871, 884, 897,
- 910, 1039, 1053, 1067, 1080, 1093, 1106, 1221,
- 1235, 1249, 1262, 1276, 1289, 1417, 1431, 1445,
- 1458, 1471, 1484, 1613, 1627, 1640, 1653, 1666,
- 1822, 1835, 676, 689, 702, 715, 858, 872,
- 885, 898, 911, 1040, 1054, 1068, 1081, 1094,
- 1107, 1236, 1250, 1263, 1264, 1277, 1290, 1303,
- 1418, 1432, 1446, 1459, 1472, 1485, 1614, 1628,
- 1641, 1654, 1667, 1823, 1836, 714, 1302, 1848,
- 924, 1120, 1498, 1680, 1849, 703, 716, 886,
- 899, 912, 925, 1082, 1095, 1108, 1121, 1291,
- 1304, 1460, 1473, 1486, 1499, 1642, 1655, 1668,
- 1681, 1837, 1850, 728, 1316, 1862, 729, 938,
- 1134, 1317, 1512, 1694, 1863, 704, 717, 730,
- 900, 913, 926, 939, 1096, 1109, 1122, 1135,
- 1278, 1305, 1318, 1331, 1474, 1487, 1500, 1513,
- 1656, 1669, 1682, 1695, 1851, 1864, 1808, 2017,
- 2030, 1809, 2005, 2018, 2031, 2044, 1810, 1824,
- 2019, 2032, 1876, 2045, 1838, 1877, 2033, 2046,
- 2058, 1330, 1708, 1890, 2059, 1292, 1488, 1501,
- 1514, 1527, 1670, 1683, 1696, 1709, 1852, 1865,
- 1878, 1891, 2034, 2047, 2060, 2073, 2004, 2200,
- 2213, 2226, 2201, 2214, 2227, 2240, 2006, 2020,
- 2215, 2228, 2072, 2241, 2216, 2229, 2242, 2255,
- 2254, 1526, 1904, 2086, 1684, 1697, 1710, 1723,
- 1866, 1879, 1892, 1905, 2048, 2061, 2074, 2087,
- 2230, 2243, 2256, 2269, 690, 703, 859, 872,
- 873, 885, 886, 898, 899, 912, 1041, 1054,
- 1055, 1067, 1068, 1069, 1080, 1081, 1082, 1094,
- 1095, 1108, 1236, 1237, 1249, 1250, 1251, 1263,
- 1264, 1276, 1277, 1278, 1290, 1291, 1419, 1432,
- 1433, 1445, 1446, 1447, 1458, 1459, 1460, 1472,
- 1473, 1486, 1615, 1628, 1629, 1641, 1642, 1654,
- 1655, 1668, 1824, 1837, 691, 704, 860, 874,
- 887, 900, 913, 1042, 1056, 1070, 1083, 1096,
- 1109, 1224, 1238, 1252, 1265, 1279, 1292, 1420,
- 1434, 1448, 1461, 1474, 1487, 1616, 1630, 1643,
- 1656, 1669, 1825, 1838, 679, 692, 705, 718,
- 861, 875, 888, 901, 914, 1043, 1057, 1071,
- 1084, 1097, 1110, 1239, 1253, 1266, 1267, 1280,
- 1293, 1306, 1421, 1435, 1449, 1462, 1475, 1488,
- 1617, 1631, 1644, 1657, 1670, 1826, 1839, 717,
- 926, 1122, 1304, 1305, 1318, 1500, 1682, 1851,
- 927, 1123, 1501, 1683, 1852, 706, 719, 889,
- 902, 915, 928, 1085, 1098, 1111, 1124, 1294,
- 1307, 1463, 1476, 1489, 1502, 1645, 1658, 1671,
- 1684, 1840, 1853, 731, 744, 940, 1136, 1319,
- 1332, 1514, 1696, 1865, 732, 941, 1137, 1320,
- 1515, 1697, 1866, 707, 720, 733, 903, 916,
- 929, 942, 1099, 1112, 1125, 1138, 1281, 1308,
- 1321, 1334, 1477, 1490, 1503, 1516, 1659, 1672,
- 1685, 1698, 1854, 1867, 1811, 1850, 1864, 2020,
- 2033, 1812, 2008, 2021, 2034, 2047, 1813, 1827,
- 2022, 2035, 1878, 2060, 1879, 2048, 1841, 1880,
- 2036, 2049, 1528, 1710, 1892, 2061, 1333, 1711,
- 1893, 2062, 1295, 1491, 1504, 1517, 1530, 1673,
- 1686, 1699, 1712, 1855, 1868, 1881, 1894, 2037,
- 2050, 2063, 2076, 2007, 2046, 2203, 2216, 2229,
- 2242, 2204, 2217, 2230, 2243, 2009, 2023, 2218,
- 2231, 2074, 2075, 2244, 2219, 2232, 2245, 2258,
- 1906, 2088, 2257, 1529, 1907, 2089, 1687, 1700,
- 1713, 1726, 1869, 1882, 1895, 1908, 2051, 2064,
- 2077, 2090, 2233, 2246, 2259, 2272, 693, 706,
- 862, 875, 876, 888, 889, 901, 902, 915,
- 1044, 1057, 1058, 1070, 1071, 1072, 1083, 1084,
- 1085, 1097, 1098, 1111, 1239, 1240, 1252, 1253,
- 1254, 1266, 1267, 1279, 1280, 1281, 1293, 1294,
- 1422, 1435, 1436, 1448, 1449, 1450, 1461, 1462,
- 1463, 1475, 1476, 1489, 1618, 1631, 1632, 1644,
- 1645, 1657, 1658, 1671, 1827, 1840, 694, 707,
- 863, 877, 890, 903, 916, 1045, 1059, 1073,
- 1086, 1099, 1112, 1227, 1241, 1255, 1268, 1282,
- 1295, 1423, 1437, 1451, 1464, 1477, 1490, 1619,
- 1633, 1646, 1659, 1672, 1828, 1841, 682, 695,
- 708, 864, 878, 891, 904, 917, 1046, 1060,
- 1074, 1087, 1100, 1113, 1228, 1242, 1256, 1269,
- 1270, 1283, 1296, 1424, 1438, 1452, 1465, 1478,
- 1491, 1620, 1634, 1647, 1660, 1673, 1816, 1829,
- 1842, 720, 929, 1125, 1307, 1308, 1321, 1503,
- 1685, 1854, 721, 930, 1126, 1309, 1504, 1686,
- 1855, 709, 722, 892, 905, 918, 931, 1088,
- 1101, 1114, 1127, 1284, 1297, 1310, 1323, 1466,
- 1479, 1492, 1505, 1648, 1661, 1674, 1687, 1830,
- 1843, 1856, 1869, 734, 943, 1139, 1322, 1517,
- 1699, 1868, 735, 944, 1140, 1518, 1700, 723,
- 736, 906, 919, 932, 945, 1102, 1115, 1128,
- 1141, 1311, 1324, 1480, 1493, 1506, 1519, 1662,
- 1675, 1688, 1701, 1844, 1857, 1870, 1814, 1853,
- 1867, 2023, 2036, 1815, 2011, 2024, 2037, 2050,
- 2012, 2025, 2038, 1881, 2063, 1882, 2051, 1883,
- 2026, 2039, 2052, 1335, 1713, 1895, 2064, 1336,
- 1714, 1896, 2065, 1298, 1337, 1507, 1520, 1676,
- 1689, 1702, 1715, 1858, 1871, 1884, 1897, 2040,
- 2053, 2066, 2079, 2010, 2049, 2206, 2219, 2232,
- 2245, 2207, 2220, 2233, 2246, 2208, 2221, 2234,
- 2077, 2078, 2247, 2222, 2235, 2248, 2261, 1531,
- 1909, 2091, 2260, 1532, 1728, 1910, 2092, 2274,
- 1494, 1533, 1703, 1716, 1872, 1885, 1898, 1911,
- 2054, 2067, 2080, 2093, 2249, 2262, 696, 709,
- 865, 878, 879, 891, 892, 904, 905, 918,
- 1047, 1060, 1061, 1073, 1074, 1075, 1086, 1087,
- 1088, 1100, 1101, 1114, 1242, 1243, 1255, 1256,
- 1257, 1269, 1270, 1282, 1283, 1284, 1296, 1297,
- 1425, 1438, 1439, 1451, 1452, 1453, 1464, 1465,
- 1466, 1478, 1479, 1492, 1621, 1634, 1635, 1647,
- 1648, 1660, 1661, 1674, 1830, 1843, 697, 710,
- 866, 880, 893, 906, 919, 1048, 1062, 1076,
- 1089, 1102, 1115, 1230, 1244, 1258, 1271, 1285,
- 1298, 1426, 1440, 1454, 1467, 1480, 1493, 1622,
- 1636, 1649, 1662, 1675, 1831, 1844, 685, 698,
- 711, 724, 867, 881, 894, 907, 920, 1049,
- 1063, 1077, 1090, 1103, 1116, 1231, 1245, 1259,
- 1272, 1273, 1286, 1299, 1312, 1427, 1441, 1455,
- 1468, 1481, 1494, 1623, 1637, 1650, 1663, 1676,
- 1819, 1832, 1845, 1858, 723, 932, 1128, 1310,
- 1311, 1506, 1688, 1857, 737, 933, 1129, 1325,
- 1507, 1689, 1871, 712, 725, 895, 908, 921,
- 934, 1091, 1104, 1117, 1130, 1287, 1300, 1313,
- 1326, 1469, 1482, 1495, 1508, 1651, 1664, 1677,
- 1690, 1846, 1859, 750, 946, 1142, 1324, 1338,
- 1520, 1702, 1884, 738, 947, 1143, 1339, 1521,
- 1703, 1872, 726, 739, 909, 922, 935, 948,
- 1105, 1118, 1131, 1144, 1314, 1327, 1340, 1483,
- 1496, 1509, 1522, 1665, 1678, 1691, 1704, 1860,
- 1873, 1817, 1856, 1870, 2026, 2039, 1818, 2014,
- 2027, 2040, 2053, 1833, 2015, 2028, 2041, 2054,
- 1885, 2067, 1847, 1886, 2042, 2055, 1716, 1898,
- 1535, 1717, 1899, 2068, 1301, 1510, 1523, 1536,
- 1679, 1692, 1705, 1718, 1861, 1874, 1887, 1900,
- 2056, 2069, 2013, 2052, 2066, 2209, 2222, 2235,
- 2248, 2223, 2236, 2029, 2224, 2237, 2080, 2249,
- 2081, 2250, 2263, 2043, 2082, 2238, 2251, 1534,
- 1912, 2094, 2276, 1731, 1913, 2095, 2264, 1497,
- 1706, 1719, 1732, 1875, 1888, 1901, 1914, 2057,
- 2070, 2083, 2096, 2239, 2252, 2265, 2278, 699,
- 712, 881, 894, 895, 907, 908, 921, 1063,
- 1076, 1077, 1089, 1090, 1091, 1103, 1104, 1117,
- 1245, 1258, 1259, 1272, 1273, 1285, 1286, 1287,
- 1299, 1300, 1441, 1454, 1455, 1467, 1468, 1469,
- 1481, 1482, 1495, 1637, 1650, 1651, 1663, 1664,
- 1677, 1833, 1846, 713, 726, 909, 922, 935,
- 1105, 1118, 1131, 1301, 1313, 1314, 1483, 1496,
- 1509, 1665, 1678, 1691, 1847, 1860, 727, 740,
- 923, 936, 949, 1119, 1132, 1145, 1315, 1327,
- 1328, 1497, 1510, 1523, 1679, 1692, 1705, 1861,
- 1874, 1859, 1873, 2029, 2042, 1887, 2043, 2056,
- 1341, 1511, 1524, 1537, 1693, 1706, 1719, 1875,
- 1888, 1901, 2057, 2070, 2083, 2055, 2069, 2225,
- 2238, 2239, 2252, 1707, 1720, 1889, 1902, 1915,
- 2071, 2084, 2097, 2253, 2266, 2279, 729, 742,
- 898, 911, 912, 924, 925, 938, 1080, 1093,
- 1094, 1106, 1107, 1108, 1120, 1121, 1134, 1275,
- 1276, 1288, 1289, 1290, 1302, 1303, 1316, 1317,
- 1330, 1458, 1471, 1472, 1484, 1485, 1486, 1498,
- 1499, 1512, 1654, 1667, 1668, 1680, 1681, 1694,
- 1863, 1876, 730, 743, 899, 913, 926, 939,
- 952, 1081, 1095, 1109, 1122, 1135, 1148, 1263,
- 1277, 1291, 1304, 1318, 1331, 1459, 1473, 1487,
- 1500, 1513, 1526, 1655, 1669, 1682, 1695, 1708,
- 1864, 1877, 718, 731, 744, 757, 900, 914,
- 927, 940, 953, 1082, 1096, 1110, 1123, 1136,
- 1149, 1278, 1292, 1305, 1306, 1319, 1332, 1345,
- 1460, 1474, 1488, 1501, 1514, 1527, 1656, 1670,
- 1683, 1696, 1709, 1865, 1878, 756, 1344, 1890,
- 966, 1162, 1540, 1722, 1891, 745, 758, 928,
- 941, 954, 967, 1124, 1137, 1150, 1163, 1333,
- 1346, 1502, 1515, 1528, 1541, 1684, 1697, 1710,
- 1723, 1879, 1892, 770, 1358, 1904, 771, 1359,
- 1554, 1736, 1905, 759, 772, 942, 955, 968,
- 1138, 1151, 1164, 1320, 1334, 1347, 1360, 1516,
- 1529, 1542, 1555, 1698, 1711, 1724, 1737, 1893,
- 1906, 1850, 2059, 2072, 1851, 2047, 2060, 2073,
- 2086, 1852, 1866, 2061, 2074, 1918, 2087, 1880,
- 1919, 2075, 2088, 2100, 1750, 1932, 2101, 1530,
- 1543, 1556, 1712, 1725, 1738, 1751, 1894, 1907,
- 1920, 1933, 2076, 2089, 2102, 2046, 2242, 2255,
- 2268, 2243, 2256, 2269, 2282, 2048, 2062, 2257,
- 2270, 2114, 2283, 2115, 2258, 2271, 2284, 2297,
- 2296, 1946, 2128, 1739, 1752, 1908, 1921, 1934,
- 1947, 2090, 2103, 2116, 2129, 2285, 2298, 732,
- 745, 901, 914, 915, 927, 928, 940, 941,
- 954, 1083, 1096, 1097, 1109, 1110, 1111, 1122,
- 1123, 1124, 1136, 1137, 1150, 1278, 1279, 1291,
- 1292, 1293, 1305, 1306, 1318, 1319, 1320, 1332,
- 1333, 1461, 1474, 1475, 1487, 1488, 1489, 1500,
- 1501, 1502, 1514, 1515, 1528, 1657, 1670, 1671,
- 1683, 1684, 1696, 1697, 1710, 1866, 1879, 733,
- 746, 902, 916, 929, 942, 955, 1084, 1098,
- 1112, 1125, 1138, 1151, 1266, 1280, 1294, 1307,
- 1321, 1334, 1462, 1476, 1490, 1503, 1516, 1529,
- 1658, 1672, 1685, 1698, 1711, 1867, 1880, 734,
- 747, 903, 917, 930, 943, 956, 1085, 1099,
- 1113, 1126, 1139, 1152, 1281, 1295, 1308, 1322,
- 1335, 1463, 1477, 1491, 1504, 1517, 1530, 1659,
- 1673, 1686, 1699, 1712, 1868, 1881, 759, 968,
- 1164, 1346, 1347, 1360, 1542, 1724, 1893, 760,
- 969, 1165, 1348, 1543, 1725, 1894, 748, 761,
- 931, 944, 957, 970, 1127, 1140, 1153, 1166,
- 1309, 1323, 1336, 1349, 1362, 1505, 1518, 1531,
- 1544, 1687, 1700, 1713, 1726, 1869, 1882, 1895,
- 1908, 773, 1361, 1556, 1738, 1907, 774, 1557,
- 1739, 1921, 762, 775, 945, 958, 971, 1141,
- 1154, 1167, 1350, 1363, 1519, 1532, 1545, 1558,
- 1701, 1714, 1727, 1740, 1896, 1909, 1853, 1892,
- 1906, 2062, 2075, 1854, 2050, 2063, 2076, 2089,
- 1855, 2064, 2077, 1920, 2102, 2090, 1883, 1922,
- 2078, 2091, 1752, 1934, 2103, 1753, 1935, 2104,
- 1337, 1546, 1559, 1715, 1728, 1741, 1754, 1897,
- 1910, 1923, 1936, 2079, 2092, 2105, 2049, 2088,
- 2245, 2258, 2271, 2284, 2246, 2259, 2272, 2285,
- 2051, 2065, 2260, 2273, 2116, 2117, 2286, 2118,
- 2261, 2274, 2287, 2300, 1948, 2130, 2299, 1949,
- 2131, 2313, 1533, 1742, 1755, 1911, 1924, 1937,
- 1950, 2093, 2106, 2119, 2132, 2288, 2301, 735,
- 748, 904, 917, 918, 930, 931, 943, 944,
- 957, 1086, 1099, 1100, 1112, 1113, 1114, 1125,
- 1126, 1127, 1139, 1140, 1153, 1281, 1282, 1294,
- 1295, 1296, 1308, 1309, 1321, 1322, 1323, 1335,
- 1336, 1464, 1477, 1478, 1490, 1491, 1492, 1503,
- 1504, 1505, 1517, 1518, 1531, 1660, 1673, 1674,
- 1686, 1687, 1699, 1700, 1713, 1869, 1882, 736,
- 749, 905, 919, 932, 945, 958, 1087, 1101,
- 1115, 1128, 1141, 1154, 1283, 1297, 1310, 1324,
- 1337, 1465, 1479, 1493, 1506, 1519, 1532, 1661,
- 1675, 1688, 1701, 1714, 1870, 1883, 724, 737,
- 750, 763, 906, 920, 933, 946, 959, 1088,
- 1102, 1116, 1129, 1142, 1155, 1270, 1284, 1298,
- 1311, 1312, 1325, 1338, 1351, 1466, 1480, 1494,
- 1507, 1520, 1533, 1662, 1676, 1689, 1702, 1715,
- 1858, 1871, 1884, 1897, 762, 971, 1167, 1349,
- 1350, 1545, 1727, 1896, 776, 972, 1168, 1364,
- 1546, 1728, 1910, 751, 764, 934, 947, 960,
- 973, 1130, 1143, 1156, 1169, 1326, 1339, 1352,
- 1365, 1508, 1521, 1534, 1547, 1690, 1703, 1716,
- 1729, 1885, 1898, 1363, 1559, 1741, 1923, 777,
- 1560, 1742, 1911, 765, 778, 948, 961, 974,
- 1144, 1157, 1170, 1340, 1353, 1366, 1522, 1535,
- 1548, 1561, 1704, 1717, 1730, 1743, 1899, 1912,
- 1856, 1895, 1909, 2065, 2078, 1857, 2066, 2079,
- 1872, 2054, 2067, 2080, 2093, 2092, 1924, 1886,
- 1925, 2081, 2094, 1755, 1937, 2106, 1756, 1938,
- 2107, 1536, 1549, 1562, 1718, 1731, 1744, 1757,
- 1900, 1913, 1926, 1939, 2095, 2108, 2052, 2091,
- 2105, 2248, 2261, 2274, 2287, 2053, 2262, 2275,
- 2068, 2250, 2263, 2276, 2289, 2119, 2288, 2120,
- 2302, 2082, 2121, 2277, 2290, 1951, 2133, 2315,
- 1952, 2134, 2303, 1732, 1745, 1758, 1914, 1927,
- 1940, 1953, 2096, 2109, 2122, 2135, 2278, 2291,
- 2304, 2317, 738, 751, 907, 920, 921, 933,
- 934, 946, 947, 960, 1089, 1102, 1103, 1115,
- 1116, 1117, 1128, 1129, 1130, 1142, 1143, 1156,
- 1284, 1285, 1297, 1298, 1299, 1311, 1312, 1324,
- 1325, 1326, 1338, 1339, 1467, 1480, 1481, 1493,
- 1494, 1495, 1506, 1507, 1508, 1520, 1521, 1534,
- 1663, 1676, 1677, 1689, 1690, 1702, 1703, 1716,
- 1872, 1885, 739, 752, 908, 922, 935, 948,
- 961, 1090, 1104, 1118, 1131, 1144, 1157, 1272,
- 1286, 1300, 1313, 1327, 1340, 1468, 1482, 1496,
- 1509, 1522, 1535, 1664, 1678, 1691, 1704, 1717,
- 1873, 1886, 727, 740, 753, 766, 909, 923,
- 936, 949, 962, 1091, 1105, 1119, 1132, 1145,
- 1158, 1273, 1287, 1301, 1314, 1328, 1341, 1469,
- 1483, 1497, 1510, 1523, 1536, 1665, 1679, 1692,
- 1705, 1718, 1874, 1887, 765, 974, 1170, 1352,
- 1353, 1548, 1730, 1899, 779, 975, 1171, 1354,
- 1549, 1731, 1900, 741, 754, 767, 780, 937,
- 950, 963, 976, 1133, 1146, 1159, 1172, 1315,
- 1329, 1342, 1355, 1368, 1511, 1524, 1537, 1550,
- 1693, 1706, 1719, 1732, 1888, 1901, 1366, 1367,
- 1562, 1744, 1913, 1563, 1745, 1914, 768, 781,
- 951, 964, 977, 1147, 1160, 1173, 1343, 1356,
- 1369, 1525, 1538, 1551, 1564, 1707, 1720, 1733,
- 1746, 1902, 1915, 1859, 1898, 1912, 2068, 2081,
- 1860, 2069, 2082, 1861, 1875, 2057, 2070, 2083,
- 2096, 1926, 2095, 1927, 2109, 1889, 1928, 2084,
- 2097, 1758, 1940, 1759, 1941, 2110, 1539, 1552,
- 1565, 1721, 1734, 1747, 1760, 1903, 1916, 1929,
- 1942, 2098, 2111, 2055, 2094, 2108, 2264, 2277,
- 2056, 2252, 2265, 2278, 2291, 2071, 2253, 2266,
- 2279, 2292, 2122, 2123, 2305, 2085, 2124, 2280,
- 2293, 1954, 2136, 1955, 2137, 2306, 1735, 1748,
- 1761, 1917, 1930, 1943, 1956, 2099, 2112, 2125,
- 2138, 2281, 2294, 2307, 2320, 741, 754, 923,
- 936, 937, 949, 950, 963, 1105, 1118, 1119,
- 1131, 1132, 1133, 1145, 1146, 1159, 1287, 1300,
- 1301, 1314, 1315, 1327, 1328, 1329, 1341, 1342,
- 1483, 1496, 1497, 1509, 1510, 1511, 1523, 1524,
- 1537, 1679, 1692, 1693, 1705, 1706, 1719, 1875,
- 1888, 755, 768, 951, 964, 977, 1147, 1160,
- 1173, 1343, 1355, 1356, 1525, 1538, 1551, 1707,
- 1720, 1733, 1889, 1902, 769, 782, 965, 978,
- 1161, 1174, 1357, 1369, 1370, 1539, 1552, 1565,
- 1721, 1734, 1747, 1903, 1916, 1901, 1915, 2071,
- 2084, 1929, 2085, 2098, 1553, 1566, 1735, 1748,
- 1761, 1917, 1930, 1943, 2099, 2112, 2097, 2111,
- 2267, 2280, 2125, 2281, 2294, 1749, 1762, 1931,
- 1944, 1957, 2113, 2126, 2139, 2295, 2308, 771,
- 940, 953, 954, 966, 967, 1122, 1135, 1136,
- 1148, 1149, 1150, 1162, 1163, 1317, 1318, 1330,
- 1331, 1332, 1344, 1345, 1358, 1359, 1500, 1513,
- 1514, 1526, 1527, 1528, 1540, 1541, 1554, 1696,
- 1709, 1710, 1722, 1723, 1736, 1905, 1918, 772,
- 941, 955, 968, 1123, 1137, 1151, 1164, 1319,
- 1333, 1346, 1360, 1501, 1515, 1529, 1542, 1555,
- 1697, 1711, 1724, 1737, 1750, 1906, 1919, 773,
- 942, 956, 969, 1124, 1138, 1152, 1165, 1320,
- 1334, 1347, 1361, 1502, 1516, 1530, 1543, 1556,
- 1698, 1712, 1725, 1738, 1751, 1907, 1920, 1892,
- 1932, 2101, 2114, 1893, 1933, 1946, 2102, 2115,
- 1348, 1557, 1726, 1739, 1752, 1894, 1908, 1921,
- 1934, 1947, 2103, 2116, 2088, 2128, 2297, 2310,
- 2089, 2129, 2142, 2298, 2311, 1544, 1753, 1922,
- 1935, 1948, 2090, 2104, 2117, 2130, 2143, 2299,
- 2312, 774, 943, 956, 957, 969, 970, 1125,
- 1138, 1139, 1151, 1152, 1153, 1164, 1165, 1166,
- 1320, 1321, 1333, 1334, 1335, 1347, 1348, 1360,
- 1361, 1362, 1503, 1516, 1517, 1529, 1530, 1531,
- 1542, 1543, 1544, 1556, 1557, 1699, 1712, 1713,
- 1725, 1726, 1738, 1739, 1752, 1908, 1921, 775,
- 944, 958, 971, 1126, 1140, 1154, 1167, 1322,
- 1336, 1349, 1363, 1504, 1518, 1532, 1545, 1558,
- 1700, 1714, 1727, 1740, 1753, 1909, 1922, 763,
- 776, 945, 959, 972, 1127, 1141, 1155, 1168,
- 1309, 1323, 1337, 1350, 1351, 1364, 1505, 1519,
- 1533, 1546, 1559, 1701, 1715, 1728, 1741, 1754,
- 1897, 1910, 1923, 1936, 1895, 1934, 1935, 1948,
- 2104, 2117, 1896, 1949, 2105, 2118, 1547, 1560,
- 1729, 1742, 1755, 1911, 1924, 1937, 1950, 2093,
- 2106, 2119, 2132, 2091, 2130, 2131, 2144, 2287,
- 2300, 2313, 2326, 2092, 2145, 2301, 2314, 1743,
- 1756, 1925, 1938, 1951, 2107, 2120, 2133, 2146,
- 2289, 2302, 2315, 2328, 777, 946, 959, 960,
- 972, 973, 1128, 1141, 1142, 1154, 1155, 1156,
- 1167, 1168, 1169, 1323, 1324, 1336, 1337, 1338,
- 1350, 1351, 1363, 1364, 1365, 1506, 1519, 1520,
- 1532, 1533, 1534, 1545, 1546, 1547, 1559, 1560,
- 1702, 1715, 1716, 1728, 1729, 1741, 1742, 1755,
- 1911, 1924, 778, 947, 961, 974, 1129, 1143,
- 1157, 1170, 1325, 1339, 1352, 1366, 1507, 1521,
- 1535, 1548, 1561, 1703, 1717, 1730, 1743, 1756,
- 1912, 1925, 766, 779, 948, 962, 975, 1130,
- 1144, 1158, 1171, 1312, 1326, 1340, 1353, 1367,
- 1508, 1522, 1536, 1549, 1562, 1704, 1718, 1731,
- 1744, 1757, 1913, 1926, 1898, 1937, 1938, 1951,
- 2107, 2120, 1899, 1939, 1952, 2108, 2121, 1354,
- 1550, 1563, 1732, 1745, 1758, 1900, 1914, 1927,
- 1940, 1953, 2096, 2109, 2122, 2135, 2094, 2133,
- 2134, 2147, 2303, 2316, 2095, 2148, 2304, 2317,
- 1746, 1759, 1928, 1941, 1954, 2110, 2123, 2136,
- 2149, 2292, 2305, 2318, 2331, 780, 949, 962,
- 963, 975, 976, 1131, 1144, 1145, 1157, 1158,
- 1159, 1170, 1171, 1172, 1326, 1327, 1339, 1340,
- 1341, 1353, 1354, 1366, 1367, 1368, 1509, 1522,
- 1523, 1535, 1536, 1537, 1548, 1549, 1550, 1562,
- 1563, 1705, 1718, 1719, 1731, 1732, 1744, 1745,
- 1758, 1914, 1927, 781, 950, 964, 977, 1132,
- 1146, 1160, 1173, 1314, 1328, 1342, 1355, 1369,
- 1510, 1524, 1538, 1551, 1564, 1706, 1720, 1733,
- 1746, 1759, 1915, 1928, 769, 782, 951, 965,
- 978, 1133, 1147, 1161, 1174, 1315, 1329, 1343,
- 1356, 1370, 1511, 1525, 1539, 1552, 1565, 1707,
- 1721, 1734, 1747, 1760, 1916, 1929, 1901, 1940,
- 1941, 1954, 2110, 2123, 1902, 1942, 1955, 2111,
- 2124, 1357, 1553, 1566, 1735, 1748, 1761, 1903,
- 1917, 1930, 1943, 1956, 2099, 2112, 2125, 2138,
- 2097, 2136, 2137, 2150, 2306, 2319, 2098, 2151,
- 2294, 2307, 2320, 2333, 1749, 1762, 1931, 1944,
- 1957, 2113, 2126, 2139, 2152, 2295, 2308, 2321,
- 2334, 783, 965, 978, 979, 1147, 1160, 1161,
- 1173, 1174, 1175, 1329, 1342, 1343, 1356, 1357,
- 1369, 1370, 1371, 1525, 1538, 1539, 1551, 1552,
- 1553, 1565, 1566, 1721, 1734, 1735, 1747, 1748,
- 1761, 1917, 1930, 1567, 1749, 1762, 1931, 1943,
- 1944, 1957, 2113, 2126, 1763, 1945, 1958, 2127,
- 2139, 2140, 2153, 2309, 2322, 1191, 1204, 1373,
- 1374, 1386, 1387, 1400, 1568, 1569, 1570, 1582,
- 1583, 1596, 1764, 1765, 1778, 1779, 1792, 1960,
- 1961, 1974, 2156, 1192, 1205, 1375, 1388, 1401,
- 1414, 1571, 1584, 1597, 1610, 1766, 1780, 1793,
- 1962, 1975, 1988, 2157, 2170, 1180, 1193, 1206,
- 1219, 1376, 1389, 1402, 1415, 1572, 1585, 1598,
- 1611, 1767, 1768, 1781, 1794, 1807, 1963, 1976,
- 1989, 2158, 2171, 2353, 1218, 1806, 2352, 1232,
- 1428, 1624, 1820, 2002, 2184, 2366, 1207, 1220,
- 1390, 1403, 1416, 1429, 1586, 1599, 1612, 1625,
- 1795, 1808, 1964, 1977, 1990, 2003, 2159, 2172,
- 2185, 2354, 1233, 1442, 1638, 1821, 2016, 2198,
- 2367, 1221, 1234, 1404, 1417, 1430, 1443, 1600,
- 1613, 1626, 1639, 1782, 1809, 1822, 1978, 1991,
- 2004, 2017, 2160, 2173, 2186, 2199, 2355, 2368,
- 2549, 2548, 2380, 2381, 2550, 2562, 1834, 2212,
- 2394, 2563, 1796, 1835, 2005, 2018, 2174, 2187,
- 2200, 2213, 2356, 2369, 2382, 2395, 2551, 2564,
- 2577, 2576, 2030, 2408, 2590, 1992, 2031, 2201,
- 2214, 2370, 2383, 2396, 2409, 2552, 2565, 2578,
- 2591, 1194, 1207, 1376, 1377, 1389, 1390, 1402,
- 1403, 1416, 1571, 1572, 1573, 1584, 1585, 1586,
- 1598, 1599, 1612, 1767, 1768, 1780, 1781, 1782,
- 1794, 1795, 1962, 1963, 1964, 1976, 1977, 1990,
- 2158, 2159, 2172, 1195, 1208, 1378, 1391, 1404,
- 1417, 1574, 1587, 1600, 1613, 1769, 1783, 1796,
- 1965, 1978, 1991, 2160, 2173, 1183, 1196, 1209,
- 1222, 1379, 1392, 1405, 1418, 1575, 1588, 1601,
- 1614, 1770, 1771, 1784, 1797, 1810, 1966, 1979,
- 1992, 2161, 2174, 2356, 1221, 1430, 1626, 1808,
- 1809, 2004, 2186, 2355, 1235, 1431, 1627, 1823,
- 2005, 2187, 2369, 1210, 1223, 1393, 1406, 1419,
- 1432, 1589, 1602, 1615, 1628, 1798, 1811, 1967,
- 1980, 1993, 2006, 2162, 2175, 2188, 2357, 1248,
- 1444, 1640, 1822, 1836, 2018, 2200, 2382, 1236,
- 1445, 1641, 1824, 2019, 2201, 2370, 1224, 1237,
- 1407, 1420, 1433, 1446, 1603, 1616, 1629, 1642,
- 1785, 1812, 1825, 1981, 1994, 2007, 2020, 2163,
- 2176, 2189, 2202, 2358, 2371, 2354, 2368, 2551,
- 2552, 2383, 2384, 2553, 2032, 2214, 2396, 2565,
- 1837, 2215, 2397, 2566, 1799, 1838, 2008, 2021,
- 2177, 2190, 2203, 2216, 2359, 2372, 2385, 2398,
- 2554, 2567, 2580, 2550, 2564, 2578, 2579, 2228,
- 2410, 2592, 2033, 2411, 2593, 1995, 2034, 2204,
- 2217, 2373, 2386, 2399, 2412, 2555, 2568, 2581,
- 2594, 1197, 1210, 1379, 1380, 1392, 1393, 1405,
- 1406, 1419, 1574, 1575, 1576, 1587, 1588, 1589,
- 1601, 1602, 1615, 1770, 1771, 1783, 1784, 1785,
- 1797, 1798, 1965, 1966, 1967, 1979, 1980, 1993,
- 2161, 2162, 2175, 1198, 1211, 1381, 1394, 1407,
- 1420, 1577, 1590, 1603, 1616, 1772, 1786, 1799,
- 1968, 1981, 1994, 2163, 2176, 1186, 1199, 1212,
- 1225, 1382, 1395, 1408, 1421, 1578, 1591, 1604,
- 1617, 1773, 1774, 1787, 1800, 1813, 1969, 1982,
- 1995, 2164, 2177, 2359, 1224, 1433, 1629, 1811,
- 1812, 2007, 2189, 2358, 1238, 1434, 1630, 1826,
- 2008, 2190, 2372, 1213, 1226, 1396, 1409, 1422,
- 1435, 1592, 1605, 1618, 1631, 1788, 1801, 1814,
- 1970, 1983, 1996, 2009, 2165, 2178, 2191, 2360,
- 1251, 1447, 1643, 1825, 1839, 2021, 2203, 2385,
- 1239, 1448, 1644, 1827, 2022, 2204, 2373, 1227,
- 1240, 1410, 1423, 1436, 1449, 1606, 1619, 1632,
- 1645, 1802, 1815, 1828, 1984, 1997, 2010, 2023,
- 2166, 2179, 2192, 2205, 2361, 2374, 2357, 2371,
- 2554, 2555, 2386, 2387, 2556, 2035, 2217, 2399,
- 2568, 1840, 2218, 2400, 2569, 1841, 1998, 2011,
- 2024, 2180, 2193, 2206, 2219, 2362, 2375, 2388,
- 2401, 2557, 2570, 2583, 2553, 2567, 2581, 2582,
- 2231, 2413, 2595, 2036, 2414, 2596, 2037, 2194,
- 2207, 2220, 2376, 2389, 2402, 2415, 2558, 2571,
- 2584, 2597, 1200, 1213, 1382, 1383, 1395, 1396,
- 1408, 1409, 1422, 1577, 1578, 1579, 1590, 1591,
- 1592, 1604, 1605, 1618, 1773, 1774, 1786, 1787,
- 1788, 1800, 1801, 1968, 1969, 1970, 1982, 1983,
- 1996, 2164, 2165, 2178, 1188, 1201, 1214, 1227,
- 1384, 1397, 1410, 1423, 1580, 1593, 1606, 1619,
- 1775, 1789, 1802, 1971, 1984, 1997, 2166, 2179,
- 2361, 1189, 1202, 1215, 1228, 1385, 1398, 1411,
- 1424, 1581, 1594, 1607, 1620, 1776, 1777, 1790,
- 1803, 1816, 1972, 1985, 1998, 2167, 2180, 2362,
- 1436, 1632, 1814, 1815, 2010, 2192, 1241, 1437,
- 1633, 1829, 2011, 2193, 2375, 1216, 1229, 1399,
- 1412, 1425, 1438, 1595, 1608, 1621, 1634, 1791,
- 1804, 1817, 1830, 1973, 1986, 1999, 2012, 2168,
- 2181, 2194, 2363, 1450, 1646, 1828, 2024, 2206,
- 1242, 1451, 1647, 1843, 2025, 2207, 2376, 2389,
- 1230, 1243, 1413, 1426, 1439, 1452, 1609, 1622,
- 1635, 1648, 1805, 1818, 1831, 1844, 1987, 2000,
- 2013, 2026, 2169, 2182, 2195, 2208, 2364, 2377,
- 2360, 2374, 2557, 2558, 2388, 2390, 2559, 1842,
- 2220, 2402, 2571, 2221, 2403, 2572, 2001, 2014,
- 2027, 2040, 2183, 2196, 2209, 2222, 2365, 2378,
- 2391, 2404, 2560, 2573, 2556, 2570, 2584, 2585,
- 2586, 2038, 2416, 2598, 2039, 2235, 2417, 2599,
- 2197, 2210, 2223, 2236, 2379, 2392, 2405, 2418,
- 2561, 2574, 2587, 2600, 1203, 1216, 1385, 1398,
- 1399, 1411, 1412, 1425, 1580, 1581, 1593, 1594,
- 1595, 1607, 1608, 1621, 1776, 1777, 1789, 1790,
- 1791, 1803, 1804, 1971, 1972, 1973, 1985, 1986,
- 1999, 2167, 2168, 2181, 1217, 1230, 1413, 1426,
- 1439, 1609, 1622, 1635, 1805, 1817, 1818, 1987,
- 2000, 2013, 2169, 2182, 2195, 2364, 1231, 1244,
- 1427, 1440, 1453, 1623, 1636, 1649, 1819, 1831,
- 1832, 2001, 2014, 2027, 2183, 2196, 2209, 2365,
- 2378, 2363, 2377, 2391, 2560, 1845, 2015, 2028,
- 2197, 2210, 2223, 2379, 2392, 2405, 2561, 2574,
- 2559, 2573, 2587, 2041, 2211, 2224, 2393, 2406,
- 2419, 2575, 2588, 2601, 1233, 1246, 1402, 1415,
- 1416, 1428, 1429, 1442, 1584, 1597, 1598, 1610,
- 1611, 1612, 1624, 1625, 1638, 1779, 1780, 1792,
- 1793, 1794, 1806, 1807, 1820, 1821, 1834, 1962,
- 1975, 1976, 1988, 1989, 1990, 2002, 2003, 2016,
- 2158, 2171, 2172, 2184, 2185, 2198, 2367, 2380,
- 1234, 1247, 1403, 1417, 1430, 1443, 1456, 1585,
- 1599, 1613, 1626, 1639, 1652, 1767, 1781, 1795,
- 1808, 1822, 1835, 1963, 1977, 1991, 2004, 2017,
- 2030, 2159, 2173, 2186, 2199, 2212, 2368, 2381,
- 1222, 1235, 1248, 1261, 1404, 1418, 1431, 1444,
- 1457, 1586, 1600, 1614, 1627, 1640, 1653, 1768,
- 1782, 1796, 1809, 1810, 1823, 1836, 1849, 1964,
- 1978, 1992, 2005, 2018, 2031, 2160, 2174, 2187,
- 2200, 2213, 2356, 2369, 2382, 2395, 1260, 1848,
- 2394, 1274, 1470, 1666, 1862, 2044, 2226, 2408,
- 1249, 1262, 1432, 1445, 1458, 1471, 1628, 1641,
- 1654, 1667, 1837, 1850, 2006, 2019, 2032, 2045,
- 2188, 2201, 2214, 2227, 2383, 2396, 1275, 1484,
- 1680, 1863, 2058, 2240, 2409, 1250, 1263, 1276,
- 1289, 1446, 1459, 1472, 1485, 1642, 1655, 1668,
- 1681, 1824, 1851, 1864, 2020, 2033, 2046, 2059,
- 2202, 2215, 2228, 2241, 2397, 2410, 2354, 2563,
- 2576, 2355, 2551, 2564, 2577, 2590, 2370, 2552,
- 2565, 2578, 2591, 2422, 2384, 2423, 2579, 2592,
- 2604, 1876, 2254, 2436, 2605, 1838, 1877, 2034,
- 2047, 2060, 2073, 2216, 2229, 2242, 2255, 2398,
- 2411, 2424, 2437, 2580, 2593, 2606, 2619, 2550,
- 2566, 2618, 2072, 2450, 2632, 2230, 2243, 2256,
- 2269, 2412, 2425, 2438, 2451, 2594, 2607, 2620,
- 2633, 1236, 1249, 1405, 1418, 1419, 1431, 1432,
- 1444, 1445, 1458, 1587, 1600, 1601, 1613, 1614,
- 1615, 1626, 1627, 1628, 1640, 1641, 1654, 1782,
- 1783, 1795, 1796, 1797, 1809, 1810, 1822, 1823,
- 1824, 1836, 1837, 1965, 1978, 1979, 1991, 1992,
- 1993, 2004, 2005, 2006, 2018, 2019, 2032, 2161,
- 2174, 2175, 2187, 2188, 2200, 2201, 2214, 2370,
- 2383, 1237, 1250, 1406, 1420, 1433, 1446, 1459,
- 1588, 1602, 1616, 1629, 1642, 1655, 1770, 1784,
- 1798, 1811, 1825, 1838, 1966, 1980, 1994, 2007,
- 2020, 2033, 2162, 2176, 2189, 2202, 2215, 2371,
- 2384, 1225, 1238, 1251, 1264, 1407, 1421, 1434,
- 1447, 1460, 1589, 1603, 1617, 1630, 1643, 1656,
- 1771, 1785, 1799, 1812, 1813, 1826, 1839, 1852,
- 1967, 1981, 1995, 2008, 2021, 2034, 2163, 2177,
- 2190, 2203, 2216, 2359, 2372, 2385, 2398, 1263,
- 1472, 1668, 1850, 1851, 1864, 2046, 2228, 2397,
- 1277, 1473, 1669, 1865, 2047, 2229, 2411, 1252,
- 1265, 1435, 1448, 1461, 1474, 1631, 1644, 1657,
- 1670, 1840, 1853, 2009, 2022, 2035, 2048, 2191,
- 2204, 2217, 2230, 2386, 2399, 1290, 1486, 1682,
- 1878, 2060, 2242, 2424, 1278, 1487, 1683, 1866,
- 2061, 2243, 2412, 1253, 1266, 1279, 1292, 1449,
- 1462, 1475, 1488, 1645, 1658, 1671, 1684, 1827,
- 1854, 1867, 2023, 2036, 2049, 2062, 2205, 2218,
- 2231, 2244, 2400, 2413, 2357, 2396, 2410, 2566,
- 2579, 2358, 2554, 2567, 2580, 2593, 2373, 2555,
- 2568, 2581, 2594, 2606, 2425, 2387, 2426, 2582,
- 2595, 2074, 2256, 2438, 2607, 1879, 2257, 2439,
- 2608, 1841, 1880, 2037, 2050, 2063, 2076, 2219,
- 2232, 2245, 2258, 2401, 2414, 2427, 2440, 2583,
- 2596, 2609, 2622, 2553, 2592, 2569, 2620, 2621,
- 2270, 2452, 2634, 2075, 2453, 2635, 2233, 2246,
- 2259, 2272, 2415, 2428, 2441, 2454, 2597, 2610,
- 2623, 2636, 1239, 1252, 1408, 1421, 1422, 1434,
- 1435, 1447, 1448, 1461, 1590, 1603, 1604, 1616,
- 1617, 1618, 1629, 1630, 1631, 1643, 1644, 1657,
- 1785, 1786, 1798, 1799, 1800, 1812, 1813, 1825,
- 1826, 1827, 1839, 1840, 1968, 1981, 1982, 1994,
- 1995, 1996, 2007, 2008, 2009, 2021, 2022, 2035,
- 2164, 2177, 2178, 2190, 2191, 2203, 2204, 2217,
- 2373, 2386, 1240, 1253, 1409, 1423, 1436, 1449,
- 1462, 1591, 1605, 1619, 1632, 1645, 1658, 1773,
- 1787, 1801, 1814, 1828, 1841, 1969, 1983, 1997,
- 2010, 2023, 2036, 2165, 2179, 2192, 2205, 2218,
- 2374, 2387, 1228, 1241, 1254, 1267, 1410, 1424,
- 1437, 1450, 1463, 1592, 1606, 1620, 1633, 1646,
- 1659, 1774, 1788, 1802, 1815, 1816, 1829, 1842,
- 1855, 1970, 1984, 1998, 2011, 2024, 2037, 2166,
- 2180, 2193, 2206, 2219, 2362, 2375, 2388, 2401,
- 1266, 1475, 1671, 1853, 1854, 1867, 2049, 2231,
- 2400, 1280, 1476, 1672, 1868, 2050, 2232, 2414,
- 1255, 1268, 1438, 1451, 1464, 1477, 1634, 1647,
- 1660, 1673, 1830, 1843, 1856, 2012, 2025, 2038,
- 2051, 2194, 2207, 2220, 2233, 2376, 2389, 2402,
- 1293, 1489, 1685, 1881, 2063, 2245, 2427, 1281,
- 1490, 1686, 1869, 2064, 2246, 2415, 1256, 1269,
- 1282, 1295, 1452, 1465, 1478, 1491, 1648, 1661,
- 1674, 1687, 1844, 1857, 1870, 2026, 2039, 2052,
- 2065, 2208, 2221, 2234, 2247, 2390, 2403, 2416,
- 2360, 2399, 2413, 2569, 2582, 2361, 2557, 2570,
- 2583, 2596, 2558, 2571, 2584, 2597, 2609, 2428,
- 2429, 2585, 2598, 2077, 2259, 2441, 2610, 1882,
- 2260, 2442, 2611, 1883, 2040, 2053, 2066, 2079,
- 2222, 2235, 2248, 2261, 2404, 2417, 2430, 2443,
- 2586, 2599, 2612, 2625, 2556, 2595, 2572, 2623,
- 2624, 2273, 2455, 2637, 2078, 2456, 2638, 2236,
- 2249, 2262, 2275, 2418, 2431, 2444, 2457, 2600,
- 2613, 2626, 2639, 1242, 1255, 1411, 1424, 1425,
- 1437, 1438, 1450, 1451, 1464, 1593, 1606, 1607,
- 1619, 1620, 1621, 1632, 1633, 1634, 1646, 1647,
- 1660, 1788, 1789, 1801, 1802, 1803, 1815, 1816,
- 1828, 1829, 1830, 1842, 1843, 1971, 1984, 1985,
- 1997, 1998, 1999, 2010, 2011, 2012, 2024, 2025,
- 2038, 2167, 2180, 2181, 2193, 2194, 2206, 2207,
- 2220, 2376, 2389, 1243, 1256, 1269, 1412, 1426,
- 1439, 1452, 1465, 1594, 1608, 1622, 1635, 1648,
- 1661, 1776, 1790, 1804, 1817, 1831, 1844, 1972,
- 1986, 2000, 2013, 2026, 2039, 2168, 2182, 2195,
- 2208, 2221, 2377, 2390, 1231, 1244, 1257, 1270,
- 1413, 1427, 1440, 1453, 1466, 1595, 1609, 1623,
- 1636, 1649, 1662, 1777, 1791, 1805, 1818, 1819,
- 1832, 1845, 1858, 1973, 1987, 2001, 2014, 2027,
- 2040, 2169, 2183, 2196, 2209, 2222, 2365, 2378,
- 2391, 2404, 1478, 1674, 1856, 1857, 2052, 2234,
- 2403, 1283, 1479, 1675, 1871, 2053, 2235, 2417,
- 1258, 1271, 1441, 1454, 1467, 1480, 1637, 1650,
- 1663, 1676, 1833, 1846, 1859, 1872, 2015, 2028,
- 2041, 2054, 2197, 2210, 2223, 2236, 2379, 2392,
- 2405, 1492, 1688, 1870, 2066, 2248, 1284, 1493,
- 1689, 1885, 2067, 2249, 2418, 2431, 1272, 1285,
- 1455, 1468, 1481, 1494, 1651, 1664, 1677, 1690,
- 1860, 1873, 2029, 2042, 2055, 2068, 2211, 2224,
- 2237, 2250, 2393, 2406, 2419, 2363, 2402, 2416,
- 2572, 2585, 2364, 2560, 2573, 2586, 2599, 2561,
- 2574, 2587, 2430, 2600, 2432, 2588, 2601, 1884,
- 2262, 2444, 2613, 2081, 2263, 2445, 2614, 1847,
- 1886, 2056, 2069, 2225, 2238, 2251, 2264, 2407,
- 2420, 2433, 2446, 2602, 2615, 2559, 2598, 2612,
- 2575, 2626, 2627, 2589, 2628, 2080, 2458, 2640,
- 2277, 2459, 2641, 2043, 2082, 2252, 2265, 2421,
- 2434, 2447, 2460, 2603, 2616, 2629, 2642, 1245,
- 1258, 1427, 1440, 1441, 1453, 1454, 1467, 1609,
- 1622, 1623, 1635, 1636, 1637, 1649, 1650, 1663,
- 1791, 1804, 1805, 1818, 1819, 1831, 1832, 1833,
- 1845, 1846, 1987, 2000, 2001, 2013, 2014, 2015,
- 2027, 2028, 2041, 2183, 2196, 2197, 2209, 2210,
- 2223, 2379, 2392, 1259, 1272, 1455, 1468, 1481,
- 1651, 1664, 1677, 1847, 1859, 1860, 2029, 2042,
- 2055, 2211, 2224, 2237, 2393, 2406, 1273, 1286,
- 1469, 1482, 1495, 1665, 1678, 1691, 1861, 1873,
- 1874, 2043, 2056, 2069, 2225, 2238, 2251, 2407,
- 2420, 2405, 2419, 2575, 2588, 2433, 2589, 2602,
- 1887, 2057, 2070, 2239, 2252, 2265, 2421, 2434,
- 2447, 2603, 2616, 2601, 2615, 2629, 2083, 2253,
- 2266, 2435, 2448, 2461, 2617, 2630, 2643, 1275,
- 1288, 1444, 1457, 1458, 1470, 1471, 1484, 1626,
- 1639, 1640, 1652, 1653, 1654, 1666, 1667, 1680,
- 1821, 1822, 1834, 1835, 1836, 1848, 1849, 1862,
- 1863, 1876, 2004, 2017, 2018, 2030, 2031, 2032,
- 2044, 2045, 2058, 2200, 2213, 2214, 2226, 2227,
- 2240, 2409, 2422, 1276, 1289, 1445, 1459, 1472,
- 1485, 1498, 1627, 1641, 1655, 1668, 1681, 1694,
- 1809, 1823, 1837, 1850, 1864, 1877, 2005, 2019,
- 2033, 2046, 2059, 2072, 2201, 2215, 2228, 2241,
- 2254, 2410, 2423, 1264, 1277, 1290, 1303, 1446,
- 1460, 1473, 1486, 1499, 1628, 1642, 1656, 1669,
- 1682, 1695, 1824, 1838, 1851, 1852, 1865, 1878,
- 1891, 2006, 2020, 2034, 2047, 2060, 2073, 2202,
- 2216, 2229, 2242, 2255, 2411, 2424, 1302, 1890,
- 2436, 1512, 1708, 2086, 2268, 2437, 1291, 1304,
- 1474, 1487, 1500, 1513, 1670, 1683, 1696, 1709,
- 1879, 1892, 2048, 2061, 2074, 2087, 2230, 2243,
- 2256, 2269, 2425, 2438, 1316, 1904, 2450, 1317,
- 1526, 1722, 1905, 2100, 2282, 2451, 1292, 1305,
- 1318, 1488, 1501, 1514, 1527, 1684, 1697, 1710,
- 1723, 1866, 1893, 1906, 1919, 2062, 2075, 2088,
- 2101, 2244, 2257, 2270, 2283, 2439, 2452, 2396,
- 2605, 2618, 2397, 2593, 2606, 2619, 2632, 2398,
- 2412, 2607, 2620, 2464, 2633, 2426, 2465, 2621,
- 2634, 2646, 1918, 2296, 2478, 2647, 1880, 2076,
- 2089, 2102, 2115, 2258, 2271, 2284, 2297, 2440,
- 2453, 2466, 2479, 2622, 2635, 2648, 2661, 2592,
- 2594, 2608, 2660, 2114, 2492, 2674, 2272, 2285,
- 2298, 2311, 2454, 2467, 2480, 2493, 2636, 2649,
- 2662, 2675, 1278, 1291, 1447, 1460, 1461, 1473,
- 1474, 1486, 1487, 1500, 1629, 1642, 1643, 1655,
- 1656, 1657, 1668, 1669, 1670, 1682, 1683, 1696,
- 1824, 1825, 1837, 1838, 1839, 1851, 1852, 1864,
- 1865, 1866, 1878, 1879, 2007, 2020, 2021, 2033,
- 2034, 2035, 2046, 2047, 2048, 2060, 2061, 2074,
- 2203, 2216, 2217, 2229, 2230, 2242, 2243, 2256,
- 2412, 2425, 1279, 1292, 1448, 1462, 1475, 1488,
- 1501, 1630, 1644, 1658, 1671, 1684, 1697, 1812,
- 1826, 1840, 1853, 1867, 1880, 2008, 2022, 2036,
- 2049, 2062, 2075, 2204, 2218, 2231, 2244, 2257,
- 2413, 2426, 1267, 1280, 1293, 1306, 1449, 1463,
- 1476, 1489, 1502, 1631, 1645, 1659, 1672, 1685,
- 1698, 1827, 1841, 1854, 1855, 1868, 1881, 1894,
- 2009, 2023, 2037, 2050, 2063, 2076, 2205, 2219,
- 2232, 2245, 2258, 2414, 2427, 1305, 1514, 1710,
- 1892, 1893, 1906, 2088, 2270, 2439, 1515, 1711,
- 2089, 2271, 2440, 1294, 1307, 1477, 1490, 1503,
- 1516, 1673, 1686, 1699, 1712, 1882, 1895, 2051,
- 2064, 2077, 2090, 2233, 2246, 2259, 2272, 2428,
- 2441, 1319, 1332, 1528, 1724, 1907, 1920, 2102,
- 2284, 2453, 2466, 1320, 1529, 1725, 1908, 2103,
- 2285, 2454, 1295, 1308, 1321, 1491, 1504, 1517,
- 1530, 1687, 1700, 1713, 1726, 1869, 1896, 1909,
- 1922, 2065, 2078, 2091, 2104, 2247, 2260, 2273,
- 2286, 2442, 2455, 2399, 2438, 2452, 2608, 2621,
- 2400, 2596, 2609, 2622, 2635, 2401, 2415, 2610,
- 2623, 2467, 2636, 2429, 2468, 2624, 2637, 2116,
- 2298, 2480, 2649, 1921, 2299, 2481, 2650, 1883,
- 2079, 2092, 2105, 2118, 2261, 2274, 2287, 2300,
- 2443, 2456, 2469, 2482, 2625, 2638, 2651, 2664,
- 2595, 2634, 2648, 2597, 2611, 2662, 2663, 2312,
- 2494, 2676, 2117, 2495, 2677, 2275, 2288, 2301,
- 2314, 2457, 2470, 2483, 2496, 2639, 2652, 2665,
- 2678, 1281, 1294, 1450, 1463, 1464, 1476, 1477,
- 1489, 1490, 1503, 1632, 1645, 1646, 1658, 1659,
- 1660, 1671, 1672, 1673, 1685, 1686, 1699, 1827,
- 1828, 1840, 1841, 1842, 1854, 1855, 1867, 1868,
- 1869, 1881, 1882, 2010, 2023, 2024, 2036, 2037,
- 2038, 2049, 2050, 2051, 2063, 2064, 2077, 2206,
- 2219, 2220, 2232, 2233, 2245, 2246, 2259, 2415,
- 2428, 1282, 1295, 1451, 1465, 1478, 1491, 1504,
- 1633, 1647, 1661, 1674, 1687, 1700, 1815, 1829,
- 1843, 1856, 1870, 1883, 2011, 2025, 2039, 2052,
- 2065, 2078, 2207, 2221, 2234, 2247, 2260, 2416,
- 2429, 1270, 1283, 1296, 1452, 1466, 1479, 1492,
- 1505, 1634, 1648, 1662, 1675, 1688, 1701, 1816,
- 1830, 1844, 1857, 1858, 1871, 1884, 2012, 2026,
- 2040, 2053, 2066, 2079, 2208, 2222, 2235, 2248,
- 2261, 2404, 2417, 2430, 1308, 1517, 1713, 1895,
- 1896, 1909, 2091, 2273, 2442, 1309, 1518, 1714,
- 1897, 2092, 2274, 2443, 1297, 1310, 1480, 1493,
- 1506, 1519, 1676, 1689, 1702, 1715, 1872, 1885,
- 1898, 1911, 2054, 2067, 2080, 2093, 2236, 2249,
- 2262, 2275, 2418, 2431, 2444, 2457, 1322, 1335,
- 1531, 1727, 1910, 1923, 2105, 2287, 2456, 2469,
- 1323, 1532, 1728, 2106, 2288, 1311, 1324, 1494,
- 1507, 1520, 1533, 1690, 1703, 1716, 1729, 1899,
- 1912, 2068, 2081, 2094, 2107, 2250, 2263, 2276,
- 2289, 2432, 2445, 2458, 2402, 2441, 2455, 2611,
- 2624, 2403, 2599, 2612, 2625, 2638, 2600, 2613,
- 2626, 2470, 2639, 2471, 2614, 2627, 2640, 2301,
- 2483, 2652, 1924, 2302, 2484, 2653, 1886, 1925,
- 2095, 2108, 2264, 2277, 2290, 2303, 2446, 2459,
- 2472, 2485, 2641, 2654, 2598, 2637, 2651, 2665,
- 2666, 2628, 2667, 2119, 2497, 2679, 2120, 2498,
- 2680, 2082, 2121, 2291, 2304, 2460, 2473, 2486,
- 2499, 2642, 2655, 2668, 2681, 1284, 1297, 1453,
- 1466, 1467, 1479, 1480, 1492, 1493, 1506, 1635,
- 1648, 1649, 1661, 1662, 1663, 1674, 1675, 1676,
- 1688, 1689, 1702, 1830, 1831, 1843, 1844, 1845,
- 1857, 1858, 1870, 1871, 1872, 1884, 1885, 2013,
- 2026, 2027, 2039, 2040, 2041, 2052, 2053, 2054,
- 2066, 2067, 2080, 2209, 2222, 2223, 2235, 2236,
- 2248, 2249, 2262, 2418, 2431, 1285, 1298, 1454,
- 1468, 1481, 1494, 1507, 1636, 1650, 1664, 1677,
- 1690, 1703, 1818, 1832, 1846, 1859, 1873, 1886,
- 2014, 2028, 2042, 2055, 2068, 2081, 2210, 2224,
- 2237, 2250, 2263, 2419, 2432, 1286, 1299, 1455,
- 1469, 1482, 1495, 1508, 1637, 1651, 1665, 1678,
- 1691, 1704, 1833, 1847, 1860, 1874, 1887, 2015,
- 2029, 2043, 2056, 2069, 2082, 2211, 2225, 2238,
- 2251, 2264, 2420, 2433, 1311, 1520, 1716, 1898,
- 1899, 2094, 2276, 2445, 1312, 1325, 1521, 1717,
- 1900, 1913, 2095, 2277, 2446, 2459, 1287, 1300,
- 1313, 1326, 1483, 1496, 1509, 1522, 1679, 1692,
- 1705, 1718, 1861, 1875, 1888, 1901, 1914, 2057,
- 2070, 2083, 2096, 2239, 2252, 2265, 2278, 2434,
- 2447, 1338, 1534, 1730, 1912, 2108, 2290, 1339,
- 1535, 1731, 1927, 2109, 2291, 2460, 1314, 1327,
- 1497, 1510, 1523, 1536, 1693, 1706, 1719, 1732,
- 1902, 1915, 1928, 2071, 2084, 2097, 2110, 2253,
- 2266, 2279, 2292, 2448, 2461, 2405, 2444, 2458,
- 2614, 2627, 2406, 2615, 2628, 2407, 2421, 2603,
- 2616, 2629, 2642, 2472, 2641, 2473, 2655, 2435,
- 2474, 2630, 2643, 1926, 2122, 2304, 2486, 2668,
- 2123, 2305, 2487, 2656, 1889, 2098, 2111, 2124,
- 2267, 2280, 2293, 2306, 2449, 2462, 2475, 2488,
- 2644, 2657, 2601, 2640, 2654, 2602, 2617, 2669,
- 2631, 2670, 2318, 2500, 2682, 2319, 2501, 2683,
- 2085, 2294, 2307, 2320, 2463, 2476, 2489, 2502,
- 2645, 2658, 2671, 2684, 1287, 1300, 1469, 1482,
- 1483, 1495, 1496, 1509, 1651, 1664, 1665, 1677,
- 1678, 1679, 1691, 1692, 1705, 1833, 1846, 1847,
- 1860, 1861, 1873, 1874, 1875, 1887, 1888, 2029,
- 2042, 2043, 2055, 2056, 2057, 2069, 2070, 2083,
- 2225, 2238, 2239, 2251, 2252, 2265, 2421, 2434,
- 1301, 1314, 1497, 1510, 1523, 1693, 1706, 1719,
- 1889, 1901, 1902, 2071, 2084, 2097, 2253, 2266,
- 2279, 2435, 2448, 1315, 1328, 1341, 1511, 1524,
- 1537, 1707, 1720, 1733, 1903, 1915, 1916, 2085,
- 2098, 2111, 2267, 2280, 2293, 2449, 2462, 2447,
- 2461, 2617, 2630, 2475, 2631, 2644, 1929, 2099,
- 2112, 2125, 2281, 2294, 2307, 2463, 2476, 2489,
- 2645, 2658, 2671, 2643, 2657, 2295, 2308, 2321,
- 2477, 2490, 2503, 2659, 2672, 2685, 1317, 1330,
- 1486, 1499, 1500, 1512, 1513, 1526, 1668, 1681,
- 1682, 1694, 1695, 1696, 1708, 1709, 1722, 1863,
- 1864, 1876, 1877, 1878, 1890, 1891, 1904, 1905,
- 1918, 2046, 2059, 2060, 2072, 2073, 2074, 2086,
- 2087, 2100, 2242, 2255, 2256, 2268, 2269, 2282,
- 2451, 2464, 1318, 1331, 1487, 1501, 1514, 1527,
- 1540, 1669, 1683, 1697, 1710, 1723, 1736, 1851,
- 1865, 1879, 1892, 1906, 1919, 2047, 2061, 2075,
- 2088, 2101, 2114, 2243, 2257, 2270, 2283, 2296,
- 2452, 2465, 1306, 1319, 1332, 1345, 1488, 1502,
- 1515, 1528, 1541, 1670, 1684, 1698, 1711, 1724,
- 1737, 1866, 1880, 1893, 1894, 1907, 1920, 1933,
- 2048, 2062, 2076, 2089, 2102, 2115, 2244, 2258,
- 2271, 2284, 2297, 2453, 2466, 1344, 1932, 2478,
- 1554, 1750, 2128, 2310, 2479, 1333, 1346, 1516,
- 1529, 1542, 1555, 1712, 1725, 1738, 1751, 1921,
- 1934, 2090, 2103, 2116, 2129, 2272, 2285, 2298,
- 2311, 2467, 2480, 1358, 1946, 2492, 1359, 1947,
- 2142, 2324, 2493, 1347, 1360, 1530, 1543, 1556,
- 1726, 1739, 1752, 1908, 1922, 1935, 1948, 2104,
- 2117, 2130, 2143, 2286, 2299, 2312, 2325, 2481,
- 2494, 2438, 2647, 2660, 2439, 2635, 2648, 2661,
- 2674, 2440, 2454, 2649, 2662, 2506, 2675, 2468,
- 2507, 2663, 2676, 2688, 2338, 2520, 2689, 2118,
- 2131, 2144, 2300, 2313, 2326, 2339, 2482, 2495,
- 2508, 2521, 2664, 2677, 2690, 2634, 2636, 2650,
- 2702, 2703, 2534, 2716, 2327, 2340, 2496, 2509,
- 2522, 2535, 2678, 2691, 2704, 2717, 1320, 1333,
- 1489, 1502, 1503, 1515, 1516, 1528, 1529, 1542,
- 1671, 1684, 1685, 1697, 1698, 1699, 1710, 1711,
- 1712, 1724, 1725, 1738, 1866, 1867, 1879, 1880,
- 1881, 1893, 1894, 1906, 1907, 1908, 1920, 1921,
- 2049, 2062, 2063, 2075, 2076, 2077, 2088, 2089,
- 2090, 2102, 2103, 2116, 2245, 2258, 2259, 2271,
- 2272, 2284, 2285, 2298, 2454, 2467, 1321, 1334,
- 1490, 1504, 1517, 1530, 1543, 1672, 1686, 1700,
- 1713, 1726, 1739, 1854, 1868, 1882, 1895, 1909,
- 1922, 2050, 2064, 2078, 2091, 2104, 2117, 2246,
- 2260, 2273, 2286, 2299, 2455, 2468, 1322, 1335,
- 1491, 1505, 1518, 1531, 1544, 1673, 1687, 1701,
- 1714, 1727, 1740, 1869, 1883, 1896, 1910, 1923,
- 2051, 2065, 2079, 2092, 2105, 2118, 2247, 2261,
- 2274, 2287, 2300, 2456, 2469, 1347, 1556, 1752,
- 1934, 1935, 1948, 2130, 2312, 2481, 1348, 1557,
- 1753, 1936, 2131, 2313, 2482, 1336, 1349, 1519,
- 1532, 1545, 1558, 1715, 1728, 1741, 1754, 1897,
- 1911, 1924, 1937, 1950, 2093, 2106, 2119, 2132,
- 2275, 2288, 2301, 2314, 2457, 2470, 2483, 2496,
- 1361, 1949, 2144, 2326, 2495, 1362, 2145, 2327,
- 2509, 1350, 1363, 1533, 1546, 1559, 1729, 1742,
- 1755, 1938, 1951, 2107, 2120, 2133, 2146, 2289,
- 2302, 2315, 2328, 2484, 2497, 2441, 2480, 2494,
- 2650, 2663, 2442, 2638, 2651, 2664, 2677, 2443,
- 2652, 2665, 2508, 2678, 2471, 2510, 2666, 2679,
- 2340, 2522, 2691, 2341, 2523, 2692, 1925, 2134,
- 2147, 2303, 2316, 2329, 2342, 2485, 2498, 2511,
- 2524, 2680, 2693, 2637, 2676, 2690, 2639, 2653,
- 2704, 2705, 2667, 2706, 2536, 2718, 2537, 2719,
- 2121, 2330, 2343, 2499, 2512, 2525, 2538, 2681,
- 2694, 2707, 2720, 1323, 1336, 1492, 1505, 1506,
- 1518, 1519, 1531, 1532, 1545, 1674, 1687, 1688,
- 1700, 1701, 1702, 1713, 1714, 1715, 1727, 1728,
- 1741, 1869, 1870, 1882, 1883, 1884, 1896, 1897,
- 1909, 1910, 1911, 1923, 1924, 2052, 2065, 2066,
- 2078, 2079, 2080, 2091, 2092, 2093, 2105, 2106,
- 2119, 2248, 2261, 2262, 2274, 2275, 2287, 2288,
- 2301, 2457, 2470, 1324, 1337, 1493, 1507, 1520,
- 1533, 1546, 1675, 1689, 1703, 1716, 1729, 1742,
- 1871, 1885, 1898, 1912, 1925, 2053, 2067, 2081,
- 2094, 2107, 2120, 2249, 2263, 2276, 2289, 2302,
- 2458, 2471, 1312, 1325, 1338, 1351, 1494, 1508,
- 1521, 1534, 1547, 1676, 1690, 1704, 1717, 1730,
- 1743, 1858, 1872, 1886, 1899, 1900, 1913, 1926,
- 1939, 2054, 2068, 2082, 2095, 2108, 2121, 2250,
- 2264, 2277, 2290, 2303, 2446, 2459, 2472, 2485,
- 1350, 1559, 1755, 1937, 1938, 2133, 2315, 2484,
- 1364, 1560, 1756, 1952, 2134, 2316, 2498, 1326,
- 1339, 1352, 1365, 1522, 1535, 1548, 1561, 1718,
- 1731, 1744, 1757, 1914, 1927, 1940, 1953, 2096,
- 2109, 2122, 2135, 2278, 2291, 2304, 2317, 2473,
- 2486, 1951, 2147, 2329, 2148, 2330, 2499, 1353,
- 1366, 1536, 1549, 1562, 1732, 1745, 1758, 1928,
- 1941, 1954, 2110, 2123, 2136, 2149, 2292, 2305,
- 2318, 2331, 2487, 2500, 2444, 2483, 2497, 2653,
- 2666, 2445, 2654, 2667, 2460, 2642, 2655, 2668,
- 2681, 2511, 2680, 2512, 2694, 2474, 2513, 2669,
- 2682, 2343, 2525, 2707, 2344, 2526, 2695, 2124,
- 2137, 2150, 2306, 2319, 2332, 2345, 2488, 2501,
- 2514, 2527, 2683, 2696, 2640, 2679, 2693, 2641,
- 2656, 2708, 2670, 2709, 2539, 2721, 2540, 2722,
- 2320, 2333, 2346, 2502, 2515, 2528, 2541, 2684,
- 2697, 2710, 2723, 1326, 1339, 1495, 1508, 1509,
- 1521, 1522, 1534, 1535, 1548, 1677, 1690, 1691,
- 1703, 1704, 1705, 1716, 1717, 1718, 1730, 1731,
- 1744, 1872, 1873, 1885, 1886, 1887, 1899, 1900,
- 1912, 1913, 1914, 1926, 1927, 2055, 2068, 2069,
- 2081, 2082, 2083, 2094, 2095, 2096, 2108, 2109,
- 2122, 2251, 2264, 2265, 2277, 2278, 2290, 2291,
- 2304, 2460, 2473, 1327, 1340, 1496, 1510, 1523,
- 1536, 1549, 1678, 1692, 1706, 1719, 1732, 1745,
- 1860, 1874, 1888, 1901, 1915, 1928, 2056, 2070,
- 2084, 2097, 2110, 2123, 2252, 2266, 2279, 2292,
- 2305, 2461, 2474, 1315, 1328, 1341, 1354, 1497,
- 1511, 1524, 1537, 1550, 1679, 1693, 1707, 1720,
- 1733, 1746, 1861, 1875, 1889, 1902, 1903, 1916,
- 1929, 2057, 2071, 2085, 2098, 2111, 2124, 2253,
- 2267, 2280, 2293, 2306, 2449, 2462, 2475, 1353,
- 1562, 1758, 1940, 1941, 2136, 2318, 2487, 1367,
- 1563, 1759, 1942, 2137, 2319, 2488, 1329, 1342,
- 1355, 1368, 1525, 1538, 1551, 1564, 1721, 1734,
- 1747, 1760, 1917, 1930, 1943, 1956, 2099, 2112,
- 2125, 2138, 2281, 2294, 2307, 2320, 2476, 2489,
- 1954, 1955, 2150, 2332, 2501, 2151, 2333, 2502,
- 1356, 1369, 1539, 1552, 1565, 1735, 1748, 1761,
- 1931, 1944, 1957, 2113, 2126, 2139, 2152, 2295,
- 2308, 2321, 2334, 2490, 2503, 2447, 2486, 2500,
- 2656, 2669, 2448, 2657, 2670, 2463, 2645, 2658,
- 2671, 2684, 2514, 2683, 2515, 2697, 2477, 2516,
- 2672, 2685, 2346, 2528, 2347, 2529, 2698, 2127,
- 2140, 2153, 2309, 2322, 2335, 2348, 2491, 2504,
- 2517, 2530, 2686, 2699, 2643, 2682, 2696, 2644,
- 2659, 2710, 2711, 2673, 2712, 2542, 2724, 2543,
- 2725, 2323, 2336, 2349, 2505, 2518, 2531, 2544,
- 2687, 2700, 2713, 2726, 1329, 1342, 1511, 1524,
- 1525, 1537, 1538, 1551, 1693, 1706, 1707, 1719,
- 1720, 1721, 1733, 1734, 1747, 1875, 1888, 1889,
- 1902, 1903, 1915, 1916, 1917, 1929, 1930, 2071,
- 2084, 2085, 2097, 2098, 2099, 2111, 2112, 2125,
- 2267, 2280, 2281, 2293, 2294, 2307, 2463, 2476,
- 1343, 1356, 1539, 1552, 1565, 1735, 1748, 1761,
- 1931, 1943, 1944, 2113, 2126, 2139, 2295, 2308,
- 2321, 2477, 2490, 1357, 1370, 1553, 1566, 1749,
- 1762, 1945, 1957, 1958, 2127, 2140, 2153, 2309,
- 2322, 2335, 2491, 2504, 2489, 2503, 2659, 2672,
- 2517, 2673, 2686, 2141, 2154, 2323, 2336, 2349,
- 2505, 2518, 2531, 2687, 2700, 2685, 2699, 2713,
- 2337, 2350, 2519, 2532, 2545, 2701, 2714, 2727,
- 1359, 1528, 1541, 1542, 1554, 1555, 1710, 1723,
- 1724, 1736, 1737, 1738, 1750, 1751, 1905, 1906,
- 1918, 1919, 1920, 1932, 1933, 1946, 1947, 2088,
- 2101, 2102, 2114, 2115, 2116, 2128, 2129, 2142,
- 2284, 2297, 2298, 2310, 2311, 2324, 2493, 2506,
- 1360, 1529, 1543, 1556, 1711, 1725, 1739, 1752,
- 1907, 1921, 1934, 1948, 2089, 2103, 2117, 2130,
- 2143, 2285, 2299, 2312, 2325, 2338, 2494, 2507,
- 1361, 1530, 1544, 1557, 1712, 1726, 1740, 1753,
- 1908, 1922, 1935, 1949, 2090, 2104, 2118, 2131,
- 2144, 2286, 2300, 2313, 2326, 2339, 2495, 2508,
- 2480, 2520, 2689, 2702, 2481, 2521, 2534, 2690,
- 2703, 1936, 2145, 2314, 2327, 2340, 2482, 2496,
- 2509, 2522, 2535, 2691, 2704, 2676, 2716, 2677,
- 2717, 2730, 2132, 2341, 2510, 2523, 2536, 2678,
- 2692, 2705, 2718, 2731, 1362, 1531, 1544, 1545,
- 1557, 1558, 1713, 1726, 1727, 1739, 1740, 1741,
- 1752, 1753, 1754, 1908, 1909, 1921, 1922, 1923,
- 1935, 1936, 1948, 1949, 1950, 2091, 2104, 2105,
- 2117, 2118, 2119, 2130, 2131, 2132, 2144, 2145,
- 2287, 2300, 2301, 2313, 2314, 2326, 2327, 2340,
- 2496, 2509, 1363, 1532, 1546, 1559, 1714, 1728,
- 1742, 1755, 1910, 1924, 1937, 1951, 2092, 2106,
- 2120, 2133, 2146, 2288, 2302, 2315, 2328, 2341,
- 2497, 2510, 1351, 1364, 1533, 1547, 1560, 1715,
- 1729, 1743, 1756, 1897, 1911, 1925, 1938, 1939,
- 1952, 2093, 2107, 2121, 2134, 2147, 2289, 2303,
- 2316, 2329, 2342, 2485, 2498, 2511, 2524, 2483,
- 2522, 2523, 2536, 2692, 2705, 2484, 2537, 2693,
- 2706, 2135, 2148, 2317, 2330, 2343, 2499, 2512,
- 2525, 2538, 2681, 2694, 2707, 2720, 2679, 2718,
- 2719, 2732, 2680, 2733, 2331, 2344, 2513, 2526,
- 2539, 2695, 2708, 2721, 2734, 1365, 1534, 1547,
- 1548, 1560, 1561, 1716, 1729, 1730, 1742, 1743,
- 1744, 1755, 1756, 1757, 1911, 1912, 1924, 1925,
- 1926, 1938, 1939, 1951, 1952, 1953, 2094, 2107,
- 2108, 2120, 2121, 2122, 2133, 2134, 2135, 2147,
- 2148, 2290, 2303, 2304, 2316, 2317, 2329, 2330,
- 2343, 2499, 2512, 1366, 1535, 1549, 1562, 1717,
- 1731, 1745, 1758, 1913, 1927, 1940, 1954, 2095,
- 2109, 2123, 2136, 2149, 2291, 2305, 2318, 2331,
- 2344, 2500, 2513, 1354, 1367, 1536, 1550, 1563,
- 1718, 1732, 1746, 1759, 1900, 1914, 1928, 1941,
- 1942, 1955, 2096, 2110, 2124, 2137, 2150, 2292,
- 2306, 2319, 2332, 2345, 2488, 2501, 2514, 2527,
- 2486, 2525, 2526, 2539, 2695, 2708, 2487, 2540,
- 2696, 2709, 2138, 2151, 2320, 2333, 2346, 2502,
- 2515, 2528, 2541, 2684, 2697, 2710, 2723, 2682,
- 2721, 2722, 2735, 2683, 2736, 2334, 2347, 2516,
- 2529, 2542, 2698, 2711, 2724, 2737, 1368, 1537,
- 1550, 1551, 1563, 1564, 1719, 1732, 1733, 1745,
- 1746, 1747, 1758, 1759, 1760, 1914, 1915, 1927,
- 1928, 1929, 1941, 1942, 1954, 1955, 1956, 2097,
- 2110, 2111, 2123, 2124, 2125, 2136, 2137, 2138,
- 2150, 2151, 2293, 2306, 2307, 2319, 2320, 2332,
- 2333, 2346, 2502, 2515, 1369, 1538, 1552, 1565,
- 1720, 1734, 1748, 1761, 1902, 1916, 1930, 1943,
- 1957, 2098, 2112, 2126, 2139, 2152, 2294, 2308,
- 2321, 2334, 2347, 2503, 2516, 1357, 1370, 1539,
- 1553, 1566, 1721, 1735, 1749, 1762, 1903, 1917,
- 1931, 1944, 1945, 1958, 2099, 2113, 2127, 2140,
- 2153, 2295, 2309, 2322, 2335, 2348, 2491, 2504,
- 2517, 2489, 2528, 2529, 2542, 2698, 2711, 2490,
- 2530, 2543, 2699, 2712, 2141, 2154, 2323, 2336,
- 2349, 2505, 2518, 2531, 2544, 2687, 2700, 2713,
- 2726, 2685, 2724, 2725, 2738, 2686, 2739, 2337,
- 2350, 2519, 2532, 2545, 2701, 2714, 2727, 2740,
- 1371, 1553, 1566, 1567, 1735, 1748, 1749, 1761,
- 1762, 1763, 1917, 1930, 1931, 1944, 1945, 1957,
- 1958, 1959, 2113, 2126, 2127, 2139, 2140, 2141,
- 2153, 2154, 2309, 2322, 2323, 2335, 2336, 2349,
- 2505, 2518, 2155, 2337, 2350, 2519, 2531, 2532,
- 2545, 2701, 2714, 2351, 2533, 2546, 2715, 2727,
- 2728, 2741, 2099, 2112, 2125, 2281, 2294, 2295,
- 2307, 2308, 2321, 2463, 2476, 2477, 2490, 2491,
- 2503, 2504, 2517, 2659, 2672, 2673, 2685, 2686,
- 2687, 2699, 2700, 2713, 1779, 1792, 1961, 1962,
- 1974, 1975, 1988, 2156, 2157, 2158, 2170, 2171,
- 2184, 2352, 2353, 2366, 2367, 2380, 2548, 2549,
- 2562, 1780, 1793, 1963, 1976, 1989, 2002, 2159,
- 2172, 2185, 2198, 2354, 2368, 2381, 2550, 2563,
- 2576, 1768, 1781, 1794, 1807, 1964, 1977, 1990,
- 2003, 2160, 2173, 2186, 2199, 2355, 2356, 2369,
- 2382, 2395, 2551, 2564, 2577, 1806, 2394, 1820,
- 2016, 2212, 2408, 2590, 1795, 1808, 1978, 1991,
- 2004, 2017, 2174, 2187, 2200, 2213, 2383, 2396,
- 2552, 2565, 2578, 2591, 1821, 2030, 2226, 2409,
- 2604, 1809, 1822, 1992, 2005, 2018, 2031, 2188,
- 2201, 2214, 2227, 2370, 2397, 2410, 2566, 2579,
- 2592, 2605, 1782, 1795, 1964, 1965, 1977, 1978,
- 1990, 1991, 2004, 2159, 2160, 2161, 2172, 2173,
- 2174, 2186, 2187, 2200, 2355, 2356, 2368, 2369,
- 2370, 2382, 2383, 2550, 2551, 2552, 2564, 2565,
- 2578, 1783, 1796, 1966, 1979, 1992, 2005, 2162,
- 2175, 2188, 2201, 2357, 2371, 2384, 2553, 2566,
- 2579, 1771, 1784, 1797, 1810, 1967, 1980, 1993,
- 2006, 2163, 2176, 2189, 2202, 2358, 2359, 2372,
- 2385, 2398, 2554, 2567, 2580, 1809, 2018, 2214,
- 2396, 2397, 2592, 1823, 2019, 2215, 2411, 2593,
- 1798, 1811, 1981, 1994, 2007, 2020, 2177, 2190,
- 2203, 2216, 2386, 2399, 2555, 2568, 2581, 2594,
- 1836, 2032, 2228, 2410, 2424, 2606, 1824, 2033,
- 2229, 2412, 2607, 1812, 1825, 1995, 2008, 2021,
- 2034, 2191, 2204, 2217, 2230, 2373, 2400, 2413,
- 2569, 2582, 2595, 2608, 1785, 1798, 1967, 1968,
- 1980, 1981, 1993, 1994, 2007, 2162, 2163, 2164,
- 2175, 2176, 2177, 2189, 2190, 2203, 2358, 2359,
- 2371, 2372, 2373, 2385, 2386, 2553, 2554, 2555,
- 2567, 2568, 2581, 1786, 1799, 1969, 1982, 1995,
- 2008, 2165, 2178, 2191, 2204, 2360, 2374, 2387,
- 2556, 2569, 2582, 1774, 1787, 1800, 1813, 1970,
- 1983, 1996, 2009, 2166, 2179, 2192, 2205, 2361,
- 2362, 2375, 2388, 2401, 2557, 2570, 2583, 1812,
- 2021, 2217, 2399, 2400, 2595, 1826, 2022, 2218,
- 2414, 2596, 1801, 1814, 1984, 1997, 2010, 2023,
- 2180, 2193, 2206, 2219, 2376, 2389, 2402, 2558,
- 2571, 2584, 2597, 1839, 2035, 2231, 2413, 2427,
- 2609, 1827, 2036, 2232, 2415, 2610, 1815, 1828,
- 1998, 2011, 2024, 2037, 2194, 2207, 2220, 2233,
- 2390, 2403, 2416, 2572, 2585, 2598, 2611, 1788,
- 1801, 1970, 1971, 1983, 1984, 1996, 1997, 2010,
- 2165, 2166, 2167, 2178, 2179, 2180, 2192, 2193,
- 2206, 2361, 2362, 2374, 2375, 2376, 2388, 2389,
- 2556, 2557, 2558, 2570, 2571, 2584, 1776, 1789,
- 1802, 1815, 1972, 1985, 1998, 2011, 2168, 2181,
- 2194, 2207, 2363, 2377, 2390, 2559, 2572, 2585,
- 1777, 1790, 1803, 1816, 1973, 1986, 1999, 2012,
- 2169, 2182, 2195, 2208, 2364, 2365, 2378, 2391,
- 2404, 2560, 2573, 2586, 2024, 2220, 2402, 2403,
- 2598, 1829, 2025, 2221, 2417, 2599, 1804, 1817,
- 1987, 2000, 2013, 2026, 2183, 2196, 2209, 2222,
- 2379, 2392, 2405, 2418, 2561, 2574, 2587, 2600,
- 2038, 2234, 2416, 2612, 1830, 2039, 2235, 2431,
- 2613, 1818, 1831, 2001, 2014, 2027, 2040, 2197,
- 2210, 2223, 2236, 2393, 2406, 2419, 2432, 2575,
- 2588, 2601, 2614, 1821, 1834, 1990, 2003, 2004,
- 2016, 2017, 2030, 2172, 2185, 2186, 2198, 2199,
- 2200, 2212, 2213, 2226, 2367, 2368, 2380, 2381,
- 2382, 2394, 2395, 2408, 2409, 2422, 2550, 2563,
- 2564, 2576, 2577, 2578, 2590, 2591, 2604, 1822,
- 1835, 1991, 2005, 2018, 2031, 2044, 2173, 2187,
- 2201, 2214, 2227, 2240, 2355, 2369, 2383, 2396,
- 2410, 2423, 2551, 2565, 2579, 2592, 2605, 2618,
- 1810, 1823, 1836, 1849, 1992, 2006, 2019, 2032,
- 2045, 2174, 2188, 2202, 2215, 2228, 2241, 2356,
- 2370, 2384, 2397, 2398, 2411, 2424, 2437, 2552,
- 2566, 2580, 2593, 2606, 2619, 1848, 2436, 1862,
- 2058, 2254, 2450, 2632, 1837, 1850, 2020, 2033,
- 2046, 2059, 2216, 2229, 2242, 2255, 2425, 2438,
- 2594, 2607, 2620, 2633, 1863, 2072, 2268, 2451,
- 2646, 1838, 1851, 1864, 1877, 2034, 2047, 2060,
- 2073, 2230, 2243, 2256, 2269, 2412, 2439, 2452,
- 2608, 2621, 2634, 2647, 1824, 1837, 1993, 2006,
- 2007, 2019, 2020, 2032, 2033, 2046, 2175, 2188,
- 2189, 2201, 2202, 2203, 2214, 2215, 2216, 2228,
- 2229, 2242, 2370, 2371, 2383, 2384, 2385, 2397,
- 2398, 2410, 2411, 2412, 2424, 2425, 2553, 2566,
- 2567, 2579, 2580, 2581, 2592, 2593, 2594, 2606,
- 2607, 2620, 1825, 1838, 1994, 2008, 2021, 2034,
- 2047, 2176, 2190, 2204, 2217, 2230, 2243, 2358,
- 2372, 2386, 2399, 2413, 2426, 2554, 2568, 2582,
- 2595, 2608, 2621, 1813, 1826, 1839, 1852, 1995,
- 2009, 2022, 2035, 2048, 2177, 2191, 2205, 2218,
- 2231, 2244, 2359, 2373, 2387, 2400, 2401, 2414,
- 2427, 2440, 2555, 2569, 2583, 2596, 2609, 2622,
- 1851, 2060, 2256, 2438, 2439, 2452, 2634, 1865,
- 2061, 2257, 2453, 2635, 1840, 1853, 2023, 2036,
- 2049, 2062, 2219, 2232, 2245, 2258, 2428, 2441,
- 2597, 2610, 2623, 2636, 1878, 2074, 2270, 2466,
- 2648, 1866, 2075, 2271, 2454, 2649, 1841, 1854,
- 1867, 1880, 2037, 2050, 2063, 2076, 2233, 2246,
- 2259, 2272, 2415, 2442, 2455, 2611, 2624, 2637,
- 2650, 1827, 1840, 1996, 2009, 2010, 2022, 2023,
- 2035, 2036, 2049, 2178, 2191, 2192, 2204, 2205,
- 2206, 2217, 2218, 2219, 2231, 2232, 2245, 2373,
- 2374, 2386, 2387, 2388, 2400, 2401, 2413, 2414,
- 2415, 2427, 2428, 2556, 2569, 2570, 2582, 2583,
- 2584, 2595, 2596, 2597, 2609, 2610, 2623, 1828,
- 1841, 1997, 2011, 2024, 2037, 2050, 2179, 2193,
- 2207, 2220, 2233, 2246, 2361, 2375, 2389, 2402,
- 2416, 2429, 2557, 2571, 2585, 2598, 2611, 2624,
- 1816, 1829, 1842, 1855, 1998, 2012, 2025, 2038,
- 2051, 2180, 2194, 2208, 2221, 2234, 2247, 2362,
- 2376, 2390, 2403, 2404, 2417, 2430, 2443, 2558,
- 2572, 2586, 2599, 2612, 2625, 1854, 2063, 2259,
- 2441, 2442, 2455, 2637, 1868, 2064, 2260, 2456,
- 2638, 1843, 1856, 2026, 2039, 2052, 2065, 2222,
- 2235, 2248, 2261, 2418, 2431, 2444, 2600, 2613,
- 2626, 2639, 1881, 2077, 2273, 2469, 2651, 1869,
- 2078, 2274, 2457, 2652, 1844, 1857, 1870, 1883,
- 2040, 2053, 2066, 2079, 2236, 2249, 2262, 2275,
- 2432, 2445, 2458, 2614, 2627, 2640, 2653, 1830,
- 1843, 1999, 2012, 2013, 2025, 2026, 2038, 2039,
- 2052, 2181, 2194, 2195, 2207, 2208, 2209, 2220,
- 2221, 2222, 2234, 2235, 2248, 2376, 2377, 2389,
- 2390, 2391, 2403, 2404, 2416, 2417, 2418, 2430,
- 2431, 2559, 2572, 2573, 2585, 2586, 2587, 2598,
- 2599, 2600, 2612, 2613, 2626, 1831, 1844, 1857,
- 2000, 2014, 2027, 2040, 2053, 2182, 2196, 2210,
- 2223, 2236, 2249, 2364, 2378, 2392, 2405, 2419,
- 2432, 2560, 2574, 2588, 2601, 2614, 2627, 1819,
- 1832, 1845, 2001, 2015, 2028, 2041, 2054, 2183,
- 2197, 2211, 2224, 2237, 2250, 2365, 2379, 2393,
- 2406, 2420, 2433, 2561, 2575, 2589, 2602, 2615,
- 2628, 2066, 2262, 2444, 2445, 2640, 1858, 1871,
- 2067, 2263, 2446, 2641, 1833, 1846, 1859, 1872,
- 2029, 2042, 2055, 2068, 2225, 2238, 2251, 2264,
- 2407, 2421, 2434, 2447, 2460, 2603, 2616, 2629,
- 2642, 2080, 2276, 2458, 2459, 2654, 1885, 2081,
- 2277, 2473, 2655, 1860, 1873, 2043, 2056, 2069,
- 2082, 2239, 2252, 2265, 2278, 2448, 2461, 2617,
- 2630, 2643, 2656, 1833, 1846, 2015, 2028, 2029,
- 2041, 2042, 2055, 2197, 2210, 2211, 2223, 2224,
- 2225, 2237, 2238, 2251, 2379, 2392, 2393, 2406,
- 2407, 2419, 2420, 2421, 2433, 2434, 2575, 2588,
- 2589, 2601, 2602, 2603, 2615, 2616, 2629, 1847,
- 1860, 2043, 2056, 2069, 2239, 2252, 2265, 2435,
- 2447, 2448, 2617, 2630, 2643, 1861, 1874, 2057,
- 2070, 2083, 2253, 2266, 2279, 2449, 2461, 2462,
- 2631, 2644, 2657, 1863, 1876, 2032, 2045, 2046,
- 2058, 2059, 2072, 2214, 2227, 2228, 2240, 2241,
- 2242, 2254, 2255, 2268, 2409, 2410, 2422, 2423,
- 2424, 2436, 2437, 2450, 2451, 2464, 2592, 2605,
- 2606, 2618, 2619, 2620, 2632, 2633, 2646, 1864,
- 1877, 2033, 2047, 2060, 2073, 2086, 2215, 2229,
- 2243, 2256, 2269, 2282, 2397, 2411, 2425, 2438,
- 2452, 2465, 2593, 2607, 2621, 2634, 2647, 2660,
- 1852, 1865, 1878, 1891, 2034, 2048, 2061, 2074,
- 2087, 2216, 2230, 2244, 2257, 2270, 2283, 2412,
- 2426, 2439, 2440, 2453, 2466, 2479, 2594, 2608,
- 2622, 2635, 2648, 2661, 1890, 2478, 2100, 2296,
- 2674, 1879, 1892, 2062, 2075, 2088, 2101, 2258,
- 2271, 2284, 2297, 2467, 2480, 2636, 2649, 2662,
- 2675, 1904, 2492, 1905, 2114, 2310, 2493, 2688,
- 1880, 1893, 1906, 2076, 2089, 2102, 2115, 2272,
- 2285, 2298, 2311, 2454, 2481, 2494, 2507, 2650,
- 2663, 2676, 2689, 1866, 1879, 2035, 2048, 2049,
- 2061, 2062, 2074, 2075, 2088, 2217, 2230, 2231,
- 2243, 2244, 2245, 2256, 2257, 2258, 2270, 2271,
- 2284, 2412, 2413, 2425, 2426, 2427, 2439, 2440,
- 2452, 2453, 2454, 2466, 2467, 2595, 2608, 2609,
- 2621, 2622, 2623, 2634, 2635, 2636, 2648, 2649,
- 2662, 1867, 1880, 2036, 2050, 2063, 2076, 2089,
- 2218, 2232, 2246, 2259, 2272, 2285, 2400, 2414,
- 2428, 2441, 2455, 2468, 2596, 2610, 2624, 2637,
- 2650, 2663, 1855, 1868, 1881, 1894, 2037, 2051,
- 2064, 2077, 2090, 2219, 2233, 2247, 2260, 2273,
- 2286, 2415, 2429, 2442, 2443, 2456, 2469, 2482,
- 2597, 2611, 2625, 2638, 2651, 2664, 1893, 2102,
- 2298, 2480, 2481, 2494, 2676, 2103, 2299, 2677,
- 1882, 1895, 2065, 2078, 2091, 2104, 2261, 2274,
- 2287, 2300, 2470, 2483, 2639, 2652, 2665, 2678,
- 1907, 1920, 2116, 2312, 2495, 2508, 2690, 1908,
- 2117, 2313, 2496, 2691, 1883, 1896, 1909, 2079,
- 2092, 2105, 2118, 2275, 2288, 2301, 2314, 2457,
- 2484, 2497, 2510, 2653, 2666, 2679, 2692, 1869,
- 1882, 2038, 2051, 2052, 2064, 2065, 2077, 2078,
- 2091, 2220, 2233, 2234, 2246, 2247, 2248, 2259,
- 2260, 2261, 2273, 2274, 2287, 2415, 2416, 2428,
- 2429, 2430, 2442, 2443, 2455, 2456, 2457, 2469,
- 2470, 2598, 2611, 2612, 2624, 2625, 2626, 2637,
- 2638, 2639, 2651, 2652, 2665, 1870, 1883, 2039,
- 2053, 2066, 2079, 2092, 2221, 2235, 2249, 2262,
- 2275, 2288, 2403, 2417, 2431, 2444, 2458, 2471,
- 2599, 2613, 2627, 2640, 2653, 2666, 1858, 1871,
- 1884, 2040, 2054, 2067, 2080, 2093, 2222, 2236,
- 2250, 2263, 2276, 2289, 2404, 2418, 2432, 2445,
- 2459, 2472, 2600, 2614, 2628, 2641, 2654, 2667,
- 1896, 2105, 2301, 2483, 2484, 2497, 2679, 1897,
- 2106, 2302, 2485, 2680, 1872, 1885, 1898, 1911,
- 2068, 2081, 2094, 2107, 2264, 2277, 2290, 2303,
- 2446, 2460, 2473, 2486, 2499, 2642, 2655, 2668,
- 2681, 1910, 2119, 2315, 2498, 2693, 2120, 2316,
- 2694, 1899, 1912, 2082, 2095, 2108, 2121, 2278,
- 2291, 2304, 2317, 2487, 2500, 2656, 2669, 2682,
- 2695, 1872, 1885, 2041, 2054, 2055, 2067, 2068,
- 2080, 2081, 2094, 2223, 2236, 2237, 2249, 2250,
- 2251, 2262, 2263, 2264, 2276, 2277, 2290, 2418,
- 2419, 2431, 2432, 2433, 2445, 2446, 2458, 2459,
- 2460, 2472, 2473, 2601, 2614, 2615, 2627, 2628,
- 2629, 2640, 2641, 2642, 2654, 2655, 2668, 1873,
- 1886, 2042, 2056, 2069, 2082, 2095, 2224, 2238,
- 2252, 2265, 2278, 2291, 2406, 2420, 2434, 2447,
- 2461, 2474, 2602, 2616, 2630, 2643, 2656, 2669,
- 1874, 1887, 2043, 2057, 2070, 2083, 2096, 2225,
- 2239, 2253, 2266, 2279, 2292, 2421, 2435, 2448,
- 2462, 2475, 2603, 2617, 2631, 2644, 2657, 2670,
- 1899, 2108, 2304, 2486, 2487, 2682, 1900, 1913,
- 2109, 2305, 2488, 2501, 2683, 1875, 1888, 1901,
- 1914, 2071, 2084, 2097, 2110, 2267, 2280, 2293,
- 2306, 2449, 2463, 2476, 2489, 2502, 2645, 2658,
- 2671, 2684, 1926, 2122, 2318, 2500, 2696, 1927,
- 2123, 2319, 2515, 2697, 1902, 1915, 2085, 2098,
- 2111, 2124, 2281, 2294, 2307, 2320, 2490, 2503,
- 2516, 2659, 2672, 2685, 2698, 1875, 1888, 2057,
- 2070, 2071, 2083, 2084, 2097, 2239, 2252, 2253,
- 2265, 2266, 2267, 2279, 2280, 2293, 2421, 2434,
- 2435, 2448, 2449, 2461, 2462, 2463, 2475, 2476,
- 2617, 2630, 2631, 2643, 2644, 2645, 2657, 2658,
- 2671, 1889, 1902, 2085, 2098, 2111, 2281, 2294,
- 2307, 2477, 2489, 2490, 2659, 2672, 2685, 1903,
- 1916, 1929, 2099, 2112, 2125, 2295, 2308, 2321,
- 2491, 2503, 2504, 2673, 2686, 2699, 1905, 1918,
- 2074, 2087, 2088, 2100, 2101, 2114, 2256, 2269,
- 2270, 2282, 2283, 2284, 2296, 2297, 2310, 2451,
- 2452, 2464, 2465, 2466, 2478, 2479, 2492, 2493,
- 2506, 2634, 2647, 2648, 2660, 2661, 2662, 2674,
- 2675, 2688, 1906, 1919, 2075, 2089, 2102, 2115,
- 2128, 2257, 2271, 2285, 2298, 2311, 2324, 2439,
- 2453, 2467, 2480, 2494, 2507, 2635, 2649, 2663,
- 2676, 2689, 2702, 1894, 1907, 1920, 1933, 2076,
- 2090, 2103, 2116, 2129, 2258, 2272, 2286, 2299,
- 2312, 2325, 2454, 2468, 2481, 2482, 2495, 2508,
- 2521, 2636, 2650, 2664, 2677, 2690, 2703, 1932,
- 2520, 2142, 2338, 2716, 1921, 1934, 2104, 2117,
- 2130, 2143, 2300, 2313, 2326, 2339, 2509, 2522,
- 2678, 2691, 2704, 2717, 1946, 2534, 1947, 2535,
- 2730, 1935, 1948, 2118, 2131, 2144, 2314, 2327,
- 2340, 2496, 2510, 2523, 2536, 2692, 2705, 2718,
- 2731, 1908, 1921, 2077, 2090, 2091, 2103, 2104,
- 2116, 2117, 2130, 2259, 2272, 2273, 2285, 2286,
- 2287, 2298, 2299, 2300, 2312, 2313, 2326, 2454,
- 2455, 2467, 2468, 2469, 2481, 2482, 2494, 2495,
- 2496, 2508, 2509, 2637, 2650, 2651, 2663, 2664,
- 2665, 2676, 2677, 2678, 2690, 2691, 2704, 1909,
- 1922, 2078, 2092, 2105, 2118, 2131, 2260, 2274,
- 2288, 2301, 2314, 2327, 2442, 2456, 2470, 2483,
- 2497, 2510, 2638, 2652, 2666, 2679, 2692, 2705,
- 1910, 1923, 2079, 2093, 2106, 2119, 2132, 2261,
- 2275, 2289, 2302, 2315, 2328, 2457, 2471, 2484,
- 2498, 2511, 2639, 2653, 2667, 2680, 2693, 2706,
- 1935, 2144, 2340, 2522, 2523, 2536, 2718, 1936,
- 2145, 2341, 2524, 2719, 1911, 1924, 1937, 1950,
- 2107, 2120, 2133, 2146, 2303, 2316, 2329, 2342,
- 2485, 2499, 2512, 2525, 2538, 2681, 2694, 2707,
- 2720, 1949, 2537, 2732, 2733, 1938, 1951, 2121,
- 2134, 2147, 2317, 2330, 2343, 2526, 2539, 2695,
- 2708, 2721, 2734, 1911, 1924, 2080, 2093, 2094,
- 2106, 2107, 2119, 2120, 2133, 2262, 2275, 2276,
- 2288, 2289, 2290, 2301, 2302, 2303, 2315, 2316,
- 2329, 2457, 2458, 2470, 2471, 2472, 2484, 2485,
- 2497, 2498, 2499, 2511, 2512, 2640, 2653, 2654,
- 2666, 2667, 2668, 2679, 2680, 2681, 2693, 2694,
- 2707, 1912, 1925, 2081, 2095, 2108, 2121, 2134,
- 2263, 2277, 2291, 2304, 2317, 2330, 2459, 2473,
- 2486, 2500, 2513, 2641, 2655, 2669, 2682, 2695,
- 2708, 1900, 1913, 1926, 1939, 2082, 2096, 2109,
- 2122, 2135, 2264, 2278, 2292, 2305, 2318, 2331,
- 2446, 2460, 2474, 2487, 2488, 2501, 2514, 2527,
- 2642, 2656, 2670, 2683, 2696, 2709, 1938, 2147,
- 2343, 2525, 2526, 2721, 1952, 2148, 2344, 2540,
- 2722, 1914, 1927, 1940, 1953, 2110, 2123, 2136,
- 2149, 2306, 2319, 2332, 2345, 2502, 2515, 2528,
- 2541, 2684, 2697, 2710, 2723, 2539, 2735, 2736,
- 1941, 1954, 2124, 2137, 2150, 2320, 2333, 2346,
- 2516, 2529, 2542, 2698, 2711, 2724, 2737, 1914,
- 1927, 2083, 2096, 2097, 2109, 2110, 2122, 2123,
- 2136, 2265, 2278, 2279, 2291, 2292, 2293, 2304,
- 2305, 2306, 2318, 2319, 2332, 2460, 2461, 2473,
- 2474, 2475, 2487, 2488, 2500, 2501, 2502, 2514,
- 2515, 2643, 2656, 2657, 2669, 2670, 2671, 2682,
- 2683, 2684, 2696, 2697, 2710, 1915, 1928, 2084,
- 2098, 2111, 2124, 2137, 2266, 2280, 2294, 2307,
- 2320, 2333, 2448, 2462, 2476, 2489, 2503, 2516,
- 2644, 2658, 2672, 2685, 2698, 2711, 1903, 1916,
- 1929, 1942, 2085, 2099, 2112, 2125, 2138, 2267,
- 2281, 2295, 2308, 2321, 2334, 2449, 2463, 2477,
- 2490, 2491, 2504, 2517, 2645, 2659, 2673, 2686,
- 2699, 2712, 1941, 2150, 2346, 2528, 2529, 2724,
- 1955, 2151, 2347, 2530, 2725, 1917, 1930, 1943,
- 1956, 2113, 2126, 2139, 2152, 2309, 2322, 2335,
- 2348, 2505, 2518, 2531, 2544, 2687, 2700, 2713,
- 2726, 2542, 2543, 2738, 2739, 1944, 1957, 2127,
- 2140, 2153, 2323, 2336, 2349, 2519, 2532, 2545,
- 2701, 2714, 2727, 2740, 1947, 2116, 2129, 2130,
- 2142, 2143, 2298, 2311, 2312, 2324, 2325, 2326,
- 2338, 2339, 2493, 2494, 2506, 2507, 2508, 2520,
- 2521, 2534, 2535, 2676, 2689, 2690, 2702, 2703,
- 2704, 2716, 2717, 2730, 1948, 2117, 2131, 2144,
- 2299, 2313, 2327, 2340, 2495, 2509, 2522, 2536,
- 2677, 2691, 2705, 2718, 2731, 1949, 2118, 2132,
- 2145, 2300, 2314, 2328, 2341, 2496, 2510, 2523,
- 2537, 2678, 2692, 2706, 2719, 2732, 1950, 2119,
- 2132, 2133, 2145, 2146, 2301, 2314, 2315, 2327,
- 2328, 2329, 2340, 2341, 2342, 2496, 2497, 2509,
- 2510, 2511, 2523, 2524, 2536, 2537, 2538, 2679,
- 2692, 2693, 2705, 2706, 2707, 2718, 2719, 2720,
- 2732, 2733, 1951, 2120, 2134, 2147, 2302, 2316,
- 2330, 2343, 2498, 2512, 2525, 2539, 2680, 2694,
- 2708, 2721, 2734, 1939, 1952, 2121, 2135, 2148,
- 2303, 2317, 2331, 2344, 2485, 2499, 2513, 2526,
- 2527, 2540, 2681, 2695, 2709, 2722, 2735, 1953,
- 2122, 2135, 2136, 2148, 2149, 2304, 2317, 2318,
- 2330, 2331, 2332, 2343, 2344, 2345, 2499, 2500,
- 2512, 2513, 2514, 2526, 2527, 2539, 2540, 2541,
- 2682, 2695, 2696, 2708, 2709, 2710, 2721, 2722,
- 2723, 2735, 2736, 1954, 2123, 2137, 2150, 2305,
- 2319, 2333, 2346, 2501, 2515, 2528, 2542, 2683,
- 2697, 2711, 2724, 2737, 1942, 1955, 2124, 2138,
- 2151, 2306, 2320, 2334, 2347, 2488, 2502, 2516,
- 2529, 2530, 2543, 2684, 2698, 2712, 2725, 2738,
- 1956, 2125, 2138, 2139, 2151, 2152, 2307, 2320,
- 2321, 2333, 2334, 2335, 2346, 2347, 2348, 2502,
- 2503, 2515, 2516, 2517, 2529, 2530, 2542, 2543,
- 2544, 2685, 2698, 2699, 2711, 2712, 2713, 2724,
- 2725, 2726, 2738, 2739, 1957, 2126, 2140, 2153,
- 2308, 2322, 2336, 2349, 2490, 2504, 2518, 2531,
- 2545, 2686, 2700, 2714, 2727, 2740, 1945, 1958,
- 2127, 2141, 2154, 2309, 2323, 2337, 2350, 2491,
- 2505, 2519, 2532, 2533, 2546, 2687, 2701, 2715,
- 2728, 2741, 1959, 2141, 2154, 2155, 2323, 2336,
- 2337, 2349, 2350, 2351, 2505, 2518, 2519, 2532,
- 2533, 2545, 2546, 2547, 2701, 2714, 2715, 2727,
- 2728, 2729, 2741, 2742,
-};
-
-static long _vq_fitmap_lsp12_1[] = {
- 0, 109, 243, 378, 516, 583, 757, 957,
- 1160, 1364, 1449, 1625, 1826, 2028, 2230, 2315,
- 2487, 2683, 2878, 3074, 3157, 3258, 3371, 3484,
- 3597, 3639, 3810, 4017, 4226, 4438, 4537, 4789,
- 5078, 5369, 5655, 5773, 6025, 6313, 6599, 6888,
- 7007, 7249, 7521, 7794, 8067, 8181, 8311, 8457,
- 8602, 8749, 8801, 8975, 9184, 9394, 9604, 9703,
- 9962, 10258, 10554, 10839, 10958, 11212, 11502, 11790,
- 12079, 12198, 12439, 12711, 12986, 13261, 13375, 13505,
- 13652, 13797, 13945, 13997, 14161, 14361, 14562, 14764,
- 14860, 15097, 15370, 15643, 15911, 16023, 16258, 16529,
- 16797, 17068, 17182, 17406, 17659, 17915, 18172, 18280,
- 18404, 18541, 18678, 18816, 18892, 18994, 19116, 19239,
- 15643, 19363, 19500, 19657, 19815, 19971, 20035, 20171,
- 20327, 20481, 20637, 20702, 20833, 20979, 21127, 18816,
- 21276, 21342, 21415, 21488, 21562,
-};
-
-static long _vq_fitlength_lsp12_1[] = {
- 109, 134, 135, 138, 67, 174, 200, 203,
- 204, 85, 176, 201, 202, 202, 85, 172,
- 196, 195, 196, 83, 101, 113, 113, 113,
- 42, 171, 207, 209, 212, 99, 252, 289,
- 291, 286, 118, 252, 288, 286, 289, 119,
- 242, 272, 273, 273, 114, 130, 146, 145,
- 147, 52, 174, 209, 210, 210, 99, 259,
- 296, 296, 285, 119, 254, 290, 288, 289,
- 119, 241, 272, 275, 275, 114, 130, 147,
- 145, 148, 52, 164, 200, 201, 202, 96,
- 237, 273, 273, 268, 112, 235, 271, 268,
- 271, 114, 224, 253, 256, 257, 108, 124,
- 137, 137, 138, 76, 102, 122, 123, 124,
- 268, 137, 157, 158, 156, 64, 136, 156,
- 154, 156, 65, 131, 146, 148, 149, 76,
- 66, 73, 73, 74, 26,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp12_1 = {
- 0.202, 0.006, 13, 5,
- _vq_pigeonmap_lsp12_1,
- 21588,
- _vq_fitlist_lsp12_1,
- _vq_fitmap_lsp12_1,
- _vq_fitlength_lsp12_1
-};
-
-static static_codebook _vq_book_lsp12_1 = {
- 3, 2744,
- _vq_lengthlist_lsp12_1,
- 1, 1606015779, 1595446133, 4, 1,
- _vq_quantlist_lsp12_1,
- NULL,
- NULL,
- &_vq_auxp_lsp12_1,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp30_0.vqh b/lib/books/lsp30_0.vqh
deleted file mode 100644
index 872fb48931da3c9da2b317377dd478766487caa9..0000000000000000000000000000000000000000
--- a/lib/books/lsp30_0.vqh
+++ /dev/null
@@ -1,375 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_lsp30_0_VQH_
-#define _V_lsp30_0_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp30_0[] = {
- 0,
- 2,
- 4,
- 6,
- 8,
- 10,
- 12,
- 14,
- 16,
- 18,
- 20,
- 22,
- 24,
- 26,
- 28,
- 31,
- 35,
- 39,
- 43,
- 47,
- 51,
- 55,
- 63,
- 73,
- 83,
- 93,
-};
-
-static long _vq_lengthlist_lsp30_0[] = {
- 18,18,18,18,18,18,18,18,18,18,18,18,17,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,17,15,14,17,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 17,14,14,13,13,15,18,18,18,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,15,14,13,13,14,13,13,12,13,
- 16,18,16,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 17,13,12,12,13,15,15,14,12,13,16,15,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,16,17,13,12,13,14,14,
- 13,14,13,14,18,14,17,18,15,18,18,18,18,18,18,18,
- 18,18,18,17,13,11,11,13,15,14,12,12,12,13,13,14,
- 15,14,16,18,18,18,18,18,18,18,18,18,15,15,13,11,
- 11,11,12,12,11,11,12,11,12,13,14,14,13,18,18,18,
- 18,18,18,18,18,18,14,12,11,11,11,12,12,10,10,11,
- 11,10,11,11,13,15,13,18,18,18,18,18,18,18,17,16,
- 14,13,12,12,13,14,12,11,11,11,10,10,10,11,14,16,
- 13,18,18,18,18,18,17,17,16,15,16,15,12,13,13,14,
- 14,13,11,10, 9,10,11,11,13,13,12,18,18,18,18,18,
- 18,18,18,15,15,16,15,13,12,11,11,11,10, 9,10,11,
- 11,11,12,11,13,18,18,18,18,18,16,17,18,15,14,13,
- 12,11,10,11,10,10, 9, 9, 9,10,10,11,11,11,13,18,
- 18,18,18,18,17,18,15,16,13,12,10,11,10,10,10, 9,
- 8, 8, 7, 8, 9,10,12,12,13,18,17,18,18,18,18,17,
- 12,11,10,11,10, 9,10,10, 9, 8, 7, 6, 6, 7, 9,10,
- 11,11,13,16,18,18,18,18,18,16,13,12,12,11,10,10,
- 10, 8, 7, 6, 5, 4, 4, 6, 7, 9,10,11,12,17,18,18,
- 18,16,15,13,13,12,11,11,11,12, 9, 9, 8, 7, 5, 4,
- 3, 5, 7, 8, 9,10,13,16,18,17,16,14,12,12,11,12,
- 11,11,12,11,10, 9, 9, 8, 7, 5, 4, 5, 7, 8, 9,10,
- 14,18,18,18,15,14,12,12,11,10,10,11,11,12,11,11,
- 10, 9, 8, 6, 6, 6, 7, 9,10,11,14,17,18,18,15,14,
- 13,11,11,10,10,10,12,13,12,12,10,10, 9, 8, 7, 7,
- 7, 9,10,11,16,18,17,18,16,16,13,12,12,11,11,11,
- 13,13,12,12,12,11,10, 8, 7, 7, 8, 9,10,12,17,18,
- 14,17,16,15,14,11, 9,10,11,11,12,13,13,13,13,12,
- 12,10,10, 9, 9, 9,10,14,18,18,13,16,16,15,12,10,
- 10,10,11,12,11,11,10, 9, 8, 8, 8, 8, 8, 9,12,15,
- 16,17,17,18,16,18,17,17,18,16,17,15,14,13,12,11,
- 10,10,10, 9, 9,10,14,16,16,17,13,17,18,16,18,17,
- 18,18,18,18,18,18,17,15,14,13,12,12,13,14,17,17,
- 18,17,16,18,17,17,16,15,18,17,18,18,18,18,18,18,
- 17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,
- 16,18,18,18,
-};
-
-static long _vq_pigeonmap_lsp30_0[] = {
- 0, 0, 0, 0, 0, 0, 1, 1,
- 1, 1, 1, 1, 2, 2, 2, 2,
- 2, 2, 3, 3, 3, 3, 3, 3,
- 4, 4, 4, 4, 4, 4, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 8,
- 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8,
-};
-
-static long _vq_fitlist_lsp30_0[] = {
- 0, 1, 26, 27, 2, 28, 3, 52,
- 29, 53, 54, 79, 55, 78, 80, 105,
- 81, 106, 3, 4, 29, 5, 30, 6,
- 31, 55, 56, 32, 57, 81, 58, 83,
- 82, 107, 108, 84, 109, 6, 7, 32,
- 8, 33, 9, 34, 59, 35, 60, 58,
- 85, 61, 84, 86, 87, 9, 35, 10,
- 36, 11, 12, 37, 38, 63, 61, 62,
- 87, 64, 89, 88, 113, 114, 90, 115,
- 12, 13, 38, 14, 39, 40, 15, 64,
- 65, 66, 41, 91, 67, 92, 90, 116,
- 117, 93, 118, 15, 41, 67, 16, 42,
- 17, 68, 43, 69, 18, 44, 93, 94,
- 95, 120, 121, 70, 119, 18, 44, 70,
- 19, 45, 71, 20, 46, 21, 72, 96,
- 97, 98, 47, 122, 124, 73, 123, 99,
- 21, 47, 73, 99, 22, 125, 48, 74,
- 100, 126, 23, 49, 75, 101, 127, 24,
- 152, 153, 50, 151, 178, 179, 76, 24,
- 50, 76, 102, 128, 25, 154, 51, 77,
- 180, 103, 206, 129, 232, 155, 258, 181,
- 53, 78, 79, 104, 54, 105, 80, 55,
- 81, 106, 130, 131, 107, 132, 156, 157,
- 133, 158, 183, 159, 56, 81, 82, 107,
- 57, 83, 108, 58, 109, 84, 133, 134,
- 110, 135, 159, 160, 136, 161, 185, 162,
- 187, 59, 84, 85, 110, 60, 86, 111,
- 61, 87, 112, 137, 113, 138, 136, 163,
- 139, 164, 162, 189, 165, 62, 87, 113,
- 88, 63, 89, 114, 64, 90, 115, 139,
- 116, 141, 140, 165, 142, 167, 166, 191,
- 168, 193, 65, 90, 91, 116, 66, 117,
- 92, 118, 67, 93, 144, 142, 143, 119,
- 168, 170, 169, 145, 195, 196, 67, 93,
- 119, 42, 68, 145, 94, 120, 43, 69,
- 146, 95, 121, 44, 70, 147, 96, 122,
- 171, 172, 173, 148, 197, 198, 199, 70,
- 96, 122, 71, 148, 45, 97, 123, 46,
- 72, 149, 98, 124, 47, 73, 150, 99,
- 175, 176, 125, 174, 200, 201, 202, 151,
- 177, 73, 99, 125, 151, 22, 48, 177,
- 74, 100, 126, 152, 178, 23, 49, 204,
- 75, 101, 127, 153, 179, 24, 205, 50,
- 76, 102, 203, 230, 231, 128, 229, 256,
- 257, 154, 131, 156, 157, 182, 132, 183,
- 158, 133, 159, 184, 208, 209, 185, 210,
- 234, 235, 211, 236, 260, 237, 134, 159,
- 160, 185, 135, 186, 161, 136, 187, 162,
- 188, 213, 211, 212, 237, 238, 214, 239,
- 263, 264, 240, 265, 137, 162, 163, 188,
- 138, 164, 189, 139, 165, 190, 214, 215,
- 191, 216, 241, 217, 242, 240, 267, 243,
- 268, 140, 165, 191, 166, 141, 167, 192,
- 142, 168, 193, 217, 194, 218, 219, 243,
- 220, 245, 244, 246, 271, 143, 168, 194,
- 169, 144, 195, 170, 196, 145, 171, 222,
- 221, 197, 220, 246, 247, 248, 223, 272,
- 273, 274, 145, 171, 197, 120, 146, 223,
- 172, 198, 121, 147, 224, 173, 199, 148,
- 174, 225, 249, 250, 251, 200, 275, 277,
- 226, 276, 252, 148, 174, 200, 123, 149,
- 226, 175, 201, 124, 150, 227, 176, 202,
- 125, 151, 228, 177, 203, 252, 253, 254,
- 278, 279, 229, 280, 151, 177, 203, 229,
- 100, 126, 255, 152, 178, 204, 230, 256,
- 101, 127, 282, 75, 153, 179, 205, 231,
- 257, 102, 283, 76, 128, 154, 180, 281,
- 308, 309, 206, 307, 334, 335, 232, 102,
- 128, 154, 180, 206, 232, 258, 103, 129,
- 284, 77, 155, 181, 207, 310, 233, 336,
- 259, 209, 234, 235, 260, 210, 261, 236,
- 211, 237, 262, 287, 263, 286, 288, 313,
- 289, 314, 312, 338, 339, 315, 212, 237,
- 238, 263, 213, 239, 264, 214, 265, 240,
- 289, 266, 291, 290, 315, 316, 292, 317,
- 341, 342, 318, 343, 215, 240, 241, 266,
- 216, 242, 267, 217, 243, 268, 293, 269,
- 292, 294, 295, 318, 319, 320, 345, 321,
- 346, 218, 243, 269, 244, 219, 245, 270,
- 220, 246, 271, 295, 272, 297, 296, 321,
- 322, 298, 323, 347, 324, 349, 221, 246,
- 247, 272, 222, 273, 248, 274, 223, 249,
- 299, 275, 300, 298, 324, 325, 301, 326,
- 352, 350, 351, 223, 249, 275, 224, 301,
- 198, 250, 276, 199, 225, 302, 251, 277,
- 200, 226, 303, 252, 328, 329, 278, 327,
- 353, 354, 355, 304, 330, 226, 252, 278,
- 201, 227, 304, 253, 279, 228, 305, 202,
- 254, 280, 203, 229, 306, 255, 330, 332,
- 281, 331, 307, 356, 357, 358, 229, 255,
- 281, 307, 178, 204, 333, 230, 256, 282,
- 308, 334, 179, 205, 360, 153, 231, 257,
- 283, 309, 335, 180, 361, 154, 206, 232,
- 258, 359, 386, 387, 284, 385, 412, 413,
- 310, 180, 206, 232, 258, 284, 310, 336,
- 181, 207, 362, 155, 233, 259, 285, 388,
- 311, 414, 337, 363, 440, 389, 287, 312,
- 313, 338, 288, 314, 339, 289, 315, 340,
- 364, 365, 341, 366, 367, 390, 391, 392,
- 290, 315, 316, 341, 291, 317, 342, 292,
- 343, 318, 367, 368, 344, 369, 370, 393,
- 394, 395, 392, 293, 318, 344, 319, 294,
- 320, 345, 295, 321, 346, 371, 347, 372,
- 370, 373, 398, 395, 396, 397, 296, 321,
- 322, 347, 297, 323, 348, 298, 324, 349,
- 373, 350, 375, 374, 376, 399, 401, 398,
- 400, 299, 324, 325, 350, 300, 351, 326,
- 352, 301, 327, 376, 378, 377, 353, 402,
- 403, 379, 404, 401, 301, 327, 353, 276,
- 302, 379, 328, 354, 277, 303, 380, 329,
- 355, 278, 304, 381, 330, 356, 406, 407,
- 405, 382, 304, 330, 356, 305, 331, 357,
- 280, 306, 383, 332, 358, 281, 307, 384,
- 333, 382, 359, 408, 410, 385, 409, 307,
- 333, 359, 385, 256, 282, 308, 334, 360,
- 386, 257, 283, 412, 231, 309, 335, 361,
- 387, 258, 413, 232, 284, 310, 411, 336,
- 438, 439, 362, 437, 388, 365, 390, 340,
- 366, 391, 367, 392, 368, 393, 416, 417,
- 418, 394, 419, 442, 443, 444, 420, 445,
- 468, 469, 470, 446, 471, 368, 393, 369,
- 394, 370, 395, 371, 396, 418, 419, 420,
- 421, 397, 422, 444, 445, 446, 447, 423,
- 448, 470, 471, 472, 473, 449, 474, 371,
- 396, 372, 397, 347, 373, 398, 348, 374,
- 399, 421, 422, 423, 424, 400, 425, 447,
- 448, 449, 450, 426, 451, 473, 474, 475,
- 476, 452, 477, 374, 399, 375, 400, 376,
- 401, 377, 402, 424, 425, 426, 427, 403,
- 428, 450, 451, 452, 453, 429, 454, 476,
- 477, 478, 479, 455, 480, 377, 402, 378,
- 403, 404, 379, 405, 430, 427, 428, 429,
- 431, 456, 453, 454, 455, 457, 482, 479,
- 480, 481, 379, 404, 405, 354, 380, 406,
- 355, 381, 407, 356, 382, 431, 432, 408,
- 433, 430, 457, 434, 458, 459, 456, 460,
- 483, 484, 485, 482, 382, 408, 357, 383,
- 409, 358, 384, 410, 359, 385, 411, 434,
- 435, 436, 461, 437, 460, 462, 486, 463,
- 487, 488, 385, 411, 437, 334, 360, 386,
- 412, 438, 335, 361, 309, 387, 413, 439,
- 336, 310, 362, 388, 464, 465, 414, 463,
- 490, 491, 440, 489, 516, 517, 466, 515,
- 336, 362, 388, 414, 440, 337, 363, 311,
- 389, 415, 466, 441, 492, 467, 518, 493,
- 443, 468, 444, 469, 445, 470, 446, 471,
- 494, 495, 496, 472, 497, 520, 521, 522,
- 498, 523, 546, 547, 548, 524, 549, 446,
- 471, 447, 472, 448, 473, 449, 474, 496,
- 497, 498, 499, 475, 500, 522, 523, 524,
- 525, 501, 526, 548, 549, 550, 551, 527,
- 552, 449, 474, 450, 475, 451, 476, 452,
- 477, 499, 500, 501, 502, 478, 503, 525,
- 526, 527, 528, 504, 529, 551, 552, 553,
- 554, 530, 555, 452, 477, 453, 478, 454,
- 479, 455, 480, 502, 503, 504, 505, 481,
- 506, 528, 529, 530, 531, 507, 532, 554,
- 555, 556, 557, 533, 558, 455, 480, 456,
- 481, 482, 457, 483, 508, 505, 506, 507,
- 509, 534, 531, 532, 533, 535, 560, 557,
- 558, 559, 457, 482, 483, 458, 484, 459,
- 485, 460, 486, 511, 509, 510, 508, 536,
- 512, 535, 537, 534, 561, 538, 562, 563,
- 560, 460, 486, 461, 487, 462, 488, 463,
- 489, 512, 513, 514, 515, 540, 538, 539,
- 565, 541, 564, 566, 463, 489, 515, 438,
- 464, 490, 516, 439, 465, 491, 517, 440,
- 466, 542, 543, 492, 541, 568, 569, 518,
- 567, 544, 466, 492, 518, 441, 467, 493,
- 544, 519, 570, 545, 571, 521, 546, 522,
- 547, 523, 548, 524, 549, 550, 573, 572,
- 574, 575, 576, 598, 599, 600, 577, 601,
- 602, 624, 625, 626, 603, 524, 549, 525,
- 550, 526, 551, 527, 552, 553, 574, 575,
- 576, 577, 578, 579, 600, 602, 599, 601,
- 603, 580, 604, 605, 626, 628, 625, 627,
- 629, 606, 527, 552, 528, 553, 529, 554,
- 530, 555, 556, 577, 578, 579, 580, 581,
- 582, 603, 604, 605, 602, 606, 583, 607,
- 608, 629, 628, 630, 631, 632, 609, 555,
- 530, 531, 556, 532, 557, 533, 558, 559,
- 581, 582, 583, 580, 584, 585, 606, 607,
- 608, 605, 609, 586, 610, 611, 632, 633,
- 634, 631, 635, 612, 533, 558, 534, 559,
- 560, 535, 561, 583, 584, 585, 586, 587,
- 610, 611, 608, 609, 612, 613, 636, 637,
- 634, 635, 638, 535, 561, 536, 562, 537,
- 563, 538, 564, 586, 587, 588, 589, 590,
- 611, 612, 613, 614, 615, 616, 638, 639,
- 640, 637, 641, 538, 564, 539, 565, 540,
- 566, 541, 567, 589, 590, 591, 592, 593,
- 615, 616, 617, 618, 619, 641, 642, 643,
- 644, 541, 567, 516, 542, 568, 517, 543,
- 594, 569, 518, 544, 595, 593, 570, 592,
- 620, 621, 596, 619, 618, 622, 647, 646,
- 645, 644, 544, 570, 519, 545, 596, 571,
- 597, 622, 623, 648, 649, 599, 600, 624,
- 601, 625, 602, 626, 627, 628, 650, 651,
- 652, 629, 653, 603, 626, 627, 604, 628,
- 605, 629, 630, 631, 653, 654, 651, 652,
- 655, 632, 656, 606, 629, 630, 607, 631,
- 608, 632, 633, 634, 655, 657, 654, 656,
- 658, 635, 659, 609, 632, 633, 610, 634,
- 611, 635, 636, 637, 658, 657, 659, 660,
- 661, 638, 662, 612, 635, 636, 637, 613,
- 638, 639, 661, 662, 663, 660, 664, 638,
- 614, 639, 615, 640, 616, 641, 642, 663,
- 664, 665, 666, 667, 668, 641, 642, 617,
- 643, 618, 619, 644, 645, 667, 668, 669,
- 670, 671, 644, 645, 620, 646, 621, 647,
- 622, 648, 672, 673, 671, 670, 674, 622,
- 648, 623, 649, 674, 675,
-};
-
-static long _vq_fitmap_lsp30_0[] = {
- 0, 18, 37, 53, 72, 91, 109, 128,
- 151, 168, 188, 209, 229, 250, 270, 295,
- 321, 151, 354, 374, 396, 417, 437, 458,
- 483, 508, 543, 561, 582, 604, 625, 646,
- 667, 693, 718, 753, 774, 792, 811, 830,
- 849, 868, 890, 911, 753, 941, 965, 991,
- 1019, 1045, 1066, 1092, 1114, 1144, 1160, 1183,
- 1209, 1235, 1261, 1282, 1305, 1324, 1346, 1357,
- 1381, 1410, 1439, 1468, 1491, 1515, 1537, 1562,
- 1573, 1587, 1603, 1619, 1635, 1647, 1661, 1674,
- 1687,
-};
-
-static long _vq_fitlength_lsp30_0[] = {
- 18, 19, 16, 19, 19, 18, 19, 23,
- 17, 20, 21, 20, 21, 20, 25, 26,
- 33, 17, 20, 22, 21, 20, 21, 25,
- 25, 35, 18, 21, 22, 21, 21, 21,
- 26, 25, 35, 21, 18, 19, 19, 19,
- 19, 22, 21, 30, 21, 24, 26, 28,
- 26, 21, 26, 22, 30, 16, 23, 26,
- 26, 26, 21, 23, 19, 22, 11, 24,
- 29, 29, 29, 23, 24, 22, 25, 11,
- 14, 16, 16, 16, 12, 14, 13, 13,
- 6,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp30_0 = {
- 0.067, 0.001, 93, 9,
- _vq_pigeonmap_lsp30_0,
- 1693,
- _vq_fitlist_lsp30_0,
- _vq_fitmap_lsp30_0,
- _vq_fitlength_lsp30_0
-};
-
-static static_codebook _vq_book_lsp30_0 = {
- 2, 676,
- _vq_lengthlist_lsp30_0,
- 1, 1603348202, 1590714958, 7, 1,
- _vq_quantlist_lsp30_0,
- NULL,
- NULL,
- &_vq_auxp_lsp30_0,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp30_1.vqh b/lib/books/lsp30_1.vqh
deleted file mode 100644
index c8672e4c23cdf60d390e529bcf128096572a5446..0000000000000000000000000000000000000000
--- a/lib/books/lsp30_1.vqh
+++ /dev/null
@@ -1,1575 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_lsp30_1_VQH_
-#define _V_lsp30_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp30_1[] = {
- 0,
- 2,
- 4,
- 6,
- 8,
- 10,
- 12,
- 15,
- 19,
- 23,
- 27,
- 31,
- 35,
- 39,
-};
-
-static long _vq_lengthlist_lsp30_1[] = {
- 19,20,20,19,17,18,20,16,16,19,18,20,19,19,19,19,
- 18,18,18,18,18,17,17,19,19,19,19,19,19,19,19,19,
- 19,19,18,17,17,18,19,19,19,19,19,19,19,19,19,19,
- 17,16,14,19,19,19,19,19,19,19,19,19,19,19,18,13,
- 15,18,19,19,19,19,19,19,19,19,19,19,17,15,15,18,
- 19,19,19,19,19,19,19,19,19,19,17,18,17,18,19,19,
- 19,19,19,19,19,19,19,19,19,19,18,18,19,19,18,18,
- 19,19,19,19,19,19,19,19,18,18,17,16,15,17,19,19,
- 19,19,19,19,19,19,18,16,16,15,15,15,19,19,19,19,
- 19,19,19,18,18,17,16,15,14,16,19,19,19,19,19,19,
- 19,18,17,16,16,14,16,19,19,19,19,19,19,19,18,19,
- 14,15,15,16,19,19,19,18,18,19,18,18,18,15,16,16,
- 16,18,18,19,18,19,19,18,18,17,17,17,18,18,19,19,
- 19,19,19,19,19,17,18,19,18,17,17,19,19,19,19,19,
- 19,19,19,19,19,19,17,17,16,19,19,19,19,19,19,19,
- 19,19,19,19,18,17,16,19,18,19,19,19,19,19,19,19,
- 19,19,18,17,18,16,19,19,19,19,19,19,19,19,19,19,
- 17,17,18,17,19,18,19,18,19,19,19,19,19,19,16,18,
- 18,17,19,18,18,18,19,19,19,19,19,19,18,19,17,16,
- 18,17,16,16,19,19,19,19,19,19,18,15,15,17,16,14,
- 15,14,19,19,19,19,19,19,19,17,14,15,16,15,14,14,
- 19,19,19,19,19,19,19,16,15,15,15,14,14,16,19,19,
- 19,19,18,18,19,17,17,14,15,14,16,18,19,19,17,18,
- 17,17,17,16,13,14,15,15,19,18,17,16,16,17,17,16,
- 16,14,15,14,15,16,18,19,19,19,19,19,18,17,17,17,
- 18,19,19,19,19,19,19,19,19,19,18,17,18,17,17,19,
- 19,17,19,19,19,18,19,19,18,18,17,16,16,18,17,18,
- 17,19,19,19,19,19,19,19,19,16,17,17,17,19,16,18,
- 19,19,19,19,19,19,19,18,17,17,17,18,17,18,19,19,
- 19,19,19,18,19,17,17,16,17,17,17,17,19,19,19,19,
- 19,17,17,18,16,15,17,17,17,17,19,19,19,19,19,19,
- 17,17,15,15,16,16,15,15,19,19,19,19,19,19,19,16,
- 16,16,16,14,15,14,19,19,19,19,19,19,18,15,13,14,
- 15,14,14,15,19,19,19,19,19,17,18,16,15,15,14,14,
- 14,15,19,19,19,18,17,19,19,16,15,14,14,15,16,17,
- 18,16,16,16,16,16,18,15,14,13,15,15,16,19,16,17,
- 17,17,16,16,15,15,14,14,14,16,18,19,19,18,19,19,
- 19,17,17,19,18,19,19,18,19,19,18,19,19,19,19,18,
- 17,17,16,18,19,18,16,17,18,19,19,19,17,16,16,17,
- 16,17,18,17,15,17,19,19,19,19,19,18,17,19,17,16,
- 16,16,15,19,19,19,19,19,19,19,19,19,17,16,16,16,
- 18,16,19,19,19,19,18,18,19,18,16,15,15,17,17,16,
- 19,19,18,18,18,17,17,16,15,15,15,17,16,16,19,19,
- 19,19,19,19,17,15,15,12,15,15,15,14,19,19,19,19,
- 19,19,17,15,13,13,14,14,14,15,19,19,19,19,19,17,
- 15,13,13,14,13,14,15,16,19,19,18,19,18,17,16,15,
- 14,14,13,15,16,16,18,18,17,17,16,17,18,16,14,13,
- 13,16,17,17,15,16,17,17,17,16,16,15,14,13,16,17,
- 17,19,19,19,17,17,16,17,16,15,13,14,15,16,19,19,
- 19,19,19,19,18,17,17,19,18,17,19,16,15,17,18,19,
- 19,19,19,18,17,17,17,19,17,15,15,16,19,19,19,19,
- 19,17,17,17,17,19,16,15,17,17,19,18,19,19,17,16,
- 17,17,18,17,16,17,17,17,19,19,19,19,17,18,17,19,
- 17,14,16,16,18,16,19,19,19,19,19,19,16,17,15,14,
- 14,16,19,16,19,19,19,18,18,16,15,15,14,14,13,15,
- 16,15,19,19,19,18,18,17,15,14,13,12,13,14,13,14,
- 18,19,19,19,19,16,14,12,11,11,12,13,13,15,19,19,
- 18,18,17,15,14,12,12,12,12,13,16,18,19,18,17,16,
- 18,16,16,14,13,13,12,15,17,18,17,18,17,17,17,18,
- 16,14,14,12,14,17,18,19,18,17,17,17,17,17,16,15,
- 14,13,15,17,16,19,19,18,17,17,17,17,17,14,12,14,
- 14,17,19,19,18,19,19,19,18,19,19,17,18,18,17,14,
- 13,17,19,19,19,18,17,15,15,15,16,19,16,14,14,17,
- 18,18,18,18,16,15,14,16,16,17,16,15,15,17,19,18,
- 19,18,18,17,17,16,16,16,15,17,17,17,19,19,18,19,
- 17,19,16,16,16,15,15,17,17,16,19,19,19,18,17,17,
- 15,15,14,14,14,16,16,15,19,19,19,18,17,16,14,13,
- 13,13,14,14,14,14,19,18,18,17,16,14,12,11,11,11,
- 12,13,13,14,19,19,18,15,15,14,12,10,10,11,12,12,
- 13,17,19,19,17,15,14,14,12,11,10,11,11,13,16,18,
- 17,17,17,16,17,15,14,12,12,12,12,16,17,18,18,17,
- 16,16,16,16,15,14,13,12,15,17,19,19,17,16,16,16,
- 16,16,16,15,13,13,15,16,16,19,17,17,15,17,17,16,
- 17,14,13,14,15,18,19,19,14,17,18,18,19,19,18,17,
- 17,17,16,15,15,17,14,16,17,18,16,14,14,16,15,18,
- 17,15,14,18,16,16,17,16,14,16,12,15,15,17,16,15,
- 16,18,19,18,17,17,17,15,15,16,15,15,16,15,17,15,
- 17,18,18,16,16,15,15,15,14,14,14,14,15,14,19,19,
- 18,18,16,14,14,13,13,13,14,14,14,13,17,18,17,17,
- 16,14,12,11,10,11,13,13,13,13,17,17,17,15,13,12,
- 10, 9, 8,10,11,12,12,16,18,16,13,12,11,10, 9, 8,
- 7, 9,10,12,15,17,19,17,16,13,12,12,10, 9, 8,10,
- 11,14,16,17,16,16,16,16,14,14,13,11,11,11,12,15,
- 16,19,19,16,16,15,15,15,14,13,12,12,15,16,17,19,
- 17,16,15,15,15,15,15,14,12,14,15,17,19,19,17,16,
- 16,16,16,16,15,13,13,14,16,17,19,19,18,18,19,19,
- 16,16,15,15,14,14,16,17,17,18,19,16,15,15,16,15,
- 14,13,14,15,15,17,17,19,18,15,15,14,14,14,14,13,
- 14,14,15,16,16,16,17,18,15,13,13,14,14,14,13,14,
- 15,15,13,13,17,15,15,15,15,15,14,13,12,13,13,13,
- 12,13,15,16,16,16,16,15,13,11,11,11,12,11,12,14,
- 15,14,13,14,14,12,10, 9, 8, 9,10,10,12,16,14,12,
- 12,13,11,10, 8, 6, 5, 8, 9,11,13,17,16,15,13,12,
- 10, 9, 7, 4, 4, 7, 9,12,14,16,17,17,15,13,11,10,
- 9, 6, 6, 9,11,13,15,17,19,16,15,14,14,13,11,10,
- 9,11,12,14,16,18,17,15,14,14,14,13,13,12,11,12,
- 15,15,17,19,16,15,14,14,15,15,14,13,12,14,15,15,
- 19,19,16,15,16,15,15,15,14,13,12,14,16,18,18,18,
- 19,19,19,19,17,17,16,15,14,15,17,19,18,17,19,19,
- 18,18,17,18,16,13,14,15,17,16,16,15,18,19,19,17,
- 14,14,14,14,13,14,14,14,14,14,18,18,17,15,15,14,
- 14,13,12,12,13,12,12,13,18,16,14,14,14,14,13,12,
- 11,11,11,11,11,14,17,14,14,14,14,12,11,11,10,10,
- 10,10,12,16,15,15,14,14,13,11,10, 9, 7, 8, 9,10,
- 13,17,16,15,14,13,11,10, 8, 5, 4, 6, 8,11,15,17,
- 15,15,14,13,11, 9, 7, 4, 3, 6, 9,12,14,18,17,15,
- 15,13,12,10, 9, 6, 6, 8,10,12,16,17,16,15,14,14,
- 13,12,10, 9, 9,10,13,14,14,18,13,15,14,14,13,12,
- 11,12,11,13,13,12,15,19,16,15,13,14,13,14,14,13,
- 13,15,16,17,17,19,15,15,15,14,14,13,13,12,13,16,
- 16,17,19,17,19,19,19,19,17,18,18,18,17,17,18,17,
- 18,15,19,19,19,17,17,18,17,15,15,17,16,16,15,14,
- 19,19,18,17,17,16,16,14,14,14,14,14,12,13,19,17,
- 16,16,15,15,15,13,13,12,13,12,12,14,17,15,16,15,
- 15,13,13,12,11,11,11,11,12,16,18,16,15,14,14,13,
- 12,11,10,10,10,11,14,18,17,17,14,13,13,12,11,10,
- 8, 9, 9,11,15,19,18,17,14,13,12,11, 9, 7, 6, 7,
- 10,13,17,18,17,16,14,13,11,10, 9, 6, 6, 7,10,13,
- 16,19,18,17,15,14,12,11,10, 8, 7, 9,11,14,16,19,
- 14,15,16,14,14,12,11,10,10,10,12,13,15,18,15,15,
- 14,14,14,14,13,12,12,12,13,14,18,18,15,15,15,14,
- 15,15,14,13,14,15,14,18,19,19,15,15,14,14,14,12,
- 13,14,14,16,16,18,19,19,19,19,18,19,18,19,19,18,
- 18,19,19,19,17,15,19,19,17,19,18,19,18,17,16,18,
- 17,16,15,14,19,19,18,18,19,18,17,16,15,16,16,14,
- 13,15,19,18,19,18,18,18,16,13,14,14,14,13,14,17,
- 18,19,18,18,17,16,15,13,13,13,12,13,15,18,17,19,
- 18,18,15,14,14,12,12,12,12,13,18,19,18,19,17,15,
- 14,13,12,11,10,10,12,14,17,19,17,17,15,13,13,12,
- 11, 9, 8, 9,12,15,17,19,18,18,15,14,12,11,10, 8,
- 7, 8,11,14,17,19,18,16,15,14,13,12,11, 9, 8, 9,
- 10,13,17,19,15,16,16,15,14,13,12,10,10,10,11,13,
- 19,19,16,16,15,14,14,14,14,13,12,12,12,15,18,19,
- 15,15,14,15,16,16,14,14,13,13,15,17,19,19,17,15,
- 16,15,14,13,14,14,15,15,18,18,19,19,19,18,19,19,
- 19,19,19,18,17,19,19,19,19,17,19,18,19,19,19,19,
- 19,17,17,19,19,19,15,18,19,19,19,19,19,18,18,15,
- 17,17,18,18,15,19,18,19,19,19,19,19,18,14,15,16,
- 16,15,16,19,19,18,19,19,18,18,16,14,14,14,15,15,
- 16,19,19,18,19,17,17,16,15,13,12,13,15,16,17,19,
- 18,19,17,16,15,16,13,11,11,11,14,15,18,19,19,18,
- 16,16,15,13,12,10, 9, 9,13,14,17,19,19,16,15,15,
- 13,12,11, 9, 7, 8,11,13,17,19,17,16,16,15,14,13,
- 12, 9, 8, 8,10,13,18,19,16,16,16,15,15,14,13,11,
- 10, 9,11,14,18,19,16,15,15,15,16,15,14,13,11,11,
- 12,15,19,19,15,16,16,17,17,15,15,14,13,13,14,19,
- 19,19,19,17,17,16,14,14,14,14,15,15,18,19,19,19,
- 19,19,19,19,19,19,19,19,18,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,18,19,19,19,19,19,
- 19,19,19,17,18,19,19,19,19,19,19,19,19,19,19,19,
- 19,15,17,18,18,19,19,19,19,19,19,19,19,18,18,15,
- 14,16,17,18,19,19,19,19,19,18,18,18,16,15,14,15,
- 17,16,18,19,18,18,19,18,18,15,15,13,12,13,14,16,
- 18,19,19,19,18,18,15,14,13,11,10,10,13,15,18,19,
- 18,18,17,16,15,14,13,10, 9, 9,11,14,18,19,18,18,
- 18,17,15,14,13,10, 9, 9,11,14,17,19,17,17,16,17,
- 16,16,14,11, 9,10,12,14,19,19,15,16,17,18,17,16,
- 14,12,11,12,14,16,19,19,16,17,17,17,17,16,16,14,
- 14,15,16,18,19,19,18,16,16,15,16,14,15,14,15,16,
- 17,19,19,19,18,19,19,19,19,19,19,19,18,19,19,19,
- 19,19,19,19,19,19,19,19,17,18,18,19,19,19,19,19,
- 19,19,19,19,19,18,18,19,19,18,19,18,18,19,19,19,
- 19,19,19,19,18,19,18,18,19,19,19,19,19,19,19,19,
- 19,19,18,19,18,18,16,19,17,19,19,19,19,19,19,18,
- 18,16,16,16,17,19,19,19,19,19,19,19,18,16,16,15,
- 15,14,16,17,18,18,19,19,19,18,16,15,15,13,13,13,
- 14,17,19,19,19,18,19,18,16,15,15,12,11,12,14,17,
- 17,19,19,18,17,17,16,16,14,12,11,12,13,16,18,19,
- 18,16,17,18,16,15,15,13,12,13,13,16,19,19,16,15,
- 17,19,17,17,16,15,14,13,14,18,19,19,18,17,18,19,
- 19,18,16,15,16,15,16,19,18,19,19,18,17,16,15,15,
- 16,18,17,18,19,19,19,19,
-};
-
-static long _vq_pigeonmap_lsp30_1[] = {
- 0, 0, 0, 0, 0, 0, 1, 1,
- 1, 1, 1, 1, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 4, 4, 4, 4, 4,
-};
-
-static long _vq_fitlist_lsp30_1[] = {
- 0, 14, 196, 1, 15, 197, 2, 16,
- 198, 3, 210, 211, 17, 199, 212, 28,
- 29, 30, 224, 43, 225, 31, 213, 226,
- 42, 44, 238, 57, 239, 45, 58, 227,
- 240, 394, 392, 393, 407, 395, 406, 408,
- 409, 422, 420, 56, 421, 434, 253, 435,
- 241, 254, 423, 436, 590, 588, 589, 603,
- 591, 604, 602, 617, 605, 618, 616, 252,
- 630, 449, 631, 437, 450, 619, 632, 785,
- 786, 784, 798, 799, 787, 800, 813, 801,
- 814, 812, 448, 3, 17, 199, 4, 5,
- 18, 200, 6, 19, 201, 31, 213, 32,
- 214, 20, 33, 202, 215, 45, 227, 228,
- 34, 47, 216, 229, 46, 59, 241, 60,
- 242, 48, 230, 243, 395, 396, 397, 409,
- 410, 398, 411, 424, 412, 423, 425, 61,
- 255, 437, 438, 244, 426, 439, 591, 592,
- 593, 605, 606, 594, 607, 608, 619, 620,
- 256, 621, 257, 633, 634, 440, 622, 635,
- 787, 788, 789, 801, 790, 802, 803, 816,
- 804, 815, 451, 452, 817, 453, 6, 20,
- 202, 7, 216, 21, 203, 217, 399, 8,
- 35, 204, 22, 218, 9, 36, 205, 400,
- 34, 230, 231, 49, 232, 23, 48, 413,
- 50, 219, 244, 245, 63, 246, 428, 37,
- 62, 427, 64, 233, 398, 414, 412, 401,
- 426, 415, 440, 441, 259, 260, 442, 51,
- 595, 610, 609, 624, 258, 429, 594, 596,
- 608, 597, 622, 623, 611, 636, 455, 637,
- 456, 638, 247, 790, 791, 806, 818, 820,
- 454, 625, 807, 805, 792, 804, 793, 819,
- 832, 651, 833, 652, 834, 443, 9, 23,
- 205, 219, 401, 10, 37, 24, 206, 220,
- 11, 38, 207, 402, 25, 221, 12, 39,
- 208, 403, 233, 415, 234, 416, 235, 26,
- 53, 51, 52, 417, 222, 247, 248, 66,
- 249, 40, 67, 404, 65, 429, 430, 431,
- 236, 418, 261, 443, 444, 262, 445, 54,
- 263, 597, 598, 599, 611, 612, 613, 600,
- 625, 626, 627, 432, 614, 639, 457, 640,
- 458, 641, 459, 793, 794, 795, 807, 808,
- 809, 796, 823, 821, 822, 250, 628, 810,
- 835, 653, 836, 654, 655, 837, 12, 26,
- 208, 222, 13, 40, 209, 404, 27, 236,
- 54, 418, 223, 41, 250, 68, 237, 55,
- 405, 432, 419, 264, 446, 600, 628, 433,
- 251, 614, 601, 615, 460, 642, 796, 810,
- 797, 824, 629, 447, 811, 656, 838, 992,
- 1006, 993, 1020, 825, 643, 1007, 852, 1034,
- 1188, 1202, 1216, 1021, 839, 1189, 1203, 1230,
- 1048, 1217, 1035, 1398, 1412, 1244, 29, 42,
- 56, 225, 238, 43, 30, 57, 226, 239,
- 44, 31, 45, 58, 227, 240, 70, 252,
- 71, 253, 59, 72, 241, 254, 84, 266,
- 85, 267, 73, 86, 255, 268, 280, 281,
- 87, 269, 282, 421, 434, 422, 435, 423,
- 436, 448, 449, 437, 450, 462, 463, 451,
- 464, 476, 477, 283, 465, 478, 617, 630,
- 618, 631, 619, 632, 644, 645, 633, 646,
- 658, 647, 659, 660, 672, 673, 479, 661,
- 674, 813, 826, 814, 827, 815, 828, 840,
- 829, 841, 842, 843, 854, 855, 856, 32,
- 45, 46, 59, 228, 241, 33, 47, 60,
- 229, 242, 34, 61, 230, 243, 48, 73,
- 255, 256, 62, 244, 257, 74, 75, 269,
- 270, 76, 258, 271, 87, 88, 89, 283,
- 284, 90, 272, 285, 424, 437, 425, 426,
- 438, 439, 440, 451, 452, 453, 454, 465,
- 466, 467, 479, 480, 286, 468, 481, 620,
- 621, 622, 633, 634, 635, 636, 647, 648,
- 649, 650, 663, 661, 662, 675, 676, 482,
- 664, 677, 816, 829, 817, 818, 831, 830,
- 844, 832, 843, 845, 857, 846, 859, 858,
- 48, 62, 244, 35, 49, 217, 231, 258,
- 413, 63, 245, 36, 218, 259, 50, 232,
- 64, 246, 23, 37, 219, 260, 442, 51,
- 233, 76, 77, 428, 78, 247, 272, 427,
- 454, 273, 455, 274, 65, 429, 90, 91,
- 92, 456, 261, 443, 286, 287, 469, 288,
- 470, 79, 468, 275, 440, 441, 414, 415,
- 457, 482, 105, 483, 484, 93, 106, 609,
- 637, 638, 624, 651, 625, 650, 652, 665,
- 639, 104, 664, 666, 471, 623, 636, 610,
- 611, 653, 678, 301, 679, 680, 289, 302,
- 833, 834, 820, 847, 821, 846, 848, 861,
- 835, 300, 860, 862, 667, 805, 819, 832,
- 806, 807, 849, 874, 875, 497, 876, 485,
- 498, 37, 51, 233, 65, 247, 24, 38,
- 220, 261, 443, 52, 234, 66, 248, 39,
- 221, 262, 53, 80, 235, 417, 67, 249,
- 40, 222, 263, 54, 81, 236, 418, 79,
- 444, 445, 250, 275, 93, 430, 276, 94,
- 431, 277, 68, 457, 458, 95, 264, 446,
- 289, 290, 291, 473, 82, 471, 472, 109,
- 278, 460, 429, 416, 432, 459, 107, 485,
- 486, 108, 487, 612, 613, 639, 640, 628,
- 626, 627, 655, 653, 654, 642, 669, 667,
- 304, 96, 474, 625, 641, 614, 668, 656,
- 303, 681, 682, 305, 683, 292, 808, 809,
- 837, 835, 836, 824, 822, 850, 851, 849,
- 838, 864, 865, 863, 500, 670, 821, 823,
- 810, 852, 499, 877, 878, 879, 488, 501,
- 40, 54, 236, 68, 250, 27, 41, 223,
- 264, 446, 55, 237, 82, 251, 433, 69,
- 278, 460, 96, 265, 447, 83, 292, 474,
- 279, 97, 432, 419, 461, 488, 110, 642,
- 629, 656, 643, 670, 475, 293, 628, 615,
- 657, 684, 306, 838, 825, 852, 839, 866,
- 671, 489, 824, 811, 853, 880, 502, 71,
- 84, 85, 267, 280, 98, 72, 86, 268,
- 281, 73, 269, 282, 87, 100, 476, 99,
- 294, 477, 283, 295, 465, 478, 74, 88,
- 101, 270, 296, 479, 490, 112, 491, 113,
- 297, 492, 114, 308, 309, 102, 310, 493,
- 115, 298, 504, 126, 505, 127, 311, 506,
- 322, 323, 128, 116, 324, 507, 463, 464,
- 284, 129, 312, 672, 673, 661, 674, 466,
- 675, 686, 687, 688, 689, 494, 700, 701,
- 702, 518, 519, 520, 703, 659, 660, 480,
- 325, 508, 855, 868, 869, 857, 870, 662,
- 871, 882, 883, 884, 885, 690, 896, 897,
- 898, 714, 715, 716, 899, 856, 676, 521,
- 704, 74, 87, 270, 283, 88, 101, 75,
- 271, 284, 89, 102, 76, 272, 285, 90,
- 100, 296, 466, 479, 297, 480, 103, 286,
- 298, 481, 104, 299, 482, 114, 493, 115,
- 494, 116, 300, 495, 310, 311, 312, 117,
- 313, 496, 118, 128, 507, 129, 508, 130,
- 314, 509, 131, 324, 325, 326, 327, 510,
- 467, 468, 132, 492, 675, 676, 677, 678,
- 689, 690, 691, 506, 692, 703, 704, 705,
- 520, 521, 522, 523, 706, 662, 663, 664,
- 328, 688, 871, 872, 873, 874, 885, 886,
- 887, 702, 888, 899, 900, 901, 716, 717,
- 718, 719, 902, 858, 859, 860, 524, 90,
- 286, 77, 91, 104, 259, 273, 287, 64,
- 78, 105, 260, 274, 456, 483, 92, 288,
- 65, 79, 106, 261, 275, 457, 484, 93,
- 103, 299, 482, 300, 301, 470, 302, 289,
- 471, 496, 497, 119, 120, 498, 107, 485,
- 117, 118, 315, 316, 303, 313, 314, 510,
- 511, 121, 499, 512, 133, 134, 317, 131,
- 132, 329, 330, 327, 328, 455, 469, 693,
- 513, 652, 679, 653, 680, 495, 678, 666,
- 667, 692, 694, 681, 509, 707, 695, 706,
- 708, 523, 524, 525, 526, 651, 665, 889,
- 890, 903, 709, 875, 848, 849, 876, 691,
- 874, 861, 862, 863, 888, 877, 705, 891,
- 902, 904, 719, 720, 721, 722, 847, 1085,
- 905, 79, 93, 275, 289, 66, 80, 107,
- 262, 276, 485, 94, 458, 290, 67, 81,
- 108, 263, 277, 459, 486, 95, 291, 68,
- 82, 109, 264, 278, 460, 487, 96, 303,
- 304, 305, 292, 474, 472, 121, 499, 500,
- 122, 501, 110, 123, 488, 317, 318, 319,
- 306, 124, 502, 515, 513, 135, 514, 136,
- 137, 320, 331, 332, 333, 471, 473, 696,
- 697, 709, 710, 516, 681, 654, 655, 682,
- 656, 683, 670, 695, 684, 698, 711, 527,
- 528, 529, 667, 668, 669, 892, 893, 905,
- 906, 712, 850, 877, 851, 878, 852, 879,
- 864, 866, 891, 880, 894, 907, 723, 724,
- 725, 863, 865, 1088, 1089, 1101, 1102, 908,
- 82, 96, 278, 292, 69, 83, 110, 265,
- 279, 461, 488, 97, 306, 293, 475, 111,
- 489, 124, 502, 320, 307, 503, 125, 516,
- 138, 321, 334, 517, 474, 699, 712, 139,
- 657, 684, 671, 685, 698, 530, 713, 670,
- 335, 853, 880, 881, 867, 894, 895, 908,
- 726, 909, 866, 531, 1049, 1076, 1077, 1063,
- 1090, 1091, 1104, 922, 1105, 1062, 727, 1245,
- 1272, 1273, 1286, 1287, 1300, 1118, 1301, 1258,
- 1259, 923, 1314, 1441, 1468, 1469, 1455, 1482,
- 1483, 1496, 1119, 1497, 113, 126, 309, 114,
- 127, 310, 322, 505, 115, 128, 311, 323,
- 506, 116, 129, 312, 324, 507, 518, 140,
- 519, 141, 325, 520, 336, 337, 142, 130,
- 338, 521, 143, 326, 532, 154, 533, 155,
- 339, 534, 350, 351, 156, 144, 352, 535,
- 157, 340, 546, 168, 547, 169, 353, 548,
- 170, 364, 365, 158, 366, 549, 171, 354,
- 701, 702, 508, 703, 714, 715, 716, 717,
- 522, 728, 729, 730, 731, 536, 742, 743,
- 744, 560, 561, 562, 745, 367, 550, 897,
- 898, 704, 899, 910, 911, 912, 913, 718,
- 924, 925, 926, 927, 732, 938, 939, 940,
- 756, 757, 758, 941, 563, 746, 116, 129,
- 312, 117, 130, 313, 325, 508, 118, 131,
- 314, 326, 509, 132, 327, 510, 142, 521,
- 143, 522, 144, 328, 523, 145, 338, 339,
- 340, 341, 524, 146, 156, 535, 157, 536,
- 158, 342, 537, 159, 352, 353, 354, 355,
- 538, 160, 170, 549, 171, 550, 172, 356,
- 551, 366, 367, 368, 173, 369, 552, 174,
- 704, 705, 706, 717, 718, 719, 534, 720,
- 731, 732, 733, 548, 734, 745, 746, 747,
- 562, 563, 564, 565, 748, 370, 900, 901,
- 902, 913, 914, 915, 730, 916, 927, 928,
- 929, 744, 930, 941, 942, 943, 758, 759,
- 760, 761, 944, 566, 132, 119, 315, 328,
- 133, 511, 120, 316, 329, 134, 512, 525,
- 121, 317, 330, 513, 524, 147, 526, 135,
- 148, 331, 145, 146, 343, 344, 341, 342,
- 527, 538, 539, 161, 540, 149, 162, 345,
- 159, 160, 357, 358, 355, 356, 552, 163,
- 541, 554, 174, 553, 175, 176, 359, 173,
- 371, 372, 369, 370, 722, 723, 735, 736,
- 749, 555, 707, 708, 709, 720, 721, 537,
- 734, 551, 737, 750, 748, 565, 566, 567,
- 568, 903, 918, 919, 931, 932, 945, 751,
- 904, 905, 916, 917, 733, 930, 747, 933,
- 944, 946, 761, 762, 763, 764, 1101, 1114,
- 1115, 1127, 1128, 1141, 947, 121, 135, 317,
- 513, 122, 318, 331, 514, 136, 123, 319,
- 332, 137, 515, 528, 124, 320, 333, 516,
- 527, 149, 150, 529, 138, 151, 334, 345,
- 346, 347, 541, 530, 163, 542, 164, 543,
- 152, 165, 348, 359, 360, 361, 544, 555,
- 177, 556, 178, 557, 166, 179, 362, 373,
- 374, 375, 710, 712, 723, 725, 726, 738,
- 739, 740, 751, 752, 753, 558, 709, 711,
- 724, 737, 569, 570, 571, 906, 919, 922,
- 935, 936, 948, 949, 754, 905, 907, 908,
- 920, 921, 933, 934, 947, 765, 766, 767,
- 1102, 1115, 1118, 1131, 1132, 1144, 1145, 950,
- 124, 138, 320, 516, 125, 321, 334, 517,
- 139, 530, 152, 335, 348, 531, 153, 544,
- 166, 349, 362, 545, 167, 558, 180, 363,
- 376, 559, 726, 727, 740, 181, 712, 713,
- 741, 754, 572, 755, 922, 923, 936, 937,
- 950, 377, 908, 909, 768, 951, 1105, 1118,
- 1119, 1132, 573, 1104, 1133, 1146, 964, 1147,
- 1301, 1314, 1315, 1328, 769, 1300, 1329, 1342,
- 1160, 1343, 965, 1497, 1510, 1511, 1524, 1356,
- 1496, 1525, 1538, 1161, 1539, 168, 351, 156,
- 169, 352, 364, 547, 157, 170, 353, 365,
- 548, 158, 171, 354, 366, 549, 560, 182,
- 561, 183, 367, 562, 378, 379, 184, 172,
- 380, 563, 185, 368, 574, 575, 381, 576,
- 743, 744, 550, 745, 756, 757, 758, 759,
- 564, 770, 771, 577, 772, 939, 940, 746,
- 941, 952, 953, 954, 955, 760, 966, 967,
- 773, 968, 171, 354, 159, 172, 355, 367,
- 550, 160, 173, 356, 368, 551, 174, 369,
- 552, 184, 563, 185, 564, 186, 370, 565,
- 187, 380, 381, 382, 383, 566, 188, 577,
- 578, 384, 579, 746, 747, 748, 759, 760,
- 761, 576, 762, 773, 774, 580, 775, 942,
- 943, 944, 955, 956, 957, 772, 958, 969,
- 970, 776, 971, 1138, 1139, 1140, 1151, 1152,
- 1153, 968, 1154, 1165, 1166, 972, 1167, 1334,
- 1335, 1336, 1347, 1348, 1349, 1164, 1350, 1361,
- 1362, 1168, 1363, 1360, 1530, 1531, 1532, 1543,
- 1544, 1545, 1546, 1364, 174, 161, 357, 370,
- 175, 553, 566, 162, 358, 371, 176, 554,
- 567, 163, 359, 372, 555, 189, 568, 177,
- 190, 373, 187, 188, 385, 386, 383, 384,
- 569, 749, 751, 764, 580, 581, 582, 191,
- 750, 763, 762, 579, 765, 945, 776, 777,
- 778, 387, 946, 947, 958, 959, 960, 775,
- 961, 1141, 972, 973, 974, 583, 1142, 1155,
- 1143, 1154, 1156, 971, 1157, 1168, 1169, 1170,
- 779, 1337, 1338, 1339, 1350, 1351, 1352, 1167,
- 975, 1353, 1364, 1365, 1366, 1363, 1171, 1533,
- 1534, 1547, 1535, 1546, 1548, 1549, 163, 177,
- 359, 555, 164, 360, 373, 556, 178, 165,
- 361, 374, 557, 179, 166, 362, 375, 180,
- 558, 571, 569, 191, 570, 192, 193, 376,
- 387, 388, 389, 584, 194, 572, 585, 752,
- 753, 765, 766, 583, 751, 754, 767, 779,
- 780, 768, 948, 949, 950, 961, 962, 963,
- 781, 390, 947, 975, 976, 964, 1144, 1145,
- 1157, 1158, 977, 586, 166, 180, 362, 558,
- 167, 363, 376, 181, 559, 572, 194, 377,
- 390, 573, 195, 586, 391, 754, 755, 768,
- 769, 782, 587, 950, 951, 964, 965, 978,
- 783, 1146, 1147, 1160, 1161, 1174, 979, 1342,
- 1343, 1356, 1357, 1370, 1175, 1538, 1539, 1552,
- 1553, 1371, 393, 406, 588, 602, 784, 589,
- 394, 407, 603, 785, 590, 395, 408, 604,
- 786, 591, 420, 798, 421, 799, 409, 422,
- 605, 618, 787, 800, 616, 617, 434, 812,
- 435, 631, 813, 423, 436, 619, 632, 801,
- 814, 630, 448, 826, 449, 645, 827, 437,
- 450, 633, 815, 828, 980, 981, 982, 994,
- 995, 983, 996, 1008, 1009, 997, 644, 1010,
- 646, 840, 1022, 1023, 829, 842, 1011, 1024,
- 1176, 1177, 1178, 1190, 1191, 1179, 1192, 1204,
- 1193, 1205, 841, 1206, 1218, 1219, 1025, 1038,
- 1207, 1220, 1036, 1037, 396, 409, 591, 592,
- 605, 787, 397, 410, 593, 606, 788, 398,
- 411, 607, 789, 594, 423, 619, 801, 424,
- 802, 412, 425, 608, 790, 803, 620, 621,
- 437, 815, 438, 816, 426, 439, 622, 804,
- 817, 633, 634, 635, 451, 829, 452, 830,
- 440, 453, 636, 818, 831, 983, 984, 985,
- 986, 997, 998, 999, 1012, 1000, 1013, 1011,
- 647, 648, 649, 1025, 844, 1026, 832, 845,
- 1014, 1027, 1179, 1180, 1181, 1182, 1193, 1194,
- 1195, 1208, 1196, 1209, 1207, 843, 1039, 1221,
- 1040, 1222, 1028, 1041, 1210, 1223, 412, 594,
- 608, 790, 230, 399, 426, 595, 804, 986,
- 413, 609, 791, 427, 805, 204, 400, 596,
- 623, 414, 610, 792, 232, 428, 806, 988,
- 205, 401, 597, 624, 622, 218, 219, 415,
- 793, 244, 440, 818, 1000, 245, 441, 819,
- 246, 442, 820, 1002, 611, 636, 637, 638,
- 233, 429, 807, 989, 454, 832, 259, 455,
- 833, 1015, 260, 456, 834, 1016, 625, 258,
- 650, 651, 652, 247, 443, 821, 987, 1001,
- 1014, 1003, 1028, 1029, 847, 1030, 639, 848,
- 1182, 1183, 1184, 1198, 1196, 1211, 1185, 846,
- 1212, 1017, 1197, 1210, 1199, 1224, 1043, 1225,
- 1226, 835, 1044, 1042, 1213, 1379, 1394, 1393,
- 1408, 1239, 1031, 1240, 401, 597, 415, 611,
- 793, 233, 429, 807, 989, 206, 402, 598,
- 625, 416, 612, 794, 430, 808, 207, 234,
- 403, 599, 626, 990, 417, 613, 795, 431,
- 809, 208, 404, 600, 627, 220, 235, 991,
- 418, 796, 247, 443, 821, 1003, 444, 822,
- 640, 445, 823, 222, 614, 639, 248, 1004,
- 249, 641, 236, 432, 810, 992, 457, 835,
- 653, 458, 836, 654, 263, 459, 837, 1019,
- 628, 261, 1017, 262, 1018, 655, 250, 446,
- 824, 1006, 1005, 1031, 849, 850, 1032, 851,
- 1033, 1186, 1185, 1199, 1200, 1201, 1188, 1215,
- 1213, 642, 1020, 1202, 1187, 1214, 1227, 1045,
- 1046, 1228, 1047, 1229, 838, 1216, 1381, 1382,
- 1383, 1395, 1396, 1397, 1409, 1241, 1242, 1410,
- 1034, 1243, 1398, 435, 448, 617, 630, 631,
- 644, 813, 826, 436, 449, 618, 632, 645,
- 814, 827, 437, 450, 619, 646, 815, 828,
- 633, 462, 658, 840, 463, 841, 451, 464,
- 647, 829, 842, 659, 660, 476, 854, 477,
- 855, 465, 478, 661, 843, 856, 672, 673,
- 674, 868, 869, 479, 675, 857, 870, 1009,
- 1022, 1010, 1011, 1023, 1024, 1025, 1036, 1037,
- 1038, 1039, 1050, 1051, 1052, 1064, 1065, 871,
- 1053, 1066, 1205, 1206, 1207, 1218, 1219, 1220,
- 1221, 1232, 1233, 1234, 1235, 1248, 1246, 1247,
- 1260, 1261, 1067, 1249, 1262, 438, 451, 620,
- 633, 647, 816, 829, 634, 439, 452, 621,
- 648, 817, 830, 635, 440, 453, 622, 649,
- 818, 831, 636, 465, 843, 466, 844, 454,
- 467, 650, 832, 845, 661, 662, 663, 479,
- 857, 480, 858, 468, 481, 664, 846, 859,
- 675, 676, 677, 871, 872, 482, 678, 860,
- 873, 1012, 1025, 1013, 1026, 1014, 1027, 1039,
- 1040, 1028, 1041, 1053, 1054, 1042, 1055, 1067,
- 1068, 874, 1056, 1069, 1208, 1221, 1209, 1222,
- 1210, 1223, 1235, 1236, 1224, 1237, 1249, 1250,
- 1238, 1251, 1263, 1264, 1070, 1252, 1265, 454,
- 636, 650, 832, 427, 441, 468, 623, 637,
- 805, 819, 846, 455, 651, 833, 273, 428,
- 469, 610, 624, 806, 847, 1029, 442, 638,
- 820, 456, 652, 834, 274, 429, 470, 611,
- 625, 807, 848, 1030, 443, 639, 821, 664,
- 665, 260, 1016, 666, 457, 835, 482, 860,
- 287, 483, 861, 1043, 484, 862, 653, 680,
- 1017, 678, 1042, 679, 288, 1044, 471, 849,
- 874, 875, 1057, 876, 667, 1031, 300, 496,
- 1056, 497, 302, 498, 1058, 485, 863, 1001,
- 1015, 1028, 1002, 1003, 1045, 1070, 1071, 693,
- 1072, 681, 694, 1225, 1226, 1212, 1213, 1238,
- 1239, 1240, 1253, 1227, 692, 1254, 1059, 1197,
- 1211, 1224, 1198, 1199, 1252, 1241, 1266, 1267,
- 889, 1268, 877, 890, 888, 1086, 1255, 1421,
- 1422, 1408, 1409, 1435, 1436, 1434, 1449, 1423,
- 1084, 1448, 1085, 1450, 1073, 443, 625, 639,
- 821, 457, 653, 835, 430, 471, 626, 808,
- 849, 248, 444, 640, 667, 822, 1004, 458,
- 654, 836, 431, 472, 627, 809, 850, 445,
- 641, 823, 459, 655, 837, 277, 432, 473,
- 614, 628, 810, 851, 1033, 446, 642, 824,
- 275, 1031, 276, 668, 1019, 669, 264, 460,
- 838, 1020, 485, 863, 262, 681, 1018, 290,
- 486, 864, 1046, 291, 487, 865, 1047, 656,
- 289, 1045, 682, 683, 278, 474, 852, 1034,
- 877, 878, 1060, 879, 1061, 670, 303, 499,
- 500, 696, 501, 488, 866, 1017, 1032, 1005,
- 1006, 1059, 1048, 695, 1073, 1074, 1075, 684,
- 697, 1200, 1201, 1229, 1202, 1227, 1228, 1215,
- 1216, 1242, 1243, 1256, 1230, 1255, 1257, 1062,
- 1213, 1214, 1241, 1244, 891, 1269, 1270, 892,
- 1271, 880, 893, 1258, 1396, 1425, 1423, 1424,
- 1412, 1410, 1439, 1437, 1426, 1452, 1453, 1087,
- 1451, 1088, 1089, 446, 628, 642, 824, 460,
- 656, 838, 278, 433, 474, 615, 629, 811,
- 852, 1034, 447, 643, 825, 670, 461, 839,
- 657, 488, 866, 684, 1021, 292, 1048, 475,
- 853, 671, 880, 1035, 306, 502, 1062, 489,
- 867, 685, 1020, 1007, 1049, 1076, 698, 1230,
- 1217, 1244, 1063, 881, 1216, 1203, 1231, 1258,
- 1245, 894, 1272, 1090, 1259, 1077, 1426, 1413,
- 1440, 1427, 1454, 477, 659, 672, 855, 868,
- 490, 673, 686, 478, 660, 856, 869, 491,
- 674, 687, 479, 661, 857, 870, 492, 675,
- 294, 1064, 295, 882, 1052, 1065, 296, 688,
- 871, 883, 1066, 297, 480, 493, 676, 689,
- 858, 884, 1067, 308, 504, 1078, 309, 505,
- 700, 1079, 310, 506, 701, 885, 1080, 896,
- 897, 702, 311, 494, 507, 690, 898, 1081,
- 703, 886, 322, 518, 1092, 323, 519, 714,
- 1093, 324, 520, 715, 899, 1094, 910, 911,
- 716, 325, 508, 521, 704, 912, 1095, 1051,
- 1053, 872, 717, 900, 1260, 1261, 1262, 1054,
- 1263, 1274, 1275, 1276, 1277, 1082, 1288, 1289,
- 1290, 1106, 1107, 1108, 1291, 1247, 1248, 1249,
- 1068, 913, 1096, 1250, 1278, 1302, 1303, 1304,
- 1443, 1456, 1457, 1445, 1458, 1264, 1459, 1470,
- 1471, 1472, 1473, 1484, 1485, 1486, 1109, 1292,
- 1487, 480, 662, 675, 858, 871, 493, 676,
- 689, 481, 663, 859, 872, 494, 677, 690,
- 482, 664, 860, 873, 495, 678, 297, 688,
- 884, 1067, 298, 885, 1068, 299, 691, 874,
- 886, 1069, 300, 496, 692, 887, 1070, 311,
- 506, 507, 702, 1081, 312, 508, 703, 1082,
- 313, 509, 704, 888, 1083, 898, 899, 900,
- 705, 314, 510, 901, 1084, 706, 325, 520,
- 521, 716, 1095, 326, 522, 717, 1096, 327,
- 523, 718, 902, 1097, 719, 912, 913, 914,
- 328, 524, 915, 1098, 1054, 1055, 1056, 720,
- 1080, 1263, 1264, 1265, 1266, 1277, 1278, 1279,
- 1094, 1280, 1291, 1292, 1293, 1108, 1109, 1110,
- 1111, 1294, 1250, 1251, 1252, 916, 1276, 1290,
- 1304, 1305, 1306, 1307, 1459, 1460, 1461, 1462,
- 1473, 1474, 1475, 1476, 1487, 1488, 1489, 1112,
- 1490, 678, 874, 469, 483, 496, 665, 679,
- 692, 847, 861, 875, 301, 470, 484, 497,
- 652, 666, 693, 848, 862, 1044, 1071, 288,
- 680, 876, 289, 302, 471, 485, 498, 653,
- 667, 694, 849, 863, 1045, 1072, 681, 300,
- 691, 887, 1070, 888, 889, 890, 877, 1058,
- 499, 314, 510, 1084, 315, 511, 1085, 707,
- 303, 316, 512, 708, 1086, 695, 1073, 509,
- 705, 706, 891, 901, 902, 903, 904, 525,
- 317, 513, 526, 1087, 328, 524, 1098, 329,
- 721, 1099, 330, 1100, 709, 722, 523, 719,
- 720, 905, 915, 916, 917, 918, 1043, 1057,
- 1059, 1281, 1101, 1239, 1267, 1240, 1241, 1268,
- 1083, 1266, 1254, 1255, 1280, 1282, 1269, 1097,
- 1283, 1294, 1295, 1296, 1111, 1112, 1113, 1114,
- 1253, 1297, 1279, 1477, 1293, 1307, 1308, 1309,
- 1310, 1436, 1463, 1437, 1464, 1462, 1450, 1476,
- 1451, 1478, 1465, 1491, 1479, 1490, 1492, 485,
- 667, 681, 863, 877, 290, 303, 472, 486,
- 499, 654, 668, 695, 850, 864, 1046, 1073,
- 682, 878, 291, 304, 473, 487, 500, 655,
- 669, 696, 851, 865, 1047, 1074, 683, 879,
- 305, 474, 488, 501, 656, 670, 697, 852,
- 866, 1075, 292, 684, 1048, 891, 1060, 892,
- 893, 880, 306, 502, 1062, 317, 513, 1087,
- 709, 318, 514, 1061, 1088, 710, 319, 515,
- 711, 1089, 698, 1076, 894, 905, 906, 907,
- 527, 332, 528, 1102, 320, 333, 516, 529,
- 712, 1090, 1103, 331, 1101, 723, 724, 725,
- 908, 919, 920, 921, 1059, 1284, 1285, 1297,
- 1298, 1104, 1242, 1269, 1243, 1270, 1271, 1244,
- 1256, 1283, 1257, 1272, 1286, 1299, 1115, 1116,
- 1117, 1255, 1258, 1300, 1480, 1493, 1311, 1312,
- 1313, 1465, 1439, 1466, 1467, 1440, 1452, 1454,
- 1479, 1481, 1468, 1494, 1482, 1495, 518, 701,
- 714, 897, 323, 519, 702, 715, 898, 910,
- 1093, 324, 520, 703, 716, 899, 911, 1094,
- 325, 521, 704, 717, 900, 912, 1095, 336,
- 532, 1106, 337, 533, 728, 1107, 338, 534,
- 729, 913, 1108, 730, 924, 925, 339, 522,
- 535, 718, 926, 1109, 731, 914, 350, 546,
- 1120, 351, 547, 742, 1121, 743, 352, 548,
- 927, 1122, 744, 938, 939, 353, 536, 549,
- 732, 940, 1123, 745, 928, 364, 560, 1134,
- 756, 365, 561, 1135, 366, 562, 757, 941,
- 1136, 952, 953, 758, 367, 550, 563, 746,
- 954, 1137, 759, 942, 1289, 1290, 1096, 1291,
- 1302, 1303, 1304, 1305, 1110, 1316, 1317, 1318,
- 1319, 1124, 1330, 1331, 1332, 1148, 1149, 1150,
- 1333, 955, 1138, 1292, 1306, 1320, 1344, 1345,
- 1346, 1485, 1486, 1487, 1498, 1499, 1500, 1501,
- 1512, 1513, 1514, 1515, 1526, 1527, 1528, 1151,
- 1334, 1529, 521, 704, 717, 900, 326, 522,
- 705, 718, 901, 913, 1096, 327, 523, 706,
- 719, 902, 914, 1097, 328, 524, 720, 915,
- 1098, 339, 534, 535, 730, 1109, 731, 340,
- 536, 1110, 732, 341, 537, 916, 1111, 926,
- 927, 928, 733, 342, 538, 929, 1112, 734,
- 353, 548, 549, 744, 1123, 354, 550, 745,
- 1124, 355, 551, 746, 930, 1125, 940, 941,
- 942, 747, 356, 552, 943, 1126, 748, 367,
- 562, 563, 758, 1137, 368, 564, 759, 1138,
- 369, 565, 760, 944, 1139, 954, 955, 956,
- 761, 370, 566, 957, 1140, 762, 1292, 1293,
- 1294, 1305, 1306, 1307, 1122, 1308, 1319, 1320,
- 1321, 1136, 1322, 1333, 1334, 1335, 1150, 1151,
- 1152, 1153, 1336, 958, 1318, 1332, 1346, 1347,
- 1348, 1349, 1488, 1489, 1490, 1501, 1502, 1503,
- 1504, 1515, 1516, 1517, 1518, 1529, 1530, 1531,
- 1154, 1532, 524, 720, 525, 707, 903, 916,
- 329, 721, 1099, 708, 904, 917, 330, 526,
- 539, 1100, 722, 709, 905, 918, 331, 527,
- 540, 1101, 342, 538, 1112, 343, 1113, 735,
- 344, 1114, 723, 736, 537, 733, 734, 919,
- 929, 930, 931, 932, 553, 345, 358, 541,
- 554, 737, 1115, 1128, 356, 552, 1126, 357,
- 1127, 749, 750, 551, 747, 748, 933, 943,
- 944, 945, 946, 371, 567, 1141, 359, 372,
- 555, 568, 751, 1129, 1142, 370, 566, 1140,
- 763, 764, 565, 761, 762, 947, 957, 958,
- 959, 960, 1297, 1310, 1311, 1323, 1324, 1337,
- 1143, 1295, 1296, 1308, 1309, 1125, 1322, 1139,
- 1325, 1336, 1338, 1153, 1154, 1155, 1156, 1339,
- 1506, 1321, 1519, 1335, 1349, 1350, 1351, 1352,
- 1491, 1492, 1493, 1504, 1505, 1507, 1520, 1518,
- 1533, 1521, 1534, 1532, 331, 527, 723, 905,
- 1101, 710, 906, 919, 332, 345, 528, 541,
- 724, 1102, 1115, 711, 907, 920, 333, 346,
- 529, 542, 725, 1103, 1116, 712, 908, 921,
- 334, 530, 543, 1104, 737, 738, 347, 1117,
- 726, 739, 922, 933, 934, 935, 359, 555,
- 1129, 556, 348, 544, 557, 1118, 751, 360,
- 1130, 752, 361, 1131, 740, 753, 936, 947,
- 948, 949, 569, 570, 362, 558, 571, 1132,
- 1145, 373, 1143, 765, 374, 1144, 766, 375,
- 754, 767, 950, 961, 962, 963, 1298, 1311,
- 1314, 1327, 1328, 1340, 1341, 1146, 1297, 1299,
- 1300, 1312, 1313, 1325, 1326, 1339, 1157, 1158,
- 1159, 1342, 1510, 1523, 1524, 1536, 1537, 1353,
- 1354, 1355, 1493, 1494, 1507, 1495, 1508, 1496,
- 1509, 1521, 1522, 1535, 560, 756, 939, 365,
- 561, 744, 757, 940, 952, 1135, 366, 562,
- 745, 758, 941, 953, 1136, 367, 563, 746,
- 759, 942, 954, 1137, 378, 574, 1148, 379,
- 575, 770, 1149, 380, 576, 771, 955, 1150,
- 966, 967, 772, 381, 564, 577, 760, 968,
- 1151, 773, 956, 1162, 1163, 969, 1164, 1331,
- 1332, 1138, 1333, 1344, 1345, 1346, 1347, 1152,
- 1358, 1359, 1165, 1360, 1334, 1348, 1527, 1528,
- 1529, 1540, 1541, 1542, 1543, 1361, 373, 569,
- 765, 947, 1143, 752, 948, 961, 374, 570,
- 583, 1144, 766, 753, 949, 962, 375, 571,
- 584, 1145, 1158, 767, 754, 950, 963, 376,
- 572, 585, 768, 1146, 387, 1157, 779, 388,
- 780, 389, 781, 1159, 964, 975, 976, 977,
- 1171, 390, 586, 1160, 1340, 1341, 1353, 1354,
- 1172, 1173, 782, 1339, 1342, 1355, 1367, 1356,
- 1368, 1369, 978, 1536, 1537, 1549, 1550, 1174,
- 1535, 1538, 1551, 1563, 1564, 1552, 981, 994,
- 1176, 1177, 1190, 982, 995, 1178, 1191, 983,
- 996, 1192, 1179, 1374, 1372, 1008, 1204, 1373,
- 1009, 997, 1010, 1193, 1205, 1387, 1206, 1375,
- 1388, 1386, 1022, 1023, 1011, 1024, 1207, 1218,
- 1400, 1219, 1401, 1220, 1389, 1036, 1037, 1402,
- 1025, 1038, 1221, 1234, 984, 1180, 1194, 1376,
- 1232, 1414, 1233, 1415, 1208, 1390, 1403, 1416,
- 1428, 1429, 1417, 1568, 1569, 1570, 1582, 1583,
- 1571, 1584, 1596, 1597, 1585, 1598, 1610, 1611,
- 1404, 1430, 1599, 1612, 1572, 1586, 1624, 1625,
- 1613, 1626, 1764, 1765, 1766, 1778, 1779, 1767,
- 1780, 1792, 1793, 1781, 1794, 1806, 1807, 1600,
- 1795, 1808, 1768, 1782, 984, 997, 1179, 1193,
- 1180, 1375, 985, 998, 1194, 1181, 1376, 986,
- 999, 1182, 1195, 1011, 1207, 1012, 1208, 1377,
- 1000, 1013, 1196, 1209, 1389, 1378, 1025, 1221,
- 1390, 1026, 1391, 1014, 1027, 1210, 1223, 1222,
- 1392, 1403, 1039, 1235, 1404, 1040, 1236, 1405,
- 1028, 1041, 1224, 1237, 1010, 1192, 1206, 1388,
- 1220, 1402, 1234, 1416, 1417, 1418, 1406, 1419,
- 1430, 1431, 1432, 1420, 1571, 1572, 1573, 1585,
- 1586, 1574, 1587, 1599, 1600, 1588, 1601, 1613,
- 1614, 1433, 1602, 1615, 1584, 1598, 1612, 1626,
- 1627, 1628, 1616, 1629, 1767, 1768, 1769, 1781,
- 1782, 1770, 1783, 1795, 1796, 1784, 1797, 1809,
- 1810, 1798, 1811, 1780, 1794, 1808, 1000, 1182,
- 1196, 987, 1014, 1183, 1378, 1001, 1197, 819,
- 1015, 1379, 792, 988, 1184, 1211, 1393, 1002,
- 1198, 1016, 1380, 793, 820, 989, 1185, 1212,
- 1394, 805, 1210, 1392, 1003, 1028, 1029, 1225,
- 1030, 1199, 1226, 1381, 832, 1224, 1406, 1407,
- 834, 1408, 1017, 1042, 1043, 1239, 1044, 821,
- 1213, 1240, 1395, 1238, 1420, 847, 1421, 848,
- 1422, 1031, 1195, 1209, 1391, 1223, 1405, 1237,
- 1419, 1227, 1409, 1433, 1435, 1253, 1436, 1254,
- 1574, 1575, 1576, 1588, 1590, 1577, 1603, 1604,
- 1434, 1589, 1602, 1617, 1591, 1618, 1616, 1423,
- 1587, 1601, 1615, 1449, 1631, 1450, 1605, 1632,
- 1629, 1771, 1772, 1770, 1784, 1785, 1786, 1799,
- 1773, 1630, 1800, 1798, 1813, 1787, 1814, 1812,
- 1619, 1783, 1797, 1811, 1645, 1827, 1646, 1801,
- 1828, 989, 1185, 1003, 1199, 1017, 1381, 794,
- 821, 990, 1186, 1213, 1395, 1004, 1200, 1018,
- 1382, 795, 991, 1187, 1214, 1396, 1005, 1201,
- 823, 1019, 1383, 796, 992, 1188, 1215, 1397,
- 809, 810, 1006, 1031, 836, 1032, 837, 1033,
- 1202, 1229, 1384, 1227, 1409, 1228, 1410, 1411,
- 1020, 1045, 850, 1046, 1242, 1047, 824, 1216,
- 1243, 1398, 1241, 1423, 1424, 851, 1425, 1034,
- 1230, 1412, 1059, 1255, 1437, 1256, 1438, 1439,
- 1257, 1577, 1578, 1579, 1591, 1592, 1580, 1607,
- 1605, 1594, 1593, 1606, 1619, 1620, 1621, 1451,
- 1633, 1452, 1634, 1426, 1453, 1608, 1635, 1773,
- 1774, 1775, 1788, 1787, 1789, 1802, 1776, 1803,
- 1801, 1815, 1816, 1790, 1817, 1622, 1647, 1829,
- 1648, 1830, 1649, 1804, 1831, 992, 1188, 1006,
- 1202, 1020, 1384, 797, 824, 993, 1189, 1216,
- 1398, 1007, 1203, 1034, 811, 1230, 1385, 838,
- 1412, 1021, 1217, 1048, 1244, 1399, 852, 1426,
- 1035, 1231, 1413, 1062, 1258, 1440, 1580, 1594,
- 1608, 1427, 1581, 1595, 1622, 1609, 1454, 1636,
- 1776, 1790, 1777, 1804, 1623, 1791, 1818, 1805,
- 1650, 1832, 1023, 1036, 1205, 1218, 1232, 1219,
- 1401, 1414, 1024, 1037, 1206, 1233, 1220, 1402,
- 1415, 1025, 1038, 1207, 1221, 1234, 1403, 1050,
- 1051, 1416, 1039, 1052, 1235, 1248, 1246, 1428,
- 1247, 1417, 1064, 1260, 1429, 1065, 1261, 1430,
- 1053, 1066, 1249, 1262, 1431, 1442, 1443, 1444,
- 1067, 1263, 1387, 1400, 1388, 1389, 1208, 1222,
- 1404, 1236, 1418, 1456, 1457, 1078, 1079, 1080,
- 1250, 1432, 1445, 1458, 1390, 1274, 1275, 1459,
- 1583, 1596, 1597, 1610, 1584, 1598, 1611, 1585,
- 1599, 1612, 1624, 1625, 1613, 1626, 1638, 1639,
- 1627, 1640, 1652, 1471, 1653, 1446, 1641, 1654,
- 1586, 1600, 1614, 1470, 1472, 1628, 1655, 1779,
- 1792, 1793, 1806, 1780, 1794, 1807, 1781, 1795,
- 1808, 1820, 1821, 1809, 1822, 1834, 1835, 1823,
- 1836, 1848, 1849, 1642, 1837, 1850, 1782, 1796,
- 1810, 1666, 1667, 1668, 1824, 1026, 1039, 1208,
- 1221, 1222, 1235, 1404, 1027, 1040, 1209, 1223,
- 1236, 1405, 1028, 1041, 1210, 1224, 1237, 1406,
- 1417, 1053, 1249, 1418, 1054, 1250, 1419, 1042,
- 1055, 1238, 1251, 1420, 1431, 1067, 1263, 1432,
- 1068, 1264, 1433, 1056, 1069, 1252, 1265, 1434,
- 1447, 1445, 1446, 1070, 1266, 1234, 1248, 1390,
- 1403, 1430, 1391, 1392, 1262, 1444, 1458, 1459,
- 1460, 1081, 1277, 1082, 1083, 1279, 1448, 1461,
- 1276, 1278, 1462, 1586, 1599, 1600, 1613, 1587,
- 1601, 1614, 1588, 1602, 1615, 1627, 1628, 1616,
- 1629, 1641, 1642, 1630, 1643, 1655, 1656, 1644,
- 1657, 1626, 1640, 1654, 1472, 1473, 1474, 1475,
- 1658, 1782, 1795, 1796, 1809, 1783, 1797, 1810,
- 1784, 1798, 1811, 1823, 1824, 1812, 1825, 1837,
- 1838, 1826, 1839, 1669, 1851, 1852, 1671, 1840,
- 1853, 1822, 1836, 1850, 1668, 1670, 1042, 1224,
- 1238, 1015, 1029, 1056, 1211, 1225, 1393, 1407,
- 1420, 1043, 1239, 1016, 1057, 1212, 1421, 834,
- 1030, 1226, 1253, 1394, 1408, 1044, 1240, 1017,
- 1058, 1213, 1422, 1031, 1227, 1395, 1409, 1252,
- 1434, 861, 1435, 1254, 1436, 1045, 847, 874,
- 1070, 1071, 848, 1267, 1072, 1241, 1423, 1266,
- 1448, 875, 1449, 1268, 1450, 863, 1059, 1255,
- 1437, 1084, 1462, 1085, 1463, 1086, 1464, 877,
- 1073, 1282, 1237, 1251, 1406, 1433, 1265, 1447,
- 1461, 1280, 1281, 890, 1269, 1451, 1279, 1617,
- 1618, 1604, 1631, 1605, 1630, 1632, 1645, 1619,
- 1644, 1646, 1602, 1616, 1589, 1603, 1590, 1591,
- 1659, 1633, 1660, 1658, 1476, 1477, 1478, 1629,
- 1643, 1657, 1475, 1465, 1647, 1673, 1786, 1813,
- 1814, 1800, 1827, 1842, 1841, 1674, 1798, 1812,
- 1785, 1799, 1787, 1801, 1828, 1826, 1815, 1840,
- 1855, 1829, 1856, 1672, 1854, 1661, 1825, 1839,
- 1853, 1671, 1843, 1031, 1213, 1227, 1409, 1045,
- 1241, 863, 1018, 1059, 1200, 1214, 1396, 1423,
- 1032, 1228, 1410, 1046, 1242, 864, 1019, 1060,
- 1201, 1215, 1397, 1424, 837, 1033, 1229, 1256,
- 1411, 1047, 1243, 1020, 1061, 1216, 1425, 838,
- 1034, 1230, 1257, 1398, 1412, 1255, 1437, 850,
- 1438, 865, 1439, 1048, 877, 1073, 1269, 1074,
- 1270, 1075, 852, 1244, 1271, 1426, 1451, 878,
- 1452, 879, 1453, 1062, 1258, 1440, 891, 1087,
- 1465, 892, 1088, 1466, 1089, 1467, 880, 1076,
- 1285, 1283, 1284, 893, 1454, 1272, 1592, 1621,
- 1619, 1607, 1608, 1634, 1635, 1622, 1648, 1649,
- 1605, 1606, 1633, 1620, 1593, 1594, 1647, 1479,
- 1661, 1662, 1636, 1663, 1480, 1481, 1468, 1650,
- 1677, 1815, 1789, 1790, 1802, 1816, 1817, 1829,
- 1803, 1804, 1830, 1831, 1818, 1843, 1844, 1845,
- 1801, 1788, 1857, 1858, 1832, 1859, 1675, 1676,
- 1664, 1846, 1034, 1216, 1230, 1412, 1048, 1244,
- 1021, 1062, 1217, 1426, 1035, 1231, 1399, 1413,
- 1258, 1440, 853, 1049, 1245, 880, 1076, 1427,
- 1272, 1454, 867, 1063, 1259, 1441, 1090, 1468,
- 881, 1077, 1286, 1273, 894, 1455, 1622, 1609,
- 1636, 1623, 1650, 1469, 1608, 1595, 1637, 1664,
- 1482, 1651, 1818, 1846, 1678, 1665, 1804, 1791,
- 1805, 1832, 1819, 1833, 1860, 1847, 1065, 1247,
- 1260, 1261, 1078, 1443, 1066, 1248, 1262, 1079,
- 1444, 1067, 1249, 1263, 1080, 1445, 882, 1274,
- 1456, 883, 1275, 1457, 884, 1276, 1458, 1470,
- 1471, 885, 1068, 1081, 1264, 1277, 1459, 1472,
- 896, 1092, 897, 1093, 1288, 898, 1094, 1289,
- 1290, 1473, 899, 1082, 1095, 1278, 1484, 1485,
- 1291, 1486, 910, 1106, 911, 1107, 1302, 1303,
- 912, 1108, 1304, 1487, 913, 1096, 1109, 1292,
- 1429, 1442, 1430, 1431, 1250, 1446, 1460, 1474,
- 1498, 1499, 1305, 1500, 1432, 1488, 1639, 1652,
- 1640, 1653, 1641, 1654, 1655, 1666, 1667, 1668,
- 1669, 1680, 1681, 1682, 1683, 1625, 1638, 1626,
- 1627, 1656, 1501, 1628, 1642, 1670, 1694, 1695,
- 1696, 1684, 1848, 1849, 1850, 1851, 1862, 1863,
- 1864, 1865, 1876, 1877, 1878, 1879, 1821, 1834,
- 1835, 1822, 1836, 1823, 1837, 1697, 1824, 1838,
- 1852, 1866, 1890, 1891, 1892, 1068, 1250, 1263,
- 1264, 1081, 1277, 1446, 1069, 1251, 1082, 1265,
- 1278, 1447, 1460, 1070, 1252, 1083, 1266, 1279,
- 1448, 1461, 885, 1276, 1459, 886, 887, 1473,
- 1474, 888, 1084, 1280, 1462, 1475, 899, 1094,
- 1095, 1290, 1291, 900, 1096, 1292, 901, 1097,
- 1293, 1476, 902, 1098, 1487, 1488, 1294, 1489,
- 913, 1108, 1109, 1304, 1305, 914, 1110, 915,
- 1111, 1306, 1307, 1490, 916, 1112, 1432, 1445,
- 1433, 1434, 1472, 1486, 1500, 1501, 1502, 1308,
- 1503, 1642, 1655, 1643, 1656, 1657, 1658, 1669,
- 1670, 1671, 1672, 1683, 1684, 1685, 1686, 1628,
- 1641, 1629, 1630, 1644, 1504, 1668, 1682, 1696,
- 1697, 1698, 1699, 1851, 1839, 1852, 1853, 1854,
- 1865, 1866, 1867, 1868, 1879, 1880, 1881, 1882,
- 1824, 1837, 1838, 1825, 1826, 1840, 1700, 1864,
- 1878, 1892, 1893, 1894, 1895, 1266, 875, 888,
- 1057, 1071, 1084, 1253, 1267, 1280, 1435, 1449,
- 1462, 876, 889, 1058, 1072, 1085, 1240, 1254,
- 1281, 1436, 1463, 1268, 1450, 877, 890, 1059,
- 1073, 1086, 1241, 1255, 1282, 1437, 1464, 1269,
- 1451, 1279, 1476, 1477, 1478, 891, 1087, 1465,
- 902, 1098, 1293, 1294, 903, 1099, 1295, 904,
- 1100, 1296, 1283, 1097, 1490, 1479, 1491, 917,
- 1113, 1309, 1492, 905, 918, 1101, 1114, 1297,
- 916, 1112, 1307, 1308, 1310, 1111, 1504, 1493,
- 1448, 1475, 1489, 1503, 1505, 1506, 1659, 1660,
- 1673, 1661, 1632, 1645, 1633, 1646, 1631, 1644,
- 1658, 1672, 1647, 1674, 1686, 1687, 1675, 1688,
- 1700, 1701, 1689, 1702, 1671, 1685, 1699, 1856,
- 1869, 1870, 1868, 1871, 1883, 1884, 1882, 1827,
- 1828, 1841, 1855, 1829, 1842, 1840, 1854, 1843,
- 1857, 1896, 1897, 1885, 1898, 1867, 1881, 1895,
- 1073, 1255, 1269, 1451, 891, 1060, 1074, 1087,
- 1242, 1256, 1283, 1438, 1465, 878, 1270, 1452,
- 892, 1061, 1075, 1088, 1243, 1257, 1284, 1439,
- 1466, 1271, 1453, 880, 893, 1062, 1076, 1089,
- 1244, 1258, 1285, 1440, 1467, 1272, 1454, 1479,
- 1480, 1481, 1090, 1468, 905, 1101, 1297, 906,
- 1102, 1298, 894, 907, 1103, 1299, 1286, 1482,
- 1493, 919, 1115, 1494, 920, 1116, 1495, 908,
- 921, 1104, 1117, 1300, 1313, 1311, 1312, 1496,
- 1507, 1508, 1509, 1661, 1663, 1676, 1677, 1689,
- 1690, 1634, 1647, 1635, 1648, 1662, 1636, 1649,
- 1650, 1675, 1664, 1678, 1691, 1703, 1704, 1692,
- 1705, 1857, 1858, 1871, 1872, 1873, 1885, 1874,
- 1886, 1887, 1830, 1843, 1831, 1844, 1832, 1845,
- 1859, 1846, 1860, 1899, 1900, 1888, 1901, 1076,
- 1258, 1272, 1454, 881, 894, 1063, 1077, 1090,
- 1245, 1259, 1286, 1441, 1468, 1273, 1455, 1482,
- 895, 1091, 1469, 1287, 908, 1104, 1300, 1483,
- 909, 1105, 1301, 1496, 922, 1118, 1314, 1497,
- 923, 1119, 1315, 1510, 1664, 1665, 1637, 1650,
- 1651, 1678, 1679, 1692, 1511, 1693, 1706, 1860,
- 1874, 1861, 1875, 1888, 1833, 1846, 1847, 1707,
- 1889, 1902, 1106, 1289, 1302, 911, 1107, 1290,
- 1303, 1485, 1498, 912, 1108, 1291, 1304, 1486,
- 1499, 913, 1109, 1292, 1305, 1487, 1500, 924,
- 1120, 1316, 925, 1121, 1317, 926, 1122, 1318,
- 1501, 927, 1110, 1123, 1306, 1512, 1513, 1319,
- 1514, 938, 1134, 939, 1135, 1330, 940, 1136,
- 1331, 1332, 1515, 941, 1124, 1137, 1320, 1526,
- 1527, 1333, 1528, 952, 1148, 953, 1149, 1344,
- 954, 1150, 1345, 1346, 1529, 955, 1138, 1151,
- 1334, 1488, 1502, 1516, 1540, 1541, 1347, 1542,
- 1530, 1681, 1682, 1683, 1694, 1695, 1696, 1697,
- 1708, 1709, 1710, 1711, 1722, 1723, 1724, 1725,
- 1543, 1684, 1698, 1712, 1736, 1737, 1738, 1726,
- 1877, 1878, 1879, 1890, 1891, 1892, 1893, 1904,
- 1905, 1906, 1907, 1918, 1919, 1920, 1921, 1739,
- 1880, 1894, 1908, 1932, 1933, 1934, 1109, 1305,
- 914, 1110, 1293, 1306, 1488, 1501, 1489, 915,
- 1111, 1294, 1307, 1502, 1490, 916, 1112, 1308,
- 1503, 927, 1122, 1123, 1318, 928, 1124, 1319,
- 929, 1125, 1320, 1321, 1504, 930, 1126, 1515,
- 1516, 1322, 1517, 941, 1136, 1137, 1332, 1333,
- 942, 1138, 943, 1139, 1334, 1335, 1518, 944,
- 1140, 1529, 1530, 1336, 1531, 955, 1150, 1151,
- 1346, 1347, 956, 1152, 1348, 957, 1153, 1349,
- 1532, 958, 1154, 1514, 1528, 1542, 1543, 1544,
- 1350, 1545, 1500, 1684, 1685, 1686, 1697, 1698,
- 1699, 1700, 1711, 1712, 1713, 1714, 1725, 1726,
- 1727, 1728, 1546, 1696, 1710, 1724, 1738, 1739,
- 1740, 1741, 1880, 1881, 1882, 1893, 1894, 1895,
- 1896, 1907, 1908, 1909, 1910, 1921, 1922, 1923,
- 1924, 1742, 1892, 1906, 1920, 1934, 1935, 1936,
- 1937, 1112, 1308, 1113, 1295, 1491, 1504, 917,
- 1309, 1296, 1505, 918, 931, 1100, 1114, 1127,
- 1310, 1492, 1297, 1506, 919, 932, 1101, 1115,
- 1128, 1311, 1493, 930, 1126, 1323, 1324, 1125,
- 1321, 1322, 1518, 1507, 1519, 945, 1141, 1520,
- 933, 946, 1129, 1142, 1325, 944, 1140, 1337,
- 1338, 1139, 1335, 1336, 1532, 1521, 1533, 959,
- 1155, 1534, 947, 960, 1143, 1156, 1339, 1352,
- 958, 1154, 1349, 1350, 1351, 1153, 1546, 1535,
- 1517, 1531, 1545, 1547, 1548, 1503, 1689, 1700,
- 1702, 1703, 1715, 1716, 1729, 1687, 1688, 1701,
- 1714, 1728, 1717, 1730, 1742, 1743, 1731, 1744,
- 1699, 1713, 1727, 1741, 1883, 1884, 1885, 1898,
- 1897, 1896, 1911, 1899, 1912, 1910, 1913, 1925,
- 1926, 1924, 1938, 1939, 1927, 1940, 1895, 1909,
- 1923, 1937, 919, 1115, 1311, 1493, 1298, 1507,
- 920, 933, 1102, 1116, 1129, 1312, 1494, 1299,
- 1508, 921, 934, 1103, 1117, 1130, 1313, 1326,
- 1495, 1300, 1509, 922, 935, 1104, 1118, 1131,
- 1314, 1496, 1325, 1327, 1510, 1521, 947, 1143,
- 1339, 1522, 948, 1144, 1523, 936, 949, 1132,
- 1145, 1328, 1341, 1340, 1524, 1535, 961, 1157,
- 1536, 962, 1158, 1354, 1537, 950, 963, 1146,
- 1159, 1342, 1353, 1355, 1538, 1549, 1550, 1551,
- 1690, 1703, 1706, 1719, 1720, 1732, 1733, 1689,
- 1691, 1704, 1692, 1705, 1717, 1718, 1731, 1745,
- 1746, 1734, 1747, 1885, 1886, 1887, 1888, 1899,
- 1900, 1901, 1902, 1915, 1913, 1914, 1928, 1916,
- 1927, 1929, 1941, 1942, 1930, 1943, 922, 1118,
- 1314, 1496, 1301, 1510, 923, 936, 1105, 1119,
- 1132, 1315, 1328, 1497, 1511, 937, 1133, 1329,
- 1524, 950, 1146, 1342, 1525, 951, 1147, 1343,
- 1538, 964, 1160, 1356, 1539, 965, 1161, 1357,
- 1552, 1693, 1706, 1707, 1720, 1692, 1721, 1734,
- 1553, 1735, 1748, 1888, 1889, 1902, 1903, 1916,
- 1917, 1930, 1749, 1931, 1944, 1148, 1331, 1344,
- 1527, 953, 1149, 1332, 1345, 1540, 954, 1150,
- 1333, 1346, 1528, 1541, 955, 1151, 1334, 1347,
- 1529, 1542, 966, 1162, 967, 1163, 1358, 1359,
- 968, 1164, 1360, 1543, 969, 1152, 1165, 1348,
- 1554, 1555, 1361, 1556, 1530, 1544, 1557, 1723,
- 1724, 1725, 1736, 1737, 1738, 1739, 1750, 1751,
- 1752, 1726, 1740, 1753, 1919, 1920, 1921, 1932,
- 1933, 1934, 1935, 1946, 1947, 1948, 1922, 1936,
- 1151, 1347, 956, 1152, 1335, 1348, 1530, 1543,
- 957, 1153, 1336, 1349, 1531, 1544, 1532, 958,
- 1154, 1350, 1545, 969, 1164, 1165, 1360, 970,
- 1166, 1361, 971, 1167, 1362, 1363, 1546, 972,
- 1168, 1557, 1558, 1364, 1559, 1556, 1542, 1560,
- 1726, 1727, 1728, 1739, 1740, 1741, 1742, 1753,
- 1754, 1755, 1738, 1752, 1756, 1922, 1923, 1924,
- 1935, 1936, 1937, 1938, 1949, 1950, 1951, 1934,
- 1948, 1154, 1350, 1155, 1337, 1533, 1546, 959,
- 1351, 1338, 1547, 960, 973, 1142, 1156, 1169,
- 1352, 1365, 1534, 1339, 1548, 961, 974, 1143,
- 1157, 1170, 1353, 1535, 972, 1168, 1363, 1364,
- 1366, 1167, 1560, 1549, 1561, 1562, 975, 1171,
- 1367, 1559, 1545, 1729, 1742, 1730, 1743, 1731,
- 1744, 1757, 1563, 1745, 1758, 1756, 1741, 1755,
- 1925, 1926, 1927, 1939, 1940, 1938, 1953, 1759,
- 1941, 1954, 1952, 1937, 1951, 961, 1157, 1353,
- 1535, 1340, 1549, 962, 975, 1144, 1158, 1171,
- 1354, 1367, 1536, 1341, 1550, 963, 976, 1145,
- 1159, 1172, 1355, 1537, 1342, 1551, 964, 977,
- 1146, 1160, 1173, 1356, 1369, 1538, 1368, 1552,
- 1563, 1564, 1565, 978, 1174, 1370, 1732, 1733,
- 1745, 1746, 1731, 1734, 1747, 1759, 1760, 1566,
- 1748, 1761, 1927, 1928, 1929, 1941, 1930, 1942,
- 1943, 1955, 1956, 1762, 1944, 1957, 964, 1160,
- 1356, 1538, 1343, 1552, 965, 978, 1147, 1161,
- 1174, 1357, 1539, 1370, 1553, 979, 1175, 1371,
- 1566, 1567, 1734, 1735, 1748, 1749, 1762, 1930,
- 1931, 1944, 1763, 1945, 1958, 1582, 1764, 1569,
- 1583, 1596, 1765, 1778, 1570, 1584, 1597, 1766,
- 1779, 1571, 1585, 1598, 1767, 1780, 1792, 1793,
- 1610, 1611, 1599, 1612, 1768, 1781, 1794, 1806,
- 1807, 1624, 1625, 1613, 1626, 1782, 1795, 1808,
- 1820, 1821, 1809, 1822, 1960, 1961, 1962, 1974,
- 1975, 1963, 1976, 1988, 1989, 1977, 1990, 2002,
- 2003, 1796, 1991, 2004, 1964, 1978, 2016, 2017,
- 2005, 2018, 2156, 2157, 2158, 2170, 2171, 2159,
- 2172, 2184, 2185, 2173, 2186, 2198, 2199, 1992,
- 2187, 2200, 2160, 2174, 2212, 2213, 2201, 2352,
- 2353, 2354, 2366, 2367, 2355, 2368, 2380, 2381,
- 2369, 2382, 2394, 2395, 2188, 2214, 2383, 2396,
- 2356, 2370, 1572, 1585, 1767, 1586, 1599, 1768,
- 1781, 1573, 1587, 1600, 1769, 1782, 1574, 1588,
- 1601, 1770, 1783, 1780, 1794, 1795, 1796, 1613,
- 1614, 1602, 1615, 1784, 1797, 1808, 1809, 1810,
- 1627, 1628, 1616, 1629, 1798, 1811, 1822, 1823,
- 1824, 1812, 1825, 1963, 1964, 1965, 1977, 1978,
- 1966, 1979, 1991, 1992, 1980, 1993, 2005, 2006,
- 1994, 2007, 1976, 1990, 2004, 2018, 2019, 2020,
- 2008, 2159, 2160, 2161, 2173, 2174, 2162, 2175,
- 2187, 2188, 2176, 2189, 2201, 2202, 2021, 2190,
- 2203, 2172, 2186, 2200, 2214, 2215, 2216, 2204,
- 2355, 2356, 2357, 2369, 2370, 2358, 2371, 2383,
- 2384, 2372, 2385, 2397, 2398, 2217, 2386, 2399,
- 2368, 2382, 2396, 1588, 1770, 1575, 1602, 1771,
- 1784, 1589, 1576, 1603, 1785, 1590, 1772, 1799,
- 1577, 1604, 1786, 1591, 1773, 1800, 1783, 1797,
- 1617, 1618, 1616, 1798, 1811, 1813, 1631, 1605,
- 1632, 1787, 1814, 1630, 1812, 1825, 1645, 1827,
- 1619, 1646, 1801, 1828, 1967, 1968, 1966, 1980,
- 1981, 1982, 1826, 1995, 1969, 1996, 1994, 2009,
- 1983, 2010, 2008, 1979, 1993, 2007, 1841, 2023,
- 1815, 1842, 1997, 2024, 2021, 2163, 2164, 2178,
- 2177, 2192, 2022, 2162, 2176, 2191, 2165, 2190,
- 2205, 2179, 2206, 2204, 2011, 2175, 2189, 2203,
- 2037, 2219, 2038, 2193, 2220, 2217, 2358, 2359,
- 2360, 2372, 2374, 2387, 2388, 2218, 2373, 2361,
- 2386, 2401, 2375, 2402, 2400, 2207, 2371, 2385,
- 2399, 2233, 2415, 2234, 2389, 2416, 1577, 1591,
- 1773, 1578, 1605, 1787, 1592, 1774, 1801, 1579,
- 1606, 1788, 1593, 1775, 1802, 1580, 1607, 1789,
- 1594, 1776, 1803, 1619, 1620, 1621, 1790, 1633,
- 1815, 1816, 1634, 1817, 1608, 1635, 1829, 1647,
- 1830, 1648, 1622, 1649, 1804, 1831, 1969, 1970,
- 1971, 1983, 1984, 1985, 1997, 1998, 1972, 1999,
- 2011, 2012, 1986, 2013, 1818, 1843, 2025, 1844,
- 2026, 1845, 2000, 2027, 2165, 2166, 2167, 2179,
- 2180, 2181, 2193, 2194, 2182, 2168, 2195, 2207,
- 2208, 2209, 2039, 2221, 2040, 2222, 2014, 2041,
- 2196, 2223, 2361, 2362, 2363, 2375, 2376, 2364,
- 2391, 2389, 2378, 2377, 2390, 2403, 2404, 2405,
- 2235, 2417, 2236, 2418, 2210, 2237, 2392, 2419,
- 1580, 1594, 1776, 1581, 1608, 1790, 1595, 1777,
- 1804, 1622, 1609, 1791, 1636, 1818, 1623, 1805,
- 1650, 1832, 1972, 1986, 1819, 1973, 2000, 1987,
- 2014, 2001, 1846, 2028, 2168, 2182, 2196, 2015,
- 2169, 2183, 2210, 2197, 2042, 2224, 2364, 2378,
- 2365, 2392, 2211, 2379, 2406, 2393, 2238, 2420,
- 1637, 1664, 1651, 1833, 1860, 1665, 1847, 1678,
- 1874, 2029, 1861, 2056, 2043, 2057, 2225, 2252,
- 2070, 2239, 2407, 2434, 2253, 2421, 2448, 2266,
- 2435, 1611, 1624, 1793, 1806, 1625, 1638, 1780,
- 1794, 1807, 1820, 1612, 1626, 1639, 1781, 1795,
- 1808, 1821, 1613, 1627, 1640, 1782, 1796, 1809,
- 1822, 1834, 1835, 1652, 1653, 1641, 1654, 1810,
- 1823, 1836, 1848, 1849, 1655, 1824, 1837, 1850,
- 1667, 1851, 1975, 1988, 1989, 2002, 1976, 1990,
- 2003, 1977, 1991, 2004, 2016, 2017, 2005, 2018,
- 2030, 2031, 2019, 2032, 2044, 2045, 1838, 2033,
- 2046, 1978, 1992, 2006, 1862, 1863, 1864, 2020,
- 2047, 2171, 2184, 2185, 2198, 2172, 2186, 2199,
- 2173, 2187, 2200, 2212, 2213, 2201, 2214, 2226,
- 2227, 2215, 2228, 2240, 2059, 2241, 2034, 2060,
- 2229, 2242, 2174, 2188, 2202, 2058, 2216, 2243,
- 2367, 2380, 2381, 2394, 2368, 2382, 2395, 2369,
- 2383, 2396, 2408, 2409, 2397, 2410, 2422, 2423,
- 2411, 2424, 2436, 2255, 2437, 2230, 2425, 2438,
- 2370, 2384, 2398, 2254, 2256, 2412, 1627, 1796,
- 1809, 1614, 1628, 1641, 1783, 1797, 1810, 1823,
- 1615, 1629, 1642, 1784, 1798, 1811, 1824, 1616,
- 1630, 1643, 1812, 1825, 1822, 1836, 1837, 1838,
- 1655, 1656, 1644, 1657, 1826, 1839, 1850, 1851,
- 1852, 1658, 1840, 1853, 1668, 1854, 1978, 1991,
- 1992, 2005, 1979, 1993, 2006, 1980, 1994, 2007,
- 2019, 2020, 2008, 2021, 2033, 2034, 2022, 2035,
- 1865, 2047, 2048, 1867, 2036, 2049, 2018, 2032,
- 2046, 1864, 1866, 2050, 2174, 2187, 2188, 2201,
- 2175, 2189, 2202, 2176, 2190, 2203, 2215, 2216,
- 2204, 2217, 2229, 2230, 2218, 2231, 2061, 2243,
- 2244, 2232, 2245, 2214, 2228, 2242, 2060, 2062,
- 2063, 2246, 2370, 2383, 2384, 2397, 2371, 2385,
- 2398, 2372, 2386, 2399, 2411, 2412, 2400, 2413,
- 2425, 2426, 2414, 2427, 2439, 2440, 2428, 2441,
- 2410, 2424, 2438, 2256, 2257, 2258, 2259, 1630,
- 1812, 1617, 1644, 1799, 1826, 1631, 1813, 1604,
- 1618, 1645, 1786, 1800, 1827, 1632, 1814, 1605,
- 1619, 1646, 1787, 1801, 1828, 1825, 1839, 1659,
- 1841, 1633, 1660, 1815, 1842, 1658, 1840, 1853,
- 1855, 1856, 1647, 1829, 1854, 1672, 1673, 1674,
- 1661, 1843, 1981, 1982, 2010, 2009, 1997, 1995,
- 2022, 2024, 2011, 2036, 2037, 2038, 1869, 1994,
- 2008, 1996, 2023, 1983, 2051, 2025, 2052, 2050,
- 1868, 1870, 1857, 2021, 2035, 2049, 1867, 2039,
- 2177, 2205, 2206, 2192, 2219, 2193, 2218, 2220,
- 2233, 2207, 2232, 2234, 2190, 2204, 2191, 2178,
- 2179, 2247, 2221, 2248, 2246, 2064, 2065, 2066,
- 2053, 2217, 2231, 2245, 2063, 2235, 2401, 2402,
- 2388, 2415, 2389, 2414, 2416, 2429, 2403, 2430,
- 2386, 2400, 2373, 2387, 2374, 2375, 2428, 2443,
- 2417, 2444, 2442, 2260, 2261, 2262, 2413, 2427,
- 2441, 2259, 2249, 2431, 1619, 1633, 1801, 1815,
- 1606, 1620, 1647, 1788, 1802, 1829, 1816, 1634,
- 1607, 1621, 1648, 1789, 1803, 1830, 1635, 1817,
- 1608, 1622, 1649, 1790, 1804, 1831, 1843, 1661,
- 1844, 1662, 1636, 1663, 1818, 1845, 1857, 1858,
- 1650, 1832, 1859, 1675, 1676, 1677, 1664, 1846,
- 2011, 1985, 1986, 1998, 2012, 2013, 2025, 1999,
- 2026, 2014, 2041, 2039, 2040, 1873, 2028, 1997,
- 1984, 2000, 2027, 2053, 2054, 2055, 1871, 1872,
- 1860, 2042, 2067, 2180, 2181, 2209, 2207, 2208,
- 2196, 2194, 2223, 2221, 2210, 2236, 2237, 2235,
- 2068, 2193, 2195, 2222, 2182, 2249, 2250, 2224,
- 2251, 2069, 2056, 2238, 2376, 2405, 2403, 2391,
- 2392, 2418, 2419, 2406, 2432, 2433, 2264, 2389,
- 2390, 2417, 2404, 2377, 2378, 2431, 2263, 2445,
- 2446, 2420, 2447, 2265, 2252, 2434, 1835, 1848,
- 1653, 1666, 1822, 1836, 1849, 1654, 1667, 1823,
- 1837, 1850, 1863, 1655, 1668, 1824, 1838, 1851,
- 1862, 1864, 1669, 1852, 1865, 1680, 1681, 1682,
- 1876, 1877, 1878, 1683, 1866, 1879, 1694, 1695,
- 1696, 1890, 1891, 1892, 1697, 1880, 2044, 2045,
- 2046, 2047, 2058, 2059, 2060, 2061, 2072, 2073,
- 2074, 2075, 2017, 2030, 2031, 2018, 2032, 2019,
- 2033, 1893, 2020, 2034, 2048, 2062, 2086, 2087,
- 2088, 2076, 2240, 2241, 2229, 2242, 2243, 2254,
- 2255, 2256, 2257, 2268, 2269, 2270, 2271, 2213,
- 2226, 2227, 2214, 2228, 2215, 2089, 2216, 2230,
- 2244, 2258, 2282, 2283, 2284, 2272, 2423, 2436,
- 2424, 2437, 2425, 2438, 2439, 2450, 2451, 2452,
- 2453, 2464, 2465, 2466, 2467, 2409, 2422, 2410,
- 2411, 2440, 2285, 2412, 2426, 2454, 2478, 2479,
- 2480, 1838, 1851, 1656, 1669, 1825, 1839, 1852,
- 1657, 1670, 1826, 1840, 1853, 1658, 1671, 1854,
- 1864, 1865, 1866, 1867, 1672, 1868, 1683, 1684,
- 1685, 1878, 1879, 1880, 1881, 1686, 1882, 1697,
- 1698, 1699, 1892, 1893, 1894, 1895, 1700, 2034,
- 2047, 2035, 2048, 2036, 2049, 2050, 2061, 2062,
- 2063, 2064, 2075, 2076, 2077, 2078, 2020, 2033,
- 2021, 2022, 1896, 2060, 2074, 2088, 2089, 2090,
- 2091, 2230, 2243, 2244, 2245, 2246, 2257, 2258,
- 2259, 2260, 2271, 2272, 2273, 2274, 2216, 2229,
- 2217, 2231, 2218, 2232, 2092, 2256, 2270, 2284,
- 2285, 2286, 2287, 2426, 2439, 2427, 2440, 2441,
- 2442, 2453, 2454, 2455, 2456, 2467, 2468, 2469,
- 2470, 2412, 2425, 2413, 2414, 2428, 2288, 2452,
- 2466, 2480, 2481, 2482, 2483, 1854, 1659, 1672,
- 1841, 1855, 1868, 1646, 1660, 1673, 1828, 1842,
- 1869, 1856, 1647, 1661, 1674, 1829, 1843, 1870,
- 1857, 1867, 2051, 2052, 1675, 1686, 1687, 1688,
- 1871, 1884, 1881, 1882, 2064, 1883, 2065, 2066,
- 1700, 1701, 1689, 1702, 1897, 1885, 1898, 2067,
- 2080, 1895, 1896, 2079, 2078, 2024, 2037, 2025,
- 2038, 2050, 2039, 2053, 2036, 2023, 2092, 2093,
- 2081, 2094, 2063, 2077, 2091, 2248, 2261, 2262,
- 2260, 2263, 2275, 2276, 2274, 2220, 2233, 2247,
- 2221, 2234, 2219, 2232, 2246, 2235, 2249, 2288,
- 2289, 2277, 2290, 2259, 2273, 2287, 2443, 2444,
- 2456, 2457, 2458, 2445, 2459, 2471, 2472, 2470,
- 2416, 2429, 2417, 2430, 2415, 2428, 2442, 2431,
- 2484, 2485, 2473, 2486, 2455, 2469, 2483, 1661,
- 1843, 1857, 1648, 1662, 1675, 1830, 1844, 1871,
- 1858, 1649, 1663, 1676, 1831, 1845, 1872, 1859,
- 1650, 1664, 1677, 1832, 1846, 1873, 1860, 2053,
- 2054, 2055, 1678, 1689, 1885, 1690, 1691, 1874,
- 2067, 1886, 2068, 1887, 2069, 2056, 1703, 1704,
- 1692, 1705, 1899, 2081, 1900, 1888, 1901, 2070,
- 2082, 2083, 2026, 2039, 2027, 2040, 2028, 2041,
- 2042, 2095, 2096, 2084, 2097, 2250, 2251, 2263,
- 2264, 2265, 2277, 2266, 2278, 2279, 2222, 2235,
- 2249, 2223, 2236, 2224, 2237, 2238, 2252, 2291,
- 2292, 2280, 2293, 2445, 2446, 2447, 2459, 2460,
- 2461, 2473, 2474, 2462, 2475, 2418, 2431, 2419,
- 2432, 2420, 2433, 2434, 2448, 2487, 2488, 2476,
- 2489, 1664, 1846, 1860, 1651, 1665, 1678, 1833,
- 1847, 1874, 1861, 2056, 1679, 1875, 1692, 1888,
- 2070, 1693, 1706, 1889, 2071, 1902, 2084, 1707,
- 2029, 2042, 2043, 2057, 1903, 2085, 2098, 2252,
- 2266, 2267, 2280, 2225, 2238, 2239, 2253, 2099,
- 2281, 2294, 2448, 2462, 2449, 2463, 2476, 2421,
- 2434, 2435, 2295, 2477, 2490, 1694, 1695, 1877,
- 1890, 1878, 1891, 1696, 1879, 1892, 1697, 1880,
- 1893, 1708, 1709, 1710, 1904, 1905, 1906, 1711,
- 1894, 1907, 1722, 1723, 1724, 1918, 1919, 1920,
- 1725, 1908, 1921, 1736, 1737, 1738, 1932, 1933,
- 1934, 1739, 1922, 2073, 2074, 2075, 2086, 2087,
- 2088, 2089, 2100, 2101, 2102, 2103, 2114, 2115,
- 2116, 2117, 1935, 2076, 2090, 2104, 2128, 2129,
- 2130, 2118, 2269, 2270, 2271, 2282, 2283, 2284,
- 2285, 2296, 2297, 2298, 2299, 2310, 2311, 2312,
- 2313, 2131, 2272, 2286, 2300, 2324, 2325, 2326,
- 2314, 2465, 2466, 2467, 2478, 2479, 2480, 2481,
- 2492, 2493, 2494, 2495, 2506, 2507, 2508, 2509,
- 2327, 2468, 2482, 2496, 2520, 2521, 2522, 1697,
- 1698, 1880, 1892, 1893, 1881, 1894, 1699, 1882,
- 1895, 1700, 1896, 1711, 1712, 1713, 1906, 1907,
- 1908, 1909, 1714, 1910, 1725, 1726, 1727, 1920,
- 1921, 1922, 1923, 1728, 1924, 1739, 1740, 1741,
- 1934, 1935, 1936, 1937, 1742, 2076, 2077, 2078,
- 2089, 2090, 2091, 2092, 2103, 2104, 2105, 2106,
- 2117, 2118, 2119, 2120, 1938, 2088, 2102, 2116,
- 2130, 2131, 2132, 2133, 2272, 2273, 2274, 2285,
- 2286, 2287, 2288, 2299, 2300, 2301, 2302, 2313,
- 2314, 2315, 2316, 2134, 2284, 2298, 2312, 2326,
- 2327, 2328, 2329, 2468, 2469, 2470, 2481, 2482,
- 2483, 2484, 2495, 2496, 2497, 2498, 2509, 2510,
- 2511, 2512, 2330, 2480, 2494, 2508, 2522, 2523,
- 2524, 2525, 1700, 1883, 1895, 1896, 1701, 1714,
- 1897, 2079, 1884, 1702, 1715, 1898, 2080, 1885,
- 1703, 1716, 1911, 2093, 1899, 1912, 2081, 2094,
- 1909, 1910, 2092, 1728, 1729, 1717, 1730, 1925,
- 2107, 1913, 1926, 2095, 1923, 1924, 2108, 2106,
- 1742, 1743, 1731, 1744, 1939, 1927, 1940, 2109,
- 1937, 1938, 2120, 2121, 2122, 2134, 2135, 2123,
- 2136, 2091, 2105, 2119, 2133, 2275, 2276, 2277,
- 2290, 2289, 2288, 2303, 2291, 2304, 2302, 2305,
- 2316, 2317, 2318, 2330, 2331, 2319, 2332, 2287,
- 2301, 2315, 2329, 2471, 2472, 2473, 2486, 2484,
- 2485, 2499, 2487, 2500, 2498, 2513, 2501, 2512,
- 2514, 2526, 2527, 2515, 2528, 2483, 2497, 2511,
- 2525, 1703, 1885, 1899, 2081, 1886, 1704, 1717,
- 1900, 2082, 1887, 1705, 1718, 1901, 2083, 1888,
- 1706, 1719, 1913, 1914, 1902, 1915, 2084, 2097,
- 2095, 2096, 1731, 1732, 1720, 1733, 1927, 1928,
- 2110, 1916, 1929, 2098, 2111, 2109, 1745, 1746,
- 1734, 1747, 1941, 2123, 1942, 2124, 1930, 1943,
- 2112, 2125, 2137, 2138, 2126, 2139, 2277, 2278,
- 2279, 2280, 2291, 2292, 2293, 2294, 2307, 2305,
- 2306, 2320, 2308, 2319, 2321, 2333, 2334, 2322,
- 2335, 2473, 2474, 2475, 2487, 2476, 2488, 2489,
- 2490, 2503, 2501, 2502, 2516, 2504, 2517, 2515,
- 2529, 2530, 2518, 2531, 1706, 1888, 1902, 2084,
- 1889, 1707, 1720, 1903, 2085, 1916, 2098, 1721,
- 1734, 1917, 2099, 1930, 2112, 1735, 1748, 1931,
- 2113, 1944, 2126, 1749, 1945, 2127, 2140, 2280,
- 2281, 2294, 2295, 2308, 2309, 2322, 2141, 2323,
- 2336, 2476, 2477, 2490, 2491, 2504, 2505, 2518,
- 2337, 2519, 2532, 1736, 1737, 1919, 1932, 1920,
- 1933, 1738, 1921, 1934, 1739, 1922, 1935, 1750,
- 1751, 1752, 1946, 1947, 1948, 1753, 1936, 1949,
- 2115, 2116, 2117, 2128, 2129, 2130, 2131, 2142,
- 2143, 2144, 2118, 2132, 2145, 2311, 2312, 2313,
- 2324, 2325, 2326, 2327, 2338, 2339, 2340, 2314,
- 2328, 2341, 2507, 2508, 2509, 2520, 2521, 2522,
- 2523, 2534, 2535, 2536, 2510, 2524, 1739, 1740,
- 1922, 1934, 1935, 1923, 1936, 1741, 1924, 1937,
- 1742, 1938, 1753, 1754, 1755, 1948, 1949, 1950,
- 1951, 1756, 1952, 2118, 2119, 2120, 2131, 2132,
- 2133, 2134, 2145, 2146, 2147, 2130, 2144, 2148,
- 2314, 2315, 2316, 2327, 2328, 2329, 2330, 2341,
- 2342, 2343, 2326, 2340, 2344, 2510, 2511, 2512,
- 2523, 2524, 2525, 2526, 2537, 2538, 2539, 2522,
- 2536, 1742, 1925, 1937, 1938, 1743, 1756, 1939,
- 2121, 1926, 1744, 1757, 1940, 2122, 1927, 1745,
- 1758, 1953, 1941, 1954, 2123, 2136, 1951, 1952,
- 2134, 2135, 1759, 2149, 1955, 2137, 2150, 2148,
- 2133, 2147, 2317, 2318, 2319, 2331, 2332, 2330,
- 2345, 2151, 2333, 2346, 2344, 2329, 2343, 2513,
- 2514, 2515, 2527, 2528, 2526, 2541, 2347, 2529,
- 2542, 2540, 2525, 2539, 1745, 1927, 1941, 2123,
- 1928, 1746, 1759, 1942, 2124, 1929, 1747, 1760,
- 1943, 2125, 1930, 1748, 1761, 1955, 2137, 1956,
- 1944, 1957, 2126, 2138, 2139, 1762, 2151, 2152,
- 1958, 2140, 2153, 2319, 2320, 2321, 2333, 2322,
- 2334, 2335, 2347, 2348, 2154, 2336, 2349, 2515,
- 2516, 2517, 2529, 2530, 2518, 2531, 2543, 2544,
- 2350, 2532, 2545, 1748, 1930, 1944, 2126, 1931,
- 1749, 1762, 1945, 2127, 1958, 2140, 1763, 1959,
- 2141, 2154, 2322, 2323, 2336, 2155, 2337, 2350,
- 2518, 2519, 2532, 2351, 2533, 2546, 2157, 2170,
- 2352, 2171, 2184, 2353, 2366, 2158, 2172, 2185,
- 2354, 2367, 2159, 2173, 2186, 2355, 2368, 2380,
- 2381, 2198, 2199, 2187, 2200, 2356, 2369, 2382,
- 2394, 2395, 2212, 2213, 2201, 2214, 2370, 2383,
- 2396, 2408, 2409, 2397, 2410, 2548, 2549, 2550,
- 2562, 2563, 2551, 2564, 2576, 2577, 2565, 2578,
- 2590, 2591, 2384, 2579, 2592, 2552, 2566, 2604,
- 2605, 2173, 2355, 2160, 2174, 2187, 2356, 2369,
- 2161, 2175, 2188, 2357, 2370, 2162, 2176, 2189,
- 2358, 2371, 2368, 2382, 2383, 2384, 2201, 2202,
- 2190, 2203, 2372, 2385, 2396, 2397, 2398, 2215,
- 2216, 2204, 2217, 2386, 2399, 2410, 2411, 2412,
- 2400, 2413, 2551, 2552, 2553, 2565, 2566, 2554,
- 2567, 2579, 2580, 2568, 2581, 2593, 2594, 2582,
- 2595, 2564, 2578, 2592, 2606, 2607, 2608, 2176,
- 2358, 2163, 2190, 2359, 2372, 2177, 2164, 2191,
- 2373, 2178, 2360, 2387, 2165, 2192, 2374, 2179,
- 2361, 2388, 2371, 2385, 2205, 2206, 2204, 2386,
- 2399, 2401, 2219, 2193, 2220, 2375, 2402, 2218,
- 2400, 2413, 2233, 2415, 2207, 2234, 2389, 2416,
- 2555, 2556, 2554, 2568, 2569, 2570, 2557, 2414,
- 2583, 2584, 2582, 2597, 2571, 2598, 2596, 2403,
- 2567, 2581, 2595, 2429, 2611, 2430, 2585, 2612,
- 2609, 2165, 2179, 2361, 2166, 2193, 2375, 2180,
- 2362, 2389, 2167, 2194, 2376, 2181, 2363, 2390,
- 2168, 2195, 2377, 2182, 2364, 2391, 2207, 2208,
- 2209, 2378, 2221, 2403, 2404, 2222, 2405, 2196,
- 2223, 2392, 2235, 2417, 2418, 2236, 2419, 2210,
- 2237, 2557, 2558, 2559, 2572, 2571, 2573, 2560,
- 2586, 2587, 2585, 2599, 2600, 2574, 2601, 2406,
- 2431, 2613, 2432, 2614, 2433, 2588, 2615, 2249,
- 2250, 2224, 2251, 2445, 2446, 2238, 2420, 2447,
- 2263, 2264, 2265, 2252, 2434, 2461, 2602, 2627,
- 2628, 2629, 2641, 2642, 2616, 2643, 2459, 2460,
- 2448, 2630, 2168, 2182, 2364, 2169, 2196, 2378,
- 2183, 2365, 2392, 2210, 2197, 2379, 2224, 2406,
- 2211, 2393, 2238, 2420, 2560, 2574, 2561, 2588,
- 2407, 2575, 2602, 2589, 2434, 2616, 2225, 2252,
- 2239, 2421, 2448, 2253, 2435, 2266, 2630, 2462,
- 2449, 2603, 2617, 2644, 2631, 2212, 2381, 2394,
- 2199, 2213, 2226, 2368, 2382, 2395, 2408, 2200,
- 2214, 2227, 2369, 2383, 2396, 2409, 2201, 2215,
- 2228, 2370, 2384, 2397, 2410, 2422, 2423, 2240,
- 2241, 2229, 2242, 2398, 2411, 2424, 2436, 2437,
- 2243, 2412, 2425, 2438, 2255, 2439, 2563, 2576,
- 2577, 2590, 2564, 2578, 2591, 2565, 2579, 2592,
- 2604, 2605, 2593, 2606, 2618, 2619, 2607, 2620,
- 2632, 2633, 2426, 2621, 2634, 2566, 2580, 2594,
- 2450, 2451, 2452, 2608, 2202, 2215, 2384, 2397,
- 2216, 2229, 2371, 2385, 2398, 2411, 2203, 2217,
- 2230, 2372, 2386, 2399, 2412, 2204, 2218, 2231,
- 2400, 2413, 2410, 2424, 2425, 2426, 2243, 2244,
- 2232, 2245, 2414, 2427, 2438, 2439, 2440, 2246,
- 2428, 2441, 2256, 2257, 2442, 2566, 2579, 2580,
- 2593, 2567, 2581, 2594, 2568, 2582, 2595, 2607,
- 2608, 2596, 2609, 2621, 2622, 2610, 2623, 2453,
- 2635, 2636, 2455, 2624, 2637, 2606, 2620, 2634,
- 2452, 2454, 2218, 2400, 2205, 2232, 2387, 2401,
- 2414, 2219, 2192, 2206, 2233, 2374, 2388, 2415,
- 2220, 2402, 2193, 2207, 2234, 2375, 2389, 2416,
- 2413, 2427, 2247, 2429, 2221, 2248, 2403, 2430,
- 2246, 2428, 2441, 2443, 2235, 2417, 2444, 2442,
- 2259, 2260, 2261, 2457, 2262, 2249, 2431, 2570,
- 2597, 2598, 2583, 2610, 2584, 2611, 2626, 2625,
- 2458, 2582, 2596, 2569, 2571, 2585, 2612, 2599,
- 2624, 2639, 2613, 2640, 2456, 2638, 2445, 2609,
- 2623, 2637, 2455, 2627, 2241, 2423, 2436, 2254,
- 2410, 2424, 2437, 2242, 2255, 2411, 2425, 2438,
- 2451, 2243, 2256, 2412, 2426, 2439, 2450, 2452,
- 2257, 2440, 2453, 2268, 2269, 2270, 2464, 2465,
- 2466, 2271, 2454, 2467, 2282, 2283, 2284, 2478,
- 2479, 2480, 2285, 2468, 2632, 2633, 2634, 2635,
- 2646, 2647, 2648, 2649, 2660, 2661, 2662, 2663,
- 2605, 2618, 2619, 2606, 2620, 2607, 2621, 2481,
- 2608, 2622, 2636, 2650, 2674, 2675, 2676, 2664,
- 2244, 2426, 2439, 2257, 2413, 2427, 2440, 2453,
- 2245, 2258, 2414, 2428, 2441, 2246, 2259, 2442,
- 2452, 2454, 2455, 2260, 2456, 2271, 2272, 2273,
- 2466, 2467, 2468, 2469, 2274, 2470, 2285, 2286,
- 2287, 2480, 2481, 2482, 2483, 2288, 2635, 2623,
- 2636, 2637, 2638, 2649, 2650, 2651, 2652, 2663,
- 2664, 2665, 2666, 2608, 2621, 2622, 2609, 2610,
- 2624, 2484, 2648, 2662, 2676, 2677, 2678, 2679,
- 2442, 2247, 2260, 2429, 2443, 2456, 2234, 2248,
- 2261, 2416, 2430, 2457, 2444, 2235, 2249, 2262,
- 2417, 2431, 2458, 2445, 2455, 2640, 2263, 2274,
- 2275, 2276, 2459, 2472, 2469, 2470, 2471, 2653,
- 2654, 2641, 2652, 2288, 2289, 2277, 2290, 2485,
- 2473, 2486, 2655, 2483, 2484, 2667, 2668, 2666,
- 2611, 2612, 2625, 2639, 2613, 2626, 2624, 2638,
- 2627, 2680, 2681, 2669, 2682, 2651, 2665, 2679,
- 2249, 2431, 2445, 2236, 2250, 2263, 2418, 2432,
- 2459, 2446, 2237, 2251, 2264, 2419, 2433, 2460,
- 2447, 2238, 2252, 2265, 2420, 2434, 2461, 2641,
- 2642, 2448, 2266, 2277, 2473, 2278, 2474, 2279,
- 2462, 2655, 2656, 2475, 2657, 2291, 2292, 2280,
- 2293, 2487, 2669, 2488, 2476, 2489, 2658, 2670,
- 2671, 2614, 2627, 2615, 2628, 2616, 2629, 2643,
- 2630, 2644, 2683, 2684, 2672, 2685, 2252, 2434,
- 2448, 2239, 2253, 2266, 2421, 2435, 2462, 2449,
- 2644, 2267, 2463, 2280, 2476, 2658, 2281, 2294,
- 2477, 2659, 2490, 2672, 2295, 2617, 2630, 2631,
- 2645, 2491, 2673, 2686, 2282, 2283, 2465, 2478,
- 2466, 2479, 2284, 2467, 2480, 2285, 2468, 2481,
- 2296, 2297, 2298, 2492, 2493, 2494, 2299, 2482,
- 2495, 2310, 2311, 2312, 2506, 2507, 2508, 2313,
- 2496, 2509, 2324, 2325, 2326, 2520, 2521, 2522,
- 2327, 2510, 2661, 2662, 2663, 2674, 2675, 2676,
- 2677, 2688, 2689, 2690, 2691, 2702, 2703, 2704,
- 2705, 2523, 2664, 2678, 2692, 2716, 2717, 2718,
- 2706, 2285, 2286, 2468, 2480, 2481, 2469, 2482,
- 2287, 2470, 2483, 2288, 2484, 2299, 2300, 2301,
- 2494, 2495, 2496, 2497, 2302, 2498, 2313, 2314,
- 2315, 2508, 2509, 2510, 2511, 2316, 2512, 2327,
- 2328, 2329, 2522, 2523, 2524, 2525, 2330, 2664,
- 2665, 2666, 2677, 2678, 2679, 2680, 2691, 2692,
- 2693, 2694, 2705, 2706, 2707, 2708, 2526, 2676,
- 2690, 2704, 2718, 2719, 2720, 2721, 2288, 2471,
- 2483, 2484, 2289, 2302, 2485, 2667, 2472, 2290,
- 2303, 2486, 2668, 2473, 2291, 2304, 2499, 2487,
- 2500, 2669, 2682, 2497, 2498, 2680, 2681, 2316,
- 2317, 2305, 2318, 2513, 2695, 2501, 2514, 2683,
- 2511, 2512, 2696, 2694, 2330, 2331, 2319, 2332,
- 2527, 2515, 2528, 2697, 2525, 2526, 2709, 2710,
- 2708, 2722, 2723, 2711, 2724, 2679, 2693, 2707,
- 2721, 2291, 2473, 2487, 2669, 2474, 2292, 2305,
- 2488, 2670, 2475, 2293, 2306, 2489, 2671, 2476,
- 2294, 2307, 2501, 2502, 2490, 2503, 2672, 2683,
- 2684, 2685, 2319, 2320, 2308, 2321, 2515, 2516,
- 2504, 2517, 2686, 2699, 2697, 2698, 2333, 2334,
- 2322, 2335, 2529, 2530, 2712, 2518, 2531, 2700,
- 2711, 2713, 2725, 2726, 2714, 2727, 2294, 2476,
- 2490, 2672, 2477, 2295, 2308, 2491, 2673, 2504,
- 2686, 2309, 2322, 2505, 2687, 2518, 2700, 2323,
- 2336, 2519, 2701, 2532, 2714, 2337, 2533, 2715,
- 2728, 2324, 2325, 2507, 2520, 2508, 2521, 2326,
- 2509, 2522, 2327, 2510, 2523, 2338, 2339, 2340,
- 2534, 2535, 2536, 2341, 2524, 2537, 2703, 2704,
- 2705, 2716, 2717, 2718, 2719, 2730, 2731, 2732,
- 2706, 2720, 2733, 2327, 2328, 2510, 2522, 2523,
- 2511, 2524, 2329, 2512, 2525, 2330, 2526, 2341,
- 2342, 2343, 2536, 2537, 2538, 2539, 2344, 2540,
- 2706, 2707, 2708, 2719, 2720, 2721, 2722, 2733,
- 2734, 2735, 2718, 2732, 2736, 2330, 2513, 2525,
- 2526, 2331, 2344, 2527, 2709, 2514, 2332, 2345,
- 2528, 2710, 2515, 2333, 2346, 2541, 2529, 2542,
- 2711, 2539, 2540, 2723, 2724, 2722, 2347, 2737,
- 2543, 2725, 2738, 2736, 2721, 2735, 2333, 2515,
- 2529, 2711, 2516, 2334, 2347, 2530, 2712, 2517,
- 2335, 2348, 2531, 2713, 2518, 2336, 2349, 2543,
- 2725, 2544, 2532, 2545, 2714, 2726, 2727, 2350,
- 2739, 2740, 2546, 2728, 2741, 2336, 2518, 2532,
- 2714, 2519, 2337, 2350, 2533, 2715, 2546, 2728,
- 2351, 2547, 2729, 2742, 2743,
-};
-
-static long _vq_fitmap_lsp30_1[] = {
- 0, 83, 166, 254, 342, 406, 495, 584,
- 697, 816, 871, 977, 1079, 1193, 1304, 1388,
- 1494, 1596, 1701, 1800, 1877, 1938, 2028, 2118,
- 2180, 2226, 2316, 2406, 2516, 342, 2635, 2725,
- 2815, 2949, 3091, 3155, 3289, 3417, 3559, 1304,
- 3694, 3834, 3970, 4100, 1800, 4220, 1938, 2028,
- 4294, 2180, 4366, 4468, 4574, 4697, 4813, 4866,
- 4997, 5126, 5267, 5402, 5462, 5597, 5725, 5856,
- 5975, 6034, 6158, 6281, 6402, 6510, 6565, 6632,
- 6697, 6765, 6830, 6861, 6962, 7067, 7182, 7288,
- 7361, 7494, 7623, 7756, 7288, 7878, 8001, 8117,
- 8231, 8337, 8389, 8495, 8602, 8705, 8796, 8843,
- 8902, 8961, 9020, 9075, 9102, 9161, 9223, 9289,
- 9378, 9421, 9492, 9562, 9289, 9378, 9636, 9704,
- 9768, 9832, 9894, 9924, 9985, 10046, 10105, 10158,
- 10185, 10219, 10253, 10286, 10317,
-};
-
-static long _vq_fitlength_lsp30_1[] = {
- 83, 83, 88, 88, 64, 89, 89, 113,
- 119, 55, 106, 102, 114, 111, 84, 106,
- 102, 105, 99, 77, 61, 90, 90, 62,
- 46, 90, 90, 110, 119, 64, 90, 90,
- 134, 142, 64, 134, 128, 142, 135, 84,
- 140, 136, 130, 120, 77, 74, 90, 90,
- 72, 46, 102, 106, 123, 116, 53, 131,
- 129, 141, 135, 60, 135, 128, 131, 119,
- 59, 124, 123, 121, 108, 55, 67, 65,
- 68, 65, 31, 101, 105, 115, 106, 73,
- 133, 129, 133, 122, 73, 123, 116, 114,
- 106, 52, 106, 107, 103, 91, 47, 59,
- 59, 59, 55, 27, 59, 62, 66, 89,
- 43, 71, 70, 74, 89, 43, 68, 64,
- 64, 62, 30, 61, 61, 59, 53, 27,
- 34, 34, 33, 31, 16,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp30_1 = {
- 0.083, 0.001, 39, 5,
- _vq_pigeonmap_lsp30_1,
- 10333,
- _vq_fitlist_lsp30_1,
- _vq_fitmap_lsp30_1,
- _vq_fitlength_lsp30_1
-};
-
-static static_codebook _vq_book_lsp30_1 = {
- 3, 2744,
- _vq_lengthlist_lsp30_1,
- 1, 1603616637, 1590714958, 6, 1,
- _vq_quantlist_lsp30_1,
- NULL,
- NULL,
- &_vq_auxp_lsp30_1,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp9_0.vqh b/lib/books/lsp9_0.vqh
deleted file mode 100644
index fa59ae411dac890112e600c79b3490fcef93d4e1..0000000000000000000000000000000000000000
--- a/lib/books/lsp9_0.vqh
+++ /dev/null
@@ -1,122 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_lsp9_0_VQH_
-#define _V_lsp9_0_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp9_0[] = {
- 0,
- 5,
- 10,
- 15,
- 25,
- 30,
- 35,
- 40,
- 46,
- 52,
- 56,
- 60,
- 65,
- 70,
- 76,
- 82,
- 88,
- 95,
- 102,
- 111,
- 121,
- 132,
- 145,
- 170,
- 220,
-};
-
-static long _vq_lengthlist_lsp9_0[] = {
- 7,10, 8, 7, 6, 7, 9, 5, 5, 5, 5, 4, 3, 3, 3, 3,
- 4, 4, 6, 6, 4, 6, 6,10, 6,
-};
-
-static long _vq_pigeonmap_lsp9_0[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 4,
- 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4,
- 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8,
-};
-
-static long _vq_fitlist_lsp9_0[] = {
- 0, 1, 2, 3, 3, 4, 5, 6,
- 6, 7, 8, 9, 9, 10, 11, 12,
- 12, 13, 14, 15, 15, 16, 17, 18,
- 18, 19, 20, 21, 21, 22, 23, 24,
-};
-
-static long _vq_fitmap_lsp9_0[] = {
- 0, 4, 8, 12, 16, 20, 24, 28,
- 28,
-};
-
-static long _vq_fitlength_lsp9_0[] = {
- 4, 4, 4, 4, 4, 4, 4, 4,
- 4,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp9_0 = {
- 0.16, 0.002, 220, 9,
- _vq_pigeonmap_lsp9_0,
- 32,
- _vq_fitlist_lsp9_0,
- _vq_fitmap_lsp9_0,
- _vq_fitlength_lsp9_0
-};
-
-static static_codebook _vq_book_lsp9_0 = {
- 1, 25,
- _vq_lengthlist_lsp9_0,
- 1, 1605663457, 1592812110, 8, 1,
- _vq_quantlist_lsp9_0,
- NULL,
- NULL,
- &_vq_auxp_lsp9_0,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp9_1.vqh b/lib/books/lsp9_1.vqh
deleted file mode 100644
index 80ae3d3cce63afb313a995b3102bb7ee7fd470da..0000000000000000000000000000000000000000
--- a/lib/books/lsp9_1.vqh
+++ /dev/null
@@ -1,880 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_lsp9_1_VQH_
-#define _V_lsp9_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp9_1[] = {
- 0,
- 6,
- 10,
- 14,
- 19,
- 24,
- 30,
- 36,
- 42,
- 49,
- 56,
- 65,
-};
-
-static long _vq_lengthlist_lsp9_1[] = {
- 17,17,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,
- 16,16,16,16,15,15,14,16,16,16,16,16,16,16,16,16,
- 15,12,14,16,16,15,16,16,16,14,16,16,15,11,13,14,
- 14,15,16,16,14,16,16,16,15,16,15,14,14,16,16,16,
- 16,16,16,16,16,16,14,13,15,16,16,16,16,16,15,15,
- 14,14,14,15,16,16,16,16,16,16,16,15,16,16,14,16,
- 16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,14,15,
- 16,16,16,16,15,14,15,14,14,15,14,16,16,16,15,16,
- 15,11,13,16,14,14,16,16,16,16,15,16,14,11,13,13,
- 13,14,16,15,16,16,16,16,16,13,13,13,14,16,16,16,
- 16,16,16,16,14,13,14,12,14,16,16,16,16,16,16,15,
- 14,14,14,15,14,16,16,16,16,16,15,15,15,16,15,15,
- 14,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,15,16,15,16,16,16,16,16,16,15,16,16,15,15,16,
- 16,16,16,16,15,12,12,14,15,14,16,15,15,16,16,16,
- 13,10,11,12,13,14,16,16,16,16,16,16,12,11,10,11,
- 12,14,14,16,16,16,16,14,13,11,11,11,12,14,15,16,
- 16,16,16,15,13,11,12,12,14,15,15,16,16,16,16,16,
- 13,13,14,14,15,14,16,16,16,16,15,15,14,16,14,14,
- 16,16,16,16,16,16,16,15,16,16,15,15,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,15,16,16,16,16,16,15,15,15,
- 15,15,16,15,16,16,16,16,16,16,13,15,13,14,14,16,
- 16,15,16,16,14,11,10,11,12,13,14,16,16,16,16,16,
- 12,10,10,10,11,12,14,15,16,16,16,13,10, 9, 9,10,
- 11,13,15,15,16,14,15,13,10,10, 9,10,11,13,15,16,
- 16,16,14,14,12,10,10,11,13,14,16,16,16,16,16,14,
- 12,12,12,12,14,16,16,16,16,15,16,14,13,14,14,15,
- 16,14,16,16,16,16,16,15,15,16,14,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,14,15,15,16,16,16,16,
- 16,16,15,16,13,14,15,16,16,16,16,16,16,16,14,14,
- 13,14,14,15,16,16,16,16,14,12,11,12,11,12,14,16,
- 16,16,16,15,12, 9, 9,10,10,12,13,16,16,15,14,13,
- 10, 9, 8, 9,10,11,13,16,16,16,13,10, 8, 8, 7, 8,
- 9,12,14,15,16,14,12,10, 8, 8, 8, 8,10,12,14,16,
- 16,14,15,11,10, 9, 9, 9,11,13,13,16,14,16,14,13,
- 11,11,11,11,13,13,16,16,16,16,15,13,13,12,12,14,
- 13,14,16,16,16,16,16,15,16,14,15,14,15,16,16,16,
- 16,16,16,16,16,16,15,15,14,16,16,16,16,16,16,16,
- 16,16,15,13,13,14,14,16,16,16,16,16,14,13,12,12,
- 12,12,13,15,16,16,16,15,13,10,10,11,10,11,12,13,
- 16,16,16,14,10, 8, 8, 8, 9,10,11,16,16,16,14,11,
- 8, 8, 7, 8, 9,10,12,16,16,15,10, 8, 7, 7, 6, 6,
- 8,10,12,15,16,14,11, 8, 7, 6, 6, 7, 9,11,12,14,
- 15,14,12,10, 8, 8, 8, 9,10,12,13,16,13,14,13,11,
- 10,10,10,10,11,13,14,15,16,16,14,14,12,12,12,11,
- 13,15,14,16,16,16,16,14,13,13,13,16,16,16,16,16,
- 16,16,16,16,16,16,15,15,14,15,14,16,16,16,16,16,
- 16,16,14,12,12,13,15,11,16,14,16,16,14,12,10,10,
- 10,12,13,13,16,16,16,16,11, 9, 9, 9,10,11,11,12,
- 16,16,14,11, 7, 7, 7, 8, 9,10,10,16,16,16,13, 8,
- 7, 7, 6, 7, 8, 9,12,14,16,15,10, 7, 6, 6, 5, 5,
- 8,10,12,16,14,12,10, 8, 6, 6, 5, 7, 9,10,12,14,
- 15,13,10, 9, 8, 8, 8, 9, 9,11,12,14,16,13,13,12,
- 10,10,10,10,10,12,13,16,16,16,14,13,12,12,11,11,
- 12,14,15,16,16,16,15,16,14,12,13,13,16,15,16,16,
- 16,15,16,16,16,16,16,13,13,15,15,16,16,16,16,16,
- 16,16,11,12,12,13,15,16,16,15,16,15,13,10, 9,10,
- 11,12,16,14,16,16,16,12, 9, 8, 8, 9,10,12,12,14,
- 16,16,13,10, 7, 7, 7, 8, 9,11,12,16,16,15,12, 8,
- 7, 6, 6, 7, 9,10,12,16,16,13,10, 8, 6, 6, 6, 7,
- 9,10,12,14,13,12,10, 8, 7, 7, 7, 8, 9,10,12,15,
- 16,11,10,10, 9, 9, 9, 8, 9,10,13,16,14,12,12,12,
- 11,10, 9, 9,10,12,14,16,15,15,14,12,11,11,10,11,
- 13,13,14,16,16,15,15,15,13,13,13,15,15,16,16,16,
- 16,16,16,16,16,16,15,13,15,16,16,16,16,16,16,16,
- 15,14,12,12,13,15,16,16,16,16,15,16,13,11,10,11,
- 12,13,16,16,16,16,16,12,10, 9, 8, 9,10,13,14,16,
- 16,14,13,11, 9, 8, 8, 9,12,13,14,16,16,12,11,10,
- 8, 7, 8, 9,11,12,13,16,14,13,11, 9, 8, 8, 8, 9,
- 10,11,13,15,14,12,11,10, 9, 9, 9, 9, 9,10,12,16,
- 13,13,12,10,10,10, 9, 9, 9,11,13,15,14,13,12,11,
- 11,10,10,10,10,12,16,16,14,14,13,12,12,11,12,11,
- 13,15,16,16,15,14,14,15,14,14,15,15,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,15,16,15,16,16,16,15,
- 16,14,15,13,14,15,16,16,16,16,16,14,13,12,13,13,
- 13,16,16,16,16,15,15,13,12,11,11,11,14,14,16,16,
- 16,15,12,11,10,10,10,12,13,15,15,16,14,12,12,11,
- 10, 9,10,12,12,14,15,16,14,12,11,10, 9, 9,10,11,
- 11,12,14,16,16,13,11,10,10,10,10, 9, 9,11,13,15,
- 15,13,12,11,11,11,10, 9,10,12,14,16,15,12,12,12,
- 12,11,10,10,11,13,15,16,12,13,14,16,13,14,12,12,
- 14,14,16,16,15,15,16,16,14,14,14,15,16,16,16,16,
- 16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,
- 16,14,16,15,16,16,16,16,16,16,16,14,15,14,14,14,
- 15,16,16,16,15,15,13,15,13,13,12,14,16,16,16,16,
- 14,13,13,12,11,12,14,14,16,16,16,16,13,13,12,11,
- 10,11,13,14,13,14,15,16,15,14,11,11,11,11,12,12,
- 12,13,15,16,16,15,12,11,11,12,11,11,11,13,15,16,
- 16,14,13,13,13,12,11,10,11,14,16,16,14,13,15,16,
- 16,13,11,11,12,15,16,16,15,16,16,16,15,15,12,12,
- 14,16,16,16,15,14,16,16,15,15,15,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,14,16,16,14,15,15,16,
- 16,16,16,16,16,16,15,14,14,15,16,15,16,16,16,16,
- 16,15,14,13,13,14,16,16,16,16,16,16,16,14,13,12,
- 13,13,14,16,15,16,16,16,16,13,14,13,14,13,16,15,
- 15,16,16,16,16,14,14,14,16,15,16,14,16,16,16,16,
- 16,16,15,13,16,14,14,15,14,15,16,16,16,15,16,16,
- 16,16,15,15,16,16,16,16,15,16,16,16,16,16,16,16,
- 16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,
-};
-
-static long _vq_pigeonmap_lsp9_1[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3,
- 3,
-};
-
-static long _vq_fitlist_lsp9_1[] = {
- 0, 1, 12, 144, 2, 3, 145, 146,
- 13, 14, 24, 25, 156, 15, 26, 147,
- 36, 27, 38, 168, 37, 157, 158, 169,
- 159, 170, 180, 181, 39, 171, 182, 48,
- 288, 289, 290, 291, 300, 301, 302, 312,
- 313, 314, 303, 432, 324, 325, 315, 326,
- 433, 434, 435, 444, 446, 445, 456, 447,
- 457, 458, 468, 469, 459, 470, 3, 4,
- 15, 147, 5, 16, 148, 6, 17, 149,
- 14, 26, 27, 28, 29, 18, 150, 161,
- 39, 40, 41, 171, 30, 159, 160, 172,
- 173, 162, 38, 183, 184, 185, 158, 53,
- 174, 291, 292, 293, 294, 303, 304, 305,
- 317, 315, 316, 306, 302, 170, 329, 327,
- 328, 435, 436, 437, 438, 318, 447, 448,
- 449, 461, 459, 460, 450, 446, 314, 473,
- 471, 472, 462, 6, 18, 150, 7, 19,
- 151, 8, 20, 152, 9, 29, 30, 31,
- 32, 162, 163, 164, 21, 44, 42, 43,
- 174, 33, 165, 153, 176, 41, 175, 188,
- 186, 187, 56, 54, 55, 294, 295, 296,
- 173, 306, 307, 308, 297, 320, 318, 319,
- 177, 185, 309, 332, 440, 438, 439, 330,
- 331, 200, 321, 450, 451, 452, 441, 464,
- 462, 463, 453, 476, 317, 474, 475, 344,
- 465, 9, 20, 21, 153, 10, 22, 154,
- 11, 34, 23, 155, 33, 32, 165, 166,
- 46, 178, 45, 35, 44, 58, 190, 167,
- 47, 164, 177, 189, 179, 57, 310, 297,
- 298, 299, 176, 309, 322, 321, 188, 311,
- 334, 333, 202, 320, 191, 323, 441, 442,
- 443, 454, 466, 201, 478, 308, 453, 465,
- 455, 332, 477, 346, 335, 467, 464, 345,
- 36, 25, 37, 26, 38, 27, 39, 48,
- 180, 50, 49, 181, 171, 182, 60, 51,
- 183, 192, 61, 193, 62, 194, 63, 195,
- 72, 204, 205, 206, 73, 74, 169, 170,
- 157, 207, 216, 168, 324, 315, 313, 314,
- 326, 325, 327, 336, 337, 338, 339, 348,
- 349, 350, 217, 218, 351, 360, 468, 469,
- 480, 481, 482, 492, 493, 361, 362, 457,
- 458, 459, 470, 471, 483, 494, 495, 504,
- 505, 506, 27, 39, 28, 40, 29, 41,
- 30, 51, 183, 52, 184, 53, 185, 42,
- 174, 50, 63, 64, 195, 196, 65, 197,
- 54, 186, 62, 75, 207, 76, 208, 77,
- 209, 66, 198, 74, 172, 173, 171, 162,
- 210, 221, 194, 206, 219, 220, 329, 327,
- 316, 328, 317, 318, 339, 340, 341, 330,
- 351, 352, 353, 342, 218, 182, 315, 338,
- 350, 497, 354, 365, 473, 472, 483, 484,
- 485, 474, 495, 496, 486, 363, 362, 364,
- 459, 460, 461, 471, 462, 482, 494, 498,
- 509, 507, 506, 508, 30, 42, 31, 43,
- 32, 44, 33, 56, 54, 186, 55, 187,
- 188, 45, 65, 66, 67, 68, 198, 199,
- 200, 57, 78, 210, 79, 211, 80, 212,
- 69, 201, 53, 174, 175, 176, 177, 189,
- 163, 164, 165, 222, 223, 224, 213, 309,
- 332, 318, 330, 331, 319, 320, 342, 343,
- 344, 333, 354, 355, 356, 345, 197, 321,
- 500, 368, 366, 367, 357, 474, 475, 476,
- 486, 487, 488, 498, 499, 462, 463, 464,
- 453, 465, 477, 489, 510, 511, 501, 512,
- 33, 45, 34, 57, 46, 23, 35, 58,
- 190, 167, 47, 56, 189, 202, 179, 70,
- 59, 191, 69, 68, 201, 214, 71, 203,
- 82, 80, 81, 213, 83, 215, 177, 178,
- 226, 166, 225, 311, 200, 212, 358, 224,
- 94, 310, 333, 334, 321, 322, 323, 346,
- 335, 345, 347, 357, 370, 359, 502, 501,
- 369, 478, 455, 477, 467, 490, 489, 479,
- 491, 227, 465, 454, 466, 344, 356, 514,
- 503, 368, 238, 513, 371, 72, 61, 73,
- 205, 62, 63, 74, 206, 216, 75, 207,
- 84, 217, 218, 85, 86, 228, 87, 219,
- 96, 229, 230, 97, 98, 240, 99, 231,
- 108, 241, 242, 109, 110, 243, 384, 385,
- 386, 252, 349, 350, 351, 360, 361, 362,
- 363, 372, 373, 374, 375, 253, 254, 387,
- 493, 504, 505, 516, 528, 529, 494, 506,
- 517, 518, 396, 397, 530, 495, 507, 519,
- 398, 531, 672, 540, 673, 541, 674, 63,
- 74, 75, 207, 64, 76, 208, 65, 77,
- 209, 66, 219, 220, 78, 210, 221, 87,
- 88, 89, 86, 90, 101, 222, 233, 99,
- 231, 100, 232, 98, 243, 102, 234, 245,
- 244, 113, 110, 111, 112, 246, 218, 242,
- 389, 387, 388, 257, 351, 352, 353, 354,
- 363, 364, 365, 230, 366, 375, 376, 377,
- 378, 254, 255, 362, 386, 256, 374, 522,
- 533, 531, 532, 390, 496, 497, 498, 507,
- 508, 509, 510, 519, 520, 521, 398, 399,
- 401, 495, 400, 506, 530, 518, 534, 677,
- 675, 676, 542, 543, 544, 545, 66, 78,
- 210, 67, 79, 211, 68, 80, 212, 69,
- 90, 222, 223, 224, 91, 92, 81, 213,
- 102, 234, 103, 235, 236, 104, 93, 225,
- 246, 247, 248, 114, 115, 105, 116, 237,
- 113, 390, 391, 392, 258, 259, 249, 260,
- 354, 355, 356, 366, 367, 368, 357, 378,
- 379, 380, 369, 381, 500, 511, 522, 524,
- 534, 535, 536, 525, 404, 499, 498, 510,
- 512, 501, 523, 513, 393, 402, 403, 537,
- 548, 678, 679, 680, 546, 547, 69, 81,
- 213, 70, 82, 214, 71, 83, 215, 92,
- 225, 93, 94, 226, 95, 227, 104, 237,
- 105, 106, 238, 250, 107, 239, 249, 116,
- 117, 118, 251, 224, 236, 248, 262, 203,
- 370, 359, 382, 371, 394, 393, 383, 261,
- 357, 358, 347, 369, 381, 260, 395, 406,
- 501, 502, 514, 503, 526, 525, 515, 538,
- 537, 527, 513, 405, 380, 392, 539, 550,
- 404, 549, 682, 681, 108, 240, 97, 241,
- 98, 109, 99, 242, 110, 252, 111, 120,
- 253, 254, 121, 122, 264, 123, 265, 266,
- 132, 133, 134, 267, 276, 135, 243, 255,
- 277, 278, 408, 409, 410, 385, 386, 387,
- 396, 397, 398, 399, 411, 420, 384, 421,
- 279, 422, 552, 553, 529, 540, 541, 542,
- 554, 530, 555, 564, 531, 543, 423, 566,
- 565, 696, 697, 673, 674, 684, 685, 686,
- 698, 110, 243, 100, 111, 244, 112, 101,
- 245, 113, 102, 246, 255, 114, 257, 256,
- 125, 122, 123, 124, 258, 126, 269, 267,
- 268, 134, 135, 136, 137, 270, 280, 279,
- 138, 281, 413, 411, 412, 278, 414, 254,
- 389, 388, 390, 401, 399, 400, 266, 402,
- 387, 425, 398, 410, 422, 423, 424, 557,
- 555, 556, 282, 531, 533, 532, 534, 545,
- 543, 544, 546, 558, 569, 567, 568, 542,
- 554, 566, 426, 701, 699, 700, 675, 676,
- 677, 678, 689, 687, 688, 690, 102, 113,
- 246, 114, 103, 247, 115, 104, 248, 116,
- 105, 258, 259, 249, 260, 127, 117, 128,
- 126, 125, 270, 271, 261, 272, 129, 140,
- 138, 137, 139, 281, 282, 283, 273, 284,
- 257, 269, 416, 414, 415, 391, 390, 392,
- 393, 404, 402, 403, 405, 426, 427, 141,
- 428, 417, 425, 401, 548, 413, 549, 560,
- 558, 559, 534, 535, 536, 537, 546, 547,
- 570, 571, 572, 561, 569, 285, 557, 545,
- 704, 702, 703, 678, 679, 680, 681, 692,
- 690, 691, 693, 105, 249, 117, 106, 250,
- 118, 107, 251, 119, 116, 128, 260, 261,
- 129, 262, 130, 263, 131, 272, 273, 274,
- 142, 141, 275, 140, 284, 285, 286, 143,
- 418, 419, 407, 417, 430, 393, 394, 395,
- 405, 406, 428, 429, 287, 404, 416, 562,
- 563, 539, 551, 561, 574, 537, 538, 549,
- 550, 572, 573, 548, 560, 431, 706, 707,
- 695, 705, 718, 681, 682, 683, 693, 694,
- 432, 289, 300, 576, 433, 290, 434, 291,
- 435, 444, 301, 577, 302, 578, 445, 446,
- 312, 303, 157, 456, 588, 313, 314, 447,
- 579, 457, 458, 324, 325, 315, 326, 468,
- 600, 469, 459, 470, 589, 590, 591, 601,
- 602, 612, 613, 471, 603, 614, 480, 720,
- 722, 721, 732, 723, 733, 734, 744, 735,
- 745, 746, 756, 757, 615, 747, 758, 624,
- 864, 865, 866, 876, 867, 877, 878, 888,
- 889, 879, 890, 900, 901, 759, 891, 902,
- 768, 291, 435, 292, 303, 436, 579, 293,
- 304, 437, 580, 161, 294, 305, 581, 438,
- 447, 448, 449, 446, 315, 316, 317, 459,
- 460, 306, 461, 582, 591, 592, 593, 450,
- 329, 327, 328, 471, 472, 473, 605, 318,
- 462, 594, 314, 603, 604, 458, 590, 617,
- 615, 616, 606, 485, 723, 724, 725, 726,
- 735, 736, 737, 749, 747, 748, 738, 602,
- 734, 761, 759, 760, 750, 629, 867, 868,
- 869, 746, 879, 880, 870, 881, 893, 891,
- 892, 882, 758, 903, 904, 905, 878, 773,
- 894, 294, 438, 295, 306, 582, 439, 163,
- 296, 307, 583, 440, 164, 308, 584, 297,
- 452, 450, 451, 441, 318, 319, 320, 462,
- 594, 463, 595, 464, 596, 309, 330, 331,
- 332, 453, 476, 474, 606, 475, 607, 608,
- 321, 344, 465, 317, 461, 585, 597, 620,
- 473, 618, 619, 488, 486, 487, 609, 726,
- 727, 728, 605, 738, 739, 740, 617, 750,
- 751, 752, 729, 741, 764, 762, 763, 632,
- 630, 631, 753, 872, 870, 871, 749, 761,
- 882, 883, 884, 894, 896, 885, 873, 895,
- 908, 906, 907, 776, 774, 775, 297, 308,
- 441, 309, 585, 298, 453, 442, 166, 310,
- 586, 454, 299, 155, 443, 452, 322, 466,
- 311, 587, 321, 598, 320, 464, 465, 167,
- 455, 597, 334, 478, 333, 610, 323, 477,
- 467, 609, 476, 346, 599, 345, 490, 622,
- 335, 596, 621, 479, 611, 489, 608, 620,
- 729, 730, 731, 742, 741, 754, 743, 753,
- 634, 766, 740, 765, 623, 755, 633, 752,
- 764, 873, 874, 875, 898, 778, 885, 886,
- 897, 887, 910, 767, 884, 909, 899, 777,
- 324, 468, 313, 336, 457, 325, 469, 458,
- 326, 470, 459, 327, 480, 612, 337, 338,
- 471, 601, 481, 613, 482, 614, 348, 349,
- 339, 350, 483, 492, 624, 493, 625, 494,
- 626, 351, 495, 360, 636, 504, 361, 637,
- 362, 638, 505, 506, 602, 603, 615, 627,
- 639, 648, 600, 649, 650, 745, 746, 756,
- 747, 758, 757, 768, 759, 769, 770, 771,
- 780, 781, 782, 783, 792, 744, 793, 794,
- 913, 900, 889, 890, 901, 902, 903, 912,
- 914, 915, 924, 925, 926, 891, 877, 927,
- 936, 888, 327, 459, 471, 460, 328, 472,
- 461, 329, 473, 318, 341, 462, 339, 340,
- 330, 485, 617, 483, 615, 604, 616, 484,
- 605, 474, 606, 482, 351, 352, 353, 342,
- 495, 627, 496, 628, 497, 629, 486, 618,
- 494, 354, 363, 639, 364, 640, 365, 641,
- 498, 630, 507, 509, 508, 506, 603, 594,
- 642, 626, 638, 651, 652, 653, 650, 614,
- 747, 748, 749, 761, 759, 760, 750, 771,
- 772, 773, 762, 783, 784, 785, 774, 738,
- 786, 795, 796, 797, 770, 782, 794, 758,
- 917, 928, 929, 905, 903, 904, 893, 894,
- 915, 916, 906, 927, 918, 892, 891, 882,
- 930, 941, 914, 926, 939, 940, 330, 462,
- 474, 319, 342, 463, 331, 475, 320, 343,
- 464, 332, 476, 344, 321, 465, 486, 618,
- 487, 619, 488, 620, 607, 608, 333, 477,
- 356, 354, 355, 498, 630, 499, 631, 500,
- 632, 345, 489, 368, 366, 642, 367, 643,
- 224, 644, 357, 510, 511, 512, 501, 633,
- 606, 609, 621, 485, 595, 596, 597, 656,
- 654, 655, 645, 750, 751, 752, 629, 762,
- 763, 764, 774, 775, 776, 786, 787, 788,
- 777, 741, 753, 641, 765, 739, 740, 800,
- 798, 799, 789, 773, 919, 932, 906, 907,
- 908, 896, 785, 918, 920, 930, 931, 921,
- 894, 895, 897, 909, 883, 884, 885, 942,
- 943, 944, 933, 465, 333, 477, 345, 322,
- 466, 334, 478, 346, 490, 622, 323, 455,
- 467, 599, 335, 479, 489, 621, 488, 609,
- 610, 611, 358, 357, 502, 634, 347, 491,
- 623, 500, 501, 633, 370, 646, 359, 226,
- 514, 503, 635, 368, 225, 369, 645, 512,
- 513, 371, 647, 382, 658, 598, 515, 657,
- 656, 743, 632, 644, 790, 753, 754, 766,
- 755, 765, 778, 767, 777, 779, 789, 791,
- 742, 526, 802, 659, 801, 800, 776, 788,
- 887, 910, 899, 922, 921, 911, 934, 933,
- 923, 909, 897, 898, 670, 803, 935, 946,
- 886, 945, 920, 932, 944, 360, 504, 493,
- 361, 637, 494, 505, 362, 495, 506, 363,
- 372, 638, 648, 507, 516, 373, 649, 374,
- 650, 517, 518, 375, 229, 384, 519, 240,
- 660, 528, 385, 661, 386, 662, 529, 530,
- 387, 241, 672, 531, 396, 252, 673, 674,
- 540, 397, 398, 253, 541, 542, 639, 651,
- 663, 675, 684, 816, 685, 781, 782, 792,
- 793, 794, 804, 805, 806, 807, 817, 818,
- 686, 783, 795, 819, 828, 829, 925, 936,
- 937, 948, 960, 961, 962, 830, 926, 927,
- 938, 939, 949, 950, 951, 963, 972, 363,
- 506, 507, 496, 364, 640, 508, 497, 365,
- 641, 509, 498, 222, 366, 377, 642, 653,
- 375, 651, 376, 652, 233, 510, 519, 520,
- 521, 518, 234, 378, 389, 654, 665, 387,
- 663, 388, 664, 245, 522, 531, 532, 533,
- 530, 246, 390, 666, 675, 676, 401, 677,
- 534, 399, 400, 257, 255, 256, 545, 398,
- 542, 543, 544, 639, 650, 662, 678, 674,
- 689, 821, 819, 820, 686, 687, 688, 783,
- 784, 785, 786, 797, 795, 796, 798, 809,
- 807, 808, 810, 794, 806, 822, 833, 818,
- 830, 831, 832, 928, 929, 951, 952, 954,
- 965, 963, 964, 927, 939, 940, 930, 941,
- 942, 953, 966, 950, 962, 977, 366, 498,
- 642, 510, 499, 367, 643, 511, 500, 368,
- 644, 512, 501, 223, 378, 654, 224, 379,
- 655, 380, 234, 235, 656, 369, 524, 645,
- 522, 523, 513, 390, 666, 391, 392, 246,
- 667, 668, 381, 536, 657, 534, 535, 525,
- 679, 402, 678, 403, 404, 680, 249, 260,
- 393, 669, 258, 259, 537, 548, 546, 547,
- 545, 690, 691, 681, 692, 822, 823, 824,
- 786, 787, 788, 798, 799, 800, 789, 811,
- 810, 812, 801, 813, 689, 834, 835, 825,
- 836, 932, 944, 943, 933, 956, 954, 945,
- 957, 968, 966, 967, 930, 931, 942, 955,
- 833, 978, 979, 969, 980, 501, 369, 645,
- 513, 502, 370, 646, 514, 359, 382, 503,
- 658, 371, 647, 225, 380, 381, 238, 515,
- 237, 657, 525, 526, 227, 524, 383, 659,
- 394, 670, 392, 393, 250, 239, 527, 669,
- 537, 538, 536, 395, 671, 682, 406, 251,
- 539, 405, 681, 261, 262, 550, 549, 683,
- 656, 668, 404, 680, 407, 548, 694, 693,
- 826, 825, 815, 789, 790, 802, 791, 801,
- 803, 814, 813, 692, 827, 800, 812, 824,
- 551, 838, 837, 933, 945, 934, 946, 935,
- 958, 957, 947, 969, 970, 959, 836, 695,
- 971, 944, 956, 968, 982, 923, 981, 396,
- 540, 529, 673, 253, 397, 530, 541, 674,
- 398, 531, 542, 675, 399, 408, 684, 543,
- 264, 685, 686, 552, 409, 410, 265, 553,
- 266, 554, 687, 411, 696, 555, 697, 698,
- 276, 420, 421, 564, 277, 565, 422, 566,
- 699, 278, 423, 708, 567, 709, 710, 840,
- 841, 842, 817, 828, 829, 830, 818, 819,
- 831, 843, 852, 711, 816, 853, 854, 984,
- 985, 986, 961, 962, 972, 973, 974, 987,
- 855, 960, 996, 963, 975, 997, 998, 399,
- 531, 542, 675, 532, 543, 676, 400, 533,
- 544, 677, 257, 401, 545, 534, 256, 402,
- 678, 258, 689, 687, 688, 413, 546, 411,
- 412, 269, 267, 268, 557, 410, 554, 555,
- 556, 690, 270, 414, 701, 699, 700, 558,
- 281, 425, 422, 566, 279, 423, 280, 424,
- 568, 567, 569, 702, 426, 282, 713, 711,
- 712, 570, 686, 698, 710, 845, 843, 844,
- 820, 821, 822, 833, 831, 832, 834, 819,
- 846, 857, 855, 856, 714, 830, 854, 842,
- 987, 988, 989, 965, 964, 966, 976, 977,
- 975, 978, 963, 990, 999, 1000, 858, 1001,
- 974, 986, 998, 534, 545, 678, 402, 546,
- 535, 679, 259, 403, 547, 536, 680, 404,
- 548, 537, 258, 260, 414, 690, 415, 691,
- 272, 405, 416, 681, 692, 261, 270, 271,
- 549, 560, 558, 559, 557, 702, 703, 417,
- 693, 704, 273, 284, 428, 561, 282, 426,
- 283, 427, 569, 570, 571, 572, 425, 714,
- 715, 429, 705, 716, 713, 689, 701, 848,
- 846, 847, 823, 822, 824, 825, 836, 834,
- 835, 837, 858, 859, 573, 849, 860, 833,
- 857, 845, 990, 992, 991, 967, 968, 966,
- 969, 980, 978, 979, 981, 717, 993, 1002,
- 1003, 1004, 1001, 861, 977, 989, 1134, 537,
- 681, 261, 405, 549, 538, 682, 262, 406,
- 550, 395, 539, 683, 263, 407, 548, 416,
- 417, 693, 418, 694, 551, 273, 274, 562,
- 561, 695, 275, 419, 560, 705, 706, 563,
- 286, 430, 285, 429, 574, 707, 573, 572,
- 287, 431, 716, 717, 718, 575, 692, 704,
- 850, 851, 839, 849, 862, 825, 826, 827,
- 837, 838, 860, 861, 719, 836, 848, 994,
- 995, 993, 983, 1006, 969, 970, 971, 981,
- 982, 863, 980, 992, 1005, 1004, 1138, 1139,
- 864, 721, 732, 865, 722, 733, 866, 723,
- 734, 867, 876, 877, 878, 744, 745, 735,
- 746, 888, 889, 879, 890, 756, 757, 747,
- 758, 900, 901, 891, 902, 768, 1008, 1009,
- 1010, 1020, 1011, 1032, 1021, 1022, 1033, 1023,
- 1034, 1044, 1045, 903, 1035, 1046, 912, 1152,
- 1153, 1154, 1164, 1155, 1176, 1165, 1166, 1177,
- 1167, 1178, 1188, 1189, 1047, 1179, 1190, 1056,
- 1296, 1297, 1298, 1308, 1299, 1310, 1309, 1320,
- 1321, 1311, 1322, 1191, 1333, 1200, 1332, 1201,
- 1323, 1334, 723, 867, 724, 735, 868, 725,
- 736, 869, 726, 737, 870, 881, 879, 880,
- 878, 746, 747, 748, 749, 738, 891, 892,
- 893, 761, 882, 759, 760, 750, 903, 904,
- 905, 894, 773, 1011, 1013, 1012, 890, 1014,
- 1025, 1035, 1023, 1024, 1036, 1037, 1026, 902,
- 1047, 1048, 1049, 1022, 917, 1038, 1157, 1155,
- 1156, 1034, 1167, 1168, 1158, 1169, 1179, 1180,
- 1181, 1170, 1046, 1191, 1192, 1193, 1166, 1061,
- 1182, 1299, 1300, 1301, 1178, 1302, 1311, 1312,
- 1313, 1323, 1324, 1325, 1314, 1335, 1203, 1336,
- 1204, 1205, 1337, 726, 870, 727, 738, 871,
- 728, 739, 872, 740, 729, 882, 883, 884,
- 752, 873, 750, 751, 895, 896, 893, 894,
- 741, 764, 762, 763, 885, 753, 908, 906,
- 907, 774, 775, 776, 897, 1014, 1015, 1016,
- 905, 1026, 1027, 1028, 1039, 1029, 1017, 1040,
- 1038, 1052, 1050, 1051, 920, 918, 919, 1037,
- 1041, 1158, 1159, 1160, 1049, 1170, 1171, 1172,
- 1182, 1183, 1184, 1173, 1161, 1196, 1194, 1195,
- 1064, 1062, 1063, 1181, 1185, 1193, 1302, 1303,
- 1304, 1314, 1315, 1316, 1328, 1305, 1326, 1327,
- 1317, 1340, 1208, 1205, 1206, 1338, 1207, 1339,
- 729, 740, 873, 741, 730, 874, 742, 731,
- 886, 875, 884, 885, 754, 753, 743, 898,
- 897, 887, 896, 765, 766, 764, 910, 755,
- 909, 899, 908, 778, 777, 767, 1017, 1018,
- 1019, 1042, 922, 1029, 1030, 1031, 1054, 911,
- 1028, 1041, 1053, 1043, 921, 1040, 1052, 1161,
- 1162, 1163, 1174, 1186, 1066, 1175, 1173, 1185,
- 1198, 1055, 1172, 1197, 1187, 1065, 1184, 1196,
- 1210, 1305, 1306, 1307, 1199, 1318, 1317, 1330,
- 1329, 1319, 1342, 1316, 1341, 1209, 1331, 1328,
- 756, 888, 900, 768, 889, 757, 901, 890,
- 758, 902, 891, 759, 769, 770, 903, 912,
- 913, 914, 780, 781, 771, 782, 915, 924,
- 925, 926, 783, 792, 793, 794, 927, 936,
- 937, 938, 1068, 1069, 1070, 1044, 1045, 1035,
- 1046, 1047, 1056, 1057, 1058, 1059, 1033, 1034,
- 1021, 1071, 1080, 1032, 1081, 1082, 1212, 1201,
- 1213, 1214, 1188, 1177, 1178, 1189, 1179, 1190,
- 1191, 1200, 1202, 1203, 1215, 1165, 1224, 1176,
- 1225, 1226, 1332, 1333, 1344, 1345, 1356, 1357,
- 1321, 1334, 1335, 1346, 1347, 1358, 1309, 1322,
- 1323, 1359, 1320, 1310, 1311, 1368, 759, 891,
- 903, 760, 771, 892, 904, 761, 772, 893,
- 905, 773, 894, 762, 915, 916, 917, 906,
- 914, 782, 783, 784, 785, 774, 929, 927,
- 928, 918, 926, 786, 795, 796, 797, 930,
- 941, 939, 940, 938, 902, 1073, 1062, 1071,
- 1072, 1047, 1048, 1049, 1059, 1060, 1061, 1050,
- 1036, 1037, 1038, 1035, 1026, 1074, 1085, 1058,
- 1070, 1083, 1084, 1082, 1046, 1192, 1193, 1204,
- 1205, 1215, 1216, 1217, 1206, 1191, 1181, 1182,
- 1203, 1194, 1180, 1179, 1170, 1218, 1229, 1202,
- 1214, 1227, 1228, 1226, 1190, 1335, 1336, 1337,
- 1347, 1348, 1338, 1349, 1359, 1360, 1361, 1350,
- 1324, 1325, 1326, 1314, 1323, 1312, 1313, 1362,
- 1373, 762, 894, 906, 774, 895, 763, 907,
- 775, 896, 764, 908, 776, 753, 765, 885,
- 897, 920, 918, 919, 909, 788, 786, 787,
- 931, 777, 932, 930, 921, 800, 798, 799,
- 789, 942, 943, 944, 933, 917, 1052, 1062,
- 1074, 1075, 1076, 1050, 1051, 1039, 929, 1063,
- 1064, 1065, 1038, 1040, 1041, 1053, 1027, 1028,
- 1029, 1086, 1087, 1088, 1077, 1061, 1196, 1206,
- 1207, 1208, 1218, 1219, 1220, 1194, 1195, 1183,
- 1184, 1073, 1209, 1182, 1185, 1197, 1171, 1172,
- 1173, 1230, 1231, 1232, 1221, 1205, 1340, 1338,
- 1339, 1217, 1350, 1351, 1352, 1362, 1363, 1364,
- 1327, 1353, 1326, 1315, 1316, 1328, 1317, 1329,
- 1341, 1361, 1374, 1375, 1365, 1376, 765, 897,
- 909, 777, 754, 766, 886, 898, 910, 778,
- 755, 887, 899, 922, 767, 911, 921, 920,
- 790, 789, 779, 934, 923, 933, 932, 802,
- 791, 801, 935, 946, 944, 945, 803, 1031,
- 1054, 1043, 1066, 1055, 1078, 1077, 1067, 1053,
- 1065, 947, 1079, 1041, 1042, 1090, 1030, 1089,
- 1064, 1076, 1088, 1175, 1198, 1197, 1187, 1210,
- 1209, 1199, 1222, 1221, 1211, 1185, 1186, 1091,
- 1223, 1234, 1174, 1233, 1208, 1220, 1232, 1342,
- 1341, 1354, 1343, 1353, 1366, 1355, 1365, 1235,
- 1319, 1329, 1330, 1331, 1367, 1318, 1352, 1364,
- 1378, 1317, 1340, 1376, 1377, 1246, 792, 936,
- 925, 793, 926, 937, 794, 927, 938, 795,
- 804, 805, 806, 939, 948, 949, 950, 807,
- 816, 817, 818, 951, 960, 961, 962, 819,
- 828, 963, 829, 830, 972, 973, 1069, 1070,
- 1080, 1081, 1082, 1092, 1093, 1094, 1104, 1105,
- 1106, 974, 1071, 1083, 1095, 1107, 1116, 1117,
- 1213, 1214, 1224, 1225, 1226, 1236, 1237, 1238,
- 1248, 1249, 1250, 1118, 1215, 1227, 1239, 1251,
- 1260, 1261, 1262, 1357, 1358, 1368, 1369, 1370,
- 1380, 1382, 1381, 1392, 1393, 1359, 1371, 1383,
- 1394, 1395, 1404, 795, 927, 938, 939, 928,
- 796, 940, 929, 797, 941, 930, 798, 809,
- 807, 808, 942, 953, 951, 952, 950, 810,
- 821, 819, 820, 954, 965, 963, 964, 962,
- 822, 833, 831, 832, 966, 974, 975, 976,
- 977, 1071, 1072, 1073, 1074, 1083, 1084, 1085,
- 1086, 1097, 1095, 1096, 1098, 1107, 1109, 1108,
- 1110, 1082, 1106, 1121, 1094, 1118, 1119, 1215,
- 1216, 1217, 1218, 1229, 1227, 1228, 1230, 1239,
- 1240, 1241, 1242, 1253, 1251, 1252, 1120, 1254,
- 1250, 1265, 1226, 1238, 1262, 1263, 1264, 1397,
- 1359, 1360, 1361, 1362, 1371, 1372, 1373, 1374,
- 1383, 1384, 1385, 1386, 1395, 1396, 1398, 1409,
- 798, 930, 942, 931, 799, 943, 932, 800,
- 944, 933, 810, 811, 812, 801, 954, 955,
- 956, 945, 822, 823, 824, 813, 966, 967,
- 957, 968, 834, 835, 825, 836, 980, 979,
- 969, 978, 1074, 1075, 1076, 1087, 1088, 1086,
- 1077, 1099, 1089, 1100, 1098, 1111, 1112, 1110,
- 1101, 977, 1122, 1123, 1113, 1124, 1218, 1219,
- 1220, 1231, 1221, 1232, 1230, 1242, 1243, 1244,
- 1233, 1254, 1255, 1256, 1245, 1121, 1266, 1267,
- 1257, 1268, 1399, 1362, 1363, 1364, 1374, 1375,
- 1376, 1365, 1386, 1387, 1388, 1377, 1398, 1400,
- 1389, 1229, 1241, 1373, 1253, 1385, 1265, 1410,
- 1411, 1401, 1412, 933, 801, 945, 934, 802,
- 946, 791, 814, 935, 803, 813, 947, 812,
- 958, 956, 957, 815, 826, 825, 959, 824,
- 970, 968, 969, 827, 838, 971, 836, 837,
- 982, 981, 1077, 1078, 1079, 1089, 1090, 1091,
- 1101, 1102, 1103, 1113, 1114, 980, 839, 1115,
- 1088, 1100, 1112, 1126, 1067, 1125, 1221, 1222,
- 1223, 1233, 1234, 1235, 1245, 1246, 1247, 1257,
- 1258, 1124, 983, 1259, 1232, 1244, 1256, 1270,
- 1211, 1269, 1379, 1402, 1268, 1401, 1365, 1366,
- 1367, 1378, 1377, 1390, 1389, 1391, 1127, 1376,
- 1388, 1400, 1271, 1403, 1355, 1414, 1412, 1413,
- 828, 972, 961, 829, 962, 973, 830, 963,
- 974, 831, 840, 975, 841, 842, 984, 985,
- 986, 843, 987, 852, 1128, 853, 997, 854,
- 996, 1129, 1130, 998, 855, 1105, 1116, 1117,
- 1118, 1131, 999, 1104, 1106, 1140, 1107, 1119,
- 1141, 1142, 1273, 1272, 1274, 1249, 1250, 1260,
- 1261, 1262, 1275, 1284, 1143, 1248, 1251, 1263,
- 1285, 1286, 1393, 1405, 1416, 1417, 1418, 1287,
- 1394, 1404, 1406, 1419, 1428, 1395, 1407, 1430,
- 1429, 831, 963, 974, 964, 975, 832, 965,
- 976, 833, 977, 966, 834, 845, 843, 844,
- 978, 986, 987, 988, 989, 846, 990, 1133,
- 857, 854, 855, 1131, 856, 998, 999, 1132,
- 1000, 1001, 858, 1108, 1109, 1110, 1121, 1119,
- 1120, 1122, 1002, 1107, 1134, 1143, 1145, 1144,
- 1142, 1118, 1130, 1277, 1275, 1276, 1251, 1252,
- 1253, 1254, 1265, 1263, 1264, 1266, 1146, 1278,
- 1287, 1289, 1288, 1262, 1274, 1286, 1409, 1421,
- 1419, 1420, 1395, 1396, 1397, 1398, 1407, 1408,
- 1410, 1290, 1422, 1433, 1431, 1432, 1430, 966,
- 834, 978, 967, 835, 979, 968, 836, 980,
- 969, 977, 846, 847, 837, 848, 981, 992,
- 990, 991, 989, 849, 860, 993, 858, 1134,
- 859, 1136, 1135, 1004, 1001, 1002, 1003, 861,
- 1110, 1111, 1112, 1122, 1123, 1113, 1124, 1125,
- 1146, 1145, 1137, 1147, 1148, 1121, 1133, 1280,
- 1279, 1278, 1005, 1254, 1255, 1256, 1266, 1267,
- 1257, 1268, 1269, 1281, 1291, 1290, 1292, 1289,
- 1265, 1277, 1149, 1399, 1401, 1412, 1413, 1424,
- 1411, 1422, 1423, 1398, 1400, 1410, 1434, 1435,
- 1425, 1436, 1421, 1433, 1293, 969, 837, 981,
- 970, 838, 982, 827, 971, 839, 848, 980,
- 849, 850, 983, 994, 993, 851, 992, 995,
- 862, 1138, 861, 718, 1127, 1137, 1006, 1005,
- 1004, 863, 1139, 1150, 719, 1007, 1113, 1114,
- 1115, 1125, 1126, 1124, 1136, 1148, 1149, 1282,
- 1283, 1271, 1281, 1294, 1151, 1257, 1258, 1259,
- 1269, 1270, 1268, 1280, 1292, 1293, 1426, 1427,
- 1295, 1401, 1402, 1413, 1414, 1403, 1415, 1425,
- 1438, 1412, 1424, 1436, 1437, 1296, 1153, 1164,
- 1297, 1154, 1165, 1298, 1155, 1166, 1299, 1308,
- 1176, 1309, 1177, 1310, 1167, 1178, 1320, 1188,
- 1189, 1321, 1179, 1190, 1311, 1322, 1333, 1332,
- 1191, 1323, 1334, 1200, 1440, 1441, 1442, 1452,
- 1443, 1454, 1453, 1464, 1465, 1455, 1466, 1335,
- 1344, 1476, 1345, 1477, 1467, 1478, 1584, 1585,
- 1586, 1479, 1587, 1596, 1598, 1608, 1597, 1599,
- 1488, 1609, 1490, 1610, 1620, 1489, 1621, 1611,
- 1622, 1155, 1166, 1299, 1156, 1167, 1300, 1157,
- 1168, 1301, 1158, 1169, 1302, 1311, 1312, 1313,
- 1181, 1178, 1310, 1179, 1180, 1170, 1322, 1325,
- 1191, 1323, 1192, 1324, 1193, 1314, 1182, 1335,
- 1336, 1337, 1194, 1205, 1326, 1445, 1443, 1444,
- 1455, 1456, 1446, 1457, 1467, 1468, 1469, 1458,
- 1479, 1347, 1480, 1348, 1349, 1481, 1454, 1466,
- 1338, 1470, 1589, 1478, 1587, 1588, 1590, 1601,
- 1599, 1600, 1613, 1611, 1612, 1491, 1492, 1493,
- 1602, 1586, 1623, 1624, 1625, 1482, 1598, 1610,
- 1614, 1158, 1302, 1159, 1170, 1303, 1160, 1171,
- 1304, 1172, 1161, 1316, 1314, 1182, 1315, 1183,
- 1184, 1305, 1326, 1327, 1173, 1196, 1328, 1193,
- 1325, 1194, 1195, 1185, 1317, 1340, 1337, 1338,
- 1339, 1206, 1207, 1208, 1329, 1446, 1448, 1447,
- 1313, 1458, 1459, 1460, 1472, 1449, 1470, 1471,
- 1461, 1484, 1352, 1349, 1350, 1482, 1351, 1483,
- 1469, 1481, 1473, 1457, 1590, 1591, 1592, 1496,
- 1601, 1604, 1602, 1603, 1593, 1614, 1615, 1616,
- 1605, 1493, 1494, 1495, 1628, 1626, 1627, 1613,
- 1625, 1617, 1161, 1172, 1305, 1173, 1162, 1306,
- 1174, 1163, 1318, 1307, 1317, 1186, 1184, 1316,
- 1185, 1175, 1330, 1198, 1328, 1197, 1329, 1187,
- 1319, 1196, 1342, 1341, 1210, 1199, 1331, 1340,
- 1208, 1209, 1449, 1450, 1451, 1354, 1343, 1462,
- 1461, 1474, 1473, 1463, 1486, 1460, 1485, 1353,
- 1475, 1472, 1484, 1352, 1498, 1487, 1593, 1594,
- 1595, 1497, 1618, 1630, 1606, 1604, 1605, 1617,
- 1607, 1616, 1629, 1619, 1496, 1628, 1592, 1642,
- 1188, 1320, 1332, 1200, 1189, 1321, 1178, 1310,
- 1322, 1333, 1190, 1323, 1334, 1191, 1201, 1202,
- 1344, 1335, 1212, 1345, 1346, 1203, 1213, 1214,
- 1356, 1357, 1347, 1358, 1215, 1224, 1225, 1226,
- 1359, 1368, 1369, 1370, 1500, 1476, 1477, 1488,
- 1489, 1501, 1465, 1478, 1479, 1490, 1491, 1502,
- 1453, 1466, 1467, 1503, 1464, 1454, 1455, 1512,
- 1513, 1514, 1644, 1645, 1646, 1608, 1597, 1620,
- 1609, 1610, 1621, 1622, 1611, 1623, 1632, 1633,
- 1634, 1635, 1515, 1647, 1598, 1599, 1656, 1657,
- 1658, 1191, 1323, 1335, 1192, 1203, 1324, 1336,
- 1193, 1204, 1325, 1337, 1205, 1194, 1326, 1202,
- 1347, 1348, 1349, 1338, 1217, 1346, 1214, 1215,
- 1216, 1206, 1359, 1360, 1361, 1350, 1358, 1218,
- 1226, 1227, 1228, 1229, 1362, 1371, 1372, 1373,
- 1370, 1334, 1505, 1503, 1504, 1479, 1480, 1481,
- 1491, 1492, 1493, 1494, 1468, 1469, 1482, 1458,
- 1470, 1467, 1456, 1457, 1506, 1517, 1490, 1502,
- 1515, 1516, 1514, 1478, 1649, 1647, 1648, 1611,
- 1600, 1623, 1612, 1601, 1624, 1613, 1602, 1625,
- 1614, 1637, 1635, 1636, 1626, 1638, 1622, 1634,
- 1646, 1518, 1650, 1661, 1659, 1660, 1658, 1194,
- 1326, 1338, 1206, 1195, 1327, 1339, 1207, 1196,
- 1328, 1340, 1208, 1185, 1197, 1317, 1329, 1349,
- 1350, 1351, 1352, 1218, 1219, 1220, 1341, 1209,
- 1361, 1362, 1363, 1364, 1353, 1221, 1232, 1230,
- 1231, 1374, 1375, 1376, 1365, 1507, 1508, 1506,
- 1484, 1482, 1483, 1495, 1496, 1494, 1471, 1497,
- 1470, 1459, 1460, 1472, 1461, 1473, 1485, 1505,
- 1493, 1518, 1519, 1509, 1520, 1650, 1651, 1652,
- 1614, 1603, 1626, 1615, 1604, 1627, 1616, 1628,
- 1605, 1617, 1638, 1639, 1640, 1629, 1641, 1662,
- 1531, 1663, 1637, 1649, 1530, 1664, 1653, 1197,
- 1329, 1341, 1209, 1186, 1198, 1318, 1330, 1342,
- 1210, 1187, 1319, 1331, 1354, 1199, 1222, 1343,
- 1353, 1220, 1352, 1221, 1211, 1366, 1355, 1364,
- 1365, 1234, 1223, 1233, 1378, 1367, 1376, 1377,
- 1246, 1235, 1510, 1509, 1486, 1485, 1498, 1487,
- 1497, 1499, 1379, 1463, 1473, 1474, 1475, 1511,
- 1462, 1496, 1508, 1522, 1461, 1484, 1520, 1521,
- 1390, 1523, 1654, 1642, 1619, 1631, 1653, 1643,
- 1655, 1605, 1617, 1629, 1606, 1618, 1630, 1607,
- 1641, 1534, 1666, 1628, 1640, 1652, 1532, 1664,
- 1665, 1533, 1224, 1368, 1357, 1225, 1358, 1369,
- 1226, 1359, 1370, 1227, 1236, 1237, 1238, 1371,
- 1380, 1381, 1382, 1239, 1248, 1249, 1250, 1383,
- 1392, 1393, 1394, 1251, 1260, 1261, 1262, 1395,
- 1404, 1356, 1405, 1501, 1512, 1513, 1524, 1525,
- 1536, 1406, 1502, 1514, 1526, 1537, 1503, 1515,
- 1527, 1538, 1539, 1548, 1500, 1549, 1550, 1680,
- 1645, 1656, 1657, 1668, 1669, 1658, 1670, 1681,
- 1682, 1646, 1647, 1659, 1671, 1633, 1683, 1644,
- 1692, 1693, 1694, 1227, 1359, 1370, 1360, 1371,
- 1228, 1361, 1372, 1229, 1373, 1362, 1230, 1241,
- 1238, 1239, 1240, 1374, 1383, 1384, 1385, 1382,
- 1242, 1253, 1250, 1251, 1252, 1386, 1395, 1396,
- 1397, 1394, 1254, 1265, 1263, 1264, 1398, 1409,
- 1406, 1407, 1408, 1504, 1505, 1506, 1517, 1515,
- 1516, 1518, 1529, 1527, 1528, 1530, 1541, 1539,
- 1540, 1503, 1542, 1553, 1514, 1526, 1538, 1550,
- 1551, 1552, 1685, 1650, 1661, 1662, 1673, 1674,
- 1683, 1684, 1648, 1649, 1659, 1660, 1671, 1672,
- 1647, 1638, 1658, 1670, 1682, 1686, 1697, 1694,
- 1695, 1696, 1230, 1362, 1374, 1363, 1231, 1375,
- 1364, 1232, 1376, 1365, 1242, 1243, 1244, 1233,
- 1388, 1386, 1387, 1377, 1254, 1255, 1256, 1245,
- 1400, 1398, 1399, 1389, 1266, 1267, 1257, 1268,
- 1410, 1401, 1412, 1411, 1506, 1507, 1508, 1519,
- 1518, 1520, 1530, 1531, 1532, 1542, 1543, 1544,
- 1533, 1509, 1521, 1373, 1385, 1517, 1397, 1529,
- 1409, 1554, 1555, 1545, 1556, 1541, 1688, 1686,
- 1687, 1651, 1652, 1662, 1663, 1664, 1674, 1675,
- 1676, 1677, 1553, 1650, 1653, 1665, 1673, 1639,
- 1640, 1641, 1698, 1699, 1689, 1700, 1661, 1685,
- 1365, 1233, 1377, 1366, 1234, 1378, 1223, 1246,
- 1355, 1367, 1235, 1245, 1244, 1390, 1379, 1389,
- 1388, 1258, 1247, 1257, 1256, 1402, 1391, 1401,
- 1400, 1259, 1270, 1268, 1269, 1403, 1414, 1412,
- 1413, 1509, 1510, 1511, 1522, 1521, 1523, 1534,
- 1533, 1535, 1546, 1545, 1520, 1532, 1544, 1271,
- 1415, 1547, 1499, 1558, 1556, 1557, 1689, 1690,
- 1653, 1654, 1666, 1655, 1665, 1667, 1677, 1678,
- 1679, 1559, 1691, 1664, 1643, 1676, 1688, 1642,
- 1700, 1701, 1702, 1260, 1249, 1393, 1404, 1261,
- 1394, 1405, 1262, 1395, 1406, 1263, 1272, 1273,
- 1274, 1407, 1416, 1417, 1418, 1275, 1419, 1284,
- 1285, 1286, 1429, 1428, 1430, 1287, 1392, 1536,
- 1537, 1548, 1549, 1560, 1561, 1562, 1538, 1550,
- 1563, 1572, 1431, 1539, 1551, 1573, 1574, 1575,
- 1681, 1692, 1693, 1704, 1705, 1682, 1683, 1694,
- 1706, 1716, 1695, 1707, 1717, 1718, 1680, 1719,
- 1263, 1395, 1406, 1396, 1407, 1264, 1397, 1408,
- 1265, 1254, 1398, 1409, 1266, 1277, 1275, 1276,
- 1410, 1421, 1418, 1419, 1420, 1278, 1422, 1287,
- 1288, 1289, 1286, 1430, 1431, 1432, 1433, 1290,
- 1539, 1540, 1541, 1542, 1553, 1551, 1552, 1554,
- 1565, 1563, 1564, 1434, 1566, 1577, 1575, 1576,
- 1574, 1550, 1562, 1697, 1709, 1578, 1684, 1685,
- 1686, 1695, 1696, 1698, 1707, 1708, 1710, 1683,
- 1721, 1719, 1720, 1694, 1706, 1718, 1398, 1266,
- 1255, 1399, 1410, 1267, 1256, 1400, 1411, 1268,
- 1257, 1401, 1412, 1409, 1278, 1279, 1269, 1280,
- 1277, 1423, 1413, 1424, 1422, 1421, 1281, 1292,
- 1290, 1291, 1425, 1436, 1433, 1434, 1435, 1293,
- 1542, 1543, 1544, 1554, 1555, 1545, 1556, 1567,
- 1557, 1568, 1566, 1578, 1579, 1569, 1580, 1553,
- 1437, 1577, 1565, 1686, 1687, 1688, 1689, 1700,
- 1698, 1699, 1701, 1712, 1710, 1711, 1581, 1713,
- 1724, 1722, 1723, 1721, 1697, 1709, 1401, 1269,
- 1258, 1402, 1413, 1270, 1414, 1259, 1403, 1271,
- 1282, 1280, 1412, 1281, 1415, 1426, 1424, 1425,
- 1283, 1294, 1427, 1293, 1292, 1438, 1437, 1295,
- 1436, 1570, 1571, 1439, 1545, 1546, 1547, 1557,
- 1558, 1559, 1569, 1582, 1556, 1568, 1580, 1581,
- 1583, 1689, 1690, 1691, 1701, 1702, 1703, 1713,
- 1714, 1715, 1726, 1724, 1725, 1700, 1712, 1679,
- 1727,
-};
-
-static long _vq_fitmap_lsp9_1[] = {
- 0, 62, 131, 201, 264, 338, 428, 512,
- 589, 663, 758, 838, 908, 977, 1062, 1147,
- 1216, 1297, 1385, 1478, 1560, 1650, 1758, 1867,
- 1965, 2055, 2166, 2269, 2367, 2447, 2547, 2647,
- 2728, 2810, 2899, 2992, 3072, 3166, 3273, 3382,
- 3478, 3563, 3664, 3763, 3856, 3929, 4015, 4101,
- 4173, 4241, 4321, 4402, 4472, 4553, 4647, 4735,
- 4818, 4891, 4978, 5064, 5139, 5200, 5270, 5342,
-};
-
-static long _vq_fitlength_lsp9_1[] = {
- 62, 69, 70, 63, 74, 90, 84, 77,
- 74, 95, 80, 70, 69, 85, 85, 69,
- 81, 88, 93, 82, 90, 108, 109, 98,
- 90, 111, 103, 98, 80, 100, 100, 81,
- 82, 89, 93, 80, 94, 107, 109, 96,
- 85, 101, 99, 93, 73, 86, 86, 72,
- 68, 80, 81, 70, 81, 94, 88, 83,
- 73, 87, 86, 75, 61, 70, 72, 59,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp9_1 = {
- 0.252, 0.002, 65, 4,
- _vq_pigeonmap_lsp9_1,
- 5401,
- _vq_fitlist_lsp9_1,
- _vq_fitmap_lsp9_1,
- _vq_fitlength_lsp9_1
-};
-
-static static_codebook _vq_book_lsp9_1 = {
- 3, 1728,
- _vq_lengthlist_lsp9_1,
- 1, 1607475397, 1592812110, 7, 1,
- _vq_quantlist_lsp9_1,
- NULL,
- NULL,
- &_vq_auxp_lsp9_1,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_3.vqh b/lib/books/res0_128_1024_1.vqh
similarity index 85%
rename from lib/books/res_Zc_3.vqh
rename to lib/books/res0_128_1024_1.vqh
index b862e0a6e9c5730a572d190f1a197a6907716485..d24bd98f3082733d8225e39b32935d2d9904464a 100644
--- a/lib/books/res_Zc_3.vqh
+++ b/lib/books/res0_128_1024_1.vqh
@@ -14,11 +14,11 @@
********************************************************************/
-#ifndef _V_res_Zc_3_VQH_
-#define _V_res_Zc_3_VQH_
+#ifndef _V_res0_128_1024_1_VQH_
+#define _V_res0_128_1024_1_VQH_
#include "codebook.h"
-static long _vq_quantlist_res_Zc_3[] = {
+static long _vq_quantlist_res0_128_1024_1[] = {
7,
6,
8,
@@ -36,47 +36,47 @@ static long _vq_quantlist_res_Zc_3[] = {
14,
};
-static long _vq_lengthlist_res_Zc_3[] = {
- 1, 5, 5, 7, 7, 8, 8, 9, 9,11,10,12,11,12,13, 0,
- 4, 4, 7, 7, 8, 8, 9, 9,11,11,11,11,12,12, 0, 4,
- 4, 7, 7, 8, 8, 9,10,11,11,12,12,12,13, 0, 7, 7,
- 8, 8, 8, 8,10,10,11,11,12,12,13,13, 0, 0, 0, 8,
- 8, 9, 9,10,10,11,11,12,12,13,13, 0, 0, 0, 8, 8,
- 9, 9,10,10,12,11,12,12,13,13, 0, 0, 0, 8, 8, 9,
- 9,11,10,12,11,13,13,13,14, 0, 0, 0, 9, 9,10,10,
- 11,11,12,12,12,13,13,14, 0, 0, 0, 0, 0,10,10,12,
- 11,12,12,13,13,14,14, 0, 0, 0, 0, 0,11,11,11,11,
- 12,12,13,13,14,14, 0, 0, 0, 0, 0,11,11,12,12,14,
- 13,15,13,15,15, 0, 0, 0, 0, 0,12,12,12,12,12,13,
- 13,13,15,14, 0, 0, 0, 0, 0, 0, 0,12,12,14,13,14,
- 15,15,16, 0, 0, 0, 0, 0, 0, 0,13,12,13,13,14,14,
- 15,15, 0, 0, 0, 0, 0, 0, 0,13,13,15,14,14,15,16,
- 15,
+static long _vq_lengthlist_res0_128_1024_1[] = {
+ 1, 5, 4, 8, 8,10,10,11,11,13,12,13,13,14,15, 0,
+ 4, 4, 7, 7,10,10,11,11,13,12,14,13,15,14, 0, 4,
+ 4, 7, 7, 9, 9,11,11,12,12,13,14,13,14, 0, 6, 6,
+ 7, 7, 9, 9,11,11,13,12,14,13,14,15, 0, 0, 0, 7,
+ 8, 9, 9,10,10,11,11,12,12,13,14, 0, 0, 0, 9, 9,
+ 9, 9,11,11,12,13,14,14,16,15, 0, 0, 0, 9, 9,10,
+ 10,11,10,11,11,12,12,13,13, 0, 0, 0,11,10,10,10,
+ 11,11,12,12,13,14,16,14, 0, 0, 0, 0, 0,11,11,11,
+ 11,12,12,12,12,13,13, 0, 0, 0, 0, 0,12,12,12,12,
+ 12,12,13,13,14,14, 0, 0, 0, 0, 0,12,12,13,12,13,
+ 13,13,13,13,13, 0, 0, 0, 0, 0,13,14,13,13,13,13,
+ 13,13,14,14, 0, 0, 0, 0, 0, 0, 0,14,13,14,13,14,
+ 15,14,14, 0, 0, 0, 0, 0, 0, 0,14,14,14,14,13,14,
+ 13,14, 0, 0, 0, 0, 0, 0, 0,14,14,15,14,15,16,15,
+ 16,
};
-static float _vq_quantthresh_res_Zc_3[] = {
+static float _vq_quantthresh_res0_128_1024_1[] = {
-6.5, -5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5,
1.5, 2.5, 3.5, 4.5, 5.5, 6.5,
};
-static long _vq_quantmap_res_Zc_3[] = {
+static long _vq_quantmap_res0_128_1024_1[] = {
13, 11, 9, 7, 5, 3, 1, 0,
2, 4, 6, 8, 10, 12, 14,
};
-static encode_aux_threshmatch _vq_auxt_res_Zc_3 = {
- _vq_quantthresh_res_Zc_3,
- _vq_quantmap_res_Zc_3,
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_1 = {
+ _vq_quantthresh_res0_128_1024_1,
+ _vq_quantmap_res0_128_1024_1,
15,
15
};
-static long _vq_pigeonmap_res_Zc_3[] = {
+static long _vq_pigeonmap_res0_128_1024_1[] = {
4, 3, 3, 2, 1, 1, 0, 0,
0, 1, 2, 2, 3, 4,
};
-static long _vq_fitlist_res_Zc_3[] = {
+static long _vq_fitlist_res0_128_1024_1[] = {
0, 1, 2, 3, 16, 17, 18, 31,
46, 4, 19, 32, 47, 6, 21, 34,
49, 33, 36, 64, 63, 66, 94, 1,
@@ -210,37 +210,37 @@ static long _vq_fitlist_res_Zc_3[] = {
190, 192, 194, 220, 222, 224,
};
-static long _vq_fitmap_res_Zc_3[] = {
+static long _vq_fitmap_res0_128_1024_1[] = {
0, 23, 63, 109, 155, 187, 217, 267,
332, 397, 443, 471, 508, 567, 632, 678,
704, 731, 782, 846, 892, 916, 939, 971,
1014,
};
-static long _vq_fitlength_res_Zc_3[] = {
+static long _vq_fitlength_res0_128_1024_1[] = {
23, 40, 46, 46, 32, 30, 50, 65,
65, 46, 28, 37, 59, 65, 46, 26,
27, 51, 64, 46, 24, 23, 32, 43,
32,
};
-static encode_aux_pigeonhole _vq_auxp_res_Zc_3 = {
+static encode_aux_pigeonhole _vq_auxp_res0_128_1024_1 = {
-7, 1, 14, 5,
- _vq_pigeonmap_res_Zc_3,
+ _vq_pigeonmap_res0_128_1024_1,
1046,
- _vq_fitlist_res_Zc_3,
- _vq_fitmap_res_Zc_3,
- _vq_fitlength_res_Zc_3
+ _vq_fitlist_res0_128_1024_1,
+ _vq_fitmap_res0_128_1024_1,
+ _vq_fitlength_res0_128_1024_1
};
-static static_codebook _vq_book_res_Zc_3 = {
+static static_codebook _vq_book_res0_128_1024_1 = {
2, 225,
- _vq_lengthlist_res_Zc_3,
+ _vq_lengthlist_res0_128_1024_1,
1, -530841600, 1611661312, 4, 0,
- _vq_quantlist_res_Zc_3,
+ _vq_quantlist_res0_128_1024_1,
NULL,
- &_vq_auxt_res_Zc_3,
- &_vq_auxp_res_Zc_3,
+ &_vq_auxt_res0_128_1024_1,
+ &_vq_auxp_res0_128_1024_1,
0
};
diff --git a/lib/books/res0_128_1024_2.vqh b/lib/books/res0_128_1024_2.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..9c270f5acaef5f53935341391f6573e011bc8eec
--- /dev/null
+++ b/lib/books/res0_128_1024_2.vqh
@@ -0,0 +1,93 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_2_VQH_
+#define _V_res0_128_1024_2_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_2[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static long _vq_lengthlist_res0_128_1024_2[] = {
+ 1, 5, 6, 0, 4, 4, 0, 5, 5, 6,11, 9, 0, 0, 8, 0,
+ 9,10, 6,11, 0, 0,10,10, 0,11, 9, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 4, 9,12, 0,10, 8, 0, 9,12, 4,12,10,
+ 0, 8, 9, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
+ 10, 8, 0, 0, 9, 0,10,10, 5, 9, 0, 0, 9,11, 0, 9,
+ 12,
+};
+
+static float _vq_quantthresh_res0_128_1024_2[] = {
+ -0.5, 0.5,
+};
+
+static long _vq_quantmap_res0_128_1024_2[] = {
+ 1, 0, 2,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_2 = {
+ _vq_quantthresh_res0_128_1024_2,
+ _vq_quantmap_res0_128_1024_2,
+ 3,
+ 3
+};
+
+static long _vq_pigeonmap_res0_128_1024_2[] = {
+ 0, 0,
+};
+
+static long _vq_fitlist_res0_128_1024_2[] = {
+ 0, 1, 2, 4, 5, 7, 8, 9,
+ 10, 11, 14, 16, 17, 18, 19, 22,
+ 23, 25, 26, 36, 37, 38, 40, 41,
+ 43, 44, 45, 46, 47, 49, 50, 52,
+ 53, 63, 64, 65, 68, 70, 71, 72,
+ 73, 76, 77, 79, 80,
+};
+
+static long _vq_fitmap_res0_128_1024_2[] = {
+ 0,
+};
+
+static long _vq_fitlength_res0_128_1024_2[] = {
+ 45,
+};
+
+static encode_aux_pigeonhole _vq_auxp_res0_128_1024_2 = {
+ -1, 1, 2, 1,
+ _vq_pigeonmap_res0_128_1024_2,
+ 45,
+ _vq_fitlist_res0_128_1024_2,
+ _vq_fitmap_res0_128_1024_2,
+ _vq_fitlength_res0_128_1024_2
+};
+
+static static_codebook _vq_book_res0_128_1024_2 = {
+ 4, 81,
+ _vq_lengthlist_res0_128_1024_2,
+ 1, -535822336, 1611661312, 2, 0,
+ _vq_quantlist_res0_128_1024_2,
+ NULL,
+ &_vq_auxt_res0_128_1024_2,
+ &_vq_auxp_res0_128_1024_2,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Zc_1.vqh b/lib/books/res0_128_1024_3.vqh
similarity index 55%
rename from lib/books/res_Zc_1.vqh
rename to lib/books/res0_128_1024_3.vqh
index 3fe97da8cf4dc7538008ab7bc136b1ed9f540557..138c72bff68458ff272c31930bedcaa6b237509a 100644
--- a/lib/books/res_Zc_1.vqh
+++ b/lib/books/res0_128_1024_3.vqh
@@ -14,45 +14,45 @@
********************************************************************/
-#ifndef _V_res_Zc_1_VQH_
-#define _V_res_Zc_1_VQH_
+#ifndef _V_res0_128_1024_3_VQH_
+#define _V_res0_128_1024_3_VQH_
#include "codebook.h"
-static long _vq_quantlist_res_Zc_1[] = {
+static long _vq_quantlist_res0_128_1024_3[] = {
1,
0,
2,
};
-static long _vq_lengthlist_res_Zc_1[] = {
- 1, 6, 6, 0, 5, 5, 0, 5, 5, 5, 8, 8, 0, 9, 8, 0,
- 8, 8, 5, 8, 9, 0, 8, 9, 0, 8, 9, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 5, 9, 8, 0, 8, 7, 0, 7, 8, 5, 8, 9,
- 0, 7, 8, 0, 8, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
- 9, 8, 0, 8, 7, 0, 8, 7, 5, 8, 9, 0, 7, 8, 0, 7,
- 8,
+static long _vq_lengthlist_res0_128_1024_3[] = {
+ 2, 6, 6, 0, 4, 4, 0, 4, 5, 7,10,10, 0, 9, 8, 0,
+ 8, 9, 7,10,10, 0, 8, 9, 0, 9, 7, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 4, 8, 9, 0, 6, 6, 0, 6, 8, 4, 9, 8,
+ 0, 6, 6, 0, 8, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4,
+ 9, 8, 0, 8, 6, 0, 6, 7, 4, 8, 9, 0, 6, 8, 0, 7,
+ 7,
};
-static float _vq_quantthresh_res_Zc_1[] = {
+static float _vq_quantthresh_res0_128_1024_3[] = {
-0.5, 0.5,
};
-static long _vq_quantmap_res_Zc_1[] = {
+static long _vq_quantmap_res0_128_1024_3[] = {
1, 0, 2,
};
-static encode_aux_threshmatch _vq_auxt_res_Zc_1 = {
- _vq_quantthresh_res_Zc_1,
- _vq_quantmap_res_Zc_1,
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_3 = {
+ _vq_quantthresh_res0_128_1024_3,
+ _vq_quantmap_res0_128_1024_3,
3,
3
};
-static long _vq_pigeonmap_res_Zc_1[] = {
+static long _vq_pigeonmap_res0_128_1024_3[] = {
0, 0,
};
-static long _vq_fitlist_res_Zc_1[] = {
+static long _vq_fitlist_res0_128_1024_3[] = {
0, 1, 2, 4, 5, 7, 8, 9,
10, 11, 13, 14, 16, 17, 18, 19,
20, 22, 23, 25, 26, 36, 37, 38,
@@ -62,31 +62,31 @@ static long _vq_fitlist_res_Zc_1[] = {
80,
};
-static long _vq_fitmap_res_Zc_1[] = {
+static long _vq_fitmap_res0_128_1024_3[] = {
0,
};
-static long _vq_fitlength_res_Zc_1[] = {
+static long _vq_fitlength_res0_128_1024_3[] = {
49,
};
-static encode_aux_pigeonhole _vq_auxp_res_Zc_1 = {
+static encode_aux_pigeonhole _vq_auxp_res0_128_1024_3 = {
-1, 1, 2, 1,
- _vq_pigeonmap_res_Zc_1,
+ _vq_pigeonmap_res0_128_1024_3,
49,
- _vq_fitlist_res_Zc_1,
- _vq_fitmap_res_Zc_1,
- _vq_fitlength_res_Zc_1
+ _vq_fitlist_res0_128_1024_3,
+ _vq_fitmap_res0_128_1024_3,
+ _vq_fitlength_res0_128_1024_3
};
-static static_codebook _vq_book_res_Zc_1 = {
+static static_codebook _vq_book_res0_128_1024_3 = {
4, 81,
- _vq_lengthlist_res_Zc_1,
+ _vq_lengthlist_res0_128_1024_3,
1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res_Zc_1,
+ _vq_quantlist_res0_128_1024_3,
NULL,
- &_vq_auxt_res_Zc_1,
- &_vq_auxp_res_Zc_1,
+ &_vq_auxt_res0_128_1024_3,
+ &_vq_auxp_res0_128_1024_3,
0
};
diff --git a/lib/books/res0_128_1024_4.vqh b/lib/books/res0_128_1024_4.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..15988b1b90f1bfc5309971e4be11e87a3175aa24
--- /dev/null
+++ b/lib/books/res0_128_1024_4.vqh
@@ -0,0 +1,148 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_4_VQH_
+#define _V_res0_128_1024_4_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_4[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res0_128_1024_4[] = {
+ 1, 7, 6, 0,13, 0, 5, 5,10,10, 0, 5, 5,10,10, 0,
+ 6, 6, 8, 8, 0, 0, 0,10, 9, 7,11,11,12, 0, 0,11,
+ 10,13, 0, 0, 9,11,13, 0, 0,13, 9, 0, 0, 0, 0, 0,
+ 11, 0, 7,10,12,11, 0, 0, 9,13,12, 0, 0,11,11,12,
+ 10, 0, 9,11,13,13, 0, 0, 0, 0,11,11, 0, 0, 0, 0,
+ 0, 0,13, 0, 0, 0, 0, 0,13, 0, 0, 0, 0, 0,13, 0,
+ 0, 0,12, 0, 0,12,12, 0,13, 0, 0, 0, 0, 0, 0, 0,
+ 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5,10,11, 0, 0, 0, 9, 8,12,11,
+ 0,11,12,11,12, 0,10, 8,11,10, 0, 0, 0,10, 0, 5,
+ 10, 9, 0,13, 0, 8, 9, 0,12, 0,11, 9, 0, 9, 0, 9,
+ 11, 0,11, 0, 0, 0, 0,11,10, 0, 0, 0, 0, 0, 0,12,
+ 0, 0, 0,12, 0, 0, 0, 0, 0,12, 0, 0, 0, 0, 0, 0,
+ 0,10, 0,11, 0, 0, 0, 0,11, 0, 0, 0, 0,11, 0,12,
+ 0,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5,11, 9, 0,12, 0,11,10,12,12, 0, 9, 9,
+ 0,11, 0,11, 9,12, 0, 0, 0, 0,11, 0, 5,10,10,11,
+ 0, 0, 9,10,11, 0, 0,10,10,11, 0, 0, 9,10,11,12,
+ 0, 0, 0,12,11, 9,11,10, 0, 0, 0, 0,10, 0, 0, 0,
+ 10,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12, 0,10,10,
+ 0, 0, 0, 0,11, 0, 0, 0, 0, 0,11, 0, 0, 0,11, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 6, 8,11, 0, 0, 0, 9,11, 0, 0, 0, 8,10,12, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,11, 9, 0, 0, 0,11,
+ 8, 0, 0, 0,10, 9, 0,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 8,12, 0, 0, 0, 0, 0,11, 0, 0, 0,12, 0, 0,
+ 0, 0,12,12, 0,11, 0, 0, 0, 0, 0, 8,12, 0, 0, 0,
+ 0,11,10, 0, 0, 0, 0,11, 0, 0, 0, 0,12,12, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+ 0,11, 0, 0, 0, 0,11, 0, 0, 0,12, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 9,11, 0, 0, 0, 0,11, 0,
+ 0, 0, 0,11,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static float _vq_quantthresh_res0_128_1024_4[] = {
+ -1.5, -0.5, 0.5, 1.5,
+};
+
+static long _vq_quantmap_res0_128_1024_4[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_4 = {
+ _vq_quantthresh_res0_128_1024_4,
+ _vq_quantmap_res0_128_1024_4,
+ 5,
+ 5
+};
+
+static long _vq_pigeonmap_res0_128_1024_4[] = {
+ 1, 0, 0, 0,
+};
+
+static long _vq_fitlist_res0_128_1024_4[] = {
+ 0, 1, 2, 6, 7, 8, 11, 12,
+ 13, 16, 17, 18, 25, 26, 27, 28,
+ 31, 32, 33, 36, 37, 38, 41, 42,
+ 50, 51, 52, 53, 56, 57, 58, 61,
+ 62, 63, 66, 67, 68, 75, 82, 88,
+ 150, 151, 152, 156, 157, 158, 161, 162,
+ 163, 166, 167, 168, 175, 176, 177, 181,
+ 182, 186, 187, 191, 192, 200, 207, 211,
+ 217, 275, 276, 277, 281, 282, 283, 286,
+ 287, 291, 292, 293, 300, 301, 302, 303,
+ 306, 307, 308, 311, 316, 325, 326, 327,
+ 332, 336, 400, 401, 402, 406, 407, 411,
+ 412, 413, 425, 426, 427, 431, 432, 436,
+ 450, 451, 457, 461, 466, 4, 9, 14,
+ 19, 64, 69, 94, 159, 164, 169, 179,
+ 184, 189, 194, 279, 284, 289, 312, 317,
+ 337, 437, 467, 319, 439, 469, 23, 48,
+ 98, 173, 298, 313, 24, 74, 199, 324,
+ 323, 348, 101, 102, 112, 225, 227, 232,
+ 237, 241, 318, 350, 351, 356, 366, 475,
+ 476, 481, 482, 104, 239, 362, 487, 492,
+ 493, 575, 577, 582, 586, 600, 601, 606,
+ 611, 612,
+};
+
+static long _vq_fitmap_res0_128_1024_4[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static long _vq_fitlength_res0_128_1024_4[] = {
+ 178, 178, 178, 178, 178, 178, 178, 178,
+ 178, 178, 178, 178, 178, 178, 178, 178,
+};
+
+static encode_aux_pigeonhole _vq_auxp_res0_128_1024_4 = {
+ -2, 1, 4, 2,
+ _vq_pigeonmap_res0_128_1024_4,
+ 178,
+ _vq_fitlist_res0_128_1024_4,
+ _vq_fitmap_res0_128_1024_4,
+ _vq_fitlength_res0_128_1024_4
+};
+
+static static_codebook _vq_book_res0_128_1024_4 = {
+ 4, 625,
+ _vq_lengthlist_res0_128_1024_4,
+ 1, -533725184, 1611661312, 3, 0,
+ _vq_quantlist_res0_128_1024_4,
+ NULL,
+ &_vq_auxt_res0_128_1024_4,
+ &_vq_auxp_res0_128_1024_4,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res0_128_1024_5.vqh b/lib/books/res0_128_1024_5.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..5d351c50d9df3b324272941e1fa1e5372fc512ef
--- /dev/null
+++ b/lib/books/res0_128_1024_5.vqh
@@ -0,0 +1,268 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_5_VQH_
+#define _V_res0_128_1024_5_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_5[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res0_128_1024_5[] = {
+ 2, 7, 6,14,14, 0, 5, 5,11,11, 0, 5, 5,10,10, 0,
+ 6, 6, 9, 9, 0, 0, 0, 9, 9, 7, 9, 9,15,13, 0, 9,
+ 8,13,12, 0, 8, 9,11,12, 0,11, 9,13,11, 0, 0, 0,
+ 10,13, 6, 9, 9,14,15, 0, 8, 9,12,13, 0, 9, 8,12,
+ 11, 0, 9,11,11,13, 0, 0, 0,12,10,13,13,14, 0, 0,
+ 0,14,14, 0,16, 0,13,14,15,17, 0,17,14, 0,17, 0,
+ 0, 0,14,17,13,15,15, 0,16, 0,13,16, 0, 0, 0,15,
+ 13, 0,14, 0,14, 0,14, 0, 0, 0, 0, 0,16, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 8, 9,13,15, 0, 6, 6,11,13,
+ 0, 6, 8,10,13, 0, 9, 8,10,10, 0, 0, 0,10,12, 5,
+ 9, 8,16,13, 0, 6, 6,12,11, 0, 8, 6,13,10, 0, 8,
+ 9,10,10, 0, 0, 0,12,10,10,13,13, 0, 0, 0,12,11,
+ 15,17, 0,11,13,13, 0, 0,16,12,15,14, 0, 0, 0,14,
+ 16,11,13,12, 0,15, 0,11,13,17,14, 0,13,11,16,14,
+ 0,12,14,14,15, 0, 0, 0,16,13, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 9, 8,17,13, 0, 8, 6,13,11, 0, 7, 6,
+ 11,10, 0, 9, 8,13,10, 0, 0, 0,10,10, 5, 8, 9,13,
+ 15, 0, 6, 7,11,13, 0, 6, 7,10,12, 0, 8, 9,10,12,
+ 0, 0, 0,10,10,10,12,11, 0,14, 0,13,10,17,14, 0,
+ 10,11,13,14, 0,15,11, 0,13, 0, 0, 0,12,15,10,11,
+ 12,14, 0, 0,10,13,13,15, 0,11,10,13,14, 0,11,17,
+ 14,16, 0, 0, 0,16,12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 7, 9,11,14,17, 0, 8, 9,12,15, 0, 8, 9,11,17, 0,
+ 10,10,12,14, 0, 0, 0,11,14, 6,11, 9,17,14, 0, 8,
+ 8,15,12, 0, 9, 8,15,11, 0,10,10,14,12, 0, 0, 0,
+ 13,11, 9,12,12,15, 0, 0,10,10,13,16, 0,10,12,14,
+ 16, 0,13,11,13,13, 0, 0, 0,13, 0, 9,12,11, 0,15,
+ 0, 9,10,14,14, 0,12,10,17,13, 0,11,12,12,13, 0,
+ 0, 0,16,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+ 13,11, 0,14, 0,12,10, 0,13, 0,10,10,14,12, 0,13,
+ 11, 0,14, 0, 0, 0,13,12, 9,10,13,14, 0, 0,10,11,
+ 13,17, 0,10,10,12,15, 0,11,13,14,16, 0, 0, 0,12,
+ 12,
+};
+
+static float _vq_quantthresh_res0_128_1024_5[] = {
+ -1.5, -0.5, 0.5, 1.5,
+};
+
+static long _vq_quantmap_res0_128_1024_5[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_5 = {
+ _vq_quantthresh_res0_128_1024_5,
+ _vq_quantmap_res0_128_1024_5,
+ 5,
+ 5
+};
+
+static long _vq_pigeonmap_res0_128_1024_5[] = {
+ 1, 0, 0, 0,
+};
+
+static long _vq_fitlist_res0_128_1024_5[] = {
+ 0, 1, 2, 3, 6, 7, 8, 11,
+ 12, 13, 16, 17, 18, 25, 26, 27,
+ 28, 31, 32, 33, 36, 37, 38, 41,
+ 42, 43, 50, 51, 52, 53, 56, 57,
+ 58, 61, 62, 63, 66, 67, 68, 75,
+ 76, 77, 81, 82, 86, 87, 88, 91,
+ 92, 150, 151, 152, 153, 156, 157, 158,
+ 161, 162, 163, 166, 167, 168, 175, 176,
+ 177, 178, 181, 182, 183, 186, 187, 188,
+ 191, 192, 193, 200, 201, 202, 206, 207,
+ 208, 211, 212, 213, 216, 217, 218, 275,
+ 276, 277, 278, 281, 282, 283, 286, 287,
+ 288, 291, 292, 293, 300, 301, 302, 303,
+ 306, 307, 308, 311, 316, 325, 326, 327,
+ 331, 332, 333, 336, 341, 400, 401, 402,
+ 403, 406, 407, 408, 411, 412, 413, 416,
+ 417, 418, 425, 426, 427, 428, 431, 432,
+ 433, 436, 441, 450, 451, 452, 453, 456,
+ 457, 458, 461, 466, 4, 9, 14, 19,
+ 29, 34, 39, 44, 54, 59, 64, 69,
+ 84, 89, 94, 154, 159, 164, 169, 179,
+ 184, 189, 194, 209, 219, 279, 284, 289,
+ 294, 304, 309, 312, 317, 329, 334, 337,
+ 342, 404, 409, 414, 419, 429, 434, 437,
+ 442, 459, 462, 467, 314, 319, 339, 344,
+ 439, 444, 464, 469, 23, 48, 73, 98,
+ 173, 198, 223, 298, 313, 338, 423, 438,
+ 463, 24, 49, 74, 99, 174, 199, 224,
+ 299, 424, 324, 349, 449, 323, 348, 448,
+ 473, 100, 101, 102, 106, 107, 111, 112,
+ 116, 118, 225, 226, 227, 231, 232, 233,
+ 236, 237, 238, 241, 242, 243, 318, 350,
+ 351, 352, 353, 356, 357, 358, 361, 366,
+ 443, 475, 476, 477, 481, 482, 483, 486,
+ 491, 104, 114, 229, 234, 239, 244, 359,
+ 362, 367, 479, 484, 487, 492, 364, 369,
+ 489, 494, 248, 363, 488, 124, 249, 374,
+ 499, 373, 498, 368, 493, 575, 576, 577,
+ 581, 582, 586, 591, 579, 584, 587, 592,
+ 589, 594, 588, 599, 598, 600, 601, 602,
+ 603, 606, 607, 608, 611, 616, 609, 612,
+ 617, 614, 619, 613, 624, 623, 618, 0,
+ 1, 3, 6, 8, 11, 13, 16, 18,
+ 25, 26, 28, 31, 33, 36, 38, 41,
+ 43, 50, 51, 53, 56, 58, 61, 63,
+ 66, 68, 75, 76, 81, 86, 88, 91,
+ 150, 151, 153, 156, 158, 161, 163, 166,
+ 168, 175, 176, 178, 181, 183, 186, 188,
+ 191, 193, 200, 201, 206, 208, 211, 213,
+ 216, 218, 275, 276, 278, 281, 283, 286,
+ 288, 291, 293, 300, 301, 303, 306, 308,
+ 311, 313, 316, 318, 325, 326, 331, 333,
+ 336, 338, 341, 400, 401, 403, 406, 408,
+ 411, 413, 416, 418, 425, 426, 428, 431,
+ 433, 436, 438, 441, 443, 450, 451, 453,
+ 456, 458, 461, 463, 466, 468, 23, 48,
+ 73, 98, 173, 198, 223, 298, 323, 348,
+ 423, 448, 473, 100, 101, 106, 111, 116,
+ 118, 225, 226, 231, 233, 236, 238, 241,
+ 243, 350, 351, 353, 356, 358, 361, 363,
+ 366, 368, 475, 476, 481, 483, 486, 488,
+ 491, 493, 248, 373, 498, 575, 576, 581,
+ 586, 588, 591, 598, 600, 601, 603, 606,
+ 608, 611, 613, 616, 618, 623, 0, 1,
+ 2, 3, 6, 7, 8, 16, 17, 18,
+ 25, 26, 27, 28, 31, 32, 33, 41,
+ 42, 43, 50, 51, 52, 53, 56, 57,
+ 58, 66, 67, 68, 75, 76, 77, 81,
+ 82, 91, 92, 150, 151, 152, 153, 156,
+ 157, 158, 166, 167, 168, 175, 176, 177,
+ 178, 181, 182, 183, 191, 192, 193, 200,
+ 201, 202, 206, 207, 208, 216, 217, 218,
+ 275, 276, 277, 278, 281, 282, 283, 291,
+ 292, 293, 300, 301, 306, 307, 308, 316,
+ 317, 318, 325, 326, 331, 332, 333, 341,
+ 342, 400, 401, 402, 403, 406, 407, 408,
+ 416, 417, 418, 425, 426, 431, 432, 433,
+ 441, 442, 443, 450, 451, 456, 457, 458,
+ 466, 467, 468, 4, 9, 19, 29, 34,
+ 44, 54, 59, 69, 84, 94, 154, 159,
+ 169, 179, 184, 194, 209, 219, 279, 284,
+ 294, 302, 309, 319, 327, 334, 344, 404,
+ 409, 419, 427, 434, 444, 452, 459, 469,
+ 304, 329, 429, 100, 101, 102, 106, 107,
+ 116, 118, 225, 226, 227, 231, 232, 233,
+ 241, 242, 243, 303, 350, 351, 356, 357,
+ 358, 366, 367, 368, 428, 475, 476, 481,
+ 482, 483, 491, 492, 493, 104, 229, 234,
+ 244, 352, 359, 369, 477, 484, 494, 479,
+ 353, 575, 576, 581, 582, 591, 592, 577,
+ 584, 594, 579, 600, 601, 606, 607, 608,
+ 616, 617, 618, 602, 609, 619, 603, 0,
+ 1, 2, 3, 6, 7, 8, 11, 12,
+ 13, 16, 17, 18, 25, 26, 27, 28,
+ 31, 32, 33, 36, 37, 38, 41, 42,
+ 43, 75, 76, 77, 81, 82, 86, 87,
+ 88, 91, 92, 150, 151, 152, 153, 156,
+ 157, 158, 161, 162, 163, 166, 167, 168,
+ 200, 201, 202, 206, 207, 208, 211, 212,
+ 213, 216, 217, 218, 275, 276, 277, 278,
+ 281, 282, 283, 286, 287, 288, 291, 292,
+ 293, 325, 326, 327, 331, 332, 333, 336,
+ 337, 338, 341, 342, 400, 401, 402, 403,
+ 406, 407, 408, 411, 412, 413, 416, 417,
+ 418, 450, 451, 452, 453, 456, 457, 458,
+ 461, 462, 463, 466, 467, 468, 4, 9,
+ 14, 19, 29, 34, 39, 44, 84, 89,
+ 94, 154, 159, 164, 169, 209, 219, 279,
+ 284, 289, 294, 329, 334, 339, 344, 404,
+ 409, 414, 419, 459, 464, 469, 23, 48,
+ 98, 173, 223, 298, 348, 423, 473, 24,
+ 49, 99, 174, 224, 299, 349, 424, 575,
+ 576, 577, 581, 582, 586, 587, 588, 591,
+ 592, 579, 584, 589, 594, 598, 599, 0,
+ 1, 2, 3, 6, 7, 8, 11, 12,
+ 13, 16, 17, 18, 25, 26, 27, 28,
+ 31, 32, 33, 36, 37, 38, 41, 42,
+ 43, 50, 51, 52, 53, 56, 57, 58,
+ 61, 66, 75, 76, 77, 81, 82, 86,
+ 91, 150, 151, 152, 153, 156, 157, 158,
+ 161, 162, 163, 166, 167, 168, 175, 176,
+ 177, 178, 181, 182, 183, 186, 187, 188,
+ 191, 192, 193, 200, 201, 202, 206, 207,
+ 208, 211, 212, 213, 216, 217, 218, 400,
+ 401, 402, 403, 406, 407, 408, 411, 412,
+ 413, 416, 417, 418, 425, 426, 427, 428,
+ 431, 432, 433, 436, 437, 438, 441, 442,
+ 443, 450, 451, 452, 453, 456, 457, 458,
+ 461, 462, 463, 466, 467, 468, 4, 9,
+ 14, 19, 29, 34, 39, 44, 54, 59,
+ 62, 67, 84, 87, 92, 154, 159, 164,
+ 169, 179, 184, 189, 194, 209, 219, 404,
+ 409, 414, 419, 429, 434, 439, 444, 459,
+ 464, 469, 64, 69, 89, 94, 23, 48,
+ 63, 88, 173, 198, 223, 423, 448, 473,
+ 24, 49, 174, 199, 224, 424, 449, 74,
+ 99, 73, 98, 68, 100, 101, 102, 106,
+ 107, 111, 116, 225, 226, 227, 231, 232,
+ 233, 236, 237, 238, 241, 242, 243, 475,
+ 476, 477, 481, 482, 483, 486, 487, 488,
+ 491, 492, 493, 104, 112, 229, 234, 239,
+ 244, 479, 484, 489, 494, 114, 248, 498,
+ 249, 499, 124, 118,
+};
+
+static long _vq_fitmap_res0_128_1024_5[] = {
+ 0, 335, 510, 335, 735, 335, 735, 335,
+ 911, 335, 911, 335, 735, 335, 735, 335,
+};
+
+static long _vq_fitlength_res0_128_1024_5[] = {
+ 335, 175, 225, 175, 176, 175, 176, 175,
+ 229, 175, 229, 175, 176, 175, 176, 175,
+};
+
+static encode_aux_pigeonhole _vq_auxp_res0_128_1024_5 = {
+ -2, 1, 4, 2,
+ _vq_pigeonmap_res0_128_1024_5,
+ 1140,
+ _vq_fitlist_res0_128_1024_5,
+ _vq_fitmap_res0_128_1024_5,
+ _vq_fitlength_res0_128_1024_5
+};
+
+static static_codebook _vq_book_res0_128_1024_5 = {
+ 4, 625,
+ _vq_lengthlist_res0_128_1024_5,
+ 1, -533725184, 1611661312, 3, 0,
+ _vq_quantlist_res0_128_1024_5,
+ NULL,
+ &_vq_auxt_res0_128_1024_5,
+ &_vq_auxp_res0_128_1024_5,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res0_128_1024_6.vqh b/lib/books/res0_128_1024_6.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..ae0c7ebf63187949fa0f3829cacccf4e510abb48
--- /dev/null
+++ b/lib/books/res0_128_1024_6.vqh
@@ -0,0 +1,137 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_6_VQH_
+#define _V_res0_128_1024_6_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_6[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res0_128_1024_6[] = {
+ 1, 6, 6, 0,12, 5, 5, 5, 0,12, 0, 5, 4,10,10, 0,
+ 12,12,12,11, 0,12, 0, 0,12, 6,10, 9, 0, 0,10,12,
+ 9, 0, 0, 0, 9,10,12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 12, 0, 7, 9,10, 0, 0,10, 9,11, 0, 0, 0,11, 7, 0,
+ 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0,12, 0, 0, 0, 0,12, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 9, 9,
+ 0, 0, 9,10, 9, 0, 0, 0,10, 9,12, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 9,12, 0, 0, 9, 9, 8, 0, 0,
+ 0,10,12,12, 0, 0, 0,12, 0, 0, 0, 0, 0, 0, 0, 5,
+ 12, 8, 0, 0,11,10,10, 0, 0, 0, 0, 9, 0,12, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,12, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5,10, 7, 0,12, 9,12, 9, 0, 0, 0, 9,10,
+ 0,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 7, 0, 0,
+ 0, 9, 9,12, 0, 0, 0, 9, 9,12, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 9, 0,10, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,12,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,
+ 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static float _vq_quantthresh_res0_128_1024_6[] = {
+ -4.5, -1.5, 1.5, 4.5,
+};
+
+static long _vq_quantmap_res0_128_1024_6[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_6 = {
+ _vq_quantthresh_res0_128_1024_6,
+ _vq_quantmap_res0_128_1024_6,
+ 5,
+ 5
+};
+
+static long _vq_pigeonmap_res0_128_1024_6[] = {
+ 1, 0, 0, 0,
+};
+
+static long _vq_fitlist_res0_128_1024_6[] = {
+ 0, 1, 2, 5, 6, 7, 11, 12,
+ 13, 16, 17, 18, 25, 26, 27, 30,
+ 31, 32, 36, 37, 38, 50, 51, 52,
+ 55, 56, 57, 61, 62, 77, 125, 126,
+ 127, 130, 131, 132, 136, 137, 138, 150,
+ 151, 152, 155, 156, 157, 161, 162, 163,
+ 167, 175, 176, 177, 180, 181, 182, 187,
+ 200, 275, 276, 277, 280, 281, 282, 286,
+ 287, 300, 301, 305, 306, 307, 311, 325,
+ 327, 427, 4, 9, 14, 19, 64, 189,
+ 279, 289, 312, 21, 48, 313, 24, 100,
+ 105, 350, 351, 575, 577,
+};
+
+static long _vq_fitmap_res0_128_1024_6[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static long _vq_fitlength_res0_128_1024_6[] = {
+ 93, 93, 93, 93, 93, 93, 93, 93,
+ 93, 93, 93, 93, 93, 93, 93, 93,
+};
+
+static encode_aux_pigeonhole _vq_auxp_res0_128_1024_6 = {
+ -6, 3, 4, 2,
+ _vq_pigeonmap_res0_128_1024_6,
+ 93,
+ _vq_fitlist_res0_128_1024_6,
+ _vq_fitmap_res0_128_1024_6,
+ _vq_fitlength_res0_128_1024_6
+};
+
+static static_codebook _vq_book_res0_128_1024_6 = {
+ 4, 625,
+ _vq_lengthlist_res0_128_1024_6,
+ 1, -531103744, 1614282752, 3, 0,
+ _vq_quantlist_res0_128_1024_6,
+ NULL,
+ &_vq_auxt_res0_128_1024_6,
+ &_vq_auxp_res0_128_1024_6,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res0_128_1024_7.vqh b/lib/books/res0_128_1024_7.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..163b8e6bb78d246daf6a290bc84bce6dac11cdb5
--- /dev/null
+++ b/lib/books/res0_128_1024_7.vqh
@@ -0,0 +1,150 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_7_VQH_
+#define _V_res0_128_1024_7_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_7[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res0_128_1024_7[] = {
+ 1, 6, 7,14, 0, 4, 5, 6, 0, 0, 0, 5, 5,10,11, 0,
+ 13,12,11,11, 0,12,11,10,11, 6,11,11, 0, 0, 9,11,
+ 9, 0, 0, 0, 8,10,13, 0, 0, 0,13, 0,13, 0, 0,14,
+ 14, 0, 6,10,11, 0,14, 9, 9,11, 0, 0, 0,10, 9, 0,
+ 13, 0, 0,13,13, 0, 0, 0, 0, 0,13, 0,14, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,14, 0, 0,14, 0, 0, 0, 0, 0, 0,
+ 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 9, 9,
+ 0, 0, 8, 8, 9, 0, 0, 0, 8, 8,14,14, 0,14,14,13,
+ 0, 0,14,12,13,12, 6,10,11, 0, 0, 9, 9, 9,14, 0,
+ 0, 9,11,14, 0, 0, 0,12,14,13, 0,14,14,13, 0, 6,
+ 11,10, 0, 0, 8, 9, 9, 0, 0, 0,11, 9, 0, 0, 0,13,
+ 14,13,14, 0, 0,14, 0,14,13, 0,14, 0, 0, 0, 0,14,
+ 0, 0, 0,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,12, 0, 0, 0, 0,14,14, 0, 0, 0, 0, 0,14, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5,11, 8, 0, 0, 8,12, 9, 0, 0, 0, 9, 8,
+ 0,12, 0, 0, 0, 0, 0, 0,13,13, 0,12, 5, 8,10,14,
+ 0, 8, 9,11,14, 0, 0, 8, 9,14, 0, 0, 0, 0, 0, 0,
+ 0,14,14,13, 0,11, 0,12, 0, 0,13, 0,13, 0,14, 0,
+ 13,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,11,
+ 13,14, 0,13, 0,14, 0, 0, 0,14, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 11,13, 0, 0, 0, 0,14,14, 0, 0, 0,13, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12, 0,14, 0, 0,12,13,
+ 13, 0,14, 0,14,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0,12, 0, 0, 0, 0,14,13,13, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0,13, 0, 0, 0, 0, 0,11, 0,13, 0, 0,
+ 14,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,14, 0, 0,
+ 0,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,14,11,
+ 0, 0,14, 0,14, 0, 0, 0,13,12, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,11,13, 0, 0, 0,13,14, 0, 0, 0,
+ 0,14,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,
+ 0, 0, 0, 0, 0,14,14, 0, 0, 0, 0,13, 0,14, 0, 0,
+ 0, 0, 0, 0,14,14, 0, 0,11,12,14, 0, 0,14, 0, 0,
+ 0, 0, 0,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static float _vq_quantthresh_res0_128_1024_7[] = {
+ -4.5, -1.5, 1.5, 4.5,
+};
+
+static long _vq_quantmap_res0_128_1024_7[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_7 = {
+ _vq_quantthresh_res0_128_1024_7,
+ _vq_quantmap_res0_128_1024_7,
+ 5,
+ 5
+};
+
+static long _vq_pigeonmap_res0_128_1024_7[] = {
+ 1, 0, 0, 0,
+};
+
+static long _vq_fitlist_res0_128_1024_7[] = {
+ 0, 1, 2, 3, 5, 6, 7, 11,
+ 12, 13, 16, 17, 18, 25, 26, 27,
+ 30, 31, 32, 36, 37, 38, 42, 50,
+ 51, 52, 55, 56, 57, 61, 62, 67,
+ 68, 76, 125, 126, 127, 130, 131, 132,
+ 136, 137, 138, 141, 142, 143, 150, 151,
+ 152, 155, 156, 157, 158, 161, 162, 163,
+ 167, 168, 175, 176, 177, 180, 181, 182,
+ 186, 187, 191, 192, 193, 200, 202, 207,
+ 211, 275, 276, 277, 280, 281, 282, 286,
+ 287, 300, 301, 302, 303, 305, 306, 307,
+ 308, 311, 325, 327, 330, 332, 336, 400,
+ 401, 406, 407, 411, 425, 427, 430, 431,
+ 432, 436, 450, 455, 456, 457, 14, 19,
+ 44, 54, 64, 139, 169, 194, 289, 312,
+ 334, 337, 434, 437, 469, 21, 22, 23,
+ 47, 48, 146, 147, 148, 171, 172, 173,
+ 197, 296, 297, 313, 321, 24, 74, 149,
+ 199, 299, 322, 323, 102, 105, 112, 225,
+ 230, 231, 237, 350, 351, 352, 353, 355,
+ 357, 361, 475, 477, 480, 481, 372, 497,
+ 493, 525, 526, 527, 530, 532, 536, 537,
+ 550, 551, 555, 556, 561, 575, 581, 582,
+ 562, 587, 589, 596, 597, 600, 601, 602,
+ 605, 611,
+};
+
+static long _vq_fitmap_res0_128_1024_7[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static long _vq_fitlength_res0_128_1024_7[] = {
+ 194, 194, 194, 194, 194, 194, 194, 194,
+ 194, 194, 194, 194, 194, 194, 194, 194,
+};
+
+static encode_aux_pigeonhole _vq_auxp_res0_128_1024_7 = {
+ -6, 3, 4, 2,
+ _vq_pigeonmap_res0_128_1024_7,
+ 194,
+ _vq_fitlist_res0_128_1024_7,
+ _vq_fitmap_res0_128_1024_7,
+ _vq_fitlength_res0_128_1024_7
+};
+
+static static_codebook _vq_book_res0_128_1024_7 = {
+ 4, 625,
+ _vq_lengthlist_res0_128_1024_7,
+ 1, -531103744, 1614282752, 3, 0,
+ _vq_quantlist_res0_128_1024_7,
+ NULL,
+ &_vq_auxt_res0_128_1024_7,
+ &_vq_auxp_res0_128_1024_7,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Zc_9b.vqh b/lib/books/res0_128_1024_7a.vqh
similarity index 57%
rename from lib/books/res_Zc_9b.vqh
rename to lib/books/res0_128_1024_7a.vqh
index 38f4d97ec392b9272978e8711fd97a39fbccacc2..d48b87a7d3d00332a5bbb3c8091fff8c21f0372f 100644
--- a/lib/books/res_Zc_9b.vqh
+++ b/lib/books/res0_128_1024_7a.vqh
@@ -14,47 +14,47 @@
********************************************************************/
-#ifndef _V_res_Zc_9b_VQH_
-#define _V_res_Zc_9b_VQH_
+#ifndef _V_res0_128_1024_7a_VQH_
+#define _V_res0_128_1024_7a_VQH_
#include "codebook.h"
-static long _vq_quantlist_res_Zc_9b[] = {
+static long _vq_quantlist_res0_128_1024_7a[] = {
1,
0,
2,
};
-static long _vq_lengthlist_res_Zc_9b[] = {
- 5, 6, 6, 7, 6, 6, 7, 6, 7, 6, 6, 6, 7, 6, 6, 7,
- 6, 7, 6, 6, 6, 7, 7, 7, 7, 6, 6, 7, 7, 7, 7, 7,
- 7, 7, 7, 8, 6, 6, 6, 7, 7, 6, 7, 6, 6, 6, 6, 6,
- 7, 6, 6, 7, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 6,
- 6, 6, 7, 6, 6, 8, 5, 6, 6, 6, 6, 6, 7, 6, 7, 6,
- 6,
+static long _vq_lengthlist_res0_128_1024_7a[] = {
+ 3, 6, 6, 9, 5, 5,10, 5, 5, 6, 8, 8,10, 7, 7,11,
+ 6, 7, 6, 8, 8, 9, 7, 7,10, 7, 7, 9,10,10,12, 9,
+ 9,11, 9, 9, 5, 7, 7, 9, 6, 6,10, 6, 6, 5, 7, 7,
+ 10, 6, 6,10, 6, 6,10,10,11,13,10, 9,13,10,10, 4,
+ 7, 6, 9, 6, 6, 9, 5, 5, 4, 6, 7, 9, 6, 6,10, 6,
+ 5,
};
-static float _vq_quantthresh_res_Zc_9b[] = {
+static float _vq_quantthresh_res0_128_1024_7a[] = {
-0.5, 0.5,
};
-static long _vq_quantmap_res_Zc_9b[] = {
+static long _vq_quantmap_res0_128_1024_7a[] = {
1, 0, 2,
};
-static encode_aux_threshmatch _vq_auxt_res_Zc_9b = {
- _vq_quantthresh_res_Zc_9b,
- _vq_quantmap_res_Zc_9b,
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_7a = {
+ _vq_quantthresh_res0_128_1024_7a,
+ _vq_quantmap_res0_128_1024_7a,
3,
3
};
-static static_codebook _vq_book_res_Zc_9b = {
+static static_codebook _vq_book_res0_128_1024_7a = {
4, 81,
- _vq_lengthlist_res_Zc_9b,
+ _vq_lengthlist_res0_128_1024_7a,
1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res_Zc_9b,
+ _vq_quantlist_res0_128_1024_7a,
NULL,
- &_vq_auxt_res_Zc_9b,
+ &_vq_auxt_res0_128_1024_7a,
NULL,
0
};
diff --git a/lib/books/res0_128_1024_8.vqh b/lib/books/res0_128_1024_8.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..7367e89e17ca074dc1e43edfb5789c3d56cf3365
--- /dev/null
+++ b/lib/books/res0_128_1024_8.vqh
@@ -0,0 +1,136 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_8_VQH_
+#define _V_res0_128_1024_8_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_8[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static long _vq_lengthlist_res0_128_1024_8[] = {
+ 1, 4, 4, 7, 7, 9,10,11,11, 5, 4, 4, 7, 7,10,10,
+ 11,11, 6, 5, 5, 7, 6, 9, 9,10,10, 0, 8, 7, 7, 7,
+ 9, 9,12,11, 0, 8, 8, 8, 8, 9, 9,10,10, 0,13,14,
+ 9, 9, 9, 9,10,10, 0,14,13,10,11,11,11,10,10, 0,
+ 0, 0,12,12,10,11,10,10, 0, 0, 0,12,13,12,12,12,
+ 12,
+};
+
+static float _vq_quantthresh_res0_128_1024_8[] = {
+ -17.5, -12.5, -7.5, -2.5, 2.5, 7.5, 12.5, 17.5,
+};
+
+static long _vq_quantmap_res0_128_1024_8[] = {
+ 7, 5, 3, 1, 0, 2, 4, 6,
+ 8,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_8 = {
+ _vq_quantthresh_res0_128_1024_8,
+ _vq_quantmap_res0_128_1024_8,
+ 9,
+ 9
+};
+
+static long _vq_pigeonmap_res0_128_1024_8[] = {
+ 2, 1, 1, 0, 0, 0, 1, 2,
+};
+
+static long _vq_fitlist_res0_128_1024_8[] = {
+ 0, 1, 2, 3, 9, 10, 11, 12,
+ 18, 19, 28, 4, 13, 20, 29, 6,
+ 15, 22, 31, 21, 37, 38, 24, 40,
+ 39, 55, 56, 42, 58, 1, 3, 5,
+ 7, 10, 12, 14, 16, 21, 23, 30,
+ 32, 0, 9, 19, 28, 2, 4, 6,
+ 8, 11, 13, 15, 17, 22, 24, 31,
+ 33, 25, 39, 41, 18, 37, 20, 26,
+ 40, 42, 43, 57, 59, 55, 38, 44,
+ 58, 60, 3, 5, 7, 12, 14, 16,
+ 23, 25, 32, 34, 4, 6, 8, 13,
+ 15, 17, 24, 26, 33, 35, 21, 41,
+ 43, 22, 42, 44, 39, 59, 61, 40,
+ 60, 62, 9, 10, 28, 29, 30, 46,
+ 47, 48, 11, 31, 49, 13, 33, 51,
+ 67, 0, 1, 12, 2, 4, 15, 18,
+ 19, 37, 38, 39, 55, 56, 57, 20,
+ 40, 58, 22, 42, 60, 76, 12, 14,
+ 28, 30, 32, 34, 46, 48, 50, 52,
+ 66, 68, 10, 13, 15, 29, 31, 33,
+ 35, 47, 49, 51, 53, 67, 69, 3,
+ 5, 16, 1, 9, 4, 6, 11, 17,
+ 21, 23, 37, 39, 41, 43, 55, 57,
+ 59, 61, 75, 77, 19, 22, 24, 38,
+ 40, 42, 44, 56, 58, 60, 62, 76,
+ 78, 14, 16, 30, 32, 34, 48, 50,
+ 52, 68, 70, 15, 17, 31, 33, 35,
+ 49, 51, 53, 69, 71, 5, 7, 12,
+ 6, 8, 13, 23, 25, 39, 41, 43,
+ 57, 59, 61, 77, 79, 24, 26, 40,
+ 42, 44, 58, 60, 62, 78, 80, 30,
+ 32, 46, 48, 50, 52, 66, 68, 70,
+ 28, 31, 33, 47, 49, 51, 53, 67,
+ 69, 71, 39, 41, 55, 57, 59, 61,
+ 75, 77, 79, 37, 40, 42, 56, 58,
+ 60, 62, 76, 78, 80, 32, 34, 48,
+ 50, 52, 66, 68, 70, 33, 35, 49,
+ 51, 53, 67, 69, 71, 41, 43, 57,
+ 59, 61, 75, 77, 79, 42, 44, 58,
+ 60, 62, 76, 78, 80,
+};
+
+static long _vq_fitmap_res0_128_1024_8[] = {
+ 0, 29, 74, 106, 142, 201, 142, 247,
+ 285,
+};
+
+static long _vq_fitlength_res0_128_1024_8[] = {
+ 29, 45, 32, 36, 59, 46, 59, 38,
+ 32,
+};
+
+static encode_aux_pigeonhole _vq_auxp_res0_128_1024_8 = {
+ -20, 5, 8, 3,
+ _vq_pigeonmap_res0_128_1024_8,
+ 317,
+ _vq_fitlist_res0_128_1024_8,
+ _vq_fitmap_res0_128_1024_8,
+ _vq_fitlength_res0_128_1024_8
+};
+
+static static_codebook _vq_book_res0_128_1024_8 = {
+ 2, 81,
+ _vq_lengthlist_res0_128_1024_8,
+ 1, -527171584, 1616117760, 4, 0,
+ _vq_quantlist_res0_128_1024_8,
+ NULL,
+ &_vq_auxt_res0_128_1024_8,
+ &_vq_auxp_res0_128_1024_8,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res0_128_1024_8a.vqh b/lib/books/res0_128_1024_8a.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..a38676c046ae9fe154197ab582873907fe91148c
--- /dev/null
+++ b/lib/books/res0_128_1024_8a.vqh
@@ -0,0 +1,61 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_8a_VQH_
+#define _V_res0_128_1024_8a_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_8a[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res0_128_1024_8a[] = {
+ 3, 4, 4, 5, 5, 6, 4, 4, 5, 5, 6, 4, 4, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 4,
+};
+
+static float _vq_quantthresh_res0_128_1024_8a[] = {
+ -1.5, -0.5, 0.5, 1.5,
+};
+
+static long _vq_quantmap_res0_128_1024_8a[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_8a = {
+ _vq_quantthresh_res0_128_1024_8a,
+ _vq_quantmap_res0_128_1024_8a,
+ 5,
+ 5
+};
+
+static static_codebook _vq_book_res0_128_1024_8a = {
+ 2, 25,
+ _vq_lengthlist_res0_128_1024_8a,
+ 1, -533725184, 1611661312, 3, 0,
+ _vq_quantlist_res0_128_1024_8a,
+ NULL,
+ &_vq_auxt_res0_128_1024_8a,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res0_128_1024_9.vqh b/lib/books/res0_128_1024_9.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..2a22c31449551a913b4da9c6985d4c0092ca2eae
--- /dev/null
+++ b/lib/books/res0_128_1024_9.vqh
@@ -0,0 +1,75 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_9_VQH_
+#define _V_res0_128_1024_9_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_9[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static long _vq_lengthlist_res0_128_1024_9[] = {
+ 1, 4, 4,12,12,12,12,12,12,12,12, 4, 5, 4,12,12,
+ 12,12,12,12,12,12, 3, 5, 5,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,
+};
+
+static float _vq_quantthresh_res0_128_1024_9[] = {
+ -760.5, -591.5, -422.5, -253.5, -84.5, 84.5, 253.5, 422.5,
+ 591.5, 760.5,
+};
+
+static long _vq_quantmap_res0_128_1024_9[] = {
+ 9, 7, 5, 3, 1, 0, 2, 4,
+ 6, 8, 10,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_9 = {
+ _vq_quantthresh_res0_128_1024_9,
+ _vq_quantmap_res0_128_1024_9,
+ 11,
+ 11
+};
+
+static static_codebook _vq_book_res0_128_1024_9 = {
+ 2, 121,
+ _vq_lengthlist_res0_128_1024_9,
+ 1, -516265984, 1626677248, 4, 0,
+ _vq_quantlist_res0_128_1024_9,
+ NULL,
+ &_vq_auxt_res0_128_1024_9,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res0_128_1024_9a.vqh b/lib/books/res0_128_1024_9a.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..8bd3366356c1e204a0c35b359f7b885a922f392f
--- /dev/null
+++ b/lib/books/res0_128_1024_9a.vqh
@@ -0,0 +1,80 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_9a_VQH_
+#define _V_res0_128_1024_9a_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_9a[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static long _vq_lengthlist_res0_128_1024_9a[] = {
+ 1, 5, 5, 7, 7, 9, 9,10,10,11,11,11,10, 6, 4, 5,
+ 7, 7, 9, 9,10,10,11,11,11,11, 7, 5, 5, 7, 7, 8,
+ 8,10,10,11,10,11,11,16, 7, 7, 6, 6, 8, 8,10,10,
+ 11,11,11,11,15, 8, 8, 7, 7, 9, 8, 9,10,11,11,11,
+ 11,16,12,11, 8, 8, 8, 8,10, 9,10,10,12,11,16,12,
+ 12, 8, 8, 9, 9,10,10,11,11,11,11,16,16,16,10,10,
+ 9, 9, 9, 9,10,10,10,10,15,15,16,10,10, 9,10,10,
+ 10,10,11,11,11,16,16,16,13,14,10,10,10,10,10,10,
+ 10,10,16,15,16,13,13,10,10,10,10,10,10,11,11,16,
+ 14,15,15,16,11,11,10,10,10,10,10,10,16,16,16,15,
+ 16,12,12,10,10,10,10,10,10,
+};
+
+static float _vq_quantthresh_res0_128_1024_9a[] = {
+ -71.5, -58.5, -45.5, -32.5, -19.5, -6.5, 6.5, 19.5,
+ 32.5, 45.5, 58.5, 71.5,
+};
+
+static long _vq_quantmap_res0_128_1024_9a[] = {
+ 11, 9, 7, 5, 3, 1, 0, 2,
+ 4, 6, 8, 10, 12,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_9a = {
+ _vq_quantthresh_res0_128_1024_9a,
+ _vq_quantmap_res0_128_1024_9a,
+ 13,
+ 13
+};
+
+static static_codebook _vq_book_res0_128_1024_9a = {
+ 2, 169,
+ _vq_lengthlist_res0_128_1024_9a,
+ 1, -523010048, 1618608128, 4, 0,
+ _vq_quantlist_res0_128_1024_9a,
+ NULL,
+ &_vq_auxt_res0_128_1024_9a,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res0_128_1024_9b.vqh b/lib/books/res0_128_1024_9b.vqh
new file mode 100644
index 0000000000000000000000000000000000000000..316293674cd86ce1cfc4779a935e82f001c6e9e3
--- /dev/null
+++ b/lib/books/res0_128_1024_9b.vqh
@@ -0,0 +1,80 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
+ * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res0_128_1024_9b_VQH_
+#define _V_res0_128_1024_9b_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res0_128_1024_9b[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static long _vq_lengthlist_res0_128_1024_9b[] = {
+ 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 6, 5,
+ 6, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 6, 6, 7, 6, 7,
+ 7, 8, 8, 8, 8, 8, 8, 9, 6, 6, 7, 7, 7, 7, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 8, 8, 8, 8,
+ 8, 9, 8, 8, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8,
+ 8, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 7, 7,
+ 7, 7, 8, 7, 7, 7, 8, 8, 9, 9, 8, 8, 8, 7, 7, 8,
+ 8, 7, 7, 8, 8, 8, 8, 8, 9, 9, 8, 8, 8, 8, 8, 7,
+ 8, 7, 9, 8, 8, 8, 9, 8, 8, 7, 7, 7, 8, 7, 8, 8,
+ 8, 8, 9, 9, 8, 8, 8, 8, 7, 7, 7, 7, 9, 9, 8, 9,
+ 9, 9, 8, 8, 8, 7, 7, 7, 7,
+};
+
+static float _vq_quantthresh_res0_128_1024_9b[] = {
+ -5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5, 1.5,
+ 2.5, 3.5, 4.5, 5.5,
+};
+
+static long _vq_quantmap_res0_128_1024_9b[] = {
+ 11, 9, 7, 5, 3, 1, 0, 2,
+ 4, 6, 8, 10, 12,
+};
+
+static encode_aux_threshmatch _vq_auxt_res0_128_1024_9b = {
+ _vq_quantthresh_res0_128_1024_9b,
+ _vq_quantmap_res0_128_1024_9b,
+ 13,
+ 13
+};
+
+static static_codebook _vq_book_res0_128_1024_9b = {
+ 2, 169,
+ _vq_lengthlist_res0_128_1024_9b,
+ 1, -531103744, 1611661312, 4, 0,
+ _vq_quantlist_res0_128_1024_9b,
+ NULL,
+ &_vq_auxt_res0_128_1024_9b,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/line_1024x31_0sub1.vqh b/lib/books/res0_128_1024aux.vqh
similarity index 66%
rename from lib/books/line_1024x31_0sub1.vqh
rename to lib/books/res0_128_1024aux.vqh
index 23b170018a0b087060c9730ee496a47b594b5638..5c2d33c59294015472f8384cd28b073db21756f6 100644
--- a/lib/books/line_1024x31_0sub1.vqh
+++ b/lib/books/res0_128_1024aux.vqh
@@ -15,20 +15,23 @@
********************************************************************/
-#ifndef _V_line_1024x31_0sub1_VQH_
-#define _V_line_1024x31_0sub1_VQH_
+#ifndef _V_res0_128_1024aux_VQH_
+#define _V_res0_128_1024aux_VQH_
#include "codebook.h"
-static long _huff_lengthlist_line_1024x31_0sub1[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 3, 3, 3, 3, 4, 4, 4, 4, 5, 4, 5, 5, 5, 6, 7, 7,
- 7, 7, 9,10, 9,12, 9,12, 9,12,11,12,12,12,12,12,
- 12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,
+static long _huff_lengthlist_res0_128_1024aux[] = {
+ 13,10,11,11,14,12,14,15,14,15, 9, 2,15,15,15,15,
+ 15,15, 7, 9,11,15, 9, 7,10, 8,10,11,15,15,11,15,
+ 7, 3, 7, 4, 7, 6,13,15,14,15,10, 7,11, 8,11, 9,
+ 15,15,10,15, 8, 4, 8, 3, 7, 5,13,15,14,15,10, 7,
+ 10, 7, 9, 9,13,15,13,15,10, 6,10, 5, 8, 7,12,15,
+ 12, 5,13,13,15,13,12,12, 6, 7,15, 7,15,15,15,15,
+ 15,15, 5, 4,
};
-static static_codebook _huff_book_line_1024x31_0sub1 = {
- 1, 64,
- _huff_lengthlist_line_1024x31_0sub1,
+static static_codebook _huff_book_res0_128_1024aux = {
+ 2, 100,
+ _huff_lengthlist_res0_128_1024aux,
0, 0, 0, 0, 0,
NULL,
NULL,
diff --git a/lib/books/res_Zc_1024aux.vqh b/lib/books/res0_128_128aux.vqh
similarity index 67%
rename from lib/books/res_Zc_1024aux.vqh
rename to lib/books/res0_128_128aux.vqh
index 99dca15e7beebdebdade93d04a61ab2ae1113fb1..975ccb058ab67aa88360c4193b2eb16d1c5459e9 100644
--- a/lib/books/res_Zc_1024aux.vqh
+++ b/lib/books/res0_128_128aux.vqh
@@ -15,23 +15,23 @@
********************************************************************/
-#ifndef _V_res_Zc_1024aux_VQH_
-#define _V_res_Zc_1024aux_VQH_
+#ifndef _V_res0_128_128aux_VQH_
+#define _V_res0_128_128aux_VQH_
#include "codebook.h"
-static long _huff_lengthlist_res_Zc_1024aux[] = {
- 3, 8, 9,11, 4, 7, 8,11,16,16, 8, 4, 5, 7,16,16,
- 16,16,14,16, 8, 4, 5, 6,16,16,16,16,12,16, 9, 5,
- 5, 5,16,16,16,16,10,16, 4,16,16,16, 3, 4, 7,11,
- 16,16, 6,16,16,16, 4, 4, 8,13,16,16, 9,16,16,16,
- 7, 8,10,13,16,16,11,16,16,16,11,13,12,14,16,16,
- 14,11, 9, 6,16,16,16,16, 5,10,16,14,13, 8,16,16,
- 16,16, 8,15,
+static long _huff_lengthlist_res0_128_128aux[] = {
+ 7,11, 7, 7,11, 8,12,10,12,11, 9, 3,11,11,11,11,
+ 11,11, 8,11, 8,11, 6, 5,10, 6,11, 8,11,11, 6,11,
+ 4, 2, 8, 4,11, 7,11,11,11,11,11, 8,11, 9,11,11,
+ 11,11, 8,11, 6, 3,10, 4,10, 7,11,11,10,11,11,10,
+ 10, 9,11,11,11,11,11,11, 9, 7,10, 6,10, 8,11,11,
+ 11, 4,11,11,11,11,11,11, 9,11,11, 6,11,11,11,11,
+ 11,11,10,11,
};
-static static_codebook _huff_book_res_Zc_1024aux = {
+static static_codebook _huff_book_res0_128_128aux = {
2, 100,
- _huff_lengthlist_res_Zc_1024aux,
+ _huff_lengthlist_res0_128_128aux,
0, 0, 0, 0, 0,
NULL,
NULL,
diff --git a/lib/books/res_Zc_128aux.vqh b/lib/books/res_Zc_128aux.vqh
deleted file mode 100644
index c8696618096df62246abb2df0e9a0b12e983fd10..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_128aux.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
- * PLEASE READ THESE TERMS DISTRIBUTING. *
- * *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999 *
- * by 1999 Monty and The XIPHOPHORUS Company *
- * http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_128aux_VQH_
-#define _V_res_Zc_128aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res_Zc_128aux[] = {
- 4,15,15,15, 6, 8,11,11,15,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14, 6,14,14,14, 6, 7,10,12,
- 14,14, 9,14,14,14, 7, 7,10,13,14,14,13,14,14,14,
- 11,11,12,13,14,14,13,14,14,14,13,14,13,13,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,13,13,14,14,10,10,11,13,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14, 9,14,14,14,
- 7, 6, 8, 9,14,14, 9,14,14,14, 6, 5, 7, 8,14,14,
- 10,14,14,14, 7, 7, 8,10,14,14,12,14,14,14,10,10,
- 11,12,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,11,14,14,14, 9,10,12,13,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 9,14,14,14, 7, 7, 9,12,14,14,10,14,14,14, 7, 6,
- 8,11,14,14,11,14,14,14, 9, 8,10,12,14,14,13,14,
- 14,14,13,11,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,12,14,14,14,
- 10,11,12,13,14,14,14,12,13,13,14,14,14,14,14,14,
- 14,12,12,14,14,14,14,14,14,14,14,13,13,14,14,14,
- 14,14,14,14,10,14,14,14, 9, 9,11,12,14,14,13,14,
- 14,14,10,10,11,14,14,14,13,14,14,14,12,11,14,13,
- 14,14,13,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 5,14,14,14, 5, 8,11,12,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14, 5,14,14,14, 4, 6, 9,12,
- 14,14, 7,14,14,14, 5, 6, 9,12,14,14,10,14,14,14,
- 9, 9,12,14,14,14,14,14,14,14,14,13,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14, 7,14,14,14, 7, 8,11,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14, 6,14,14,14,
- 5, 6, 9,13,14,14, 7,14,14,14, 5, 5, 9,13,14,14,
- 11,14,14,14, 9, 9,12,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,11,14,14,14,10,12,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 9,14,14,14, 8, 9,11,14,14,14,10,14,14,14, 8, 8,
- 10,14,14,14,12,14,14,14,11,10,13,14,14,14,14,14,
- 14,14,14,14,13,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,13,14,14,14,
- 12,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,13,14,14,14,12,13,14,14,14,14,13,14,
- 14,14,13,12,13,14,14,14,14,14,14,14,13,12,13,14,
- 14,14,14,14,14,14,13,13,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 12,14,13,13,12,13,14,14,13,14,14, 6, 5, 6,14,14,
- 14,14,11,14,13, 5, 5, 6,14,14,14,14,10,14,13, 7,
- 7, 6,14,14,14,14,10,14,13,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,13,14,13,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,11,
- 10,10,14,14,14,14,14,14,14,10, 9, 9,14,14,14,14,
- 13,14,14,11,11, 8,14,14,14,14,11,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,
-};
-
-static static_codebook _huff_book_res_Zc_128aux = {
- 3, 1000,
- _huff_lengthlist_res_Zc_128aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_2.vqh b/lib/books/res_Zc_2.vqh
deleted file mode 100644
index 385e2c370cb5caed1a902cee0d6ec925948b6bf6..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_2.vqh
+++ /dev/null
@@ -1,300 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company, http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_2_VQH_
-#define _V_res_Zc_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res_Zc_2[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res_Zc_2[] = {
- 2, 6, 5, 8, 8, 0, 5, 5, 9, 8, 0, 5, 5, 8, 9, 0,
- 7, 7, 9, 9, 0, 0, 0, 9,10, 6, 8, 8,10,10, 0, 8,
- 8,11,10, 0, 8, 8,10,10, 0,10, 9,12,11, 0, 0, 0,
- 11,11, 6, 8, 8,10,10, 0, 8, 9,10,11, 0, 8, 8,10,
- 10, 0, 9,10,11,11, 0, 0, 0,12,12, 8,10,10,12,12,
- 0,11,11,13,12, 0,11,11,12,12, 0,14,14,15,14, 0,
- 0, 0,16,14, 8,10,10,12,12, 0,11,12,12,13, 0,11,
- 11,12,12, 0,12,13,13,14, 0, 0, 0,15,13, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 5, 8, 8,11,11, 0, 8, 7,10,10,
- 0, 7, 7,10,10, 0, 9, 8,11,11, 0, 0, 0,11,11, 5,
- 8, 8,11,11, 0, 7, 8,10,11, 0, 8, 7,11,10, 0, 8,
- 9,11,11, 0, 0, 0,11,11, 8,10,10,12,12, 0,11,10,
- 12,12, 0,10,10,12,12, 0,13,12,13,13, 0, 0, 0,13,
- 13, 8,10,10,13,14, 0,10,11,12,13, 0,10,10,12,12,
- 0,12,13,14,13, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 5, 8, 8,11,11, 0, 8, 7,11,10, 0, 7, 7,
- 11,10, 0, 9, 9,11,11, 0, 0, 0,11,11, 5, 8, 8,11,
- 12, 0, 7, 8,10,11, 0, 7, 7,10,11, 0, 9, 9,11,11,
- 0, 0, 0,11,12, 8,11,10,13,12, 0,10,10,13,12, 0,
- 11,10,13,12, 0,13,12,13,13, 0, 0, 0,14,13, 8,10,
- 11,12,13, 0,10,11,12,13, 0,10,10,13,12, 0,12,13,
- 13,13, 0, 0, 0,13,14, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 7, 9,10,12,13, 0, 9, 8,12,13, 0, 8, 9,12,12, 0,
- 11,10,13,13, 0, 0, 0,13,13, 7,10, 9,13,13, 0, 9,
- 9,13,12, 0, 9, 8,14,12, 0,10,11,13,13, 0, 0, 0,
- 13,12, 9,11,11,15,16, 0,12,10,14,14, 0,10,12,12,
- 13, 0,13,12,14,14, 0, 0, 0,13,13, 9,12,11,14,14,
- 0,11,11,13,14, 0,11,10,13,12, 0,13,13,14,14, 0,
- 0, 0,14,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,
- 11,11, 0,13, 0,11,11,13,13, 0,11,11,14,13, 0,13,
- 13,14,14, 0, 0, 0,15,14,10,11,12,13,14, 0,11,11,
- 12,14, 0,11,11,13,14, 0,13,13,13,14, 0, 0, 0,14,
- 15,
-};
-
-static float _vq_quantthresh_res_Zc_2[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res_Zc_2[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res_Zc_2 = {
- _vq_quantthresh_res_Zc_2,
- _vq_quantmap_res_Zc_2,
- 5,
- 5
-};
-
-static long _vq_pigeonmap_res_Zc_2[] = {
- 1, 0, 0, 0,
-};
-
-static long _vq_fitlist_res_Zc_2[] = {
- 0, 1, 2, 3, 6, 7, 8, 11,
- 12, 13, 16, 17, 18, 25, 26, 27,
- 28, 31, 32, 33, 36, 37, 38, 41,
- 42, 43, 50, 51, 52, 53, 56, 57,
- 58, 61, 62, 63, 66, 67, 68, 75,
- 76, 77, 78, 81, 82, 83, 86, 87,
- 88, 91, 92, 93, 150, 151, 152, 153,
- 156, 157, 158, 161, 162, 163, 166, 167,
- 168, 175, 176, 177, 178, 181, 182, 183,
- 186, 187, 188, 191, 192, 193, 200, 201,
- 202, 203, 206, 207, 208, 211, 212, 213,
- 216, 217, 218, 275, 276, 277, 278, 281,
- 282, 283, 286, 287, 288, 291, 292, 293,
- 300, 301, 302, 303, 306, 307, 308, 311,
- 316, 325, 326, 327, 328, 331, 332, 333,
- 336, 341, 400, 401, 402, 403, 406, 407,
- 408, 411, 412, 413, 416, 417, 418, 425,
- 426, 427, 428, 431, 432, 433, 436, 441,
- 450, 451, 452, 453, 456, 457, 458, 461,
- 466, 4, 9, 14, 19, 29, 34, 39,
- 44, 54, 59, 64, 69, 79, 84, 89,
- 94, 154, 159, 164, 169, 179, 184, 189,
- 194, 204, 209, 214, 219, 279, 284, 289,
- 294, 304, 309, 312, 317, 329, 334, 337,
- 342, 404, 409, 414, 419, 429, 434, 437,
- 442, 454, 459, 462, 467, 314, 319, 339,
- 344, 439, 444, 464, 469, 23, 48, 73,
- 98, 173, 198, 223, 298, 313, 338, 423,
- 438, 463, 24, 49, 74, 99, 174, 199,
- 224, 299, 424, 324, 349, 449, 474, 323,
- 348, 448, 473, 100, 101, 102, 103, 106,
- 107, 108, 111, 112, 113, 116, 117, 118,
- 225, 226, 227, 228, 231, 232, 233, 236,
- 237, 238, 241, 242, 243, 318, 350, 351,
- 352, 353, 356, 357, 358, 361, 366, 443,
- 475, 476, 477, 478, 481, 482, 483, 486,
- 491, 104, 109, 114, 119, 229, 234, 239,
- 244, 354, 359, 362, 367, 479, 484, 487,
- 492, 364, 369, 489, 494, 123, 248, 363,
- 488, 124, 249, 374, 499, 373, 498, 368,
- 493, 343, 575, 576, 577, 581, 582, 583,
- 586, 591, 579, 584, 587, 592, 589, 594,
- 588, 599, 598, 600, 601, 602, 603, 606,
- 607, 608, 611, 616, 604, 609, 612, 617,
- 614, 619, 613, 624, 623, 618, 593, 0,
- 1, 3, 6, 8, 11, 13, 16, 18,
- 25, 26, 28, 31, 33, 36, 38, 41,
- 43, 50, 51, 53, 56, 58, 61, 63,
- 66, 68, 75, 76, 78, 81, 83, 86,
- 88, 91, 93, 150, 151, 153, 156, 158,
- 161, 163, 166, 168, 175, 176, 178, 181,
- 183, 186, 188, 191, 193, 200, 201, 203,
- 206, 208, 211, 213, 216, 218, 275, 276,
- 278, 281, 283, 286, 288, 291, 293, 300,
- 301, 303, 306, 308, 311, 313, 316, 318,
- 325, 326, 328, 331, 333, 336, 338, 341,
- 343, 400, 401, 403, 406, 408, 411, 413,
- 416, 418, 425, 426, 428, 431, 433, 436,
- 438, 441, 443, 450, 451, 453, 456, 458,
- 461, 463, 466, 468, 23, 48, 73, 98,
- 173, 198, 223, 298, 323, 348, 423, 448,
- 473, 100, 101, 103, 106, 108, 111, 113,
- 116, 118, 225, 226, 228, 231, 233, 236,
- 238, 241, 243, 350, 351, 353, 356, 358,
- 361, 363, 366, 368, 475, 476, 478, 481,
- 483, 486, 488, 491, 493, 123, 248, 373,
- 498, 575, 576, 581, 583, 586, 588, 591,
- 593, 598, 600, 601, 603, 606, 608, 611,
- 613, 616, 618, 623, 0, 1, 2, 3,
- 6, 7, 8, 16, 17, 18, 25, 26,
- 27, 28, 31, 32, 33, 41, 42, 43,
- 50, 51, 52, 53, 56, 57, 58, 66,
- 67, 68, 75, 76, 77, 78, 81, 82,
- 83, 91, 92, 93, 150, 151, 152, 153,
- 156, 157, 158, 166, 167, 168, 175, 176,
- 177, 178, 181, 182, 183, 191, 192, 193,
- 200, 201, 202, 203, 206, 207, 208, 216,
- 217, 218, 275, 276, 277, 278, 281, 282,
- 283, 291, 292, 293, 300, 301, 306, 307,
- 308, 316, 317, 318, 325, 326, 331, 332,
- 333, 341, 342, 343, 400, 401, 402, 403,
- 406, 407, 408, 416, 417, 418, 425, 426,
- 431, 432, 433, 441, 442, 443, 450, 451,
- 456, 457, 458, 466, 467, 468, 4, 9,
- 19, 29, 34, 44, 54, 59, 69, 79,
- 84, 94, 154, 159, 169, 179, 184, 194,
- 204, 209, 219, 279, 284, 294, 302, 309,
- 319, 327, 334, 344, 404, 409, 419, 427,
- 434, 444, 452, 459, 469, 304, 329, 429,
- 454, 100, 101, 102, 103, 106, 107, 108,
- 116, 117, 118, 225, 226, 227, 228, 231,
- 232, 233, 241, 242, 243, 303, 350, 351,
- 356, 357, 358, 366, 367, 368, 428, 475,
- 476, 481, 482, 483, 491, 492, 493, 104,
- 109, 119, 229, 234, 244, 352, 359, 369,
- 477, 484, 494, 354, 479, 353, 478, 328,
- 575, 576, 581, 582, 583, 591, 592, 593,
- 577, 584, 594, 579, 600, 601, 606, 607,
- 608, 616, 617, 618, 602, 609, 619, 604,
- 603, 0, 1, 2, 3, 6, 7, 8,
- 11, 12, 13, 16, 17, 18, 25, 26,
- 27, 28, 31, 32, 33, 36, 37, 38,
- 41, 42, 43, 75, 76, 77, 78, 81,
- 82, 83, 86, 87, 88, 91, 92, 93,
- 150, 151, 152, 153, 156, 157, 158, 161,
- 162, 163, 166, 167, 168, 200, 201, 202,
- 203, 206, 207, 208, 211, 212, 213, 216,
- 217, 218, 275, 276, 277, 278, 281, 282,
- 283, 286, 287, 288, 291, 292, 293, 325,
- 326, 327, 328, 331, 332, 333, 336, 337,
- 338, 341, 342, 343, 400, 401, 402, 403,
- 406, 407, 408, 411, 412, 413, 416, 417,
- 418, 450, 451, 452, 453, 456, 457, 458,
- 461, 462, 463, 466, 467, 468, 4, 9,
- 14, 19, 29, 34, 39, 44, 79, 84,
- 89, 94, 154, 159, 164, 169, 204, 209,
- 214, 219, 279, 284, 289, 294, 329, 334,
- 339, 344, 404, 409, 414, 419, 454, 459,
- 464, 469, 23, 48, 98, 173, 223, 298,
- 348, 423, 473, 24, 49, 99, 174, 224,
- 299, 349, 424, 474, 575, 576, 577, 581,
- 582, 583, 586, 587, 588, 591, 592, 593,
- 579, 584, 589, 594, 598, 599, 0, 1,
- 2, 3, 6, 7, 8, 11, 12, 13,
- 16, 17, 18, 25, 26, 27, 28, 31,
- 32, 33, 36, 37, 38, 41, 42, 43,
- 50, 51, 52, 53, 56, 57, 58, 61,
- 66, 75, 76, 77, 78, 81, 82, 83,
- 86, 91, 150, 151, 152, 153, 156, 157,
- 158, 161, 162, 163, 166, 167, 168, 175,
- 176, 177, 178, 181, 182, 183, 186, 187,
- 188, 191, 192, 193, 200, 201, 202, 203,
- 206, 207, 208, 211, 212, 213, 216, 217,
- 218, 400, 401, 402, 403, 406, 407, 408,
- 411, 412, 413, 416, 417, 418, 425, 426,
- 427, 428, 431, 432, 433, 436, 437, 438,
- 441, 442, 443, 450, 451, 452, 453, 456,
- 457, 458, 461, 462, 463, 466, 467, 468,
- 4, 9, 14, 19, 29, 34, 39, 44,
- 54, 59, 62, 67, 79, 84, 87, 92,
- 154, 159, 164, 169, 179, 184, 189, 194,
- 204, 209, 214, 219, 404, 409, 414, 419,
- 429, 434, 439, 444, 454, 459, 464, 469,
- 64, 69, 89, 94, 23, 48, 63, 88,
- 173, 198, 223, 423, 448, 473, 24, 49,
- 174, 199, 224, 424, 449, 474, 74, 99,
- 73, 98, 68, 100, 101, 102, 103, 106,
- 107, 108, 111, 116, 225, 226, 227, 228,
- 231, 232, 233, 236, 237, 238, 241, 242,
- 243, 475, 476, 477, 478, 481, 482, 483,
- 486, 487, 488, 491, 492, 493, 104, 109,
- 112, 117, 229, 234, 239, 244, 479, 484,
- 489, 494, 114, 119, 113, 248, 498, 249,
- 499, 124, 123, 118, 0, 1, 2, 3,
- 6, 7, 8, 16, 17, 18, 25, 26,
- 27, 28, 31, 32, 33, 41, 42, 43,
- 50, 51, 56, 57, 58, 66, 67, 68,
- 75, 76, 81, 82, 83, 91, 92, 93,
- 150, 151, 152, 153, 156, 157, 158, 166,
- 167, 168, 175, 176, 177, 178, 181, 182,
- 183, 191, 192, 193, 200, 201, 202, 203,
- 206, 207, 208, 216, 217, 218, 400, 401,
- 402, 403, 406, 407, 408, 416, 417, 418,
- 425, 426, 427, 428, 431, 432, 433, 441,
- 442, 443, 450, 451, 452, 453, 456, 457,
- 458, 466, 467, 468, 4, 9, 19, 29,
- 34, 44, 52, 59, 69, 77, 84, 94,
- 154, 159, 169, 179, 184, 194, 204, 209,
- 219, 404, 409, 419, 429, 434, 444, 454,
- 459, 469, 54, 79, 53, 100, 101, 106,
- 107, 108, 116, 117, 118, 225, 226, 227,
- 228, 231, 232, 233, 241, 242, 243, 475,
- 476, 477, 478, 481, 482, 483, 491, 492,
- 493, 102, 109, 119, 229, 234, 244, 479,
- 484, 494, 104, 103,
-};
-
-static long _vq_fitmap_res_Zc_2[] = {
- 0, 359, 548, 359, 793, 359, 793, 359,
- 982, 359, 1228, 359, 793, 359, 793, 359,
-};
-
-static long _vq_fitlength_res_Zc_2[] = {
- 359, 189, 245, 189, 189, 189, 189, 189,
- 246, 189, 168, 189, 189, 189, 189, 189,
-};
-
-static encode_aux_pigeonhole _vq_auxp_res_Zc_2 = {
- -2, 1, 4, 2,
- _vq_pigeonmap_res_Zc_2,
- 1396,
- _vq_fitlist_res_Zc_2,
- _vq_fitmap_res_Zc_2,
- _vq_fitlength_res_Zc_2
-};
-
-static static_codebook _vq_book_res_Zc_2 = {
- 4, 625,
- _vq_lengthlist_res_Zc_2,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res_Zc_2,
- NULL,
- &_vq_auxt_res_Zc_2,
- &_vq_auxp_res_Zc_2,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_4.vqh b/lib/books/res_Zc_4.vqh
deleted file mode 100644
index 0a0077a6096e4997bf9ffc84df5ae2fa741b1195..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_4.vqh
+++ /dev/null
@@ -1,89 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company, http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_4_VQH_
-#define _V_res_Zc_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res_Zc_4[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res_Zc_4[] = {
- 1, 3, 3, 0, 0, 0, 0, 0, 0, 4, 6, 6, 0, 0, 0, 0,
- 0, 0, 3, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
-};
-
-static float _vq_quantthresh_res_Zc_4[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res_Zc_4[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res_Zc_4 = {
- _vq_quantthresh_res_Zc_4,
- _vq_quantmap_res_Zc_4,
- 3,
- 3
-};
-
-static long _vq_pigeonmap_res_Zc_4[] = {
- 0, 0,
-};
-
-static long _vq_fitlist_res_Zc_4[] = {
- 0, 1, 2, 9, 10, 11, 18, 19,
- 20,
-};
-
-static long _vq_fitmap_res_Zc_4[] = {
- 0,
-};
-
-static long _vq_fitlength_res_Zc_4[] = {
- 9,
-};
-
-static encode_aux_pigeonhole _vq_auxp_res_Zc_4 = {
- -1, 1, 2, 1,
- _vq_pigeonmap_res_Zc_4,
- 9,
- _vq_fitlist_res_Zc_4,
- _vq_fitmap_res_Zc_4,
- _vq_fitlength_res_Zc_4
-};
-
-static static_codebook _vq_book_res_Zc_4 = {
- 4, 81,
- _vq_lengthlist_res_Zc_4,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res_Zc_4,
- NULL,
- &_vq_auxt_res_Zc_4,
- &_vq_auxp_res_Zc_4,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_5.vqh b/lib/books/res_Zc_5.vqh
deleted file mode 100644
index 96334f1d0a626f95cbcea7a07e60d5a81c43bc29..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_5.vqh
+++ /dev/null
@@ -1,89 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company, http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_5_VQH_
-#define _V_res_Zc_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res_Zc_5[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res_Zc_5[] = {
- 1, 4, 3, 0, 0, 0, 0, 0, 0, 4, 5, 5, 0, 0, 0, 0,
- 0, 0, 3, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
-};
-
-static float _vq_quantthresh_res_Zc_5[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res_Zc_5[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res_Zc_5 = {
- _vq_quantthresh_res_Zc_5,
- _vq_quantmap_res_Zc_5,
- 3,
- 3
-};
-
-static long _vq_pigeonmap_res_Zc_5[] = {
- 0, 0,
-};
-
-static long _vq_fitlist_res_Zc_5[] = {
- 0, 1, 2, 9, 10, 11, 18, 19,
- 20,
-};
-
-static long _vq_fitmap_res_Zc_5[] = {
- 0,
-};
-
-static long _vq_fitlength_res_Zc_5[] = {
- 9,
-};
-
-static encode_aux_pigeonhole _vq_auxp_res_Zc_5 = {
- -1, 1, 2, 1,
- _vq_pigeonmap_res_Zc_5,
- 9,
- _vq_fitlist_res_Zc_5,
- _vq_fitmap_res_Zc_5,
- _vq_fitlength_res_Zc_5
-};
-
-static static_codebook _vq_book_res_Zc_5 = {
- 4, 81,
- _vq_lengthlist_res_Zc_5,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res_Zc_5,
- NULL,
- &_vq_auxt_res_Zc_5,
- &_vq_auxp_res_Zc_5,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_6.vqh b/lib/books/res_Zc_6.vqh
deleted file mode 100644
index c0987ab45d39fca1a25e3fff1b58da0d7e0b2625..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_6.vqh
+++ /dev/null
@@ -1,129 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company, http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_6_VQH_
-#define _V_res_Zc_6_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res_Zc_6[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res_Zc_6[] = {
- 1, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 6, 5, 7, 6, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 4, 5, 6, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 6,10, 9,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 6, 6, 7, 8,10, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
-};
-
-static float _vq_quantthresh_res_Zc_6[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res_Zc_6[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res_Zc_6 = {
- _vq_quantthresh_res_Zc_6,
- _vq_quantmap_res_Zc_6,
- 5,
- 5
-};
-
-static long _vq_pigeonmap_res_Zc_6[] = {
- 1, 0, 0, 0,
-};
-
-static long _vq_fitlist_res_Zc_6[] = {
- 0, 1, 2, 3, 25, 26, 27, 28,
- 50, 51, 52, 53, 75, 76, 77, 78,
- 4, 29, 54, 79, 100, 101, 102, 103,
- 104,
-};
-
-static long _vq_fitmap_res_Zc_6[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
-};
-
-static long _vq_fitlength_res_Zc_6[] = {
- 25, 25, 25, 25, 25, 25, 25, 25,
- 25, 25, 25, 25, 25, 25, 25, 25,
-};
-
-static encode_aux_pigeonhole _vq_auxp_res_Zc_6 = {
- -2, 1, 4, 2,
- _vq_pigeonmap_res_Zc_6,
- 25,
- _vq_fitlist_res_Zc_6,
- _vq_fitmap_res_Zc_6,
- _vq_fitlength_res_Zc_6
-};
-
-static static_codebook _vq_book_res_Zc_6 = {
- 4, 625,
- _vq_lengthlist_res_Zc_6,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res_Zc_6,
- NULL,
- &_vq_auxt_res_Zc_6,
- &_vq_auxp_res_Zc_6,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_7.vqh b/lib/books/res_Zc_7.vqh
deleted file mode 100644
index f5a84afd29267b222961caa001da7a3c8b8ca1c3..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_7.vqh
+++ /dev/null
@@ -1,119 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company, http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_7_VQH_
-#define _V_res_Zc_7_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res_Zc_7[] = {
- 7,
- 6,
- 8,
- 5,
- 9,
- 4,
- 10,
- 3,
- 11,
- 2,
- 12,
- 1,
- 13,
- 0,
- 14,
-};
-
-static long _vq_lengthlist_res_Zc_7[] = {
- 1, 3, 3, 5, 4, 4, 4, 7, 6, 8, 0, 0, 8, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
-};
-
-static float _vq_quantthresh_res_Zc_7[] = {
- -6.5, -5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5,
- 1.5, 2.5, 3.5, 4.5, 5.5, 6.5,
-};
-
-static long _vq_quantmap_res_Zc_7[] = {
- 13, 11, 9, 7, 5, 3, 1, 0,
- 2, 4, 6, 8, 10, 12, 14,
-};
-
-static encode_aux_threshmatch _vq_auxt_res_Zc_7 = {
- _vq_quantthresh_res_Zc_7,
- _vq_quantmap_res_Zc_7,
- 15,
- 15
-};
-
-static long _vq_pigeonmap_res_Zc_7[] = {
- 4, 3, 3, 2, 1, 1, 0, 0,
- 0, 1, 2, 2, 3, 4,
-};
-
-static long _vq_fitlist_res_Zc_7[] = {
- 0, 1, 2, 3, 4, 6, 5, 7,
- 8, 9, 12,
-};
-
-static long _vq_fitmap_res_Zc_7[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
-};
-
-static long _vq_fitlength_res_Zc_7[] = {
- 11, 11, 11, 11, 11, 11, 11, 11,
- 11, 11, 11, 11, 11, 11, 11, 11,
- 11, 11, 11, 11, 11, 11, 11, 11,
- 11,
-};
-
-static encode_aux_pigeonhole _vq_auxp_res_Zc_7 = {
- -7, 1, 14, 5,
- _vq_pigeonmap_res_Zc_7,
- 11,
- _vq_fitlist_res_Zc_7,
- _vq_fitmap_res_Zc_7,
- _vq_fitlength_res_Zc_7
-};
-
-static static_codebook _vq_book_res_Zc_7 = {
- 2, 225,
- _vq_lengthlist_res_Zc_7,
- 1, -530841600, 1611661312, 4, 0,
- _vq_quantlist_res_Zc_7,
- NULL,
- &_vq_auxt_res_Zc_7,
- &_vq_auxp_res_Zc_7,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_8.vqh b/lib/books/res_Zc_8.vqh
deleted file mode 100644
index 4644aad611dc71cc9a48a3e4fb14e44ae9b7ca6a..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_8.vqh
+++ /dev/null
@@ -1,1234 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company, http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_8_VQH_
-#define _V_res_Zc_8_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res_Zc_8[] = {
- 22,
- 21,
- 23,
- 20,
- 24,
- 19,
- 25,
- 18,
- 26,
- 17,
- 27,
- 16,
- 28,
- 15,
- 29,
- 14,
- 30,
- 13,
- 31,
- 12,
- 32,
- 11,
- 33,
- 10,
- 34,
- 9,
- 35,
- 8,
- 36,
- 7,
- 37,
- 6,
- 38,
- 5,
- 39,
- 4,
- 40,
- 3,
- 41,
- 2,
- 42,
- 1,
- 43,
- 0,
- 44,
-};
-
-static long _vq_lengthlist_res_Zc_8[] = {
- 3, 5, 4, 6, 6, 7, 7, 7, 7, 8, 8, 9, 8, 9, 9, 9,
- 9, 9, 9,10, 9,10,10,10,10,11,10,12,11,12,11,13,
- 11,13,12,15,14,15,13,15, 0,15,17, 0,16, 0, 5, 5,
- 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,10,10,
- 10,10,10,10,11,11,11,11,12,11,12,12,12,12,13,15,
- 15,14,14,15,15, 0,17, 0, 0,16, 0, 5, 5, 6, 6, 7,
- 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,
- 10,10,10,11,10,11,11,11,11,13,12,13,13,13,13,13,
- 13,14,14,16,16,16, 0, 0, 7, 7, 7, 7, 8, 8, 8, 8,
- 9, 9, 9,10,10,10,10,10,10,10,10,10,11,10,11,11,
- 11,11,11,11,12,12,12,12,14,14,13,14,14,14,15,16,
- 16, 0,16,16, 0, 0, 0, 7, 7, 8, 8, 8, 8, 9, 9, 9,
- 9,10,10,10,10,10,10,11,10,10,11,11,11,11,11,12,
- 12,13,12,12,12,13,12,13,13,14,14,14,15,16, 0,16,
- 16, 0, 0, 0, 8, 8, 8, 8, 9, 9, 9, 9, 9,10,10,10,
- 11,10,11,11,11,11,11,11,12,12,11,12,12,12,13,13,
- 12,13,13,14,14,14,15,15,15,15,15, 0,16, 0, 0, 0,
- 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,10,10,10,10,10,
- 10,10,11,11,11,11,12,12,12,12,12,12,13,14,12,13,
- 13,14,13,14,15,16,16,16, 0,16,15, 0, 0, 0, 8, 9,
- 9, 9, 9, 9,10,10,10,10,10,11,10,10,11,11,12,11,
- 12,12,12,12,12,13,12,14,12,13,13,14,14,14,15,15,
- 14, 0,15,15,16,16, 0,16, 0, 0, 0, 0, 0, 9, 8, 9,
- 9, 9,10,10,10,10,10,10,11,11,11,11,11,11,12,12,
- 12,12,12,13,12,13,13,14,14,13,14,14,13,14,14,15,
- 15,16, 0, 0,16, 0, 0, 0, 0, 0, 9, 9, 9, 9,10,10,
- 11,10,11,10,11,11,11,11,11,11,12,12,13,12,13,13,
- 13,14,14,13,14,14,14,13,16,15,16,15, 0,15, 0,15,
- 16, 0, 0, 0, 0, 0, 0, 9, 9, 9, 9,10,10,10,10,11,
- 11,11,11,11,11,11,11,12,12,12,12,13,13,14,13,14,
- 14,13,14,14,14,15,14,15,16,16,16, 0,16,16, 0, 0,
- 0, 0, 0, 0, 9,10,10,10,10,10,10,10,11,11,11,11,
- 11,11,12,11,12,12,13,12,13,13,14,14,13,14,15,14,
- 15,14,15,14,15, 0, 0, 0,15,16,16,16, 0, 0, 0, 0,
- 0, 0, 0,10,10,11,10,10,10,11,11,11,11,11,11,12,
- 12,12,12,12,13,13,14,13,14,14,14,14,14,13,15,14,
- 15,16, 0, 0, 0,15,15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 10,10,10,11,11,11,11,11,12,11,12,12,11,12,12,12,
- 13,13,13,14,14,14,14,15,15,14,14,15,15,15, 0, 0,
- 16,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,10,10,
- 10,11,11,11,11,11,11,11,11,13,12,12,12,12,13,13,
- 13,13,14,15,15,14,16,14,15, 0,14,16, 0,16, 0,15,
- 0,15, 0, 0, 0, 0, 0, 0, 0, 0,11,10,11,10,11,11,
- 11,11,11,11,11,12,12,12,12,12,13,13,13,12,13,15,
- 16,13,14,15,16, 0,15,15, 0,16,15, 0, 0,16, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0,11,11,11,10,11,11,11,
- 11,12,11,12,12,12,12,13,12,14,14,15,14,14,14,15,
- 0,16,15, 0,15,16,15,15,16,16, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,11,11,11,11,11,11,11,11,12,12,
- 12,12,13,12,13,13,14,13,13,13,15,13,16, 0, 0,15,
- 15, 0, 0, 0,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0,11,11,11,11,11,11,12,11,12,12,12,12,13,
- 13,13,13,13,13,14,16,15,14,16,16, 0, 0, 0,16, 0,
- 0, 0, 0,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 12,11,12,12,12,12,12,12,12,12,12,13,13,13,13,13,
- 14,13,14,13,15,15,15,15,15,16,15,16,16,15, 0,16,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,
- 12,12,12,12,12,12,12,13,12,12,12,13,13,13,14,14,
- 14,15,15,16,15, 0,16, 0,16,16,16, 0, 0, 0,16, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,
- 12,12,12,12,12,12,13,13,13,13,14,12,14,14,15,14,
- 15,15, 0,16,15,15,15,16, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,13,
- 13,12,12,13,13,13,13,13,14,15,14,15,15,16,15,16,
- 16, 0,16, 0, 0,16, 0,16, 0,16, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,12,12,13,12,13,12,13,13,13,13,
- 13,13,13,12,13,14,14,14,14,15,15, 0, 0, 0,16, 0,
- 0,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0,13,13,13,12,13,13,12,13,13,12,14,
- 13,14,14,14,15,16,15,15,15,16,16, 0, 0,16, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0,13,13,13,13,13,13,14,13,12,13,13,15,14,14,
- 14,14,14,15,15,15, 0,15, 0, 0, 0,16, 0, 0, 0, 0,
- 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,13,
- 13,13,12,13,14,13,13,13,12,14,13,13,13,14,13,15,
- 15, 0,16, 0, 0,16, 0,16,15, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,13,13,12,14,
- 13,16,14,13,13,13,14,14,14,13,14,15,16,15,15, 0,
- 15,16,15,16,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,13,13,13,13,13,
- 13,14,14,14,14,14,14,14,14,16,15,15,15,16,15,15,
- 0, 0, 0, 0, 0, 0, 0, 0,16, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,13,14,13,13,13,13,14,13,
- 15,13,13,14,14,14,15,16,15,14, 0,16, 0,15, 0, 0,
- 0, 0, 0,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0,13,13,13,14,13,15,15,14,14,14,14,
- 14,15,15,15,15, 0,15, 0, 0,16, 0,16,16, 0, 0, 0,
- 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0,14,13,13,14,14,14,13,14,14,14,14,14,14,16,
- 16,16,15,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,13,14,13,13,13,13,14,14,14,15,14,15,14,14,16,
- 15, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,13,13,
- 14,14,14,14,14,15,15,15,16,15,14,16,15,16,16, 0,
- 0, 0, 0,16, 0, 0, 0, 0,16, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,16,14,13,13,13,
- 14,15,16,14,15,15, 0, 0,16,15, 0,15,14,16,16,16,
- 0, 0, 0, 0, 0, 0,16, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,16,14,14,13,14,14,16,13,
- 15,14,14,16,15,15,16,16, 0,15, 0, 0, 0, 0, 0, 0,
- 0,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,15,14,15,14,16,13,15,15,14,
- 16,15, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,13,14,15,14,15,15,14,15,15, 0, 0,16,
- 0, 0,15,15, 0,15, 0, 0,16, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,14,13,15,14,14,15,15,15,16,16,16,16,16, 0,16,
- 16,16, 0, 0,16, 0,16, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,14,13,
- 14,15,15,14,16,15,15,15,15,15,15, 0, 0,16, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,14,13,16,
- 15,14,15,16,16, 0,15,16,15, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,14,14,15,15,15,15,
- 16,15,15, 0, 0,16,16,15,16, 0, 0,16, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,14,14,15,16,15, 0,16,14,16,
- 15, 0, 0,15,16, 0, 0, 0, 0, 0,16, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,12,14,13,16,14,14, 0,15, 0,16, 0,16,
- 16, 0, 0, 0,16, 0, 0, 0,16, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0,14,14,16,16,16,16, 0,16,15, 0,15,16, 0,
- 0, 0,16, 0, 0,16, 0, 0,16,
-};
-
-static float _vq_quantthresh_res_Zc_8[] = {
- -21.5, -20.5, -19.5, -18.5, -17.5, -16.5, -15.5, -14.5,
- -13.5, -12.5, -11.5, -10.5, -9.5, -8.5, -7.5, -6.5,
- -5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5, 1.5,
- 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5,
- 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5,
- 18.5, 19.5, 20.5, 21.5,
-};
-
-static long _vq_quantmap_res_Zc_8[] = {
- 43, 41, 39, 37, 35, 33, 31, 29,
- 27, 25, 23, 21, 19, 17, 15, 13,
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12, 14, 16, 18,
- 20, 22, 24, 26, 28, 30, 32, 34,
- 36, 38, 40, 42, 44,
-};
-
-static encode_aux_threshmatch _vq_auxt_res_Zc_8 = {
- _vq_quantthresh_res_Zc_8,
- _vq_quantmap_res_Zc_8,
- 45,
- 45
-};
-
-static long _vq_pigeonmap_res_Zc_8[] = {
- 14, 13, 13, 12, 11, 11, 10, 9,
- 9, 8, 7, 7, 6, 5, 5, 4,
- 3, 3, 2, 1, 1, 0, 0, 0,
- 1, 2, 2, 3, 4, 4, 5, 6,
- 6, 7, 8, 8, 9, 10, 10, 11,
- 12, 12, 13, 14,
-};
-
-static long _vq_fitlist_res_Zc_8[] = {
- 0, 1, 2, 3, 46, 47, 48, 91,
- 136, 4, 49, 92, 137, 6, 51, 94,
- 139, 93, 96, 184, 183, 186, 274, 5,
- 7, 50, 52, 95, 138, 140, 8, 53,
- 141, 97, 185, 98, 187, 273, 275, 188,
- 276, 9, 54, 142, 10, 55, 143, 12,
- 57, 100, 145, 99, 102, 190, 189, 277,
- 278, 192, 280, 7, 9, 11, 13, 52,
- 54, 56, 58, 99, 101, 144, 146, 5,
- 50, 97, 142, 8, 10, 12, 14, 53,
- 55, 57, 59, 100, 102, 145, 147, 103,
- 189, 191, 95, 187, 98, 104, 190, 192,
- 193, 279, 281, 185, 277, 188, 194, 280,
- 282, 15, 60, 148, 16, 61, 149, 18,
- 63, 106, 151, 105, 108, 196, 195, 283,
- 284, 198, 286, 13, 15, 17, 19, 58,
- 60, 62, 64, 105, 107, 150, 152, 11,
- 56, 103, 148, 14, 16, 18, 20, 59,
- 61, 63, 65, 106, 108, 151, 153, 109,
- 195, 197, 101, 193, 104, 110, 196, 198,
- 199, 285, 287, 191, 283, 194, 200, 286,
- 288, 21, 66, 154, 22, 67, 155, 24,
- 69, 112, 157, 111, 114, 202, 201, 289,
- 290, 204, 292, 19, 21, 23, 25, 64,
- 66, 68, 70, 111, 113, 156, 158, 17,
- 62, 109, 154, 20, 22, 24, 26, 65,
- 67, 69, 71, 112, 114, 157, 159, 115,
- 201, 203, 107, 199, 110, 116, 202, 204,
- 205, 291, 293, 197, 289, 200, 206, 292,
- 294, 27, 72, 160, 28, 73, 161, 30,
- 75, 118, 163, 117, 120, 208, 207, 295,
- 296, 210, 298, 25, 27, 29, 31, 70,
- 72, 74, 76, 117, 119, 162, 164, 23,
- 68, 115, 160, 26, 28, 30, 32, 71,
- 73, 75, 77, 118, 120, 163, 165, 121,
- 207, 209, 113, 205, 116, 122, 208, 210,
- 211, 297, 299, 203, 295, 206, 212, 298,
- 300, 33, 78, 166, 34, 79, 167, 36,
- 81, 124, 169, 123, 126, 214, 213, 301,
- 302, 216, 304, 31, 33, 35, 37, 76,
- 78, 80, 82, 123, 125, 168, 170, 29,
- 74, 121, 166, 32, 34, 36, 38, 77,
- 79, 81, 83, 124, 126, 169, 171, 127,
- 213, 215, 119, 211, 122, 128, 214, 216,
- 217, 303, 305, 209, 301, 212, 218, 304,
- 306, 39, 84, 172, 173, 42, 130, 175,
- 129, 132, 220, 219, 307, 308, 310, 37,
- 39, 41, 82, 84, 86, 129, 131, 174,
- 176, 35, 80, 127, 172, 38, 42, 44,
- 83, 89, 130, 132, 175, 133, 219, 221,
- 125, 217, 128, 220, 223, 309, 311, 215,
- 307, 218, 224, 310, 178, 179, 313, 314,
- 262, 264, 266, 268, 354, 356, 170, 260,
- 352, 173, 263, 265, 355, 357, 399, 401,
- 305, 397, 308, 400, 359, 404, 46, 136,
- 137, 138, 228, 47, 139, 229, 49, 141,
- 231, 319, 0, 1, 48, 2, 4, 51,
- 91, 92, 93, 183, 184, 185, 273, 274,
- 275, 94, 186, 276, 50, 140, 142, 230,
- 232, 318, 320, 143, 233, 321, 3, 5,
- 52, 6, 53, 95, 187, 277, 365, 96,
- 188, 278, 366, 322, 410, 323, 411, 367,
- 455, 368, 456, 457, 458, 50, 52, 138,
- 140, 142, 144, 228, 230, 232, 234, 320,
- 322, 51, 53, 139, 141, 143, 145, 229,
- 231, 233, 235, 321, 323, 55, 147, 237,
- 325, 5, 7, 48, 54, 6, 8, 49,
- 10, 57, 95, 97, 183, 185, 187, 189,
- 273, 275, 277, 279, 365, 367, 96, 98,
- 184, 186, 188, 190, 274, 276, 278, 280,
- 366, 368, 100, 192, 282, 370, 54, 56,
- 142, 144, 146, 148, 232, 234, 236, 238,
- 324, 326, 52, 140, 230, 322, 55, 57,
- 143, 145, 147, 149, 233, 235, 237, 239,
- 325, 327, 9, 11, 58, 7, 50, 10,
- 12, 53, 59, 99, 101, 187, 189, 191,
- 193, 277, 279, 281, 283, 369, 371, 97,
- 185, 275, 367, 100, 102, 188, 190, 192,
- 194, 278, 280, 282, 284, 370, 372, 56,
- 58, 144, 146, 148, 150, 234, 236, 238,
- 240, 326, 328, 57, 59, 145, 147, 149,
- 151, 235, 237, 239, 241, 327, 329, 61,
- 153, 243, 331, 11, 13, 54, 60, 12,
- 14, 55, 16, 63, 101, 103, 189, 191,
- 193, 195, 279, 281, 283, 285, 371, 373,
- 102, 104, 190, 192, 194, 196, 280, 282,
- 284, 286, 372, 374, 106, 198, 288, 376,
- 60, 62, 148, 150, 152, 154, 238, 240,
- 242, 244, 330, 332, 58, 146, 236, 328,
- 61, 63, 149, 151, 153, 155, 239, 241,
- 243, 245, 331, 333, 15, 17, 64, 13,
- 56, 16, 18, 59, 65, 105, 107, 193,
- 195, 197, 199, 283, 285, 287, 289, 375,
- 377, 103, 191, 281, 373, 106, 108, 194,
- 196, 198, 200, 284, 286, 288, 290, 376,
- 378, 62, 64, 150, 152, 154, 156, 240,
- 242, 244, 246, 332, 334, 63, 65, 151,
- 153, 155, 157, 241, 243, 245, 247, 333,
- 335, 67, 159, 249, 337, 17, 19, 60,
- 66, 18, 20, 61, 22, 69, 107, 109,
- 195, 197, 199, 201, 285, 287, 289, 291,
- 377, 379, 108, 110, 196, 198, 200, 202,
- 286, 288, 290, 292, 378, 380, 112, 204,
- 294, 382, 66, 68, 154, 156, 158, 160,
- 244, 246, 248, 250, 336, 338, 64, 152,
- 242, 334, 67, 69, 155, 157, 159, 161,
- 245, 247, 249, 251, 337, 339, 21, 23,
- 70, 19, 62, 22, 24, 65, 71, 111,
- 113, 199, 201, 203, 205, 289, 291, 293,
- 295, 381, 383, 109, 197, 287, 379, 112,
- 114, 200, 202, 204, 206, 290, 292, 294,
- 296, 382, 384, 68, 70, 156, 158, 160,
- 162, 246, 248, 250, 252, 338, 340, 69,
- 71, 157, 159, 161, 163, 247, 249, 251,
- 253, 339, 341, 73, 165, 255, 343, 23,
- 25, 66, 72, 24, 26, 67, 28, 75,
- 113, 115, 201, 203, 205, 207, 291, 293,
- 295, 297, 383, 385, 114, 116, 202, 204,
- 206, 208, 292, 294, 296, 298, 384, 386,
- 118, 210, 300, 388, 72, 74, 160, 162,
- 164, 166, 250, 252, 254, 256, 342, 344,
- 70, 158, 248, 340, 73, 75, 161, 163,
- 165, 167, 251, 253, 255, 257, 343, 345,
- 27, 29, 76, 25, 68, 28, 30, 71,
- 77, 117, 119, 205, 207, 209, 211, 295,
- 297, 299, 301, 387, 389, 115, 203, 293,
- 385, 118, 120, 206, 208, 210, 212, 296,
- 298, 300, 302, 388, 390, 74, 76, 162,
- 164, 166, 168, 252, 254, 256, 258, 344,
- 346, 75, 77, 163, 165, 167, 169, 253,
- 255, 257, 259, 345, 347, 79, 171, 261,
- 349, 29, 31, 72, 78, 30, 32, 73,
- 34, 81, 119, 121, 207, 209, 211, 213,
- 297, 299, 301, 303, 389, 391, 120, 122,
- 208, 210, 212, 214, 298, 300, 302, 304,
- 390, 392, 124, 216, 306, 394, 78, 80,
- 166, 168, 170, 172, 256, 258, 260, 262,
- 348, 350, 76, 164, 254, 346, 79, 81,
- 167, 169, 171, 173, 257, 259, 261, 263,
- 349, 351, 33, 35, 82, 31, 74, 34,
- 36, 77, 83, 123, 125, 211, 213, 215,
- 217, 301, 303, 305, 307, 393, 395, 121,
- 209, 299, 391, 124, 126, 212, 214, 216,
- 218, 302, 304, 306, 308, 394, 396, 80,
- 82, 168, 170, 172, 174, 258, 260, 262,
- 264, 350, 352, 81, 83, 169, 171, 173,
- 175, 259, 261, 263, 265, 351, 355, 35,
- 37, 78, 84, 36, 38, 79, 125, 127,
- 213, 215, 217, 219, 303, 305, 307, 309,
- 395, 397, 126, 128, 214, 216, 218, 220,
- 304, 306, 308, 310, 396, 398, 130, 400,
- 46, 136, 137, 138, 228, 229, 230, 318,
- 319, 320, 47, 139, 231, 321, 91, 183,
- 273, 274, 275, 365, 92, 184, 276, 366,
- 455, 456, 368, 458, 410, 500, 411, 501,
- 413, 503, 457, 547, 548, 412, 502, 322,
- 323, 140, 142, 228, 230, 232, 234, 318,
- 320, 322, 324, 410, 412, 141, 143, 229,
- 231, 233, 235, 319, 321, 323, 325, 411,
- 413, 145, 237, 327, 415, 185, 187, 273,
- 275, 277, 279, 365, 367, 369, 455, 457,
- 186, 188, 274, 276, 278, 280, 366, 368,
- 370, 456, 458, 190, 282, 372, 460, 459,
- 547, 548, 462, 550, 144, 146, 232, 234,
- 236, 238, 322, 324, 326, 328, 414, 416,
- 142, 230, 320, 412, 145, 147, 233, 235,
- 237, 239, 323, 325, 327, 329, 415, 417,
- 189, 191, 277, 279, 281, 283, 367, 369,
- 371, 373, 459, 461, 187, 275, 365, 457,
- 190, 192, 278, 280, 282, 284, 368, 370,
- 372, 374, 460, 462, 463, 549, 551, 455,
- 547, 458, 464, 550, 552, 146, 148, 234,
- 236, 238, 240, 324, 326, 328, 330, 416,
- 418, 147, 149, 235, 237, 239, 241, 325,
- 327, 329, 331, 417, 419, 151, 243, 333,
- 421, 191, 193, 279, 281, 283, 285, 369,
- 371, 373, 375, 461, 463, 192, 194, 280,
- 282, 284, 286, 370, 372, 374, 376, 462,
- 464, 196, 288, 378, 466, 459, 465, 551,
- 553, 460, 552, 554, 468, 556, 150, 152,
- 238, 240, 242, 244, 328, 330, 332, 334,
- 420, 422, 148, 236, 326, 418, 151, 153,
- 239, 241, 243, 245, 329, 331, 333, 335,
- 421, 423, 195, 197, 283, 285, 287, 289,
- 373, 375, 377, 379, 465, 467, 193, 281,
- 371, 463, 196, 198, 284, 286, 288, 290,
- 374, 376, 378, 380, 466, 468, 469, 555,
- 557, 461, 553, 464, 470, 556, 558, 152,
- 154, 240, 242, 244, 246, 330, 332, 334,
- 336, 422, 424, 153, 155, 241, 243, 245,
- 247, 331, 333, 335, 337, 423, 425, 157,
- 249, 339, 427, 197, 199, 285, 287, 289,
- 291, 375, 377, 379, 381, 467, 469, 198,
- 200, 286, 288, 290, 292, 376, 378, 380,
- 382, 468, 470, 202, 294, 384, 472, 465,
- 471, 557, 559, 466, 558, 560, 474, 562,
- 156, 158, 244, 246, 248, 250, 334, 336,
- 338, 340, 426, 428, 154, 242, 332, 424,
- 157, 159, 245, 247, 249, 251, 335, 337,
- 339, 341, 427, 429, 201, 203, 289, 291,
- 293, 295, 379, 381, 383, 385, 471, 473,
- 199, 287, 377, 469, 202, 204, 290, 292,
- 294, 296, 380, 382, 384, 386, 472, 474,
- 475, 561, 563, 467, 559, 470, 476, 562,
- 564, 158, 160, 246, 248, 250, 252, 336,
- 338, 340, 342, 428, 430, 159, 161, 247,
- 249, 251, 253, 337, 339, 341, 343, 429,
- 431, 163, 255, 345, 433, 203, 205, 291,
- 293, 295, 297, 381, 383, 385, 387, 473,
- 475, 204, 206, 292, 294, 296, 298, 382,
- 384, 386, 388, 474, 476, 208, 300, 390,
- 478, 471, 477, 563, 565, 472, 564, 566,
- 480, 568, 162, 164, 250, 252, 254, 256,
- 340, 342, 344, 346, 432, 434, 160, 248,
- 338, 430, 163, 165, 251, 253, 255, 257,
- 341, 343, 345, 347, 433, 435, 207, 209,
- 295, 297, 299, 301, 385, 387, 389, 391,
- 477, 479, 205, 293, 383, 475, 208, 210,
- 296, 298, 300, 302, 386, 388, 390, 392,
- 478, 480, 481, 567, 569, 473, 565, 476,
- 482, 568, 570, 164, 166, 252, 254, 256,
- 258, 342, 344, 346, 348, 434, 436, 165,
- 167, 253, 255, 257, 259, 343, 345, 347,
- 349, 435, 437, 169, 261, 351, 439, 209,
- 211, 297, 299, 301, 303, 387, 389, 391,
- 393, 479, 481, 210, 212, 298, 300, 302,
- 304, 388, 390, 392, 394, 480, 482, 214,
- 306, 396, 484, 477, 483, 569, 571, 478,
- 570, 572, 486, 574, 168, 170, 256, 258,
- 260, 262, 346, 348, 350, 352, 438, 440,
- 166, 254, 344, 436, 169, 171, 257, 259,
- 261, 263, 347, 349, 351, 439, 441, 213,
- 215, 301, 303, 305, 307, 391, 393, 395,
- 397, 483, 485, 211, 299, 389, 481, 214,
- 216, 302, 304, 306, 308, 392, 394, 396,
- 398, 484, 486, 487, 573, 575, 479, 571,
- 482, 488, 574, 576, 170, 172, 258, 260,
- 262, 264, 348, 350, 352, 354, 440, 442,
- 171, 173, 259, 261, 263, 265, 349, 351,
- 355, 441, 443, 175, 357, 445, 215, 217,
- 303, 305, 307, 309, 393, 395, 397, 399,
- 485, 487, 216, 218, 304, 306, 308, 310,
- 394, 396, 398, 400, 486, 488, 220, 490,
- 483, 489, 575, 577, 484, 576, 492, 174,
- 176, 262, 264, 266, 268, 352, 354, 356,
- 172, 260, 350, 442, 175, 263, 265, 355,
- 357, 359, 445, 447, 219, 221, 307, 309,
- 311, 313, 397, 399, 401, 489, 217, 305,
- 395, 487, 220, 308, 310, 314, 398, 400,
- 404, 490, 492, 493, 581, 485, 577, 488,
- 582, 178, 448, 179, 223, 224, 320, 322,
- 410, 412, 414, 500, 502, 504, 592, 321,
- 323, 411, 413, 415, 501, 503, 505, 593,
- 325, 417, 507, 595, 230, 232, 318, 324,
- 231, 233, 319, 235, 327, 365, 367, 455,
- 457, 459, 547, 549, 637, 366, 368, 456,
- 458, 460, 548, 550, 638, 370, 462, 552,
- 640, 594, 682, 683, 597, 685, 639, 642,
- 730, 729, 732, 820, 324, 326, 412, 414,
- 416, 418, 502, 504, 506, 508, 594, 596,
- 322, 410, 500, 592, 325, 327, 413, 415,
- 417, 419, 503, 505, 507, 509, 595, 597,
- 234, 236, 328, 232, 320, 235, 237, 323,
- 329, 369, 371, 457, 459, 461, 463, 547,
- 549, 551, 553, 639, 641, 367, 455, 637,
- 370, 372, 458, 460, 462, 464, 548, 550,
- 552, 554, 640, 642, 326, 328, 414, 416,
- 418, 420, 504, 506, 508, 510, 596, 598,
- 327, 329, 415, 417, 419, 421, 505, 507,
- 509, 511, 597, 599, 331, 423, 513, 601,
- 236, 238, 324, 330, 237, 239, 325, 241,
- 333, 371, 373, 459, 461, 463, 465, 549,
- 551, 553, 555, 641, 643, 372, 374, 460,
- 462, 464, 466, 550, 552, 554, 556, 642,
- 644, 376, 468, 558, 646, 330, 332, 418,
- 420, 422, 424, 508, 510, 512, 514, 600,
- 602, 328, 416, 506, 598, 331, 333, 419,
- 421, 423, 425, 509, 511, 513, 515, 601,
- 603, 240, 242, 334, 238, 326, 241, 243,
- 329, 335, 375, 377, 463, 465, 467, 469,
- 553, 555, 557, 559, 645, 647, 373, 461,
- 551, 643, 376, 378, 464, 466, 468, 470,
- 554, 556, 558, 560, 646, 648, 332, 334,
- 420, 422, 424, 426, 510, 512, 514, 516,
- 602, 604, 333, 335, 421, 423, 425, 427,
- 511, 513, 515, 517, 603, 605, 337, 429,
- 519, 607, 242, 244, 330, 336, 243, 245,
- 331, 247, 339, 377, 379, 465, 467, 469,
- 471, 555, 557, 559, 561, 647, 649, 378,
- 380, 466, 468, 470, 472, 556, 558, 560,
- 562, 648, 650, 382, 474, 564, 652, 336,
- 338, 424, 426, 428, 430, 514, 516, 518,
- 520, 606, 608, 334, 422, 512, 604, 337,
- 339, 425, 427, 429, 431, 515, 517, 519,
- 521, 607, 609, 246, 248, 340, 244, 332,
- 247, 249, 335, 341, 381, 383, 469, 471,
- 473, 475, 559, 561, 563, 565, 651, 653,
- 379, 467, 557, 649, 382, 384, 470, 472,
- 474, 476, 560, 562, 564, 566, 652, 654,
- 338, 340, 426, 428, 430, 432, 516, 518,
- 520, 522, 608, 610, 339, 341, 427, 429,
- 431, 433, 517, 519, 521, 523, 609, 611,
- 343, 435, 525, 613, 248, 250, 336, 342,
- 249, 251, 337, 253, 345, 383, 385, 471,
- 473, 475, 477, 561, 563, 565, 567, 653,
- 655, 384, 386, 472, 474, 476, 478, 562,
- 564, 566, 568, 654, 656, 388, 480, 570,
- 658, 342, 344, 430, 432, 434, 436, 520,
- 522, 524, 526, 612, 614, 340, 428, 518,
- 610, 343, 345, 431, 433, 435, 437, 521,
- 523, 525, 527, 613, 615, 252, 254, 346,
- 250, 338, 253, 255, 341, 347, 387, 389,
- 475, 477, 479, 481, 565, 567, 569, 571,
- 657, 659, 385, 473, 563, 655, 388, 390,
- 476, 478, 480, 482, 566, 568, 570, 572,
- 658, 660, 344, 346, 432, 434, 436, 438,
- 522, 524, 526, 528, 614, 616, 345, 347,
- 433, 435, 437, 439, 523, 525, 527, 529,
- 615, 617, 349, 441, 531, 619, 254, 256,
- 342, 348, 255, 257, 343, 259, 351, 389,
- 391, 477, 479, 481, 483, 567, 569, 571,
- 573, 659, 661, 390, 392, 478, 480, 482,
- 484, 568, 570, 572, 574, 660, 662, 394,
- 486, 576, 664, 348, 350, 436, 438, 440,
- 442, 526, 528, 530, 532, 618, 620, 346,
- 434, 524, 616, 349, 351, 437, 439, 441,
- 443, 527, 529, 531, 619, 621, 258, 260,
- 352, 256, 344, 259, 261, 347, 393, 395,
- 481, 483, 485, 487, 571, 573, 575, 577,
- 663, 391, 479, 569, 661, 394, 396, 482,
- 484, 486, 488, 572, 574, 576, 664, 666,
- 350, 352, 438, 440, 442, 528, 530, 532,
- 620, 351, 439, 441, 443, 445, 529, 531,
- 621, 355, 447, 537, 625, 260, 262, 348,
- 354, 261, 263, 349, 265, 357, 395, 397,
- 483, 485, 487, 489, 573, 575, 577, 667,
- 396, 398, 484, 486, 488, 490, 574, 576,
- 666, 400, 492, 582, 354, 356, 442, 448,
- 532, 536, 538, 624, 352, 440, 530, 355,
- 357, 443, 445, 447, 537, 539, 625, 264,
- 266, 262, 350, 265, 359, 399, 401, 487,
- 489, 493, 577, 581, 669, 671, 397, 485,
- 575, 667, 400, 488, 490, 492, 582, 714,
- 620, 717, 673, 759, 761, 757, 760, 851,
- 758, 356, 448, 536, 538, 357, 359, 445,
- 447, 537, 539, 266, 268, 354, 355, 401,
- 489, 493, 581, 671, 673, 404, 490, 492,
- 582, 318, 319, 320, 410, 500, 501, 502,
- 592, 321, 411, 503, 593, 273, 365, 455,
- 456, 457, 547, 637, 274, 366, 458, 548,
- 638, 639, 729, 640, 730, 549, 550, 682,
- 683, 684, 774, 685, 775, 819, 820, 594,
- 595, 687, 777, 865, 505, 597, 731, 821,
- 732, 822, 864, 912, 911, 1001, 1002, 414,
- 416, 502, 504, 506, 508, 592, 594, 596,
- 598, 684, 686, 412, 500, 682, 415, 417,
- 503, 505, 507, 509, 593, 595, 597, 599,
- 685, 687, 459, 461, 547, 549, 551, 553,
- 637, 639, 641, 643, 729, 731, 457, 460,
- 462, 548, 550, 552, 554, 638, 640, 642,
- 644, 730, 732, 733, 819, 821, 734, 820,
- 822, 416, 418, 504, 506, 508, 510, 594,
- 596, 598, 600, 686, 688, 417, 419, 505,
- 507, 509, 511, 595, 597, 599, 601, 687,
- 689, 421, 513, 603, 691, 461, 463, 549,
- 551, 553, 555, 639, 641, 643, 645, 731,
- 733, 462, 464, 550, 552, 554, 556, 640,
- 642, 644, 646, 732, 734, 466, 558, 648,
- 736, 729, 735, 821, 823, 730, 822, 824,
- 738, 826, 420, 422, 508, 510, 512, 514,
- 598, 600, 602, 604, 690, 692, 418, 506,
- 596, 688, 421, 423, 509, 511, 513, 515,
- 599, 601, 603, 605, 691, 693, 465, 467,
- 553, 555, 557, 559, 643, 645, 647, 649,
- 735, 737, 463, 551, 641, 733, 466, 468,
- 554, 556, 558, 560, 644, 646, 648, 650,
- 736, 738, 739, 825, 827, 731, 823, 734,
- 740, 826, 828, 422, 424, 510, 512, 514,
- 516, 600, 602, 604, 606, 692, 694, 423,
- 425, 511, 513, 515, 517, 601, 603, 605,
- 607, 693, 695, 427, 519, 609, 697, 467,
- 469, 555, 557, 559, 561, 645, 647, 649,
- 651, 737, 739, 468, 470, 556, 558, 560,
- 562, 646, 648, 650, 652, 738, 740, 472,
- 564, 654, 742, 735, 741, 827, 829, 736,
- 828, 830, 744, 832, 426, 428, 514, 516,
- 518, 520, 604, 606, 608, 610, 696, 698,
- 424, 512, 602, 694, 427, 429, 515, 517,
- 519, 521, 605, 607, 609, 611, 697, 699,
- 471, 473, 559, 561, 563, 565, 649, 651,
- 653, 655, 741, 743, 469, 557, 647, 739,
- 472, 474, 560, 562, 564, 566, 650, 652,
- 654, 656, 742, 744, 745, 831, 833, 737,
- 829, 740, 746, 832, 834, 428, 430, 516,
- 518, 520, 522, 606, 608, 610, 612, 698,
- 700, 429, 431, 517, 519, 521, 523, 607,
- 609, 611, 613, 699, 701, 433, 525, 615,
- 703, 473, 475, 561, 563, 565, 567, 651,
- 653, 655, 657, 743, 745, 474, 476, 562,
- 564, 566, 568, 652, 654, 656, 658, 744,
- 746, 478, 570, 660, 748, 741, 747, 833,
- 835, 742, 834, 836, 750, 838, 432, 434,
- 520, 522, 524, 526, 610, 612, 614, 616,
- 702, 704, 430, 518, 608, 700, 433, 435,
- 521, 523, 525, 527, 611, 613, 615, 617,
- 703, 705, 477, 479, 565, 567, 569, 571,
- 655, 657, 659, 661, 747, 749, 475, 563,
- 653, 745, 478, 480, 566, 568, 570, 572,
- 656, 658, 660, 662, 748, 750, 751, 837,
- 839, 743, 835, 746, 838, 840, 434, 436,
- 522, 524, 526, 528, 612, 614, 616, 618,
- 704, 706, 435, 437, 523, 525, 527, 529,
- 613, 615, 617, 619, 705, 707, 439, 531,
- 621, 479, 481, 567, 569, 571, 573, 657,
- 659, 661, 663, 749, 751, 480, 482, 568,
- 570, 572, 574, 658, 660, 662, 664, 750,
- 484, 576, 666, 754, 747, 753, 839, 841,
- 748, 840, 842, 756, 438, 440, 526, 528,
- 530, 532, 616, 618, 620, 708, 710, 436,
- 524, 614, 706, 439, 441, 527, 529, 531,
- 617, 619, 621, 711, 483, 485, 571, 573,
- 575, 577, 661, 663, 667, 753, 481, 569,
- 659, 751, 484, 486, 572, 574, 576, 662,
- 664, 666, 754, 756, 757, 749, 841, 758,
- 846, 440, 442, 528, 530, 532, 618, 620,
- 624, 710, 441, 443, 529, 531, 619, 621,
- 625, 711, 713, 445, 537, 485, 487, 573,
- 575, 577, 663, 667, 669, 757, 486, 488,
- 574, 576, 664, 666, 756, 758, 398, 400,
- 490, 492, 582, 760, 753, 759, 754, 846,
- 448, 536, 538, 624, 447, 537, 539, 625,
- 717, 493, 581, 669, 671, 673, 761, 492,
- 582, 759, 851, 758, 760, 942, 714, 804,
- 710, 800, 892, 713, 895, 532, 620, 757,
- 667, 937, 594, 596, 682, 684, 686, 688,
- 774, 776, 778, 864, 866, 592, 595, 597,
- 683, 685, 687, 689, 775, 777, 779, 865,
- 867, 504, 506, 598, 502, 505, 507, 593,
- 599, 639, 641, 729, 731, 733, 819, 821,
- 823, 911, 637, 640, 642, 730, 732, 734,
- 820, 822, 824, 912, 868, 956, 869, 957,
- 913, 1001, 914, 1002, 1003, 1004, 596, 598,
- 684, 686, 688, 690, 774, 776, 778, 780,
- 866, 868, 597, 599, 685, 687, 689, 691,
- 775, 777, 779, 781, 867, 869, 601, 693,
- 783, 871, 506, 508, 594, 600, 507, 509,
- 595, 511, 603, 641, 643, 729, 731, 733,
- 735, 819, 821, 823, 825, 911, 913, 642,
- 644, 730, 732, 734, 736, 820, 822, 824,
- 826, 912, 914, 646, 738, 828, 916, 600,
- 602, 688, 690, 692, 694, 778, 780, 782,
- 784, 870, 872, 598, 686, 776, 868, 601,
- 603, 689, 691, 693, 695, 779, 781, 783,
- 785, 871, 873, 510, 512, 604, 508, 596,
- 511, 513, 599, 605, 645, 647, 733, 735,
- 737, 739, 823, 825, 827, 829, 915, 917,
- 643, 731, 821, 913, 646, 648, 734, 736,
- 738, 740, 824, 826, 828, 830, 916, 918,
- 602, 604, 690, 692, 694, 696, 780, 782,
- 784, 786, 872, 874, 603, 605, 691, 693,
- 695, 697, 781, 783, 785, 787, 873, 875,
- 607, 699, 789, 877, 512, 514, 600, 606,
- 513, 515, 601, 517, 609, 647, 649, 735,
- 737, 739, 741, 825, 827, 829, 831, 917,
- 919, 648, 650, 736, 738, 740, 742, 826,
- 828, 830, 832, 918, 920, 652, 744, 834,
- 922, 606, 608, 694, 696, 698, 700, 784,
- 786, 788, 790, 876, 878, 604, 692, 782,
- 874, 607, 609, 695, 697, 699, 701, 785,
- 787, 789, 791, 877, 879, 516, 518, 610,
- 514, 602, 517, 519, 605, 611, 651, 653,
- 739, 741, 743, 745, 829, 831, 833, 835,
- 921, 923, 649, 737, 827, 919, 652, 654,
- 740, 742, 744, 746, 830, 832, 834, 836,
- 922, 924, 608, 610, 696, 698, 700, 702,
- 786, 788, 790, 792, 878, 880, 609, 611,
- 697, 699, 701, 703, 787, 789, 791, 793,
- 879, 881, 613, 705, 795, 883, 518, 520,
- 606, 612, 519, 521, 607, 523, 615, 653,
- 655, 741, 743, 745, 747, 831, 833, 835,
- 837, 923, 925, 654, 656, 742, 744, 746,
- 748, 832, 834, 836, 838, 924, 926, 658,
- 750, 840, 928, 612, 614, 700, 702, 704,
- 706, 790, 792, 794, 796, 882, 884, 610,
- 698, 788, 880, 613, 615, 701, 703, 705,
- 707, 791, 793, 795, 883, 885, 522, 524,
- 616, 520, 608, 523, 525, 611, 617, 657,
- 659, 745, 747, 749, 751, 835, 837, 839,
- 841, 927, 929, 655, 743, 833, 925, 658,
- 660, 746, 748, 750, 836, 838, 840, 842,
- 928, 930, 614, 616, 702, 704, 706, 708,
- 792, 794, 796, 884, 886, 615, 617, 703,
- 705, 707, 793, 795, 799, 885, 887, 619,
- 711, 889, 524, 526, 612, 618, 525, 527,
- 613, 529, 621, 659, 661, 747, 749, 751,
- 753, 837, 839, 841, 929, 931, 660, 662,
- 748, 750, 754, 838, 840, 842, 930, 932,
- 664, 756, 846, 934, 618, 620, 706, 708,
- 710, 796, 800, 888, 890, 616, 704, 794,
- 886, 619, 621, 707, 711, 713, 799, 889,
- 891, 528, 530, 526, 614, 529, 531, 617,
- 663, 751, 753, 757, 841, 661, 749, 839,
- 931, 664, 666, 754, 756, 758, 842, 846,
- 934, 936, 620, 708, 710, 714, 800, 804,
- 890, 892, 621, 711, 713, 799, 891, 893,
- 625, 717, 895, 530, 532, 618, 624, 531,
- 619, 667, 753, 757, 759, 937, 666, 754,
- 756, 758, 760, 846, 936, 938, 888, 980,
- 982, 889, 981, 983, 934, 1026, 942, 1023,
- 1029, 1117, 1024, 592, 682, 684, 774, 776,
- 864, 866, 593, 683, 685, 775, 777, 865,
- 867, 637, 729, 819, 821, 911, 638, 730,
- 820, 822, 912, 1001, 1002, 914, 1004, 956,
- 1046, 957, 1047, 500, 501, 639, 640, 1003,
- 1093, 1094, 959, 1049, 958, 1048, 868, 869,
- 1183, 1184, 1138, 1139, 1228, 1229, 1185, 1275,
- 1365, 1186, 1276, 1366, 686, 688, 774, 776,
- 778, 780, 864, 866, 868, 870, 956, 958,
- 687, 689, 775, 777, 779, 781, 865, 867,
- 869, 871, 957, 959, 691, 783, 873, 961,
- 731, 733, 819, 821, 823, 825, 911, 913,
- 915, 1001, 1003, 732, 734, 820, 822, 824,
- 826, 912, 914, 916, 1002, 1004, 736, 828,
- 918, 1006, 1005, 1093, 1094, 1008, 1096, 690,
- 692, 778, 780, 782, 784, 868, 870, 872,
- 874, 960, 962, 688, 776, 866, 958, 691,
- 693, 779, 781, 783, 785, 869, 871, 873,
- 875, 961, 963, 735, 737, 823, 825, 827,
- 829, 913, 915, 917, 919, 1005, 1007, 733,
- 821, 911, 1003, 736, 738, 824, 826, 828,
- 830, 914, 916, 918, 920, 1006, 1008, 1009,
- 1095, 1097, 1001, 1093, 1004, 1010, 1096, 1098,
- 692, 694, 780, 782, 784, 786, 870, 872,
- 874, 876, 962, 964, 693, 695, 781, 783,
- 785, 787, 871, 873, 875, 877, 963, 965,
- 697, 789, 879, 967, 737, 739, 825, 827,
- 829, 831, 915, 917, 919, 921, 1007, 1009,
- 738, 740, 826, 828, 830, 832, 916, 918,
- 920, 922, 1008, 1010, 742, 834, 924, 1012,
- 1005, 1011, 1097, 1099, 1006, 1098, 1100, 1014,
- 1102, 696, 698, 784, 786, 788, 790, 874,
- 876, 878, 880, 966, 968, 694, 782, 872,
- 964, 697, 699, 785, 787, 789, 791, 875,
- 877, 879, 881, 967, 969, 741, 743, 829,
- 831, 833, 835, 919, 921, 923, 925, 1011,
- 1013, 739, 827, 917, 1009, 742, 744, 830,
- 832, 834, 836, 920, 922, 924, 926, 1012,
- 1014, 1015, 1101, 1103, 1007, 1099, 1010, 1016,
- 1102, 1104, 698, 700, 786, 788, 790, 792,
- 876, 878, 880, 882, 968, 970, 699, 701,
- 787, 789, 791, 793, 877, 879, 881, 883,
- 969, 971, 703, 795, 885, 973, 743, 745,
- 831, 833, 835, 837, 921, 923, 925, 927,
- 1013, 1015, 744, 746, 832, 834, 836, 838,
- 922, 924, 926, 928, 1014, 1016, 748, 840,
- 930, 1018, 1011, 1017, 1103, 1105, 1012, 1104,
- 1106, 1020, 1108, 702, 704, 790, 792, 794,
- 796, 880, 882, 884, 886, 972, 974, 700,
- 788, 878, 970, 703, 705, 791, 793, 795,
- 881, 883, 885, 887, 973, 975, 747, 749,
- 835, 837, 839, 841, 925, 927, 929, 931,
- 1017, 1019, 745, 833, 923, 1015, 748, 750,
- 836, 838, 840, 842, 926, 928, 930, 932,
- 1018, 1020, 1021, 1107, 1109, 1013, 1105, 1016,
- 1022, 1108, 1110, 704, 706, 792, 794, 796,
- 882, 884, 886, 888, 974, 976, 705, 707,
- 793, 795, 799, 883, 885, 887, 889, 975,
- 977, 891, 979, 749, 751, 837, 839, 841,
- 927, 929, 931, 1019, 1021, 750, 838, 840,
- 842, 928, 930, 932, 934, 1020, 1022, 754,
- 846, 936, 1024, 1017, 1023, 1109, 1111, 1018,
- 1110, 1112, 1026, 1114, 708, 710, 796, 800,
- 886, 888, 890, 892, 980, 706, 794, 884,
- 976, 711, 799, 887, 889, 891, 893, 979,
- 981, 663, 751, 753, 757, 839, 841, 929,
- 931, 937, 1021, 1023, 1113, 754, 756, 842,
- 846, 932, 934, 936, 938, 1024, 1026, 1019,
- 1111, 1022, 1114, 982, 1066, 1070, 974, 1064,
- 1156, 977, 983, 1073, 1159, 1117, 1205, 1109,
- 1112, 714, 804, 892, 800, 890, 982, 717,
- 893, 895, 759, 761, 851, 937, 1029, 1031,
- 757, 760, 938, 942, 1033, 1117, 980, 1070,
- 1168, 981, 983, 1073, 1163, 1207, 1026, 1208,
- 1252, 1250, 1347, 1205, 1304, 1392, 1295, 1387,
- 1388, 891, 979, 888, 889, 1023, 1113, 936,
- 1024, 1114, 866, 868, 956, 958, 960, 1046,
- 1048, 1050, 1138, 867, 869, 957, 959, 961,
- 1047, 1049, 1051, 1139, 871, 963, 1053, 1141,
- 776, 778, 864, 870, 777, 779, 865, 781,
- 873, 911, 913, 1001, 1003, 1005, 1093, 1095,
- 1183, 912, 914, 1002, 1004, 1006, 1094, 1096,
- 1184, 916, 1008, 1098, 1186, 1140, 1228, 1229,
- 1143, 1231, 1185, 1188, 1276, 1275, 1278, 1366,
- 870, 872, 958, 960, 962, 964, 1048, 1050,
- 1052, 1054, 1140, 1142, 868, 956, 1046, 1138,
- 871, 873, 959, 961, 963, 965, 1049, 1051,
- 1053, 1055, 1141, 1143, 780, 782, 874, 778,
- 866, 781, 783, 869, 875, 915, 917, 1003,
- 1005, 1007, 1009, 1093, 1095, 1097, 1099, 1185,
- 1187, 913, 1001, 1183, 916, 918, 1004, 1006,
- 1008, 1010, 1094, 1096, 1098, 1100, 1186, 1188,
- 872, 874, 960, 962, 964, 966, 1050, 1052,
- 1054, 1056, 1142, 1144, 873, 875, 961, 963,
- 965, 967, 1051, 1053, 1055, 1057, 1143, 1145,
- 877, 969, 1059, 1147, 782, 784, 870, 876,
- 783, 785, 871, 787, 879, 917, 919, 1005,
- 1007, 1009, 1011, 1095, 1097, 1099, 1101, 1187,
- 1189, 918, 920, 1006, 1008, 1010, 1012, 1096,
- 1098, 1100, 1102, 1188, 1190, 922, 1014, 1104,
- 1192, 876, 878, 964, 966, 968, 970, 1054,
- 1056, 1058, 1060, 1146, 1148, 874, 962, 1052,
- 1144, 877, 879, 965, 967, 969, 971, 1055,
- 1057, 1059, 1061, 1147, 1149, 786, 788, 880,
- 784, 872, 787, 789, 875, 881, 921, 923,
- 1009, 1011, 1013, 1015, 1099, 1101, 1103, 1105,
- 1191, 1193, 919, 1007, 1097, 1189, 922, 924,
- 1010, 1012, 1014, 1016, 1100, 1102, 1104, 1106,
- 1192, 1194, 878, 880, 966, 968, 970, 972,
- 1056, 1058, 1060, 1062, 1148, 1150, 879, 881,
- 967, 969, 971, 973, 1057, 1059, 1061, 1063,
- 1149, 1151, 883, 975, 1065, 1153, 788, 790,
- 876, 882, 789, 791, 877, 793, 885, 923,
- 925, 1011, 1013, 1015, 1017, 1101, 1103, 1105,
- 1107, 1193, 1195, 924, 926, 1012, 1014, 1016,
- 1018, 1102, 1104, 1106, 1108, 1194, 1196, 928,
- 1020, 1110, 1198, 882, 884, 970, 972, 974,
- 976, 1060, 1062, 1064, 1066, 1152, 1154, 880,
- 968, 1058, 1150, 883, 885, 971, 973, 975,
- 977, 1061, 1063, 1065, 1153, 1155, 792, 794,
- 886, 790, 878, 793, 795, 881, 887, 927,
- 929, 1015, 1017, 1019, 1021, 1105, 1107, 1109,
- 1111, 1197, 1199, 925, 1013, 1103, 1195, 928,
- 930, 1016, 1018, 1020, 1022, 1106, 1108, 1110,
- 1112, 1198, 1200, 884, 886, 972, 974, 976,
- 1062, 1064, 1066, 1154, 1156, 885, 887, 973,
- 975, 977, 979, 1063, 1065, 1155, 1157, 889,
- 981, 1159, 794, 796, 882, 888, 795, 883,
- 799, 891, 929, 931, 1017, 1019, 1021, 1023,
- 1107, 1109, 1111, 1113, 1199, 930, 932, 1018,
- 1020, 1022, 1024, 1108, 1110, 1112, 1114, 1200,
- 1202, 934, 1026, 864, 866, 956, 1046, 1048,
- 1138, 865, 867, 957, 1047, 1049, 1139, 819,
- 911, 1001, 1003, 1093, 1183, 820, 912, 1002,
- 1004, 1094, 1184, 1185, 1275, 1186, 1276, 1095,
- 1096, 1228, 1230, 1320, 1229, 1231, 1321, 1365,
- 1366, 1140, 1141, 1233, 1323, 1411, 1051, 1143,
- 1277, 1367, 1278, 1368, 1410, 1457, 1547, 1458,
- 1548, 1502, 1592, 1503, 1593, 1413, 1412, 1640,
- 1730, 1549, 1639, 1729, 1550, 960, 962, 1048,
- 1050, 1052, 1054, 1138, 1140, 1142, 1144, 1230,
- 1232, 958, 1046, 1228, 961, 963, 1049, 1051,
- 1053, 1055, 1139, 1141, 1143, 1145, 1231, 1233,
- 1005, 1007, 1093, 1095, 1097, 1099, 1183, 1185,
- 1187, 1189, 1275, 1277, 1003, 1006, 1008, 1094,
- 1096, 1098, 1100, 1184, 1186, 1188, 1190, 1276,
- 1278, 1279, 1365, 1367, 1280, 1366, 1368, 962,
- 964, 1050, 1052, 1054, 1056, 1140, 1142, 1144,
- 1146, 1232, 1234, 963, 965, 1051, 1053, 1055,
- 1057, 1141, 1143, 1145, 1147, 1233, 1235, 967,
- 1059, 1149, 1237, 1007, 1009, 1095, 1097, 1099,
- 1101, 1185, 1187, 1189, 1191, 1277, 1279, 1008,
- 1010, 1096, 1098, 1100, 1102, 1186, 1188, 1190,
- 1192, 1278, 1280, 1012, 1104, 1194, 1282, 1275,
- 1281, 1367, 1369, 1276, 1368, 1370, 1284, 1372,
- 966, 968, 1054, 1056, 1058, 1060, 1144, 1146,
- 1148, 1150, 1236, 1238, 964, 1052, 1142, 1234,
- 967, 969, 1055, 1057, 1059, 1061, 1145, 1147,
- 1149, 1151, 1237, 1239, 1011, 1013, 1099, 1101,
- 1103, 1105, 1189, 1191, 1193, 1195, 1281, 1283,
- 1009, 1097, 1187, 1279, 1012, 1014, 1100, 1102,
- 1104, 1106, 1190, 1192, 1194, 1196, 1282, 1284,
- 1285, 1371, 1373, 1277, 1369, 1280, 1286, 1372,
- 1374, 968, 970, 1056, 1058, 1060, 1062, 1146,
- 1148, 1150, 1152, 1238, 1240, 969, 971, 1057,
- 1059, 1061, 1063, 1147, 1149, 1151, 1153, 1239,
- 1241, 973, 1065, 1155, 1243, 1013, 1015, 1101,
- 1103, 1105, 1107, 1191, 1193, 1195, 1197, 1283,
- 1285, 1014, 1016, 1102, 1104, 1106, 1108, 1192,
- 1194, 1196, 1198, 1284, 1286, 1018, 1110, 1200,
- 1288, 1281, 1287, 1373, 1375, 1282, 1374, 1376,
- 1290, 1378, 972, 974, 1060, 1062, 1064, 1066,
- 1150, 1152, 1154, 1156, 1242, 1244, 970, 1058,
- 1148, 1240, 973, 975, 1061, 1063, 1065, 1151,
- 1153, 1155, 1157, 1243, 1245, 1017, 1019, 1105,
- 1107, 1109, 1111, 1195, 1197, 1199, 1287, 1289,
- 1015, 1103, 1193, 1285, 1018, 1020, 1106, 1108,
- 1110, 1112, 1196, 1198, 1200, 1202, 1288, 1290,
- 1291, 1377, 1379, 1283, 1375, 1286, 1292, 1378,
- 1380, 974, 976, 1062, 1064, 1066, 1152, 1154,
- 1156, 1244, 1246, 975, 977, 1063, 1065, 1153,
- 1155, 1157, 1159, 1245, 979, 1249, 1019, 1021,
- 1107, 1109, 1111, 1113, 1197, 1199, 1289, 1291,
- 1020, 1022, 1108, 1110, 1112, 1114, 1198, 1200,
- 1202, 1290, 1292, 1024, 1294, 1287, 1293, 1379,
- 1288, 1380, 1382, 980, 1066, 1070, 1156, 1248,
- 1250, 976, 1064, 1154, 1246, 979, 981, 1073,
- 1157, 1159, 1163, 1249, 1251, 1023, 1111, 1113,
- 1117, 1205, 1207, 1293, 1295, 1021, 1109, 1199,
- 1291, 1024, 1026, 1112, 1114, 1202, 1208, 1294,
- 1385, 1289, 1292, 982, 1252, 983, 1387, 1388,
- 1339, 1341, 1347, 1523, 1392, 1140, 1142, 1228,
- 1230, 1232, 1234, 1320, 1322, 1324, 1410, 1412,
- 1138, 1141, 1143, 1229, 1231, 1233, 1235, 1321,
- 1323, 1325, 1411, 1413, 1050, 1052, 1144, 1048,
- 1051, 1053, 1139, 1145, 1185, 1187, 1275, 1277,
- 1279, 1365, 1367, 1369, 1457, 1183, 1186, 1188,
- 1276, 1278, 1280, 1366, 1368, 1370, 1458, 1414,
- 1502, 1415, 1503, 1459, 1547, 1460, 1548, 1549,
- 1550, 1142, 1144, 1230, 1232, 1234, 1236, 1320,
- 1322, 1324, 1326, 1412, 1414, 1143, 1145, 1231,
- 1233, 1235, 1237, 1321, 1323, 1325, 1327, 1413,
- 1415, 1147, 1239, 1329, 1417, 1052, 1054, 1140,
- 1146, 1053, 1055, 1141, 1057, 1149, 1187, 1189,
- 1275, 1277, 1279, 1281, 1365, 1367, 1369, 1371,
- 1457, 1459, 1188, 1190, 1276, 1278, 1280, 1282,
- 1366, 1368, 1370, 1372, 1458, 1460, 1192, 1284,
- 1374, 1462, 1146, 1148, 1234, 1236, 1238, 1240,
- 1324, 1326, 1328, 1330, 1416, 1418, 1144, 1232,
- 1322, 1414, 1147, 1149, 1235, 1237, 1239, 1241,
- 1325, 1327, 1329, 1331, 1417, 1419, 1056, 1058,
- 1150, 1054, 1142, 1057, 1059, 1145, 1151, 1191,
- 1193, 1279, 1281, 1283, 1285, 1369, 1371, 1373,
- 1375, 1461, 1463, 1189, 1277, 1367, 1459, 1192,
- 1194, 1280, 1282, 1284, 1286, 1370, 1372, 1374,
- 1376, 1462, 1464, 1148, 1150, 1236, 1238, 1240,
- 1242, 1326, 1328, 1330, 1332, 1418, 1420, 1149,
- 1151, 1237, 1239, 1241, 1243, 1327, 1329, 1331,
- 1333, 1419, 1421, 1153, 1245, 1335, 1423, 1058,
- 1060, 1146, 1152, 1059, 1061, 1147, 1063, 1155,
- 1193, 1195, 1281, 1283, 1285, 1287, 1371, 1373,
- 1375, 1377, 1463, 1465, 1194, 1196, 1282, 1284,
- 1286, 1288, 1372, 1374, 1376, 1378, 1464, 1466,
- 1198, 1290, 1380, 1468, 1152, 1154, 1240, 1242,
- 1244, 1246, 1330, 1332, 1334, 1336, 1422, 1424,
- 1150, 1238, 1328, 1420, 1153, 1155, 1241, 1243,
- 1245, 1331, 1333, 1335, 1337, 1423, 1425, 1062,
- 1064, 1156, 1060, 1148, 1063, 1065, 1151, 1157,
- 1197, 1199, 1285, 1287, 1289, 1291, 1375, 1377,
- 1379, 1467, 1469, 1195, 1283, 1373, 1465, 1198,
- 1200, 1286, 1288, 1290, 1292, 1376, 1378, 1380,
- 1382, 1468, 1470, 1154, 1156, 1242, 1244, 1246,
- 1248, 1332, 1334, 1336, 1424, 1426, 1155, 1157,
- 1243, 1245, 1249, 1333, 1335, 1337, 1339, 1425,
- 1427, 1159, 1251, 1341, 1064, 1066, 1152, 1065,
- 1153, 1199, 1287, 1289, 1291, 1293, 1377, 1379,
- 1469, 1471, 1200, 1202, 1288, 1290, 1292, 1294,
- 1378, 1380, 1382, 1470, 1472, 1474, 1246, 1248,
- 1250, 1252, 1336, 1156, 1244, 1334, 1426, 1159,
- 1249, 1251, 1337, 1339, 1341, 1070, 1066, 1154,
- 1157, 1163, 1205, 1291, 1293, 1295, 1385, 1387,
- 1289, 1379, 1471, 1292, 1294, 1382, 1388, 1474,
- 1424, 1516, 1518, 1427, 1563, 1565, 1469, 1561,
- 1472, 1564, 1566, 1567, 1168, 1250, 1252, 1347,
- 1073, 1163, 1251, 1207, 1295, 1385, 1387, 1304,
- 1388, 1392, 1528, 1031, 1033, 1117, 1567, 1565,
- 1566, 1574, 1750, 1138, 1228, 1230, 1320, 1322,
- 1410, 1412, 1139, 1229, 1231, 1321, 1323, 1411,
- 1413, 1183, 1275, 1365, 1367, 1457, 1184, 1276,
- 1366, 1368, 1458, 1547, 1548, 1460, 1550, 1502,
- 1592, 1503, 1593, 1549, 1639, 1640, 1505, 1595,
- 1504, 1594, 1414, 1415, 1684, 1685, 1729, 1730,
- 1731, 1821, 1732, 1822, 1774, 1775, 1046, 1047,
- 1911, 1912, 1866, 1956, 1867, 1957, 1776, 1777,
- 1232, 1234, 1320, 1322, 1324, 1326, 1410, 1412,
- 1414, 1416, 1502, 1504, 1233, 1235, 1321, 1323,
- 1325, 1327, 1411, 1413, 1415, 1417, 1503, 1505,
- 1237, 1329, 1419, 1507, 1277, 1279, 1365, 1367,
- 1369, 1371, 1457, 1459, 1461, 1547, 1549, 1278,
- 1280, 1366, 1368, 1370, 1372, 1458, 1460, 1462,
- 1548, 1550, 1282, 1374, 1464, 1552, 1551, 1639,
- 1640, 1554, 1642, 1236, 1238, 1324, 1326, 1328,
- 1330, 1414, 1416, 1418, 1420, 1506, 1508, 1234,
- 1322, 1412, 1504, 1237, 1239, 1325, 1327, 1329,
- 1331, 1415, 1417, 1419, 1421, 1507, 1509, 1281,
- 1283, 1369, 1371, 1373, 1375, 1459, 1461, 1463,
- 1465, 1551, 1553, 1279, 1367, 1457, 1549, 1282,
- 1284, 1370, 1372, 1374, 1376, 1460, 1462, 1464,
- 1466, 1552, 1554, 1555, 1641, 1643, 1547, 1639,
- 1550, 1556, 1642, 1644, 1238, 1240, 1326, 1328,
- 1330, 1332, 1416, 1418, 1420, 1422, 1508, 1510,
- 1239, 1241, 1327, 1329, 1331, 1333, 1417, 1419,
- 1421, 1423, 1509, 1511, 1243, 1335, 1425, 1513,
- 1283, 1285, 1371, 1373, 1375, 1377, 1461, 1463,
- 1465, 1467, 1553, 1555, 1284, 1286, 1372, 1374,
- 1376, 1378, 1462, 1464, 1466, 1468, 1554, 1556,
- 1288, 1380, 1470, 1551, 1557, 1643, 1645, 1552,
- 1644, 1646, 1560, 1648, 1242, 1244, 1330, 1332,
- 1334, 1336, 1420, 1422, 1424, 1426, 1512, 1514,
- 1240, 1328, 1418, 1510, 1243, 1245, 1331, 1333,
- 1335, 1337, 1421, 1423, 1425, 1427, 1513, 1515,
- 1287, 1289, 1375, 1377, 1379, 1465, 1467, 1469,
- 1471, 1557, 1285, 1373, 1463, 1555, 1288, 1290,
- 1376, 1378, 1380, 1382, 1466, 1468, 1470, 1472,
- 1560, 1561, 1647, 1649, 1553, 1645, 1556, 1648,
- 1244, 1246, 1332, 1334, 1336, 1422, 1424, 1426,
- 1514, 1516, 1245, 1333, 1335, 1337, 1339, 1423,
- 1425, 1427, 1515, 1517, 1249, 1341, 1289, 1291,
- 1377, 1379, 1467, 1469, 1471, 1561, 1290, 1292,
- 1378, 1380, 1382, 1468, 1470, 1472, 1474, 1560,
- 1294, 1564, 1557, 1563, 1649, 1652, 1566, 1512,
- 1518, 1602, 1604, 1606, 1513, 1603, 1605, 1607,
- 1609, 1695, 1699, 1647, 1739, 1741, 1648, 1740,
- 1744, 1248, 1250, 1252, 1336, 1426, 1518, 1251,
- 1339, 1341, 1523, 1163, 1347, 1295, 1385, 1387,
- 1565, 1567, 1388, 1474, 1566, 1392, 1563, 1564,
- 1574, 1748, 1750, 1516, 1606, 1698, 1704, 1609,
- 1701, 1617, 1745, 1528, 1412, 1414, 1502, 1504,
- 1506, 1592, 1594, 1596, 1684, 1413, 1415, 1503,
- 1505, 1507, 1593, 1595, 1597, 1685, 1417, 1509,
- 1599, 1687, 1322, 1324, 1410, 1416, 1323, 1325,
- 1411, 1327, 1419, 1457, 1459, 1547, 1549, 1551,
- 1639, 1641, 1729, 1458, 1460, 1548, 1550, 1552,
- 1640, 1642, 1730, 1462, 1554, 1644, 1732, 1686,
- 1774, 1775, 1689, 1777, 1731, 1734, 1822, 1821,
- 1824, 1912, 1416, 1418, 1504, 1506, 1508, 1510,
- 1594, 1596, 1598, 1600, 1686, 1688, 1414, 1502,
- 1592, 1684, 1417, 1419, 1505, 1507, 1509, 1511,
- 1595, 1597, 1599, 1601, 1687, 1689, 1326, 1328,
- 1420, 1324, 1412, 1327, 1329, 1415, 1421, 1461,
- 1463, 1549, 1551, 1553, 1555, 1639, 1641, 1643,
- 1645, 1731, 1733, 1459, 1547, 1729, 1462, 1464,
- 1550, 1552, 1554, 1556, 1640, 1642, 1644, 1646,
- 1732, 1734, 1418, 1420, 1506, 1508, 1510, 1512,
- 1596, 1598, 1600, 1602, 1688, 1690, 1419, 1421,
- 1507, 1509, 1511, 1513, 1597, 1599, 1601, 1603,
- 1689, 1691, 1423, 1515, 1605, 1328, 1330, 1416,
- 1422, 1329, 1331, 1417, 1333, 1425, 1463, 1465,
- 1551, 1553, 1555, 1557, 1641, 1643, 1645, 1647,
- 1733, 1735, 1464, 1466, 1552, 1554, 1556, 1642,
- 1644, 1646, 1648, 1734, 1736, 1468, 1560, 1738,
- 1422, 1424, 1510, 1512, 1514, 1516, 1600, 1602,
- 1604, 1606, 1692, 1420, 1508, 1598, 1690, 1423,
- 1425, 1511, 1513, 1515, 1517, 1601, 1603, 1605,
- 1607, 1695, 1332, 1334, 1426, 1330, 1418, 1333,
- 1335, 1421, 1427, 1467, 1469, 1555, 1557, 1561,
- 1645, 1647, 1649, 1737, 1739, 1465, 1553, 1643,
- 1735, 1468, 1470, 1556, 1560, 1646, 1648, 1652,
- 1738, 1740, 1516, 1518, 1606, 1698, 1426, 1514,
- 1604, 1517, 1523, 1607, 1609, 1699, 1701, 1336,
- 1424, 1249, 1251, 1337, 1339, 1341, 1425, 1427,
- 1515, 1561, 1563, 1565, 1567, 1743, 1745, 1471,
- 1649, 1741, 1474, 1564, 1566, 1652, 1744, 1786,
- 1789, 1739, 1831, 1748, 1923, 1832, 1924, 1502,
- 1592, 1594, 1684, 1410, 1503, 1593, 1595, 1685,
- 1457, 1547, 1549, 1639, 1641, 1729, 1731, 1458,
- 1548, 1550, 1640, 1642, 1730, 1732, 1821, 1822,
- 1774, 1776, 1866, 1775, 1777, 1867, 1411, 1911,
- 1912, 1686, 1687, 1779, 1869, 1957, 1597, 1689,
- 1823, 1913, 1824, 1914, 1956, 2004, 2003, 1868,
- 1958, 1959, 1506, 1508, 1594, 1596, 1598, 1600,
- 1684, 1686, 1688, 1690, 1776, 1778, 1504, 1592,
- 1774, 1507, 1509, 1595, 1597, 1599, 1601, 1685,
- 1687, 1689, 1691, 1777, 1779, 1551, 1553, 1639,
- 1641, 1643, 1645, 1729, 1731, 1733, 1735, 1821,
- 1823, 1549, 1552, 1554, 1640, 1642, 1644, 1646,
- 1730, 1732, 1734, 1736, 1822, 1824, 1825, 1911,
- 1913, 1826, 1912, 1914, 1508, 1510, 1596, 1598,
- 1600, 1602, 1686, 1688, 1690, 1692, 1778, 1780,
- 1509, 1511, 1597, 1599, 1601, 1603, 1687, 1689,
- 1691, 1779, 1781, 1513, 1605, 1695, 1783, 1553,
- 1555, 1641, 1643, 1645, 1647, 1731, 1733, 1735,
- 1737, 1823, 1825, 1554, 1556, 1642, 1644, 1646,
- 1648, 1732, 1734, 1736, 1738, 1824, 1826, 1740,
- 1828, 1821, 1827, 1913, 1915, 1822, 1914, 1830,
- 1918, 1512, 1514, 1600, 1602, 1604, 1606, 1690,
- 1692, 1782, 1784, 1510, 1598, 1688, 1780, 1513,
- 1515, 1601, 1603, 1605, 1607, 1691, 1695, 1783,
- 1785, 1557, 1645, 1647, 1649, 1735, 1737, 1739,
- 1741, 1827, 1555, 1643, 1733, 1825, 1560, 1646,
- 1648, 1652, 1736, 1738, 1740, 1828, 1830, 1831,
- 1917, 1919, 1823, 1915, 1826, 1832, 1918, 1920,
- 1514, 1516, 1602, 1604, 1606, 1692, 1698, 1784,
- 1786, 1515, 1517, 1603, 1605, 1607, 1609, 1695,
- 1699, 1785, 1701, 1789, 1561, 1647, 1649, 1737,
- 1739, 1741, 1743, 1831, 1560, 1648, 1652, 1738,
- 1740, 1744, 1830, 1832, 1564, 1827, 1919, 1828,
- 1920, 1924, 1782, 1872, 1874, 1878, 1783, 1873,
- 1877, 1879, 1965, 1967, 1917, 1923, 2011, 1918,
- 2010, 2014, 1880, 1968, 1883, 1745, 2013, 1963,
- 2007, 2008, 1518, 1606, 1698, 1704, 1880, 1523,
- 1609, 1699, 1701, 1617, 1883, 1565, 1567, 1743,
- 1745, 1566, 1744, 1748, 1750, 1930, 1878, 1972,
- 1789, 1879, 1786, 1831, 1923, 2013, 1832, 1924,
- 2014, 2018, 1976, 2021, 1968, 2011, 1704, 1617,
- 1565, 1567, 1745, 1743, 1748, 1750, 2021, 1930,
- 1528, 1574, 2024, 1976, 1883, 1686, 1688, 1774,
- 1776, 1778, 1780, 1866, 1868, 1870, 1956, 1958,
- 1684, 1687, 1689, 1775, 1777, 1779, 1781, 1867,
- 1869, 1871, 1957, 1959, 1596, 1598, 1690, 1594,
- 1597, 1599, 1685, 1691, 1731, 1733, 1821, 1823,
- 1825, 1911, 1913, 1915, 2003, 1729, 1732, 1734,
- 1822, 1824, 1826, 1912, 1914, 2004, 1960, 1961,
- 2005, 2006, 1872, 1873, 1963, 1783, 1965, 1917,
- 2007, 1918, 2008, 1828, 1920, 2010, 1688, 1690,
- 1776, 1778, 1780, 1782, 1866, 1868, 1870, 1872,
- 1958, 1960, 1689, 1691, 1777, 1779, 1781, 1783,
- 1867, 1869, 1871, 1873, 1959, 1961, 1785, 1963,
- 1598, 1600, 1686, 1692, 1599, 1601, 1687, 1603,
- 1695, 1733, 1735, 1821, 1823, 1825, 1827, 1911,
- 1913, 1915, 1917, 2003, 2005, 1734, 1736, 1822,
- 1824, 1826, 1828, 1912, 1914, 1918, 2004, 2006,
- 1738, 1830, 1920, 2008, 1692, 1780, 1782, 1784,
- 1786, 1870, 1872, 1874, 1690, 1778, 1868, 1960,
- 1695, 1781, 1783, 1785, 1871, 1873, 1877, 1963,
- 1965, 1602, 1604, 1600, 1688, 1603, 1605, 1691,
- 1737, 1739, 1825, 1827, 1831, 1915, 1917, 1919,
- 2007, 1735, 1823, 1913, 2005, 1738, 1740, 1826,
- 1828, 1830, 1832, 1918, 1920, 2008, 2010, 1958,
- 1961, 1967, 2011, 2003, 2006, 1878, 1880, 1968,
- 1972, 1786, 1874, 1789, 1877, 1879, 1883, 1967,
- 1923, 2011, 2013, 1831, 1919, 1924, 2014, 2018,
- 1972, 1976, 1880, 1883, 2021, 1923, 2013, 1930,
- 2018, 2024,
-};
-
-static long _vq_fitmap_res_Zc_8[] = {
- 0, 0, 0, 59, 59, 123, 123, 187,
- 187, 251, 251, 315, 315, 375, 375, 438,
- 438, 501, 566, 631, 696, 761, 826, 891,
- 956, 1021, 1086, 1151, 375, 375, 1208, 438,
- 1249, 1308, 1373, 1438, 1503, 1568, 1633, 1698,
- 1763, 1828, 1892, 1951, 1951, 1208, 1208, 2006,
- 2068, 2132, 2197, 2262, 2327, 2392, 2457, 2522,
- 2587, 2648, 2700, 2753, 2777, 2777, 2006, 2831,
- 2889, 2954, 3019, 3084, 3149, 3214, 3278, 3340,
- 3393, 2700, 3440, 2777, 2777, 2777, 3474, 3534,
- 3599, 3664, 3729, 3794, 3859, 3922, 3980, 4026,
- 3440, 3440, 2777, 2777, 4075, 3474, 4132, 4191,
- 4256, 4321, 4386, 4451, 4515, 4572, 4026, 4633,
- 4633, 4075, 4075, 4075, 4075, 4682, 4744, 4808,
- 4873, 4938, 5003, 5067, 4572, 4633, 4633, 4633,
- 4075, 4075, 5123, 5123, 4682, 5189, 5247, 5312,
- 5377, 5442, 5505, 5555, 5555, 4633, 4633, 4075,
- 4075, 5123, 5123, 5123, 5605, 5665, 5730, 5795,
- 5860, 5923, 5974, 5555, 6020, 6020, 5123, 5123,
- 5123, 5123, 6043, 5605, 6104, 6163, 6228, 6292,
- 6352, 5974, 6417, 6020, 6020, 5123, 5123, 5123,
- 6043, 6043, 6043, 6452, 6514, 6578, 6640, 6352,
- 6698, 6417, 6417, 6417, 5123, 5123, 5123, 6043,
- 6043, 6743, 6452, 6794, 6852, 6913, 6968, 6698,
- 7034, 7070, 7070, 6043, 6043, 6043, 6043, 6743,
- 6743, 6743, 7085, 7150, 7212, 6968, 6968, 7034,
- 7034, 7070, 6043, 6043, 6043, 6043, 6743, 6743,
- 6743, 7085, 7085, 7212, 6968, 7269, 7034, 7288,
- 7070,
-};
-
-static long _vq_fitlength_res_Zc_8[] = {
- 59, 59, 59, 64, 64, 64, 64, 64,
- 64, 64, 64, 60, 60, 63, 63, 63,
- 63, 65, 65, 65, 65, 65, 65, 65,
- 65, 65, 65, 57, 63, 63, 41, 63,
- 59, 65, 65, 65, 65, 65, 65, 65,
- 65, 64, 59, 55, 55, 41, 41, 62,
- 64, 65, 65, 65, 65, 65, 65, 65,
- 61, 52, 53, 24, 54, 54, 62, 58,
- 65, 65, 65, 65, 65, 64, 62, 53,
- 47, 53, 34, 54, 54, 54, 60, 65,
- 65, 65, 65, 65, 63, 58, 46, 49,
- 34, 34, 54, 54, 57, 60, 59, 65,
- 65, 65, 65, 64, 57, 61, 49, 49,
- 49, 57, 57, 57, 57, 62, 64, 65,
- 65, 65, 64, 56, 61, 49, 49, 49,
- 57, 57, 66, 66, 62, 58, 65, 65,
- 65, 63, 50, 50, 50, 49, 49, 57,
- 57, 66, 66, 66, 60, 65, 65, 65,
- 63, 51, 46, 50, 23, 23, 66, 66,
- 66, 66, 61, 60, 59, 65, 64, 60,
- 65, 46, 35, 23, 23, 66, 66, 66,
- 61, 61, 61, 62, 64, 62, 58, 65,
- 45, 35, 35, 35, 66, 66, 66, 61,
- 61, 51, 62, 58, 61, 55, 66, 45,
- 36, 15, 15, 61, 61, 61, 61, 51,
- 51, 51, 65, 62, 57, 66, 66, 36,
- 36, 15, 61, 61, 61, 61, 51, 51,
- 51, 65, 65, 57, 66, 19, 36, 10,
- 15,
-};
-
-static encode_aux_pigeonhole _vq_auxp_res_Zc_8 = {
- -22, 1, 44, 15,
- _vq_pigeonmap_res_Zc_8,
- 7298,
- _vq_fitlist_res_Zc_8,
- _vq_fitmap_res_Zc_8,
- _vq_fitlength_res_Zc_8
-};
-
-static static_codebook _vq_book_res_Zc_8 = {
- 2, 2025,
- _vq_lengthlist_res_Zc_8,
- 1, -527040512, 1611661312, 6, 0,
- _vq_quantlist_res_Zc_8,
- NULL,
- &_vq_auxt_res_Zc_8,
- &_vq_auxp_res_Zc_8,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_9.vqh b/lib/books/res_Zc_9.vqh
deleted file mode 100644
index f6753c47224ab763ce9ab1c221bda42191d50e99..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_9.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company, http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_9_VQH_
-#define _V_res_Zc_9_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res_Zc_9[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res_Zc_9[] = {
- 1,11,10,11,11, 7,11,11,11,11, 7,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,
-};
-
-static float _vq_quantthresh_res_Zc_9[] = {
- -100.5, -33.5, 33.5, 100.5,
-};
-
-static long _vq_quantmap_res_Zc_9[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res_Zc_9 = {
- _vq_quantthresh_res_Zc_9,
- _vq_quantmap_res_Zc_9,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res_Zc_9 = {
- 4, 625,
- _vq_lengthlist_res_Zc_9,
- 1, -521093120, 1624293376, 3, 0,
- _vq_quantlist_res_Zc_9,
- NULL,
- &_vq_auxt_res_Zc_9,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res_Zc_9a.vqh b/lib/books/res_Zc_9a.vqh
deleted file mode 100644
index 11e3559dfac5b90c637a1b1bc9a3e6947b2b28e2..0000000000000000000000000000000000000000
--- a/lib/books/res_Zc_9a.vqh
+++ /dev/null
@@ -1,115 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company, http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: static codebook autogenerated by vq/somethingorother
-
- ********************************************************************/
-
-#ifndef _V_res_Zc_9a_VQH_
-#define _V_res_Zc_9a_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res_Zc_9a[] = {
- 11,
- 10,
- 12,
- 9,
- 13,
- 8,
- 14,
- 7,
- 15,
- 6,
- 16,
- 5,
- 17,
- 4,
- 18,
- 3,
- 19,
- 2,
- 20,
- 1,
- 21,
- 0,
- 22,
-};
-
-static long _vq_lengthlist_res_Zc_9a[] = {
- 2, 4, 4, 8, 8, 9,10,10,11,11,14,14,14,13,14,12,
- 12,14,12,14,14,14,14, 5, 5, 5, 7, 8,10,10,11,12,
- 12,12,13,12,14,14,11,12,14,14,14,14,14,14,14, 5,
- 4, 7, 7, 9, 9,10,10,13,13,13,13,12,13,12,12,12,
- 13,13,13,13,13,13, 5, 5, 8, 8, 9, 9,10,11,11,11,
- 12,13,13,13,12,13,13,13,13,13,13,13,13, 5, 5, 7,
- 6, 9, 9,10,10,11,12,13,12,13,13,11,12,13,12,13,
- 13,13,13,13, 8, 9, 6, 7, 9,10,10,11,12,11,13,13,
- 13,13,13,12,13,13,13,13,13,13,13,13,13, 8, 6, 9,
- 8,10,10,11,11,13,12,13,13,13,11,12,12,13,12,13,
- 13,13,13,13, 9, 9, 9, 9, 9,10,11,13,13,13,13,13,
- 13,12,13,13,12,13,13,13,13,13,13, 9, 9, 9, 9,10,
- 11,13,11,13,13,13,13,13,12,13,13,13,13,13,13,13,
- 13,13,12,12, 9, 9,10,10,11,12,13,13,13,13,12,13,
- 13,13,13,13,13,12,13,13,13,13,13,10, 9,11,10,12,
- 12,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,
- 13,13,11,12,11,10,13,12,13,13,13,13,13,11,12,13,
- 13,13,13,13,13,13,13,13,13,12,12,10,12,12,13,13,
- 12,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,
- 11,12,11,11,12,12,13,13,13,13,13,12,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,11,11,12,12,12,13,13,
- 13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 7, 9, 9,11,12,12,13,13,13,12,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,10, 7,10, 8,11,11,12,13,13,
- 12,13,13,13,13,13,13,13,13,13,13,13,13,13, 8,12,
- 7,11,11,11,12,12,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,10, 7,12,12,12,12,12,13,13,
- 13,12,13,13,13,13,13,13,13,13,13,13,13,13, 9,12,
- 9,12,11,12,12,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13, 9,10,10,11,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,11,13,10,11,
- 12,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,10,11,11,12,13,13,13,13,13,13,13,
- 13,
-};
-
-static float _vq_quantthresh_res_Zc_9a[] = {
- -31.5, -28.5, -25.5, -22.5, -19.5, -16.5, -13.5, -10.5,
- -7.5, -4.5, -1.5, 1.5, 4.5, 7.5, 10.5, 13.5,
- 16.5, 19.5, 22.5, 25.5, 28.5, 31.5,
-};
-
-static long _vq_quantmap_res_Zc_9a[] = {
- 21, 19, 17, 15, 13, 11, 9, 7,
- 5, 3, 1, 0, 2, 4, 6, 8,
- 10, 12, 14, 16, 18, 20, 22,
-};
-
-static encode_aux_threshmatch _vq_auxt_res_Zc_9a = {
- _vq_quantthresh_res_Zc_9a,
- _vq_quantmap_res_Zc_9a,
- 23,
- 23
-};
-
-static static_codebook _vq_book_res_Zc_9a = {
- 2, 529,
- _vq_lengthlist_res_Zc_9a,
- 1, -525303808, 1614282752, 5, 0,
- _vq_quantlist_res_Zc_9a,
- NULL,
- &_vq_auxt_res_Zc_9a,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/codebook.c b/lib/codebook.c
deleted file mode 100644
index e9f2a794de9869dfcaed6bc7eacc98a33a162244..0000000000000000000000000000000000000000
--- a/lib/codebook.c
+++ /dev/null
@@ -1,579 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: basic codebook pack/unpack/code/decode operations
- last mod: $Id: codebook.c,v 1.28 2001/08/13 01:36:56 xiphmont Exp $
-
- ********************************************************************/
-
-#include
-#include
-#include
-#include
-#include "vorbis/codec.h"
-#include "codebook.h"
-#include "scales.h"
-#include "misc.h"
-#include "os.h"
-
-/* packs the given codebook into the bitstream **************************/
-
-int vorbis_staticbook_pack(const static_codebook *c,oggpack_buffer *opb){
- long i,j;
- int ordered=0;
-
- /* first the basic parameters */
- oggpack_write(opb,0x564342,24);
- oggpack_write(opb,c->dim,16);
- oggpack_write(opb,c->entries,24);
-
- /* pack the codewords. There are two packings; length ordered and
- length random. Decide between the two now. */
-
- for(i=1;ientries;i++)
- if(c->lengthlist[i-1]==0 || c->lengthlist[i]lengthlist[i-1])break;
- if(i==c->entries)ordered=1;
-
- if(ordered){
- /* length ordered. We only need to say how many codewords of
- each length. The actual codewords are generated
- deterministically */
-
- long count=0;
- oggpack_write(opb,1,1); /* ordered */
- oggpack_write(opb,c->lengthlist[0]-1,5); /* 1 to 32 */
-
- for(i=1;ientries;i++){
- long this=c->lengthlist[i];
- long last=c->lengthlist[i-1];
- if(this>last){
- for(j=last;jentries-count));
- count=i;
- }
- }
- }
- oggpack_write(opb,i-count,_ilog(c->entries-count));
-
- }else{
- /* length random. Again, we don't code the codeword itself, just
- the length. This time, though, we have to encode each length */
- oggpack_write(opb,0,1); /* unordered */
-
- /* algortihmic mapping has use for 'unused entries', which we tag
- here. The algorithmic mapping happens as usual, but the unused
- entry has no codeword. */
- for(i=0;ientries;i++)
- if(c->lengthlist[i]==0)break;
-
- if(i==c->entries){
- oggpack_write(opb,0,1); /* no unused entries */
- for(i=0;ientries;i++)
- oggpack_write(opb,c->lengthlist[i]-1,5);
- }else{
- oggpack_write(opb,1,1); /* we have unused entries; thus we tag */
- for(i=0;ientries;i++){
- if(c->lengthlist[i]==0){
- oggpack_write(opb,0,1);
- }else{
- oggpack_write(opb,1,1);
- oggpack_write(opb,c->lengthlist[i]-1,5);
- }
- }
- }
- }
-
- /* is the entry number the desired return value, or do we have a
- mapping? If we have a mapping, what type? */
- oggpack_write(opb,c->maptype,4);
- switch(c->maptype){
- case 0:
- /* no mapping */
- break;
- case 1:case 2:
- /* implicitly populated value mapping */
- /* explicitly populated value mapping */
-
- if(!c->quantlist){
- /* no quantlist? error */
- return(-1);
- }
-
- /* values that define the dequantization */
- oggpack_write(opb,c->q_min,32);
- oggpack_write(opb,c->q_delta,32);
- oggpack_write(opb,c->q_quant-1,4);
- oggpack_write(opb,c->q_sequencep,1);
-
- {
- int quantvals;
- switch(c->maptype){
- case 1:
- /* a single column of (c->entries/c->dim) quantized values for
- building a full value list algorithmically (square lattice) */
- quantvals=_book_maptype1_quantvals(c);
- break;
- case 2:
- /* every value (c->entries*c->dim total) specified explicitly */
- quantvals=c->entries*c->dim;
- break;
- default: /* NOT_REACHABLE */
- quantvals=-1;
- }
-
- /* quantized values */
- for(i=0;iquantlist[i]),c->q_quant);
-
- }
- break;
- default:
- /* error case; we don't have any other map types now */
- return(-1);
- }
-
- return(0);
-}
-
-/* unpacks a codebook from the packet buffer into the codebook struct,
- readies the codebook auxiliary structures for decode *************/
-int vorbis_staticbook_unpack(oggpack_buffer *opb,static_codebook *s){
- long i,j;
- memset(s,0,sizeof(static_codebook));
- s->allocedp=1;
-
- /* make sure alignment is correct */
- if(oggpack_read(opb,24)!=0x564342)goto _eofout;
-
- /* first the basic parameters */
- s->dim=oggpack_read(opb,16);
- s->entries=oggpack_read(opb,24);
- if(s->entries==-1)goto _eofout;
-
- /* codeword ordering.... length ordered or unordered? */
- switch(oggpack_read(opb,1)){
- case 0:
- /* unordered */
- s->lengthlist=_ogg_malloc(sizeof(long)*s->entries);
-
- /* allocated but unused entries? */
- if(oggpack_read(opb,1)){
- /* yes, unused entries */
-
- for(i=0;ientries;i++){
- if(oggpack_read(opb,1)){
- long num=oggpack_read(opb,5);
- if(num==-1)goto _eofout;
- s->lengthlist[i]=num+1;
- }else
- s->lengthlist[i]=0;
- }
- }else{
- /* all entries used; no tagging */
- for(i=0;ientries;i++){
- long num=oggpack_read(opb,5);
- if(num==-1)goto _eofout;
- s->lengthlist[i]=num+1;
- }
- }
-
- break;
- case 1:
- /* ordered */
- {
- long length=oggpack_read(opb,5)+1;
- s->lengthlist=_ogg_malloc(sizeof(long)*s->entries);
-
- for(i=0;ientries;){
- long num=oggpack_read(opb,_ilog(s->entries-i));
- if(num==-1)goto _eofout;
- for(j=0;jlengthlist[i]=length;
- length++;
- }
- }
- break;
- default:
- /* EOF */
- return(-1);
- }
-
- /* Do we have a mapping to unpack? */
- switch((s->maptype=oggpack_read(opb,4))){
- case 0:
- /* no mapping */
- break;
- case 1: case 2:
- /* implicitly populated value mapping */
- /* explicitly populated value mapping */
-
- s->q_min=oggpack_read(opb,32);
- s->q_delta=oggpack_read(opb,32);
- s->q_quant=oggpack_read(opb,4)+1;
- s->q_sequencep=oggpack_read(opb,1);
-
- {
- int quantvals;
- switch(s->maptype){
- case 1:
- quantvals=_book_maptype1_quantvals(s);
- break;
- case 2:
- quantvals=s->entries*s->dim;
- break;
- }
-
- /* quantized values */
- s->quantlist=_ogg_malloc(sizeof(long)*quantvals);
- for(i=0;iquantlist[i]=oggpack_read(opb,s->q_quant);
-
- if(s->quantlist[quantvals-1]==-1)goto _eofout;
- }
- break;
- default:
- goto _errout;
- }
-
- /* all set */
- return(0);
-
- _errout:
- _eofout:
- vorbis_staticbook_clear(s);
- return(-1);
-}
-
-/* returns the number of bits ************************************************/
-int vorbis_book_encode(codebook *book, int a, oggpack_buffer *b){
- oggpack_write(b,book->codelist[a],book->c->lengthlist[a]);
- return(book->c->lengthlist[a]);
-}
-
-/* One the encode side, our vector writers are each designed for a
-specific purpose, and the encoder is not flexible without modification:
-
-The LSP vector coder uses a single stage nearest-match with no
-interleave, so no step and no error return. This is specced by floor0
-and doesn't change.
-
-Residue0 encoding interleaves, uses multiple stages, and each stage
-peels of a specific amount of resolution from a lattice (thus we want
-to match by threshold, not nearest match). Residue doesn't *have* to
-be encoded that way, but to change it, one will need to add more
-infrastructure on the encode side (decode side is specced and simpler) */
-
-/* floor0 LSP (single stage, non interleaved, nearest match) */
-/* returns entry number and *modifies a* to the quantization value *****/
-int vorbis_book_errorv(codebook *book,float *a){
- int dim=book->dim,k;
- int best=_best(book,a,1);
- for(k=0;kvaluelist+best*dim)[k];
- return(best);
-}
-
-/* returns the number of bits and *modifies a* to the quantization value *****/
-int vorbis_book_encodev(codebook *book,int best,float *a,oggpack_buffer *b){
- int k,dim=book->dim;
- for(k=0;kvaluelist+best*dim)[k];
- return(vorbis_book_encode(book,best,b));
-}
-
-/* res0 (multistage, interleave, lattice) */
-/* returns the number of bits and *modifies a* to the remainder value ********/
-int vorbis_book_encodevs(codebook *book,float *a,oggpack_buffer *b,
- int step,int addmul){
-
- int best=vorbis_book_besterror(book,a,step,addmul);
- return(vorbis_book_encode(book,best,b));
-}
-
-/* Decode side is specced and easier, because we don't need to find
- matches using different criteria; we simply read and map. There are
- two things we need to do 'depending':
-
- We may need to support interleave. We don't really, but it's
- convenient to do it here rather than rebuild the vector later.
-
- Cascades may be additive or multiplicitive; this is not inherent in
- the codebook, but set in the code using the codebook. Like
- interleaving, it's easiest to do it here.
- addmul==0 -> declarative (set the value)
- addmul==1 -> additive
- addmul==2 -> multiplicitive */
-
-/* returns the entry number or -1 on eof *************************************/
-long vorbis_book_decode(codebook *book, oggpack_buffer *b){
- long ptr=0;
- decode_aux *t=book->decode_tree;
- int lok = oggpack_look(b, t->tabn);
-
- if (lok >= 0) {
- ptr = t->tab[lok];
- oggpack_adv(b, t->tabl[lok]);
- if (ptr <= 0)
- return -ptr;
- }
-
- do{
- switch(oggpack_read1(b)){
- case 0:
- ptr=t->ptr0[ptr];
- break;
- case 1:
- ptr=t->ptr1[ptr];
- break;
- case -1:
- return(-1);
- }
- }while(ptr>0);
- return(-ptr);
-}
-
-/* returns 0 on OK or -1 on eof *************************************/
-long vorbis_book_decodevs_add(codebook *book,float *a,oggpack_buffer *b,int n){
- int step=n/book->dim;
- long *entry = alloca(sizeof(long)*step);
- float **t = alloca(sizeof(float *)*step);
- int i,j,o;
-
- for (i = 0; i < step; i++) {
- entry[i]=vorbis_book_decode(book,b);
- if(entry[i]==-1)return(-1);
- t[i] = book->valuelist+entry[i]*book->dim;
- }
- for(i=0,o=0;idim;i++,o+=step)
- for (j=0;jdim>8){
- for(i=0;ivaluelist+entry*book->dim;
- for (j=0;jdim;)
- a[i++]+=t[j++];
- }
- }else{
- for(i=0;ivaluelist+entry*book->dim;
- switch(book->dim){
- case 8:
- a[i++]+=t[j++];
- case 7:
- a[i++]+=t[j++];
- case 6:
- a[i++]+=t[j++];
- case 5:
- a[i++]+=t[j++];
- case 4:
- a[i++]+=t[j++];
- case 3:
- a[i++]+=t[j++];
- case 2:
- a[i++]+=t[j++];
- case 1:
- a[i++]+=t[j++];
- case 0:
- break;
- }
- }
- }
- return(0);
-}
-
-long vorbis_book_decodev_set(codebook *book,float *a,oggpack_buffer *b,int n){
- int i,j,entry;
- float *t;
-
- for(i=0;ivaluelist+entry*book->dim;
- for (j=0;jdim;)
- a[i++]=t[j++];
- }
- return(0);
-}
-
-long vorbis_book_decodevv_add(codebook *book,float **a,long offset,int ch,
- oggpack_buffer *b,int n){
- long i,j,k,entry;
- int chptr=0;
-
- for(i=offset/ch;i<(offset+n)/ch;){
- entry = vorbis_book_decode(book,b);
- if(entry==-1)return(-1);
- {
- const float *t = book->valuelist+entry*book->dim;
- for (j=0;jdim;j++){
- a[chptr++][i]+=t[j];
- if(chptr==ch){
- chptr=0;
- i++;
- }
- }
- }
- }
- return(0);
-}
-
-#ifdef _V_SELFTEST
-/* Simple enough; pack a few candidate codebooks, unpack them. Code a
- number of vectors through (keeping track of the quantized values),
- and decode using the unpacked book. quantized version of in should
- exactly equal out */
-
-#include
-
-#include "vorbis/book/lsp20_0.vqh"
-#include "vorbis/book/res0a_13.vqh"
-#define TESTSIZE 40
-
-float test1[TESTSIZE]={
- 0.105939f,
- 0.215373f,
- 0.429117f,
- 0.587974f,
-
- 0.181173f,
- 0.296583f,
- 0.515707f,
- 0.715261f,
-
- 0.162327f,
- 0.263834f,
- 0.342876f,
- 0.406025f,
-
- 0.103571f,
- 0.223561f,
- 0.368513f,
- 0.540313f,
-
- 0.136672f,
- 0.395882f,
- 0.587183f,
- 0.652476f,
-
- 0.114338f,
- 0.417300f,
- 0.525486f,
- 0.698679f,
-
- 0.147492f,
- 0.324481f,
- 0.643089f,
- 0.757582f,
-
- 0.139556f,
- 0.215795f,
- 0.324559f,
- 0.399387f,
-
- 0.120236f,
- 0.267420f,
- 0.446940f,
- 0.608760f,
-
- 0.115587f,
- 0.287234f,
- 0.571081f,
- 0.708603f,
-};
-
-float test3[TESTSIZE]={
- 0,1,-2,3,4,-5,6,7,8,9,
- 8,-2,7,-1,4,6,8,3,1,-9,
- 10,11,12,13,14,15,26,17,18,19,
- 30,-25,-30,-1,-5,-32,4,3,-2,0};
-
-static_codebook *testlist[]={&_vq_book_lsp20_0,
- &_vq_book_res0a_13,NULL};
-float *testvec[]={test1,test3};
-
-int main(){
- oggpack_buffer write;
- oggpack_buffer read;
- long ptr=0,i;
- oggpack_writeinit(&write);
-
- fprintf(stderr,"Testing codebook abstraction...:\n");
-
- while(testlist[ptr]){
- codebook c;
- static_codebook s;
- float *qv=alloca(sizeof(float)*TESTSIZE);
- float *iv=alloca(sizeof(float)*TESTSIZE);
- memcpy(qv,testvec[ptr],sizeof(float)*TESTSIZE);
- memset(iv,0,sizeof(float)*TESTSIZE);
-
- fprintf(stderr,"\tpacking/coding %ld... ",ptr);
-
- /* pack the codebook, write the testvector */
- oggpack_reset(&write);
- vorbis_book_init_encode(&c,testlist[ptr]); /* get it into memory
- we can write */
- vorbis_staticbook_pack(testlist[ptr],&write);
- fprintf(stderr,"Codebook size %ld bytes... ",oggpack_bytes(&write));
- for(i=0;i.000001){
- fprintf(stderr,"read (%g) != written (%g) at position (%ld)\n",
- iv[i],qv[i],i);
- exit(1);
- }
-
- fprintf(stderr,"OK\n");
- ptr++;
- }
-
- /* The above is the trivial stuff; now try unquantizing a log scale codebook */
-
- exit(0);
-}
-
-#endif
diff --git a/lib/codebook.h b/lib/codebook.h
deleted file mode 100644
index 7402c7081284fad5b50dc0fcdb5817e8c817efd9..0000000000000000000000000000000000000000
--- a/lib/codebook.h
+++ /dev/null
@@ -1,164 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: basic shared codebook operations
- last mod: $Id: codebook.h,v 1.8 2001/06/15 21:15:39 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_CODEBOOK_H_
-#define _V_CODEBOOK_H_
-
-#include "ogg/ogg.h"
-
-/* This structure encapsulates huffman and VQ style encoding books; it
- doesn't do anything specific to either.
-
- valuelist/quantlist are nonNULL (and q_* significant) only if
- there's entry->value mapping to be done.
-
- If encode-side mapping must be done (and thus the entry needs to be
- hunted), the auxiliary encode pointer will point to a decision
- tree. This is true of both VQ and huffman, but is mostly useful
- with VQ.
-
-*/
-
-typedef struct static_codebook{
- long dim; /* codebook dimensions (elements per vector) */
- long entries; /* codebook entries */
- long *lengthlist; /* codeword lengths in bits */
-
- /* mapping ***************************************************************/
- int maptype; /* 0=none
- 1=implicitly populated values from map column
- 2=listed arbitrary values */
-
- /* The below does a linear, single monotonic sequence mapping. */
- long q_min; /* packed 32 bit float; quant value 0 maps to minval */
- long q_delta; /* packed 32 bit float; val 1 - val 0 == delta */
- int q_quant; /* bits: 0 < quant <= 16 */
- int q_sequencep; /* bitflag */
-
- long *quantlist; /* map == 1: (int)(entries^(1/dim)) element column map
- map == 2: list of dim*entries quantized entry vals
- */
-
- /* encode helpers ********************************************************/
- struct encode_aux_nearestmatch *nearest_tree;
- struct encode_aux_threshmatch *thresh_tree;
- struct encode_aux_pigeonhole *pigeon_tree;
-
- int allocedp;
-} static_codebook;
-
-/* this structures an arbitrary trained book to quickly find the
- nearest cell match */
-typedef struct encode_aux_nearestmatch{
- /* pre-calculated partitioning tree */
- long *ptr0;
- long *ptr1;
-
- long *p; /* decision points (each is an entry) */
- long *q; /* decision points (each is an entry) */
- long aux; /* number of tree entries */
- long alloc;
-} encode_aux_nearestmatch;
-
-/* assumes a maptype of 1; encode side only, so that's OK */
-typedef struct encode_aux_threshmatch{
- float *quantthresh;
- long *quantmap;
- int quantvals;
- int threshvals;
-} encode_aux_threshmatch;
-
-typedef struct encode_aux_pigeonhole{
- float min;
- float del;
-
- int mapentries;
- int quantvals;
- long *pigeonmap;
-
- long fittotal;
- long *fitlist;
- long *fitmap;
- long *fitlength;
-} encode_aux_pigeonhole;
-
-typedef struct decode_aux{
- long *tab;
- int *tabl;
- int tabn;
-
- long *ptr0;
- long *ptr1;
- long aux; /* number of tree entries */
-} decode_aux;
-
-typedef struct codebook{
- long dim; /* codebook dimensions (elements per vector) */
- long entries; /* codebook entries */
- const static_codebook *c;
-
- float *valuelist; /* list of dim*entries actual entry values */
- long *codelist; /* list of bitstream codewords for each entry */
- struct decode_aux *decode_tree;
-
- long zeroentry;
-} codebook;
-
-extern void vorbis_staticbook_clear(static_codebook *b);
-extern void vorbis_staticbook_destroy(static_codebook *b);
-extern int vorbis_book_init_encode(codebook *dest,const static_codebook *source);
-extern int vorbis_book_init_decode(codebook *dest,const static_codebook *source);
-extern void vorbis_book_clear(codebook *b);
-
-extern float *_book_unquantize(const static_codebook *b);
-extern float *_book_logdist(const static_codebook *b,float *vals);
-extern float _float32_unpack(long val);
-extern long _float32_pack(float val);
-extern int _best(codebook *book, float *a, int step);
-extern int _ilog(unsigned int v);
-extern long _book_maptype1_quantvals(const static_codebook *b);
-
-extern int vorbis_book_besterror(codebook *book,float *a,int step,int addmul);
-extern long vorbis_book_codeword(codebook *book,int entry);
-extern long vorbis_book_codelen(codebook *book,int entry);
-
-
-
-extern int vorbis_staticbook_pack(const static_codebook *c,oggpack_buffer *b);
-extern int vorbis_staticbook_unpack(oggpack_buffer *b,static_codebook *c);
-
-extern int vorbis_book_encode(codebook *book, int a, oggpack_buffer *b);
-extern int vorbis_book_errorv(codebook *book, float *a);
-extern int vorbis_book_encodev(codebook *book, int best,float *a,
- oggpack_buffer *b);
-extern int vorbis_book_encodevs(codebook *book, float *a, oggpack_buffer *b,
- int step,int stagetype);
-
-extern long vorbis_book_decode(codebook *book, oggpack_buffer *b);
-extern long vorbis_book_decodevs_add(codebook *book, float *a,
- oggpack_buffer *b,int n);
-extern long vorbis_book_decodev_set(codebook *book, float *a,
- oggpack_buffer *b,int n);
-extern long vorbis_book_decodev_add(codebook *book, float *a,
- oggpack_buffer *b,int n);
-extern long vorbis_book_decodevv_add(codebook *book, float **a,
- long off,int ch,
- oggpack_buffer *b,int n);
-
-
-
-#endif
diff --git a/lib/codec_internal.h b/lib/codec_internal.h
deleted file mode 100644
index 7efbb0307e374a9fbcb573093a5e7c24ebf61c86..0000000000000000000000000000000000000000
--- a/lib/codec_internal.h
+++ /dev/null
@@ -1,115 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
- ********************************************************************
-
- function: libvorbis codec headers
- last mod: $Id: codec_internal.h,v 1.9 2001/08/13 01:36:56 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_CODECI_H_
-#define _V_CODECI_H_
-
-#include "envelope.h"
-#include "codebook.h"
-
-typedef struct vorbis_block_internal{
- float **pcmdelay; /* this is a pointer into local storage */
- float ampmax;
-} vorbis_block_internal;
-
-typedef void vorbis_look_time;
-typedef void vorbis_look_mapping;
-typedef void vorbis_look_floor;
-typedef void vorbis_look_residue;
-typedef void vorbis_look_transform;
-
-/* mode ************************************************************/
-typedef struct {
- int blockflag;
- int windowtype;
- int transformtype;
- int mapping;
-} vorbis_info_mode;
-
-typedef void vorbis_info_time;
-typedef void vorbis_info_floor;
-typedef void vorbis_info_residue;
-typedef void vorbis_info_mapping;
-
-#include "psy.h"
-
-typedef struct backend_lookup_state {
- /* local lookup storage */
- envelope_lookup *ve; /* envelope lookup */
- float **window[2][2][2]; /* block, leadin, leadout, type */
- vorbis_look_transform **transform[2]; /* block, type */
- codebook *fullbooks;
- vorbis_look_psy_global *psy_g_look;
-
- /* backend lookups are tied to the mode, not the backend or naked mapping */
- int modebits;
- vorbis_look_mapping **mode;
-
- /* local storage, only used on the encoding side. This way the
- application does not need to worry about freeing some packets'
- memory and not others'; packet storage is always tracked.
- Cleared next call to a _dsp_ function */
- unsigned char *header;
- unsigned char *header1;
- unsigned char *header2;
-
-} backend_lookup_state;
-
-/* vorbis_info contains all the setup information specific to the
- specific compression/decompression mode in progress (eg,
- psychoacoustic settings, channel setup, options, codebook
- etc).
-*********************************************************************/
-
-typedef struct codec_setup_info {
-
- /* Vorbis supports only short and long blocks, but allows the
- encoder to choose the sizes */
-
- long blocksizes[2];
-
- /* modes are the primary means of supporting on-the-fly different
- blocksizes, different channel mappings (LR or M/A),
- different residue backends, etc. Each mode consists of a
- blocksize flag and a mapping (along with the mapping setup */
-
- int modes;
- int maps;
- int times;
- int floors;
- int residues;
- int books;
- int psys; /* encode only */
-
- vorbis_info_mode *mode_param[64];
- int map_type[64];
- vorbis_info_mapping *map_param[64];
- int time_type[64];
- vorbis_info_time *time_param[64];
- int floor_type[64];
- vorbis_info_floor *floor_param[64];
- int residue_type[64];
- vorbis_info_residue *residue_param[64];
- static_codebook *book_param[256];
- vorbis_info_psy *psy_param[64]; /* encode only */
- vorbis_info_psy_global *psy_g_param;
-
-} codec_setup_info;
-
-extern vorbis_look_psy_global *_vp_global_look(vorbis_info *vi);
-extern void _vp_global_free(vorbis_look_psy_global *look);
-
-#endif
diff --git a/lib/envelope.c b/lib/envelope.c
deleted file mode 100644
index 24ffeab9b8371513f56cb47b70a94846c775823b..0000000000000000000000000000000000000000
--- a/lib/envelope.c
+++ /dev/null
@@ -1,236 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: PCM data envelope analysis and manipulation
- last mod: $Id: envelope.c,v 1.37 2001/08/13 01:36:56 xiphmont Exp $
-
- Preecho calculation.
-
- ********************************************************************/
-
-#include
-#include
-#include
-#include
-#include
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-
-#include "os.h"
-#include "scales.h"
-#include "envelope.h"
-#include "misc.h"
-#include "iir.c" /* Yes, ugly, but needed for inlining */
-
-/* Digital filter designed by mkfilter/mkshape/gencode A.J. Fisher */
-
-static int cheb_highpass_stages=6;
-static float cheb_highpass_B[]={1.f,-6.f,15.f,-20.f,15.f,-6.f,1.f};
-
-static int cheb_bandpass_stages=6;
-static float cheb_bandpass_B[]={-1.f,0.f,3.f,0.f,-3.f,0.f,1.f};
-
-
-/* 10kHz Chebyshev highpass */
-static float cheb_highpass10k_gain= 54.34519586f;
-static float cheb_highpass10k_A[]={
- -0.2064797169f,
- -0.5609713214f,
- -1.1352465327f,
- -1.4495555418f,
- -1.7938140760f,
- -0.9473564683f};
-
-/* 6kHz-10kHz Chebyshev bandpass */
-static float cheb_bandpass6k_gain=113.4643935f;
-static float cheb_bandpass6k_A[]={
- -0.5712621337f,
- 1.5626130710f,
- -3.3348854983f,
- 4.0471340821f,
- -4.0051680331f,
- 2.2786325610f};
-
-/* 3kHz-6kHz Chebyshev bandpass */
-static float cheb_bandpass3k_gain= 248.8359377f;
-static float cheb_bandpass3k_A[]={
- -0.6564230022f,
- 3.3747911257f,
- -8.0098635981f,
- 11.0040876874f,
- -9.2250963484f,
- 4.4760355389f};
-
-/* 1.5kHz-3kHz Chebyshev bandpass */
-static float cheb_bandpass1k_gain= 1798.537183f;
-static float cheb_bandpass1k_A[]={
- -0.8097527363f,
- 4.7725742682f,
- -11.9800219408f,
- 16.3770336223f,
- -12.8553129536f,
- 5.4948074309f};
-
-void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi){
- codec_setup_info *ci=vi->codec_setup;
- vorbis_info_psy_global *gi=ci->psy_g_param;
- int ch=vi->channels;
- int window=gi->envelopesa;
- int i;
- e->winlength=window;
- e->minenergy=fromdB(gi->preecho_minenergy);
- e->iir=_ogg_calloc(ch*4,sizeof(IIR_state));
- e->filtered=_ogg_calloc(ch*4,sizeof(float *));
- e->ch=ch;
- e->storage=128;
- for(i=0;iiir+i,cheb_highpass_stages,cheb_highpass10k_gain,
- cheb_highpass10k_A,cheb_highpass_B);
- IIR_init(e->iir+i+1,cheb_bandpass_stages,cheb_bandpass6k_gain,
- cheb_bandpass6k_A,cheb_bandpass_B);
- IIR_init(e->iir+i+2,cheb_bandpass_stages,cheb_bandpass3k_gain,
- cheb_bandpass3k_A,cheb_bandpass_B);
- IIR_init(e->iir+i+3,cheb_bandpass_stages,cheb_bandpass1k_gain,
- cheb_bandpass1k_A,cheb_bandpass_B);
-
- e->filtered[i]=_ogg_calloc(e->storage,sizeof(float));
- e->filtered[i+1]=_ogg_calloc(e->storage,sizeof(float));
- e->filtered[i+2]=_ogg_calloc(e->storage,sizeof(float));
- e->filtered[i+3]=_ogg_calloc(e->storage,sizeof(float));
- }
-
-}
-
-void _ve_envelope_clear(envelope_lookup *e){
- int i;
- for(i=0;ich*4;i++){
- IIR_clear((e->iir+i));
- _ogg_free(e->filtered[i]);
- }
- _ogg_free(e->filtered);
- _ogg_free(e->iir);
- memset(e,0,sizeof(envelope_lookup));
-}
-
-/* straight threshhold based until we find something that works better
- and isn't patented */
-static float _ve_deltai(envelope_lookup *ve,float *pre,float *post){
- long n=ve->winlength;
-
- long i;
-
- /* we want to have a 'minimum bar' for energy, else we're just
- basing blocks on quantization noise that outweighs the signal
- itself (for low power signals) */
-
- float minV=ve->minenergy;
- float A=minV*minV*n;
- float B=A;
-
- for(i=0;ivi;
- codec_setup_info *ci=vi->codec_setup;
- vorbis_info_psy_global *gi=ci->psy_g_param;
- envelope_lookup *ve=((backend_lookup_state *)(v->backend_state))->ve;
- long i,j,k;
-
- /* make sure we have enough storage to match the PCM */
- if(v->pcm_storage>ve->storage){
- ve->storage=v->pcm_storage;
- for(i=0;ich*4;i++)
- ve->filtered[i]=_ogg_realloc(ve->filtered[i],ve->storage*sizeof(float));
- }
-
- /* catch up the highpass to match the pcm */
- for(i=0;ich;i++){
- float *pcm=v->pcm[i];
- float *filtered0=ve->filtered[i*4];
- float *filtered1=ve->filtered[i*4+1];
- float *filtered2=ve->filtered[i*4+2];
- float *filtered3=ve->filtered[i*4+3];
- IIR_state *iir0=ve->iir+i*4;
- IIR_state *iir1=ve->iir+i*4+1;
- IIR_state *iir2=ve->iir+i*4+2;
- IIR_state *iir3=ve->iir+i*4+3;
- int flag=1;
- for(j=ve->current;jpcm_current;j++){
- filtered0[j]=IIR_filter(iir0,pcm[j]);
- filtered1[j]=IIR_filter_Band(iir1,pcm[j]);
- filtered2[j]=IIR_filter_Band(iir2,pcm[j]);
- filtered3[j]=IIR_filter_Band(iir3,pcm[j]);
- if(pcm[j])flag=0;
- }
- if(flag && ve->current+64pcm_current){
- IIR_reset(iir0);
- IIR_reset(iir1);
- IIR_reset(iir2);
- IIR_reset(iir3);
- }
-
- }
-
- ve->current=v->pcm_current;
-
- /* Now search through our cached highpass data for breaking points */
- /* starting point */
- if(v->W)
- j=v->centerW+ci->blocksizes[1]/4-ci->blocksizes[0]/4;
- else
- j=v->centerW;
-
- if(jlastmark)j=ve->lastmark;
-
- while(j+ve->winlength<=v->pcm_current){
- if(j>=searchpoint)return(1);
-
- ve->lastmark=j;
- for(i=0;ich;i++){
- for(k=0;k<4;k++){
- float *filtered=ve->filtered[i*4+k]+j;
- float m=_ve_deltai(ve,filtered-ve->winlength,filtered);
-
- if(m>gi->preecho_thresh[k])return(0);
- if(mpostecho_thresh[k])return(0);
-
- }
- }
-
- j+=min(ci->blocksizes[0],ve->winlength)/2;
-
- }
- if(j>=searchpoint)return(1);
-
- return(-1);
-}
-
-void _ve_envelope_shift(envelope_lookup *e,long shift){
- int i;
- for(i=0;ich*4;i++)
- memmove(e->filtered[i],e->filtered[i]+shift,(e->current-shift)*
- sizeof(float));
- e->current-=shift;
- e->lastmark-=shift;
-}
-
-
diff --git a/lib/envelope.h b/lib/envelope.h
deleted file mode 100644
index 59079a6876ff68dd0bc4187c02b3ec9f3ae4b550..0000000000000000000000000000000000000000
--- a/lib/envelope.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: PCM data envelope analysis and manipulation
- last mod: $Id: envelope.h,v 1.16 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_ENVELOPE_
-#define _V_ENVELOPE_
-
-#include "iir.h"
-#include "smallft.h"
-
-typedef struct {
- int ch;
- int winlength;
- int searchstep;
- float minenergy;
-
- IIR_state *iir;
- float **filtered;
-
- long storage;
- long current;
- long lastmark;
-} envelope_lookup;
-
-extern void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi);
-extern void _ve_envelope_clear(envelope_lookup *e);
-extern long _ve_envelope_search(vorbis_dsp_state *v,long searchpoint);
-extern void _ve_envelope_shift(envelope_lookup *e,long shift);
-
-
-#endif
-
diff --git a/lib/floor0.c b/lib/floor0.c
deleted file mode 100644
index f568eb1b69c9bf3a7a6df0b97e91b111a37ab226..0000000000000000000000000000000000000000
--- a/lib/floor0.c
+++ /dev/null
@@ -1,468 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: floor backend 0 implementation
- last mod: $Id: floor0.c,v 1.45 2001/08/13 01:36:56 xiphmont Exp $
-
- ********************************************************************/
-
-#include
-#include
-#include
-#include
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-#include "registry.h"
-#include "lpc.h"
-#include "lsp.h"
-#include "codebook.h"
-#include "scales.h"
-#include "misc.h"
-#include "os.h"
-
-#include "misc.h"
-#include
-
-typedef struct {
- long n;
- int ln;
- int m;
- int *linearmap;
-
- vorbis_info_floor0 *vi;
- lpc_lookup lpclook;
- float *lsp_look;
-
- long bits;
- long frames;
-} vorbis_look_floor0;
-
-/* infrastructure for finding fit */
-static long _f0_fit(codebook *book,
- float *orig,
- float *workfit,
- int cursor){
- int dim=book->dim;
- float norm,base=0.f;
- int i,best=0;
- float *lsp=workfit+cursor;
-
- if(cursor)base=workfit[cursor-1];
- norm=orig[cursor+dim-1]-base;
-
- for(i=0;ivaluelist+best*dim,dim*sizeof(float));
- for(i=0;ibits/look->frames);*/
-
- if(look->linearmap)_ogg_free(look->linearmap);
- if(look->lsp_look)_ogg_free(look->lsp_look);
- lpc_clear(&look->lpclook);
- memset(look,0,sizeof(vorbis_look_floor0));
- _ogg_free(look);
- }
-}
-
-static void floor0_pack (vorbis_info_floor *i,oggpack_buffer *opb){
- vorbis_info_floor0 *info=(vorbis_info_floor0 *)i;
- int j;
- oggpack_write(opb,info->order,8);
- oggpack_write(opb,info->rate,16);
- oggpack_write(opb,info->barkmap,16);
- oggpack_write(opb,info->ampbits,6);
- oggpack_write(opb,info->ampdB,8);
- oggpack_write(opb,info->numbooks-1,4);
- for(j=0;jnumbooks;j++)
- oggpack_write(opb,info->books[j],8);
-}
-
-static vorbis_info_floor *floor0_unpack (vorbis_info *vi,oggpack_buffer *opb){
- codec_setup_info *ci=vi->codec_setup;
- int j;
-
- vorbis_info_floor0 *info=_ogg_malloc(sizeof(vorbis_info_floor0));
- info->order=oggpack_read(opb,8);
- info->rate=oggpack_read(opb,16);
- info->barkmap=oggpack_read(opb,16);
- info->ampbits=oggpack_read(opb,6);
- info->ampdB=oggpack_read(opb,8);
- info->numbooks=oggpack_read(opb,4)+1;
-
- if(info->order<1)goto err_out;
- if(info->rate<1)goto err_out;
- if(info->barkmap<1)goto err_out;
- if(info->numbooks<1)goto err_out;
-
- for(j=0;jnumbooks;j++){
- info->books[j]=oggpack_read(opb,8);
- if(info->books[j]<0 || info->books[j]>=ci->books)goto err_out;
- }
- return(info);
-
- err_out:
- floor0_free_info(info);
- return(NULL);
-}
-
-/* initialize Bark scale and normalization lookups. We could do this
- with static tables, but Vorbis allows a number of possible
- combinations, so it's best to do it computationally.
-
- The below is authoritative in terms of defining scale mapping.
- Note that the scale depends on the sampling rate as well as the
- linear block and mapping sizes */
-
-static vorbis_look_floor *floor0_look (vorbis_dsp_state *vd,vorbis_info_mode *mi,
- vorbis_info_floor *i){
- int j;
- float scale;
- vorbis_info *vi=vd->vi;
- codec_setup_info *ci=vi->codec_setup;
- vorbis_info_floor0 *info=(vorbis_info_floor0 *)i;
- vorbis_look_floor0 *look=_ogg_calloc(1,sizeof(vorbis_look_floor0));
- look->m=info->order;
- look->n=ci->blocksizes[mi->blockflag]/2;
- look->ln=info->barkmap;
- look->vi=info;
-
- if(vd->analysisp)
- lpc_init(&look->lpclook,look->ln,look->m);
-
- /* we choose a scaling constant so that:
- floor(bark(rate/2-1)*C)=mapped-1
- floor(bark(rate/2)*C)=mapped */
- scale=look->ln/toBARK(info->rate/2.f);
-
- /* the mapping from a linear scale to a smaller bark scale is
- straightforward. We do *not* make sure that the linear mapping
- does not skip bark-scale bins; the decoder simply skips them and
- the encoder may do what it wishes in filling them. They're
- necessary in some mapping combinations to keep the scale spacing
- accurate */
- look->linearmap=_ogg_malloc((look->n+1)*sizeof(int));
- for(j=0;jn;j++){
- int val=floor( toBARK((info->rate/2.f)/look->n*j)
- *scale); /* bark numbers represent band edges */
- if(val>=look->ln)val=look->ln; /* guard against the approximation */
- look->linearmap[j]=val;
- }
- look->linearmap[j]=-1;
-
- look->lsp_look=_ogg_malloc(look->ln*sizeof(float));
- for(j=0;jln;j++)
- look->lsp_look[j]=2*cos(M_PI/look->ln*j);
-
- return look;
-}
-
-/* less efficient than the decode side (written for clarity). We're
- not bottlenecked here anyway */
-
-float _curve_to_lpc(float *curve,float *lpc,
- vorbis_look_floor0 *l){
- /* map the input curve to a bark-scale curve for encoding */
-
- int mapped=l->ln;
- float *work=alloca(sizeof(float)*mapped);
- int i,j,last=0;
- int bark=0;
- static int seq=0;
-
- memset(work,0,sizeof(float)*mapped);
-
- /* Only the decode side is behavior-specced; for now in the encoder,
- we select the maximum value of each band as representative (this
- helps make sure peaks don't go out of range. In error terms,
- selecting min would make more sense, but the codebook is trained
- numerically, so we don't actually lose. We'd still want to
- use the original curve for error and noise estimation */
-
- for(i=0;in;i++){
- bark=l->linearmap[i];
- if(work[bark]last+1){
- /* If the bark scale is climbing rapidly, some bins may end up
- going unused. This isn't a waste actually; it keeps the
- scale resolution even so that the LPC generator has an easy
- time. However, if we leave the bins empty we lose energy.
- So, fill 'em in. The decoder does not do anything with he
- unused bins, so we can fill them anyway we like to end up
- with a better spectral curve */
-
- /* we'll always have a bin zero, so we don't need to guard init */
- long span=bark-last;
- for(j=1;jn;i++)
- curve[i]-=150;
-
- _analysis_output("barkfloor",seq,work,bark,0,0);
- _analysis_output("barkcurve",seq++,curve,l->n,1,0);
-
- for(i=0;in;i++)
- curve[i]+=150;
-
- /**********************/
-
- return vorbis_lpc_from_curve(work,lpc,&(l->lpclook));
-}
-
-static int floor0_forward(vorbis_block *vb,vorbis_look_floor *in,
- float *mdct, const float *logmdct, /* in */
- const float *logmask, const float *logmax, /* in */
- float *codedflr){ /* out */
- long j;
- vorbis_look_floor0 *look=(vorbis_look_floor0 *)in;
- vorbis_info_floor0 *info=look->vi;
- float amp;
- long bits=0;
- long val=0;
- static int seq=0;
-
-#ifdef TRAIN_LSP
- FILE *of;
- FILE *ef;
- char buffer[80];
-
-#if 1
- sprintf(buffer,"lsp0coeff_%d.vqd",vb->mode);
- of=fopen(buffer,"a");
-#endif
-#endif
-
- seq++;
-
-
- /* our floor comes in on a [-Inf...0] dB scale. The curve has to be
- positive, so we offset it. */
-
- for(j=0;jn;j++)
- codedflr[j]=logmask[j]+info->ampdB;
-
- /* use 'out' as temp storage */
- /* Convert our floor to a set of lpc coefficients */
- amp=sqrt(_curve_to_lpc(codedflr,codedflr,look));
-
- /* amp is in the range (0. to ampdB]. Encode that range using
- ampbits bits */
-
- {
- long maxval=(1L<ampbits)-1;
-
- val=rint(amp/info->ampdB*maxval);
-
- if(val<0)val=0; /* likely */
- if(val>maxval)val=maxval; /* not bloody likely */
-
- if(val>0)
- amp=(float)val/maxval*info->ampdB;
- else
- amp=0;
- }
-
- if(val){
- /* LSP <-> LPC is orthogonal and LSP quantizes more stably */
- _analysis_output("lpc",seq-1,codedflr,look->m,0,0);
- if(vorbis_lpc_to_lsp(codedflr,codedflr,look->m))
- val=0;
-
- }
-
- oggpack_write(&vb->opb,val,info->ampbits);
- look->bits+=info->ampbits+1;
- look->frames++;
-
- if(val){
- float *lspwork=alloca(look->m*sizeof(float));
-
- /* the spec supports using one of a number of codebooks. Right
- now, encode using this lib supports only one */
- backend_lookup_state *be=vb->vd->backend_state;
- codebook *b;
- int booknum;
-
- _analysis_output("lsp",seq-1,codedflr,look->m,0,0);
-
- /* which codebook to use? We do it only by range right now. */
- if(info->numbooks>1){
- float last=0.;
- for(j=0;jm;j++){
- float val=codedflr[j]-last;
- if(vallessthan || val>info->greaterthan)break;
- last=codedflr[j];
- }
- if(jm)
- booknum=0;
- else
- booknum=1;
- }else
- booknum=0;
-
- b=be->fullbooks+info->books[booknum];
- oggpack_write(&vb->opb,booknum,_ilog(info->numbooks));
- look->bits+=_ilog(info->numbooks);
-
-#ifdef TRAIN_LSP
- {
- float last=0.f;
- for(j=0;jm;j++){
- fprintf(of,"%.12g, ",codedflr[j]-last);
- last=codedflr[j];
- }
- }
- fprintf(of,"\n");
- fclose(of);
-
- sprintf(buffer,"lsp0ent_m%d_b%d.vqd",vb->mode,booknum);
- ef=fopen(buffer,"a");
-
-#endif
-
- /* code the spectral envelope, and keep track of the actual
- quantized values; we don't want creeping error as each block is
- nailed to the last quantized value of the previous block. */
-
- for(j=0;jm;j+=b->dim){
- int entry=_f0_fit(b,codedflr,lspwork,j);
- look->bits+=vorbis_book_encode(b,entry,&vb->opb);
-
-#ifdef TRAIN_LSP
- fprintf(ef,"%d,\n",entry);
-#endif
-
- }
-
-#ifdef TRAIN_LSP
- fclose(ef);
-#endif
-
- _analysis_output("lsp2",seq-1,lspwork,look->m,0,0);
-
- /* take the coefficients back to a spectral envelope curve */
- for(j=0;jn;j++)
- codedflr[j]=1.f;
- vorbis_lsp_to_curve(codedflr,look->linearmap,look->n,look->ln,
- lspwork,look->m,amp,info->ampdB);
-
- _analysis_output("barklsp",seq-1,codedflr,look->n,1,1);
- _analysis_output("lsp3",seq-1,codedflr,look->n,0,1);
-
- return(val);
- }
-
-#ifdef TRAIN_LSP
- fclose(of);
-#endif
-
- memset(codedflr,0,sizeof(float)*look->n);
- memset(mdct,0,sizeof(float)*look->n);
- return(val);
-}
-
-static void *floor0_inverse1(vorbis_block *vb,vorbis_look_floor *i){
- vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
- vorbis_info_floor0 *info=look->vi;
- int j,k;
-
- int ampraw=oggpack_read(&vb->opb,info->ampbits);
- if(ampraw>0){ /* also handles the -1 out of data case */
- long maxval=(1<ampbits)-1;
- float amp=(float)ampraw/maxval*info->ampdB;
- int booknum=oggpack_read(&vb->opb,_ilog(info->numbooks));
-
- if(booknum!=-1 && booknumnumbooks){ /* be paranoid */
- backend_lookup_state *be=vb->vd->backend_state;
- codebook *b=be->fullbooks+info->books[booknum];
- float last=0.f;
- float *lsp=_vorbis_block_alloc(vb,sizeof(float)*(look->m+1));
-
- for(j=0;jm;j+=b->dim)
- if(vorbis_book_decodev_set(b,lsp+j,&vb->opb,b->dim)==-1)goto eop;
- for(j=0;jm;){
- for(k=0;kdim;k++,j++)lsp[j]+=last;
- last=lsp[j-1];
- }
-
- lsp[look->m]=amp;
- return(lsp);
- }
- }
- eop:
- return(NULL);
-}
-
-static int floor0_inverse2(vorbis_block *vb,vorbis_look_floor *i,
- void *memo,float *out){
- vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
- vorbis_info_floor0 *info=look->vi;
-
- if(memo){
- float *lsp=(float *)memo;
- float amp=lsp[look->m];
-
- /* take the coefficients back to a spectral envelope curve */
- vorbis_lsp_to_curve(out,look->linearmap,look->n,look->ln,
- lsp,look->m,amp,info->ampdB);
- return(1);
- }
- memset(out,0,sizeof(float)*look->n);
- return(0);
-}
-
-/* export hooks */
-vorbis_func_floor floor0_exportbundle={
- &floor0_pack,&floor0_unpack,&floor0_look,&floor0_copy_info,&floor0_free_info,
- &floor0_free_look,&floor0_forward,&floor0_inverse1,&floor0_inverse2
-};
-
-
diff --git a/lib/floor1.c b/lib/floor1.c
deleted file mode 100644
index 3387829a8d65d2459a25e98076b36be2324ca72a..0000000000000000000000000000000000000000
--- a/lib/floor1.c
+++ /dev/null
@@ -1,1152 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: floor backend 1 implementation
- last mod: $Id: floor1.c,v 1.11 2001/08/13 01:36:56 xiphmont Exp $
-
- ********************************************************************/
-
-#include
-#include
-#include
-#include
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-#include "registry.h"
-#include "codebook.h"
-#include "misc.h"
-#include "scales.h"
-
-#include
-
-#define floor1_rangedB 140 /* floor 1 fixed at -140dB to 0dB range */
-
-typedef struct {
- int sorted_index[VIF_POSIT+2];
- int forward_index[VIF_POSIT+2];
- int reverse_index[VIF_POSIT+2];
-
- int hineighbor[VIF_POSIT];
- int loneighbor[VIF_POSIT];
- int posts;
-
- int n;
- int quant_q;
- vorbis_info_floor1 *vi;
-
- long phrasebits;
- long postbits;
- long frames;
-} vorbis_look_floor1;
-
-typedef struct lsfit_acc{
- long x0;
- long x1;
-
- long xa;
- long ya;
- long x2a;
- long y2a;
- long xya;
- long n;
- long an;
- long un;
- long edgey0;
- long edgey1;
-} lsfit_acc;
-
-/***********************************************/
-
-static vorbis_info_floor *floor1_copy_info (vorbis_info_floor *i){
- vorbis_info_floor1 *info=(vorbis_info_floor1 *)i;
- vorbis_info_floor1 *ret=_ogg_malloc(sizeof(vorbis_info_floor1));
- memcpy(ret,info,sizeof(vorbis_info_floor1));
- return(ret);
-}
-
-static void floor1_free_info(vorbis_info_floor *i){
- if(i){
- memset(i,0,sizeof(vorbis_info_floor1));
- _ogg_free(i);
- }
-}
-
-static void floor1_free_look(vorbis_look_floor *i){
- vorbis_look_floor1 *look=(vorbis_look_floor1 *)i;
- if(i){
- /*fprintf(stderr,"floor 1 bit usage %f:%f (%f total)\n",
- (float)look->phrasebits/look->frames,
- (float)look->postbits/look->frames,
- (float)(look->postbits+look->phrasebits)/look->frames);*/
-
- memset(look,0,sizeof(vorbis_look_floor1));
- free(i);
- }
-}
-
-static int ilog(unsigned int v){
- int ret=0;
- while(v){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-static int ilog2(unsigned int v){
- int ret=0;
- while(v>1){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-static void floor1_pack (vorbis_info_floor *i,oggpack_buffer *opb){
- vorbis_info_floor1 *info=(vorbis_info_floor1 *)i;
- int j,k;
- int count=0;
- int rangebits;
- int maxposit=info->postlist[1];
- int maxclass=-1;
-
- /* save out partitions */
- oggpack_write(opb,info->partitions,5); /* only 0 to 31 legal */
- for(j=0;jpartitions;j++){
- oggpack_write(opb,info->partitionclass[j],4); /* only 0 to 15 legal */
- if(maxclasspartitionclass[j])maxclass=info->partitionclass[j];
- }
-
- /* save out partition classes */
- for(j=0;jclass_dim[j]-1,3); /* 1 to 8 */
- oggpack_write(opb,info->class_subs[j],2); /* 0 to 3 */
- if(info->class_subs[j])oggpack_write(opb,info->class_book[j],8);
- for(k=0;k<(1<class_subs[j]);k++)
- oggpack_write(opb,info->class_subbook[j][k]+1,8);
- }
-
- /* save out the post list */
- oggpack_write(opb,info->mult-1,2); /* only 1,2,3,4 legal now */
- oggpack_write(opb,ilog2(maxposit),4);
- rangebits=ilog2(maxposit);
-
- for(j=0,k=0;jpartitions;j++){
- count+=info->class_dim[info->partitionclass[j]];
- for(;kpostlist[k+2],rangebits);
- }
-}
-
-
-static vorbis_info_floor *floor1_unpack (vorbis_info *vi,oggpack_buffer *opb){
- codec_setup_info *ci=vi->codec_setup;
- int j,k,count=0,maxclass=-1,rangebits;
-
- vorbis_info_floor1 *info=_ogg_calloc(1,sizeof(vorbis_info_floor1));
- /* read partitions */
- info->partitions=oggpack_read(opb,5); /* only 0 to 31 legal */
- for(j=0;jpartitions;j++){
- info->partitionclass[j]=oggpack_read(opb,4); /* only 0 to 15 legal */
- if(maxclasspartitionclass[j])maxclass=info->partitionclass[j];
- }
-
- /* read partition classes */
- for(j=0;jclass_dim[j]=oggpack_read(opb,3)+1; /* 1 to 8 */
- info->class_subs[j]=oggpack_read(opb,2); /* 0,1,2,3 bits */
- if(info->class_subs[j]<0)
- goto err_out;
- if(info->class_subs[j])info->class_book[j]=oggpack_read(opb,8);
- if(info->class_book[j]<0 || info->class_book[j]>=ci->books)
- goto err_out;
- for(k=0;k<(1<class_subs[j]);k++){
- info->class_subbook[j][k]=oggpack_read(opb,8)-1;
- if(info->class_subbook[j][k]<-1 || info->class_subbook[j][k]>=ci->books)
- goto err_out;
- }
- }
-
- /* read the post list */
- info->mult=oggpack_read(opb,2)+1; /* only 1,2,3,4 legal now */
- rangebits=oggpack_read(opb,4);
-
- for(j=0,k=0;jpartitions;j++){
- count+=info->class_dim[info->partitionclass[j]];
- for(;kpostlist[k+2]=oggpack_read(opb,rangebits);
- if(t<0 || t>=(1<postlist[0]=0;
- info->postlist[1]=1<vi=info;
- look->n=info->postlist[1];
-
- /* we drop each position value in-between already decoded values,
- and use linear interpolation to predict each new value past the
- edges. The positions are read in the order of the position
- list... we precompute the bounding positions in the lookup. Of
- course, the neighbors can change (if a position is declined), but
- this is an initial mapping */
-
- for(i=0;ipartitions;i++)n+=info->class_dim[info->partitionclass[i]];
- n+=2;
- look->posts=n;
-
- /* also store a sorted position index */
- for(i=0;ipostlist+i;
- qsort(sortpointer,n,sizeof(int),icomp);
-
- /* points from sort order back to range number */
- for(i=0;iforward_index[i]=sortpointer[i]-info->postlist;
- /* points from range order to sorted position */
- for(i=0;ireverse_index[look->forward_index[i]]=i;
- /* we actually need the post values too */
- for(i=0;isorted_index[i]=info->postlist[look->forward_index[i]];
-
- /* quantize values to multiplier spec */
- switch(info->mult){
- case 1: /* 1024 -> 256 */
- look->quant_q=256;
- break;
- case 2: /* 1024 -> 128 */
- look->quant_q=128;
- break;
- case 3: /* 1024 -> 86 */
- look->quant_q=86;
- break;
- case 4: /* 1024 -> 64 */
- look->quant_q=64;
- break;
- }
-
- /* discover our neighbors for decode where we don't use fit flags
- (that would push the neighbors outward) */
- for(i=0;in;
- int currentx=info->postlist[i+2];
- for(j=0;jpostlist[j];
- if(x>lx && xcurrentx){
- hi=j;
- hx=x;
- }
- }
- look->loneighbor[i]=lo;
- look->hineighbor[i]=hi;
- }
-
- return(look);
-}
-
-static int render_point(int x0,int x1,int y0,int y1,int x){
- y0&=0x7fff; /* mask off flag */
- y1&=0x7fff;
-
- {
- int dy=y1-y0;
- int adx=x1-x0;
- int ady=abs(dy);
- int err=ady*(x-x0);
-
- int off=err/adx;
- if(dy<0)return(y0-off);
- return(y0+off);
- }
-}
-
-static int vorbis_dBquant(const float *x){
- int i= *x*7.3142857f+1023.5f;
- if(i>1023)return(1023);
- if(i<0)return(0);
- return i;
-}
-
-static float FLOOR_fromdB_LOOKUP[256]={
- 1.0649863e-07F, 1.1341951e-07F, 1.2079015e-07F, 1.2863978e-07F,
- 1.3699951e-07F, 1.4590251e-07F, 1.5538408e-07F, 1.6548181e-07F,
- 1.7623575e-07F, 1.8768855e-07F, 1.9988561e-07F, 2.128753e-07F,
- 2.2670913e-07F, 2.4144197e-07F, 2.5713223e-07F, 2.7384213e-07F,
- 2.9163793e-07F, 3.1059021e-07F, 3.3077411e-07F, 3.5226968e-07F,
- 3.7516214e-07F, 3.9954229e-07F, 4.2550680e-07F, 4.5315863e-07F,
- 4.8260743e-07F, 5.1396998e-07F, 5.4737065e-07F, 5.8294187e-07F,
- 6.2082472e-07F, 6.6116941e-07F, 7.0413592e-07F, 7.4989464e-07F,
- 7.9862701e-07F, 8.5052630e-07F, 9.0579828e-07F, 9.6466216e-07F,
- 1.0273513e-06F, 1.0941144e-06F, 1.1652161e-06F, 1.2409384e-06F,
- 1.3215816e-06F, 1.4074654e-06F, 1.4989305e-06F, 1.5963394e-06F,
- 1.7000785e-06F, 1.8105592e-06F, 1.9282195e-06F, 2.0535261e-06F,
- 2.1869758e-06F, 2.3290978e-06F, 2.4804557e-06F, 2.6416497e-06F,
- 2.8133190e-06F, 2.9961443e-06F, 3.1908506e-06F, 3.3982101e-06F,
- 3.6190449e-06F, 3.8542308e-06F, 4.1047004e-06F, 4.3714470e-06F,
- 4.6555282e-06F, 4.9580707e-06F, 5.2802740e-06F, 5.6234160e-06F,
- 5.9888572e-06F, 6.3780469e-06F, 6.7925283e-06F, 7.2339451e-06F,
- 7.7040476e-06F, 8.2047000e-06F, 8.7378876e-06F, 9.3057248e-06F,
- 9.9104632e-06F, 1.0554501e-05F, 1.1240392e-05F, 1.1970856e-05F,
- 1.2748789e-05F, 1.3577278e-05F, 1.4459606e-05F, 1.5399272e-05F,
- 1.6400004e-05F, 1.7465768e-05F, 1.8600792e-05F, 1.9809576e-05F,
- 2.1096914e-05F, 2.2467911e-05F, 2.3928002e-05F, 2.5482978e-05F,
- 2.7139006e-05F, 2.8902651e-05F, 3.0780908e-05F, 3.2781225e-05F,
- 3.4911534e-05F, 3.7180282e-05F, 3.9596466e-05F, 4.2169667e-05F,
- 4.4910090e-05F, 4.7828601e-05F, 5.0936773e-05F, 5.4246931e-05F,
- 5.7772202e-05F, 6.1526565e-05F, 6.5524908e-05F, 6.9783085e-05F,
- 7.4317983e-05F, 7.9147585e-05F, 8.4291040e-05F, 8.9768747e-05F,
- 9.5602426e-05F, 0.00010181521F, 0.00010843174F, 0.00011547824F,
- 0.00012298267F, 0.00013097477F, 0.00013948625F, 0.00014855085F,
- 0.00015820453F, 0.00016848555F, 0.00017943469F, 0.00019109536F,
- 0.00020351382F, 0.00021673929F, 0.00023082423F, 0.00024582449F,
- 0.00026179955F, 0.00027881276F, 0.00029693158F, 0.00031622787F,
- 0.00033677814F, 0.00035866388F, 0.00038197188F, 0.00040679456F,
- 0.00043323036F, 0.00046138411F, 0.00049136745F, 0.00052329927F,
- 0.00055730621F, 0.00059352311F, 0.00063209358F, 0.00067317058F,
- 0.00071691700F, 0.00076350630F, 0.00081312324F, 0.00086596457F,
- 0.00092223983F, 0.00098217216F, 0.0010459992F, 0.0011139742F,
- 0.0011863665F, 0.0012634633F, 0.0013455702F, 0.0014330129F,
- 0.0015261382F, 0.0016253153F, 0.0017309374F, 0.0018434235F,
- 0.0019632195F, 0.0020908006F, 0.0022266726F, 0.0023713743F,
- 0.0025254795F, 0.0026895994F, 0.0028643847F, 0.0030505286F,
- 0.0032487691F, 0.0034598925F, 0.0036847358F, 0.0039241906F,
- 0.0041792066F, 0.0044507950F, 0.0047400328F, 0.0050480668F,
- 0.0053761186F, 0.0057254891F, 0.0060975636F, 0.0064938176F,
- 0.0069158225F, 0.0073652516F, 0.0078438871F, 0.0083536271F,
- 0.0088964928F, 0.009474637F, 0.010090352F, 0.010746080F,
- 0.011444421F, 0.012188144F, 0.012980198F, 0.013823725F,
- 0.014722068F, 0.015678791F, 0.016697687F, 0.017782797F,
- 0.018938423F, 0.020169149F, 0.021479854F, 0.022875735F,
- 0.024362330F, 0.025945531F, 0.027631618F, 0.029427276F,
- 0.031339626F, 0.033376252F, 0.035545228F, 0.037855157F,
- 0.040315199F, 0.042935108F, 0.045725273F, 0.048696758F,
- 0.051861348F, 0.055231591F, 0.058820850F, 0.062643361F,
- 0.066714279F, 0.071049749F, 0.075666962F, 0.080584227F,
- 0.085821044F, 0.091398179F, 0.097337747F, 0.10366330F,
- 0.11039993F, 0.11757434F, 0.12521498F, 0.13335215F,
- 0.14201813F, 0.15124727F, 0.16107617F, 0.17154380F,
- 0.18269168F, 0.19456402F, 0.20720788F, 0.22067342F,
- 0.23501402F, 0.25028656F, 0.26655159F, 0.28387361F,
- 0.30232132F, 0.32196786F, 0.34289114F, 0.36517414F,
- 0.38890521F, 0.41417847F, 0.44109412F, 0.46975890F,
- 0.50028648F, 0.53279791F, 0.56742212F, 0.60429640F,
- 0.64356699F, 0.68538959F, 0.72993007F, 0.77736504F,
- 0.82788260F, 0.88168307F, 0.9389798F, 1.F,
-};
-
-static void render_line(int x0,int x1,int y0,int y1,float *d){
- int dy=y1-y0;
- int adx=x1-x0;
- int ady=abs(dy);
- int base=dy/adx;
- int sy=(dy<0?base-1:base+1);
- int x=x0;
- int y=y0;
- int err=0;
-
- ady-=abs(base*adx);
-
- d[x]*=FLOOR_fromdB_LOOKUP[y];
- while(++x=adx){
- err-=adx;
- y+=sy;
- }else{
- y+=base;
- }
- d[x]*=FLOOR_fromdB_LOOKUP[y];
- }
-}
-
-static void render_line0(int x0,int x1,int y0,int y1,float *d){
- int dy=y1-y0;
- int adx=x1-x0;
- int ady=abs(dy);
- int base=dy/adx;
- int sy=(dy<0?base-1:base+1);
- int x=x0;
- int y=y0;
- int err=0;
-
- ady-=abs(base*adx);
-
- d[x]=FLOOR_fromdB_LOOKUP[y];
- while(++x=adx){
- err-=adx;
- y+=sy;
- }else{
- y+=base;
- }
- d[x]=FLOOR_fromdB_LOOKUP[y];
- }
-}
-
-/* the floor has already been filtered to only include relevant sections */
-static int accumulate_fit(const float *flr,const float *mdct,
- int x0, int x1,lsfit_acc *a,
- int n,vorbis_info_floor1 *info){
- long i;
- int quantized=vorbis_dBquant(flr);
-
- long xa=0,ya=0,x2a=0,y2a=0,xya=0,na=0, xb=0,yb=0,x2b=0,y2b=0,xyb=0,nb=0;
-
- memset(a,0,sizeof(lsfit_acc));
- a->x0=x0;
- a->x1=x1;
- a->edgey0=quantized;
- if(x1>n)x1=n;
-
- for(i=x0;itwofitatten>=flr[i]){
- xa += i;
- ya += quantized;
- x2a += i*i;
- y2a += quantized*quantized;
- xya += i*quantized;
- na++;
- }else{
- xb += i;
- yb += quantized;
- x2b += i*i;
- y2b += quantized*quantized;
- xyb += i*quantized;
- nb++;
- }
- }
- }
-
- xb+=xa;
- yb+=ya;
- x2b+=x2a;
- y2b+=y2a;
- xyb+=xya;
- nb+=na;
-
- /* weight toward the actually used frequencies if we meet the threshhold */
- {
- int weight;
- if(nbtwofitminsize || natwofitminused){
- weight=0;
- }else{
- weight=nb*info->twofitweight/na;
- }
- a->xa=xa*weight+xb;
- a->ya=ya*weight+yb;
- a->x2a=x2a*weight+x2b;
- a->y2a=y2a*weight+y2b;
- a->xya=xya*weight+xyb;
- a->an=na*weight+nb;
- a->n=nb;
- a->un=na;
- if(nb>=info->unusedminsize)a->un++;
- }
-
- a->edgey1=-200;
- if(x1edgey1=quantized;
- }
- return(a->n);
-}
-
-/* returns < 0 on too few points to fit, >=0 (meansq error) on success */
-static int fit_line(lsfit_acc *a,int fits,int *y0,int *y1){
- long x=0,y=0,x2=0,y2=0,xy=0,n=0,an=0,i;
- long x0=a[0].x0;
- long x1=a[fits-1].x1;
-
- for(i=0;i=0){ /* hint used to break degenerate cases */
- x+= x0;
- y+= *y0;
- x2+= x0 * x0;
- y2+= *y0 * *y0;
- xy+= *y0 * x0;
- n++;
- an++;
- }
-
- if(*y1>=0){ /* hint used to break degenerate cases */
- x+= x1;
- y+= *y1;
- x2+= x1 * x1;
- y2+= *y1 * *y1;
- xy+= *y1 * x1;
- n++;
- an++;
- }
-
- if(n<2)return(n-2);
-
- {
- /* need 64 bit multiplies, which C doesn't give portably as int */
- double fx=x;
- double fy=y;
- double fx2=x2;
- double fxy=xy;
- double denom=1./(an*fx2-fx*fx);
- double a=(fy*fx2-fxy*fx)*denom;
- double b=(an*fxy-fx*fy)*denom;
- *y0=rint(a+b*x0);
- *y1=rint(a+b*x1);
-
- /* limit to our range! */
- if(*y0>1023)*y0=1023;
- if(*y1>1023)*y1=1023;
- if(*y0<0)*y0=0;
- if(*y1<0)*y1=0;
-
- return(0);
- }
-}
-
-/*static void fit_line_point(lsfit_acc *a,int fits,int *y0,int *y1){
- long y=0;
- int i;
-
- for(i=0;itwofitatten>=mask[x]){
- if(y+info->maxovermaxunder>val)return(1);
- mse=(y-val);
- mse*=mse;
- n++;
- }
-
- while(++x=adx){
- err-=adx;
- y+=sy;
- }else{
- y+=base;
- }
-
- if(mdct[x]+info->twofitatten>=mask[x]){
- val=vorbis_dBquant(mask+x);
- if(val){
- if(y+info->maxovermaxunder>val)return(1);
- mse+=((y-val)*(y-val));
- n++;
- }
- }
- }
-
- if(n){
- if(info->maxover*info->maxover/n>info->maxerr)return(0);
- if(info->maxunder*info->maxunder/n>info->maxerr)return(0);
- if(mse/n>info->maxerr)return(1);
- }
- return(0);
-}
-
-static int post_Y(int *A,int *B,int pos){
- if(A[pos]<0)
- return B[pos];
- if(B[pos]<0)
- return A[pos];
- return (A[pos]+B[pos])>>1;
-}
-
-static int floor1_forward(vorbis_block *vb,vorbis_look_floor *in,
- float *mdct, const float *logmdct, /* in */
- const float *logmask, const float *logmax, /* in */
- float *codedflr){ /* out */
- static int seq=0;
- long i,j,k,l;
- vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
- vorbis_info_floor1 *info=look->vi;
- long n=info->n;
- long posts=look->posts;
- long nonzero=0;
- lsfit_acc fits[VIF_POSIT+1];
- int fit_valueA[VIF_POSIT+2]; /* index by range list position */
- int fit_valueB[VIF_POSIT+2]; /* index by range list position */
- int fit_flag[VIF_POSIT+2];
-
- int loneighbor[VIF_POSIT+2]; /* sorted index of range list position (+2) */
- int hineighbor[VIF_POSIT+2];
- int memo[VIF_POSIT+2];
- codec_setup_info *ci=vb->vd->vi->codec_setup;
- static_codebook **sbooks=ci->book_param;
- codebook *books=NULL;
- int writeflag=0;
-
- if(vb->vd->backend_state){
- books=((backend_lookup_state *)(vb->vd->backend_state))->
- fullbooks;
- writeflag=1;
- }
-
- memset(fit_flag,0,sizeof(fit_flag));
- for(i=0;iinfo->unusedmin_n;n--)
- if(logmdct[n-1]>-floor1_rangedB &&
- logmdct[n-1]+info->twofitatten>logmask[n-1])break;
-
- /* quantize the relevant floor points and collect them into line fit
- structures (one per minimal division) at the same time */
- if(posts==0){
- nonzero+=accumulate_fit(logmask,logmax,0,n,fits,n,info);
- }else{
- for(i=0;isorted_index[i],
- look->sorted_index[i+1],fits+i,
- n,info);
- }
-
- if(nonzero){
- /* start by fitting the implicit base case.... */
- int y0=-200;
- int y1=-200;
- int mse=fit_line(fits,posts-1,&y0,&y1);
- if(mse<0){
- /* Only a single nonzero point */
- y0=-200;
- y1=0;
- fit_line(fits,posts-1,&y0,&y1);
- }
-
- fit_flag[0]=1;
- fit_flag[1]=1;
- fit_valueA[0]=y0;
- fit_valueB[0]=y0;
- fit_valueB[1]=y1;
- fit_valueA[1]=y1;
-
- if(mse>=0){
- /* Non degenerate case */
- /* start progressive splitting. This is a greedy, non-optimal
- algorithm, but simple and close enough to the best
- answer. */
- for(i=2;ireverse_index[i];
- int ln=loneighbor[sortpos];
- int hn=hineighbor[sortpos];
-
- /* eliminate repeat searches of a particular range with a memo */
- if(memo[ln]!=hn){
- /* haven't performed this error search yet */
- int lsortpos=look->reverse_index[ln];
- int hsortpos=look->reverse_index[hn];
- memo[ln]=hn;
-
- /* if this is an empty segment, its endpoints don't matter.
- Mark as such */
- for(j=lsortpos;jpostlist[ln];
- int hx=info->postlist[hn];
- int ly=post_Y(fit_valueA,fit_valueB,ln);
- int hy=post_Y(fit_valueA,fit_valueB,hn);
-
- if(inspect_error(lx,hx,ly,hy,logmask,logmdct,info)){
- /* outside error bounds/begin search area. Split it. */
- int ly0=-200;
- int ly1=-200;
- int hy0=-200;
- int hy1=-200;
- int lmse=fit_line(fits+lsortpos,sortpos-lsortpos,&ly0,&ly1);
- int hmse=fit_line(fits+sortpos,hsortpos-sortpos,&hy0,&hy1);
-
- /* the boundary/sparsity cases are the hard part. They
- don't happen often given that we use the full mask
- curve (weighted) now, but when they do happen they
- can go boom. Pay them detailed attention */
- /* cases for a segment:
- >=0) normal fit (>=2 unique points)
- -1) one point on x0;
- one point on x1; <-- disallowed by fit_line
- -2) one point in between x0 and x1
- -3) no points */
-
- switch(lmse){
- case -2:
- /* no points in the low segment */
- break;
- case -1:
- ly0=fits[lsortpos].edgey0;
- break;
- /*default:
- break;*/
- }
-
- switch(hmse){
- case -2:
- /* no points in the hi segment */
- break;
- case -1:
- hy0=fits[sortpos].edgey0;
- break;
- }
-
- /* store new edge values */
- fit_valueB[ln]=ly0;
- if(ln==0 && ly0>=0)fit_valueA[ln]=ly0;
- fit_valueA[i]=ly1;
- fit_valueB[i]=hy0;
- fit_valueA[hn]=hy1;
- if(hn==1 && hy1>=0)fit_valueB[hn]=hy1;
-
- if(ly0<0 && fit_valueA[ln]<0)
- fit_flag[ln]=0;
- if(hy1<0 && fit_valueB[hn]<0)
- fit_flag[hn]=0;
-
- if(ly1>=0 || hy0>=0){
- /* store new neighbor values */
- for(j=sortpos-1;j>=0;j--)
- if(hineighbor[j]==hn)
- hineighbor[j]=i;
- else
- break;
- for(j=sortpos+1;jmult){
- case 1: /* 1024 -> 256 */
- for(i=0;i>2;
- break;
- case 2: /* 1024 -> 128 */
- for(i=0;i>3;
- break;
- case 3: /* 1024 -> 86 */
- for(i=0;i 64 */
- for(i=0;i>4;
- break;
- }
-
- /* find prediction values for each post and subtract them */
- for(i=2;ireverse_index[i];
- int ln=look->loneighbor[i-2];
- int hn=look->hineighbor[i-2];
- int x0=info->postlist[ln];
- int x1=info->postlist[hn];
- int y0=fit_valueA[ln];
- int y1=fit_valueA[hn];
-
- int predicted=render_point(x0,x1,y0,y1,info->postlist[i]);
-
- if(fit_flag[i]){
- int headroom=(look->quant_q-predictedquant_q-predicted:predicted);
-
- int val=fit_valueA[i]-predicted;
-
- /* at this point the 'deviation' value is in the range +/- max
- range, but the real, unique range can always be mapped to
- only [0-maxrange). So we want to wrap the deviation into
- this limited range, but do it in the way that least screws
- an essentially gaussian probability distribution. */
-
- if(val<0)
- if(val<-headroom)
- val=headroom-val-1;
- else
- val=-1-(val<<1);
- else
- if(val>=headroom)
- val= val+headroom;
- else
- val<<=1;
-
- fit_valueB[i]=val;
-
- /* unroll the neighbor arrays */
- for(j=sp+1;j=0;j--)
- if(hineighbor[j]==i)
- hineighbor[j]=hineighbor[sp];
- else
- break;
-
- }else{
- fit_valueA[i]=predicted;
- fit_valueB[i]=0;
- }
- if(fit_valueB[i]==0)
- fit_valueA[i]|=0x8000;
- else{
- fit_valueA[look->loneighbor[i-2]]&=0x7fff;
- fit_valueA[look->hineighbor[i-2]]&=0x7fff;
- }
- }
-
- /* we have everything we need. pack it out */
- /* mark nontrivial floor */
- if(writeflag){
- oggpack_write(&vb->opb,1,1);
-
- /* beginning/end post */
- look->frames++;
- look->postbits+=ilog(look->quant_q-1)*2;
- oggpack_write(&vb->opb,fit_valueA[0],ilog(look->quant_q-1));
- oggpack_write(&vb->opb,fit_valueA[1],ilog(look->quant_q-1));
-
-
- /* partition by partition */
- for(i=0,j=2;ipartitions;i++){
- int class=info->partitionclass[i];
- int cdim=info->class_dim[class];
- int csubbits=info->class_subs[class];
- int csub=1<class_subbook[class][k];
- if(booknum<0){
- maxval[k]=1;
- }else{
- maxval[k]=sbooks[info->class_subbook[class][k]]->entries;
- }
- }
- for(k=0;kphrasebits+=
- vorbis_book_encode(books+info->class_book[class],cval,&vb->opb);
-
-#ifdef TRAIN_FLOOR1
- {
- FILE *of;
- char buffer[80];
- sprintf(buffer,"line_%dx%d_class%d.vqd",
- vb->pcmend/2,posts-2,class);
- of=fopen(buffer,"a");
- fprintf(of,"%d\n",cval);
- fclose(of);
- }
-#endif
- }
-
- /* write post values */
- for(k=0;kclass_subbook[class][bookas[k]];
- if(book>=0){
- /* hack to allow training with 'bad' books */
- if(fit_valueB[j+k]<(books+book)->entries)
- look->postbits+=vorbis_book_encode(books+book,
- fit_valueB[j+k],&vb->opb);
- /*else
- fprintf(stderr,"+!");*/
-
-#ifdef TRAIN_FLOOR1
- {
- FILE *of;
- char buffer[80];
- sprintf(buffer,"line_%dx%d_%dsub%d.vqd",
- vb->pcmend/2,posts-2,class,bookas[k]);
- of=fopen(buffer,"a");
- fprintf(of,"%d\n",fit_valueB[j+k]);
- fclose(of);
- }
-#endif
- }
- }
- j+=cdim;
- }
- }
-
- {
- /* generate quantized floor equivalent to what we'd unpack in decode */
- int hx;
- int lx=0;
- int ly=fit_valueA[0]*info->mult;
-
- for(j=1;jforward_index[j];
- if(!(fit_valueA[current]&0x8000)){
- int hy=(fit_valueA[current]&0x7fff)*info->mult;
- hx=info->postlist[current];
-
- render_line0(lx,hx,ly,hy,codedflr);
-
- lx=hx;
- ly=hy;
- }
- }
- for(j=lx;jpcmend/2;j++)codedflr[j]=codedflr[j-1]; /* be certain */
-
- /* use it to create residue vector. Eliminate mdct elements
- that were below the error training attenuation relative to
- the original mask. This avoids portions of the floor fit
- that were considered 'unused' in fitting from being used in
- coding residue if the unfit values are significantly below
- the original input mask */
-
- for(j=0;jtwofitattenpcmend/2;j++)mdct[j]=0.f;
-
- }
-
- }else{
- if(writeflag)oggpack_write(&vb->opb,0,1);
- memset(codedflr,0,n*sizeof(float));
- memset(mdct,0,n*sizeof(float));
- }
- seq++;
- return(nonzero);
-}
-
-static void *floor1_inverse1(vorbis_block *vb,vorbis_look_floor *in){
- vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
- vorbis_info_floor1 *info=look->vi;
-
- codec_setup_info *ci=vb->vd->vi->codec_setup;
- int i,j,k;
- codebook *books=((backend_lookup_state *)(vb->vd->backend_state))->
- fullbooks;
-
- /* unpack wrapped/predicted values from stream */
- if(oggpack_read(&vb->opb,1)==1){
- int *fit_value=_vorbis_block_alloc(vb,(look->posts)*sizeof(int));
-
- fit_value[0]=oggpack_read(&vb->opb,ilog(look->quant_q-1));
- fit_value[1]=oggpack_read(&vb->opb,ilog(look->quant_q-1));
-
- /* partition by partition */
- /* partition by partition */
- for(i=0,j=2;ipartitions;i++){
- int class=info->partitionclass[i];
- int cdim=info->class_dim[class];
- int csubbits=info->class_subs[class];
- int csub=1<class_book[class],&vb->opb);
-
- if(cval==-1)goto eop;
- }
-
- for(k=0;kclass_subbook[class][cval&(csub-1)];
- cval>>=csubbits;
- if(book>=0){
- if((fit_value[j+k]=vorbis_book_decode(books+book,&vb->opb))==-1)
- goto eop;
- }else{
- fit_value[j+k]=0;
- }
- }
- j+=cdim;
- }
-
- /* unwrap positive values and reconsitute via linear interpolation */
- for(i=2;iposts;i++){
- int predicted=render_point(info->postlist[look->loneighbor[i-2]],
- info->postlist[look->hineighbor[i-2]],
- fit_value[look->loneighbor[i-2]],
- fit_value[look->hineighbor[i-2]],
- info->postlist[i]);
- int hiroom=look->quant_q-predicted;
- int loroom=predicted;
- int room=(hiroom=room){
- if(hiroom>loroom){
- val = val-loroom;
- }else{
- val = -1-(val-hiroom);
- }
- }else{
- if(val&1){
- val= -((val+1)>>1);
- }else{
- val>>=1;
- }
- }
-
- fit_value[i]=val+predicted;
- fit_value[look->loneighbor[i-2]]&=0x7fff;
- fit_value[look->hineighbor[i-2]]&=0x7fff;
-
- }else{
- fit_value[i]=predicted|0x8000;
- }
-
- }
-
- return(fit_value);
- }
- eop:
- return(NULL);
-}
-
-static int floor1_inverse2(vorbis_block *vb,vorbis_look_floor *in,void *memo,
- float *out){
- vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
- vorbis_info_floor1 *info=look->vi;
-
- codec_setup_info *ci=vb->vd->vi->codec_setup;
- int n=ci->blocksizes[vb->mode]/2;
- int j;
-
- if(memo){
- /* render the lines */
- int *fit_value=(int *)memo;
- int hx;
- int lx=0;
- int ly=fit_value[0]*info->mult;
- for(j=1;jposts;j++){
- int current=look->forward_index[j];
- int hy=fit_value[current]&0x7fff;
- if(hy==fit_value[current]){
-
- hy*=info->mult;
- hx=info->postlist[current];
-
- render_line(lx,hx,ly,hy,out);
-
- lx=hx;
- ly=hy;
- }
- }
- for(j=hx;j
-#include
-#include
-#include
-#include "iir.h"
-
-void IIR_init(IIR_state *s,int stages,float gain, float *A, float *B){
- memset(s,0,sizeof(IIR_state));
- s->stages=stages;
- s->gain=1.f/gain;
- s->coeff_A=_ogg_malloc(stages*sizeof(float));
- s->coeff_B=_ogg_malloc((stages+1)*sizeof(float));
- s->z_A=_ogg_calloc(stages*2,sizeof(float));
-
- memcpy(s->coeff_A,A,stages*sizeof(float));
- memcpy(s->coeff_B,B,(stages+1)*sizeof(float));
-}
-
-void IIR_clear(IIR_state *s){
- if(s){
- _ogg_free(s->coeff_A);
- _ogg_free(s->coeff_B);
- _ogg_free(s->z_A);
- memset(s,0,sizeof(IIR_state));
- }
-}
-
-void IIR_reset(IIR_state *s){
- memset(s->z_A,0,sizeof(float)*s->stages*2);
-}
-
-float IIR_filter(IIR_state *s,float in){
- int stages=s->stages,i;
- float newA= in*s->gain;
- float newB=0;
- float *zA=s->z_A+s->ring;
-
- for(i=0;icoeff_A[i] * zA[i];
- newB+= s->coeff_B[i] * zA[i];
- }
- newB+=newA*s->coeff_B[stages];
-
- zA[0]=zA[stages]=newA;
- if(++s->ring>=stages)s->ring=0;
- return(newB);
-}
-
-/* this assumes the symmetrical structure of the feed-forward stage of
- a typical bandpass to save multiplies */
-float IIR_filter_Band(IIR_state *s,float in){
- int stages=s->stages,i;
- int stages2=stages>>1;
- float newA= in*s->gain;
- float newB=0;
- float *zA=s->z_A+s->ring;
-
- newA+= s->coeff_A[0] * zA[0];
- for(i=1;icoeff_A[i] * zA[i];
- newB+= s->coeff_B[i] * (zA[i]-zA[stages-i]);
- }
- newB+= s->coeff_B[i] * zA[i];
- for(;icoeff_A[i] * zA[i];
-
- newB+=newA-zA[0];
-
- zA[0]=zA[stages]=newA;
- if(++s->ring>=stages)s->ring=0;
- return(newB);
-}
-
-#ifdef _V_SELFTEST
-
-/* z^-stage, z^-stage+1... */
-static float cheb_bandpass_B[]={-1.f,0.f,5.f,0.f,-10.f,0.f,10.f,0.f,-5.f,0.f,1f};
-static float cheb_bandpass_A[]={-0.6665900311f,
- 1.0070146601f,
- -3.1262875409f,
- 3.5017171569f,
- -6.2779211945f,
- 5.2966481740f,
- -6.7570216587f,
- 4.0760335768f,
- -3.9134284363f,
- 1.3997338886f};
-
-static float data[128]={
- 0.0426331f,
- 0.0384521f,
- 0.0345764f,
- 0.0346069f,
- 0.0314636f,
- 0.0310059f,
- 0.0318604f,
- 0.0336304f,
- 0.036438f,
- 0.0348511f,
- 0.0354919f,
- 0.0343628f,
- 0.0325623f,
- 0.0318909f,
- 0.0263367f,
- 0.0225525f,
- 0.0195618f,
- 0.0160828f,
- 0.0168762f,
- 0.0145569f,
- 0.0126343f,
- 0.0127258f,
- 0.00820923f,
- 0.00787354f,
- 0.00558472f,
- 0.00204468f,
- 3.05176e-05f,
- -0.00357056f,
- -0.00570679f,
- -0.00991821f,
- -0.0101013f,
- -0.00881958f,
- -0.0108948f,
- -0.0110168f,
- -0.0119324f,
- -0.0161438f,
- -0.0194702f,
- -0.0229187f,
- -0.0260315f,
- -0.0282288f,
- -0.0306091f,
- -0.0330505f,
- -0.0364685f,
- -0.0385742f,
- -0.0428772f,
- -0.043457f,
- -0.0425415f,
- -0.0462341f,
- -0.0467529f,
- -0.0489807f,
- -0.0520325f,
- -0.0558167f,
- -0.0596924f,
- -0.0591431f,
- -0.0612793f,
- -0.0618591f,
- -0.0615845f,
- -0.0634155f,
- -0.0639648f,
- -0.0683594f,
- -0.0718079f,
- -0.0729675f,
- -0.0791931f,
- -0.0860901f,
- -0.0885315f,
- -0.088623f,
- -0.089386f,
- -0.0899353f,
- -0.0886841f,
- -0.0910645f,
- -0.0948181f,
- -0.0919495f,
- -0.0891418f,
- -0.0916443f,
- -0.096344f,
- -0.100464f,
- -0.105499f,
- -0.108612f,
- -0.112213f,
- -0.117676f,
- -0.120911f,
- -0.124329f,
- -0.122162f,
- -0.120605f,
- -0.12326f,
- -0.12619f,
- -0.128998f,
- -0.13205f,
- -0.134247f,
- -0.137939f,
- -0.143555f,
- -0.14389f,
- -0.14859f,
- -0.153717f,
- -0.159851f,
- -0.164551f,
- -0.162811f,
- -0.164276f,
- -0.156952f,
- -0.140564f,
- -0.123291f,
- -0.10321f,
- -0.0827637f,
- -0.0652466f,
- -0.053772f,
- -0.0509949f,
- -0.0577698f,
- -0.0818176f,
- -0.114929f,
- -0.148895f,
- -0.181122f,
- -0.200714f,
- -0.21048f,
- -0.203644f,
- -0.179413f,
- -0.145325f,
- -0.104492f,
- -0.0658264f,
- -0.0332031f,
- -0.0106201f,
- -0.00363159f,
- -0.00909424f,
- -0.0244141f,
- -0.0422058f,
- -0.0537415f,
- -0.0610046f,
- -0.0609741f,
- -0.0547791f};
-
-/* comparison test code from http://www-users.cs.york.ac.uk/~fisher/mkfilter/
- (the above page kicks ass, BTW)*/
-
-#define NZEROS 10
-#define NPOLES 10
-#define GAIN 4.599477515e+02f
-
-static float xv[NZEROS+1], yv[NPOLES+1];
-
-static float filterloop(float next){
- xv[0] = xv[1]; xv[1] = xv[2]; xv[2] = xv[3]; xv[3] = xv[4]; xv[4] = xv[5];
- xv[5] = xv[6]; xv[6] = xv[7]; xv[7] = xv[8]; xv[8] = xv[9]; xv[9] = xv[10];
- xv[10] = next / GAIN;
- yv[0] = yv[1]; yv[1] = yv[2]; yv[2] = yv[3]; yv[3] = yv[4]; yv[4] = yv[5];
- yv[5] = yv[6]; yv[6] = yv[7]; yv[7] = yv[8]; yv[8] = yv[9]; yv[9] = yv[10];
- yv[10] = (xv[10] - xv[0]) + 5 * (xv[2] - xv[8]) + 10 * (xv[6] - xv[4])
- + ( -0.6665900311f * yv[0]) + ( 1.0070146601f * yv[1])
- + ( -3.1262875409f * yv[2]) + ( 3.5017171569f * yv[3])
- + ( -6.2779211945f * yv[4]) + ( 5.2966481740f * yv[5])
- + ( -6.7570216587f * yv[6]) + ( 4.0760335768f * yv[7])
- + ( -3.9134284363f * yv[8]) + ( 1.3997338886f * yv[9]);
- return(yv[10]);
-}
-
-#include
-int main(){
-
- /* run the pregenerated Chebyshev filter, then our own distillation
- through the generic and specialized code */
- float *work=_ogg_malloc(128*sizeof(float));
- IIR_state iir;
- int i;
-
- for(i=0;i<128;i++)work[i]=filterloop(data[i]);
- {
- FILE *out=fopen("IIR_ref.m","w");
- for(i=0;i<128;i++)fprintf(out,"%g\n",work[i]);
- fclose(out);
- }
-
- IIR_init(&iir,NPOLES,GAIN,cheb_bandpass_A,cheb_bandpass_B);
- for(i=0;i<128;i++)work[i]=IIR_filter(&iir,data[i]);
- {
- FILE *out=fopen("IIR_gen.m","w");
- for(i=0;i<128;i++)fprintf(out,"%g\n",work[i]);
- fclose(out);
- }
- IIR_clear(&iir);
-
- IIR_init(&iir,NPOLES,GAIN,cheb_bandpass_A,cheb_bandpass_B);
- for(i=0;i<128;i++)work[i]=IIR_filter_ChebBand(&iir,data[i]);
- {
- FILE *out=fopen("IIR_cheb.m","w");
- for(i=0;i<128;i++)fprintf(out,"%g\n",work[i]);
- fclose(out);
- }
- IIR_clear(&iir);
-
- return(0);
-}
-
-#endif
diff --git a/lib/iir.h b/lib/iir.h
deleted file mode 100644
index a3be4790d9c889c4cf40c393cc3d6c06222f89f2..0000000000000000000000000000000000000000
--- a/lib/iir.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: Direct Form I, II IIR filters, plus some specializations
- last mod: $Id: iir.h,v 1.7 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_IIR_H_
-#define _V_IIR_H_
-
-typedef struct {
- int stages;
- float *coeff_A;
- float *coeff_B;
- float *z_A;
- int ring;
- float gain;
-} IIR_state;
-
-extern void IIR_init(IIR_state *s,int stages,float gain, float *A, float *B);
-extern void IIR_clear(IIR_state *s);
-extern float IIR_filter(IIR_state *s,float in);
-extern float IIR_filter_Band(IIR_state *s,float in);
-extern void IIR_reset(IIR_state *s);
-
-#endif
diff --git a/lib/info.c b/lib/info.c
deleted file mode 100644
index 4aa11a28ea0678ee72b0d1f28e3093c784d42cd4..0000000000000000000000000000000000000000
--- a/lib/info.c
+++ /dev/null
@@ -1,588 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the XIPHOPHORUS Company http://www.xiph.org/ *
-
- ********************************************************************
-
- function: maintain the info structure, info <-> header packets
- last mod: $Id: info.c,v 1.42 2001/08/13 01:36:57 xiphmont Exp $
-
- ********************************************************************/
-
-/* general handling of the header and the vorbis_info structure (and
- substructures) */
-
-#include
-#include
-#include
-#include
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-#include "codebook.h"
-#include "registry.h"
-#include "window.h"
-#include "psy.h"
-#include "misc.h"
-#include "os.h"
-
-/* helpers */
-static int ilog2(unsigned int v){
- int ret=0;
- while(v>1){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-static void _v_writestring(oggpack_buffer *o,char *s){
- while(*s){
- oggpack_write(o,*s++,8);
- }
-}
-
-static void _v_readstring(oggpack_buffer *o,char *buf,int bytes){
- while(bytes--){
- *buf++=oggpack_read(o,8);
- }
-}
-
-void vorbis_comment_init(vorbis_comment *vc){
- memset(vc,0,sizeof(vorbis_comment));
-}
-
-void vorbis_comment_add(vorbis_comment *vc,char *comment){
- vc->user_comments=_ogg_realloc(vc->user_comments,
- (vc->comments+2)*sizeof(char *));
- vc->comment_lengths=_ogg_realloc(vc->comment_lengths,
- (vc->comments+2)*sizeof(int));
- vc->user_comments[vc->comments]=strdup(comment);
- vc->comment_lengths[vc->comments]=strlen(comment);
- vc->comments++;
- vc->user_comments[vc->comments]=NULL;
-}
-
-void vorbis_comment_add_tag(vorbis_comment *vc, char *tag, char *contents){
- char *comment=alloca(strlen(tag)+strlen(contents)+2); /* +2 for = and \0 */
- strcpy(comment, tag);
- strcat(comment, "=");
- strcat(comment, contents);
- vorbis_comment_add(vc, comment);
-}
-
-/* This is more or less the same as strncasecmp - but that doesn't exist
- * everywhere, and this is a fairly trivial function, so we include it */
-static int tagcompare(const char *s1, const char *s2, int n){
- int c=0;
- while(c < n){
- if(toupper(s1[c]) != toupper(s2[c]))
- return !0;
- c++;
- }
- return 0;
-}
-
-char *vorbis_comment_query(vorbis_comment *vc, char *tag, int count){
- long i;
- int found = 0;
- int taglen = strlen(tag)+1; /* +1 for the = we append */
- char *fulltag = alloca(taglen+ 1);
-
- strcpy(fulltag, tag);
- strcat(fulltag, "=");
-
- for(i=0;icomments;i++){
- if(!tagcompare(vc->user_comments[i], fulltag, taglen)){
- if(count == found)
- /* We return a pointer to the data, not a copy */
- return vc->user_comments[i] + taglen;
- else
- found++;
- }
- }
- return NULL; /* didn't find anything */
-}
-
-int vorbis_comment_query_count(vorbis_comment *vc, char *tag){
- int i,count=0;
- int taglen = strlen(tag)+1; /* +1 for the = we append */
- char *fulltag = alloca(taglen+1);
- strcpy(fulltag,tag);
- strcat(fulltag, "=");
-
- for(i=0;icomments;i++){
- if(!tagcompare(vc->user_comments[i], fulltag, taglen))
- count++;
- }
-
- return count;
-}
-
-void vorbis_comment_clear(vorbis_comment *vc){
- if(vc){
- long i;
- for(i=0;icomments;i++)
- if(vc->user_comments[i])_ogg_free(vc->user_comments[i]);
- if(vc->user_comments)_ogg_free(vc->user_comments);
- if(vc->comment_lengths)_ogg_free(vc->comment_lengths);
- if(vc->vendor)_ogg_free(vc->vendor);
- }
- memset(vc,0,sizeof(vorbis_comment));
-}
-
-/* used by synthesis, which has a full, alloced vi */
-void vorbis_info_init(vorbis_info *vi){
- memset(vi,0,sizeof(vorbis_info));
- vi->codec_setup=_ogg_calloc(1,sizeof(codec_setup_info));
-}
-
-void vorbis_info_clear(vorbis_info *vi){
- codec_setup_info *ci=vi->codec_setup;
- int i;
-
- if(ci){
-
- for(i=0;imodes;i++)
- if(ci->mode_param[i])_ogg_free(ci->mode_param[i]);
-
- for(i=0;imaps;i++) /* unpack does the range checking */
- _mapping_P[ci->map_type[i]]->free_info(ci->map_param[i]);
-
- for(i=0;itimes;i++) /* unpack does the range checking */
- _time_P[ci->time_type[i]]->free_info(ci->time_param[i]);
-
- for(i=0;ifloors;i++) /* unpack does the range checking */
- _floor_P[ci->floor_type[i]]->free_info(ci->floor_param[i]);
-
- for(i=0;iresidues;i++) /* unpack does the range checking */
- _residue_P[ci->residue_type[i]]->free_info(ci->residue_param[i]);
-
- for(i=0;ibooks;i++){
- if(ci->book_param[i]){
- /* knows if the book was not alloced */
- vorbis_staticbook_destroy(ci->book_param[i]);
- }
- }
-
- for(i=0;i